Files
confdroid_postgresql/doc/puppet_classes/confdroid_postgresql_3A_3Aparams.html

846 lines
20 KiB
HTML
Raw Normal View History

2025-12-04 20:47:27 +01:00
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>
Puppet Class: confdroid_postgresql::params
&mdash; Documentation by YARD 0.9.36
</title>
<link rel="stylesheet" href="../css/style.css" type="text/css" />
<link rel="stylesheet" href="../css/common.css" type="text/css" />
<script type="text/javascript">
pathId = "puppet_classes::confdroid_postgresql::params";
relpath = '../';
</script>
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
</head>
<body>
<div class="nav_wrap">
<iframe id="nav" src="../puppet_class_list.html?1"></iframe>
<div id="resizer"></div>
</div>
<div id="main" tabindex="-1">
<div id="header">
<div id="menu">
<a href="../_index.html">Index (c)</a> &raquo;
<span class='title'><span class='object_link'>Puppet Classes</span></span>
&raquo;
<span class="title">confdroid_postgresql::params</span>
</div>
<div id="search">
<a class="full_list_link" id="puppet_class_list_link"
href="../puppet_class_list.html">
<svg width="24" height="24">
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
</svg>
</a>
</div>
<div class="clear"></div>
</div>
<div id="content"><h1>Puppet Class: confdroid_postgresql::params</h1>
<div class="box_info">
<dl>
<dt>Inherited by:</dt>
<dd>
<span class='object_link'><a href="confdroid_postgresql_3A_3Amain_3A_3Adirs.html" title="puppet_classes::confdroid_postgresql::main::dirs (puppet_class)">confdroid_postgresql::main::dirs</a></span><br/>
<span class='object_link'><a href="confdroid_postgresql_3A_3Amain_3A_3Afiles.html" title="puppet_classes::confdroid_postgresql::main::files (puppet_class)">confdroid_postgresql::main::files</a></span><br/>
<span class='object_link'><a href="confdroid_postgresql_3A_3Amain_3A_3Aconfig.html" title="puppet_classes::confdroid_postgresql::main::config (puppet_class)">confdroid_postgresql::main::config</a></span><br/>
<span class='object_link'><a href="confdroid_postgresql_3A_3Amain_3A_3Ainstall.html" title="puppet_classes::confdroid_postgresql::main::install (puppet_class)">confdroid_postgresql::main::install</a></span><br/>
<span class='object_link'><a href="confdroid_postgresql_3A_3Aexporter_3A_3Adirs.html" title="puppet_classes::confdroid_postgresql::exporter::dirs (puppet_class)">confdroid_postgresql::exporter::dirs</a></span><br/>
<span class='object_link'><a href="confdroid_postgresql_3A_3Aserver_3A_3Ainitdb.html" title="puppet_classes::confdroid_postgresql::server::initdb (puppet_class)">confdroid_postgresql::server::initdb</a></span><br/>
<span class='object_link'><a href="confdroid_postgresql_3A_3Aexporter_3A_3Afiles.html" title="puppet_classes::confdroid_postgresql::exporter::files (puppet_class)">confdroid_postgresql::exporter::files</a></span><br/>
<span class='object_link'><a href="confdroid_postgresql_3A_3Aserver_3A_3Aservice.html" title="puppet_classes::confdroid_postgresql::server::service (puppet_class)">confdroid_postgresql::server::service</a></span><br/>
2025-12-05 14:24:23 +01:00
<span class='object_link'><a href="confdroid_postgresql_3A_3Abouncer_3A_3Abouncer.html" title="puppet_classes::confdroid_postgresql::bouncer::bouncer (puppet_class)">confdroid_postgresql::bouncer::bouncer</a></span><br/>
<span class='object_link'><a href="confdroid_postgresql_3A_3Abouncer_3A_3Aservice.html" title="puppet_classes::confdroid_postgresql::bouncer::service (puppet_class)">confdroid_postgresql::bouncer::service</a></span><br/>
2025-12-04 20:47:27 +01:00
<span class='object_link'><a href="confdroid_postgresql_3A_3Aexporter_3A_3Aservice.html" title="puppet_classes::confdroid_postgresql::exporter::service (puppet_class)">confdroid_postgresql::exporter::service</a></span><br/>
<span class='object_link'><a href="confdroid_postgresql_3A_3Afirewall_3A_3Aiptables.html" title="puppet_classes::confdroid_postgresql::firewall::iptables (puppet_class)">confdroid_postgresql::firewall::iptables</a></span><br/>
<span class='object_link'><a href="confdroid_postgresql_3A_3Aserver_3A_3Apghba_3A_3Apg_hba.html" title="puppet_classes::confdroid_postgresql::server::pghba::pg_hba (puppet_class)">confdroid_postgresql::server::pghba::pg_hba</a></span><br/>
</dd>
</dl>
<dl>
<dt>Defined in:</dt>
<dd>
manifests/params.pp
</dd>
</dl>
</div>
<h2>Summary</h2>
Class contains all parameters for the confdroid_postgresql module.
<h2>Overview</h2>
<div class="docstring">
<div class="discussion">
2025-12-05 14:24:23 +01:00
<p>confdroid_postgresql::params.pp Module name: confdroid_postgresql Author: 12ww1160 (12ww1160@confdroid.com)</p>
2025-12-04 20:47:27 +01:00
</div>
</div>
<div class="tags">
<p class="tag_title">Parameters:</p>
<ul class="param">
<li>
<span class='name'>pl_server_fqdn</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>undef</tt>)</em>
&mdash;
<div class='inline'>
<p>the fqdn of the postgresql server. Any other system will be configured as client</p>
</div>
</li>
<li>
<span class='name'>reqpackages_server</span>
<span class='type'>(<tt>Array</tt>)</span>
<em class="default">(defaults to: <tt>[&#39;postgresql-server&#39;,&#39;postgresql-contrib&#39;]</tt>)</em>
&mdash;
<div class='inline'>
<p>the packages for the server</p>
</div>
</li>
<li>
<span class='name'>reqpackages_extensions</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;timescaledb&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>the packages for extensions</p>
</div>
</li>
<li>
<span class='name'>reqpackages_client</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;postgresql&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>the packages for the client</p>
</div>
</li>
2025-12-05 14:24:23 +01:00
<li>
<span class='name'>reqpackages_bouncer</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;pgbouncer&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>the packages for the bouncer</p>
</div>
</li>
2025-12-04 20:47:27 +01:00
<li>
<span class='name'>pkg_ensure</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;latest&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>which version of the packages to install, i.e. latest, present 13.20,</p>
</div>
</li>
<li>
<span class='name'>pl_fw_rule_order</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;50&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>the prefix for the firewall rule</p>
</div>
</li>
<li>
<span class='name'>pl_fw_port</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;5432&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>the port to use for service and firewall</p>
</div>
</li>
<li>
<span class='name'>pl_source_range</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;0.0.0.0/0&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>the source range for allowed clients</p>
</div>
</li>
<li>
<span class='name'>pl_enable_fw</span>
<span class='type'>(<tt>Boolean</tt>)</span>
<em class="default">(defaults to: <tt>true</tt>)</em>
&mdash;
<div class='inline'>
<p>whether to enable the firewall</p>
</div>
</li>
<li>
<span class='name'>pl_listen_address</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;*&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>which address should the service listen on</p>
</div>
</li>
<li>
<span class='name'>pl_listen_port</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;5432&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>which port should the service listen on</p>
</div>
</li>
<li>
<span class='name'>pl_max_conn</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;100&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>maximum connections the service will accept</p>
</div>
</li>
<li>
<span class='name'>pl_ssl_enabled</span>
<span class='type'>(<tt>Boolean</tt>)</span>
<em class="default">(defaults to: <tt>false</tt>)</em>
&mdash;
<div class='inline'>
<p>whether SSL is enabled (true) or disabled (false)</p>
</div>
</li>
<li>
<span class='name'>pl_server_crt</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;server.crt&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>the name of the server cert</p>
</div>
</li>
<li>
<span class='name'>pl_server_key</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;server.key&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>the name of the server key</p>
</div>
</li>
<li>
<span class='name'>pl_ca_crt</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;root.crt&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>the name of the CA crt</p>
</div>
</li>
<li>
<span class='name'>pl_manage_content</span>
<span class='type'>(<tt>Boolean</tt>)</span>
<em class="default">(defaults to: <tt>true</tt>)</em>
&mdash;
<div class='inline'>
<p>whether to manage roles and databases</p>
</div>
</li>
<li>
<span class='name'>pl_manage_extensions</span>
<span class='type'>(<tt>Boolean</tt>)</span>
<em class="default">(defaults to: <tt>false</tt>)</em>
&mdash;
<div class='inline'>
<p>whether to manage extensions</p>
</div>
</li>
<li>
<span class='name'>pl_use_exporter</span>
<span class='type'>(<tt>Boolean</tt>)</span>
<em class="default">(defaults to: <tt>false</tt>)</em>
&mdash;
<div class='inline'>
<p>whether to use the postgresql-exporter</p>
</div>
</li>
<li>
<span class='name'>pl_install_dir</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;/opt/postgres-exporter&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>the path for the postgres-exporter files</p>
</div>
</li>
<li>
<span class='name'>pl_idle_timeout</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;60000&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>idle_in_transaction_session_timeout</p>
</div>
</li>
2025-12-04 20:59:42 +01:00
<li>
<span class='name'>pl_use_pg_bouncer</span>
<span class='type'>(<tt>Boolean</tt>)</span>
<em class="default">(defaults to: <tt>false</tt>)</em>
&mdash;
<div class='inline'>
<p>whether to use the pc_bouncer</p>
</div>
</li>
<li>
2025-12-05 14:24:23 +01:00
<span class='name'>pl_bouncer_listen_addr</span>
2025-12-04 20:59:42 +01:00
<span class='type'>(<tt>String</tt>)</span>
2025-12-05 14:24:23 +01:00
<em class="default">(defaults to: <tt>&#39;0.0.0.0&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>bouncer listen address</p>
</div>
</li>
<li>
<span class='name'>pl_bouncer_port</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;6432&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>bouncer listen port</p>
</div>
</li>
<li>
<span class='name'>pl_bouncer_auth_mode</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;md5&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>bouncer auth mode</p>
</div>
</li>
<li>
<span class='name'>pl_bouncer_auth_users</span>
<span class='type'>(<tt>String</tt>)</span>
2025-12-05 14:54:13 +01:00
<em class="default">(defaults to: <tt>&#39;&quot;pgbouncer&quot; &quot;fake&quot;&#39;</tt>)</em>
2025-12-05 14:24:23 +01:00
&mdash;
<div class='inline'>
<p>placeholder for users</p>
</div>
</li>
<li>
<span class='name'>pl_bouncer_pool_mode</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;transaction&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>bouncer pool mode</p>
</div>
</li>
<li>
<span class='name'>pl_bouncer_mx_cl_conn</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;100&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>bouncer max client connections</p>
</div>
2025-12-04 20:59:42 +01:00
2025-12-05 14:24:23 +01:00
</li>
<li>
<span class='name'>pl_bouncer_pool_size</span>
<span class='type'>(<tt>String</tt>)</span>
<em class="default">(defaults to: <tt>&#39;20&#39;</tt>)</em>
&mdash;
<div class='inline'>
<p>bouncer default pool size</p>
</div>
2025-12-04 20:59:42 +01:00
</li>
2025-12-04 20:47:27 +01:00
</ul>
</div><div class="method_details_list">
<table class="source_code">
<tr>
<td>
<pre class="lines">
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
2025-12-04 20:59:42 +01:00
83
84
85
2025-12-05 14:24:23 +01:00
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
2025-12-05 15:44:13 +01:00
107
2025-12-08 14:37:54 +01:00
108
109
110
111
112
113
114</pre>
2025-12-04 20:47:27 +01:00
</td>
<td>
2025-12-05 14:24:23 +01:00
<pre class="code"><span class="info file"># File 'manifests/params.pp', line 38</span>
2025-12-04 20:47:27 +01:00
class confdroid_postgresql::params (
String $pl_server_fqdn = undef,
# installation
Array $reqpackages_server = [&#39;postgresql-server&#39;,&#39;postgresql-contrib&#39;],
String $reqpackages_extensions = &#39;timescaledb&#39;,
String $reqpackages_client = &#39;postgresql&#39;,
2025-12-04 20:59:42 +01:00
String $reqpackages_bouncer = &#39;pgbouncer&#39;,
2025-12-04 20:47:27 +01:00
String $pkg_ensure = &#39;latest&#39;,
# firewall
String $pl_fw_rule_order = &#39;50&#39;,
String $pl_fw_port = &#39;5432&#39;,
String $pl_source_range = &#39;0.0.0.0/0&#39;,
Boolean $pl_enable_fw = true,
# main config
String $pl_listen_address = &#39;*&#39;,
String $pl_listen_port = &#39;5432&#39;,
String $pl_max_conn = &#39;100&#39;,
String $pl_idle_timeout = &#39;60000&#39;,
Boolean $pl_ssl_enabled = false,
String $pl_server_crt = &#39;server.crt&#39;,
String $pl_server_key = &#39;server.key&#39;,
String $pl_ca_crt = &#39;root.crt&#39;,
Boolean $pl_manage_content = true,
Boolean $pl_manage_extensions = false,
# postgresql exporter
Boolean $pl_use_exporter = false,
String $pl_install_dir = &#39;/opt/postgres-exporter&#39;,
2025-12-04 20:59:42 +01:00
# pg bouncer
Boolean $pl_use_pg_bouncer = false,
2025-12-05 14:24:23 +01:00
String $pl_bouncer_listen_addr = &#39;0.0.0.0&#39;,
String $pl_bouncer_port = &#39;6432&#39;,
String $pl_bouncer_auth_mode = &#39;md5&#39;,
2025-12-05 14:54:13 +01:00
String $pl_bouncer_auth_users = &#39;&quot;pgbouncer&quot; &quot;fake&quot;&#39;,
2025-12-05 14:24:23 +01:00
String $pl_bouncer_pool_mode = &#39;transaction&#39;,
String $pl_bouncer_mx_cl_conn = &#39;100&#39;,
String $pl_bouncer_pool_size = &#39;20&#39;,
2025-12-04 20:47:27 +01:00
) {
$fqdn = $facts[&#39;networking&#39;][&#39;fqdn&#39;]
$domain = $facts[&#39;networking&#39;][&#39;domain&#39;]
$os_name = $facts[&#39;os&#39;][&#39;name&#39;]
$os_release = $facts[&#39;os&#39;][&#39;release&#39;][&#39;major&#39;]
# Directories
$pl_data_dir = &#39;/var/lib/pgsql/data/&#39;
2025-12-05 14:24:23 +01:00
$pl_bouncer_dir = &#39;/etc/pgbouncer&#39;
2025-12-04 20:47:27 +01:00
# files
$pl_pg_hba_conf = &quot;${pl_data_dir}/pg_hba.conf&quot;
$pl_pg_hba_rule_conf = &#39;confdroid_postgresql/server/pghba/pg_hba_rule.conf.erb&#39;
$pl_pg_hba_conf_erb = &#39;confdroid_postgresql/server/pghba/pg_hba.conf.erb&#39;
2025-12-05 14:24:23 +01:00
$pl_bouncer_ini_file = &quot;${pl_bouncer_dir}/pgbouncer.ini&quot;
2025-12-05 15:44:13 +01:00
$pl_bouncer_ini_erb = &#39;confdroid_postgresql/server/bouncer/pgbouncer.ini.erb&#39;
2025-12-05 14:24:23 +01:00
$pl_bouncer_auth_file = &quot;${pl_bouncer_dir}/userlist.txt&quot;
$pl_bouncer_auth_erb = &#39;confdroid_postgresql/server/bouncer/bouncer_users.erb&#39;
2025-12-05 15:44:13 +01:00
$pl_bouncer_rule_erb = &#39;confdroid_postgresql/server/bouncer/bouncer_rule.erb&#39;
2025-12-08 14:37:54 +01:00
$pl_ca_crt_file = &quot;${pl_data_dir}/ca.crt&quot;
$pl_ca_crt_erb = &#39;confdroid_postgresql/server/ca.crt.erb&#39;
$pl_server_crt_file = &quot;${pl_data_dir}/server.crt&quot;
$pl_server_crt_erb = &#39;confdroid_postgresql/server/server.crt.erb&#39;
$pl_server_key_file = &quot;${pl_data_dir}/server.key&quot;
$pl_server_key_erb = &#39;confdroid_postgresql/server/server.key.erb&#39;
2025-12-04 20:47:27 +01:00
# Service
$pl_service = &#39;postgresql&#39;
$pl_exporter_service = &#39;postgres_exporter&#39;
2025-12-05 14:24:23 +01:00
$pl_bouncer_service = &#39;pgbouncer&#39;
2025-12-04 20:47:27 +01:00
# includes must be last
include confdroid_postgresql::main::config
}</pre>
</td>
</tr>
</table>
</div>
</div>
<div id="footer">
Generated by <a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>.
</div>
</div>
</body>
</html>