Files
docker-buildx-qemu/original-gitlab-ci.yml
2020-07-06 14:39:41 +10:00

47 lines
1.2 KiB
YAML

image: jonoh/docker-buildx-qemu
variables:
DOCKER_HOST: tcp://docker:2375/
PLATFORM: local
DOCKER_IMAGE_TAG: latest
DOCKER_PREBUILD_CMD: echo
services:
- docker:dind
.docker_before_script: &docker_before_script
- docker login -u "$CI_REGISTRY_USER" -p "$CI_REGISTRY_PASSWORD" $CI_REGISTRY
- docker pull "$CI_REGISTRY_IMAGE" || true
- '[[ "$PLATFORM" != "local" ]] && update-binfmts --enable'
# Use docker-container driver to allow useful features (push/multi-platform)
- docker buildx create --driver docker-container --use
- docker buildx inspect --bootstrap
build:
stage: build
before_script: *docker_before_script
script:
- $DOCKER_PREBUILD_CMD
- docker buildx build
--pull
--cache-from "$CI_REGISTRY_IMAGE"
--platform "$PLATFORM"
-t "$CI_REGISTRY_IMAGE:$DOCKER_IMAGE_TAG"
--push $EXTRA_BUILD_ARGS .
only:
- master
build-unstable:
stage: build
before_script: *docker_before_script
script:
- $DOCKER_PREBUILD_CMD
- docker buildx build
--pull
--cache-from "$CI_REGISTRY_IMAGE"
--platform "$PLATFORM"
-t "$CI_REGISTRY_IMAGE:$CI_COMMIT_REF_SLUG"
--push $EXTRA_BUILD_ARGS .
except:
- master