Skip to content

Generate a test report and open issues if tests fail #78

Generate a test report and open issues if tests fail

Generate a test report and open issues if tests fail #78

Workflow file for this run

name: 'Tests'
concurrency:
group: ${{ github.workflow }}-${{ github.event.number }}-${{ github.event.ref }}
cancel-in-progress: true
on: # yamllint disable-line rule:truthy
push:
branches: ["main"]
pull_request:
branches: ["main"]
# Run at 04:00 UTC every Monday
schedule:
- cron: "0 4 * * 1"
permissions:
contents: read
jobs:
style:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: '3.12'
- run: |
pip install pip --upgrade
pip install -ve '.[tests]'
pip install mypy sphinx
- run:
mypy
pytest:
needs: [style]
runs-on: ${{ matrix.os }}
defaults:
run:
shell: bash -el {0}
strategy:
matrix:
os: ["ubuntu-latest"]
python: ["3.12"]
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python }}
- run: |
pip install pip --upgrade
pip install -ve '.[tests]'
pip install mypy sphinx
pip install pytest-reportlog
- name: Test
id: pytest
run:
pytest tests --report-log pytest-log.jsonl
- run: echo "NOW=$(date +'%Y-%m-%dT%H:%M:%S')" >> $GITHUB_ENV
- uses: xarray-contrib/issue-from-pytest-log@v1.3.0
if: |
failure()
&& steps.pytest.outcome == 'failure'
&& github.repository == 'Quansight-Labs/intersphinx_registry'
&& github.event_name == 'schedule'
with:
log-path: pytest-log.jsonl
issue-title: ⚠️ CI failure at ${{ env.NOW }} ⚠️
# issue-label: 'bug'