031 workshop preparation wbaccinelli #125
Workflow file for this run
This file contains 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: Python package | |
on: | |
push: | |
paths-ignore: | |
- "**.md" | |
- "**.rst" | |
- "**.ipynb" | |
- "**.cff" | |
branches: | |
- main | |
pull_request: | |
types: [opened, synchronize, reopened, ready_for_review] | |
paths-ignore: | |
- "**.md" | |
- "**.rst" | |
- "**.ipynb" | |
- "**.cff" | |
branches: | |
- main | |
jobs: | |
build: | |
if: github.event.pull_request.draft == false | |
name: Build for (${{ matrix.python-version }}, ${{ matrix.os }}) | |
runs-on: ${{ matrix.os }} | |
strategy: | |
fail-fast: false | |
matrix: | |
os: ["ubuntu-latest"] | |
python-version: ["3.10"] | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v3 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Python info | |
shell: bash -e {0} | |
run: | | |
which python3 | |
python3 --version | |
- name: Upgrade pip and install dependencies | |
run: | | |
python3 -m pip install --upgrade pip poetry | |
poetry install --with test | |
- name: Run unit tests | |
run: poetry run pytest -v tests/unit_tests | |
- name: Run e2e tests | |
run: poetry run pytest -v --headless tests/e2e_tests | |
- name: Verify that we can build the package | |
run: poetry build | |
lint: | |
if: github.event.pull_request.draft == false | |
name: Linting build | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up Python 3.10 | |
uses: actions/setup-python@v3 | |
with: | |
python-version: "3.10" | |
- name: Python info | |
shell: bash -e {0} | |
run: | | |
which python3 | |
python3 --version | |
- name: Upgrade pip and install dependencies | |
run: | | |
python3 -m pip install --upgrade pip poetry | |
poetry install --with test | |
- name: Check linting and formatting using ruff | |
run: | | |
poetry run ruff check | |
poetry run ruff format --check |