diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 0000000000000000000000000000000000000000..1ef531ba09fb84a6a70c1fc8f3c6a79e43f8b6e6 --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,104 @@ +stages: + - init + - test + - pages + +### Static Badges ### +version: + stage: init + tags: + - leap + - zam347 + - base + only: + - master + - tags + script: + - chmod +x ./CI/update_badge.sh + - chmod +x ./CI/create_version_badge.sh + - ./CI/create_version_badge.sh + artifacts: + name: pages + when: always + paths: + - badges/ + +### Tests ### +tests: + tags: + - leap + - zam347 + - base + - django + stage: test + variables: + FAILURE_THRESHOLD: 90 + before_script: + - chmod +x ./CI/update_badge.sh + - ./CI/update_badge.sh > /dev/null + script: + - pip install -r requirements.txt + - chmod +x ./CI/run_pytest.sh + - ./CI/run_pytest.sh + after_script: + - ./CI/update_badge.sh > /dev/null + artifacts: + name: pages + when: always + paths: + - badges/ + +coverage: + tags: + - leap + - zam347 + - base + - django + stage: test + variables: + FAILURE_THRESHOLD: 50 + COVERAGE_PASS_THRESHOLD: 80 + before_script: + - chmod +x ./CI/update_badge.sh + - ./CI/update_badge.sh > /dev/null + script: + - pip install -r requirements.txt + - chmod +x ./CI/run_pytest_coverage.sh + - ./CI/run_pytest_coverage.sh + after_script: + - ./CI/update_badge.sh > /dev/null + artifacts: + name: pages + when: always + paths: + - badges/ + - coverage/ + +#### Pages #### +pages: + stage: pages + tags: + - leap + - zam347 + - base + script: + - mkdir -p public/badges/ + - cp -af badges/badge_*.svg public/badges/ + - ls public/badges/ + - mkdir -p public/coverage + - cp -af coverage/. public/coverage + - ls public/coverage + - ls public + when: always + artifacts: + name: pages + when: always + paths: + - public + - badges/ + - coverage/ + cache: + key: old-pages + paths: + - public/badges/ + - public/coverage/