Update pre commits and actions #26219
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
name: Python coverage | |
on: | |
push: | |
branches: | |
- main | |
- 'version-**' | |
tags: "*" | |
pull_request: | |
env: | |
UV_SYSTEM_PYTHON: 1 | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: ${{ github.ref != 'refs/heads/main' }} | |
jobs: | |
python-test-coverage: | |
name: Python Coverage | |
timeout-minutes: 40 | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
test-type: ['integration-tests', 'unit-tests', 'gui-tests'] | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 | |
submodules: true | |
lfs: true | |
- name: Set up Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: '3.12' | |
- name: Install uv | |
run: pip install uv | |
- name: Install with dependencies | |
run: | | |
uv pip install ".[dev]" | |
- name: Test GUI | |
if: matrix.test-type == 'gui-tests' | |
run: | | |
pytest tests/ --cov=ert -m "requires_window_manager" --cov-report=xml:cov.xml -v | |
- name: Test Integration | |
if: matrix.test-type == 'integration-tests' | |
run: | | |
pytest tests/ -n logical --cov=ert -m "integration_test" --cov-report=xml:cov.xml | |
- name: Test units | |
if: matrix.test-type == 'unit-tests' | |
run: | | |
pytest tests/unit_tests -n logical --cov=ert -m "not integration_test and not requires_window_manager" --cov-report=xml:cov.xml --dist loadgroup | |
- name: Upload python coverage to Codecov | |
uses: codecov/codecov-action@v4 | |
id: codecov1 | |
continue-on-error: true | |
with: | |
token: ${{ secrets.CODECOV_TOKEN }} | |
fail_ci_if_error: true | |
files: cov.xml | |
flags: ${{ matrix.test-type }} | |
- name: codecov retry sleep | |
if: steps.codecov1.outcome == 'failure' | |
run: | | |
sleep 30 | |
- name: Codecov retry | |
uses: codecov/codecov-action@v4 | |
if: steps.codecov1.outcome == 'failure' | |
with: | |
token: ${{ secrets.CODECOV_TOKEN }} | |
files: cov.xml | |
fail_ci_if_error: ${{ github.ref == 'refs/heads/main' }} |