Skip to content

Commit b377759

Browse files
authored
fix(circleci-orb-sync): use absolute paths when needed, better skip check (#1039)
1 parent edeb583 commit b377759

1 file changed

Lines changed: 12 additions & 5 deletions

File tree

.mise/tasks/stencil/post/circleci-orb-sync

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,9 @@ source "$DEVBASE_LIB_DIR"/shell.sh
3333

3434
ensure_bash_5_or_greater
3535

36+
repoDir="$(get_repo_directory)"
3637
repoCircleCIConfig=".circleci/config.yml"
38+
fullRepoCircleCIConfigPath="$repoDir/.circleci/config.yml"
3739
org="$(get_box_field org)"
3840

3941
if [[ "$(get_app_name)" == "devbase" ]]; then
@@ -42,7 +44,7 @@ else
4244
isDevbaseItself=false
4345
fi
4446

45-
if [[ $# == 0 ]] && managed_by_stencil "$repoCircleCIConfig" && [[ $isDevbaseItself == "false" ]]; then
47+
if [[ $# == 0 && -z ${CIRCLECI_ORB_SYNC_FILES:-} ]] && managed_by_stencil "$repoCircleCIConfig" && [[ $isDevbaseItself == "false" ]]; then
4648
info "CircleCI config is managed by Stencil, skipping manual CircleCI orb sync" >&2
4749
exit 0
4850
fi
@@ -65,16 +67,21 @@ fi
6567

6668
info "Replacing CircleCI shared orb version with $replaceVersion"
6769

68-
configFiles=("$repoCircleCIConfig")
70+
configFiles=()
71+
if ! managed_by_stencil "$repoCircleCIConfig"; then
72+
configFiles+=("$fullRepoCircleCIConfigPath")
73+
fi
74+
6975
if [[ -n ${CIRCLECI_ORB_SYNC_FILES:-} ]]; then
70-
readarray -t -d ' ' extraFiles < <(echo "$CIRCLECI_ORB_SYNC_FILES")
71-
configFiles+=("${extraFiles[@]}")
76+
for extraFile in $CIRCLECI_ORB_SYNC_FILES; do
77+
configFiles+=("$repoDir/$extraFile")
78+
done
7279
fi
7380

7481
for config in "${configFiles[@]}"; do
7582
info_sub "Updating $config"
7683
sed_replace "$org/shared@.\+" "$org/shared@$replaceVersion" "$config"
77-
if [[ $config == "$repoCircleCIConfig" ]]; then
84+
if [[ $config == "$fullRepoCircleCIConfigPath" ]]; then
7885
circleci config validate --org-slug="github/$org" "$config"
7986
fi
8087
done

0 commit comments

Comments
 (0)