name: Benchmarks

on:
  pull_request:
    branches:
      - main

jobs:
  runBenchmark:
    if: contains(github.event.pull_request.labels.*.name, 'run-benchmark')
    name: run benchmark
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v3
        with:
          fetch-depth: 0
      - uses: actions-rs/toolchain@v1.0.7
        with:
          toolchain: stable
          override: true
          profile: minimal
      - name: Cache cargo
        uses: actions/cache@v3
        with:
          path: |
            target
            ~/.cargo/git
            ~/.cargo/registry
          key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
      - uses: boa-dev/criterion-compare-action@v3.2.4
        with:
          token: ${{ secrets.GITHUB_TOKEN }}
          branchName: ${{ github.base_ref }}
          cwd: ./boa_engine
