Bump pytest-check from 2.3.1 to 2.4.1 #53
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
# This workflow will install Python dependencies, run tests and lint with a single version of Python | |
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions | |
name: Python Tests | |
on: | |
push: | |
branches: | |
- main | |
- 'release/**' | |
pull_request: | |
branches: | |
- main | |
workflow_dispatch: | |
jobs: | |
test: | |
runs-on: ${{ matrix.os }} | |
timeout-minutes: 14 | |
strategy: | |
fail-fast: false | |
matrix: | |
name: | |
[ | |
# latest conan 1.X on U20 and Windows | |
"ubuntu20-py38-conan1-latest", | |
"ubuntu20-py39-conan1-latest", | |
"ubuntu20-py310-conan1-latest", | |
"windows-py311-conan1-latest", | |
# conan minimum version with python minimum version | |
"ubuntu20-py38-conan1.48", | |
# conan 2 stuff with bleeding edge - use Python 3.12 (U22 needed) | |
"ubuntu22-py310-conan2.3", # 2.3 API changes | |
"ubuntu22-py312-conan2-latest", # post 2.3 API changes | |
"windows-py312-conan2-latest", # latest everything | |
] | |
include: | |
- name: "ubuntu20-py38-conan1-latest" | |
python: "3.8" | |
os: ubuntu-20.04 | |
conan: "<2" | |
conan_server: "<2" | |
- name: "ubuntu20-py39-conan1-latest" | |
python: "3.9" | |
conan: "<2" | |
conan_server: "<2" | |
os: ubuntu-20.04 | |
- name: "ubuntu20-py310-conan1-latest" | |
python: "3.10" | |
conan: "<2" | |
conan_server: "<2" | |
os: ubuntu-20.04 | |
- name: "windows-py311-conan1-latest" | |
python: "3.11" | |
os: windows-latest | |
conan: "<2" | |
conan_server: "<2" | |
- name: "ubuntu20-py38-conan1.48" | |
python: "3.8" | |
os: ubuntu-20.04 | |
conan: "==1.48.0" | |
conan_server: "==1.48.0" | |
- name: "ubuntu22-py310-conan2.3" | |
python: "3.10" | |
os: ubuntu-22.04 | |
conan: <2.4 | |
conan_server: "-server <2.4" | |
- name: "ubuntu22-py312-conan2-latest" | |
python: "3.12" | |
os: ubuntu-22.04 | |
conan: <2.5 | |
conan_server: "-server <2.5" | |
- name: windows-py312-conan2-latest | |
python: "3.12" | |
os: windows-latest | |
conan: <2.5 # latest conan 2 | |
conan_server: "-server <2.5" | |
env: | |
DISPLAY: ":99.0" | |
LC_ALL: "en_US.UTF-8" | |
CONAN_REVISIONS_ENABLED: 1 | |
CAL_DEBUG_LEVEL: 2 # this does not use Qt Threads, but enables to see stacktraces | |
# QT_LOGGING_RULES=: "*.debug=true" | |
# QT_DEBUG_PLUGINS: 1 | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up Python ${{ matrix.python }} | |
uses: actions/setup-python@v5 | |
with: | |
python-version: ${{ matrix.python }} | |
cache: 'pip' # caching pip dependencies | |
cache-dependency-path: setup.py | |
- name: Install specific Conan version | |
run: | # markupsafe is a workaround fix for broken conan dependencies | |
pip install markupsafe==2.0.1 --use-pep517 | |
pip install "conan${{ matrix.conan }}" --use-pep517 | |
pip install "conan${{ matrix.conan_server }}" --use-pep517 | |
- name: Install own package and test dependencies | |
# need -e because of coverage paths. | |
run: | | |
pip install -e .[test] | |
env: | |
CONAN_VERSION: ${{ matrix.conan}} | |
- name: Execute unitests with pytest | |
run: >- | |
pytest -v test --junit-xml=./results/result-unit-${{matrix.name}}.xml | |
--cov=conan_unified_api --cov-branch --cov-append --capture=no | |
- name: Upload Test results | |
uses: actions/upload-artifact@v3 # TODO: v4 does not support overwrite anymore | |
with: | |
name: Test results | |
path: | | |
cov/ | |
results/ | |
# sonarcloud: | |
# if: always() # eecute, even when tests fail | |
# needs: | |
# - test | |
# runs-on: ubuntu-20.04 | |
# steps: | |
# - uses: actions/checkout@v4 | |
# with: | |
# # Disabling shallow clone is recommended for improving relevancy of reporting, | |
# # cf https://sonarcloud.io/project/configuration?analysisMode=GitHubActions | |
# fetch-depth: 0 | |
# - uses: actions/download-artifact@v3 | |
# with: | |
# name: Test results | |
# path: ./ | |
# - name: Fix code coverage paths | |
# working-directory: ./cov | |
# run: | | |
# sed -i 's@/home/runner/work/conan_explorer/conan_explorer@.@g' cov-*.xml | |
# sed -i 's@D:\a\conan_explorer\conan_explorer@.@g' cov-*.xml | |
# - name: SonarCloud Scan | |
# uses: sonarsource/sonarcloud-github-action@master | |
# env: | |
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
# SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }} | |
# with: | |
# args: > | |
# -Dsonar.organization=goszpeti | |
# -Dsonar.projectKey=goszpeti_conan_unified_api | |
# -Dsonar.sources=./src | |
# -Dsonar.exclusions=**/*_ui.py | |
# -Dsonar.tests=./test | |
# -Dsonar.sourceEncoding=UTF-8 | |
# -Dsonar.python.version=3.8,3.9,3.10,3.11 | |
# -Dsonar.python.coverage.reportPaths=cov/cov-*.xml | |
# -Dsonar.python.xunit.reportPath=results/result-*-ubuntu-py39.xml |