18
18
env :
19
19
REGISTRY : ghcr.io
20
20
IMAGE_NAME : ghcr.io/${{ github.repository_owner }}/zeek
21
- IMAGE_PLATFORM : linux/amd64
22
21
REPO_CONTEXT : .
23
22
REPO_CONTAINERFILE : ./Dockerfile.clang
24
23
BUILD_FROM_SOURCE : 1
@@ -35,46 +34,61 @@ jobs:
35
34
packages : write
36
35
contents : read
37
36
security-events : write
37
+ strategy :
38
+ fail-fast : false
39
+ matrix :
40
+ platform :
41
+ - linux/amd64
42
+ - linux/arm64
38
43
steps :
39
44
-
40
45
name : Cancel previous run in progress
41
46
id : cancel-previous-runs
42
- uses : styfle/cancel-workflow-action@0.11.0
47
+ uses : styfle/cancel-workflow-action@0.12.1
43
48
with :
44
49
ignore_sha : true
45
50
all_but_latest : true
46
51
access_token : ${{ secrets.GITHUB_TOKEN }}
47
52
-
48
53
name : Checkout
49
54
id : repo-checkout
50
- uses : actions/checkout@v3
55
+ uses : actions/checkout@v4
56
+ -
57
+ name : Generate arch tag suffix
58
+ shell : bash
59
+ run : echo "archtag=$([[ "${{ matrix.platform }}" == 'linux/amd64' ]] && echo '' || ( echo -n '-' ; echo "${{ matrix.platform }}" | cut -d '/' -f 2) )" >> $GITHUB_OUTPUT
60
+ id : arch_tag_suffix
51
61
-
52
62
name : Set up QEMU
53
63
id : setup-qemu
54
- uses : docker/setup-qemu-action@v2
64
+ uses : docker/setup-qemu-action@v3
65
+ with :
66
+ platforms : ${{ matrix.platform }}
55
67
-
56
68
name : Log in to registry
57
69
id : registry-login
58
- uses : docker/login-action@v2
70
+ uses : docker/login-action@v3
59
71
with :
60
72
registry : ${{ env.REGISTRY }}
61
73
username : ${{ github.repository_owner }}
62
74
password : ${{ secrets.GITHUB_TOKEN }}
63
75
-
64
76
name : Build base image
65
77
id : build-base-image
66
- uses : docker/build-push-action@v3
78
+ uses : docker/build-push-action@v5
67
79
with :
68
80
context : ${{ env.REPO_CONTEXT }}
69
81
file : ${{ env.REPO_CONTAINERFILE }}
70
82
push : true
83
+ provenance : false
84
+ platforms : ${{ matrix.platform }}
71
85
target : base
72
- tags : ${{ env.IMAGE_NAME }}:${{ env.ZEEK_BRANCH }}
86
+ tags : ${{ env.IMAGE_NAME }}:${{ env.ZEEK_BRANCH }}${{ steps.arch_tag_suffix.outputs.archtag }}
73
87
build-args : |
74
88
BUILD_FROM_SOURCE=${{ env.BUILD_FROM_SOURCE }}
75
89
BUILD_JOBS=${{ env.BUILD_JOBS }}
90
+ TARGETPLATFORM=${{ matrix.platform }}
76
91
GITHUB_TOKEN=${{ secrets.GITHUB_TOKEN }}
77
92
ZEEK_BRANCH=${{ env.ZEEK_BRANCH }}
78
93
ZEEK_DBG=${{ env.ZEEK_DBG }}
79
94
MAXMIND_GEOIP_DB_LICENSE_KEY=${{ secrets.MAXMIND_GEOIP_DB_LICENSE_KEY }}
80
- platforms : ${{ env.IMAGE_PLATFORM }}
0 commit comments