Newer
Older
image: docker.km3net.de/base/singularity-py3:3.5.3
PIP_CACHE_DIR: "$CI_PROJECT_DIR/.cache/pip"
DOCKER_DRIVER: overlay2
CONTAINER_TEST_IMAGE: docker.km3net.de/simulation/km3buu:$CI_COMMIT_REF_SLUG
CONTAINER_RELEASE_IMAGE: docker.km3net.de/simulation/km3buu:$CI_COMMIT_TAG
CONTAINER_LATEST_IMAGE: docker.km3net.de/simulation/km3buu:latest
cache:
paths:
- .cache/pip
key: "$CI_COMMIT_REF_SLUG"
- reset_cache_image
reset_test_image:
stage: reset_cache_image
cache:
paths:
- GiBUU.simg
script:
- rm GiBUU.simg
only:
- tags
.virtualenv_template: &virtualenv_definition |
python -V
pip install virtualenv
virtualenv venv
source venv/bin/activate
pip install -U pip setuptools yapf
.junit_template: &junit_definition
artifacts:
reports:
junit: "reports/junit*.xml"

Johannes Schumann
committed
test:
image: docker.km3net.de/base/singularity-py3:3.5.3
stage: test
script:
- *virtualenv_definition
- make test
<<: *junit_definition
code-style:
image: docker.km3net.de/base/singularity-py3:3.5.3
stage: test
script:
- *virtualenv_definition
- yapf -r -d -e "venv" .
allow_failure: true
coverage:
image: docker.km3net.de/base/singularity-py3:3.5.3
stage: coverage
script:
- *virtualenv_definition
- "make test-cov|grep TOTAL| awk '{printf \"COVERAGE: %.2f%%\", (1-$3/$2)*100 }'"
coverage: '/COVERAGE:\s*([0-9]*\.[0-9]*%)/'
# - make test-cov
# coverage: '/TOTAL.+ ([0-9]{1,3}%)/'
artifacts:
paths:
- reports/coverage
image: docker:stable
services:
- docker:dind
stage: docker
script:
- docker build --pull -t $CONTAINER_TEST_IMAGE .
- docker push $CONTAINER_TEST_IMAGE
tags:
- docker
only:
- tags
image: docker:stable
services:
- docker:dind
stage: release
script:
- docker pull $CONTAINER_TEST_IMAGE
- docker tag $CONTAINER_TEST_IMAGE $CONTAINER_RELEASE_IMAGE
- docker tag $CONTAINER_TEST_IMAGE $CONTAINER_LATEST_IMAGE
- docker push $CONTAINER_RELEASE_IMAGE
- docker push $CONTAINER_LATEST_IMAGE
tags:
- docker
only:
- tags