name: benchmarks on: push: branches: ["main"] pull_request: branches: ["main"] concurrency: group: "benchmarks" cancel-in-progress: false env: CARGO_TERM_COLOR: always jobs: changes: runs-on: ubuntu-latest if: github.actor != 'dependabot[bot]' && contains(github.event.commits.*.message, '[skip ci]') == false outputs: lang: ${{ steps.filter.outputs.lang }} steps: - uses: actions/checkout@v5 - uses: dorny/paths-filter@v3 id: filter with: filters: | lang: - 'crates/mq-lang/**' benchmarks: needs: changes runs-on: ubuntu-latest if: ${{ needs.changes.outputs.lang == 'true' }} steps: - uses: actions/checkout@v5 - uses: actions-rust-lang/setup-rust-toolchain@v1 - name: Install codspeed run: cargo install cargo-codspeed --locked - uses: extractions/setup-just@v3 - name: Run benchmarks uses: CodSpeedHQ/action@v4 with: run: just bench token: ${{ secrets.CODSPEED_TOKEN }}