// BundleSchema represents the bundle block which can be used in different places of the Kairos configuration. It is used to reference a bundle and its confguration.
typeBundleSchemastruct{
DBstring`json:"db_path,omitempty"`
LocalFilebool`json:"local_file,omitempty"`
Repositorystring`json:"repository,omitempty"`
Rootfsstring`json:"rootfs_path,omitempty"`
Targets[]string`json:"targets,omitempty"`
}
// GrubOptionsSchema represents the grub options block which can be used in different places of the Kairos configuration. It is used to configure grub.
DefaultMenuEntrystring`json:"default_menu_entry,omitempty" description:"Change GRUB menu entry"`
ExtraActiveCmdlinestring`json:"extra_active_cmdline,omitempty" description:"Additional Kernel option cmdline to apply just for active"`
ExtraCmdlinestring`json:"extra_cmdline,omitempty" description:"Additional Kernel option cmdline to apply"`
ExtraPassiveCmdlinestring`json:"extra_passive_cmdline,omitempty" description:"Additional Kernel option cmdline to apply just for passive"`
ExtraRecoveryCmdlinestring`json:"extra_recovery_cmdline,omitempty" description:"Set additional boot commands when booting into recovery"`
NextEntrystring`json:"next_entry,omitempty" description:"Set the next reboot entry."`
SavedEntrystring`json:"saved_entry,omitempty" description:"Set the default boot entry."`
}
// PowerManagement is a meta structure to hold the different rules for managing power, which are not compatible between each other.
typePowerManagementstruct{
}
// NoPowerManagement is a meta structure used when the user does not define any power management options or when the user does not want to reboot or poweroff the machine.
typeNoPowerManagementstruct{
Rebootbool`json:"reboot,omitempty" const:"false" default:"false" description:"Reboot after installation"`
Poweroffbool`json:"poweroff,omitempty" const:"false" default:"false" description:"Power off after installation"`
}
// RebootOnly is a meta structure used to enforce that when the reboot option is set, the poweroff option is not set.
typeRebootOnlystruct{
Rebootbool`json:"reboot,omitempty" const:"true" default:"false" required:"true" description:"Reboot after installation"`
Poweroffbool`json:"poweroff,omitempty" const:"false" default:"false" description:"Power off after installation"`
}
// PowerOffOnly is a meta structure used to enforce that when the poweroff option is set, the reboot option is not set.
typePowerOffOnlystruct{
Rebootbool`json:"reboot,omitempty" const:"false" default:"false" description:"Reboot after installation"`
Poweroffbool`json:"poweroff,omitempty" const:"true" default:"false" required:"true" description:"Power off after installation"`
}
var_jsonschemago.OneOfExposer=PowerManagement{}
// The OneOfModel interface is only needed for the tests that check the new schema contain all needed fields
// it can be removed once the new schema is the single source of truth.
typeOneOfModelinterface{
JSONSchemaOneOf()[]interface{}
}
// JSONSchemaOneOf defines that different which are the different valid power management rules and states that one and only one of them needs to be validated for the entire schema to be valid.