diff --git a/templates/build-arg-docker.yml b/templates/build-arg-docker.yml new file mode 100644 index 0000000000000000000000000000000000000000..7e344b4797684d3f09978de3127fadacc0bfcb0b --- /dev/null +++ b/templates/build-arg-docker.yml @@ -0,0 +1,17 @@ +include: + - project: 'patrinat-tools/ci-cd' + ref: master + file: '/templates/images-docker.yml' + +.build-docker: + extends: .nexus + script: + - > + docker build + --pull + --quiet + --build-arg $BUILD_ARG + --cache-from $PATRINAT_REGISTRY/$CI_IMAGE:$TAG_CACHE + --tag $PATRINAT_REGISTRY/$CI_IMAGE:$TAG_BUILD + . + - docker push $PATRINAT_REGISTRY/$CI_IMAGE:$TAG_BUILD diff --git a/templates/build-docker.yml b/templates/build-docker.yml index a8e7273c70683a0e6728efac2b8a1334c58f9ab9..6893567cd2b199cd35cf0d3f15759bebf5f77ebb 100644 --- a/templates/build-docker.yml +++ b/templates/build-docker.yml @@ -1,3 +1,8 @@ +include: + - project: 'patrinat-tools/ci-cd' + ref: master + file: '/templates/images-docker.yml' + .build-docker: extends: .nexus script: @@ -9,35 +14,3 @@ --tag $PATRINAT_REGISTRY/$CI_IMAGE:$TAG_BUILD . - docker push $PATRINAT_REGISTRY/$CI_IMAGE:$TAG_BUILD - -🐳 image-test: - extends: .build-docker - stage: push - rules: - - if: '$CI_COMMIT_BRANCH =~ /^(?:sprint|(?:hot)?fix(?:es)?|feature)-.+/' - variables: - TAG_BUILD: test - TAG_CACHE: test - -🐳 image-preprod: - extends: .build-docker - stage: push - rules: - - if: '$CI_COMMIT_BRANCH == "master"' - - if: $CI_COMMIT_TAG - when: never - variables: - TAG_BUILD: preprod - TAG_CACHE: preprod - -🐳 image-prod: - extends: .build-docker - stage: push - rules: - - if: $CI_COMMIT_TAG - variables: - TAG_BUILD: $CI_COMMIT_REF_NAME - TAG_CACHE: latest - after_script: - - docker tag $PATRINAT_REGISTRY/$CI_IMAGE:$CI_COMMIT_REF_NAME $PATRINAT_REGISTRY/$CI_IMAGE:latest - - docker push $PATRINAT_REGISTRY/$CI_IMAGE:latest diff --git a/templates/docker-registry.yml b/templates/docker-registry.yml index 3ac003bf33f09b307fe5d1c5f87d816ec8eb45c5..4a93e3b70deacc3c0eb7244976a2b87ecf2d8365 100644 --- a/templates/docker-registry.yml +++ b/templates/docker-registry.yml @@ -1,7 +1,7 @@ .docker: - image: docker:18 + image: outils-patrinat.mnhn.fr/docker:18 services: - - name: docker:18.09.5-dind + - name: outils-patrinat.mnhn.fr/docker:18-dind tags: - docker-images diff --git a/templates/images-docker.yml b/templates/images-docker.yml new file mode 100644 index 0000000000000000000000000000000000000000..b6cf7e4e96bcc56d1b3cf8a0aa584ae498f66bf1 --- /dev/null +++ b/templates/images-docker.yml @@ -0,0 +1,31 @@ +🐳 image-test: + extends: .build-docker + stage: push + rules: + - if: '$CI_COMMIT_BRANCH =~ /^(?:sprint|(?:hot)?fix(?:es)?|feature)-.+/' + variables: + TAG_BUILD: test + TAG_CACHE: test + +🐳 image-preprod: + extends: .build-docker + stage: push + rules: + - if: '$CI_COMMIT_BRANCH == "master"' + - if: $CI_COMMIT_TAG + when: never + variables: + TAG_BUILD: preprod + TAG_CACHE: preprod + +🐳 image-prod: + extends: .build-docker + stage: push + rules: + - if: $CI_COMMIT_TAG + variables: + TAG_BUILD: $CI_COMMIT_REF_NAME + TAG_CACHE: latest + after_script: + - docker tag $PATRINAT_REGISTRY/$CI_IMAGE:$CI_COMMIT_REF_NAME $PATRINAT_REGISTRY/$CI_IMAGE:latest + - docker push $PATRINAT_REGISTRY/$CI_IMAGE:latest