Skip to content

Commit b1c9466

Browse files
committed
add codspeed workflow
1 parent d91a522 commit b1c9466

1 file changed

Lines changed: 43 additions & 0 deletions

File tree

.github/workflows/benchmark.yml

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
name: Benchmarks
2+
3+
on:
4+
workflow_dispatch:
5+
schedule:
6+
- cron: '0 6 * * 1' # Every Monday at 6am UTC
7+
push:
8+
branches:
9+
- main
10+
- stable
11+
- '*.x'
12+
tags:
13+
- '*'
14+
pull_request:
15+
types:
16+
- synchronize
17+
- labeled
18+
19+
20+
# Only cancel in-progress jobs or runs for the current workflow
21+
# This cancels the already triggered workflows for a specific PR without canceling
22+
# other instances of this workflow (other PRs, scheduled triggers, etc) when something
23+
# within that PR re-triggers this CI
24+
concurrency:
25+
group: ${{ github.workflow }}-${{ github.ref }}
26+
cancel-in-progress: true
27+
28+
jobs:
29+
codspeed:
30+
name: Run benchmarks
31+
runs-on: ubuntu-latest
32+
steps:
33+
- uses: actions/checkout@v4
34+
- name: Setup Python
35+
uses: actions/setup-python@v5
36+
with:
37+
python-version: "3.13"
38+
- name: Install dependencies
39+
run: pip install pytest-codspeed .[benchmark]
40+
- uses: CodSpeedHQ/action@v3
41+
with:
42+
run: pytest tests/ --codspeed --benchmark-enable
43+
token: ${{ secrets.CODSPEED_TOKEN }}

0 commit comments

Comments
 (0)