name: Benchmark Go code on: pull_request: branches: - main permissions: pull-requests: write jobs: benchmark: runs-on: ubuntu-latest steps: - name: Check out code uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 with: show-progress: false - name: Set up Go uses: actions/setup-go@4a3601121dd01d1626a1e23e37211e3254c1c06c # v6.4.0 with: go-version-file: go.ver cache: false - name: Fetch test rules run: make -C cmd/pint/bench fetch - name: Benchmark PR branch run: | make benchmark | tee new.txt - name: Benchmark main branch run: | git fetch origin main git reset --hard FETCH_HEAD make benchmark | tee old.txt - name: Diff benchmarks run: | git reset --hard ${GITHUB_SHA} make benchmark-diff - name: Report if: ${{ github.event.pull_request.head.repo.full_name == 'cloudflare/pint' }} uses: thollander/actions-comment-pull-request@24bffb9b452ba05a4f3f77933840a6a841d1b32b # v3.0.1 with: file-path: benchstat.txt comment-tag: benchstat