2021-04-02 13:59:47 +02:00
|
|
|
version: 2.1
|
|
|
|
|
|
|
|
jobs:
|
2021-07-01 08:18:04 +02:00
|
|
|
canary:
|
2021-07-09 08:14:35 +02:00
|
|
|
machine:
|
|
|
|
image: ubuntu-1604:202007-01
|
2021-04-02 13:59:47 +02:00
|
|
|
working_directory: ~/docker-volume-backup
|
|
|
|
steps:
|
|
|
|
- checkout
|
|
|
|
- run:
|
|
|
|
name: Build
|
2021-07-01 08:18:04 +02:00
|
|
|
command: |
|
|
|
|
docker build . -t offen/docker-volume-backup:canary
|
2021-04-02 13:59:47 +02:00
|
|
|
- run:
|
2021-07-09 08:14:35 +02:00
|
|
|
name: Run tests
|
2021-04-02 13:59:47 +02:00
|
|
|
command: |
|
2021-07-11 09:43:16 +02:00
|
|
|
for test in test/**/run.sh; do
|
|
|
|
echo "################################################"
|
|
|
|
echo "Now running $test"
|
|
|
|
echo "################################################"
|
|
|
|
echo ""
|
2021-07-09 09:21:42 +02:00
|
|
|
/bin/sh $test
|
2021-07-11 09:43:16 +02:00
|
|
|
echo ""
|
|
|
|
echo "$test passed"
|
|
|
|
echo ""
|
2021-07-09 08:14:35 +02:00
|
|
|
done
|
2021-07-01 08:18:04 +02:00
|
|
|
|
|
|
|
build:
|
|
|
|
docker:
|
|
|
|
- image: cimg/base:2020.06
|
|
|
|
environment:
|
|
|
|
DOCKER_BUILDKIT: '1'
|
|
|
|
DOCKER_CLI_EXPERIMENTAL: enabled
|
|
|
|
working_directory: ~/docker-volume-backup
|
|
|
|
steps:
|
|
|
|
- checkout
|
|
|
|
- setup_remote_docker:
|
|
|
|
version: 20.10.6
|
2021-04-02 13:59:47 +02:00
|
|
|
- docker/install-docker-credential-helper
|
|
|
|
- docker/configure-docker-credentials-store
|
|
|
|
- run:
|
|
|
|
name: Push to Docker Hub
|
|
|
|
command: |
|
|
|
|
echo "$DOCKER_ACCESSTOKEN" | docker login --username offen --password-stdin
|
2021-07-01 08:18:04 +02:00
|
|
|
# This is required for building ARM: https://gitlab.alpinelinux.org/alpine/aports/-/issues/12406
|
|
|
|
docker run --rm --privileged linuxkit/binfmt:v0.8
|
|
|
|
docker context create docker-volume-backup
|
|
|
|
docker buildx create docker-volume-backup --name docker-volume-backup --use
|
|
|
|
docker buildx inspect --bootstrap
|
2021-07-01 15:16:39 +02:00
|
|
|
docker buildx build --platform linux/amd64,linux/arm64,linux/arm/v7 \
|
2021-07-01 08:18:04 +02:00
|
|
|
-t offen/docker-volume-backup:$CIRCLE_TAG \
|
|
|
|
-t offen/docker-volume-backup:latest \
|
|
|
|
. --push
|
2021-04-02 13:59:47 +02:00
|
|
|
|
|
|
|
workflows:
|
|
|
|
version: 2
|
2021-07-01 08:18:04 +02:00
|
|
|
docker_image:
|
2021-04-02 13:59:47 +02:00
|
|
|
jobs:
|
2021-07-01 08:18:04 +02:00
|
|
|
- canary:
|
|
|
|
filters:
|
|
|
|
tags:
|
|
|
|
ignore: /^v.*/
|
2021-04-02 14:23:59 +02:00
|
|
|
- build:
|
|
|
|
filters:
|
2021-07-01 08:18:04 +02:00
|
|
|
branches:
|
|
|
|
ignore: /.*/
|
2021-04-02 14:23:59 +02:00
|
|
|
tags:
|
|
|
|
only: /^v.*/
|
2021-04-02 13:59:47 +02:00
|
|
|
|
|
|
|
orbs:
|
|
|
|
docker: circleci/docker@1.0.1
|