From b8dc35f7363e0336d0ea26570b3c4b65efacd3f9 Mon Sep 17 00:00:00 2001 From: Dom Sekotill Date: Wed, 10 Jul 2019 19:13:37 +0100 Subject: [PATCH 1/4] Remove an unnecessary build step Bash is no longer a CI dependency, so remove the step from each job which installs it. This was a legacy from the monolithic deployment project. --- .gitlab-ci.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 34e4422..0b5fd33 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -11,7 +11,6 @@ services: before_script: - docker info - docker login -u gitlab-ci-token -p "$CI_JOB_TOKEN" "$CI_REGISTRY" -- apk update && apk add bash .build: &build -- GitLab From d10e801af298548012d52318892c5a68a7f63301 Mon Sep 17 00:00:00 2001 From: Dom Sekotill Date: Wed, 10 Jul 2019 23:12:02 +0100 Subject: [PATCH 2/4] Remove an old VOLUME from Dockerfile A VOLUME command in the Dockerfile was left over from an older iteration of the project. --- Dockerfile | 1 - 1 file changed, 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 73a1085..40d7432 100644 --- a/Dockerfile +++ b/Dockerfile @@ -18,7 +18,6 @@ LABEL uk.org.kodo.maintainer "Dom Sekotill " ARG wp_version=latest WORKDIR /app -VOLUME /app/wp-content ENV WORDPRESS_ROOT=/app ADD https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar \ -- GitLab From 3c55ca9f5b8ecfefc73490293debf4d06e6e53fa Mon Sep 17 00:00:00 2001 From: Dom Sekotill Date: Wed, 10 Jul 2019 23:14:20 +0100 Subject: [PATCH 3/4] Push images to the registry for master & develop CI --- .gitlab-ci.yml | 21 ++++++--------------- scripts/deploy.sh | 20 ++++++++++++++++++++ 2 files changed, 26 insertions(+), 15 deletions(-) create mode 100755 scripts/deploy.sh diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 0b5fd33..26a800d 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -34,21 +34,12 @@ build-nginx: .push-tags: &push-tags stage: deploy - when: manual - script: - - version=`eval "docker run --rm - ${CI_REGISTRY_IMAGE}/${CI_JOB_NAME#push-}/build:${CI_PIPELINE_ID} - ${GET_VERSION}"` - - docker pull - ${CI_REGISTRY_IMAGE}/${CI_JOB_NAME#push-}/build:${CI_PIPELINE_ID} - - docker tag - ${CI_REGISTRY_IMAGE}/${CI_JOB_NAME#push-}/build:${CI_PIPELINE_ID} - ${CI_REGISTRY_IMAGE}/${CI_JOB_NAME#push-}:${version} - - docker tag - ${CI_REGISTRY_IMAGE}/${CI_JOB_NAME#push-}/build:${CI_PIPELINE_ID} - ${CI_REGISTRY_IMAGE}/${CI_JOB_NAME#push-}:latest - - docker push ${CI_REGISTRY_IMAGE}/${CI_JOB_NAME#push-}:${version} - - docker push ${CI_REGISTRY_IMAGE}/${CI_JOB_NAME#push-}:latest + only: [master, develop] + script: | + BUILD_REPO=${CI_REGISTRY_IMAGE}/${CI_JOB_NAME#push-}/build:${CI_PIPELINE_ID} + DEPLOY_REPO=${CI_REGISTRY_IMAGE}/${CI_JOB_NAME#push-} + VERSION=`eval "docker run --rm ${BUILD_REPO} ${GET_VERSION}"` + . scripts/deploy.sh push-fastcgi: <<: *push-tags diff --git a/scripts/deploy.sh b/scripts/deploy.sh new file mode 100755 index 0000000..8555c15 --- /dev/null +++ b/scripts/deploy.sh @@ -0,0 +1,20 @@ +#!/bin/sh +set -eu + +: ${BUILD_REPO?} +: ${DEPLOY_REPO?} + +case ${CI_COMMIT_REF_NAME-develop} in + master) tags="latest ${VERSION-}" ;; + develop) tags="unstable" ;; + *) exit 3 ;; +esac + +set -x + +docker pull ${BUILD_REPO} + +for tag in $tags; do + docker tag ${BUILD_REPO} ${DEPLOY_REPO}:${tag} + docker push ${DEPLOY_REPO}:${tag} +done -- GitLab From b650fd5fc1698bc793d183ae9ab4efed1b932d76 Mon Sep 17 00:00:00 2001 From: Dom Sekotill Date: Tue, 1 Oct 2019 23:15:50 +0100 Subject: [PATCH 4/4] Fix CI builds for docker 18.09+ --- .gitlab-ci.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 26a800d..b4fefbc 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -3,6 +3,7 @@ image: docker:stable variables: DOCKER_HOST: "tcp://docker:2375/" DOCKER_DRIVER: "overlay2" + DOCKER_TLS_CERTDIR: "" DOCKER_BUILDKIT: "1" services: -- GitLab