stages: - check - build variables: IMAGE_NAME: $CI_REGISTRY/$CI_PROJECT_PATH HUB_IMAGE_NAME: $DOCKER_HUB_LOGIN/$CI_PROJECT_NAME check: image: registry.hottis.de/dockerized/base-build-env:latest stage: check tags: - hottis - linux - docker rules: - if: $CI_COMMIT_TAG script: - checksemver.py -v --versionToValidate "${CI_COMMIT_TAG}" --validateMessage --messageToValidate "${CI_COMMIT_MESSAGE}" build: image: registry.hottis.de/dockerized/docker-bash:latest stage: build tags: - hottis - linux - docker script: - docker build --tag $IMAGE_NAME:${CI_COMMIT_SHORT_SHA} . - docker login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY; - docker push $IMAGE_NAME:${CI_COMMIT_SHORT_SHA} - if [ "$CI_COMMIT_TAG" != "" ]; then docker tag $IMAGE_NAME:${CI_COMMIT_SHORT_SHA} $IMAGE_NAME:${CI_COMMIT_TAG}; docker tag $IMAGE_NAME:${CI_COMMIT_SHORT_SHA} $IMAGE_NAME:latest; docker push $IMAGE_NAME:${CI_COMMIT_TAG}; docker push $IMAGE_NAME:latest; if [ "$NO_HUB_PUSH" != "true" ]; then docker login -u $DOCKER_HUB_LOGIN -p $DOCKER_HUB_PASSWORD; docker tag $IMAGE_NAME:${CI_COMMIT_SHORT_SHA} $HUB_IMAGE_NAME:${CI_COMMIT_TAG}; docker tag $IMAGE_NAME:${CI_COMMIT_SHORT_SHA} $HUB_IMAGE_NAME:latest; docker push $HUB_IMAGE_NAME:${CI_COMMIT_TAG}; docker push $HUB_IMAGE_NAME:latest; fi; fi