CI (pip) #1114
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
name: CI (pip) | |
on: | |
push: | |
branches: ["main"] | |
pull_request: | |
branches: ["main"] | |
schedule: | |
- cron: "0 23 * * 2" | |
workflow_dispatch: | |
jobs: | |
tests_core: | |
strategy: | |
matrix: | |
os: [ubuntu-22.04, macos-latest] | |
python-version: ["3.9", "3.10", "3.11"] | |
exclude: | |
- os: macos-latest | |
python-version: '3.9' | |
- os: macos-latest | |
python-version: '3.10' | |
name: "Core, Python ${{ matrix.python-version }}, ${{ matrix.os }}" | |
runs-on: ${{ matrix.os }} | |
timeout-minutes: 10 | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: 1 | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v5 | |
with: | |
python-version: ${{ matrix.python-version }} | |
cache: "pip" | |
- name: Install package (without extra) | |
run: python -m pip install -e . | |
- name: Install some testing dependencies (hard-coded) | |
run: python -m pip install pytest devtools jsonschema requests wget pooch | |
- name: Test core library with pytest | |
run: python -m pytest tests --ignore tests/tasks --ignore tests/dev | |
tests_tasks: | |
if: ${{ github.event_name == 'push' && github.ref == 'refs/heads/main' }} | |
strategy: | |
matrix: | |
os: [ubuntu-latest, macos-latest] | |
python-version: ["3.9", "3.10", "3.11"] | |
exclude: | |
- os: macos-latest | |
python-version: '3.9' | |
- os: macos-latest | |
python-version: '3.10' | |
name: "Tasks, Python ${{ matrix.python-version }}, ${{ matrix.os }}" | |
runs-on: ${{ matrix.os }} | |
timeout-minutes: 30 | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: 1 | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v5 | |
with: | |
python-version: ${{ matrix.python-version }} | |
cache: "pip" | |
- name: Install package (with fractal-tasks extra) | |
run: python -m pip install -e .[fractal-tasks] | |
- name: Install some testing dependencies (hard-coded) | |
run: python -m pip install pytest devtools jsonschema requests wget pooch | |
- name: Cache Pooch folder | |
id: cache-pooch-folder | |
uses: actions/cache@v4 | |
with: | |
path: ~/.cache/pooch | |
key: pooch-cache | |
- name: Test tasks with pytest | |
run: python -m pytest tests/dev tests/tasks -s --log-cli-level info |