summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristian Breunig <christian@breunig.cc>2024-08-13 22:11:59 +0200
committerChristian Breunig <christian@breunig.cc>2024-08-19 19:38:14 +0200
commit9928925b3b34e4a42099781430a0063292a9d0fe (patch)
tree0220a71561db08e560e44df1f0c23cff266807bc
parentc75174bb4a22305211791946437bf0b4080ade2f (diff)
downloadvyos-build-9928925b3b34e4a42099781430a0063292a9d0fe.tar.gz
vyos-build-9928925b3b34e4a42099781430a0063292a9d0fe.zip
build: T6653: add build/manifest.json file
-rwxr-xr-xscripts/image-build/build-vyos-image12
1 files changed, 12 insertions, 0 deletions
diff --git a/scripts/image-build/build-vyos-image b/scripts/image-build/build-vyos-image
index 44ce2d5f..c13d7607 100755
--- a/scripts/image-build/build-vyos-image
+++ b/scripts/image-build/build-vyos-image
@@ -549,6 +549,13 @@ if __name__ == "__main__":
with open(file_path, 'w') as f:
f.write(build_config["default_config"])
+ ## Initialize build manifest
+ manifest = {
+ 'build_config' : build_config,
+ 'artifacts' : [iso_file],
+ 'pre_build_config' : pre_build_config
+ }
+
## Configure live-build
lb_config_tmpl = jinja2.Template("""
lb config noauto \
@@ -627,6 +634,7 @@ Pin-Priority: 600
# if the flavor calls for them
if build_config["image_format"] != ["iso"]:
raw_image = raw_image.create_raw_image(build_config, iso_file, "tmp/")
+ manifest['artifacts'].append(raw_image)
if has_nonempty_key(build_config, "post_build_hook"):
# Some flavors require special procedures that aren't covered by qemu-img
@@ -644,3 +652,7 @@ Pin-Priority: 600
target = f"{os.path.splitext(raw_image)[0]}.{image_ext}"
print(f"I: Building {f} file {target}")
cmd(f"qemu-img convert -f raw -O {f} {image_opts} {raw_image} {target}")
+ manifest['artifacts'].append(target)
+
+ with open('manifest.json', 'w') as f:
+ f.write(json.dumps(manifest))