Use poetry for package management #596
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
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions | |
name: Workflow | |
on: | |
pull_request: | |
branches: [ main, develop ] | |
push: | |
branches: [ main, develop ] | |
jobs: | |
ruff-format: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: chartboost/ruff-action@v1 | |
with: | |
args: format | |
ruff-check: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: chartboost/ruff-action@v1 | |
with: | |
args: check | |
test: | |
runs-on: ubuntu-latest | |
env: | |
PYTHONHASHSEED: 1 | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/setup-python@v5 | |
with: | |
python-version: 3.9 | |
- name: Update Pip & Poetry | |
run: | | |
pip install --upgrade pip wheel poetry | |
- name: Configure Poetry | |
run: | | |
python -m poetry config virtualenvs.in-project true | |
- name: Cache the virtualenv | |
uses: actions/cache@v4 | |
with: | |
path: ./.venv | |
key: ${{ runner.os }}-venv-${{ hashFiles('**/poetry.lock') }} | |
- name: Install Phantom | |
run: | | |
poetry install --with dev | |
- name: Run Phantom tests | |
run: | | |
python -m poetry run python -m pytest tests | |
build-docs-phantom: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/setup-python@v5 | |
with: | |
python-version: 3.9 | |
- name: Update Pip & Poetry | |
run: | | |
pip install --upgrade pip wheel poetry | |
- name: Configure Poetry | |
run: | | |
python -m poetry config virtualenvs.in-project true | |
- name: Cache the virtualenv | |
uses: actions/cache@v4 | |
with: | |
path: ./.venv | |
key: ${{ runner.os }}-venv-${{ hashFiles('**/poetry.lock') }} | |
- name: Install Phantom | |
run: | | |
poetry install --with dev | |
- name: Build Phantom docs | |
run: | | |
python -m poetry run python -m sphinx -M html "docs/" "docs/_build" |