diff --git a/scripts/write-argocd-repo/run.sh b/scripts/write-argocd-repo/run.sh index 9f9b6cb..d6e7841 100755 --- a/scripts/write-argocd-repo/run.sh +++ b/scripts/write-argocd-repo/run.sh @@ -13,16 +13,22 @@ mkdir -p "${output_dir}" origin_url="$(git remote get-url origin 2>/dev/null || true)" branch="$(git symbolic-ref --quiet --short HEAD 2>/dev/null || git rev-parse --short HEAD)" +workflow_files=() + +if [[ -d "${workflow_dir}" ]]; then + while IFS= read -r -d '' file; do + workflow_files+=("${file#${workflow_dir}/}") + done < <(find "${workflow_dir}" -maxdepth 1 -type f -print0 | sort -z) +fi + { printf 'remote_origin_url=%s\n' "${origin_url}" printf 'branch=%s\n' "${branch}" - if [[ -d "${workflow_dir}" ]]; then - find "${workflow_dir}" -maxdepth 1 -type f -printf '%f\n' \ - | sort \ - | while IFS= read -r workflow_file; do - printf 'workflow=%s\n' "${workflow_file}" - done + if (( ${#workflow_files[@]} > 0 )); then + printf 'workflow_files=%s\n' "$(IFS=,; echo "${workflow_files[*]}")" + else + printf 'workflow_files=\n' fi } > "${output_file}"