+++ /dev/null
-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
# SPDX-License-Identifier: GPL-3.0-or-later
# vim:foldmethod=marker
variables:
+ PYTHON_VERSION: '3.12'
DEBIAN_FRONTEND: noninteractive
LC_ALL: C.UTF-8
GIT_SUBMODULE_STRATEGY: recursive
--wrap="valgrind --leak-check=full --trace-children=yes --quiet --suppressions=/lj.supp"
--suite snowflake
-manager:
- stage: test
- needs: []
- trigger:
- include: .gitlab-ci.manager.yml
- strategy: depend
- except:
- refs:
- - master@knot/knot-resolver
- - master@knot/security/knot-resolver
- - tags
- variables:
- - $SKIP_CI == "1"
-
pytests:
<<: *test_flaky
needs:
- "git push --force --set-upstream origin \"docs/${CI_COMMIT_REF_NAME}\""
# }}}
+
+# docs: {{{
+
+.python: &python
+ <<: *nodep
+ image: $IMAGE_PREFIX/manager:$IMAGE_TAG
+ stage: sanity
+ before_script:
+ - poetry --version
+ - poetry env use python${PYTHON_VERSION}
+
+python:examples:
+ <<: *python
+ script:
+ - poetry install --all-extras --only main,dev
+ - poe examples
+
+python:check:
+ <<: *python
+ script:
+ - poetry install --all-extras --only main,dev,lint
+ - poe check
+
+python:format:
+ <<: *python
+ script:
+ - poetry install --all-extras --only main,dev,lint
+ - poe format
+
+python:lint:
+ <<: *python
+ script:
+ - poetry install --all-extras --only main,dev,lint
+ - poe lint
+
+python:unit:
+ <<: *python
+ stage: test
+ parallel:
+ matrix:
+ - PYTHON_VERSION:
+ - '3.8'
+ - '3.9'
+ - '3.10'
+ - '3.11'
+ - '3.12'
+ - '3.13'
+ 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
+
+# }}}
\ No newline at end of file