Build with matrix to finish sooner

This commit is contained in:
Jamil Bou Kheir
2021-07-14 09:56:26 -07:00
parent db6ab7e9b9
commit bb939c61a4
11 changed files with 35 additions and 28 deletions

View File

@@ -1,10 +1,11 @@
#!/usr/bin/env bash
set -e
platform="linux/arm64,linux/amd64"
docker buildx build \
--no-cache \
--push \
--platform linux/arm64,linux/amd64 \
--platform $platform \
--tag ghcr.io/firezone/amazonlinux:2 \
--build-arg BASE_IMAGE="amazonlinux:2" \
--progress plain \

View File

@@ -1,10 +1,11 @@
#!/usr/bin/env bash
set -e
platform="linux/arm64,linux/amd64,linux/arm/v6,linux/arm/v7"
docker buildx build \
--no-cache \
--push \
--platform linux/arm64,linux/amd64 \
--platform $platform \
--tag ghcr.io/firezone/centos:7 \
--build-arg BASE_IMAGE="centos:7" \
--progress plain \

View File

@@ -1,6 +1,7 @@
#!/usr/bin/env bash
set -e
platform="linux/arm64,linux/amd64,linux/arm/v6,linux/arm/v7"
docker buildx build \
--no-cache \
--push \

View File

@@ -1,10 +1,11 @@
#!/usr/bin/env bash
set -e
platform="linux/arm64,linux/amd64,linux/arm/v6,linux/arm/v7"
docker buildx build \
--no-cache \
--push \
--platform linux/arm64,linux/amd64 \
--platform $platform \
--tag ghcr.io/firezone/debian:10 \
--build-arg BASE_IMAGE="debian:10" \
--progress plain \

View File

@@ -1,10 +1,11 @@
#!/usr/bin/env bash
set -e
platform="linux/arm64,linux/amd64,linux/arm/v6,linux/arm/v7"
docker buildx build \
--no-cache \
--push \
--platform linux/arm64,linux/amd64 \
--platform $platform \
--tag ghcr.io/firezone/fedora:33 \
--build-arg BASE_IMAGE="fedora:33" \
--progress plain \

View File

@@ -1,10 +1,11 @@
#!/usr/bin/env bash
set -e
platform="linux/arm64,linux/amd64,linux/arm/v6,linux/arm/v7"
docker buildx build \
--no-cache \
--push \
--platform linux/arm64,linux/amd64 \
--platform $platform \
--tag ghcr.io/firezone/fedora:34 \
--build-arg BASE_IMAGE="fedora:34" \
--progress plain \

View File

@@ -1,10 +1,11 @@
#!/usr/bin/env bash
set -e
platform="linux/arm64,linux/amd64,linux/arm/v6,linux/arm/v7"
docker buildx build \
--no-cache \
--push \
--platform linux/arm64,linux/amd64 \
--platform $platform \
--tag ghcr.io/firezone/fedora:35 \
--build-arg BASE_IMAGE="fedora:35" \
--progress plain \

View File

@@ -1,10 +1,11 @@
#!/usr/bin/env bash
set -e
platform="linux/arm64,linux/amd64,linux/arm/v6,linux/arm/v7"
docker buildx build \
--no-cache \
--push \
--platform linux/arm64,linux/amd64 \
--platform $platform \
--tag ghcr.io/firezone/ubuntu:18.04 \
--build-arg BASE_IMAGE="ubuntu:18.04" \
--progress plain \

View File

@@ -1,10 +1,11 @@
#!/usr/bin/env bash
set -e
platform="linux/arm64,linux/amd64,linux/arm/v6,linux/arm/v7"
docker buildx build \
--no-cache \
--push \
--platform linux/arm64,linux/amd64 \
--platform $platform \
--tag ghcr.io/firezone/ubuntu:20.04 \
--build-arg BASE_IMAGE="ubuntu:20.04" \
--progress plain \

View File

@@ -6,6 +6,18 @@ on:
jobs:
build-and-push:
strategy:
matrix:
os:
- amazonlinux_2
- centos_7
- centos_8
- fedora_33
- fedora_34
- fedora_35
- debian_10
- ubuntu_18.04
- ubuntu_20.04
runs-on: ubuntu-20.04
steps:
- uses: docker/login-action@v1
@@ -15,5 +27,9 @@ jobs:
password: ${{ secrets.GITHUB_TOKEN }}
- uses: actions/checkout@v2
- run: |
docker buildx create --use
scripts/build_and_push_base_images.sh
# Required due to a buildx bug.
# See https://github.com/docker/buildx/issues/495#issuecomment-761562905
docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
docker buildx create --name multiarch --driver docker-container --use
docker buildx inspect --bootstrap
.ci/build_${{ matrix.os }}.base.sh

View File

@@ -6,30 +6,12 @@ set -e
docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
docker buildx create --name multiarch --driver docker-container --use
docker buildx inspect --bootstrap
.ci/build_amazonlinux_2.base.sh
docker push ghcr.io/firezone/amazonlinux:2
.ci/build_centos_7.base.sh
docker push ghcr.io/firezone/centos:7
.ci/build_centos_8.base.sh
docker push ghcr.io/firezone/centos:8
.ci/build_fedora_33.base.sh
docker push ghcr.io/firezone/fedora:33
.ci/build_fedora_34.base.sh
docker push ghcr.io/firezone/fedora:34
.ci/build_fedora_35.base.sh
docker push ghcr.io/firezone/fedora:35
.ci/build_debian_10.base.sh
docker push ghcr.io/firezone/debian:10
.ci/build_ubuntu_18.04.base.sh
docker push ghcr.io/firezone/ubuntu:18.04
.ci/build_ubuntu_20.04.base.sh
docker push ghcr.io/firezone/ubuntu:20.04