Skip to content

Merge pull request #479 from flexion/story/22/task/add-benchmark #1

Merge pull request #479 from flexion/story/22/task/add-benchmark

Merge pull request #479 from flexion/story/22/task/add-benchmark #1

Workflow file for this run

name: Benchmark
on:
push:
branches:
- main
permissions:
contents: read
jobs:
benchmark:
name: Check performance regeression.
runs-on: ubuntu-latest
permissions:
# deployments permission to deploy GitHub pages website
deployments: write
# contents permission to update benchmark contents in gh-pages branch
contents: write
steps:
- name: Harden Runner
uses: step-security/harden-runner@f086349bfa2bd1361f7909c78558e816508cdc10 # v2.8.0
with:
egress-policy: audit
disable-telemetry: false
allowed-endpoints: >
files.pythonhosted.org:443
github.com:443
pypi.org:443
api.github.com:443
- name: Checkout main branch
uses: actions/checkout@a5ac7e51b41094c92402da3b24376905380afc29 # v4
with:
clean: true
- name: Setup Python
uses: actions/setup-python@82c7e631bb3cdc910f68e0081d67478d79c6982d # v5
with:
python-version: "3.11"
- name: Install Poetry
run: |
pipx install --pip-args=--constraint=.github/workflows/constraints.txt poetry
poetry --version
- name: Install Nox
run: |
pipx install --pip-args=--constraint=.github/workflows/constraints.txt nox
pipx inject --pip-args=--constraint=.github/workflows/constraints.txt nox nox-poetry poetry-plugin-export
nox --version
- name: Run benchmark with nox
run: nox -s benchmark
- name: Store benchmark result in github.io
uses: benchmark-action/github-action-benchmark@4de1bed97a47495fc4c5404952da0499e31f5c29 # tag=v1
with:
name: Pytest-Benchmark Benchmark
tool: "pytest"
output-file-path: benchmark-output.json
github-token: ${{ secrets.PERSONAL_GITHUB_TOKEN }}
auto-push: true
alert-threshold: "130%"
comment-on-alert: true
fail-on-alert: true