From 4667e6bd21698a71b5685b60e7f6a92d48974852 Mon Sep 17 00:00:00 2001 From: Hugo SUBTIL <ext.sopra.husubtil@grandlyon.com> Date: Wed, 9 Feb 2022 09:01:39 +0100 Subject: [PATCH 1/9] feat(cicd): better handling for docker rate limit --- .gitlab-ci.yml | 2 +- Dockerfile | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 4fce8137e..fee5dcc36 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -10,7 +10,7 @@ build_branch: stage: build script: - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY - - docker build --pull -t "$CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG" --build-arg conf=prod . + - docker build --pull -t "feat/$CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG" --build-arg conf=prod . - docker push "$CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG" build: diff --git a/Dockerfile b/Dockerfile index 493f745e9..ed43a52e7 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,5 +1,6 @@ # Stage 0, based on Node.js, to build and compile Angular -FROM node:14.18-slim as build +ARG DEPENDENCY_PROXY= +FROM ${DEPENDENCY_PROXY}node:14.18-slim as build WORKDIR /app @@ -24,7 +25,7 @@ ARG conf RUN npm run build:prod # Stage 1, based on Nginx, to have only the compiled app -FROM nginx +FROM ${DEPENDENCY_PROXY}nginx # copy artifact build from the 'build environment' RUN apt-get update -- GitLab From 0de1c8d183c46c128f4332b3eec209994c157ab1 Mon Sep 17 00:00:00 2001 From: Hugo SUBTIL <ext.sopra.husubtil@grandlyon.com> Date: Wed, 9 Feb 2022 10:55:59 +0100 Subject: [PATCH 2/9] fix --- .gitlab-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index fee5dcc36..20d777b0c 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -11,7 +11,7 @@ build_branch: script: - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY - docker build --pull -t "feat/$CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG" --build-arg conf=prod . - - docker push "$CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG" + - docker push "feat/$CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG" build: image: ${CI_DEPENDENCY_PROXY_DIRECT_GROUP_IMAGE_PREFIX}/docker:18.09 -- GitLab From 3b00c71e0aeb7c183dfea2e43739c3877597ac69 Mon Sep 17 00:00:00 2001 From: Hugo SUBTIL <ext.sopra.husubtil@grandlyon.com> Date: Wed, 9 Feb 2022 11:01:41 +0100 Subject: [PATCH 3/9] fix --- .gitlab-ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 20d777b0c..d36d9753a 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -10,8 +10,8 @@ build_branch: stage: build script: - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY - - docker build --pull -t "feat/$CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG" --build-arg conf=prod . - - docker push "feat/$CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG" + - docker build --pull -t "$CI_REGISTRY_IMAGE:feat/$CI_COMMIT_REF_SLUG" --build-arg conf=prod . + - docker push "$CI_REGISTRY_IMAGE:feat/$CI_COMMIT_REF_SLUG" build: image: ${CI_DEPENDENCY_PROXY_DIRECT_GROUP_IMAGE_PREFIX}/docker:18.09 -- GitLab From 8bc7e84d55a92786ae11f989e8d79a297a042602 Mon Sep 17 00:00:00 2001 From: Hugo SUBTIL <ext.sopra.husubtil@grandlyon.com> Date: Wed, 9 Feb 2022 11:05:12 +0100 Subject: [PATCH 4/9] fix --- .gitlab-ci.yml | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index d36d9753a..2b655b047 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -3,10 +3,13 @@ stages: - build - deploy +variables: + DEPENDENCY_PROXY: ${CI_DEPENDENCY_PROXY_DIRECT_GROUP_IMAGE_PREFIX}/ + build_branch: image: ${CI_DEPENDENCY_PROXY_DIRECT_GROUP_IMAGE_PREFIX}/docker:18.09 services: - - docker:18.09-dind + - ${CI_DEPENDENCY_PROXY_DIRECT_GROUP_IMAGE_PREFIX}/docker:18.09-dind stage: build script: - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY @@ -16,7 +19,7 @@ build_branch: build: image: ${CI_DEPENDENCY_PROXY_DIRECT_GROUP_IMAGE_PREFIX}/docker:18.09 services: - - docker:18.09-dind + - ${CI_DEPENDENCY_PROXY_DIRECT_GROUP_IMAGE_PREFIX}/:18.09-dind stage: build only: - master @@ -29,7 +32,7 @@ build: build_dev: image: ${CI_DEPENDENCY_PROXY_DIRECT_GROUP_IMAGE_PREFIX}/docker:18.09 services: - - docker:18.09-dind + - ${CI_DEPENDENCY_PROXY_DIRECT_GROUP_IMAGE_PREFIX}/docker:18.09-dind stage: build only: - dev @@ -41,7 +44,7 @@ build_dev: build_json_server: image: ${CI_DEPENDENCY_PROXY_DIRECT_GROUP_IMAGE_PREFIX}/docker:18.09 services: - - docker:18.09-dind + - ${CI_DEPENDENCY_PROXY_DIRECT_GROUP_IMAGE_PREFIX}/docker:18.09-dind stage: build only: - dev -- GitLab From a92b96119996d7e24970543b794aa8b5d2ef2497 Mon Sep 17 00:00:00 2001 From: Hugo SUBTIL <ext.sopra.husubtil@grandlyon.com> Date: Wed, 9 Feb 2022 11:06:15 +0100 Subject: [PATCH 5/9] fix --- .gitlab-ci.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 2b655b047..766364ca4 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -13,8 +13,8 @@ build_branch: stage: build script: - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY - - docker build --pull -t "$CI_REGISTRY_IMAGE:feat/$CI_COMMIT_REF_SLUG" --build-arg conf=prod . - - docker push "$CI_REGISTRY_IMAGE:feat/$CI_COMMIT_REF_SLUG" + - docker build --pull -t "$CI_REGISTRY_IMAGE/feat:$CI_COMMIT_REF_SLUG" --build-arg conf=prod . + - docker push "$CI_REGISTRY_IMAGE/feat:$CI_COMMIT_REF_SLUG" build: image: ${CI_DEPENDENCY_PROXY_DIRECT_GROUP_IMAGE_PREFIX}/docker:18.09 -- GitLab From 5ddfcbb3c1e78042570c23f56c6a0db51cd9e8fe Mon Sep 17 00:00:00 2001 From: Hugo SUBTIL <ext.sopra.husubtil@grandlyon.com> Date: Wed, 9 Feb 2022 11:08:31 +0100 Subject: [PATCH 6/9] fix --- .gitlab-ci.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 766364ca4..c4d33d80c 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -4,6 +4,9 @@ stages: - deploy variables: + DOCKER_TLS_CERTDIR: '' + DOCKER_HOST: tcp://docker:2375/ + DOCKER_DRIVER: overlay2 DEPENDENCY_PROXY: ${CI_DEPENDENCY_PROXY_DIRECT_GROUP_IMAGE_PREFIX}/ build_branch: -- GitLab From eaadfb6bcbfff6cfd2947600045b09b7fce62548 Mon Sep 17 00:00:00 2001 From: Hugo SUBTIL <ext.sopra.husubtil@grandlyon.com> Date: Wed, 9 Feb 2022 11:11:07 +0100 Subject: [PATCH 7/9] fix --- .gitlab-ci.yml | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index c4d33d80c..72ceca1ac 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -3,6 +3,11 @@ stages: - build - deploy +default: + services: + - name: ${CI_DEPENDENCY_PROXY_DIRECT_GROUP_IMAGE_PREFIX}/docker:18.09-dind + alias: docker + variables: DOCKER_TLS_CERTDIR: '' DOCKER_HOST: tcp://docker:2375/ @@ -11,8 +16,6 @@ variables: build_branch: image: ${CI_DEPENDENCY_PROXY_DIRECT_GROUP_IMAGE_PREFIX}/docker:18.09 - services: - - ${CI_DEPENDENCY_PROXY_DIRECT_GROUP_IMAGE_PREFIX}/docker:18.09-dind stage: build script: - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY -- GitLab From 851a56045c351a4f671f06f2440271cd6eb6b453 Mon Sep 17 00:00:00 2001 From: Hugo SUBTIL <ext.sopra.husubtil@grandlyon.com> Date: Wed, 9 Feb 2022 11:25:41 +0100 Subject: [PATCH 8/9] fix --- .gitlab-ci.yml | 49 +++++++++++++------------------------------------ 1 file changed, 13 insertions(+), 36 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 72ceca1ac..126de71eb 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -17,6 +17,10 @@ variables: build_branch: image: ${CI_DEPENDENCY_PROXY_DIRECT_GROUP_IMAGE_PREFIX}/docker:18.09 stage: build + except: + - master + - recette + - dev script: - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY - docker build --pull -t "$CI_REGISTRY_IMAGE/feat:$CI_COMMIT_REF_SLUG" --build-arg conf=prod . @@ -35,19 +39,19 @@ build: - docker build --pull -t "$CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG" --build-arg conf=prod . - docker push "$CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG" -build_dev: +build-release: image: ${CI_DEPENDENCY_PROXY_DIRECT_GROUP_IMAGE_PREFIX}/docker:18.09 services: - - ${CI_DEPENDENCY_PROXY_DIRECT_GROUP_IMAGE_PREFIX}/docker:18.09-dind + - ${CI_DEPENDENCY_PROXY_DIRECT_GROUP_IMAGE_PREFIX}/:18.09-dind stage: build only: - - dev + - tags script: - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY - - docker build --pull -t "$CI_REGISTRY_IMAGE:dev" --build-arg conf=dev . - - docker push "$CI_REGISTRY_IMAGE:dev" + - docker build --pull -t "$CI_REGISTRY_IMAGE/tags:$CI_COMMIT_TAG" --build-arg conf=prod . + - docker push "$CI_REGISTRY_IMAGE/tags:$CI_COMMIT_TAG" -build_json_server: +build_dev: image: ${CI_DEPENDENCY_PROXY_DIRECT_GROUP_IMAGE_PREFIX}/docker:18.09 services: - ${CI_DEPENDENCY_PROXY_DIRECT_GROUP_IMAGE_PREFIX}/docker:18.09-dind @@ -56,9 +60,8 @@ build_json_server: - dev script: - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY - - docker build --pull -t "$CI_REGISTRY_IMAGE:json_server" ./api/ - - docker push "$CI_REGISTRY_IMAGE:json_server" - when: manual + - docker build --pull -t "$CI_REGISTRY_IMAGE:dev" --build-arg conf=dev . + - docker push "$CI_REGISTRY_IMAGE:dev" deploy_dev: stage: deploy @@ -73,19 +76,6 @@ deploy_dev: - docker-compose up -d web-app - docker system prune -a -f -deploy_mobile: - stage: deploy - tags: - - deploy - only: - - mobile - script: - - cd /home/mps/ram - - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY - - docker-compose pull web-app - - docker-compose up -d web-app - - docker system prune -a -f - deploy_rec: stage: deploy tags: @@ -98,6 +88,7 @@ deploy_rec: - docker-compose pull web-app-rec - docker-compose up -d web-app-rec - docker system prune -a -f + when: manual # code_analysis: # image: skilldlabs/sonar-scanner:3.4.0 @@ -130,17 +121,3 @@ mr: script: - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY - docker build --pull -t "$CI_REGISTRY_IMAGE:dev" --build-arg conf=dev . - -# Job for auto building pwa in case of issue -# Juste create a new branche 'pwa' -pwa-build: - image: ${CI_DEPENDENCY_PROXY_DIRECT_GROUP_IMAGE_PREFIX}/docker:18.09 - services: - - docker:18.09-dind - stage: build - only: - - feat/poc-pwa - script: - - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY - - docker build --pull -t "$CI_REGISTRY_IMAGE:pwa" --build-arg conf=dev . - - docker push "$CI_REGISTRY_IMAGE:pwa" -- GitLab From c8d6e4b54419549d54b6abfa0bd63823c680af62 Mon Sep 17 00:00:00 2001 From: Hugo SUBTIL <ext.sopra.husubtil@grandlyon.com> Date: Wed, 9 Feb 2022 11:27:22 +0100 Subject: [PATCH 9/9] fix --- .gitlab-ci.yml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 126de71eb..b04457137 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -75,6 +75,9 @@ deploy_dev: - docker-compose pull web-app - docker-compose up -d web-app - docker system prune -a -f + environment: + name: dev + url: https://resin-dev.grandlyon.com deploy_rec: stage: deploy @@ -89,6 +92,9 @@ deploy_rec: - docker-compose up -d web-app-rec - docker system prune -a -f when: manual + environment: + name: rec + url: https://resin-rec.grandlyon.com # code_analysis: # image: skilldlabs/sonar-scanner:3.4.0 -- GitLab