From c359846c18352976956435ca2234c80cff81d7cf Mon Sep 17 00:00:00 2001 From: Malte Bauch <malte.bauch@stud.h-da.de> Date: Tue, 22 Aug 2023 15:09:55 +0000 Subject: [PATCH] Pushing a docker image to registry sometimes fails See merge request danet/gosdn!521 --- .gitlab/ci/.build-container-images.yml | 32 +++++--------------------- 1 file changed, 6 insertions(+), 26 deletions(-) diff --git a/.gitlab/ci/.build-container-images.yml b/.gitlab/ci/.build-container-images.yml index 02153dd65..ea3ee5a32 100644 --- a/.gitlab/ci/.build-container-images.yml +++ b/.gitlab/ci/.build-container-images.yml @@ -8,66 +8,46 @@ build-controller-testing-image: script: - - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY - docker buildx build -t "$GOSDN_TESTING_IMAGE" -f "${CI_PROJECT_DIR}/controller/controller.Dockerfile" --target "builder" --build-arg "GOLANG_VERSION=$GOLANG_VERSION" --build-arg "BUILDARGS=$BUILDARGS" --build-arg "GITLAB_PROXY=${CI_DEPENDENCY_PROXY_GROUP_IMAGE_PREFIX}/" . + - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY - docker push "$GOSDN_TESTING_IMAGE" <<: *build build-controller-image: script: - - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY - docker buildx build -t "$CI_REGISTRY_IMAGE:$TAG" -f "${CI_PROJECT_DIR}/controller/controller.Dockerfile" --build-arg "GOLANG_VERSION=$GOLANG_VERSION" --build-arg "BUILDARGS=$BUILDARGS" --build-arg "GITLAB_PROXY=${CI_DEPENDENCY_PROXY_GROUP_IMAGE_PREFIX}/" . + - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY - docker push "$CI_REGISTRY_IMAGE:$TAG" - # replace all slashes in the tag with hyphen, because slashes are not allowed in tags - - NEWTAG=${CI_COMMIT_BRANCH//\//-} - - docker tag "$CI_REGISTRY_IMAGE:$TAG" "$CI_REGISTRY_IMAGE:$NEWTAG" - - docker push "$CI_REGISTRY_IMAGE:$NEWTAG" <<: *build build-cli-image: script: - CLI_IMAGE_NAME="${CI_REGISTRY_IMAGE}/gosdnc" - - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY - docker buildx build -t "$CLI_IMAGE_NAME:$TAG" -f "${CI_PROJECT_DIR}/cli/cli.Dockerfile" --build-arg "GOLANG_VERSION=$GOLANG_VERSION" --build-arg "BUILDARGS=$BUILDARGS" --build-arg "GITLAB_PROXY=${CI_DEPENDENCY_PROXY_GROUP_IMAGE_PREFIX}/" . + - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY - docker push "$CLI_IMAGE_NAME:$TAG" - # replace all slashes in the tag with hyphen, because slashes are not allowed in tags - - NEWTAG=${CI_COMMIT_BRANCH//\//-} - - docker tag "$CLI_IMAGE_NAME:$TAG" "$CLI_IMAGE_NAME:$NEWTAG" - - docker push "$CLI_IMAGE_NAME:$NEWTAG" <<: *build build-venv-manager-image: script: - VENV_MANAGER_IMAGE_NAME="${CI_REGISTRY_IMAGE}/venv-manager" - - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY - docker buildx build -t "$VENV_MANAGER_IMAGE_NAME:$TAG" -f "${CI_PROJECT_DIR}/applications/venv-manager/venv-manager.Dockerfile" --build-arg "GOLANG_VERSION=$GOLANG_VERSION" --build-arg "GITLAB_PROXY=${CI_DEPENDENCY_PROXY_GROUP_IMAGE_PREFIX}/" . + - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY - docker push "$VENV_MANAGER_IMAGE_NAME:$TAG" - # replace all slashes in the tag with hyphen, because slashes are not allowed in tags - - NEWTAG=${CI_COMMIT_BRANCH//\//-} - - docker tag "$VENV_MANAGER_IMAGE_NAME:$TAG" "$VENV_MANAGER_IMAGE_NAME:$NEWTAG" - - docker push "$VENV_MANAGER_IMAGE_NAME:$NEWTAG" <<: *build build-arista-routing-engine-image: script: - ARISTA_ROUTING_ENGINE_IMAGE_NAME="${CI_REGISTRY_IMAGE}/arista-routing-engine" - - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY - docker buildx build -t "$ARISTA_ROUTING_ENGINE_IMAGE_NAME:$TAG" -f "${CI_PROJECT_DIR}/applications/arista-routing-engine/arista-routing-engine.Dockerfile" --build-arg "GOLANG_VERSION=$GOLANG_VERSION" --build-arg "GITLAB_PROXY=${CI_DEPENDENCY_PROXY_GROUP_IMAGE_PREFIX}/" . + - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY - docker push "$ARISTA_ROUTING_ENGINE_IMAGE_NAME:$TAG" - # replace all slashes in the tag with hyphen, because slashes are not allowed in tags - - NEWTAG=${CI_COMMIT_BRANCH//\//-} - - docker tag "$ARISTA_ROUTING_ENGINE_IMAGE_NAME:$TAG" "$ARISTA_ROUTING_ENGINE_IMAGE_NAME:$NEWTAG" - - docker push "$ARISTA_ROUTING_ENGINE_IMAGE_NAME:$NEWTAG" <<: *build build-plugin-registry-image: script: - PLUGIN_REGISTRY_IMAGE_NAME="${CI_REGISTRY_IMAGE}/plugin-registry" - - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY - docker buildx build -t "$PLUGIN_REGISTRY_IMAGE_NAME:$TAG" -f "${CI_PROJECT_DIR}/plugin-registry/plugin-registry.Dockerfile" --build-arg "GOLANG_VERSION=$GOLANG_VERSION" --build-arg "GITLAB_PROXY=${CI_DEPENDENCY_PROXY_GROUP_IMAGE_PREFIX}/" . + - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY - docker push "$PLUGIN_REGISTRY_IMAGE_NAME:$TAG" - # replace all slashes in the tag with hyphen, because slashes are not allowed in tags - - NEWTAG=${CI_COMMIT_BRANCH//\//-} - - docker tag "$PLUGIN_REGISTRY_IMAGE_NAME:$TAG" "$PLUGIN_REGISTRY_IMAGE_NAME:$NEWTAG" - - docker push "$PLUGIN_REGISTRY_IMAGE_NAME:$NEWTAG" <<: *build -- GitLab