Skip to content

CI updates

CI updates #5

Workflow file for this run

name: ci
on: [push]
env:
PYTHON_VERSION: '3.9'
jobs:
pre-commit:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: ${{ env.PYTHON_VERSION }}
- name: Run pre-commit
uses: pre-commit/[email protected]
mypy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up PDM
uses: pdm-project/setup-pdm@v4
with:
python-version: ${{ env.PYTHON_VERSION }}
- name: Install dependencies
run: |
sudo apt-get install -y librrd-dev
pdm sync -G mypy
- name: Run mypy
run: |
pdm run mypy meshinfo tests
tests:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
python-version:
- "3.9"
- "3.10"
- "3.11"
services:
postgres:
image: postgres
env:
POSTGRES_PASSWORD: meshmap
options: >-
--health-cmd pg_isready
--health-interval 10s
--health-timeout 5s
--health-retries 5
ports:
- 5432:5432
steps:
- uses: actions/checkout@v4
- name: Set up PDM
uses: pdm-project/setup-pdm@v4
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
sudo apt-get install -y librrd-dev
pdm sync -G testing
- name: Run pytest
run: |
pdm run pytest --cov=meshinfo
env:
MESHMAP_COLLECTOR_DATA_DIR: "."
POSTGRES_HOST: localhost
POSTGRES_PASSWORD: meshmap
docs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up PDM
uses: pdm-project/setup-pdm@v4
with:
python-version: ${{ env.PYTHON_VERSION }}
- name: Install dependencies
run: |
sudo apt-get install -y librrd-dev
pdm sync -G docs
- name: Run Sphinx
run: pdm run sphinx-build -W --keep-going -b html docs docs/_build/html