/
niceSOFT
/
python3-pytest
Обзор
Документация
Войти
/
niceSOFT
/
python3-pytest
Код
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
.github/workflows/test.yml
338 строк
9 KB
dependabot[bot]
build(deps): Bump hynek/build-and-inspect-python-package (#14848)
10 авг 2026, 08:59
Не верифицирован
10 авг 2026, 08:59
ecade5a
Код
Авторство
О чём код?
name: test on: push: branches: - main - "[0-9]+.[0-9]+.x" - "test-me-*" tags: - "[0-9]+.[0-9]+.[0-9]+" - "[0-9]+.[0-9]+.[0-9]+rc[0-9]+" pull_request: branches: - main - "[0-9]+.[0-9]+.x" types: - opened # default - synchronize # default - reopened # default - ready_for_review # used in PRs created from the release workflow workflow_dispatch: # allows manual triggering of the workflow env: PYTEST_ADDOPTS: "--color=yes" # Cancel running jobs for the same workflow and branch. concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true # Set permissions at the job level. permissions: {} jobs: package: runs-on: ubuntu-latest steps: - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 with: fetch-depth: 0 persist-credentials: false - name: Build and Check Package uses: hynek/build-and-inspect-python-package@2abe76da66d0a6a4a227101f9348ee855797cfa5 build: needs: [package] runs-on: ${{ matrix.os }} timeout-minutes: 45 permissions: contents: read strategy: fail-fast: false matrix: name: [ "windows-py310-unittest-asynctest", "windows-py310-unittest-twisted24", "windows-py310-unittest-twisted25", "windows-py310-pluggy", "windows-py310-xdist", "windows-py311", "windows-py312", "windows-py313", "windows-py314", "windows-py315", "ubuntu-py310-unittest-asynctest", "ubuntu-py310-unittest-twisted24", "ubuntu-py310-unittest-twisted25", "ubuntu-py310-lsof-numpy-pexpect", "ubuntu-py310-pluggy", "ubuntu-py310-freeze", "ubuntu-py310-xdist", "ubuntu-py311", "ubuntu-py312", "ubuntu-py313-pexpect", "ubuntu-py314", "ubuntu-py315", "ubuntu-pypy3-xdist", "macos-py310", "macos-py312", "macos-py313", "macos-py314", "macos-py315", "doctesting", "plugins", ] include: # Use separate jobs for different unittest flavors (twisted, asynctest) to ensure proper coverage. - name: "windows-py310-unittest-asynctest" python: "3.10" os: windows-latest tox_env: "py310-asynctest" use_coverage: true - name: "windows-py310-unittest-twisted24" python: "3.10" os: windows-latest tox_env: "py310-twisted24" use_coverage: true - name: "windows-py310-unittest-twisted25" python: "3.10" os: windows-latest tox_env: "py310-twisted25" use_coverage: true - name: "windows-py310-pluggy" python: "3.10" os: windows-latest tox_env: "py310-pluggymain-pylib-xdist" xfail: true - name: "windows-py310-xdist" python: "3.10" os: windows-latest tox_env: "py310-xdist" - name: "windows-py311" python: "3.11" os: windows-latest tox_env: "py311" - name: "windows-py312" python: "3.12" os: windows-latest tox_env: "py312" - name: "windows-py313" python: "3.13" os: windows-latest tox_env: "py313" xfail: true - name: "windows-py314" python: "3.14" os: windows-latest tox_env: "py314" use_coverage: true - name: "windows-py315" python: "3.15" os: windows-latest tox_env: "py315" # Use separate jobs for different unittest flavors (twisted, asynctest) to ensure proper coverage. - name: "ubuntu-py310-unittest-asynctest" python: "3.10" os: ubuntu-latest tox_env: "py310-asynctest" use_coverage: true - name: "ubuntu-py310-unittest-twisted24" python: "3.10" os: ubuntu-latest tox_env: "py310-twisted24" use_coverage: true - name: "ubuntu-py310-unittest-twisted25" python: "3.10" os: ubuntu-latest tox_env: "py310-twisted25" use_coverage: true - name: "ubuntu-py310-lsof-numpy-pexpect" python: "3.10" os: ubuntu-latest tox_env: "py310-lsof-numpy-pexpect" use_coverage: true - name: "ubuntu-py310-pluggy" python: "3.10" os: ubuntu-latest tox_env: "py310-pluggymain-pylib-xdist" xfail: true - name: "ubuntu-py310-freeze" python: "3.10" os: ubuntu-latest tox_env: "py310-freeze" xfail: true - name: "ubuntu-py310-xdist" python: "3.10" os: ubuntu-latest tox_env: "py310-xdist" - name: "ubuntu-py311" python: "3.11" os: ubuntu-latest tox_env: "py311" use_coverage: true - name: "ubuntu-py312" python: "3.12" os: ubuntu-latest tox_env: "py312" use_coverage: true - name: "ubuntu-py313-pexpect" python: "3.13" os: ubuntu-latest tox_env: "py313-pexpect" use_coverage: true xfail: true - name: "ubuntu-py314" python: "3.14" os: ubuntu-latest tox_env: "py314" use_coverage: true - name: "ubuntu-py315" python: "3.15" os: ubuntu-latest tox_env: "py315" use_coverage: true - name: "ubuntu-pypy3-xdist" python: "pypy-3.11" os: ubuntu-latest tox_env: "pypy3-xdist" - name: "macos-py310" python: "3.10" os: macos-latest tox_env: "py310-xdist" xfail: true - name: "macos-py312" python: "3.12" os: macos-latest tox_env: "py312-xdist" - name: "macos-py313" python: "3.13" os: macos-latest tox_env: "py313-xdist" xfail: true - name: "macos-py314" python: "3.14" os: macos-latest tox_env: "py314-xdist" - name: "macos-py315" python: "3.15" os: macos-latest tox_env: "py315-xdist" - name: "plugins" python: "3.12" os: ubuntu-latest tox_env: "plugins" - name: "doctesting" python: "3.10" os: ubuntu-latest tox_env: "doctesting" use_coverage: true continue-on-error: ${{ matrix.xfail && true || false }} steps: - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 with: fetch-depth: 0 persist-credentials: false - name: Download Package uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 with: name: Packages path: dist - name: Set up Python ${{ matrix.python }} uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0 with: python-version: ${{ matrix.python }} check-latest: true allow-prereleases: true - name: Set up tox uses: ./.github/actions/setup-tox with: python-version: ${{ matrix.python }} - name: Test without coverage if: "! matrix.use_coverage" shell: bash env: _PYTEST_TOX_POSARGS_JUNIT: --junitxml=junit.xml run: tox run -e ${{ matrix.tox_env }} --installpkg `find dist/*.tar.gz` - name: Test with coverage if: "matrix.use_coverage" shell: bash env: _PYTEST_TOX_POSARGS_JUNIT: --junitxml=junit.xml run: tox run -e ${{ matrix.tox_env }}-coverage --installpkg `find dist/*.tar.gz` - name: Upload coverage to Codecov if: "matrix.use_coverage" uses: codecov/codecov-action@fb8b3582c8e4def4969c97caa2f19720cb33a72f with: fail_ci_if_error: false files: ./coverage.xml verbose: true - name: Upload JUnit report to Codecov uses: codecov/codecov-action@fb8b3582c8e4def4969c97caa2f19720cb33a72f with: fail_ci_if_error: false files: junit.xml report_type: test_results verbose: true check: # This job does nothing and is only used for the branch protection if: always() needs: - build runs-on: ubuntu-latest steps: - name: Decide whether the needed jobs succeeded or failed uses: re-actors/alls-green@a638d6464689bbb24c325bb3fe9404d63a913030 with: jobs: ${{ toJSON(needs) }}