Logger Widget Panel #5159
Workflow file for this run
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
# For more information about TARDIS pipelines, please refer to: | |
# | |
# https://tardis-sn.github.io/tardis/development/continuous_integration.html | |
name: tests | |
on: | |
push: | |
branches: | |
- master | |
pull_request: | |
branches: | |
- master | |
types: | |
- opened | |
- reopened | |
- synchronize | |
workflow_call: | |
inputs: | |
pip_git: | |
description: "Whether or not to install tardis using git" | |
required: false | |
type: boolean | |
default: false | |
env: | |
CACHE_NUMBER: 0 # increase to reset cache manually | |
PYTEST_FLAGS: --tardis-regression-data=${{ github.workspace }}/tardis-regression-data --cov=tardis --cov-report=xml --cov-report=html --cov-append | |
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} | |
defaults: | |
run: | |
shell: bash -l {0} | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.head_ref || github.ref }} | |
cancel-in-progress: true | |
jobs: | |
tests: | |
name: ${{ matrix.continuum }} continuum ${{ matrix.os }} ${{ inputs.pip_git && 'pip tests enabled' || '' }} | |
if: github.repository_owner == 'tardis-sn' | |
runs-on: ${{ matrix.os }} | |
strategy: | |
fail-fast: false | |
matrix: | |
label: [osx-arm64, linux-64] | |
continuum: ['not', ''] | |
include: | |
- label: osx-arm64 | |
os: macos-latest | |
prefix: /Users/runner/miniconda3/envs/tardis | |
- label: linux-64 | |
os: ubuntu-latest | |
prefix: /usr/share/miniconda3/envs/tardis | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Setup environment | |
uses: ./.github/actions/setup_env | |
with: | |
os-label: ${{ matrix.label }} | |
- name: Setup LFS | |
uses: ./.github/actions/setup_lfs | |
- name: Install package editable | |
if: ${{ !inputs.pip_git }} | |
run: | | |
micromamba activate ./micromamba_tardis | |
pip install -e . --user | |
- name: Install package git | |
if: ${{ inputs.pip_git }} | |
run: | | |
micromamba activate ./micromamba_tardis | |
pip install git+https://github.com/tardis-sn/tardis.git@master | |
- name: Install qgridnext | |
if: ${{ !inputs.pip_git }} | |
run: | | |
micromamba activate ./micromamba_tardis | |
pip install qgridnext | |
- name: Run tests | |
run: | | |
micromamba activate ./micromamba_tardis | |
pytest tardis ${{ env.PYTEST_FLAGS }} -m "${{ matrix.continuum }} continuum" | |
- name: Regression Data Generation tests | |
run: | | |
micromamba activate ./micromamba_tardis | |
pytest tardis ${{ env.PYTEST_FLAGS }} --generate-reference -m "${{ matrix.continuum }} continuum" | |
if: contains(github.event.pull_request.labels.*.name, 'run-generation-tests') || github.ref == 'refs/heads/master' | |
- run: mv .coverage .coverage.${{ strategy.job-index }} | |
- uses: actions/upload-artifact@v4 | |
with: | |
name: coverage-${{ matrix.continuum }}-continuum-${{ matrix.os }} | |
include-hidden-files: true | |
path: | | |
.coverage* | |
!.coveragerc | |
combine_coverage_reports: | |
needs: [tests] | |
if: github.repository_owner == 'tardis-sn' | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Setup environment | |
uses: ./.github/actions/setup_env | |
with: | |
os-label: linux-64 | |
# will download all artifacts(in this case all are coverage reports) | |
- uses: actions/download-artifact@v4 | |
with: | |
path: . | |
merge-multiple: true | |
- name: Combine coverage reports | |
run: | | |
coverage combine | |
coverage xml | |
coverage html | |
- name: Print report | |
run: coverage report | |
- uses: codecov/codecov-action@v4 | |
if: always() | |
with: | |
fail_ci_if_error: true | |
token: ${{ secrets.CODECOV_TOKEN }} | |
verbose: true |