From e4f66eac3d67b5470854deb3922381ff103f34d7 Mon Sep 17 00:00:00 2001 From: LeeW Date: Fri, 31 Jan 2025 15:40:21 +0100 Subject: [PATCH] phase3: refactor --- bin/update_sops.sh | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/bin/update_sops.sh b/bin/update_sops.sh index ca8ab53..d475735 100755 --- a/bin/update_sops.sh +++ b/bin/update_sops.sh @@ -49,18 +49,22 @@ creation_rules: # list of keys for encryption in stage - pgp: >- EOM + fpr_list=() for gpgkeyfile in *automation*gpg.pub; do - echo " $(fn_extract_fpr "${gpgkeyfile}")," + fpr_list+=( $(fn_extract_fpr "${gpgkeyfile}") ) done - # HACK: TODO: yq update the list in the foldable code block scalar thingy (automating yaml always hard...) - # HACK: all but last line get comma - for gpgkeyfile in $(ls *gpg.pub | grep -v automation | sed '$d'); do - echo " $(fn_extract_fpr "${gpgkeyfile}")," + for gpgkeyfile in $(ls *gpg.pub | grep -v automation); do + fpr_list+=( $(fn_extract_fpr "${gpgkeyfile}") ) done - # HACK: last line no comma - for gpgkeyfile in $(ls *gpg.pub | grep -v automation | tail -n 1); do - echo " $(fn_extract_fpr "${gpgkeyfile}")" + + # all but last line get comma + ind_2nd_last=$((${#fpr_list[@]} - 1)) + for fpr in ${fpr_list[@]:0:${ind_2nd_last}}; do + echo " ${fpr}," done + # last line no comma + # echo " ${fpr_list[-1]}," # requires bash v4.1 + echo " ${fpr_list[${ind_2nd_last}]}" } # UPDATE SOPS CONFIG