diff options
author | Runar Borge <runar@borge.nu> | 2021-11-01 19:14:27 +0100 |
---|---|---|
committer | Runar Borge <runar@borge.nu> | 2021-11-03 21:18:09 +0100 |
commit | 9b511bf61ff55282c38785d69d2e95d20db66aba (patch) | |
tree | 672cd8f128243860baa564b109598f2093524d99 /scripts | |
parent | 2264c8a812325f57fe0361fca9dad992048e572f (diff) | |
download | vyos-build-9b511bf61ff55282c38785d69d2e95d20db66aba.tar.gz vyos-build-9b511bf61ff55282c38785d69d2e95d20db66aba.zip |
T3965: arm: build script: inheritence in flavor_configs and bootloader options
Diffstat (limited to 'scripts')
-rwxr-xr-x | scripts/build-config | 18 | ||||
-rwxr-xr-x | scripts/live-build-config | 2 |
2 files changed, 17 insertions, 3 deletions
diff --git a/scripts/build-config b/scripts/build-config index fa0b3512..4f4a8c08 100755 --- a/scripts/build-config +++ b/scripts/build-config @@ -48,14 +48,27 @@ def get_validator(optdict, name): except KeyError: return None +def load_config(filename): + with open(filename, 'r') as f: + print(f'Loading {filename}') + this_config = json.load(f) + + if not 'inherit_from' in this_config: + print(f'No inheritance detected') + return this_config + + inherited_config = load_config(this_config['inherit_from']) + del this_config['inherit_from'] + inherited_config.update(this_config) + return inherited_config + # Load the build flavor file build_flavor = os.getenv('VYOS_BUILD_FLAVOR') if build_flavor is None: build_flavor = defaults.DEFAULT_BUILD_FLAVOR try: - with open(build_flavor, 'r') as f: - build_defaults = json.load(f) + build_defaults = load_config(build_flavor) except Exception as e: print("Failed to open the build flavor file {0}: {1}".format(build_flavor, e)) sys.exit(1) @@ -143,6 +156,7 @@ if env_check_retval > 0: args['kernel_version'] = build_defaults['kernel_version'] args['kernel_flavor'] = build_defaults['kernel_flavor'] +args['bootloaders'] = build_defaults['bootloaders'] # Save to file diff --git a/scripts/live-build-config b/scripts/live-build-config index c9d6ee1d..1813e608 100755 --- a/scripts/live-build-config +++ b/scripts/live-build-config @@ -39,7 +39,7 @@ lb config noauto \ --bootappend-live-failsafe "live components memtest noapic noapm nodma nomce nolapic nomodeset nosmp nosplash vga=normal console=ttyS0,115200 console=tty0 net.ifnames=0 biosdevname=0" \ --linux-flavours {{kernel_flavor}} \ --linux-packages linux-image-{{kernel_version}} \ - --bootloader syslinux,grub-efi \ + --bootloader {{bootloaders}} \ --binary-images iso-hybrid \ --checksums 'sha256 md5' \ --debian-installer none \ |