function hydra_import_keys_openpgp {
key="$(keyringer $HYDRA decrypt nodes/$hostname/gpg/key 2> /dev/null | sed -ne '1,$p')"
pubkey="$(keyringer $HYDRA decrypt nodes/$hostname/gpg/key.pub 2> /dev/null | sed -ne '1,$p')"
+ passphrase="$(keyringer $HYDRA decrypt nodes/$hostname/gpg/key.passwd 2> /dev/null)"
key_id="$(echo "$pubkey" | gpg --with-colons | grep pub | cut -d : -f 5)"
if [ -z "$key" ]; then
echo "Importing gpg key to $node..."
echo "-----------------------------"
echo ""
- echo "$key" | sudo gpg --homedir /root/.gnupg --import
+ echo -e "${passphrase}\n${key}" | sudo gpg --passphrase-fd 0 --no-tty --homedir /root/.gnupg --import
echo ""
echo "Trusting key $key_id at $node..."
echo "Importing gpg key to $node..."
echo "-----------------------------"
echo ""
- echo "$key" | sudo gpg --homedir /root/.gnupg --import
+ echo -e "${passphrase}\n${key}" | sudo gpg --passphrase-fd 0 --no-tty --homedir /root/.gnupg --import
echo ""
echo "Trusting key $key_id at $node..."