From 60ec112e6af7a177c78894a29fd021ed00bc68ea Mon Sep 17 00:00:00 2001 From: 12ww1160 <12ww1160@confdroid.com> Date: Fri, 13 Mar 2026 13:52:54 +0100 Subject: [PATCH] OP enable target by default --- Jenkinsfile | 1 - README.md | 66 ++++++++++++++++++++++++++++------------------------- 2 files changed, 35 insertions(+), 32 deletions(-) diff --git a/Jenkinsfile b/Jenkinsfile index 45479fa..b3433a8 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -93,7 +93,6 @@ pipeline { git rm -r --cached .vscode || echo "No .vscode to remove from git" git add -A && git commit -am "Recommit for updates in build $BUILD_NUMBER" || echo "No changes to commit" git push origin HEAD:master - ''' } } diff --git a/README.md b/README.md index ef835b1..ac29e1e 100644 --- a/README.md +++ b/README.md @@ -2,6 +2,7 @@ [![Build Status](https://jenkins.confdroid.com/buildStatus/icon?job=confdroid_puppet)](https://jenkins.confdroid.com/job/confdroid_puppet/) [![Security Hotspots](https://sonarqube.confdroid.com/api/project_badges/measure?project=confdroid_puppet&metric=security_hotspots&token=sqb_97a025b42213e7290a4f6e3d459957ee96c49db8)](https://sonarqube.confdroid.com/dashboard?id=confdroid_puppet) +[![Ask DeepWiki](https://deepwiki.com/badge.svg)](https://deepwiki.com/grizzlycoda/puppet_collection) - [Readme](#readme) - [Synopsis](#synopsis) @@ -9,7 +10,7 @@ - [Features](#features) - [Puppet server and agent](#puppet-server-and-agent) - [Firewall](#firewall) - - [Directories, Files and Services,](#directories-files-and-services) + - [Directories, Files and Services](#directories-files-and-services) - [Optional](#optional) - [R10k service](#r10k-service) - [R10k Web hook](#r10k-web-hook) @@ -24,60 +25,62 @@ - [Documentation](#documentation) - [Disclaimer](#disclaimer) - ## Synopsis This Puppet module configures settings a full Puppet environment, i.e. Puppet master, Puppet agents pointed to the master. Optionally: -* R10k to connect to a control repo and manage + +- 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. +- webhook listener to trigger r10k when a puppet module has been updated. +- PuppetDB for exporting and storing resources. 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][def] as External Node Classifier (ENC), although it does not install Foreman. ## WARNING -***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*** +> **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** ## Features ### Puppet server and agent -* if the host FQDN matches your specified Puppet master via `$pt_pm_fqdn`, it installs and configures a puppetmaster ready for serving with Foreman as ENC (Foreman not yet included). It specifically rewrites the puppet.conf with values taken from parameters. -* Any other system becomes a puppet agent. +- if the host FQDN matches your specified Puppet master via `$pt_pm_fqdn`, it installs and configures a puppetmaster ready for serving with Foreman as ENC (Foreman not yet included). It specifically rewrites the puppet.conf with values taken from parameters. +- Any other system becomes a puppet agent. ### Firewall -* open firewall ports depending on choices above +- open firewall ports depending on choices above -### Directories, Files and Services, -* manage directories and required files including +### Directories, Files and Services + +- manage directories and required files including permissions and selinux context (todo) -* start services as required +- start services as required ### Optional #### R10k service -* install r10k service on your puppetmaster. +- install r10k service on your puppetmaster. If you set `$pt_use_r10k`to `true`, it also installs r10k to connect to a control repo and manage the code available to clients via Puppetfile. #### R10k Web hook -* installs a webhook listener +- installs a webhook listener If you set `$pt_use_r10k_webhook`to `true`, it also installs a simple webhook listener to watch for post_hooks from gitlab, and triggers the r10k deployment. #### Puppetdb -* installs and configures Puppetdb on the node specified with `pt_puppetdb_fqdn`, which can be the puppetmaster or any other node (recommended for performance reasons) -* the logrotation can be set in max days via `pt_pptdb_log_max_age` + +- installs and configures Puppetdb on the node specified with `pt_puppetdb_fqdn`, which can be the puppetmaster or any other node (recommended for performance reasons) +- the logrotation can be set in max days via `pt_pptdb_log_max_age` ## Support -* Rocky 9 -* Puppet Core 8 +- Rocky 9 +- Puppet Core 8 ## Parameter Inheritance @@ -91,26 +94,27 @@ All parameters are listed in `params.pp` and inherited from there. Variable par include confdroid_puppet ``` + ### through Foreman -* 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 -* import the module in Foreman -* assign `confdroid_puppet::params` to the nodes in question, typically a host group. -* overwrite the value for `$pt_pm_fqdn`to match your puppetmaster's fqdn. **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!** Any node not matching this fqdn will become an agent. +- 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 +- import the module in Foreman +- assign `confdroid_puppet::params` to the nodes in question, typically a host group. +- overwrite the value for `$pt_pm_fqdn`to match your puppetmaster's fqdn. **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!** Any node not matching this fqdn will become an agent. ## Tests -* Puppet Lint - * excluded tests: - * `--no-variable_scope-check`: not applicable as we are inheriting parameters from params class. the lint check does not distinguish between facts and inherited parameters. -* Puppet Parser -* ERB Template Parser -* Sonar Quality Gate +- Puppet Lint + - excluded tests: + - `--no-variable_scope-check`: not applicable as we are inheriting parameters from params class. the lint check does not distinguish between facts and inherited parameters. +- Puppet Parser +- ERB Template Parser +- Sonar Quality Gate ## Contact Us -* [contact form](https://confdroid.com/contact/) -* [feedback portal](https://feedback.confdroid.com/) +- [contact form](https://confdroid.com/contact/) +- [feedback portal](https://feedback.confdroid.com/) ## Documentation @@ -121,4 +125,4 @@ Additional documentation like FAQ can be found in the [**member wiki**](https:// 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. -[def]: https://www.theforeman.org/manuals/3.13/quickstart_guide.html \ No newline at end of file +[def]: https://www.theforeman.org/manuals/3.13/quickstart_guide.html