From ca462e64726b3ff84749d14ba9a473ce2ff99734 Mon Sep 17 00:00:00 2001 From: Adrian Kosmaczewski Date: Thu, 20 Jul 2023 09:53:30 +0200 Subject: [PATCH 1/4] Adding support for ARM images --- .gitlab-ci.yml | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index ac5eaf2..9def4a7 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -4,8 +4,10 @@ services: before_script: - apk --no-cache -q add curl jq variables: - CI_REGISTRY_IMAGE: antora/antora + CI_REGISTRY_IMAGE: akosma/antora CI_REGISTRY_TAGS_RESOURCE: https://registry.hub.docker.com/v2/repositories/$CI_REGISTRY_IMAGE/tags/?page_size=25 + BUILDX_VERSION: "v0.11.2" + BUILDX_ARCH: "linux-amd64" .defs: - &set_antora_version ANTORA_VERSION=${ANTORA_VERSION:-$(curl -s 'https://gitlab.com/api/v4/projects/4180516/repository/tags?order_by=updated&sort=desc&per_page=1' | jq -rM '.[].name[1:]')} @@ -13,32 +15,36 @@ variables: sed -i "s/@latest/@$ANTORA_VERSION/g" Dockerfile - &sub_node_version | [ ${ANTORA_VERSION%%.*} -lt 3 ] && sed -i "s/^FROM node:16-/FROM node:10-/" Dockerfile +- &download_buildx + wget -O /usr/bin/docker-buildx https://github.com/docker/buildx/releases/download/${BUILDX_VERSION}/buildx-${BUILDX_VERSION}.${BUILDX_ARCH} && chmod +x /usr/bin/docker-buildx && docker-buildx create --use - &docker_build - docker build --pull -t "$CI_REGISTRY_IMAGE:$ANTORA_VERSION" . + docker-buildx build --platform linux/amd64,linux/arm64/v8 --tag "$CI_REGISTRY_IMAGE:$ANTORA_VERSION" . - &docker_list_image docker images "$CI_REGISTRY_IMAGE:$ANTORA_VERSION" build: stage: build rules: - - if: $CI_PROJECT_PATH == 'antora/docker-antora' && $CI_COMMIT_BRANCH == 'main' + - if: $CI_COMMIT_BRANCH == 'main' when: never - when: on_success script: - *set_antora_version - *sub_antora_version - *sub_node_version + - *download_buildx - *docker_build - *docker_list_image deploy: stage: deploy rules: - - if: $CI_PROJECT_PATH == 'antora/docker-antora' && $CI_COMMIT_BRANCH == 'main' + - if: $CI_COMMIT_BRANCH == 'main' script: - echo "Antora version requested:" ${ANTORA_VERSION:-none} - *set_antora_version - echo "Antora version resolved:" $ANTORA_VERSION - *sub_antora_version - *sub_node_version + - *download_buildx - *docker_build - *docker_list_image - | @@ -54,7 +60,7 @@ deploy: done - echo "$CI_REGISTRY_PASSWORD" | docker login -u "$CI_REGISTRY_USER" --password-stdin "$CI_REGISTRY" - echo "Publishing $CI_REGISTRY_IMAGE:$ANTORA_VERSION" - - docker push "$CI_REGISTRY_IMAGE:$ANTORA_VERSION" + - docker-buildx build --push --platform linux/amd64,linux/arm64/v8 --tag "$CI_REGISTRY_IMAGE:$ANTORA_VERSION" . - | if [ -z "${ANTORA_VERSION/*-*}" ]; then CI_REGISTRY_IMAGE_TAG=testing @@ -62,5 +68,4 @@ deploy: CI_REGISTRY_IMAGE_TAG=latest fi - echo "Tagging $CI_REGISTRY_IMAGE:$ANTORA_VERSION as $CI_REGISTRY_IMAGE_TAG" - - docker tag "$CI_REGISTRY_IMAGE:$ANTORA_VERSION" "$CI_REGISTRY_IMAGE:$CI_REGISTRY_IMAGE_TAG" - - docker push "$CI_REGISTRY_IMAGE:$CI_REGISTRY_IMAGE_TAG" + - docker-buildx build --push --platform linux/amd64,linux/arm64/v8 --tag "$CI_REGISTRY_IMAGE:$CI_REGISTRY_IMAGE_TAG" . -- GitLab From 1d26b3f046bf70c725763d0b30804360b0bd2697 Mon Sep 17 00:00:00 2001 From: Adrian Kosmaczewski Date: Thu, 20 Jul 2023 09:59:35 +0200 Subject: [PATCH 2/4] Removing step --- .gitlab-ci.yml | 4 ---- 1 file changed, 4 deletions(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 9def4a7..5544aaf 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -19,8 +19,6 @@ variables: wget -O /usr/bin/docker-buildx https://github.com/docker/buildx/releases/download/${BUILDX_VERSION}/buildx-${BUILDX_VERSION}.${BUILDX_ARCH} && chmod +x /usr/bin/docker-buildx && docker-buildx create --use - &docker_build docker-buildx build --platform linux/amd64,linux/arm64/v8 --tag "$CI_REGISTRY_IMAGE:$ANTORA_VERSION" . -- &docker_list_image - docker images "$CI_REGISTRY_IMAGE:$ANTORA_VERSION" build: stage: build rules: @@ -33,7 +31,6 @@ build: - *sub_node_version - *download_buildx - *docker_build - - *docker_list_image deploy: stage: deploy rules: @@ -46,7 +43,6 @@ deploy: - *sub_node_version - *download_buildx - *docker_build - - *docker_list_image - | while [ -n "$CI_REGISTRY_TAGS_RESOURCE" ]; do _tags=$(curl -s $CI_REGISTRY_TAGS_RESOURCE) -- GitLab From 41b11a6355cd1e7f7e99dd4bb660794e83d7d4d3 Mon Sep 17 00:00:00 2001 From: Adrian Kosmaczewski Date: Thu, 20 Jul 2023 10:04:44 +0200 Subject: [PATCH 3/4] Removing extra step --- .gitlab-ci.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 5544aaf..1e5bb12 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -42,7 +42,6 @@ deploy: - *sub_antora_version - *sub_node_version - *download_buildx - - *docker_build - | while [ -n "$CI_REGISTRY_TAGS_RESOURCE" ]; do _tags=$(curl -s $CI_REGISTRY_TAGS_RESOURCE) -- GitLab From db8a1517785d57e56b5ed502b862f4ff1592d89b Mon Sep 17 00:00:00 2001 From: Adrian Kosmaczewski Date: Thu, 20 Jul 2023 10:24:37 +0200 Subject: [PATCH 4/4] Actual image name --- .gitlab-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 1e5bb12..5fcc0d9 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -4,7 +4,7 @@ services: before_script: - apk --no-cache -q add curl jq variables: - CI_REGISTRY_IMAGE: akosma/antora + CI_REGISTRY_IMAGE: antora/antora CI_REGISTRY_TAGS_RESOURCE: https://registry.hub.docker.com/v2/repositories/$CI_REGISTRY_IMAGE/tags/?page_size=25 BUILDX_VERSION: "v0.11.2" BUILDX_ARCH: "linux-amd64" -- GitLab