2828 uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
2929 with :
3030 ref : ${{ github.event.pull_request.head.sha }}
31+ persist-credentials : false
3132
3233 - name : Set up .NET
3334 uses : actions/setup-dotnet@d4c94342e560b34958eacfc5d055d21461ed1c5d # v5.0.0
@@ -97,23 +98,24 @@ jobs:
9798 id : check-secrets
9899 run : |
99100 has_secrets=${{ secrets.AZURE_CLIENT_ID != '' }}
100- echo "has_secrets=$has_secrets" >> $GITHUB_OUTPUT
101+ echo "has_secrets=$has_secrets" >> " $GITHUB_OUTPUT"
101102
102103 - name : Check out repo
103104 uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
104105 with :
105106 ref : ${{ github.event.pull_request.head.sha }}
107+ persist-credentials : false
106108
107109 - name : Check branch to publish
108110 env :
109111 PUBLISH_BRANCHES : " main,rc,hotfix-rc"
110112 id : publish-branch-check
111113 run : |
112- IFS="," read -a publish_branches <<< $PUBLISH_BRANCHES
114+ IFS="," read -a publish_branches <<< " $PUBLISH_BRANCHES"
113115 if [[ " ${publish_branches[*]} " =~ " ${GITHUB_REF:11} " ]]; then
114- echo "is_publish_branch=true" >> $GITHUB_ENV
116+ echo "is_publish_branch=true" >> " $GITHUB_ENV"
115117 else
116- echo "is_publish_branch=false" >> $GITHUB_ENV
118+ echo "is_publish_branch=false" >> " $GITHUB_ENV"
117119 fi
118120
119121 - name : Set up .NET
@@ -209,16 +211,16 @@ jobs:
209211 IMAGE_TAG=dev
210212 fi
211213
212- echo "image_tag=$IMAGE_TAG" >> $GITHUB_OUTPUT
213- echo "### :mega: Docker Image Tag: $IMAGE_TAG" >> $GITHUB_STEP_SUMMARY
214+ echo "image_tag=$IMAGE_TAG" >> " $GITHUB_OUTPUT"
215+ echo "### :mega: Docker Image Tag: $IMAGE_TAG" >> " $GITHUB_STEP_SUMMARY"
214216
215217 - name : Set up project name
216218 id : setup
217219 run : |
218220 PROJECT_NAME=$(echo "${{ matrix.project_name }}" | awk '{print tolower($0)}')
219221 echo "Matrix name: ${{ matrix.project_name }}"
220222 echo "PROJECT_NAME: $PROJECT_NAME"
221- echo "project_name=$PROJECT_NAME" >> $GITHUB_OUTPUT
223+ echo "project_name=$PROJECT_NAME" >> " $GITHUB_OUTPUT"
222224
223225 - name : Generate image tags(s)
224226 id : image-tags
@@ -228,12 +230,12 @@ jobs:
228230 SHA : ${{ github.sha }}
229231 run : |
230232 TAGS="${_AZ_REGISTRY}/${PROJECT_NAME}:${IMAGE_TAG}"
231- echo "primary_tag=$TAGS" >> $GITHUB_OUTPUT
233+ echo "primary_tag=$TAGS" >> " $GITHUB_OUTPUT"
232234 if [[ "${IMAGE_TAG}" == "dev" ]]; then
233- SHORT_SHA=$(git rev-parse --short ${SHA})
235+ SHORT_SHA=$(git rev-parse --short " ${SHA}" )
234236 TAGS=$TAGS",${_AZ_REGISTRY}/${PROJECT_NAME}:dev-${SHORT_SHA}"
235237 fi
236- echo "tags=$TAGS" >> $GITHUB_OUTPUT
238+ echo "tags=$TAGS" >> " $GITHUB_OUTPUT"
237239
238240 - name : Build Docker image
239241 id : build-artifacts
@@ -260,12 +262,13 @@ jobs:
260262 DIGEST : ${{ steps.build-artifacts.outputs.digest }}
261263 TAGS : ${{ steps.image-tags.outputs.tags }}
262264 run : |
263- IFS="," read -a tags <<< "${TAGS}"
264- images=""
265- for tag in "${tags [@]}"; do
266- images+="${tag}@${DIGEST} "
265+ IFS=',' read -r -a tags_array <<< "${TAGS}"
266+ images=()
267+ for tag in "${tags_array [@]}"; do
268+ images+=( "${tag}@${DIGEST}")
267269 done
268- cosign sign --yes ${images}
270+ cosign sign --yes ${images[@]}
271+ echo "images=${images[*]}" >> "$GITHUB_OUTPUT"
269272
270273 - name : Scan Docker image
271274 id : container-scan
@@ -297,6 +300,7 @@ jobs:
297300 uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
298301 with :
299302 ref : ${{ github.event.pull_request.head.sha }}
303+ persist-credentials : false
300304
301305 - name : Set up .NET
302306 uses : actions/setup-dotnet@d4c94342e560b34958eacfc5d055d21461ed1c5d # v5.0.0
@@ -309,7 +313,7 @@ jobs:
309313 client_id : ${{ secrets.AZURE_CLIENT_ID }}
310314
311315 - name : Log in to ACR - production subscription
312- run : az acr login -n $_AZ_REGISTRY --only-show-errors
316+ run : az acr login -n " $_AZ_REGISTRY" --only-show-errors
313317
314318 - name : Make Docker stubs
315319 if : |
@@ -332,26 +336,26 @@ jobs:
332336 STUB_OUTPUT=$(pwd)/docker-stub
333337
334338 # Run setup
335- docker run -i --rm --name setup -v $STUB_OUTPUT/US:/bitwarden $SETUP_IMAGE \
339+ docker run -i --rm --name setup -v " $STUB_OUTPUT/US:/bitwarden" " $SETUP_IMAGE" \
336340 /app/Setup -stub 1 -install 1 -domain bitwarden.example.com -os lin -cloud-region US
337- docker run -i --rm --name setup -v $STUB_OUTPUT/EU:/bitwarden $SETUP_IMAGE \
341+ docker run -i --rm --name setup -v " $STUB_OUTPUT/EU:/bitwarden" " $SETUP_IMAGE" \
338342 /app/Setup -stub 1 -install 1 -domain bitwarden.example.com -os lin -cloud-region EU
339343
340- sudo chown -R $(whoami):$(whoami) $STUB_OUTPUT
344+ sudo chown -R " $(whoami):$(whoami)" " $STUB_OUTPUT"
341345
342346 # Remove extra directories and files
343- rm -rf $STUB_OUTPUT/US/letsencrypt
344- rm -rf $STUB_OUTPUT/EU/letsencrypt
345- rm $STUB_OUTPUT/US/env/uid.env $STUB_OUTPUT/US/config.yml
346- rm $STUB_OUTPUT/EU/env/uid.env $STUB_OUTPUT/EU/config.yml
347+ rm -rf " $STUB_OUTPUT/US/letsencrypt"
348+ rm -rf " $STUB_OUTPUT/EU/letsencrypt"
349+ rm " $STUB_OUTPUT/US/env/uid.env" " $STUB_OUTPUT/US/config.yml"
350+ rm " $STUB_OUTPUT/EU/env/uid.env" " $STUB_OUTPUT/EU/config.yml"
347351
348352 # Create uid environment files
349- touch $STUB_OUTPUT/US/env/uid.env
350- touch $STUB_OUTPUT/EU/env/uid.env
353+ touch " $STUB_OUTPUT/US/env/uid.env"
354+ touch " $STUB_OUTPUT/EU/env/uid.env"
351355
352356 # Zip up the Docker stub files
353- cd docker-stub/US; zip -r ../../docker-stub-US.zip *; cd ../..
354- cd docker-stub/EU; zip -r ../../docker-stub-EU.zip *; cd ../..
357+ cd docker-stub/US; zip -r ../../docker-stub-US.zip ./ *; cd ../..
358+ cd docker-stub/EU; zip -r ../../docker-stub-EU.zip ./ *; cd ../..
355359
356360 - name : Log out from Azure
357361 uses : bitwarden/gh-actions/azure-logout@main
@@ -423,6 +427,7 @@ jobs:
423427 uses : actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
424428 with :
425429 ref : ${{ github.event.pull_request.head.sha }}
430+ persist-credentials : false
426431
427432 - name : Set up .NET
428433 uses : actions/setup-dotnet@d4c94342e560b34958eacfc5d055d21461ed1c5d # v5.0.0
0 commit comments