From 6ddd7d2176444728d8c2b2f3eb01a75105774ef5 Mon Sep 17 00:00:00 2001 From: Lorenzo Del Pianta <lorenzo.del.pianta.perez@cern.ch> Date: Tue, 4 Feb 2025 10:36:12 +0100 Subject: [PATCH 1/9] Update file .gitlab-ci.yml --- .gitlab-ci.yml | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index dc4c37f18..ab25a6b42 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -7,15 +7,19 @@ stages: .build_image: &build_image image: - # We recommend using the CERN version of the Kaniko image: gitlab-registry.cern.ch/ci-tools/docker-image-builder - name: gitlab-registry.cern.ch/ci-tools/docker-image-builder + # The kaniko debug image is recommended because it has a shell, and a shell is required for an image to be used with GitLab CI/CD. + name: gcr.io/kaniko-project/executor:debug entrypoint: [""] + variables: + IMAGE_DESTINATION: "${CI_REGISTRY_IMAGE}/${IMAGE_NAME}:${TAG}" script: # This is not the common Authentication config, unknown reason why common config fails - - echo "{\"auths\":{\"$CI_REGISTRY\":{\"auth\":\"$(echo -n ${CI_REGISTRY_USER}:${CI_REGISTRY_PASSWORD} | base64)\"}}}" > /kaniko/.docker/config.json + - echo "{\"auths\":{\"$CI_REGISTRY\":{\"username\":\"$CI_REGISTRY_USER\",\"password\":\"$CI_REGISTRY_PASSWORD\"}}}" > /kaniko/.docker/config.json + # - echo "{\"auths\":{\"$CI_REGISTRY\":{\"auth\":\"$(echo -n ${CI_REGISTRY_USER}:${CI_REGISTRY_PASSWORD} | base64)\"}}}" > /kaniko/.docker/config.json - /kaniko/executor --context "$CI_PROJECT_DIR/$CONTEXT_DIR" --dockerfile "$CI_PROJECT_DIR/$CONTEXT_DIR/$DOCKERFILE" - --destination "${CI_REGISTRY_IMAGE}/${IMAGE_NAME}:${TAG}" $BUILD_ARGS - - echo "Image pushed to ${CI_REGISTRY_IMAGE}/${IMAGE_NAME}:${TAG}" + --destination "${IMAGE_DESTINATION}" $BUILD_ARGS + # Print the full registry path of the pushed image + - echo "Image pushed to ${IMAGE_DESTINATION}" environment: stage: environment -- GitLab From 54a141e04d03666dac66fbcee66eddd4b1e8beca Mon Sep 17 00:00:00 2001 From: Lorenzo Del Pianta <lorenzo.del.pianta.perez@cern.ch> Date: Tue, 4 Feb 2025 10:37:01 +0100 Subject: [PATCH 2/9] Update .gitlab-ci.yml file --- .gitlab-ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index ab25a6b42..7636618bd 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -10,8 +10,8 @@ stages: # The kaniko debug image is recommended because it has a shell, and a shell is required for an image to be used with GitLab CI/CD. name: gcr.io/kaniko-project/executor:debug entrypoint: [""] - variables: - IMAGE_DESTINATION: "${CI_REGISTRY_IMAGE}/${IMAGE_NAME}:${TAG}" + variables: + IMAGE_DESTINATION: "${CI_REGISTRY_IMAGE}/${IMAGE_NAME}:${TAG}" script: # This is not the common Authentication config, unknown reason why common config fails - echo "{\"auths\":{\"$CI_REGISTRY\":{\"username\":\"$CI_REGISTRY_USER\",\"password\":\"$CI_REGISTRY_PASSWORD\"}}}" > /kaniko/.docker/config.json -- GitLab From 2a1d73ea827ec81454e3abe88432ab94ddf630ca Mon Sep 17 00:00:00 2001 From: Lorenzo Del Pianta <lorenzo.del.pianta.perez@cern.ch> Date: Tue, 4 Feb 2025 10:39:03 +0100 Subject: [PATCH 3/9] Update .gitlab-ci.yml file --- .gitlab-ci.yml | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 7636618bd..a446297bb 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -14,10 +14,9 @@ stages: IMAGE_DESTINATION: "${CI_REGISTRY_IMAGE}/${IMAGE_NAME}:${TAG}" script: # This is not the common Authentication config, unknown reason why common config fails - - echo "{\"auths\":{\"$CI_REGISTRY\":{\"username\":\"$CI_REGISTRY_USER\",\"password\":\"$CI_REGISTRY_PASSWORD\"}}}" > /kaniko/.docker/config.json - # - echo "{\"auths\":{\"$CI_REGISTRY\":{\"auth\":\"$(echo -n ${CI_REGISTRY_USER}:${CI_REGISTRY_PASSWORD} | base64)\"}}}" > /kaniko/.docker/config.json - - /kaniko/executor --context "$CI_PROJECT_DIR/$CONTEXT_DIR" --dockerfile "$CI_PROJECT_DIR/$CONTEXT_DIR/$DOCKERFILE" - --destination "${IMAGE_DESTINATION}" $BUILD_ARGS + #- echo "{\"auths\":{\"$CI_REGISTRY\":{\"username\":\"$CI_REGISTRY_USER\",\"password\":\"$CI_REGISTRY_PASSWORD\"}}}" > /kaniko/.docker/config.json + - echo "{\"auths\":{\"$CI_REGISTRY\":{\"auth\":\"$(echo -n ${CI_REGISTRY_USER}:${CI_REGISTRY_PASSWORD} | base64)\"}}}" > /kaniko/.docker/config.json + - /kaniko/executor --context "$CI_PROJECT_DIR/$CONTEXT_DIR" --dockerfile "$CI_PROJECT_DIR/$CONTEXT_DIR/$DOCKERFILE" --destination "${IMAGE_DESTINATION}" $BUILD_ARGS # Print the full registry path of the pushed image - echo "Image pushed to ${IMAGE_DESTINATION}" -- GitLab From fc8ea8ca606e9579f167db8ead21d1332aa125a8 Mon Sep 17 00:00:00 2001 From: Lorenzo Del Pianta <lorenzo.del.pianta.perez@cern.ch> Date: Tue, 4 Feb 2025 10:40:17 +0100 Subject: [PATCH 4/9] Update .gitlab-ci.yml file --- .gitlab-ci.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index a446297bb..ba1ed0033 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -13,6 +13,7 @@ stages: variables: IMAGE_DESTINATION: "${CI_REGISTRY_IMAGE}/${IMAGE_NAME}:${TAG}" script: + - echo ${IMAGE_DESTINATION} # This is not the common Authentication config, unknown reason why common config fails #- echo "{\"auths\":{\"$CI_REGISTRY\":{\"username\":\"$CI_REGISTRY_USER\",\"password\":\"$CI_REGISTRY_PASSWORD\"}}}" > /kaniko/.docker/config.json - echo "{\"auths\":{\"$CI_REGISTRY\":{\"auth\":\"$(echo -n ${CI_REGISTRY_USER}:${CI_REGISTRY_PASSWORD} | base64)\"}}}" > /kaniko/.docker/config.json -- GitLab From 2aaf508b54220acc57aafa5bde43542d7737305e Mon Sep 17 00:00:00 2001 From: Lorenzo Del Pianta <lorenzo.del.pianta.perez@cern.ch> Date: Tue, 4 Feb 2025 10:44:53 +0100 Subject: [PATCH 5/9] Update .gitlab-ci.yml file --- .gitlab-ci.yml | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index ba1ed0033..77e31b206 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -10,16 +10,14 @@ stages: # The kaniko debug image is recommended because it has a shell, and a shell is required for an image to be used with GitLab CI/CD. name: gcr.io/kaniko-project/executor:debug entrypoint: [""] - variables: - IMAGE_DESTINATION: "${CI_REGISTRY_IMAGE}/${IMAGE_NAME}:${TAG}" script: - - echo ${IMAGE_DESTINATION} # This is not the common Authentication config, unknown reason why common config fails - #- echo "{\"auths\":{\"$CI_REGISTRY\":{\"username\":\"$CI_REGISTRY_USER\",\"password\":\"$CI_REGISTRY_PASSWORD\"}}}" > /kaniko/.docker/config.json - - echo "{\"auths\":{\"$CI_REGISTRY\":{\"auth\":\"$(echo -n ${CI_REGISTRY_USER}:${CI_REGISTRY_PASSWORD} | base64)\"}}}" > /kaniko/.docker/config.json - - /kaniko/executor --context "$CI_PROJECT_DIR/$CONTEXT_DIR" --dockerfile "$CI_PROJECT_DIR/$CONTEXT_DIR/$DOCKERFILE" --destination "${IMAGE_DESTINATION}" $BUILD_ARGS + - echo "{\"auths\":{\"$CI_REGISTRY\":{\"username\":\"$CI_REGISTRY_USER\",\"password\":\"$CI_REGISTRY_PASSWORD\"}}}" > /kaniko/.docker/config.json + # - echo "{\"auths\":{\"$CI_REGISTRY\":{\"auth\":\"$(echo -n ${CI_REGISTRY_USER}:${CI_REGISTRY_PASSWORD} | base64)\"}}}" > /kaniko/.docker/config.json + - /kaniko/executor --context "$CI_PROJECT_DIR/$CONTEXT_DIR" --dockerfile "$CI_PROJECT_DIR/$CONTEXT_DIR/$DOCKERFILE" + --destination "${CI_REGISTRY_IMAGE}/${IMAGE_NAME}:${TAG}" $BUILD_ARGS # Print the full registry path of the pushed image - - echo "Image pushed to ${IMAGE_DESTINATION}" + - echo "Image pushed to "${CI_REGISTRY_IMAGE}/${IMAGE_NAME}:${TAG}" environment: stage: environment -- GitLab From c87dd1876c826be14c2097c56ce3e06bfd8738ad Mon Sep 17 00:00:00 2001 From: Lorenzo Del Pianta <lorenzo.del.pianta.perez@cern.ch> Date: Tue, 4 Feb 2025 10:52:23 +0100 Subject: [PATCH 6/9] Update .gitlab-ci.yml --- .gitlab-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 77e31b206..c2603b347 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -17,7 +17,7 @@ stages: - /kaniko/executor --context "$CI_PROJECT_DIR/$CONTEXT_DIR" --dockerfile "$CI_PROJECT_DIR/$CONTEXT_DIR/$DOCKERFILE" --destination "${CI_REGISTRY_IMAGE}/${IMAGE_NAME}:${TAG}" $BUILD_ARGS # Print the full registry path of the pushed image - - echo "Image pushed to "${CI_REGISTRY_IMAGE}/${IMAGE_NAME}:${TAG}" + - echo "Image pushed to ${CI_REGISTRY_IMAGE}/${IMAGE_NAME}:${TAG}" environment: stage: environment -- GitLab From cf209ef87e91ad54a96cec47b1f16b043e5603f1 Mon Sep 17 00:00:00 2001 From: Lorenzo Del Pianta <lorenzo.del.pianta.perez@cern.ch> Date: Tue, 4 Feb 2025 10:55:34 +0100 Subject: [PATCH 7/9] Update .gitlab-ci.yml --- .gitlab-ci.yml | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index c2603b347..be7f76fec 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -11,13 +11,16 @@ stages: name: gcr.io/kaniko-project/executor:debug entrypoint: [""] script: - # This is not the common Authentication config, unknown reason why common config fails + # define script variables, they are passed in build time + - IMAGE_DESTINATION = ${CI_REGISTRY_IMAGE}/${IMAGE_NAME}:${TAG} + # Prepare Kaniko configuration file - echo "{\"auths\":{\"$CI_REGISTRY\":{\"username\":\"$CI_REGISTRY_USER\",\"password\":\"$CI_REGISTRY_PASSWORD\"}}}" > /kaniko/.docker/config.json - # - echo "{\"auths\":{\"$CI_REGISTRY\":{\"auth\":\"$(echo -n ${CI_REGISTRY_USER}:${CI_REGISTRY_PASSWORD} | base64)\"}}}" > /kaniko/.docker/config.json - - /kaniko/executor --context "$CI_PROJECT_DIR/$CONTEXT_DIR" --dockerfile "$CI_PROJECT_DIR/$CONTEXT_DIR/$DOCKERFILE" + # Build and push the image from the Dockerfile at the root of the project. + - /kaniko/executor --context "$CI_PROJECT_DIR/$CONTEXT_DIR" --dockerfile "$CI_PROJECT_DIR/$CONTEXT_DIR/$DOCKERFILE" --destination "${CI_REGISTRY_IMAGE}/${IMAGE_NAME}:${TAG}" $BUILD_ARGS # Print the full registry path of the pushed image - echo "Image pushed to ${CI_REGISTRY_IMAGE}/${IMAGE_NAME}:${TAG}" + - echo "${IMAGE_DESTINATION}" environment: stage: environment -- GitLab From 6e52c620598e1b2bb4f06f516f0627f19d449ca0 Mon Sep 17 00:00:00 2001 From: Lorenzo Del Pianta <lorenzo.del.pianta.perez@cern.ch> Date: Tue, 4 Feb 2025 10:59:01 +0100 Subject: [PATCH 8/9] Update .gitlab-ci.yml file --- .gitlab-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index be7f76fec..795efbab2 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -12,7 +12,7 @@ stages: entrypoint: [""] script: # define script variables, they are passed in build time - - IMAGE_DESTINATION = ${CI_REGISTRY_IMAGE}/${IMAGE_NAME}:${TAG} + - IMAGE_DESTINATION=${CI_REGISTRY_IMAGE}/${IMAGE_NAME}:${TAG} # Prepare Kaniko configuration file - echo "{\"auths\":{\"$CI_REGISTRY\":{\"username\":\"$CI_REGISTRY_USER\",\"password\":\"$CI_REGISTRY_PASSWORD\"}}}" > /kaniko/.docker/config.json # Build and push the image from the Dockerfile at the root of the project. -- GitLab From 17be7eb7aa7c2106f641cac2d3f903b76e617465 Mon Sep 17 00:00:00 2001 From: Lorenzo Del Pianta <lorenzo.del.pianta.perez@cern.ch> Date: Tue, 4 Feb 2025 11:01:23 +0100 Subject: [PATCH 9/9] Update .gitlab-ci.yml file with better syntax --- .gitlab-ci.yml | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 795efbab2..0607c8ed6 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -16,11 +16,9 @@ stages: # Prepare Kaniko configuration file - echo "{\"auths\":{\"$CI_REGISTRY\":{\"username\":\"$CI_REGISTRY_USER\",\"password\":\"$CI_REGISTRY_PASSWORD\"}}}" > /kaniko/.docker/config.json # Build and push the image from the Dockerfile at the root of the project. - - /kaniko/executor --context "$CI_PROJECT_DIR/$CONTEXT_DIR" --dockerfile "$CI_PROJECT_DIR/$CONTEXT_DIR/$DOCKERFILE" - --destination "${CI_REGISTRY_IMAGE}/${IMAGE_NAME}:${TAG}" $BUILD_ARGS + - /kaniko/executor --context "$CI_PROJECT_DIR/$CONTEXT_DIR" --dockerfile "$CI_PROJECT_DIR/$CONTEXT_DIR/$DOCKERFILE" --destination "${IMAGE_DESTINATION}" $BUILD_ARGS # Print the full registry path of the pushed image - - echo "Image pushed to ${CI_REGISTRY_IMAGE}/${IMAGE_NAME}:${TAG}" - - echo "${IMAGE_DESTINATION}" + - echo "Image pushed to ${IMAGE_DESTINATION}" environment: stage: environment -- GitLab