schemas: fix settings ident and welcome

validate schema
This commit is contained in:
udeved 2016-09-19 08:11:35 +02:00
parent 9b14048af0
commit 1da38e3f1f
3 changed files with 68 additions and 129 deletions

View file

@ -1,80 +1,31 @@
---
type: map
mapping:
"modules-search":
type: seq
required: true
sequence:
- type: str
"instances":
type: seq
required: true
sequence:
- type: map
mapping:
"id": { type: str }
"module": { type: str }
"config": { type: str }
"sequence":
type: seq
required: true
sequence:
"modules-search":
type: seq
sequence:
- { type: str }
"instances":
type: seq
sequence:
- type: map
mapping:
"show":
type: seq
sequence:
- type: map
mapping:
"welcome": { type: str, required: true }
"locale": { type: str, required: true }
"keyboard": { type: str, required: true }
"partition": { type: str, required: true }
"users": { type: str, required: true }
"summary": { type: str, required: true }
"netinstall": { type: str }
"exec":
type: seq
sequence:
- type: map
mapping:
"partition": { type: str, required: true }
"mount": { type: str, required: true }
"unpackfs": { type: str }
"chrootcfg": { type: str }
"packages": { type: str }
"machineid": { type: str, required: true }
"fstab": { type: str, required: true }
"locale": { type: str, required: true }
"keyboard": { type: str, required: true }
"localecfg": { type: str, required: true }
"luksopenswaphookcfg": { type: str }
"luksbootkeyfile": { type: str }
"plymouthcfg": { type: str }
"initcpiocfg": { type: str, required: true }
"initcpio": { type: str, required: true }
"users": { type: str, required: true }
"displaymanager": { type: str, required: true }
"mhwdcfg": { type: str }
"networkcfg": { type: str, required: true }
"hwclock": { type: str, required: true }
"services": { type: str }
"servicescfg": { type: str }
"grubcfg": { type: str, required: true }
"bootloader": { type: str, required: true }
"postcfg": { type: str, required: true }
"umount": { type: str, required: true }
"show":
type: seq
sequence:
- type: map
mapping:
"finished": { type: str, required: true }
"branding": { type: str, required: true }
"prompt-install": { type: bool, default: false }
"dont-chroot": { type: bool, default: false }
"id": { type: str }
"module": { type: str }
"config": { type: str }
"sequence":
type: seq
sequence:
- type: map
mapping:
"show":
type: seq
sequence:
- { type: str, enum: [welcome, netinstall, locale, keyboard, partition, users, summary, finished] }
"exec":
type: seq
sequence:
- { type: str, enum: [partition, mount, chrootcfg, unpackfs, networkcfg, machineid, fstab, locale, keyboard, localecfg, luksopenswaphookcfg, luksbootkeyfile, plymouthcfg, initcpiocfg, initcpio, users, displaymanager, mhwdcfg, hwclock, servicescfg, services, grubcfg, bootloader, postcfg, umount, packages, removeuser, dracut] }
"branding": { type: str, required: true }
"prompt-install": { type: bool, default: false }
"dont-chroot": { type: bool, default: false }

View file

@ -13,21 +13,9 @@ mapping:
required: true
type: seq
sequence:
- type: map
mapping:
"storage": { type: str, required: true }
"ram": { type: str, required: true }
"power": { type: str, required: true }
"internet": { type: str, required: true }
"root": { type: str, required: true }
- { type: str, enum: [storage, ram, power, internet, root] }
"required":
required: true
type: seq
sequence:
- type: map
mapping:
"storage": { type: str, required: true }
"ram": { type: str, required: true }
"power": { type: str }
"internet": { type: str }
"root": { type: str, required: true }
- { type: str, enum: [storage, ram, power, internet, root] }

View file

@ -322,54 +322,54 @@ write_settings_conf(){
echo "instances:" >> "$conf"
echo '' >> "$conf"
echo "sequence:" >> "$conf"
echo "- show:" >> "$conf"
echo " - welcome" >> "$conf"
${netinstall} && echo " - netinstall" >> "$conf"
echo " - locale" >> "$conf"
echo " - keyboard" >> "$conf"
echo " - partition" >> "$conf"
echo " - users" >> "$conf"
echo " - summary" >> "$conf"
echo "- exec:" >> "$conf"
echo " - partition" >> "$conf"
echo " - mount" >> "$conf"
echo " - show:" >> "$conf"
echo " - welcome" >> "$conf"
${netinstall} && echo " - netinstall" >> "$conf"
echo " - locale" >> "$conf"
echo " - keyboard" >> "$conf"
echo " - partition" >> "$conf"
echo " - users" >> "$conf"
echo " - summary" >> "$conf"
echo " - exec:" >> "$conf"
echo " - partition" >> "$conf"
echo " - mount" >> "$conf"
if ${netinstall};then
if ${unpackfs};then
echo " - unpackfs" >> "$conf"
echo " - networkcfg" >> "$conf"
echo " - packages" >> "$conf"
echo " - unpackfs" >> "$conf"
echo " - networkcfg" >> "$conf"
echo " - packages" >> "$conf"
else
echo " - chrootcfg" >> "$conf"
echo " - networkcfg" >> "$conf"
echo " - chrootcfg" >> "$conf"
echo " - networkcfg" >> "$conf"
fi
else
echo " - unpackfs" >> "$conf"
echo " - networkcfg" >> "$conf"
echo " - unpackfs" >> "$conf"
echo " - networkcfg" >> "$conf"
fi
echo " - machineid" >> "$conf"
echo " - fstab" >> "$conf"
echo " - locale" >> "$conf"
echo " - keyboard" >> "$conf"
echo " - localecfg" >> "$conf"
echo " - luksopenswaphookcfg" >> "$conf"
echo " - luksbootkeyfile" >> "$conf"
echo " - plymouthcfg" >> "$conf"
echo " - initcpiocfg" >> "$conf"
echo " - initcpio" >> "$conf"
echo " - users" >> "$conf"
echo " - displaymanager" >> "$conf"
echo " - mhwdcfg" >> "$conf"
echo " - hwclock" >> "$conf"
echo " - machineid" >> "$conf"
echo " - fstab" >> "$conf"
echo " - locale" >> "$conf"
echo " - keyboard" >> "$conf"
echo " - localecfg" >> "$conf"
echo " - luksopenswaphookcfg" >> "$conf"
echo " - luksbootkeyfile" >> "$conf"
echo " - plymouthcfg" >> "$conf"
echo " - initcpiocfg" >> "$conf"
echo " - initcpio" >> "$conf"
echo " - users" >> "$conf"
echo " - displaymanager" >> "$conf"
echo " - mhwdcfg" >> "$conf"
echo " - hwclock" >> "$conf"
case ${initsys} in
'systemd') echo " - services" >> "$conf" ;;
'openrc') echo " - servicescfg" >> "$conf" ;;
'systemd') echo " - services" >> "$conf" ;;
'openrc') echo " - servicescfg" >> "$conf" ;;
esac
echo " - grubcfg" >> "$conf"
echo " - bootloader" >> "$conf"
echo " - postcfg" >> "$conf"
echo " - umount" >> "$conf"
echo "- show:" >> "$conf"
echo " - finished" >> "$conf"
echo " - grubcfg" >> "$conf"
echo " - bootloader" >> "$conf"
echo " - postcfg" >> "$conf"
echo " - umount" >> "$conf"
echo " - show:" >> "$conf"
echo " - finished" >> "$conf"
echo '' >> "$conf"
echo "branding: ${iso_name}" >> "$conf"
echo '' >> "$conf"