Skip to content

Continuous Integration #36

Continuous Integration

Continuous Integration #36

Workflow file for this run

---
name: Continuous Integration
on:
push:
branches:
- '*'
pull_request:
branches:
- '*'
schedule:
- cron: '59 23 * * *'
workflow_dispatch:
inputs:
version:
description: Manual Unittest Run
default: test
required: false
jobs:
testing:
name: ${{ matrix.os }}, ${{ matrix.environment-file }}
runs-on: ${{ matrix.os }}
timeout-minutes: 30
strategy:
matrix:
os: [ubuntu-latest]
environment-file:
- ci/312-oldest.yaml
- ci/312-latest.yaml
- ci/313-latest.yaml
- ci/314-latest.yaml
- ci/314-dev.yaml
include:
- environment-file: ci/314-latest.yaml
os: macos-15-intel # Intel
- environment-file: ci/314-latest.yaml
os: macos-latest # Apple Silicon
- environment-file: ci/314-latest.yaml
os: windows-latest
fail-fast: false
defaults:
run:
shell: bash -l {0}
steps:
- name: checkout repo
uses: actions/checkout@v6
with:
fetch-depth: 0
- name: setup micromamba
uses: mamba-org/setup-micromamba@v2
with:
environment-file: ${{ matrix.environment-file }}
micromamba-version: 'latest'
- name: fetch libpysal example data
run: |
python -c 'from libpysal.examples import load_example as ex; ex("nyc_bikes")'
- name: run tests
run: |
pytest spint \
-v \
-r a \
-n logical \
--color yes \
--cov spint \
--cov-report xml \
--cov-report term-missing \
--cov-append
- name: run doctests
if: ${{ !endsWith(matrix.environment-file, 'oldest.yaml') }}
run: |
pytest spint \
--doctest-only \
-v \
-r a \
-n logical \
--color yes
#- name: codecov
# uses: codecov/codecov-action@v5
# with:
# token: ${{ secrets.CODECOV_TOKEN }}
# file: ./coverage.xml
# name: spint-codecov