Skip to content

Nightly benchmarks #1200

Nightly benchmarks

Nightly benchmarks #1200

name: Nightly benchmarks
on:
schedule:
- cron: "0 4 1/1 * *" # every night at 4
# big behchmark on manual run
workflow_dispatch:
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
with:
ref: dev # run on dev branch
- name: Set up Python
uses: actions/setup-python@v3
with:
python-version: "3.10"
- name: install dependencies
run: |
python -m pip install --upgrade pip
- name: Run benchmarks
uses: snakemake/snakemake-github-action@v1
with:
directory: '.'
snakefile: 'Snakefile'
args: '--cores 1 --use-conda --conda-cleanup-pkgs cache report_big.md validation_report_big.md'
stagein: | # 'cd benchmarks' # additional preliminary commands to run (can be multiline)
python -m pip install --upgrade pip setuptools wheel
pip install git+https://github.com/bionumpy/npstructures.git/@dev
pip install -r requirements_dev.txt
pip install plotly
pip install .
cd benchmarks
- name: Save benchmarks results
run: |
git config --global user.email "[email protected]"
git config --global user.name "github action"
git checkout --orphan benchmarks-big
# we only want the files we created
git rm -r --cached .
git add -f benchmarks/*report*.md
git add -f benchmarks/results/reports/*/*.png
git add -f benchmarks/results/reports/*/*.data
git commit -am 'Benchmark results'
- name: Push results to benchmark branch
uses: ad-m/github-push-action@master
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
tags: true
force: true
branch: benchmarks-big