From 4f7c039e8b3036687dc407c7dac101b9344c14fc Mon Sep 17 00:00:00 2001 From: Timm Fitschen <t.fitschen@indiscale.com> Date: Fri, 18 Feb 2022 13:09:55 +0100 Subject: [PATCH] Cherry-pick .gitlab-ci.yml from dev --- .gitlab-ci.yml | 77 ++++++++++++++++++++++++++------------------------ 1 file changed, 40 insertions(+), 37 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 1f33424..42e7907 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -23,6 +23,7 @@ variables: CI_REGISTRY_IMAGE_BASE: $CI_REGISTRY/caosdb/src/caosdb-pyinttest/base:latest stages: + - info - setup - cert - style @@ -78,10 +79,44 @@ stages: # file-system features. # +.env: &env + - echo "Pipeline triggered by $TRIGGERED_BY_REPO@$TRIGGERED_BY_REF ($TRIGGERED_BY_HASH)" + - echo "CI_REGISTRY_IMAGE_BASE = $CI_REGISTRY_IMAGE_BASE" + - echo "CI_REGISTRY_IMAGE = $CI_REGISTRY_IMAGE" + - echo "CAOSDB_TAG = $CAOSDB_TAG" + - echo "REFTAG = $REFTAG" + - echo "F_BRANCH = $F_BRANCH" + - echo "CI_COMMIT_REF_NAME = $CI_COMMIT_REF_NAME" + - ls -lah /image-cache/ + + - F_BRANCH=${F_BRANCH:-$CI_COMMIT_REF_NAME} + - echo $F_BRANCH + - if [[ "$REFTAG" == "" ]] ; then + if [[ "$F_BRANCH" == "dev" ]] ; then + REFTAG=dev; + fi; + fi + - REFTAG=${REFTAG:-dev_F_${F_BRANCH}} + + - echo $F_BRANCH + + - if [[ "$CAOSDB_TAG" == "" ]]; then + CAOSDB_TAG=${REFTAG}; + fi + - echo $CAOSDB_TAG + +info: + tags: [cached-dind] + image: docker:20.10 + stage: info + needs: [] + script: + - *env + test: tags: [docker] services: - - docker:20.10.3-dind + - docker:20.10-dind variables: # This is a workaround for the gitlab-runner health check mechanism when # using docker-dind service. The runner will otherwise guess the port @@ -91,42 +126,10 @@ test: image: $CI_REGISTRY_IMAGE_BASE needs: ["cert"] script: - - ls / - - echo $F_BRANCH - - echo $CAOSDB_TAG - - echo $CI_COMMIT_REF_NAME - - F_BRANCH=${F_BRANCH:-$CI_COMMIT_REF_NAME} - - echo $F_BRANCH - - echo $CAOSDB_TAG - - echo $CI_COMMIT_REF_NAME - - if echo "$F_BRANCH" | grep -c "^f-.*$"; then - REFTAG="${REFTAG}_F_${F_BRANCH}"; - elif [ "$F_BRANCH" == "main" ]; then - F_BRANCH=main; - else - F_BRANCH=dev; - fi - - echo $F_BRANCH - - echo $CI_COMMIT_REF_NAME - - echo $CI_REGISTRY_IMAGE - + - *env - docker login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY - - time docker load < /image-cache/caosdb-${F_BRANCH}.tar || true - - DEPLOY_REF=dev - - if [[ "$CI_COMMIT_REF_NAME" == "main" ]] ; then - DEPLOY_REF=main; - fi - - echo $DEPLOY_REF - - if [[ "$CAOSDB_TAG" == "" ]]; then - if echo "$F_BRANCH" | grep -c "^f-" ; then - CAOSDB_TAG=${DEPLOY_REF}_F_${F_BRANCH}; - docker pull $CI_REGISTRY/caosdb/src/caosdb-deploy:$CAOSDB_TAG || CAOSDB_TAG=${DEPLOY_REF} ; - else - CAOSDB_TAG=${DEPLOY_REF}; - fi; - fi - - echo $CAOSDB_TAG - - docker pull $CI_REGISTRY/caosdb/src/caosdb-deploy:$CAOSDB_TAG || CAOSDB_TAG=dev ; + - time docker load < /image-cache/caosdb-${REFTAG}.tar || time docker load < /image-cache/caosdb-dev.tar || true + - docker pull $CI_REGISTRY/caosdb/src/caosdb-deploy:$CAOSDB_TAG || CAOSDB_TAG=dev - echo $CAOSDB_TAG - time docker load < /image-cache/caosdb-pyint-testenv-${CI_COMMIT_REF_NAME}.tar || true @@ -169,7 +172,7 @@ test: build-testenv: tags: [cached-dind] - image: docker:19.03 + image: docker:20.10 stage: setup timeout: 2h only: -- GitLab