Skip to content

Workflow file for this run

name: CI
on:
push:
branches: [main]
pull_request:
branches: [main]
schedule:
- cron: "0 6 * * 1" # Every Monday at 06:00 UTC
jobs:
build:
name: Python ${{ matrix.python-version }} ${{ matrix.os }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
python-version: ["3.8", "3.9", "3.10", "3.11"]
os: [ubuntu-latest]
defaults:
run:
shell: bash -elo pipefail {0}
steps:
- name: Checkout repo
uses: actions/checkout@v3
with:
fetch-depth: 2
- name: Create environment with Micromamba
uses: mamba-org/setup-micromamba@v1
with:
cache-downloads: true
cache-environment: true
create-args: python=${{ matrix.python-version }}
environment-file: tests/environments/env-ci.yml
post-cleanup: none
- name: Install OSMnx
run: |
pip install -e .
conda list
conda info --all
- name: Lint code
run: |
SKIP=no-commit-to-branch pre-commit run --all-files
hatch build --clean
twine check --strict ./dist/*
- name: Test docs
run: |
make -C ./docs html
python -m sphinx -b linkcheck docs/ _build/linkcheck
- name: Test code
run: pytest --cov=./osmnx --cov-report=xml --cov-report=term-missing --verbose
- name: Upload coverage report
uses: codecov/codecov-action@v3