diff --git a/.github/workflows/format.yml b/.github/workflows/format.yml index 80f0b1b54..04dd8dce5 100644 --- a/.github/workflows/format.yml +++ b/.github/workflows/format.yml @@ -9,8 +9,7 @@ on: - 'dependabot/**' # Avoid duplicates: only run the PR, not the push pull_request_target: workflow_dispatch: -permissions: - contents: write + jobs: format: runs-on: ubuntu-24.04 @@ -18,12 +17,21 @@ jobs: env: CI_OS_NAME: linux CI_RUNS_ON: ubuntu-24.04 - CI_COMMIT: ${{ github.sha }} steps: + # Use the Verilator CI app to push formatting - this will trigger + # workflows and consequently cancel in progress jobs if necessary + - name: Generate access token + if: ${{ github.repository == 'verilator/verilator' }} + id: generate-token + uses: actions/create-github-app-token@v2.1.4 + with: + app-id: ${{ vars.VERILATOR_CI_ID }} + private-key: ${{ secrets.VERILATOR_CI_KEY }} + permission-contents: write - name: Checkout uses: actions/checkout@v5 with: - token: ${{ secrets.GITHUB_TOKEN }} + token: ${{ github.repository == 'verilator/verilator' && steps.generate-token.outputs.token || secrets.GITHUB_TOKEN }} - name: Install packages for build env: CI_BUILD_STAGE_NAME: build