Page MenuHomec4science

.gitlab-ci.yml
No OneTemporary

File Metadata

Created
Mon, Mar 3, 05:18

.gitlab-ci.yml

stages:
- docker
- configure
- build
- test
variables:
IMAGE_TAG: $CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG
GIT_SUBMODULE_STRATEGY: recursive
BUILD_DIR: build-release
cache:
key: "$CI_COMMIT_REF_SLUG"
docker build:debian:
stage: docker
image: docker:19.03.12
services:
- docker:19.03.12-dind
variables:
# Use TLS https://docs.gitlab.com/ee/ci/docker/using_docker_build.html#tls-enabled
DOCKER_HOST: tcp://docker:2376
DOCKER_TLS_CERTDIR: "/certs"
script:
- docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY
- docker build -t $IMAGE_TAG .
- docker push $IMAGE_TAG
rules:
- changes:
- Dockerfile
.debian_stable:
image: $IMAGE_TAG
configure:
stage: configure
extends: .debian_stable
before_script:
- rm -rf build-*
script:
- scons build_tests=True
use_googletest=True
build_python=True
py_exec=python3
use_mpi=True
verbose=True -h
artifacts:
paths:
- build-setup.conf
build:
stage: build
needs: [configure]
extends: .debian_stable
variables:
COMPILE_LOG: compilation.txt
script:
- scons 2>&1 | tee $COMPILE_LOG
artifacts:
paths:
- $COMPILE_LOG
- $BUILD_DIR
test:
stage: test
needs: [build]
extends: .debian_stable
variables:
PYTHONPATH: $CI_PROJECT_DIR/$BUILD_DIR/python
TESTS: $BUILD_DIR/tests
JUNITXML: results.xml
script:
- ls $PYTHONPATH
- python3 -c 'import sys; print(sys.path)'
- python3 -m pytest -vvv --durations=0 --junitxml=$JUNITXML $TESTS
artifacts:
paths:
- $JUNITXML
reports:
junit:
- $JUNITXML

Event Timeline