build arm32v6

This commit is contained in:
Florian Schwab 2019-07-06 12:29:11 +02:00
parent a8f9854c63
commit 5b4af84bd2

View file

@ -7,7 +7,7 @@ stages:
- release
variables:
QEMU_VERSION: v4.0.0
QEMU_VERSION: v4.0.0-5
before_script:
- mkdir -p /root/.docker || true
@ -22,6 +22,14 @@ build-amd64:
- docker build --build-arg ARCH=amd64 -t ${CI_REGISTRY_IMAGE}:${CI_PIPELINE_ID}-amd64 .
- docker push ${CI_REGISTRY_IMAGE}:${CI_PIPELINE_ID}-amd64
build-arm32v6:
stage: build
script:
- wget https://github.com/multiarch/qemu-user-static/releases/download/${QEMU_VERSION}/qemu-arm-static -O qemu-arm-static
- chmod 554 qemu-arm-static
- docker build --build-arg ARCH=arm32v6 -t ${CI_REGISTRY_IMAGE}:${CI_PIPELINE_ID}-arm32v6 .
- docker push ${CI_REGISTRY_IMAGE}:${CI_PIPELINE_ID}-arm32v6
build-arm32v7:
stage: build
script:
@ -33,9 +41,9 @@ build-arm32v7:
build-arm64v8:
stage: build
script:
- wget https://github.com/multiarch/qemu-user-static/releases/download/${QEMU_VERSION}/qemu-arm-static -O qemu-arm-static
- chmod 554 qemu-arm-static
- docker build --build-arg ARCH=arm32v7 -t ${CI_REGISTRY_IMAGE}:${CI_PIPELINE_ID}-arm64v8 .
- wget https://github.com/multiarch/qemu-user-static/releases/download/${QEMU_VERSION}/qemu-aarch64-static -O qemu-arm-static
- chmod 554 qemu-aarch64-static
- docker build --build-arg ARCH=arm64v8 -t ${CI_REGISTRY_IMAGE}:${CI_PIPELINE_ID}-arm64v8 .
- docker push ${CI_REGISTRY_IMAGE}:${CI_PIPELINE_ID}-arm64v8
release:
@ -44,14 +52,18 @@ release:
- docker pull ${CI_REGISTRY_IMAGE}:${CI_PIPELINE_ID}-amd64
- docker tag ${CI_REGISTRY_IMAGE}:${CI_PIPELINE_ID}-amd64 ${CI_REGISTRY_IMAGE}:latest-amd64
- docker push ${CI_REGISTRY_IMAGE}:latest-amd64
- docker pull ${CI_REGISTRY_IMAGE}:${CI_PIPELINE_ID}-arm32v6
- docker tag ${CI_REGISTRY_IMAGE}:${CI_PIPELINE_ID}-arm32v6 ${CI_REGISTRY_IMAGE}:latest-arm32v6
- docker push ${CI_REGISTRY_IMAGE}:latest-arm32v6
- docker pull ${CI_REGISTRY_IMAGE}:${CI_PIPELINE_ID}-arm32v7
- docker tag ${CI_REGISTRY_IMAGE}:${CI_PIPELINE_ID}-arm32v7 ${CI_REGISTRY_IMAGE}:latest-arm32v7
- docker push ${CI_REGISTRY_IMAGE}:latest-arm32v7
- docker pull ${CI_REGISTRY_IMAGE}:${CI_PIPELINE_ID}-arm64v8
- docker tag ${CI_REGISTRY_IMAGE}:${CI_PIPELINE_ID}-arm64v8 ${CI_REGISTRY_IMAGE}:latest-arm64v8
- docker push ${CI_REGISTRY_IMAGE}:latest-arm64v8
- docker manifest create ${CI_REGISTRY_IMAGE}:latest ${CI_REGISTRY_IMAGE}:${CI_PIPELINE_ID}-amd64 ${CI_REGISTRY_IMAGE}:${CI_PIPELINE_ID}-arm32v7 ${CI_REGISTRY_IMAGE}:${CI_PIPELINE_ID}-arm64v8
- docker manifest create ${CI_REGISTRY_IMAGE}:latest ${CI_REGISTRY_IMAGE}:${CI_PIPELINE_ID}-amd64 ${CI_REGISTRY_IMAGE}:${CI_PIPELINE_ID}-arm32v6 ${CI_REGISTRY_IMAGE}:${CI_PIPELINE_ID}-arm32v7 ${CI_REGISTRY_IMAGE}:${CI_PIPELINE_ID}-arm64v8
- docker manifest annotate --os linux --arch amd64 ${CI_REGISTRY_IMAGE}:latest ${CI_REGISTRY_IMAGE}:${CI_PIPELINE_ID}-amd64
- docker manifest annotate --os linux --arch arm --variant v6 ${CI_REGISTRY_IMAGE}:latest ${CI_REGISTRY_IMAGE}:${CI_PIPELINE_ID}-arm32v6
- docker manifest annotate --os linux --arch arm --variant v7 ${CI_REGISTRY_IMAGE}:latest ${CI_REGISTRY_IMAGE}:${CI_PIPELINE_ID}-arm32v7
- docker manifest annotate --os linux --arch arm64 --variant v8 ${CI_REGISTRY_IMAGE}:latest ${CI_REGISTRY_IMAGE}:${CI_PIPELINE_ID}-arm64v8
- docker manifest push ${CI_REGISTRY_IMAGE}:latest