Skip to content

Commit 41467a4

Browse files
committed
chore: run build in paralell
1 parent b33d094 commit 41467a4

File tree

1 file changed

+18
-13
lines changed

1 file changed

+18
-13
lines changed

.github/workflows/docker-publish.yml

Lines changed: 18 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@ on:
1111

1212
env:
1313
GHCR_REGISTRY: ghcr.io
14-
IMAGE_NAME: ${{ github.repository }}
1514

1615
jobs:
1716
build:
@@ -33,8 +32,10 @@ jobs:
3332
uses: actions/checkout@v4
3433

3534
- name: Prepare
36-
id: platform
37-
run: echo "pair=${platform//\//-}" >> "$GITHUB_OUTPUT"
35+
id: prepare
36+
run: |
37+
echo "pair=${platform//\//-}" >> "$GITHUB_OUTPUT"
38+
echo "image_name=${GITHUB_REPOSITORY,,}" >> "$GITHUB_OUTPUT"
3839
env:
3940
platform: ${{ matrix.platform }}
4041

@@ -55,8 +56,8 @@ jobs:
5556
uses: docker/metadata-action@v5
5657
with:
5758
images: |
58-
${{ env.GHCR_REGISTRY }}/${{ env.IMAGE_NAME }}
59-
# ${{ env.DOCKERHUB_REGISTRY }}/${{ env.IMAGE_NAME }}
59+
${{ env.GHCR_REGISTRY }}/${{ steps.prepare.outputs.image_name }}
60+
# ${{ env.DOCKERHUB_REGISTRY }}/${{ steps.prepare.outputs.image_name }}
6061
6162
- name: Build and push by digest
6263
id: build
@@ -67,9 +68,9 @@ jobs:
6768
platforms: ${{ matrix.platform }}
6869
push: ${{ github.event_name != 'pull_request' }}
6970
labels: ${{ steps.meta.outputs.labels }}
70-
cache-from: type=gha,scope=buildkit-${{ steps.platform.outputs.pair }}
71-
cache-to: type=gha,mode=max,scope=buildkit-${{ steps.platform.outputs.pair }}
72-
outputs: ${{ github.event_name != 'pull_request' && format('type=image,"name={0}/{1}",push-by-digest=true,name-canonical=true,push=true', env.GHCR_REGISTRY, env.IMAGE_NAME) || '' }}
71+
cache-from: type=gha,scope=buildkit-${{ steps.prepare.outputs.pair }}
72+
cache-to: type=gha,mode=max,scope=buildkit-${{ steps.prepare.outputs.pair }}
73+
outputs: ${{ github.event_name != 'pull_request' && format('type=image,"name={0}/{1}",push-by-digest=true,name-canonical=true,push=true', env.GHCR_REGISTRY, steps.prepare.outputs.image_name) || '' }}
7374

7475
- name: Export digest
7576
if: github.event_name != 'pull_request'
@@ -85,7 +86,7 @@ jobs:
8586
if: github.event_name != 'pull_request'
8687
uses: actions/upload-artifact@v4
8788
with:
88-
name: digests-${{ steps.platform.outputs.pair }}
89+
name: digests-${{ steps.prepare.outputs.pair }}
8990
path: ${{ runner.temp }}/digests/*
9091
if-no-files-found: error
9192
retention-days: 1
@@ -100,6 +101,10 @@ jobs:
100101
id-token: write
101102

102103
steps:
104+
- name: Prepare
105+
id: prepare
106+
run: echo "image_name=${GITHUB_REPOSITORY,,}" >> "$GITHUB_OUTPUT"
107+
103108
- name: Download digests
104109
uses: actions/download-artifact@v4
105110
with:
@@ -123,8 +128,8 @@ jobs:
123128
uses: docker/metadata-action@v5
124129
with:
125130
images: |
126-
${{ env.GHCR_REGISTRY }}/${{ env.IMAGE_NAME }}
127-
# ${{ env.DOCKERHUB_REGISTRY }}/${{ env.IMAGE_NAME }}
131+
${{ env.GHCR_REGISTRY }}/${{ steps.prepare.outputs.image_name }}
132+
# ${{ env.DOCKERHUB_REGISTRY }}/${{ steps.prepare.outputs.image_name }}
128133
tags: |
129134
type=semver,pattern={{version}}
130135
type=semver,pattern={{major}}.{{minor}}
@@ -140,11 +145,11 @@ jobs:
140145
$(printf "${GHCR_REGISTRY}/${IMAGE_NAME}@sha256:%s " *)
141146
env:
142147
GHCR_REGISTRY: ${{ env.GHCR_REGISTRY }}
143-
IMAGE_NAME: ${{ env.IMAGE_NAME }}
148+
IMAGE_NAME: ${{ steps.prepare.outputs.image_name }}
144149

145150
- name: Inspect image
146151
run: docker buildx imagetools inspect "${GHCR_REGISTRY}/${IMAGE_NAME}:${VERSION}"
147152
env:
148153
GHCR_REGISTRY: ${{ env.GHCR_REGISTRY }}
149-
IMAGE_NAME: ${{ env.IMAGE_NAME }}
154+
IMAGE_NAME: ${{ steps.prepare.outputs.image_name }}
150155
VERSION: ${{ steps.meta.outputs.version }}

0 commit comments

Comments
 (0)