diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 88355947e03e65cb5d97a771e82899eb7502935e..2ce603d35f68cc2643cb2bc8e4c5d07c368dfbd5 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -8,6 +8,19 @@ trigger_prepare: include: "{{cookiecutter.project_slug}}/.prepare.gitlab-ci.yml" default: + # Bootstrap Cookiecutter template to test provided ci pipeline template before_script: - python --version # For debugging - - cookiecutter --no-input --overwrite-if-exists -output-dir . + - cookiecutter --no-input --overwrite-if-exists --output-dir . . + - cd my_awesome_app + - git init + +# Override artifact directories +run_unit_tests_coverage: + artifacts: + reports: + coverage_report: + coverage_format: cobertura + path: my_awesome_app/coverage.xml + paths: + - my_awesome_app/htmlcov/* diff --git a/README.md b/README.md index 34766ecd393f8d7576daa7e188159de3433041b5..4ca5706d6538a159d9333c68b054baae61542c01 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,8 @@ # Example Python Package + + + An example repository of an CI/CD pipeline for building, testing and publishing a python package. If you find some missing functionality with regards to CI/CD, testing, linting or something else, feel free to make a merge request with the proposed changes. diff --git a/{{cookiecutter.project_slug}}/.gitlab-ci.yml b/{{cookiecutter.project_slug}}/.gitlab-ci.yml index af7749c58d7d7abf2ca7391d076bdeb87bee6a8f..ead4cc5f552641f2afa4599d8f743e44e6ba2196 100644 --- a/{{cookiecutter.project_slug}}/.gitlab-ci.yml +++ b/{{cookiecutter.project_slug}}/.gitlab-ci.yml @@ -75,6 +75,7 @@ run_unit_tests_coverage: stage: test script: - tox -e coverage + coverage: '/(?i)total.*? (100(?:\.0+)?\%|[1-9]?\d(?:\.\d+)?\%)$/' artifacts: reports: coverage_report: diff --git a/{{cookiecutter.project_slug}}/README.md b/{{cookiecutter.project_slug}}/README.md index e0127fbcf6b4c34242ac4d4ea59c76f0cfa7ba9e..4a0ae9083c5f75f291e3e193972b9e5aabe5651e 100644 --- a/{{cookiecutter.project_slug}}/README.md +++ b/{{cookiecutter.project_slug}}/README.md @@ -1,5 +1,10 @@ # {{cookiecutter.project_name}} +<!-- TODO: replace --> + + +<!--  --> + An example repository of an CI/CD pipeline for building, testing and publishing a python package. ## Installation diff --git a/{{cookiecutter.project_slug}}/tox.ini b/{{cookiecutter.project_slug}}/tox.ini index 0beb24ceb93ab7f2e5949512d7aedfcced0f2e6a..389403d52064a498216d8eb281afa0e60af09d6a 100644 --- a/{{cookiecutter.project_slug}}/tox.ini +++ b/{{cookiecutter.project_slug}}/tox.ini @@ -22,7 +22,7 @@ commands = [testenv:coverage] commands = {envpython} --version - {envpython} -m pytest --cov-report xml --cov-report html --cov={{cookiecutter.project_slug}} + {envpython} -m pytest --cov-report term --cov-report xml --cov-report html --cov={{cookiecutter.project_slug}} # Use generative name and command prefixes to reuse the same virtualenv # for all linting jobs.