94
94
# NOTE: keep in-sync with env.TEST_IMAGE
95
95
default : testimage
96
96
PLATFORMS :
97
+ description : |-
98
+ Select platforms to build
97
99
default : linux/amd64
98
100
TAG_DATE :
99
101
description : Tag image date in ISO format (YYYYMMDD)
@@ -147,11 +149,11 @@ jobs:
147
149
# NOTE:
148
150
# GH_SHA_BEFORE is empty on pushing the first commit of a new branch
149
151
# or when running manually via workflow_dispatch
150
- if [[ -z $GH_SHA_BEFORE ]]; then
151
- DOCKERFILES="$(ls $SPARSE_PATH/*/Dockerfile)"
152
+ if [[ -z " $GH_SHA_BEFORE" ]]; then
153
+ DOCKERFILES="$(ls " $SPARSE_PATH" /*/Dockerfile)"
152
154
else
153
155
DOCKERFILES="$(
154
- git diff --name-only $GH_SHA_BEFORE $GH_SHA |
156
+ git diff --name-only " $GH_SHA_BEFORE" " $GH_SHA" |
155
157
grep Dockerfile || {
156
158
# NOTE:
157
159
# this grep could fail if e.g. we are force-pushing a stack
@@ -167,22 +169,26 @@ jobs:
167
169
DOCKERFILES_JSON="$(echo -n "$DOCKERFILES" | jq -R '.' | jq -sc '.' )"
168
170
169
171
echo "DOCKERFILES_JSON=$DOCKERFILES_JSON"
170
- echo "DOCKERFILES_JSON=$DOCKERFILES_JSON" >> $GITHUB_ENV
172
+ echo "DOCKERFILES_JSON=$DOCKERFILES_JSON" >> " $GITHUB_ENV"
171
173
172
174
- name : Define targets
173
175
id : define_targets
176
+ env :
177
+ RE_TARGET_INCLUDE : .
174
178
run : |-
175
179
if [[ "$GH_EVENT_NAME" == "push" ]]; then
176
180
RE_TARGET_EXCLUDE="$RE_TARGET_EXCLUDE|$TEST_IMAGE"
177
181
fi
178
182
179
- DOCKERFILES=($(echo "$DOCKERFILES_JSON" | jq -r 'join(" ")'))
183
+ read -ra DOCKERFILES <<< "$(
184
+ echo "$DOCKERFILES_JSON" | jq -r 'join(" ")'
185
+ )"
180
186
181
- if [[ ${#DOCKERFILES[@]} -gt 0 ]]; then
187
+ if [[ " ${#DOCKERFILES[@]}" -gt 0 ]]; then
182
188
TARGETS_LS="$(
183
- grep -i '^FROM .* AS ' ${DOCKERFILES[@]} |
189
+ grep -i '^FROM .* AS ' " ${DOCKERFILES[@]}" |
184
190
awk '{print $NF}' |
185
- { grep -E "$RE_TARGET_INCLUDE" || true; } |
191
+ { grep -E "${ RE_TARGET_INCLUDE:-} " || true; } |
186
192
{ grep -vE "$RE_TARGET_EXCLUDE" || true; } |
187
193
jq -R '.'
188
194
)"
@@ -259,12 +265,12 @@ jobs:
259
265
CONTEXT="$SPARSE_PATH/$DISTRO"
260
266
261
267
{
262
- for tag in ${!TAGS[@]}; do
268
+ for tag in " ${!TAGS[@]}" ; do
263
269
echo "IMAGE_TAG_${tag^^}=$IMAGE_NAME:${TAGS[$tag]}"
264
270
done
265
271
266
272
echo "CONTEXT=$CONTEXT"
267
- } >> $GITHUB_ENV
273
+ } >> " $GITHUB_ENV"
268
274
269
275
- name : Set up QEMU
270
276
uses : docker/setup-qemu-action@v3
0 commit comments