fix(iso): render isolinux flavour before validation
This commit is contained in:
@@ -57,21 +57,40 @@ if render_bootloader_template "$literal_template" "$literal_output" \
|
||||
echo "ERROR: bootloader renderer accepted a missing required placeholder" >&2
|
||||
exit 1
|
||||
fi
|
||||
if render_bootloader_template "$BUILDER_DIR/config/bootloaders/isolinux/live.cfg.in" "$literal_output" \
|
||||
'13.0-test' '@LINUX@' '/live/vmlinuz' 'boot=live' '@INITRD@' '/live/initrd.img' >/dev/null 2>&1; then
|
||||
echo "ERROR: isolinux renderer accepted a missing flavour" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
live_build_config_root="$TEST_ROOT/live-build-config"
|
||||
mkdir -p "$live_build_config_root/config"
|
||||
printf '%s\n' \
|
||||
'LB_BOOTAPPEND_LIVE="boot=live live-media-label=EASY_BEE_TEST"' > "$live_build_config_root/config/binary"
|
||||
printf '%s\n' \
|
||||
'LB_LINUX_FLAVOURS_WITH_ARCH="amd64:amd64 686-pae:i386"' > "$live_build_config_root/config/chroot"
|
||||
load_live_build_boot_config "$live_build_config_root"
|
||||
if [ "$live_build_append" != 'boot=live live-media-label=EASY_BEE_TEST' ] || \
|
||||
[ "$live_build_flavour" != amd64 ]; then
|
||||
echo "ERROR: failed to load the default live-build boot settings" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
rendered_grub="$TEST_ROOT/grub.cfg"
|
||||
rendered_isolinux="$TEST_ROOT/live.cfg"
|
||||
sed \
|
||||
-e 's#@APPEND_LIVE@#boot=live live-media-label=EASY_BEE_TEST#g' \
|
||||
-e 's#@KERNEL_LIVE@#/live/vmlinuz#g' \
|
||||
-e 's#@INITRD_LIVE@#/live/initrd.img#g' \
|
||||
-e 's#@VERSION@#13.0-test#g' \
|
||||
"$BUILDER_DIR/config/bootloaders/grub-efi/grub.cfg" > "$rendered_grub"
|
||||
sed \
|
||||
-e 's#@APPEND_LIVE@#boot=live live-media-label=EASY_BEE_TEST#g' \
|
||||
-e 's#@LINUX@#/live/vmlinuz#g' \
|
||||
-e 's#@INITRD@#/live/initrd.img#g' \
|
||||
-e 's#@VERSION@#13.0-test#g' \
|
||||
"$BUILDER_DIR/config/bootloaders/isolinux/live.cfg.in" > "$rendered_isolinux"
|
||||
write_canonical_grub_cfg "$rendered_grub" /live/vmlinuz \
|
||||
'boot=live live-media-label=EASY_BEE_TEST' /live/initrd.img
|
||||
write_canonical_isolinux_cfg "$rendered_isolinux" /live/vmlinuz /live/initrd.img \
|
||||
'boot=live live-media-label=EASY_BEE_TEST' "$live_build_flavour"
|
||||
|
||||
if grep -Eq '@[A-Z][A-Z_]*@' "$rendered_grub" "$rendered_isolinux"; then
|
||||
echo "ERROR: canonical bootloader renderer left an unresolved placeholder" >&2
|
||||
exit 1
|
||||
fi
|
||||
if ! grep -q '^label live-amd64-normal$' "$rendered_isolinux"; then
|
||||
echo "ERROR: canonical isolinux renderer did not apply the live-build flavour" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
validate_live_cmdline_params "$rendered_grub" linux GRUB "$BEE_ISO_VOLUME"
|
||||
validate_live_cmdline_params "$rendered_isolinux" append isolinux "$BEE_ISO_VOLUME"
|
||||
|
||||
Reference in New Issue
Block a user