<p>Optionally: * R10k to connect to a control repo and manage puppet modules * webhook listener to trigger r10k when a puppet module has been updated. * PuppetDB for exporting and storing resources.</p>
<p>The syntax is specifically for Puppet Core 8 and Rocky 9, although might work elsewhere as well. This module is also designed to work with Foreman as External Node Classifier (ENC), although it does not install Foreman.</p>
<p><strong><em>Attention: Never use this puppet module on systems which have been previously configured manually. It is impossible to predict how and what would have been configured, hence previous configurations outside the scope of this module may be overwritten! Automated configurations require a test environment to verify that the module suits the purpose intended by the user, as well as tune the parameters, before deploying into live production</em></strong></p>
<p>if the host FQDN matches your specified Puppet master via <code>$pt_pm_fqdn</code>, it installs and configures a puppetmaster ready for serving with Foreman as ENC ( Foreman not yet included).</p>
<p>install r10k service on your puppetmaster. If you set <code>$pt_use_r10k</code>to <code>true</code>, it also installs r10k to connect to a control repo and manage the code available to clients via Puppetfile.</p>
<p>installs a webhook listener If you set <code>$pt_use_r10k_webhook</code>to <code>true</code>, it also installs a simple webhook listener to watch for post_hooks from gitlab, and triggers the r10k deployment.</p>
<p>All parameters are listed in <code>params.pp</code> and inherited from there. Variable parameters are in the upper section and also documented in the top. These can be overridden by the ENC. Parameters in the bottom section (curly brackets) cannot be overridden and usually are used for keeping the code in the classes more readable.</p>
<p>ensure the module is present on the puppetmaster running Foreman in the module path, i.e. /etc/puppetlabs/code/environments/production/ . use r10k or clone the module there through git</p>
</li><li>
<p>import the module in Foreman</p>
</li><li>
<p>assign <code>puppet_cd::params</code> to the nodes in question, typically a host group.</p>
</li><li>
<p>overwrite the value for <code>$pt_pm_fqdn</code>to match your puppetmaster’s fqdn. <strong>This will overwrite the puppet.conf with the settings set in params.pp. It is highly recommended to use a test system first to see and fine tune those settings!</strong> Any node not matching this fqdn will become an agent.</p>
<p><code>--no-variable_scope-check</code>: not applicable as we are inheriting parameters from params class. the lint check does not distinguish between facts and inherited parameters.</p>
<p>ConfDroid as entity is entirely independent from Puppet. We provide custom configuration modules, written for specific purposes and specific environments. The modules are tested and supported only as documented, and require testing in designated environments (i.e. lab or development environments) for parameter tuning etc. before deploying into production environments.</p>
</div></div>
<divid="footer">
Generated by <ahref="http://yardoc.org"title="Yay! A Ruby Documentation Tool"target="_parent">yard</a>.