puppetlabs / puppetlabs-concat

File concatenation system for Puppet
Apache License 2.0
171 stars 303 forks source link

Add parameter to not create empty files when no fragments are defined #766

Closed JonasVerhofste closed 1 year ago

JonasVerhofste commented 1 year ago

By default concat would always create an empty file if no fragment was defined. Sometimes we don't want a file unless it has content.

CLAassistant commented 1 year ago

CLA assistant check
All committers have signed the CLA.

puppet-community-rangefinder[bot] commented 1 year ago

concat_file is a type

Breaking changes to this file WILL impact these 1 modules (exact match): * [saz-ssh](https://github.com/saz/puppet-ssh.git)
Breaking changes to this file MAY impact these 2 modules (near match): * [puppet3-concat](https://github.com/puppet3/puppet3-concat) * [puppetlabs-concat](https://github.com/puppetlabs/puppetlabs-concat)

concat is a type

Breaking changes to this file WILL impact these 534 modules (exact match): * [eyp-postfix](https://github.com/NTTCom-MS/eyp-postfix) * [puppet-collectd](https://github.com/voxpupuli/puppet-collectd) * [nightfly-ssh_keys](https://github.com/nightfly19/puppet-ssh_keys.git) * [viirya-mit_krb5](https://github.com/viirya/puppet-mit_krb5.git) * [shadow-tor](https://github.com/LeShadow/puppet-tor.git) * [lexkastro-easysquid](https://github.com/lexkastro/easysquid) * [rjpearce-opendkim](https://github.com/rjpearce/puppet-opendkim) * [weasel-nft](https://github.com/weaselp/puppet-nft) * [prozeta-powerdns_recursor](https://github.com/prozeta/puppet-powerdns_recursor) * [KyleAnderson-btsync](https://github.com/solarkennedy/puppet-btsync) * [cirrax-postgresql_userconfig](https://github.com/cirrax/puppet-postgresql_userconfig) * [DanielRedOak-lumberjack](https://github.com/DanielRedOak/puppet-lumberjack) * [duritong-munin](https://github.com/duritong/puppet-munin.git) * [alkivi-motd](https://github.com/alkivi-sas/puppet-motd) * [alkivi-fail2ban](https://github.com/alkivi-sas/puppet-fail2ban) * [xdrum-knockd](https://github.com/x-drum/puppet-knockd) * [arioch-haproxy](https://github.com/arioch/puppet-haproxy) * [m4ce-keepalived](https://github.com/m4ce/puppet-keepalived) * [nextrevision-flowtools](https://github.com/nextrevision/puppet-flowtools.git) * [jmkeyes-gocd](https://github.com/jmkeyes/puppet-gocd) * [sethlyons-tac_plus](https://github.com/fxcm/sethlyons-tac_plus.git) * [lvicainne-bashrc](https://github.com/lvicainne/puppet-bashrc) * [pfmooney-mit_krb5](https://github.com/pfmooney/puppet-mit_krb5.git) * [KyleAnderson-redis_sentinel](https://github.com/solarkennedy/puppet-redis_sentinel) * [mvasilenko-gocd](https://github.com/mvasilenko/puppet-gocd) * [nationbuilder-graphite](https://github.com/nationbuilder/puppet-graphite/) * [hacking-puppet](https://github.com/MADhacking/puppet-module-puppet) * [boyand-graphite](https://github.com/boyand/puppet-graphite) * [fheinle-aptdater](https://github.com/fheinle/puppet-aptdater) * [initforthe-backup](https://github.com/initforthe/initforthe-backup.git) * [rogierslag-openswan](https://github.com/rogierslag/rogierslag-openvpn) * [nono-postfix](https://forge-git.ircam.fr/puppet-module-base-postfix.git) * [treyormsbee-ldirectord](https://github.com/treyormsbee/puppet-ldirectord.git) * [wilrnh-xserver](https://github.com/wilrnh/puppet-xserver) * [JamieCressey-gribble](https://github.com/JamieCressey/puppet-gribble) * [mpiscaer-dnsdist](https://github.com/mpiscaer/puppet_dnsdist) * [nkts-ngircd](https://github.com/nkts/puppet-ngircd.git) * [cnacorrea-bash](https://forge.puppet.com/cnacorrea/bash) * [norisnetwork-syslog_ng](https://github.com/noris-network/puppet-syslog_ng) * [pcfens-cloudwatch_agent](https://github.com/pcfens/puppet-cloudwatch_agent) * [joshbeard-websphere](https://github.com/joshbeard/puppet-websphere) * [danieldreier-resource_facts](https://github.com/danieldreier/puppet-resource_facts) * [alkivi-dhcpd](https://github.com/alkivi-sas/puppet-dhcpd) * [buzzdeee-ejabberd](https://github.com/buzzdeee/buzzdeee-ejabberd.git) * [tedivm-inspircd](https://github.com/tedivm/puppet-inspircd) * [brad2014-postfix](https://github.com/brad2014/puppet-postfix.git) * [fraenki-vmail](https://github.com/fraenki/puppet-vmail) * [dschaaff-syslogd](https://github.com/dschaaff/dschaaff-syslogd) * [inkblot-ppp](https://github.com/inkblot/puppet-ppp) * [jimmypw-shoutcast](https://github.com/jimmypw/puppet-shoutcast) * [sbog-twemproxy](https://github.com/sorrowless/puppet-twemproxy) * [codemanagement-netrc](https://github.com/code-management/netrc) * [furhouse-oxidized](https://github.com/furhouse/puppet-oxidized) * [guimaluf-gvpe](https://github.com/guimaluf/puppet-gvpe) * [fferauu-dhcp](https://github.com/fferauu/simple-dhcp-puppet) * [elibus-tivolism](https://github.com/elibus/puppet-tivolism.git) * [gse-sssd](https://forge.puppet.com/gse/sssd) * [othalla-coredns](https://github.com/othalla/puppet-coredns) * [alkivi-backuppc](https://github.com/alkivi-sas/puppet-backuppc) * [jcpunk-nfs](https://github.com/jcpunk/puppet-nfs) * [fraenki-vpasswd](https://github.com/fraenki/puppet-vpasswd) * [jbeard-dhcpd](https://github.com/jbeard6/jbeard-dhcpd.git) * [eyp-netplan](https://github.com/NTTCom-MS/eyp-netplan) * [elibus-oracle_dbfs](https://github.com/elibus/puppet-oracle_dbs) * [arusso-apache](https://forge.puppet.com/arusso/apache) * [trepasi-ipsec](https://github.com/rtib/puppet-ipsec.git) * [srf-fluentd](https://github.com/mmz-srf/puppet-fluentd.git) * [eyp-multipathd](https://github.com/NTTCom-MS/eyp-multipathd) * [ULHPC-rclocal](https://github.com/ULHPC/puppet-rclocal) * [ctrlcroot-nginx](https://github.com/CtrlC-Root/puppet-nginx.git) * [joshbeard-graylog_collector](https://github.com/joshbeard/puppet-graylog_collector) * [jmkeyes-bind](https://github.com/jmkeyes/puppet-bind.git) * [jpuskar-cognos](https://github.com/jpuskar/puppet-cognos) * [ULHPC-nfs](https://github.com/ULHPC/puppet-nfs) * [ctrlcroot-gitolite](https://github.com/CtrlC-Root/puppet-gitolite.git) * [ctrlcroot-denyhosts](https://github.com/CtrlC-Root/puppet-denyhosts.git) * [lbetz-csync2](https://github.com/lbetz/puppet-csync2) * [cvquesty-puppetdev](https://github.com/cvquesty/puppetdev) * [puppetfinland-sslcert](https://github.com/Puppet-Finland/puppet-sslcert.git) * [slenky-guacamole](https://github.com/slenky/puppet-guacamole) * [danfoster-sysfs](https://github.com/danfoster/puppet-sysfs) * [jpl-pam](https://github.com/jlyheden/puppet-pam.git) * [Aethylred-kerberos](https://github.com/Aethylred/puppet-kerberos) * [vinzent-usbguard](https://github.com/vinzent/puppet-usbguard) * [simp-at](https://github.com/simp/pupmod-simp-at) * [alkivi-samba](https://github.com/alkivi-sas/puppet-samba) * [eyp-chronyd](https://github.com/NTTCom-MS/eyp-chronyd) * [eyp-rsyslog](https://github.com/NTTCom-MS/eyp-rsyslog) * [furhouse-postfixadmin](https://github.com/furhouse/puppet-postfixadmin) * [ULHPC-multipath](https://github.com/ULHPC/puppet-multipath) * [caius-prometheus](https://github.com/caius/puppet-prometheus) * [eyp-tuned](https://github.com/NTTCom-MS/eyp-tuned) * [jdowning-wal_e](https://github.com/justindowning/puppet-wal_e) * [jon6000-profanity](https://github.com/jghward/puppet-profanity) * [hacking-autofs](https://github.com/HackingM) * [praekeltfoundation-xylem](https://github.com/praekeltfoundation/puppet-xylem) * [abaranov-libreswan](https://github.com/spacedog/puppet-libreswan) * [jgazeley-motd](https://github.com/djjudas21/puppet-motd) * [eyp-snmpd](https://github.com/NTTCom-MS/eyp-snmpd) * [gdhbashton-consul_template](https://github.com/gdhbashton/puppet-consul_template) * [sourcedoctor-squidguard](https://github.com/SourceDoctor/puppet-squidguard) * [gabe-choco_app](https://github.com/fnaard/puppet-choco_app) * [pmovil-xymon](https://github.com/Pmovil/puppet_xymon.git) * [Lavaburn-cloudstack](https://github.com/Lavaburn/puppet-cloudstack) * [simp-cron](https://github.com/simp/pupmod-simp-cron) * [sharumpe-susefirewall2](https://forge.puppet.com/sharumpe/susefirewall2) * [jonnyx-samba](https://github.com/jonmosco/puppet-samba) * [stesie-gluon](https://github.com/ffansbach/gluon-puppet) * [p0deje-display](https://github.com/p0deje/puppet-display.git) * [eyp-puppet](https://github.com/NTTCom-MS/eyp-puppet) * [icann-nsd](https://github.com/icann-dns/puppet-nsd) * [crayfishx-openldap_slapd](https://github.com/crayfishx/puppet-openldap_slapd) * [eyp-sysctl](https://github.com/NTTCom-MS/eyp-sysctl) * [icann-knot](https://github.com/icann-dns/puppet-knot) * [tomkrieger-pxe_install](https://github.com/tom-krieger/pxe_install.git) * [jcpunk-vnc](https://github.com/jcpunk/puppet-vnc) * [project0-bareos](https://github.com/project0/puppet-bareos) * [gdsoperations-auditd](https://github.com/gds-operations/puppet-auditd) * [jgazeley-nagios](https://github.com/djjudas21/puppet-nagios) * [deric-storm](https://github.com/deric/puppet-storm.git) * [lbetz-tomcat](https://github.com/lbetz/puppet-tomcat.git) * [krakatoa-haproxy](https://github.com/krakatoa1987/puppetlabs-haproxy) * [spiette-ssh](https://github.com/spiette/puppet-ssh) * [adamcstephens-systemupdates](https://github.com/adamcstephens/puppet-systemupdates.git) * [ULHPC-sudo](https://github.com/ULHPC/puppet-sudo) * [icann-quagga](https://github.com/icann-dns/puppet-quagga) * [Sparco-modules](https://github.com/Sparc0/sparco-modules) * [kenyon-bind](https://github.com/kenyon/puppet-bind) * [puppetlabs-puppet_authorization](https://github.com/puppetlabs/puppetlabs-puppet_authorization) * [deric-hindsight](https://github.com/deric/puppet-hindsight) * [puppet-drbd](https://github.com/voxpupuli/puppet-drbd) * [joshbeard-display](https://github.com/joshbeard/puppet-display) * [unibet-go](https://github.com/unibet/puppet-go.git) * [aboe-pacman](https://github.com/aboe76/puppet-pacman) * [ajcrowe-supervisord](https://github.com/ajcrowe/puppet-supervisord) * [simp-incron](https://github.com/simp/pupmod-simp-incron) * [poolski-beats](https://github.com/poolski/puppet-beats) * [mfinelli-nsd](https://github.com/mfinelli/puppet-nsd) * [pegas-incron](https://github.com/pegasd/puppet-incron) * [deric-beegfs](https://github.com/deric/puppet-beegfs) * [tedivm-rsnapshot](https://github.com/tedivm/puppet-rsnapshot) * [mikegleasonjr-wordpress](https://github.com/mikegleasonjr/puppet-wordpress.git) * [ULHPC-bash](https://github.com/ULHPC/puppet-bash) * [evenup-backup](https://github.com/evenup/evenup-backup) * [jlambert121-puppet](https://github.com/jlambert121/jlambert121-puppet) * [ULHPC-sysadmins](https://github.com/ULHPC/puppet-sysadmins) * [sjoeboo-puppet](https://github.com/sjoeboo/puppet-puppet) * [vholer-openafs](https://github.com/vholer/puppet-openafs.git) * [ploperations-profile_metadata](https://github.com/ploperations/ploperations-profile_metadata.git) * [ccin2p3-riemann](https://github.com/ccin2p3/puppet-riemann) * [ploperations-meta_motd](https://github.com/ploperations/ploperations-meta_motd.git) * [hunner-wordpress](https://github.com/hunner/puppet-wordpress) * [ceh-fstab](https://github.com/NERC-CEH/puppet-fstab) * [cheasles-rhasspy](https://github.com/cheasles/puppet-rhasspy.git) * [arioch-icinga](https://github.com/arioch/puppet-icinga) * [tomkrieger-sshkeymgmt](https://github.com/tom-krieger/sshkeymgmt.git) * [arcaik-webhook](https://gitlab.com/Arcaik/puppet-webhook/) * [puppet-pbuilder](https://github.com/voxpupuli/puppet-pbuilder) * [maxchk-varnish](https://forge.puppet.com/maxchk/varnish) * [ceh-krb5](https://github.com/NERC-CEH/puppet-krb5) * [Xebia-xldeploy](https://github.com//xebia-deployit.git) * [treydock-genders](https://github.com/treydock/puppet-module-genders) * [attachmentgenie-tempo](https://github.com/attachmentgenie/attachmentgenie-tempo.git) * [puppet-bareos](https://github.com/voxpupuli/puppet-bareos) * [hunner-charybdis](https://github.com/hunner/puppet-charybdis.git) * [adobeinc-dispatcher](https://github.com/adobe/puppet-dispatcher) * [bkuebler-pureftpd](https://github.com/bkuebler/puppet-pureftpd.git) * [puppetfinland-knockd](https://github.com/Puppet-Finland/puppet-knockd.git) * [lex-approx](https://github.com/rlex/puppet-approx) * [ihrwein-syslog_ng](https://github.com/ihrwein/puppet-syslog_ng) * [treydock-conman](https://github.com/treydock/puppet-module-conman) * [srozzo-stunnel](https://github.com/srozzo/puppet-stunnel) * [zehweh-netplan](https://github.com/zehweh/puppet-netplan) * [cheasles-synapse](https://github.com/cheasles/puppet-synapse.git) * [thias-fooacl](https://github.com/thias/puppet-fooacl) * [104corp-corp104_samba](https://github.com/104corp/corp104_samba) * [eyp-hari](https://github.com/jordiprats/eyp-hari) * [attachmentgenie-grafana_agent](https://github.com/attachmentgenie/attachmentgenie-grafana_agent.git) * [zyronix-ipsets](https://github.com/zyronix/puppet-ipsets) * [thekevjames-hosts](https://github.com/TheKevJames/puppet-hosts) * [cirrax-doas](https://github.com/cirrax/puppet-doas) * [cavaliercoder-nscd](https://github.com/cavaliercoder/puppet-nscd) * [jlondon-csync2](https://github.com/justicel/puppet-csync2.git) * [puppetfinland-firefox](https://github.com/Puppet-Finland/puppet-firefox.git) * [ffquintella-dockerapp_adrapi](https://github.com/ffquintella/puppet-dockerapp_adrapi) * [genv-auditd](https://github.com/gibbs/puppet-auditd) * [lhinds-aide](https://github.com/lukehinds/puppet-aide) * [themeier-rsync](https://github.com/TheMeier/puppetlabs-rsync) * [bodgit-carbon](https://github.com/bodgit/puppet-carbon) * [warrenpnz-aide](https://github.com/warrenpnz/puppet-aide) * [Enucatl-i2pd](https://github.com/Enucatl/i2pd) * [netmanagers-ddclient](https://github.com/netmanagers/puppet-ddclient) * [thias-selinux](https://github.com/thias/puppet-selinux) * [millerjl1701-samba](https://github.com/millerjl1701/millerjl1701-samba) * [glorpen-hosts](https://github.com/glorpen/puppet-hosts.git) * [netmanagers-ssmtp](https://github.com/netmanagers/puppet-ssmtp) * [netmanagers-dnsmasq](https://github.com/netmanagers/puppet-dnsmasq) * [bovy89-fail2ban](https://github.com/bovy89/fail2ban) * [earsdown-tinyproxy](https://github.com/earsdown/puppet-tinyproxy) * [treydock-powerman](https://github.com/treydock/puppet-module-powerman) * [treydock-pdsh](https://github.com/treydock/puppet-module-pdsh) * [rendhalver-sudo](https://forge.puppet.com/rendhalver/sudo) * [inkblot-quagga](https://github.com/inkblot/puppet-quagga.git) * [geoffwilliams-autofs](https://github.com/pdxcat/puppet-module-autofs) * [geoffwilliams-sshkeys](https://github.com/GeoffWilliams/sshkeys) * [mklauber-aide](https://github.com/mklauber/puppet-aide) * [pinguinag-graylogcollectorsidecar](https://github.com/ag-pinguin/pinguinag-graylogcollectorsidecar) * [panaman-bro](https://github.com/panaman/puppet-bro) * [jtopjian-apt_mirror](https://github.com/jtopjian/puppet-apt_mirror.git) * [bodgit-yum](https://github.com/bodgit/puppet-yum) * [zleslie-sudo](https://github.com/xaque208/puppet-sudo) * [spacepants-ds_389](https://github.com/spacepants/puppet-ds_389.git) * [evenup-pdns](https://forge.puppet.com/evenup/pdns) * [attachmentgenie-loki](https://github.com/attachmentgenie/attachmentgenie-loki.git) * [nosolutions-tsm](https://github.com/nosolutions/puppet-tsm) * [calmenergy-fail2ban](https://github.com/calmenergy/calmenergy-fail2ban) * [puppetlabs-rsync](https://github.com/puppetlabs/puppetlabs-rsync) * [gabe-ngrok](https://github.com/gabe-sky/puppet-ngrok) * [coi-jboss](https://github.com/coi-gov-pl/puppet-jboss.git) * [abstractit-sudo](https://github.com/abstractitptyltd/puppet-sudo) * [neillturner-wordpress](https://github.com/neillturner/puppet-wordpress) * [oxc-rspamd](https://github.com/oxc/puppet-rspamd) * [opuscodium-wifi](https://github.com/opus-codium/puppet-wifi) * [jlondon-phpmyadmin](http://github.com/justicel/puppet-phpmyadmin.git) * [zleslie-nsd](https://github.com/xaque208/puppet-nsd.git) * [arioch-keepalived](https://github.com/arioch/puppet-keepalived) * [eNovance-ceph](https://github.com/enovance/puppet-ceph) * [cirrax-dovecot](https://github.com/cirrax/puppet-dovecot) * [spjmurray-puppet](https://github.com/spjmurray/puppet-puppet) * [ccin2p3-mit_krb5](https://github.com/ccin2p3/puppet-mit_krb5.git) * [netmanagers-fail2ban](https://github.com/netmanagers/puppet-fail2ban) * [gaudenz-libvirt](http://git.cirrax.com/?p=puppet-modules/libvirt.git) * [vshn-burp](https://github.com/vshn/puppet-burp/) * [stxjk-haproxy](https://github.com/jkstx/puppetlabs-haproxy) * [trepasi-debnet](https://github.com/rtib/tib-debnet.git) * [Aethylred-puppet](https://github.com/nesi/puppet-puppet) * [echocat-nfs](https://github.com/echocat/puppet-nfs.git) * [bodgit-rtadvd](https://github.com/bodgit/puppet-rtadvd) * [bodgit-bsdauth](https://github.com/bodgit/puppet-bsdauth) * [genebean-nxlog](https://github.com:genebean/genebean-nxlog.git) * [jonnyx-logwatch](https://github.com/jonmosco/puppet-logwatch) * [puppet-nsd](https://github.com/voxpupuli/puppet-nsd.git) * [fvoges-motd](https://github.com/fvoges/puppet-motd.git) * [bodgit-nsd](https://github.com/bodgit/puppet-nsd) * [ploperations-github](https://github.com/ploperations/ploperations-github.git) * [treydock-clustershell](https://github.com/treydock/puppet-module-clustershell) * [levinine-dockerfile](https://github.com/levinine/levinine-dockerfile) * [DracoBlue-nginx](http://github.com/dracoblue/pp-nginx) * [bodgit-unbound](https://github.com/bodgit/puppet-unbound) * [otherskins-ansible](https://github.com/otherskins/puppet-ansible.git) * [mlambrichs-neo4j](https://github.com/mlambrichs/puppet-neo4j) * [sbitio-monit](http://github.com/sbitio/puppet-monit) * [grafana-promtail](https://github.com/grafana/puppet-promtail.git) * [opuscodium-taiga](https://github.com/opus-codium/puppet-taiga) * [iu-aide](https://github.com/indiana-university/puppet-aide) * [adamcrews-pound](https://github.com/adamcrews/puppet-pound) * [claranet-consul_template](https://github.com/claranet/puppet-consul_template) * [joelkle-salt](https://github.com/JoelKle/puppet-salt) * [example42-icinga](https://github.com/example42/puppet-icinga) * [veepshosting-rsnapshot](https://github.com/Veeps-Hosting/puppet-rsnapshot) * [kemra102-auditd](https://github.com/kemra102/puppet-auditd) * [cirrax-approx](https://github.com/cirrax/puppet-approx) * [ccin2p3-remctl](https://github.com/ccin2p3/puppet-remctl) * [gentoo-portage](https://github.com/gentoo/puppet-portage.git) * [treydock-gpfs](https://github.com/treydock/puppet-module-gpfs) * [example42-nginx](https://github.com/netmanagers/puppet-nginx) * [Kotty666-maxscale](https://github.com/Kotty666/Kotty666-maxscale) * [dsestero-jboss](https://github.com/dsestero/jboss.git) * [cmdntrf-consul_template](https://github.com/cmd-ntrf/puppet-consul_template) * [aptituz-ssh](https://github.com/aptituz/puppet-openssh) * [glorpen-g_server](https://github.com/glorpen/puppet-g_server.git) * [oris-appserver](https://bitbucket.org/oris/env-puppet-module-appserver) * [zleslie-unbound](https://github.com/xaque208/puppet-unbound.git) * [ccin2p3-syslog_ng](https://github.com/ccin2p3/puppet-syslog_ng) * [fraenki-ds_389](https://github.com/markt-de/puppet-ds_389.git) * [opuscodium-application](https://github.com/opus-codium/puppet-application) * [puppet-varnish](https://github.com/voxpupuli/puppet-varnish) * [broadinstitute-certs](https://github.com/broadinstitute/puppet-certs.git) * [hfm-stns](https://github.com/STNS/puppet-stns) * [inkblot-tor](https://github.com/inkblot/puppet-tor.git) * [zanloy-vim](https://github.com/zanloy/puppet-vim) * [oxc-dovecot](https://github.com/oxc/puppet-dovecot) * [eyp-limits](https://github.com/jordiprats/eyp-epel) * [stm-sendmail](https://github.com/smoeding/puppet-sendmail) * [puppet-etherpad](https://github.com/voxpupuli/puppet-etherpad) * [lmaxexchange-sfptpd](https://github.com/LMAX-Exchange/puppet-sfptpd) * [stm-openssl](https://github.com/smoeding/puppet-openssl) * [cristifalcas-curator](https://github.com/cristifalcas/puppet-curator) * [puppet-keepalived](https://github.com/voxpupuli/puppet-keepalived.git) * [simp-svckill](https://github.com/simp/pupmod-simp-svckill) * [trepasi-zookeeperd](https://github.com/rtib/puppet-zookeeperd.git) * [puppet-squid](https://github.com/voxpupuli/puppet-squid) * [ghoneycutt-ssh](https://github.com/ghoneycutt/puppet-module-ssh.git) * [smash-tor](https://gitlab.com/shared-puppet-modules-group/tor) * [bodgit-yp](https://github.com/bodgit/puppet-yp) * [evenup-apache](https://github.com/evenup/evenup-apache) * [broadinstitute-certificates](https://github.com/broadinstitute/puppet-certificates.git) * [pest-curator](https://github.com/puppets-epic-show-theatre/puppet-curator) * [puppet-zypprepo](https://github.com/voxpupuli/puppet-zypprepo.git) * [themeier-ssh](https://github.com/themeier/puppet-module-ssh.git) * [opuscodium-firefox](https://github.com/opus-codium/puppet-firefox) * [puppet-gitlab_ci_runner](https://github.com/voxpupuli/puppet-gitlab_ci_runner) * [cirrax-libvirt](https://github.com/cirrax/puppet-libvirt) * [ccin2p3-patterndb](https://github.com/ccin2p3/puppet-patterndb.git) * [opuscodium-dehydrated](https://github.com/opus-codium/puppet-dehydrated) * [trepasi-cassandra](https://github.com/rtib/puppet-cassandra.git) * [simp-sudo](https://github.com/simp/pupmod-simp-sudo) * [simp-postfix](https://github.com/simp/pupmod-simp-postfix) * [puppet-nrpe](https://github.com/voxpupuli/puppet-nrpe) * [jkroepke-autofs](https://github.com/jkroepke/puppet-module-autofs) * [puppet-unbound](https://github.com/voxpupuli/puppet-unbound) * [simp-tcpwrappers](https://github.com/simp/pupmod-simp-tcpwrappers) * [simp-network](https://github.com/simp/pupmod-simp-network) * [simp-named](https://github.com/simp/pupmod-simp-named) * [enterprisemodules-ora_install](https://github.com/enterprisemodules/ora_install) * [simp-rsync](https://github.com/simp/pupmod-simp-rsync) * [simp-aide](https://github.com/simp/pupmod-simp-aide) * [simp-ntpd](https://github.com/simp/pupmod-simp-ntpd) * [simp-stunnel](https://github.com/simp/pupmod-simp-stunnel) * [theforeman-pulpcore](https://github.com/theforeman/puppet-pulpcore) * [inkblot-bind](https://github.com/inkblot/puppet-bind.git) * [puppet-cvmfs](https://github.com/voxpupuli/puppet-cvmfs.git) * [katello-qpid](https://github.com/theforeman/puppet-qpid.git) * [jmkeyes-powerdns](https://github.com/jmkeyes/puppet-powerdns) * [camptocamp-pbuilder](https://github.com/camptocamp/puppet-pbuilder) * [eyp-dovecot](https://github.com/NTTCom-MS/eyp-dovecot) * [eyp-audit](https://github.com/NTTCom-MS/eyp-audit) * [eyp-nrpe](https://github.com/NTTCom-MS/eyp-nrpe) * [evenup-tomcat](https://github.com/evenup/evenup-tomcat) * [SchnWalter-happydev](https://github.com/devgateway/happy-deployer/tree/master/puppet/modules/happydev) * [artsir-configbuilder](http://54.242.103.169/root/artsir_control_repo.git) * [evenup-puppet](https://github.com/evenup/evenup-puppet) * [um-dovecot](https://github.com/amateo/puppet-dovecot.git) * [elsopapa-cishardening](https://github.com/elsopapa/cishardening.git) * [camptocamp-nagios](https://github.com/camptocamp/puppet-nagios) * [jlcox-gitolite](https://github.com/jlcox1970/puppet-gitolite.git) * [katello-candlepin](https://github.com/theforeman/puppet-candlepin.git) * [example42-sudo](https://github.com/example42/puppet-sudo) * [derdanne-nfs](https://github.com/derdanne/puppet-nfs.git) * [example42-iptables](https://github.com/example42/puppet-iptables) * [theforeman-foreman](https://github.com/theforeman/puppet-foreman) * [biemond-oradb](https://github.com/biemond/biemond-oradb) * [middelkoopt-network](https://github.com/example42/puppet-network) * [datadog-datadog_agent](https://github.com/DataDog/puppet-datadog-agent.git) * [shinesolutions-aem_curator](http://github.com/shinesolutions/puppet-aem-curator) * [olevole-ssh](https://github.com/olevole/puppet-module-ssh.git) * [amosjwood-neo4j](https://github.com/amoswood/puppet-neo4j) * [conzar-ckan](https://bitbucket.org/landcareresearch/puppet-ckan.git) * [attachmentgenie-motd](https://github.com/attachmentgenie/attachmentgenie-motd) * [dillec-asterisk](https://github.com/diLLec/puppet-asterisk) * [dhollinger-autofs](https://github.com/voxpupuli/puppet-autofs.git) * [jetstack-kubernetes](https://github.com/jetstack/tarmak/tree/master/puppet/modules/kubernetes) * [southalc-podman](https://github.com/southalc/podman) * [norisnetwork-exim](https://github.com/noris-network/puppet-exim) * [bobtfish-postgrey](https://github.com/bobtfish/puppet-postgrey.git) * [xdrum-ssh](https://github.com/x-drum/puppet-ssh) * [pdxcat-pam](https://github.com/pdxcat/puppet-module-pam) * [tchmnkyz-freetds](http://git.rootservices.net/tchmnkyz/freetds.git) * [fnerdwq-omd](https://github.com/fnerdwq/puppet-omd.git) * [spantree-nginx](https://github.com/Spantree/puppet-nginx) * [alkivi-rsyslog](https://github.com/alkivi-sas/puppet-rsyslog) * [cirrax-openospfd](https://github.com/cirrax/puppet-openospfd) * [kkzinger-collectdwin](https://github.com/kkzinger/kkzinger-collectdwin) * [walkamongus-pulp](https://github.com/walkamongus/puppet-pulp) * [gnubilafrance-nfs](https://github.com/gnubila-france/puppet-nfs) * [abstractit-postfix](https://github.com/abstractitptyltd/puppet-postfix) * [eyp-squid](https://github.com/NTTCom-MS/eyp-squid) * [mfinelli-known_hosts](https://github.com/mfinelli/puppet-known_hosts) * [ssm-hitch](https://github.com/ssm/ssm-hitch.git) * [ssm-freeradius](https://github.com/ssm/puppet-freeradius) * [jbeard-nfs](https://github.com/jbeard6/jbeard-nfs) * [caius-usbkey_config](https://github.com/caius/puppet-usbkey_config) * [walkamongus-perlbrew](https://github.com/walkamongus/perlbrew.git) * [sharumpe-tomcat6](https://forge.puppet.com/sharumpe/tomcat6) * [rcoleman-netatalk](https://github.com/ryanycoleman/puppet-netatalk.git) * [praekeltfoundation-traefik](http://github.com/praekeltfoundation/puppet-traefik) * [fancyolaya-dokuwiki](https://github.com/mattiasgiese/puppet-dokuwiki) * [zyronix-dokuwiki](https://github.com/zyronix/puppet-dokuwiki) * [covermymeds-pgbouncer](https://github.com/covermymeds/puppet-pgbouncer.git) * [davidb-dhcpd](https://github.com/david-barbion/puppet-dhcpd) * [camptocamp-nfs](https://github.com/camptocamp/puppet-nfs) * [gnubilafrance-check_mk](https://github.com/gnubila-france/puppet-check_mk) * [puppet-system](https://github.com/voxpupuli/puppet-system.git) * [lex-newrelic_plugin_agent](https://github.com/rlex/puppet-newrelic_plugin_agent) * [ploperations-ssh](https://github.com/ploperations/ploperations-ssh.git) * [puppet-strongswan](https://github.com/voxpupuli/puppet-strongswan.git) * [jakeb-system](https://forge.puppet.com/jakeb/system) * [sharumpe-sudoers](https://forge.puppet.com/sharumpe/sudoers) * [ccin2p3-conserver](https://github.com/ccin2p3/puppet-conserver.git) * [bzed-letsencrypt](https://github.com/bzed/bzed-letsencrypt) * [bodgit-graphite](https://github.com/bodgit/puppet-graphite) * [pdxcat-amanda](https://github.com/pdxcat/puppet-module-amanda) * [puppetfinland-thunderbird](https://github.com/Puppet-Finland/puppet-thunderbird.git) * [tohuwabohu-autoconfig](https://github.com/tohuwabohu/puppet-autoconfig.git) * [bodgit-openssh](https://github.com/bodgit/puppet-openssh) * [sharumpe-tcpwrappers](https://forge.puppet.com/sharumpe/tcpwrappers) * [ffquintella-tcpwrappers](https://github.com/ffquintella/puppet-tcpwrappers.git) * [crayfishx-rsyslog](https://github.com/crayfishx/puppet-rsyslog) * [ceh-nagios](https://github.com/NERC-CEH/puppet-nagios) * [inkblot-openvpn](https://github.com/inkblot/puppet-openvpn.git) * [millerjl1701-tcpwrappers](https://github.com/millerjl1701/millerjl1701-tcpwrappers/) * [cirrax-autoconfigmail](https://github.com/cirrax/puppet-autoconfigmail) * [sensson-csf](https://github.com/sensson/sensson-csf) * [camptocamp-dhcp](https://github.com/camptocamp/puppet-dhcp) * [arusso-iptables](https://github.com/arusso/puppet-iptables) * [loomsen-rsnapshot](https://github.com/loomsen/puppet-rsnapshot) * [gerardcl-autossh](https://github.com/gerardcl/puppet-autossh.git) * [icann-opendnssec](https://github.com/icann-dns/puppet-opendnssec) * [cirrax-gitolite](https://github.com/cirrax/puppet-gitolite) * [cirrax-borgbackup](https://github.com/cirrax/puppet-borgbackup) * [zleslie-pf](https://github.com/xaque208/puppet-pf.git) * [zleslie-ssh](https://github.com/xaque208/puppet-ssh.git) * [opuscodium-ssh](https://github.com/opus-codium/puppet-ssh.git) * [CERNOps-motd](https://github.com/cernops/puppet-motd) * [netmanagers-bind](https://github.com/netmanagers/puppet-bind) * [tsystemsmms-secc_snmpd](https://github.com/T-Systems-MMS/puppet-secc_snmpd) * [fraenki-proftpd](https://github.com/fraenki/puppet-proftpd) * [spacepants-ezproxy](https://github.com/spacepants/puppet-ezproxy.git) * [cirrax-postfix](https://github.com/cirrax/puppet-postfix) * [jdowning-awscli](https://github.com/jdowning/puppet-awscli.git) * [tkishel-puppet_device](https://github.com/tkishel/puppet_device.git) * [lex-dnsmasq](https://github.com/rlex/puppet-dnsmasq.git) * [camptocamp-mcollective](https://github.com/camptocamp/puppet-mcollective) * [tohuwabohu-roundcube](https://github.com/tohuwabohu/puppet-roundcube.git) * [example42-network](https://github.com/example42/puppet-network) * [icinga-icingaweb2](https://github.com/Icinga/puppet-icingaweb2) * [puppetlabs-device_manager](https://github.com/puppetlabs/device_manager.git) * [ghoneycutt-facter](https://github.com/ghoneycutt/puppet-module-facter.git) * [puppet-amanda](https://github.com/voxpupuli/puppet-amanda.git) * [fraenki-acme](https://github.com/fraenki/puppet-acme) * [luxflux-openvpn](https://github.com/luxflux/puppet-openvpn) * [stackforge-swift](https://github.com/openstack/puppet-swift.git) * [puppet-rsyslog](https://github.com/voxpupuli/puppet-rsyslog) * [treydock-osg](https://github.com/treydock/puppet-osg.git) * [puppet-yum](https://github.com/voxpupuli/puppet-yum.git) * [puppetlabs-haproxy](https://github.com/puppetlabs/puppetlabs-haproxy) * [puppet-autofs](https://github.com/voxpupuli/puppet-autofs.git) * [theforeman-dhcp](https://github.com/theforeman/puppet-dhcp) * [puppet-ferm](https://github.com/voxpupuli/puppet-ferm.git) * [eyp-saltstack](https://github.com/NTTCom-MS/eyp-saltstack) * [eyp-pam](https://github.com/NTTCom-MS/eyp-pam) * [eyp-openssh](https://github.com/NTTCom-MS/eyp-openssh) * [puppet-check_mk](https://github.com/voxpupuli/puppet-check_mk) * [ULHPC-bind](https://github.com/ULHPC/puppet-bind) * [eyp-mysql](https://github.com/NTTCom-MS/eyp-mysql) * [tomkrieger-cis_security_hardening](https://github.com/tom-krieger/cis_security_hardening.git) * [ffquintella-sqlcli](https://github.com/ffquintella/puppet-sqlcli) * [puppet-openvpn](https://github.com/voxpupuli/puppet-openvpn) * [theforeman-puppet](https://github.com/theforeman/puppet-puppet) * [example42-nagios](https://github.com/example42/puppet-nagios) * [wazuh-wazuh](https://github.com/wazuh/wazuh-puppet) * [simp-pam](https://github.com/simp/pupmod-simp-pam) * [odivlad-network](https://github.com/example42/puppet-network) * [erwbgy-system](https://github.com/voxpupuli/puppet-system) * [jpds-strongswan](https://github.com/jpds/puppet-strongswan) * [puppetlabs-tomcat](http://github.com/puppetlabs/puppetlabs-tomcat) * [puppet-nftables](https://github.com/voxpupuli/puppet-nftables.git) * [binarin-workstation](https://forge.puppet.com/binarin/workstation) * [KyleAnderson-dns](https://github.com/solarkennedy/puppet-dns) * [norisnetwork-ceph](https://github.com/noris-network/puppet-ceph) * [alkivi-bind](https://github.com/alkivi-sas/puppet-bind) * [benningm-postfix](https://github.com/benningm/puppet-postfix.git) * [denver-netdata](https://github.com/dmcanally/denver-netdata) * [amenezes-http_hardening](http://github.com/amenezes/http_hardening) * [simp-oath](https://github.com/simp/pupmod-simp-oath.git) * [sharumpe-apache2](https://github.com/sharumpe/puppet-apache2) * [sharumpe-tomcat](https://github.com/sharumpe/puppet-tomcat) * [jonhattan-drush](http://github.com/jonhattan/puppet-drush) * [mklauber-splunk](https://github.com/mklauber/splunk) * [tomkrieger-security_baseline](https://git.home.tom-krieger.de/puppet-modules/security_baseline.git) * [zleslie-pxe](https://github.com/xaque208/puppet-pxe.git) * [camptocamp-collectd](https://github.com/camptocamp/puppet-collectd.git) * [tanny1910-omd](https://github.com/GRIF-IRFU/puppet-omd.git) * [fschaer-omd](https://github.com/GRIF-IRFU/puppet-omd) * [brainsware-trafficserver](https://github.com/Brainsware/puppet-trafficserver) * [pdxcat-autofs](https://github.com/pdxcat/puppet-module-autofs) * [jlondon-couchbase](https://github.com/justicel/puppet-couchbase.git) * [netmanagers-nut](https://github.com/netmanagers/puppet-nut) * [panaceya-bind](https://github.com/panaceya/puppet-bind) * [yuav-autofs](https://github.com/Yuav/puppet-autofs) * [camptocamp-tomcat](https://github.com/camptocamp/puppet-tomcat) * [oris-shibbolethsp](https://bitbucket.org/oris/env-puppet-module-shibbolethsp) * [jtopjian-reprepro](https://github.com/jtopjian/puppet-reprepro.git) * [puppet-pxe](https://github.com/voxpupuli/puppet-pxe.git) * [kemra102-cloudwatchlogs](https://github.com/kemra102/puppet-cloudwatchlogs) * [syseleven-restic](https://github.com/syseleven/puppet-restic.git) * [veepshosting-cloudwatchlogs](https://github.com/Veeps-Hosting/puppet-cloudwatchlogs) * [memoussati-postgresql](https://github.com/puppetlabs/puppetlabs-postgresql.git) * [tohuwabohu-duplicity](https://github.com/tohuwabohu/puppet-duplicity.git) * [simp-nfs](https://github.com/simp/pupmod-simp-nfs) * [puppetlabs-postgresql](https://github.com/puppetlabs/puppetlabs-postgresql) * [puppetlabs-apache](https://github.com/puppetlabs/puppetlabs-apache) * [eyp-bash](https://github.com/NTTCom-MS/eyp-bash) * [saz-ssh](https://github.com/saz/puppet-ssh.git) * [geekify-cloudwatchlogs](https://github.com/dsappet/puppet-cloudwatchlogs) * [kavishree-apache](https://github.com/KavishreeShanmugam/apache_2017.0.0) * [icinga-icinga2](https://github.com/icinga/puppet-icinga2) * [binarin-binarin](https://forge.puppet.com/binarin/binarin) * [bzed-dehydrated](https://github.com/bzed/bzed-dehydrated) * [desertkun-nginx](https://github.com/desertkun/puppet-nginx.git) * [puppetlabs-dhcp](https://github.com/puppetlabs/puppetlabs-dhcp) * [dmcnicks-postfix](https://github.com/dmcnicks/dmcnicks-postfix.git) * [ajjahn-dns](https://github.com/ajjahn/puppet-dns) * [puppet-dhcp](https://github.com/voxpupuli/puppetlabs-dhcp) * [puppet-smokeping](https://github.com/voxpupuli/puppet-smokeping.git) * [theforeman-dns](https://github.com/theforeman/puppet-dns) * [tobru-smokeping](https://github.com/tobru/puppet-smokeping) * [jfryman-nginx](https://github.com/jfryman/puppet-nginx.git) * [cirrax-reprepro](https://github.com/cirrax/puppet-reprepro) * [alkivi-postfix](https://github.com/alkivi-sas/puppet-postfix) * [eyp-postgresql](https://github.com/NTTCom-MS/eyp-postgresql) * [goldenkiwi-thebastion](https://github.com/ovh/puppet-thebastion.git) * [camptocamp-bind](https://github.com/camptocamp/puppet-bind) * [MiamiOH-shibboleth_idp](https://github.com/MiamiOH/puppet-shibboleth_idp.git) * [bodgit-nut](https://github.com/bodgit/puppet-nut) * [treydock-slurm](https://github.com/treydock/puppet-slurm) * [puppet-nginx](https://github.com/voxpupuli/puppet-nginx.git) * [inkblot-shorewall](https://github.com/inkblot/puppet-shorewall.git) * [zleslie-bacula](https://github.com/xaque208/puppet-bacula) * [puppet-bacula](https://github.com/voxpupuli/puppet-bacula) * [eyp-tomcat](https://github.com/NTTCom-MS/eyp-tomcat) * [openstack-horizon](https://opendev.org/openstack/puppet-horizon.git) * [trulabs-asterisk](https://github.com/trulabs/puppet-asterisk) * [aco-tomcat](https://github.com/antoineco/aco-tomcat.git) * [sourcedoctor-dns](https://github.com/SourceDoctor/puppet-dns) * [jgazeley-freeradius](https://github.com/djjudas21/puppet-freeradius) * [pdxcat-collectd](https://github.com/pdxcat/puppet-module-collectd) * [alteholz-tdc](https://github.com/alteholz/puppet-tdc) * [eyp-apache](https://github.com/NTTCom-MS/eyp-apache) * [jbussdieker-carbon](http://github.com/jbussdieker/puppet-carbon) * [stm-bind](https://github.com/smoeding/puppet-bind) * [eyp-systemd](https://github.com/SaltaIT/eyp-systemd) * [mugurax-collectd](https://github.com/voxpupuli/puppet-collectd) * [tskirvin-usenet_inn2](https://github.com/tskirvin/puppet-usenet_inn2)
Breaking changes to this file MAY impact these 92 modules (near match): * [openstack-monasca](https://opendev.org/openstack/puppet-monasca.git) * [ricbra-ratbox](https://github.com/ricbra/puppet-ratbox.git) * [unyonsys-keepalived](https://forge.puppet.com/unyonsys/keepalived) * [empi89-quagga](https://forge.puppet.com/empi89/quagga) * [Flameeyes-udevnet](https://forge.puppet.com/Flameeyes/udevnet) * [boogy-motd](https://github.com/boogy/puppet-module-motd) * [skroll-syscron](https://github.com/skroll/puppet-syscron) * [jeoffreybauvin-gitlab_ci_multi_runner](https://github.com/Jeoffreybauvin/gitlab-ci-multi-runner) * [arusso-sudo](https://github.com/arusso23/puppet-sudo) * [arusso-nfs](https://forge.puppet.com/arusso/nfs) * [schlitzered-redis](https://github.com/schlitzered/puppet-redis.git) * [rcoleman-edu_bootstrap](https://forge.puppet.com/rcoleman/edu_bootstrap) * [pdxcat-samba](https://forge.puppet.com/pdxcat/samba) * [oppegaard-unbound](https://forge.puppet.com/oppegaard/unbound) * [jlondon-zookeeper](https://forge.puppet.com/jlondon/zookeeper) * [puppetlabs-drbd](https://github.com/puppetlabs/puppetlabs-drbd.git) * [fheinle-ddns](https://github.com/fheinle/ddnsv6) * [example42-psick_profile](https://github.com/example42/puppet-psick_profile) * [ricbra-ratboxservices](https://forge.puppet.com/ricbra/ratboxservices) * [KrisBuytaert-packetbeat](https://github.com/krisbuytaert/puppet-packetbeat) * [ntnn-mounts](https://github.com/ntnn/puppet-mounts) * [janorn-ipfilter](https://github.com/janorn/puppet-ipfilter.git) * [eliasp-sysctl](https://forge.puppet.com/eliasp/sysctl) * [arioch-nginx](https://forge.puppet.com/arioch/nginx) * [frozenfoxx-vundle](https://github.com/frozenfoxx/puppet-vundle) * [eyp-udev](https://github.com/NTTCom-MS/eyp-udev) * [abiquo-abiquo](https://github.com/chirauki/abiquo-abiquo.git) * [eyp-ldconfig](https://github.com/NTTCom-MS/eyp-ldconfig) * [BernardoSilva-xvfb](https://github.com/BernardoSilva/puppet-xvfb.git) * [Flameeyes-sysctl](https://forge.puppet.com/Flameeyes/sysctl) * [poolski-packetbeat](https://github.com/poolski/puppet-packetbeat) * [pillarsdotnet-lmhosts](https://github.com/pillarsdotnet/puppet-lmhosts) * [kclnmssys-exim](https://github.com/kcl-nmssys/puppet-exim) * [oleksandriegorov-milter_greylist](https://github.com/oleksandriegorov/milter_greylist_puppet) * [nwaller-sssd](https://github.com/unbc/puppet-sssd) * [erwbgy-check_mk](https://github.com/erwbgy/puppet-check_mk.git) * [mlambrichs-carbon_c_relay](https://github.com/mlambrichs/puppet-carbon_c_relay.git) * [mdobrev-tomcat6](https://github.com/mclueppers/puppet-tomcat6) * [ferrydg-topbeat](https://github.com/ferrydg/puppet-topbeat) * [ferrydg-packetbeat](https://github.com/ferrydg/puppet-packetbeat) * [ferrydg-filebeat](https://github.com/ferrydg/puppet-filebeat) * [tedivm-hieratic](https://github.com/tedivm/puppet-hieratic) * [riverbed-stingray](https://github.com/riverbed/stingray-puppet.git) * [ceritsc-perun](https://github.com/CERIT-SC/puppet-perun.git) * [jtopjian-cubbystack](https://github.com/jtopjian/puppet-cubbystack) * [novakv-rclocal](https://github.com/novakv/puppet-rclocal.git) * [ploperations-puppet](https://github.com/puppetlabs-operations/puppet-puppet) * [firefield-firefield](https://github.com/firefield/basic-rails-server.git) * [chrisonpppt-check_mk](https://github.com/chrisongthb/puppet-check_mk.git) * [willdurand-stoplight](https://forge.puppet.com/willdurand/stoplight) * [lexance-hosts](https://github.com/lexance/puppet-hosts.git) * [evenup-activemq](https://forge.puppet.com/evenup/activemq) * [haraldsk-nfs](https://github.com/haraldsk/puppet-module-nfs.git) * [camptocamp-rdiff_backup](https://github.com/camptocamp/puppet-rdiff_backup) * [hetzner-roundcube](https://github.com/hetznerZA/hetzner-roundcube.git) * [neillturner-teamcity](https://github.com/neillturner/puppet-teamcity.git) * [ploperations-activemq](https://github.com/puppetlabs-operations/puppetlabs-activemq) * [adrien-portage](https://forge.puppet.com/adrien/portage) * [godp1301-postgresql](https://github.com/godp1301/puppetlabs-postgresql.git) * [evenup-graphite](https://forge.puppet.com/evenup/graphite) * [maxadamo-galera_proxysql](https://gitlab.com/maxadamo/galera_proxysql) * [treydock-xdmod](https://github.com/treydock/puppet-module-xdmod) * [echoes-wrappers](https://github.com/echoes-tech/puppet-wrappers) * [rplessl-telegraf](https://github.com/rplessl/puppet-telegraf.git) * [soli-wrappers](https://github.com/solution-libre/puppet-wrappers) * [openstack-tripleo](https://opendev.org/openstack/puppet-tripleo.git) * [example42-vagrant](https://github.com/example42/puppet-vagrant) * [openstack-murano](https://opendev.org/openstack/puppet-murano.git) * [KrisBuytaert-graphite](https://forge.puppet.com/KrisBuytaert/graphite) * [puppetlabs-splunk](http://github.com/puppetlabs/puppetlabs-splunk) * [jfryman-selinux](https://github.com/jfryman/puppet-selinux) * [buzzdeee-puppetdashboard](https://github.com/buzzdeee/buzzdeee-puppetboard.git) * [Flameeyes-env](https://forge.puppet.com/Flameeyes/env) * [qroac-isp3node](https://github.com/qroac/puppet-ispconfig) * [geoffjay-clustershell](https://github.com/geoffjay/puppet-clustershell.git) * [danielfnfaria-varnish](https://github.com/danielfnfaria/varnish_puppet.git) * [spantree-dns](https://github.com/Spantree/puppet-dns) * [eyp-php](https://github.com/NTTCom-MS/eyp-php) * [ploperations-mcollective](https://github.com/puppetlabs-operations/puppet-mcollective) * [puppet-homeassistant](https://github.com/voxpupuli/puppet-homeassistant) * [fuzeman-bind](https://github.com/netmanagers/puppet-bind) * [heliocentric-l2mesh](https://github.com/heliocentric/l2mesh) * [example42-splunk](https://github.com/example42/puppet-splunk) * [example42-postgresql](https://github.com/example42/puppet-postgresql) * [example42-tomcat](https://github.com/example42/puppet-tomcat) * [camptocamp-reprepro](https://github.com/camptocamp/puppet-reprepro) * [eyp-bacula](https://github.com/NTTCom-MS/eyp-bacula) * [devopera-docommon](https://github.com/devopera/puppet-docommon) * [simp-freeradius](https://github.com/simp/pupmod-simp-freeradius) * [lightoze-bacula](https://github.com/lightoze/puppet-bacula.git) * [example42-psick](https://github.com/example42/puppet-psick) * [devopera-domotd](https://forge.puppet.com/devopera/domotd)

This module is declared in 169 of 580 indexed public Puppetfiles.


These results were generated with Rangefinder, a tool that helps predict the downstream impact of breaking changes to elements used in Puppet modules. You can run this on the command line to get a full report.

Exact matches are those that we can positively identify via namespace and the declaring modules' metadata. Non-namespaced items, such as Puppet 3.x functions, will always be reported as near matches only.

JonasVerhofste commented 1 year ago

Ran a rubocop:auto_correct, should be good now.

Also, this is a non-breaking change. Default behaviour is how it was before the param existed.

JonasVerhofste commented 1 year ago

@LukasAud Seems like the two failing jobs are due to a provisioning error?

LukasAud commented 1 year ago

Waiting for acceptance to finish before merging.

elofu17 commented 1 year ago

Did this change introduce a regression?

I had puppetlabs/concat v7.3.0 and saz/ssh v10.0.0 installed on my puppet7 server. Today I upgraded to concat v8.0.0 and ssh v10.1.0 and get the following error:

Error: Could not retrieve catalog from remote server: Error 500 on SERVER: Server Error: no parameter named 'create_empty_file' (file:  /etc/puppetlabs/code/environments/production/thirdparty_modules/concat/manifests/init.pp, line: 126) on Concat_file[/etc/ssh/sshd_config] (file: /etc/puppetlabs/code/environments/production/thirdparty_modules/concat/manifests/init.pp, line: 126) on node foobar
Warning: Not using cache on failed catalog
Error: Could not retrieve catalog; skipping run

I immediately reverted back to concat v7.3.0 (I let saz/ssh v10.1.0 remain) and everything started working fine again.

I see in the changelog for puppetlabs/concat v7.4.0, that changes were made for "create_empty_file" stuff, so this PR seems relevant. :)

Unfortunately I needed to stress my revert to get all my puppet nodes running, so I don't have any more debug information.

The code calling Concat_file[/etc/ssh/sshd_config] is Steffen Siegler's module https://forge.puppet.com/modules/saz/ssh/readme v10.1.0.

JonasVerhofste commented 1 year ago

@elofu17 This sounds very much alike #772 (see the mention above your comment).

The module you mention (saz/ssh) has the same "outdated" version requirement (i.e. lower than 8).

Could you test with puppetlabs/concat v7.4.0? That version should have the new param as well but should work, given the metadata of saz/ssh v10.1.0. If that works, then metadata is here the issue as well. :)

elofu17 commented 1 year ago

I will upgrade concat from 7.3.0 to 7.4.0 now and see.

elofu17 commented 1 year ago

Identical error with 7.4.0 as with 8.0.0. ...so I'm reverting back to 7.3.0 again.

siebrand commented 1 year ago

Same issue here with puppet-nginx 4.4.0 and puppetlabs-concat 8.0.0, as well as with puppetlabs-concat 7.4.0.

Server Error: no parameter named 'create_empty_file' (file: /etc/puppetlabs/code/environments/production/modules/concat/manifests/init.pp, line: 126) on Concat_file[/etc/nginx/sites-available/00-http-php-80.conf] (file: /etc/puppetlabs/code/environments/production/modules/concat/manifests/init.pp, line: 126)

Highest version that works is concat 7.3.3.

JonasVerhofste commented 1 year ago

@siebrand @elofu17 Just to confirm, you did run type generation (puppet generate types --environment ${env}) after bumping the module, right? Because this looks a lot like the manifest being updated, but puppet not correctly knowing about the new param in the type.

elofu17 commented 1 year ago

Nope. :-) I don't even know what you are saying to be honest. :)

I've always just bumped the module version number in my Puppetfile. On the next r10k run on the puppet-server, the environment(s) get the new 3rd party modules downloaded and populated.

Then a client node performs a puppet run, and the error is triggered.

I.e. I don't restart the puppet server, I don't clear its caches, I don't generate types or anything. Is this wrong?

elofu17 commented 1 year ago

I just tested upgrading to v8.0.0 again, and then restarted the puppet server. Now it works :-)

It sounds like I was using some cached version instead of the new. Interesting that this is the first time I notice any problems. :) Sure, some of the times when I bump the 3rd party modules I also upgrade the puppet server itself, and hence restart it == those times I wouldn't have this kind of problem. But I know that I have also bumped modules without a restart lots of times during the years, and this is the first time I have noticed a problem.

I'll remember to restart the server (or clear its cache) upon bumping modules in the future.

Sorry to have wasted your time, and thanks for your comments.

JonasVerhofste commented 1 year ago

@elofu17 no worries, most important part is that it's fixed! A colleague pointed out that r10k probably takes care of the type generation, so I think you're good. (We're not using r10k, which is why we need to run the type generation manually)

@siebrand could you test bumping and then restarting puppetserver as well?

ekohl commented 1 year ago

FYI: https://www.puppet.com/docs/puppet/7/man/generate.html is the manpage for the command. It is important when using multiple environments because Puppetserver sometimes has a hard time isolating them. It's even the first item in the r10k FAQ: https://github.com/puppetlabs/r10k/blob/main/doc/faq.mkd#how-can-run-i-puppet-generate-types-for-each-changed-environment-during-deployment

siebrand commented 1 year ago

@JonasVerhofste I can confirm that the issue with 7.4.0/8.0.0 does not surface after a restart of puppetserver. Thank you for the help.