Skip to content

CI

CI #1062

Workflow file for this run

name: CI
on:
workflow_dispatch:
schedule:
# Run every Monday at 6am UTC
- cron: '0 6 * * 1'
push:
branches:
- main
- '*.x'
tags:
- "*"
pull_request:
permissions:
contents: read
jobs:
setup:
runs-on: ubuntu-latest
outputs:
requirements-hash: ${{ steps.requirements-hash.outputs.hash }}
steps:
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- id: requirements-hash
run: echo "::set-output name=hash::${{ hashFiles('**/pyproject.toml', '**/setup.*', 'tox.ini') }}"
core:
needs: [setup]
uses: OpenAstronomy/github-actions-workflows/.github/workflows/tox.yml@d68193b68216da64eafaa618f53c59f5d271c56e # v1.14.0
with:
cache-path: ~/.cache/pip
cache-key: pip-${{ needs.setup.outputs.requirements-hash }}
cache-restore-keys: |
pip-
# Any env name which does not start with `pyXY` will use this Python version.
default_python: '3.12'
envs: |
- linux: py310-test-parallel-cov
- linux: py311-test-parallel-cov
- linux: py312-test-parallel-cov
coverage: codecov
asdf-schemas:
needs: [setup]
uses: OpenAstronomy/github-actions-workflows/.github/workflows/tox.yml@d68193b68216da64eafaa618f53c59f5d271c56e # v1.14.0
with:
cache-path: ~/.cache/pip
cache-key: pip-${{ needs.setup.outputs.requirements-hash }}
cache-restore-keys: |
pip-
default_python: '3.12'
envs: |
- linux: asdf
- linux: asdf-standard
- linux: asdf-transform-schemas
- linux: asdf-coordinates-schemas
test:
needs: [core, asdf-schemas]
uses: OpenAstronomy/github-actions-workflows/.github/workflows/tox.yml@d68193b68216da64eafaa618f53c59f5d271c56e # v1.14.0
with:
cache-path: ~/.cache/pip
cache-key: pip-${{ needs.setup.outputs.requirements-hash }}
cache-restore-keys: |
pip-
# Any env name which does not start with `pyXY` will use this Python version.
default_python: '3.12'
envs: |
- macos: py311-test-parallel
- windows: py311-test-parallel
dev:
needs: [core, asdf-schemas]
uses: OpenAstronomy/github-actions-workflows/.github/workflows/tox.yml@d68193b68216da64eafaa618f53c59f5d271c56e # v1.14.0
with:
cache-path: ~/.cache/pip
cache-key: pip-${{ needs.setup.outputs.requirements-hash }}
cache-restore-keys: |
pip-
# Any env name which does not start with `pyXY` will use this Python version.
default_python: '3.12'
envs: |
- linux: py312-test-predeps-parallel
- linux: py313-test-devdeps-parallel
- linux: py312-test-devdeps-numpydev-parallel
oldest:
needs: [core, asdf-schemas]
uses: OpenAstronomy/github-actions-workflows/.github/workflows/tox.yml@d68193b68216da64eafaa618f53c59f5d271c56e # v1.14.0
with:
cache-path: ~/.cache/pip
cache-key: pip-${{ needs.setup.outputs.requirements-hash }}
cache-restore-keys: |
pip-
# Any env name which does not start with `pyXY` will use this Python version.
default_python: '3.10'
envs: |
- linux: py310-test-oldestdeps-parallel-cov
coverage: codecov
wheel_building:
permissions:
contents: none
uses: OpenAstronomy/github-actions-workflows/.github/workflows/publish_pure_python.yml@d68193b68216da64eafaa618f53c59f5d271c56e # v1.14.0
if: (github.event_name == 'push' || github.event_name == 'pull_request')
with:
upload_to_pypi: false
upload_to_anaconda: false
test_extras: test
test_command: pytest --pyargs asdf_astropy