stages: - check default: image: $IMAGE_PREFIX/manager:$IMAGE_TAG before_script: - poetry --version - poetry env use $PYTHON_INTERPRETER tags: - docker - linux - amd64 examples:py3.12: stage: check script: - poetry install --all-extras --only main,dev - poe examples variables: PYTHON_INTERPRETER: python3.12 check:py3.12: stage: check script: - poetry install --all-extras --only main,dev,lint - poe check variables: PYTHON_INTERPRETER: python3.12 format:py3.12: stage: check script: - poetry install --all-extras --only main,dev,lint - poe format variables: PYTHON_INTERPRETER: python3.12 lint:py3.12: stage: check script: - poetry install --all-extras --only main,dev,lint - poe lint variables: PYTHON_INTERPRETER: python3.12 .unit: &unit stage: check script: - poetry install --all-extras --only main,dev,test - poe test # the following command makes sure that the source root of the coverage file is at $gitroot - poetry run bash -c "coverage combine .coverage; coverage xml" artifacts: reports: coverage_report: coverage_format: cobertura path: coverage.xml junit: unit.junit.xml paths: - unit.junit.xml unit:py3.8: <<: *unit variables: PYTHON_INTERPRETER: python3.8 unit:py3.9: <<: *unit variables: PYTHON_INTERPRETER: python3.9 unit:py3.10: <<: *unit variables: PYTHON_INTERPRETER: python3.10 unit:py3.11: <<: *unit variables: PYTHON_INTERPRETER: python3.11 unit:py3.12: <<: *unit variables: PYTHON_INTERPRETER: python3.12 unit:py3.13: <<: *unit variables: PYTHON_INTERPRETER: python3.13