Skip to content

Commit 69cc222

Browse files
committed
fix: calculate correctly image digests for the catalog
Use buldkit's metadata file to find what went into the build instead of trying to resolve the digests on the fly. Depends on kres change: siderolabs/kres#627 Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com> (cherry picked from commit 4328287)
1 parent 9f063c9 commit 69cc222

File tree

2 files changed

+9
-30
lines changed

2 files changed

+9
-30
lines changed

.kres.yaml

Lines changed: 4 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -118,8 +118,6 @@ spec:
118118
toplevel: true
119119
- name: check-dirty
120120
toplevel: true
121-
- name: extensions-metadata
122-
toplevel: true
123121
- name: internal/extensions/image-digests
124122
toplevel: true
125123
- name: internal/extensions/descriptions.yaml
@@ -178,31 +176,18 @@ spec:
178176
condition: on-pull-request
179177
---
180178
kind: custom.Step
181-
name: extensions-metadata
182-
spec:
183-
makefile:
184-
enabled: true
185-
phony: true
186-
depends:
187-
- $(ARTIFACTS)/bldr
188-
script:
189-
- |
190-
@rm -f _out/extensions-metadata
191-
@$(foreach target,$(TARGETS),echo $(REGISTRY)/$(USERNAME)/$(target):$(shell $(ARTIFACTS)/bldr eval --target $(target) --build-arg TAG=$(TAG) '{{.VERSION}}' 2>/dev/null) >> _out/extensions-metadata;)
192-
@$(foreach target,$(NONFREE_TARGETS),echo $(REGISTRY)/$(USERNAME)/$(target):$(shell $(ARTIFACTS)/bldr eval --target $(target) --build-arg TAG=$(TAG) '{{.VERSION}}' 2>/dev/null) >> _out/extensions-metadata;)
193-
---
194-
kind: custom.Step
195179
name: internal/extensions/image-digests
196180
spec:
197181
makefile:
198182
enabled: true
199183
phony: true
200184
depends:
201-
- extensions-metadata
185+
- $(ARTIFACTS)/bldr
202186
script:
203187
- |
204-
@echo "Generating image digests..."
205-
@cat _out/extensions-metadata | xargs -I{} sh -c 'echo {}@$$(crane digest {})' > internal/extensions/image-digests
188+
@rm -f internal/extensions/image-digests
189+
@$(foreach target,$(TARGETS),echo $(shell yq -r '."image.name" + "@" + ."containerimage.digest"' $(ARTIFACTS)/$(target).metadata.json) >> internal/extensions/image-digests;)
190+
@$(foreach target,$(NONFREE_TARGETS),echo $(shell yq -r '."image.name" + "@" + ."containerimage.digest"' $(ARTIFACTS)/$(target).metadata.json) >> internal/extensions/image-digests;)
206191
---
207192
kind: custom.Step
208193
name: internal/extensions/descriptions.yaml

Makefile

Lines changed: 5 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# THIS FILE WAS AUTOMATICALLY GENERATED, PLEASE DO NOT EDIT.
22
#
3-
# Generated on 2026-03-18T16:47:13Z by kres 3675077.
3+
# Generated on 2026-03-17T13:52:47Z by kres 7bfd168-dirty.
44

55
# common variables
66

@@ -255,16 +255,11 @@ extensions-catalog: $(ARTIFACTS)/bldr
255255
check-dirty:
256256
@if test -n "`git status --porcelain`"; then echo "Source tree is dirty"; git status; git diff; exit 1 ; fi
257257

258-
.PHONY: extensions-metadata
259-
extensions-metadata: $(ARTIFACTS)/bldr
260-
@rm -f _out/extensions-metadata
261-
@$(foreach target,$(TARGETS),echo $(REGISTRY)/$(USERNAME)/$(target):$(shell $(ARTIFACTS)/bldr eval --target $(target) --build-arg TAG=$(TAG) '{{.VERSION}}' 2>/dev/null) >> _out/extensions-metadata;)
262-
@$(foreach target,$(NONFREE_TARGETS),echo $(REGISTRY)/$(USERNAME)/$(target):$(shell $(ARTIFACTS)/bldr eval --target $(target) --build-arg TAG=$(TAG) '{{.VERSION}}' 2>/dev/null) >> _out/extensions-metadata;)
263-
264258
.PHONY: internal/extensions/image-digests
265-
internal/extensions/image-digests: extensions-metadata
266-
@echo "Generating image digests..."
267-
@cat _out/extensions-metadata | xargs -I{} sh -c 'echo {}@$$(crane digest {})' > internal/extensions/image-digests
259+
internal/extensions/image-digests: $(ARTIFACTS)/bldr
260+
@rm -f internal/extensions/image-digests
261+
@$(foreach target,$(TARGETS),echo $(shell yq -r '."image.name" + "@" + ."containerimage.digest"' $(ARTIFACTS)/$(target).metadata.json) >> internal/extensions/image-digests;)
262+
@$(foreach target,$(NONFREE_TARGETS),echo $(shell yq -r '."image.name" + "@" + ."containerimage.digest"' $(ARTIFACTS)/$(target).metadata.json) >> internal/extensions/image-digests;)
268263

269264
.PHONY: internal/extensions/descriptions.yaml
270265
internal/extensions/descriptions.yaml: internal/extensions/image-digests
@@ -305,4 +300,3 @@ release-notes: $(ARTIFACTS)
305300
conformance:
306301
@docker pull $(CONFORMANCE_IMAGE)
307302
@docker run --rm -it -v $(PWD):/src -w /src $(CONFORMANCE_IMAGE) enforce
308-

0 commit comments

Comments
 (0)