diff options
| author | Andrii Klymenko <a.klymenko@vyos.io> | 2026-05-08 16:22:17 +0300 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-05-08 16:22:17 +0300 |
| commit | 560bba0ef00af6039d9b95e31ee822a7f89c0fd7 (patch) | |
| tree | e7fe18da8cc764384b7b7f35f6a8b21d1ddbd915 /scripts/image-build | |
| parent | a0f74b5a2565956ce405b7185842cbdd0b4f1768 (diff) | |
| parent | 2413b09291341031d77066db5f84509a7def54cd (diff) | |
| download | vyos-build-560bba0ef00af6039d9b95e31ee822a7f89c0fd7.tar.gz vyos-build-560bba0ef00af6039d9b95e31ee822a7f89c0fd7.zip | |
Merge branch 'current' into T8542-SBOM-current
Diffstat (limited to 'scripts/image-build')
| -rwxr-xr-x | scripts/image-build/build-vyos-image | 30 | ||||
| -rw-r--r-- | scripts/image-build/utils.py | 2 |
2 files changed, 27 insertions, 5 deletions
diff --git a/scripts/image-build/build-vyos-image b/scripts/image-build/build-vyos-image index ee7905b4..fb91cfc6 100755 --- a/scripts/image-build/build-vyos-image +++ b/scripts/image-build/build-vyos-image @@ -141,6 +141,8 @@ def build(): from utils import cmd, rc_cmd from utils import directories + from utils import activation_hint + from utils import activation_init ## Check if there are missing build dependencies deps = { @@ -440,9 +442,10 @@ def build(): build_config['version'] = version flavor_data = { - 'console_type': build_config["console_type"], - 'console_num': build_config["console_num"], - 'console_speed': build_config["console_speed"] + 'flavor': build_config["build_flavor"], + 'console_type': build_config["boot_settings"]["console_type"], + 'console_num': build_config["boot_settings"]["console_num"], + 'console_speed': build_config["boot_settings"]["console_speed"] } version_data = { @@ -490,6 +493,13 @@ DOCUMENTATION_URL="{build_config['documentation_url']}" with open(os.path.join(binary_includes_dir, 'version.json'), 'w') as f: json.dump(version_data, f) + # For initialization of activation scripts, we need to know if we + # are building with create_raw_image + if build_config["image_format"] != ["iso"]: + raw_build_hint = os.path.join(vyos_data_dir, os.path.basename(activation_hint)) + with open(raw_build_hint, 'w') as f: + pass + # For backwards compatibility with 'add system image' script from older versions # we need a file in the old format so that script can find out the version of the image # for upgrade @@ -628,6 +638,16 @@ DOCUMENTATION_URL="{build_config['documentation_url']}" with open(file_path, 'w') as f: f.write(build_config["default_config"]) + ## Allow override of which activation scripts are enabled at boot + if has_nonempty_key(build_config, "activation_init"): + file_path = os.path.join( + chroot_includes_dir, + activation_init.lstrip(os.sep) + ) + os.makedirs(os.path.dirname(file_path), exist_ok=True) + with open(file_path, 'w') as f: + f.write(build_config["activation_init"]) + ## Configure live-build lb_config_tmpl = jinja2.Template(""" lb config noauto \ @@ -639,8 +659,8 @@ DOCUMENTATION_URL="{build_config['documentation_url']}" --archive-areas "{{debian_archive_areas}}" \ --backports true \ --binary-image iso-hybrid \ - --bootappend-live "boot=live components hostname=vyos username=live nopersistence noautologin nonetworking union=overlay console="{{console_type}}{{console_num}},{{console_speed}}" console=tty0 net.ifnames=0 biosdevname=0" \ - --bootappend-live-failsafe "live components memtest noapic noapm nodma nomce nolapic nomodeset nosmp nosplash vga=normal console="{{console_type}}{{console_num}},{{console_speed}}" console=tty0 net.ifnames=0 biosdevname=0" \ + --bootappend-live "boot=live components hostname=vyos username=live nopersistence noautologin nonetworking union=overlay console="{{boot_settings.console_type}}{{boot_settings.console_num}},{{boot_settings.console_speed}}" console=tty0 net.ifnames=0 biosdevname=0" \ + --bootappend-live-failsafe "live components memtest noapic noapm nodma nomce nolapic nomodeset nosmp nosplash vga=normal console="{{boot_settings.console_type}}{{boot_settings.console_num}},{{boot_settings.console_speed}}" console=tty0 net.ifnames=0 biosdevname=0" \ --bootloaders "{{bootloaders}}" \ --checksums "sha256" \ --chroot-squashfs-compression-type "{{squashfs_compression_type}}" \ diff --git a/scripts/image-build/utils.py b/scripts/image-build/utils.py index 9e6dc634..5f557333 100644 --- a/scripts/image-build/utils.py +++ b/scripts/image-build/utils.py @@ -26,6 +26,8 @@ import defaults import vyos from vyos.defaults import directories +from vyos.defaults import activation_hint +from vyos.defaults import activation_init def check_build_config(): |
