]> gitweb.fluxo.info Git - hydra.git/commitdiff
Automatically generate keys and add into hiera secret config at newnode
authorSilvio Rhatto <rhatto@riseup.net>
Wed, 23 May 2018 18:06:44 +0000 (15:06 -0300)
committerSilvio Rhatto <rhatto@riseup.net>
Wed, 23 May 2018 18:06:44 +0000 (15:06 -0300)
share/config/puppet/secrets/nodo.example.org.yaml
share/hydra/newnode

index 68b11e187268ba3b36794ac0077654b46abbe558..b2242bd57f26342bf915c2c7ad96d5a68230d051 100644 (file)
@@ -2,5 +2,7 @@
 #
 # Backup
 #
-nodo::subsystem::backup::encryptkey : "FIXME"
-nodo::subsystem::backup::password   : 'FIXME using hiera-eyaml'
+# Example config:
+#
+#   nodo::subsystem::backup::encryptkey : "FIXME"
+#   nodo::subsystem::backup::password   : 'FIXME using hiera-eyaml'
index 9926a7181067bef88cbe1d18f7a56eaa8d4ece39..96861f6767c2d53822997f573416a7cb56933311 100755 (executable)
@@ -77,6 +77,25 @@ fi
 mkdir -p $HYDRA_FOLDER/puppet/config/secrets/node
 cp $YAML $HYDRA_FOLDER/puppet/config/secrets/node/$NODE.yaml
 
+# Generate keys
+hydra $HYDRA newkeys all $NODE
+
+# Add OpenPGP key ID into secret node config
+KEYID="`keyringer $HYDRA decrypt nodes/$NODE/gpg/key.pub 2> /dev/null | gpg --with-colons 2> /dev/null | grep ^pub: | cut -d : -f 5`"
+echo "nodo::subsystem::backup::encryptkey: '$KEYID\"" >> $HYDRA_FOLDER/puppet/config/secrets/node/$NODE.yaml
+
+echo "" >> $HYDRA_FOLDER/puppet/config/secrets/node/$NODE.yaml
+
+# Add OpenPGP passphrase into secret node config
+keyringer $HYDRA decrypt nodes/$NODE/gpg/key.passwd | \
+hydra fluxo eyaml $NODE encrypt --stdin -o block -q -l nodo::subsystem::backup::password >> $HYDRA_FOLDER/puppet/config/secrets/node/$NODE.yaml
+
+echo "" >> $HYDRA_FOLDER/puppet/config/secrets/node/$NODE.yam
+
+# Add Borg passphrase into secret node config
+keyringer $HYDRA decrypt nodes/$NODE/borg/key.passwd | \
+hydra fluxo eyaml $NODE encrypt --stdin -o block -q -l nodo::subsystem::backup::borg::password >> $HYDRA_FOLDER/puppet/config/secrets/node/$NODE.yaml
+
 # Add to git
 (
   cd $HYDRA_FOLDER/puppet