Merge branch 'master' of github.com:poolifier/poolifier
[poolifier.git] / .github / workflows / benchmark.yml
CommitLineData
93874800
JB
1name: Benchmark
2
3on:
2fe46fd0 4 workflow_dispatch:
f1c674cd
JB
5 push:
6 branches:
7 - master
8
9permissions:
10 contents: write
11 deployments: write
93874800
JB
12
13jobs:
14 internal-benchmark:
4ce23281 15 if: github.repository == 'poolifier/poolifier'
f1c674cd 16 name: Internal benchmark
9c15b7f2 17 runs-on: [self-hosted, internal-benchmark]
93874800
JB
18 steps:
19 - name: Checkout
20 uses: actions/checkout@v4
93874800
JB
21 - name: Setup pnpm
22 uses: pnpm/action-setup@v2
23 with:
24 version: 8
f1c674cd 25 - name: Setup Node.js
93874800
JB
26 uses: actions/setup-node@v3
27 with:
f1c674cd 28 node-version: '18.x'
93874800 29 cache: 'pnpm'
f1c674cd 30 - name: Install dependencies
93874800 31 run: pnpm install --ignore-scripts
f1c674cd
JB
32 - name: Run production benchmark
33 run: pnpm benchmark:prod | tee ./benchmarks/internal/output.txt
34 - name: Store production benchmark result
35 uses: benchmark-action/github-action-benchmark@v1
36 with:
37 name: Internal benchmark
38 tool: 'benchmarkjs'
39 output-file-path: ./benchmarks/internal/output.txt
2a87030e 40 github-token: ${{ secrets.BENCHMARK_RESULTS_TOKEN }}
f1c674cd
JB
41 auto-push: true
42 alert-threshold: '200%'
43 comment-on-alert: true
44 fail-on-alert: true
45 gh-repository: 'github.com/poolifier/benchmark-results'