/
niceSOFT
/
python3-pytest
Обзор
Документация
Войти
/
niceSOFT
/
python3-pytest
Код
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
9.0.1
.github/workflows/test.yml
310 строк
8 KB
dependabot[bot]
build(deps): Bump actions/download-artifact from 5 to 6 (#13850)
27 окт 2025, 07:08
Не верифицирован
27 окт 2025, 07:08
9fc738c
Код
Авторство
О чём код?
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@v5 with: fetch-depth: 0 persist-credentials: false - name: Build and Check Package uses: hynek/build-and-inspect-python-package@efb823f52190ad02594531168b7a2d5790e66516 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", "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-pypy3-xdist", "macos-py310", "macos-py312", "macos-py313", "macos-py314", "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 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-pypy3-xdist" python: "pypy-3.10" 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: "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@v5 with: fetch-depth: 0 persist-credentials: false - name: Download Package uses: actions/download-artifact@v6 with: name: Packages path: dist - name: Set up Python ${{ matrix.python }} uses: actions/setup-python@v6 with: python-version: ${{ matrix.python }} check-latest: true allow-prereleases: true - name: Install dependencies run: | python -m pip install --upgrade pip pip install tox coverage - name: Test without coverage if: "! matrix.use_coverage" shell: bash run: tox run -e ${{ matrix.tox_env }} --installpkg `find dist/*.tar.gz` - name: Test with coverage if: "matrix.use_coverage" shell: bash run: tox run -e ${{ matrix.tox_env }}-coverage --installpkg `find dist/*.tar.gz` - name: Generate coverage report if: "matrix.use_coverage" run: python -m coverage xml - name: Upload coverage to Codecov if: "matrix.use_coverage" uses: codecov/codecov-action@5a1091511ad55cbe89839c7260b706298ca349f7 with: fail_ci_if_error: false files: ./coverage.xml 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@2765efec08f0fd63e83ad900f5fd75646be69ff6 with: jobs: ${{ toJSON(needs) }}