This repository has been archived by the owner on Dec 18, 2023. It is now read-only.
#73 Restart with Django 4 #129
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
# Continuous integration build for pyGRAZ website. | |
name: Build | |
on: [push, pull_request] | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
python-version: ["3.10"] | |
env: | |
MAIN_PYTHON_VERSION: "3.10" # same as Ubuntu 22 LTS | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v4 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Install Ubuntu package dependencies | |
run: sudo apt-get install gettext graphviz graphviz-dev | |
- name: Install Poetry | |
uses: snok/install-poetry@v1 | |
with: | |
virtualenvs-create: true | |
virtualenvs-in-project: true | |
- name: Load cached venv | |
id: cached-poetry-dependencies | |
uses: actions/cache@v3 | |
with: | |
path: .venv | |
key: venv-${{ runner.os }}-${{ hashFiles('**/poetry.lock') }} | |
- name: Install dependencies | |
if: steps.cached-poetry-dependencies.outputs.cache-hit != 'true' | |
run: poetry install --no-interaction | |
- name: Run the test suite | |
run: pytest | |
check-style: | |
runs-on: ubuntu-latest | |
# Disable pre-commit check on master to prevent "no-commit-to-branch" from failing. | |
if: github.ref != 'refs/heads/master' && github.ref != 'refs/heads/develop' | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Install pre-commit | |
run: | | |
sudo apt-get install python3 | |
python -m pip install --upgrade pip | |
pip install pre-commit | |
- name: Load cached pre-commit | |
id: cached-pre-commit | |
uses: actions/cache@v3 | |
with: | |
path: ~/.cache/pre-commit | |
key: pre-commit-${{ runner.os }}-${{ hashFiles('.pre-commit-config.yaml') }} | |
- name: Install pre-commit hooks | |
if: steps.cached-pre-commit.outputs.cache-hit != 'true' | |
run: pre-commit install --install-hooks | |
- name: Check coding style | |
run: pre-commit run --all-files |