diff options
Diffstat (limited to 'scripts/image-build/build-vyos-image')
-rwxr-xr-x | scripts/image-build/build-vyos-image | 17 |
1 files changed, 7 insertions, 10 deletions
diff --git a/scripts/image-build/build-vyos-image b/scripts/image-build/build-vyos-image index 2295df1f..c6e76208 100755 --- a/scripts/image-build/build-vyos-image +++ b/scripts/image-build/build-vyos-image @@ -78,6 +78,8 @@ import utils import defaults import raw_image +from utils import cmd + # argparse converts hyphens to underscores, # so for lookups in the original options hash we have to convert them back def field_to_option(s): @@ -450,7 +452,7 @@ if __name__ == "__main__": ## Clean up earlier build state and artifacts print("I: Cleaning the build workspace") - os.system("lb clean") + cmd("lb clean") #iter(lambda p: shutil.rmtree(p, ignore_errors=True), # ['config/binary', 'config/bootstrap', 'config/chroot', 'config/common', 'config/source']) artifacts = functools.reduce( @@ -575,10 +577,7 @@ if __name__ == "__main__": print("D: live-build configuration command") print(lb_config_command) - result = os.system(lb_config_command) - if result > 0: - print("E: live-build config failed") - sys.exit(1) + cmd(lb_config_command) ## In dry-run mode, exit at this point if build_config["dry_run"]: @@ -595,9 +594,7 @@ if __name__ == "__main__": print("I: Starting image build") if debug: print("D: It's not like I'm building this specially for you or anything!") - res = os.system("lb build 2>&1") - if res > 0: - sys.exit(res) + cmd("lb build 2>&1") # Copy the image shutil.copy("live-image-{0}.hybrid.iso".format(build_config["architecture"]), iso_file) @@ -613,11 +610,11 @@ if __name__ == "__main__": # For those cases, we support running a post-build hook on the raw image. # The image_format field should be 'raw' if a post-build hook is used. hook_path = build_config["post_build_hook"] - os.system(f"{hook_path} {raw_image}") + cmd(f"{hook_path} {raw_image}") else: # Most other formats, thankfully, can be produced with just `qemu-img convert` other_formats = filter(lambda x: x not in ["iso", "raw"], build_config["image_format"]) for f in other_formats: target = f"{os.path.splitext(raw_image)[0]}.{f}" print(f"I: Building {f} file {target}") - os.system(f"qemu-img convert -f raw -O {f} {raw_image} {target}") + cmd(f"qemu-img convert -f raw -O {f} {raw_image} {target}") |