diff --git a/.github/workflows/format.yml b/.github/workflows/format.yml index 904e4f4..d1a4c0e 100644 --- a/.github/workflows/format.yml +++ b/.github/workflows/format.yml @@ -5,22 +5,23 @@ on: [pull_request] jobs: clang-format-8: runs-on: ubuntu-latest + container: "docker://ghcr.io/wolletd/clang-format:latest" steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 with: ref: ${{ github.event.pull_request.head.sha }} - - name: Run clang-foramt on changed files + - name: Run clang-format on changed files run: | set -x git fetch origin ${{ github.event.pull_request.base.ref }} git fetch origin pull/${{ github.event.pull_request.number }}/head:${{ github.event.pull_request.head.ref }} BASE_COMMIT=$(git rev-parse ${{ github.event.pull_request.base.sha }}) - COMMIT_FILES=$(git diff --name-only ${BASE_COMMIT} | grep -i -v LinkDef) - RESULT_OUTPUT=$(git-clang-format-8 --commit ${BASE_COMMIT} --diff --binary $(which clang-format-8) ${COMMIT_FILES}) + COMMIT_FILES=$(git diff --name-only "${BASE_COMMIT}" | grep -i -v LinkDef) + RESULT_OUTPUT=$(git-clang-format-8 --commit "${BASE_COMMIT}" --diff --binary "$(which clang-format-8)" "${COMMIT_FILES}") if [ "$RESULT_OUTPUT" == "no modified files to format" ] || [ "$RESULT_OUTPUT" == "clang-format did not modify any files" ]; then exit 0 else - git-clang-format-8 --commit $BASE_COMMIT --diff --binary $(which clang-format-8) + git-clang-format-8 --commit "$BASE_COMMIT" --diff --binary "$(which clang-format-8)" echo "$RESULT_OUTPUT" exit 1 fi