docker-hub-build: stage: Docker-hub-build image: docker:18.09.7-dind before_script: - docker login -u "$DOCKER_HUB_USER" -p "$DOCKER_HUB_TOKEN" $DOCKER_HUB_REGISTRY script: - cd $CI_PROJECT_DIR - apk add --no-cache curl - export SQUID_VERSION=$(curl -s http://www.squid-cache.org/Versions/v4/ | egrep -m 1 -oh squid-.*.tar.gz | cut -d '"' -f1) - docker build --build-arg SQUID_VERSION="$CI_COMMIT_BRANCH" --pull -t $CONTAINER_BUILD_NOPROD_NAME . - docker push $CONTAINER_BUILD_NOPROD_NAME variables: CONTAINER_PROD_IMAGE: $HUB_REGISTRY_IMAGE:$CI_COMMIT_BRANCH CONTAINER_CLIENT_IMAGE: debian:buster CONTAINER_TEST_NAME: squid CONTAINER_BUILD_NOPROD_NAME: $HUB_REGISTRY_IMAGE:build-noprod SQUID_VERSION: '"$SQUID_VERSION"' .services: services: - name: $CONTAINER_BUILD_NOPROD_NAME alias: squid image: $CONTAINER_CLIENT_IMAGE docker-hub-test: stage: Docker-hub-test extends: .services script: - apt update && apt install -y curl - export https_proxy=http://$CONTAINER_TEST_NAME:3128 && curl -k https://www.google.fr variables: HOSTNAME: squidpipeline push-docker-hub: stage: Docker-hub-pushtag image: docker:dind before_script: - docker login -u "$DOCKER_HUB_USER" -p "$DOCKER_HUB_TOKEN" $DOCKER_HUB_REGISTRY script: - docker pull $CONTAINER_BUILD_NOPROD_NAME - docker tag $CONTAINER_BUILD_NOPROD_NAME $CONTAINER_PROD_IMAGE - docker push $CONTAINER_PROD_IMAGE