Skip to content

Commit f81b5a8

Browse files
authored
Update pull behavior and add platform to test (#354)
1 parent f87faff commit f81b5a8

File tree

2 files changed

+9
-6
lines changed

2 files changed

+9
-6
lines changed

.circleci/test-deploy.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -352,6 +352,7 @@ workflows:
352352
dockerfile: sample/Dockerfile
353353
path: workspace
354354
extra_build_args: --compress
355+
platform: linux/amd64,linux/arm64
355356
skip_when_tags_exist: true
356357
post-steps:
357358
- run:

src/scripts/docker_buildx.sh

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,8 @@ AWS_ECR_EVAL_LIFECYCLE_POLICY_PATH="$(eval echo "${AWS_ECR_STR_LIFECYCLE_POLICY_
1616
# shellcheck disable=SC2034 # used indirectly via environment in `docker buildx` builds
1717
BUILDX_NO_DEFAULT_ATTESTATIONS=1
1818

19-
2019
if [ -n "${AWS_ECR_STR_EXTRA_BUILD_ARGS}" ]; then
21-
IFS=" " read -a args -r <<< "${AWS_ECR_STR_EXTRA_BUILD_ARGS[@]}"
20+
IFS=" " read -a args -r <<<"${AWS_ECR_STR_EXTRA_BUILD_ARGS[@]}"
2221
for arg in "${args[@]}"; do
2322
set -- "$@" "$arg"
2423
done
@@ -44,7 +43,10 @@ for tag in "${DOCKER_TAGS[@]}"; do
4443
if [ "${AWS_ECR_BOOL_SKIP_WHEN_TAGS_EXIST}" -eq "1" ] || [ "${AWS_ECR_BOOL_SKIP_WHEN_TAGS_EXIST}" = "true" ]; then
4544
docker_tag_exists_in_ecr=$(aws "${ECR_COMMAND}" describe-images --profile "${AWS_ECR_EVAL_PROFILE_NAME}" --registry-id "${AWS_ECR_EVAL_ACCOUNT_ID}" --region "${AWS_ECR_EVAL_REGION}" --repository-name "${AWS_ECR_EVAL_REPO}" --query "contains(imageDetails[].imageTags[], '${tag}')")
4645
if [ "${docker_tag_exists_in_ecr}" = "true" ]; then
47-
docker pull "${AWS_ECR_VAL_ACCOUNT_URL}/${AWS_ECR_EVAL_REPO}:${tag}" --platform "${AWS_ECR_EVAL_PLATFORM}"
46+
IFS="," read -ra PLATFORMS <<<"${AWS_ECR_EVAL_PLATFORM}"
47+
for p in "${PLATFORMS[@]}"; do
48+
docker pull "${AWS_ECR_VAL_ACCOUNT_URL}/${AWS_ECR_EVAL_REPO}:${tag}" --platform "${p}"
49+
done
4850
number_of_tags_in_ecr=$((number_of_tags_in_ecr += 1))
4951
fi
5052
fi
@@ -62,7 +64,7 @@ if [ "${AWS_ECR_BOOL_SKIP_WHEN_TAGS_EXIST}" -eq "0" ] || [[ "${AWS_ECR_BOOL_SKIP
6264
--lifecycle-policy-text "file://${AWS_ECR_EVAL_LIFECYCLE_POLICY_PATH}"
6365
fi
6466

65-
elif [ "${AWS_ECR_BOOL_PUSH_IMAGE}" -eq "0" ] && [ "${number_of_platforms}" -le 1 ];then
67+
elif [ "${AWS_ECR_BOOL_PUSH_IMAGE}" -eq "0" ] && [ "${number_of_platforms}" -le 1 ]; then
6668
set -- "$@" --load
6769
fi
6870

@@ -85,7 +87,7 @@ if [ "${AWS_ECR_BOOL_SKIP_WHEN_TAGS_EXIST}" -eq "0" ] || [[ "${AWS_ECR_BOOL_SKIP
8587
set +x
8688
fi
8789

88-
set -x
90+
set -x
8991
docker \
9092
${context_args:+$context_args} \
9193
buildx build \
@@ -95,6 +97,6 @@ set -x
9597
--progress plain \
9698
"$@" \
9799
"${AWS_ECR_EVAL_BUILD_PATH}"
98-
set +x
100+
set +x
99101

100102
fi

0 commit comments

Comments
 (0)