Nightly benchmarks #1200
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| 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 |