Преглед на файлове

ci: build the debian and alpine images in parallel

Nicolas Duchon преди 4 години
родител
ревизия
9efeb5d8af
променени са 1 файла, в които са добавени 40 реда и са изтрити 18 реда
  1. 40 18
      .github/workflows/dockerhub.yml

+ 40 - 18
.github/workflows/dockerhub.yml

@@ -18,7 +18,7 @@ on:
       - '*.md'
 
 jobs:
-  multiarch-build:
+  multiarch-build-debian:
     runs-on: ubuntu-latest
     steps:
 
@@ -26,7 +26,7 @@ jobs:
         uses: actions/checkout@v2
         with:
           fetch-depth: 0
-        
+
       - name: Get Docker tags for Debian based image
         id: docker_meta_debian
         uses: crazy-max/ghaction-docker-meta@v2
@@ -38,7 +38,41 @@ jobs:
             type=semver,pattern={{version}}
             type=semver,pattern={{major}}.{{minor}}
             type=raw,value=latest,enable=${{ endsWith(github.ref, github.event.repository.default_branch) }}
-      
+
+      - name: Set up QEMU
+        uses: docker/setup-qemu-action@v1
+
+      - name: Set up Docker Buildx
+        uses: docker/setup-buildx-action@v1
+
+      - name: Login to DockerHub
+        uses: docker/login-action@v1 
+        with:
+          username: ${{ secrets.DOCKERHUB_USERNAME }}
+          password: ${{ secrets.DOCKERHUB_TOKEN }}
+
+      - name: Build and push the Debian based image
+        id: docker_build_debian
+        uses: docker/build-push-action@v2
+        with:
+          file: Dockerfile
+          platforms: linux/amd64,linux/arm64,linux/arm/v7
+          push: true
+          tags: ${{ steps.docker_meta_debian.outputs.tags }}
+          labels: ${{ steps.docker_meta_debian.outputs.labels }}
+
+      - name: Images digests
+        run: echo ${{ steps.docker_build_debian.outputs.digest }}
+
+  multiarch-build-alpine:
+    runs-on: ubuntu-latest
+    steps:
+
+      - name: Checkout
+        uses: actions/checkout@v2
+        with:
+          fetch-depth: 0
+
       - name: Get Docker tags for Alpine based image
         id: docker_meta_alpine
         uses: crazy-max/ghaction-docker-meta@v2
@@ -54,25 +88,15 @@ jobs:
 
       - name: Set up QEMU
         uses: docker/setup-qemu-action@v1
-      
+
       - name: Set up Docker Buildx
         uses: docker/setup-buildx-action@v1
-      
+
       - name: Login to DockerHub
         uses: docker/login-action@v1 
         with:
           username: ${{ secrets.DOCKERHUB_USERNAME }}
           password: ${{ secrets.DOCKERHUB_TOKEN }}
-      
-      - name: Build and push the Debian based image
-        id: docker_build_debian
-        uses: docker/build-push-action@v2
-        with:
-          file: Dockerfile
-          platforms: linux/amd64,linux/arm64,linux/arm/v7
-          push: true
-          tags: ${{ steps.docker_meta_debian.outputs.tags }}
-          labels: ${{ steps.docker_meta_debian.outputs.labels }}
 
       - name: Build and push the Alpine based image
         id: docker_build_alpine
@@ -85,6 +109,4 @@ jobs:
           labels: ${{ steps.docker_meta_alpine.outputs.labels }}
 
       - name: Images digests
-        run: |
-          echo ${{ steps.docker_build_debian.outputs.digest }}
-          echo ${{ steps.docker_build_alpine.outputs.digest }}
+        run: echo ${{ steps.docker_build_alpine.outputs.digest }}