@@ -37,22 +37,23 @@ jobs:
3737 merged_commit=$(git log -1 --format='%H')
3838 files=$(git diff --name-status --diff-filter=ARM ${{ github.event.pull_request.base.sha }} ${merged_commit} | awk '{print $2}' | grep -E 'Dockerfile$' || true)
3939 echo "files<<EOF" >> $GITHUB_OUTPUT
40- echo "$files" >> $GITHUB_OUTPUT
40+ echo "$files" | tr '\0' '\n' >> $GITHUB_OUTPUT
4141 echo "EOF" >> $GITHUB_OUTPUT
4242
4343 - name : Build and check image sizes
4444 if : steps.changed-dockerfiles.outputs.files != ''
4545 run : |
46- cd ${{github.workspace}}
47- merged_commit=$(git log -1 --format='%H')
4846 set -e
49- while read -r dockerfile; do
47+ merged_commit=$(git log -1 --format='%H')
48+ echo "### Images size variations" >> GITHUB_STEP_SUMMARY
49+ while IFS= read -r -d '' dockerfile; do
5050 [ -z "$dockerfile" ] && continue
5151 dir=$(dirname "$dockerfile")
5252 file=$(basename "$dockerfile")
5353 image_base="pr-image-size-base:$(echo $dir | tr '/' '-')"
5454 image_pr="pr-image-size-pr:$(echo $dir | tr '/' '-')"
55- cd $dir
55+ cd ${{github.workspace}}/$dir
56+
5657 echo "Building base image for $dockerfile"
5758 echo "Base: ${{ github.event.pull_request.base.sha }}"
5859 git checkout ${{ github.event.pull_request.base.sha }}
7576 echo "::warning::Image size change: $size_base -> $size_pr MB}' (diff: $diff MB)"
7677 echo "File $dockerfile resulted in a change in the image size from $size_base -> $size_pr MB" >> GITHUB_STEP_SUMMARY
7778 docker rmi "$image_base" "$image_pr"
78- done <<< "${{ steps.changed-dockerfiles.outputs.files }}"
79+ done < <(echo "${{ steps.changed-dockerfiles.outputs.files }}" | tr '\n' '\0')
0 commit comments