1111 runs-on : ubuntu-24.04
1212 steps :
1313 - uses : actions/checkout@v4
14- - name : Set up Python
15- uses : actions/setup-python@v5
16- with :
17- python-version : " 3.12"
1814 - uses : ./.github/actions/pre-commit
1915 commitlint :
2016 name : commitlint
@@ -30,51 +26,38 @@ jobs:
3026 python-version : ["3.10", "3.11", "3.12", "3.13"]
3127 steps :
3228 - uses : actions/checkout@v4
33- - name : Set up Python ${{ matrix.python-version }}
34- uses : actions/setup-python@v5
29+ - uses : ./.github/actions/install-deps
3530 with :
3631 python-version : ${{ matrix.python-version }}
37- - name : Install poetry
38- uses : abatilo/actions-poetry@v3
39- - name : Setup a local virtual environment
40- run : |
41- poetry config virtualenvs.create true --local
42- poetry config virtualenvs.in-project true --local
43- - uses : actions/cache@v4
44- name : Define a cache for the virtual environment based on the dependencies lock file
45- with :
46- path : ./.venv
47- key : venv-${{ hashFiles('poetry.lock') }}
48- - name : Install the project dependencies
49- run : poetry install
5032 - name : Run tests
5133 run : poetry run pytest -v
34+ build :
35+ name : build distribution artifacts
36+ runs-on : ubuntu-24.04
37+ steps :
38+ - uses : actions/checkout@v4
39+ with :
40+ fetch-depth : 0 # required for release-bumper action
41+ - uses : ./.github/actions/release-bumper
42+ - uses : ./.github/actions/install-deps
43+ - name : Build the Python package
44+ run : poetry build
45+ - name : Upload Python build artifacts
46+ uses : actions/upload-artifact@v4
47+ with :
48+ name : python-dist
49+ path : dist/*
5250 mkdocs :
5351 name : build documentation
5452 runs-on : ubuntu-24.04
5553 steps :
5654 - uses : actions/checkout@v4
57- - name : Set up Python
58- uses : actions/setup-python@v5
59- with :
60- python-version : " 3.13"
61- - name : Install poetry
62- uses : abatilo/actions-poetry@v3
63- - name : Setup a local virtual environment
64- run : |
65- poetry config virtualenvs.create true --local
66- poetry config virtualenvs.in-project true --local
67- - uses : actions/cache@v4
68- name : Define a cache for the virtual environment based on the dependencies lock file
6955 with :
70- path : ./.venv
71- key : venv-docs-${{ hashFiles('poetry.lock') }}
72- - name : Install the project dependencies
73- run : poetry install
56+ fetch-depth : 0 # required for release-bumper action
57+ - uses : ./.github/actions/install-deps
58+ - uses : ./.github/actions/release-bumper
7459 - name : Build the documentation
75- run : |
76- poetry run mkdocs build
77- touch site/.nojekyll
60+ run : poetry run mkdocs build
7861 - name : Upload GitHub pages artefact
7962 uses : actions/upload-pages-artifact@v3
8063 with :
0 commit comments