diff --git a/bin/update_sops.sh b/bin/update_sops.sh index dbcef9a..7816967 100755 --- a/bin/update_sops.sh +++ b/bin/update_sops.sh @@ -196,8 +196,9 @@ function main(){ fi if [[ "${opt_find_secrets}" -eq 1 ]]; then # BAHHH https://stackoverflow.com/questions/9612090/how-to-loop-through-file-names-returned-by-find - secrets_file_list+=("$(find "${sops_config_dir}" -name secrets.yaml)") - exit + while IFS= read -r -d $'\0'; do + secrets_file_list+=("${REPLY}") + done < <( find "${sops_config_dir}" -name secrets.yaml -print0 ) fi # /VALIDATE INPUTS # /OPTIONS: ARGPARSING and VALIDATION diff --git a/verify/test.sh b/verify/test.sh index 90eb04a..4a023ba 100755 --- a/verify/test.sh +++ b/verify/test.sh @@ -81,10 +81,11 @@ fi if [[ 1 -eq 1 ]]; then >&2 echo -e "# ---\n# TEST: auto-find secrets files" # SETUP - _tmp_mock_secrets_filepath_1='mock_hierarchy/one/secrets.yaml' + _tmp_mock_secrets_dir='mock_hierarchy' + _tmp_mock_secrets_filepath_1="${_tmp_mock_secrets_dir}/one/secrets.yaml" mkdir -p "$(dirname "${_tmp_mock_secrets_filepath_1}")" touch "${_tmp_mock_secrets_filepath_1}" - _tmp_mock_secrets_filepath_2='mock_hierarchy/two/secrets.yaml' + _tmp_mock_secrets_filepath_2='mock_hierarchy/Tw o/secrets.yaml' mkdir -p "$(dirname "${_tmp_mock_secrets_filepath_2}")" touch "${_tmp_mock_secrets_filepath_2}" # RUN @@ -103,8 +104,8 @@ if [[ 1 -eq 1 ]]; then grep "${secrets_file}" <<< "${_out}" set -e # TEARDOWN - rm -rf "${_tmp_mock_secrets_filepath_1}" - rm -rf "${_tmp_mock_secrets_filepath_2}" + set -x + rm -rf "${_tmp_mock_secrets_dir}" # enmesh: restore, since this particular one is checked in git checkout "${PWD}/.sops.yaml" > /dev/null 2>&1 else