@@ -85,35 +85,134 @@ docker_signs:
85
85
args : ["sign", "--key=env://COSIGN_KEY", "--yes", "${artifact}"]
86
86
artifacts : all
87
87
88
+ # Build multiplatform images https://goreleaser.com/cookbooks/multi-platform-docker-images/
88
89
dockers :
90
+ # control-plane
89
91
- dockerfile : app/controlplane/Dockerfile.goreleaser
90
92
ids :
91
93
- control-plane
92
94
- chainloop-plugin-discord-webhook
93
95
- chainloop-plugin-smtp
94
96
- chainloop-plugin-dependency-track
95
97
image_templates :
96
- - " ghcr.io/chainloop-dev/chainloop/control-plane:{{ .Tag }}"
97
- - " ghcr.io/chainloop-dev/chainloop/control-plane:latest"
98
- # Container image meant to perform migrations on the database at deployment time
98
+ - " ghcr.io/chainloop-dev/chainloop/control-plane:{{ .Tag }}-amd64"
99
+ use : buildx
100
+ build_flag_templates :
101
+ - " --pull"
102
+ - " --platform=linux/amd64"
103
+ - dockerfile : app/controlplane/Dockerfile.goreleaser
104
+ ids :
105
+ - control-plane
106
+ - chainloop-plugin-discord-webhook
107
+ - chainloop-plugin-smtp
108
+ - chainloop-plugin-dependency-track
109
+ image_templates :
110
+ - " ghcr.io/chainloop-dev/chainloop/control-plane:{{ .Tag }}-arm64"
111
+ use : buildx
112
+ build_flag_templates :
113
+ - " --pull"
114
+ - " --platform=linux/arm64"
115
+
116
+ # migrations: Container image meant to perform migrations on the database at deployment time
99
117
- dockerfile : app/controlplane/Dockerfile.migrations
100
118
extra_files :
101
119
- app/controlplane/pkg/data/ent/migrate/migrations
102
120
image_templates :
103
- - " ghcr.io/chainloop-dev/chainloop/control-plane-migrations:{{ .Tag }}"
104
- - " ghcr.io/chainloop-dev/chainloop/control-plane-migrations:latest"
121
+ - " ghcr.io/chainloop-dev/chainloop/control-plane-migrations:{{ .Tag }}-amd64"
122
+ use : buildx
123
+ build_flag_templates :
124
+ - " --pull"
125
+ - " --platform=linux/amd64"
126
+ - dockerfile : app/controlplane/Dockerfile.migrations
127
+ extra_files :
128
+ - app/controlplane/pkg/data/ent/migrate/migrations
129
+ image_templates :
130
+ - " ghcr.io/chainloop-dev/chainloop/control-plane-migrations:{{ .Tag }}-arm64"
131
+ use : buildx
132
+ build_flag_templates :
133
+ - " --pull"
134
+ - " --platform=linux/arm64"
135
+
136
+ # cas
137
+ - dockerfile : app/artifact-cas/Dockerfile.goreleaser
138
+ ids :
139
+ - artifact-cas
140
+ image_templates :
141
+ - " ghcr.io/chainloop-dev/chainloop/artifact-cas:{{ .Tag }}-amd64"
142
+ use : buildx
143
+ build_flag_templates :
144
+ - " --pull"
145
+ - " --platform=linux/amd64"
105
146
- dockerfile : app/artifact-cas/Dockerfile.goreleaser
106
147
ids :
107
148
- artifact-cas
108
149
image_templates :
109
- - " ghcr.io/chainloop-dev/chainloop/artifact-cas:{{ .Tag }}"
110
- - " ghcr.io/chainloop-dev/chainloop/artifact-cas:latest"
150
+ - " ghcr.io/chainloop-dev/chainloop/artifact-cas:{{ .Tag }}-arm64"
151
+ use : buildx
152
+ build_flag_templates :
153
+ - " --pull"
154
+ - " --platform=linux/arm64"
155
+
156
+ # CLI
157
+ - dockerfile : app/cli/Dockerfile.goreleaser
158
+ ids :
159
+ - cli
160
+ image_templates :
161
+ - " ghcr.io/chainloop-dev/chainloop/cli:{{ .Tag }}-amd64"
162
+ use : buildx
163
+ build_flag_templates :
164
+ - " --pull"
165
+ - " --platform=linux/amd64"
111
166
- dockerfile : app/cli/Dockerfile.goreleaser
112
167
ids :
113
168
- cli
114
169
image_templates :
115
- - " ghcr.io/chainloop-dev/chainloop/cli:{{ .Tag }}"
116
- - " ghcr.io/chainloop-dev/chainloop/cli:latest"
170
+ - " ghcr.io/chainloop-dev/chainloop/cli:{{ .Tag }}-arm64"
171
+ use : buildx
172
+ build_flag_templates :
173
+ - " --pull"
174
+ - " --platform=linux/arm64"
175
+
176
+ docker_manifests :
177
+ # control-plane
178
+ - name_template : " ghcr.io/chainloop-dev/chainloop/control-plane:{{ .Tag }}"
179
+ image_templates :
180
+ - " ghcr.io/chainloop-dev/chainloop/control-plane:{{ .Tag }}-amd64"
181
+ - " ghcr.io/chainloop-dev/chainloop/control-plane:{{ .Tag }}-arm64"
182
+ - name_template : " ghcr.io/chainloop-dev/chainloop/control-plane:latest"
183
+ image_templates :
184
+ - " ghcr.io/chainloop-dev/chainloop/control-plane:{{ .Tag }}-amd64"
185
+ - " ghcr.io/chainloop-dev/chainloop/control-plane:{{ .Tag }}-arm64"
186
+
187
+ # artifact-cas
188
+ - name_template : " ghcr.io/chainloop-dev/chainloop/artifact-cas:{{ .Tag }}"
189
+ image_templates :
190
+ - " ghcr.io/chainloop-dev/chainloop/artifact-cas:{{ .Tag }}-amd64"
191
+ - " ghcr.io/chainloop-dev/chainloop/artifact-cas:{{ .Tag }}-arm64"
192
+ - name_template : " ghcr.io/chainloop-dev/chainloop/artifact-cas:latest"
193
+ image_templates :
194
+ - " ghcr.io/chainloop-dev/chainloop/artifact-cas:{{ .Tag }}-amd64"
195
+ - " ghcr.io/chainloop-dev/chainloop/artifact-cas:{{ .Tag }}-arm64"
196
+
197
+ # control-plane-migrations
198
+ - name_template : " ghcr.io/chainloop-dev/chainloop/control-plane-migrations:{{ .Tag }}"
199
+ image_templates :
200
+ - " ghcr.io/chainloop-dev/chainloop/control-plane-migrations:{{ .Tag }}-amd64"
201
+ - " ghcr.io/chainloop-dev/chainloop/control-plane-migrations:{{ .Tag }}-arm64"
202
+ - name_template : " ghcr.io/chainloop-dev/chainloop/control-plane-migrations:latest"
203
+ image_templates :
204
+ - " ghcr.io/chainloop-dev/chainloop/control-plane-migrations:{{ .Tag }}-amd64"
205
+ - " ghcr.io/chainloop-dev/chainloop/control-plane-migrations:{{ .Tag }}-arm64"
206
+
207
+ # cli
208
+ - name_template : " ghcr.io/chainloop-dev/chainloop/cli:{{ .Tag }}"
209
+ image_templates :
210
+ - " ghcr.io/chainloop-dev/chainloop/cli:{{ .Tag }}-amd64"
211
+ - " ghcr.io/chainloop-dev/chainloop/cli:{{ .Tag }}-arm64"
212
+ - name_template : " ghcr.io/chainloop-dev/chainloop/cli:latest"
213
+ image_templates :
214
+ - " ghcr.io/chainloop-dev/chainloop/cli:{{ .Tag }}-amd64"
215
+ - " ghcr.io/chainloop-dev/chainloop/cli:{{ .Tag }}-arm64"
117
216
118
217
release :
119
218
extra_files :
0 commit comments