diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index e48f957..16a9532 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,6 +1,7 @@ stages: - generate-api-clients - build + - deploy variables: REGISTRY: devnexus.krohne.com:18079/repository/docker-krohne @@ -100,4 +101,60 @@ dockerize-server: variables: DOCKERFILE: Dockerfile-server +.deploy: + stage: deploy + image: wollud1969/docker-bash:latest + image: devnexus.krohne.com:18079/repository/docker-krohne/krohnedockerbash:0.5 + variables: + GIT_STRATEGY: none + SERVICE: sbom-dd-dt-integrator + dependencies: + - dockerize + script: + - VERSION=$CI_COMMIT_SHA + - CONTAINER_NAME=$SERVICE"-"$INSTANCE_SPECIFIER + - SERVICE_VOLUME=$SERVICE"-"$INSTANCE_SPECIFIER"-data" + - docker volume inspect $SERVICE_VOLUME || docker volume create $SERVICE_VOLUME + - docker stop $CONTAINER_NAME || echo "$CONTAINER_NAME not running, anyway okay" + - docker rm $CONTAINER_NAME || echo "$CONTAINER_NAME not running, anyway okay" + - docker login -u $NEXUS_USER -p $NEXUS_PASSWORD $REGISTRY + - docker pull $IMAGE_NAME:$VERSION + - | + cat - > /start-scripts/${CONTAINER_NAME}.sh << EOT + docker run \ + -d \ + --restart always + --name $CONTAINER_NAME \ + -e DTRACK_API_URL=$DTRACK_API_URL \ + -e DTRACK_TOKEN=$DTRACK_TOKEN \ + -e DEFECTDOJO_URL=$DEFECTDOJO_URL \ + -e DEFECTDOJO_TOKEN=$DEFECTDOJO_TOKEN \ + $IMAGE_NAME:$VERSION + EOT + - chmod 755 /start-scripts/${CONTAINER_NAME}.sh + - /start-scripts/${CONTAINER_NAME}.sh + +deploy-test: + extends: .deploy + only: + refs: + - master + tags: + - test-deployment-de01rdtst01 + variables: + INSTANCE_SPECIFIER: test + environment: + name: test + +deploy-dev: + extends: .deploy + only: + refs: + - production_deployment + tags: + - for-common-services-prod-deployment-only + variables: + INSTANCE_SPECIFIER: prod + environment: + name: prod