Skip to content
Snippets Groups Projects

Draft: (paused) Publish to GitLab container registry

Open Moul requested to merge 105_gitlab_container_registry into master
1 unresolved thread
+ 30
12
@@ -7,6 +7,9 @@ stages:
@@ -7,6 +7,9 @@ stages:
- deploy
- deploy
- deploy_readme
- deploy_readme
 
variables:
 
DOCKER_HUB_PATH: "duniter/duniter-v2s"
 
workflow:
workflow:
rules:
rules:
- changes:
- changes:
@@ -210,18 +213,26 @@ tests_release:
@@ -210,18 +213,26 @@ tests_release:
- docker
- docker
services:
services:
- docker:dind
- docker:dind
 
variables:
 
DOCKERFILE_PATH: "docker/Dockerfile"
before_script:
before_script:
- docker info
- docker info
script:
script:
- docker pull $CI_REGISTRY_IMAGE:$IMAGE_TAG || true
- docker pull $CI_REGISTRY_IMAGE:$IMAGE_TAG || true
- docker build --cache-from $CI_REGISTRY_IMAGE:$IMAGE_TAG --pull -t "$CI_REGISTRY_IMAGE:$IMAGE_TAG" -f $DOCKERFILE_PATH .
- docker build --cache-from $CI_REGISTRY_IMAGE:$IMAGE_TAG --pull -t "$CI_REGISTRY_IMAGE:$IMAGE_TAG" -f $DOCKERFILE_PATH .
 
# Docker Hub
- docker login -u "duniterteam" -p "$DUNITERTEAM_PASSWD"
- docker login -u "duniterteam" -p "$DUNITERTEAM_PASSWD"
- docker tag "$CI_REGISTRY_IMAGE:$IMAGE_TAG" "duniter/duniter-v2s:$IMAGE_TAG"
- docker tag "$CI_REGISTRY_IMAGE:$IMAGE_TAG" "$DOCKER_HUB_PATH:$IMAGE_TAG"
- docker push "duniter/duniter-v2s:$IMAGE_TAG"
- docker push "$DOCKER_HUB_PATH:$IMAGE_TAG"
 
# GitLab Container Registry
 
- docker login -u "gitlab-ci-token" -p "$CI_BUILD_TOKEN" $CI_REGISTRY
 
- docker push "$CI_REGISTRY_IMAGE:$IMAGE_TAG"
deploy_docker_test_image:
deploy_docker_test_image:
extends: .docker-build-app-image
extends: .docker-build-app-image
rules:
rules:
 
- if: $CI_COMMIT_REF_PROTECTED == "false"
 
when: never
- if: $CI_COMMIT_REF_NAME =~ /^wip*$/
- if: $CI_COMMIT_REF_NAME =~ /^wip*$/
when: manual
when: manual
- if: '$CI_COMMIT_TAG || $CI_COMMIT_BRANCH == "master"'
- if: '$CI_COMMIT_TAG || $CI_COMMIT_BRANCH == "master"'
@@ -229,7 +240,6 @@ deploy_docker_test_image:
@@ -229,7 +240,6 @@ deploy_docker_test_image:
- when: manual
- when: manual
allow_failure: true
allow_failure: true
variables:
variables:
DOCKERFILE_PATH: "docker/Dockerfile"
IMAGE_TAG: "test-image-$CI_COMMIT_SHORT_SHA"
IMAGE_TAG: "test-image-$CI_COMMIT_SHORT_SHA"
deploy_docker_debug_sha:
deploy_docker_debug_sha:
@@ -239,22 +249,27 @@ deploy_docker_debug_sha:
@@ -239,22 +249,27 @@ deploy_docker_debug_sha:
when: never
when: never
- if: $CI_COMMIT_BRANCH == "master"
- if: $CI_COMMIT_BRANCH == "master"
variables:
variables:
DOCKERFILE_PATH: "docker/Dockerfile"
IMAGE_TAG: "debug-sha-$CI_COMMIT_SHORT_SHA"
IMAGE_TAG: "debug-sha-$CI_COMMIT_SHORT_SHA"
after_script:
after_script:
 
# Docker Hub
- docker login -u "duniterteam" -p "$DUNITERTEAM_PASSWD"
- docker login -u "duniterteam" -p "$DUNITERTEAM_PASSWD"
- docker tag "duniter/duniter-v2s:$IMAGE_TAG" "duniter/duniter-v2s:debug-latest"
- docker tag "$CI_REGISTRY_IMAGE:$IMAGE_TAG" "$DOCKER_HUB_PATH:debug-latest"
- docker push "duniter/duniter-v2s:debug-latest"
- docker push "$DOCKER_HUB_PATH:debug-latest"
 
# GitLab Container Registry
 
- docker login -u "gitlab-ci-token" -p "$CI_BUILD_TOKEN" $CI_REGISTRY
 
- docker tag "$CI_REGISTRY_IMAGE:$IMAGE_TAG" "$CI_REGISTRY_IMAGE:debug-latest"
 
- docker push "$CI_REGISTRY_IMAGE:debug-latest"
deploy_docker_release_sha:
deploy_docker_release_sha:
extends: .docker-build-app-image
extends: .docker-build-app-image
rules:
rules:
 
- if: $CI_COMMIT_REF_PROTECTED == "false"
 
when: never
- if: $CI_COMMIT_TAG
- if: $CI_COMMIT_TAG
when: never
when: never
- when: manual
- when: manual
allow_failure: true
allow_failure: true
variables:
variables:
DOCKERFILE_PATH: "docker/Dockerfile"
IMAGE_TAG: "sha-$CI_COMMIT_SHORT_SHA"
IMAGE_TAG: "sha-$CI_COMMIT_SHORT_SHA"
dependencies:
dependencies:
- build_release_manual
- build_release_manual
@@ -265,12 +280,16 @@ deploy_docker_release_tag:
@@ -265,12 +280,16 @@ deploy_docker_release_tag:
- if: "$CI_COMMIT_TAG && $CI_COMMIT_TAG =~ /^v*/"
- if: "$CI_COMMIT_TAG && $CI_COMMIT_TAG =~ /^v*/"
- when: never
- when: never
variables:
variables:
DOCKERFILE_PATH: "docker/Dockerfile"
IMAGE_TAG: "$CI_COMMIT_TAG"
IMAGE_TAG: "$CI_COMMIT_TAG"
after_script:
after_script:
 
# Docker Hub
- docker login -u "duniterteam" -p "$DUNITERTEAM_PASSWD"
- docker login -u "duniterteam" -p "$DUNITERTEAM_PASSWD"
- docker tag "duniter/duniter-v2s:$IMAGE_TAG" "duniter/duniter-v2s:latest"
- docker tag "$CI_REGISTRY_IMAGE:$IMAGE_TAG" "$DOCKER_HUB_PATH:latest"
- docker push "duniter/duniter-v2s:latest"
- docker push "$DOCKER_HUB_PATH:latest"
 
# GitLab Container Registry
 
- docker login -u "gitlab-ci-token" -p "$CI_BUILD_TOKEN" $CI_REGISTRY
 
- docker tag "$CI_REGISTRY_IMAGE:$IMAGE_TAG" "$CI_REGISTRY_IMAGE:latest"
 
- docker push "$CI_REGISTRY_IMAGE:latest"
dependencies:
dependencies:
- build_release
- build_release
@@ -286,8 +305,7 @@ readme_docker_release_tag:
@@ -286,8 +305,7 @@ readme_docker_release_tag:
DOCKER_USER: "duniterteam"
DOCKER_USER: "duniterteam"
DOCKER_PASS: "$DUNITERTEAM_PASSWD"
DOCKER_PASS: "$DUNITERTEAM_PASSWD"
PUSHRM_SHORT: "Duniter v2 based on Substrate framework"
PUSHRM_SHORT: "Duniter v2 based on Substrate framework"
PUSHRM_TARGET: "docker.io/duniter/duniter-v2s"
PUSHRM_TARGET: "docker.io/$DOCKER_HUB_PATH"
PUSHRM_DEBUG: 1
PUSHRM_DEBUG: 1
PUSHRM_FILE: "$CI_PROJECT_DIR/docker/README.md"
PUSHRM_FILE: "$CI_PROJECT_DIR/docker/README.md"
script: "/bin/true"
script: "/bin/true"
Loading