From a2d5f8cfcb620362ec91e61c5dedff8d922496b7 Mon Sep 17 00:00:00 2001 From: Adrien Dorsaz Date: Sun, 24 May 2020 13:46:39 +0200 Subject: [PATCH] gitlab-ci: prepare to split jobs with unit test and staging test --- .gitlab-ci.yml | 57 +++++++++++++++---- ...> staging_test_acme_account_deactivate.py} | 0 ... => staging_test_acme_account_rollover.py} | 0 ..._tiny.py => staging_test_acme_dns_tiny.py} | 0 4 files changed, 46 insertions(+), 11 deletions(-) rename tests/{test_acme_account_deactivate.py => staging_test_acme_account_deactivate.py} (100%) rename tests/{test_acme_account_rollover.py => staging_test_acme_account_rollover.py} (100%) rename tests/{test_acme_dns_tiny.py => staging_test_acme_dns_tiny.py} (100%) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index ed15082..61a1aab 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,7 +1,12 @@ stages: - check + - unit_test - lets_encrypt_staging +.install_dependencies: &install_dependencies + - apt-get update && apt-get install -y --no-install-recommends + python3-minimal python3-dnspython python3-requests + .check: stage: check image: debian:buster-slim @@ -9,19 +14,31 @@ stages: - merge_requests - master +.unit_test: + stage: unit_test + before_script: + - *install_dependencies + - apt-get install -y --no-install-recommends python3-coverage + script: + - python3-coverage run --append --source ./ -m unittest -v + tests.unit_test_acme_dns_tiny + artifacts: + paths: + - .coverage + .lets_encrypt_staging: stage: lets_encrypt_staging before_script: - - apt-get update && apt-get install -y --no-install-recommends - python3-minimal python3-dnspython python3-requests python3-coverage + - *install_dependencies + - apt-get install -y --no-install-recommends python3-coverage script: - - python3-coverage run --source ./ -m unittest -v tests.test_acme_dns_tiny - tests.test_acme_account_rollover tests.test_acme_account_deactivate - - python3-coverage report - --include=acme_dns_tiny.py - --include=tools/acme_account_rollover.py - --include=tools/acme_account_deactivate.py - - python3-coverage html + - python3-coverage run --append --source ./ -m unittest -v + tests.staging_test_acme_dns_tiny + tests.staging_test_acme_account_rollover + tests.staging_test_acme_account_deactivate + artifacts: + paths: + - .coverage only: - merge_requests - master @@ -37,8 +54,8 @@ compile: lint: extends: .check before_script: - - apt-get update && apt-get install -y --no-install-recommends pylint3 - python3-minimal python3-dnspython python3-requests + - *install_dependencies + - apt-get install -y --no-install-recommends pylint3 script: - pylint3 acme_dns_tiny.py - pylint3 tools/acme_account_deactivate.py @@ -47,6 +64,18 @@ lint: - pylint3 tests/test_acme_dns_tiny.py - pylint3 tests/test_acme_account_deactivate.py +jessie_unit_tests: + extends: .unit_test + image: debian:jessie-slim + +stretch_unit_tests: + extends: .unit_test + image: debian:stretch-slim + +buster_unit_tests: + extends: .unit_test + image: debian:buster-slim + jessie: extends: .lets_encrypt_staging image: debian:jessie-slim @@ -58,6 +87,12 @@ stretch: buster: extends: .lets_encrypt_staging image: debian:buster-slim + after_script: + - python3-coverage report + --include=acme_dns_tiny.py + --include=tools/acme_account_rollover.py + --include=tools/acme_account_deactivate.py + - python3-coverage html artifacts: paths: - htmlcov diff --git a/tests/test_acme_account_deactivate.py b/tests/staging_test_acme_account_deactivate.py similarity index 100% rename from tests/test_acme_account_deactivate.py rename to tests/staging_test_acme_account_deactivate.py diff --git a/tests/test_acme_account_rollover.py b/tests/staging_test_acme_account_rollover.py similarity index 100% rename from tests/test_acme_account_rollover.py rename to tests/staging_test_acme_account_rollover.py diff --git a/tests/test_acme_dns_tiny.py b/tests/staging_test_acme_dns_tiny.py similarity index 100% rename from tests/test_acme_dns_tiny.py rename to tests/staging_test_acme_dns_tiny.py -- GitLab