]> gitweb.fluxo.info Git - hydra.git/commitdiff
hydra: deploy: Puppet 8 compatibility master
authorSilvio Rhatto <rhatto@riseup.net>
Sat, 31 Jan 2026 15:41:27 +0000 (12:41 -0300)
committerSilvio Rhatto <rhatto@riseup.net>
Sat, 31 Jan 2026 15:41:27 +0000 (12:41 -0300)
docs/changelog.md
lib/hydra/deploy

index 011c3bb5357b9011bc519ab79309d78d04ce5d10..4754fe3bcaa48a945b8fb3351c2bbe24187ea610 100644 (file)
@@ -7,6 +7,8 @@
 * [x] Deploy:
     * [x] Automatically fix permission of (or delete) puppet's `devices`
           folder: https://github.com/puppetlabs/puppet-specifications/blob/master/file_paths.md
 * [x] Deploy:
     * [x] Automatically fix permission of (or delete) puppet's `devices`
           folder: https://github.com/puppetlabs/puppet-specifications/blob/master/file_paths.md
+  * [x] [Puppet 8 compatibility][].
+
 * [x] Keys:
     * [x] Deprecate generating and deploying/import borg keys, since
           pre-generation is not a supported behavior right now:
 * [x] Keys:
     * [x] Deprecate generating and deploying/import borg keys, since
           pre-generation is not a supported behavior right now:
@@ -14,6 +16,8 @@
     * [x] Document about how keys are encrypted and backed up in the server:
           https://borgbackup.readthedocs.io/en/latest/faq.html#how-important-is-the-home-config-borg-directory
 
     * [x] Document about how keys are encrypted and backed up in the server:
           https://borgbackup.readthedocs.io/en/latest/faq.html#how-important-is-the-home-config-borg-directory
 
+[Puppet 8 compatibility]: https://github.com/puppetlabs/puppet/wiki/Puppet-8-Compatibility#module-compatibility
+
 ### hydractl
 
 * [x] Provision: increase default partition sizes from 20G to 40G, as nowadays
 ### hydractl
 
 * [x] Provision: increase default partition sizes from 20G to 40G, as nowadays
index 9f1a0ba6f6f79ba5bd7c4a2b3f6e562694f0a4a3..8bbbac256dd6839b2450dc32cec62da9c8064857 100644 (file)
@@ -9,6 +9,12 @@ function hydra_deploy_setup {
   DEPLOY_RSYNC="rsync -CrltDvpq --no-owner --exclude=/ssl --exclude=logs --exclude=keys --exclude=site_keys --exclude=config/secrets --delete --rsync-path"
   RSYNC_PATH="rsync -q"
 
   DEPLOY_RSYNC="rsync -CrltDvpq --no-owner --exclude=/ssl --exclude=logs --exclude=keys --exclude=site_keys --exclude=config/secrets --delete --rsync-path"
   RSYNC_PATH="rsync -q"
 
+  # Puppet 8+ compatibility
+  # https://github.com/puppetlabs/puppet/wiki/Puppet-8-Compatibility#module-compatibility
+  # https://github.com/puppetlabs/puppet/blob/main/references/configuration.md#configuration-settings
+  PUPPET_OPTS="$PUPPET_OPTS --include_legacy_facts"
+  PUPPET_OPTS="$PUPPET_OPTS --no-strict_variables --strict=warning"
+
   # Ensure keystore existence
   mkdir -p $HYDRA_FOLDER/puppet/keys
 
   # Ensure keystore existence
   mkdir -p $HYDRA_FOLDER/puppet/keys
 
@@ -75,9 +81,11 @@ function hydra_deploy_setup {
     DEPLOY_COMMAND="$SUDO"
     DEPLOY_RSYNC=""
     FQDN="`cat /etc/hostname`"
     DEPLOY_COMMAND="$SUDO"
     DEPLOY_RSYNC=""
     FQDN="`cat /etc/hostname`"
-    PUPPET_OPTS="--confdir=$HYDRA_FOLDER/puppet --modulepath=$HYDRA_FOLDER/puppet/modules"
     hydra_deploy_set_manifest $HYDRA_FOLDER || return 1
 
     hydra_deploy_set_manifest $HYDRA_FOLDER || return 1
 
+    # Set configuration and module path
+    PUPPET_OPTS="$PUPPET_OPTS --confdir=$HYDRA_FOLDER/puppet --modulepath=$HYDRA_FOLDER/puppet/modules"
+
     # Remove old eyaml symlinks if exists
     if [ -h "$HYDRA_FOLDER/puppet/keys/private_key.pkcs7.pem" ]; then
       rm -f $HYDRA_FOLDER/puppet/keys/private_key.pkcs7.pem
     # Remove old eyaml symlinks if exists
     if [ -h "$HYDRA_FOLDER/puppet/keys/private_key.pkcs7.pem" ]; then
       rm -f $HYDRA_FOLDER/puppet/keys/private_key.pkcs7.pem