From 8e250fc2c187ffc8de57c63ec827b402ae29db8b Mon Sep 17 00:00:00 2001 From: Tamas Vami Date: Wed, 18 Sep 2024 06:59:12 -0700 Subject: [PATCH] Auto-commit clang format (#1464) Add a CI that runs clang-format, and if changes are needed commits them automatically. Resolves https://github.com/LDMX-Software/ldmx-sw/issues/1457 --- .github/workflows/format-check.yml | 32 ++++++++++++++++++++++++------ 1 file changed, 26 insertions(+), 6 deletions(-) diff --git a/.github/workflows/format-check.yml b/.github/workflows/format-check.yml index c5e91db3f..8430db246 100644 --- a/.github/workflows/format-check.yml +++ b/.github/workflows/format-check.yml @@ -1,4 +1,4 @@ -name: Check Format +name: Apply clang-format on: push: branches: @@ -9,9 +9,29 @@ jobs: clang-format: runs-on: ubuntu-latest steps: - - uses: extractions/setup-just@v2 - with: + - name: Install just + uses: extractions/setup-just@v2 + with: just-version: 1.26.0 - - uses: actions/checkout@v4 - - name: run format check on the C++ - run: just install-denv init format-cpp --verbose -Werror --dry-run + + - uses: actions/checkout@v4 + + - name: Pull latest changes + run: | + git fetch origin ${GITHUB_HEAD_REF} + git checkout ${GITHUB_HEAD_REF} + git pull origin ${GITHUB_HEAD_REF} + + - name: Run format check on the C++ + run: just install-denv init format-cpp + + - name: Set up git user as the bot + run: | + git config user.name 'github-actions[bot]' + git config user.email 'github-actions[bot]@users.noreply.github.com' + + - name: Auto-commit the changes + run: | + git add . + git commit -m "Apply clang-format" || echo "No changes to commit" + git push origin HEAD:${GITHUB_HEAD_REF}