Skip to content

tests

tests #70

Workflow file for this run

name: tests
on:
pull_request:
branches:
- main
schedule:
# Run cron job every week
- cron: '0 0 * * 3'
workflow_dispatch:
jobs:
test-build:
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest]
python-version: [3.9]
steps:
- name: Check out repository
uses: actions/checkout@v3
- name: Set up Python ${{ matrix.python-version }}
id: setup-python
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
- name: Load cached Poetry installation
id: cached-poetry
uses: actions/cache@v3
with:
path: ~/.local # the path depends on the OS
key: poetry-1 # increment to reset cache
- name: Install Poetry
if: steps.cached-poetry.outputs.cache-hit != 'true'
uses: snok/install-poetry@v1
- name: Load cached venv
id: cached-poetry-dependencies
uses: actions/cache@v3
with:
path: .venv
key: venv-${{ hashFiles('**/poetry.lock') }}
- name: Install dependencies
run: |
poetry config virtualenvs.create true
poetry config virtualenvs.in-project true
poetry install --no-interaction
- name: Check notebook formatting
run: |
poetry run blacken-docs book/notebooks/*.md
# Also tests the notebooks thanks to the assertions contained within them
- name: Build book
run: |
poetry run jupyter-book build book
- name: GitHub Pages action
uses: peaceiris/[email protected]
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: book/_build/html
publish_branch: gh-pages-test