Skip to content

Commit 650005c

Browse files
committed
Add benchmark test run to the CI
1 parent 7e66ccb commit 650005c

2 files changed

Lines changed: 29 additions & 0 deletions

File tree

.github/workflows/python-ci.yml

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -178,6 +178,32 @@ jobs:
178178
path: .coverage*
179179
include-hidden-files: true
180180

181+
benchmark-test:
182+
runs-on: ubuntu-latest
183+
steps:
184+
- uses: actions/checkout@v6
185+
- uses: actions/setup-python@v6
186+
with:
187+
python-version: '3.12'
188+
- name: Install UV
189+
uses: astral-sh/setup-uv@v7
190+
with:
191+
enable-cache: true
192+
- name: Install system dependencies
193+
run: sudo apt-get update && sudo apt-get install -y libkrb5-dev # for kerberos
194+
- name: Install
195+
run: make install
196+
- name: Run benchmarks
197+
run: make benchmark
198+
- name: Upload benchmark results
199+
uses: actions/upload-artifact@v4
200+
with:
201+
name: benchmark-results
202+
path: |
203+
.benchmarks/
204+
benchmark-*.json
205+
if-no-files-found: ignore
206+
181207
integration-coverage-report:
182208
runs-on: ubuntu-latest
183209
needs: [integration-test, integration-test-s3, integration-test-adls, integration-test-gcs]

Makefile

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -133,6 +133,9 @@ test-gcs: ## Run tests marked with @pytest.mark.gcs
133133
sh ./dev/run-gcs-server.sh
134134
$(TEST_RUNNER) pytest tests/ -m gcs $(PYTEST_ARGS)
135135

136+
test-benchmark: ## Run benchmarks marked with @pytest.mark.benchmark
137+
$(TEST_RUNNER) pytest tests/ -m benchmark $(PYTEST_ARGS)
138+
136139
test-coverage: ## Run all tests with coverage and report
137140
$(MAKE) COVERAGE=1 test test-integration test-s3 test-adls test-gcs
138141
$(MAKE) coverage-report

0 commit comments

Comments
 (0)