*** Wartungsfenster jeden ersten Mittwoch vormittag im Monat ***

Skip to content
Snippets Groups Projects
.gitlab-ci.yml 1.28 KiB
Newer Older
Tsepelakis, Sotirios's avatar
Tsepelakis, Sotirios committed
stages:
  - testing
  - release

run-tests:
  stage: testing
  script:
    - pipx install --force pip pipenv
    - pipenv run pip install -e '.[tests,opensearch2]'
Tsepelakis, Sotirios's avatar
Tsepelakis, Sotirios committed
    - pipenv run ./run-tests.sh
  coverage: /TOTAL.*? (100(?:\.0+)?\%|[1-9]?\d(?:\.\d+)?\%)$/
  rules:
    - if: $CI_PIPELINE_SOURCE == 'merge_request_event'
    - if: $CI_COMMIT_BRANCH == '$CI_DEFAULT_BRANCH'
Tsepelakis, Sotirios's avatar
Tsepelakis, Sotirios committed
  stage: testing
Tsepelakis, Sotirios's avatar
Tsepelakis, Sotirios committed
    SONAR_USER_HOME: "${CI_PROJECT_DIR}/.sonar" # Defines the location of the analysis task cache
    GIT_DEPTH: "0" # Tells git to fetch all the branches of the project, required by the analysis task
  cache:
    key: "${CI_JOB_NAME}"
    paths:
      - .sonar/cache
  script:
    - sonar-scanner
  allow_failure: true
  rules:
    - if: $CI_PIPELINE_SOURCE == 'merge_request_event'
    - if: $CI_COMMIT_BRANCH == '$CI_DEFAULT_BRANCH'
Tsepelakis, Sotirios's avatar
Tsepelakis, Sotirios committed
  stage: release
  needs:
    - run-tests
  rules:
    - if: '$CI_COMMIT_TAG =~ /^v\d+/'
  script:
    - pip3 install --upgrade pip build twine check-manifest
    - python3 -m twine check dist/*
    - TWINE_USERNAME=${PYPI_USER} TWINE_PASSWORD=${PYPI_PASSWORD} python3 -m twine upload --skip-existing --non-interactive dist/*