blueprint: add support for kernel customization
This commit is contained in:
parent
ead3ae6cab
commit
8d010c0466
8 changed files with 22 additions and 8 deletions
|
|
@ -22,7 +22,7 @@ func (t *amiOutput) translate(b *Blueprint) *pipeline.Pipeline {
|
|||
addF30FixBlsStage(p)
|
||||
addF30LocaleStage(p)
|
||||
addF30FSTabStage(p)
|
||||
addF30GRUB2Stage(p)
|
||||
addF30GRUB2Stage(p, nil)
|
||||
addF30SELinuxStage(p)
|
||||
addF30QemuAssembler(p, "qcow2", t.getName())
|
||||
return p
|
||||
|
|
|
|||
|
|
@ -73,6 +73,14 @@ func (b *Blueprint) ToPipeline(outputFormat string) (*pipeline.Pipeline, error)
|
|||
return nil, &InvalidOutputFormatError{outputFormat}
|
||||
}
|
||||
|
||||
func (b *Blueprint) getKernelCustomization() *KernelCustomization {
|
||||
if b.Customizations == nil {
|
||||
return nil
|
||||
}
|
||||
|
||||
return b.Customizations.Kernel
|
||||
}
|
||||
|
||||
// FilenameFromType gets the canonical filename and MIME type for a given
|
||||
// output format
|
||||
func FilenameFromType(outputFormat string) (string, string, error) {
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@ type diskOutput struct{}
|
|||
func (t *diskOutput) translate(b *Blueprint) *pipeline.Pipeline {
|
||||
p := getF30Pipeline()
|
||||
addF30FSTabStage(p)
|
||||
addF30GRUB2Stage(p)
|
||||
addF30GRUB2Stage(p, b.getKernelCustomization())
|
||||
addF30SELinuxStage(p)
|
||||
addF30QemuAssembler(p, "raw", t.getName())
|
||||
return p
|
||||
|
|
|
|||
|
|
@ -78,15 +78,21 @@ func getCustomF30PackageSet(packages []string, excludedPackages []string) *pipel
|
|||
return p
|
||||
}
|
||||
|
||||
func addF30GRUB2Stage(p *pipeline.Pipeline) {
|
||||
func addF30GRUB2Stage(p *pipeline.Pipeline, kernelCustomization *KernelCustomization) {
|
||||
id, err := uuid.Parse("76a22bf4-f153-4541-b6c7-0332c0dfaeac")
|
||||
if err != nil {
|
||||
panic("invalid UUID")
|
||||
}
|
||||
kernelOptions := "ro biosdevname=0 net.ifnames=0"
|
||||
|
||||
if kernelCustomization != nil {
|
||||
kernelOptions += " " + kernelCustomization.Append
|
||||
}
|
||||
|
||||
p.AddStage(pipeline.NewGRUB2Stage(
|
||||
&pipeline.GRUB2StageOptions{
|
||||
RootFilesystemUUID: id,
|
||||
KernelOptions: "ro biosdevname=0 net.ifnames=0",
|
||||
KernelOptions: kernelOptions,
|
||||
},
|
||||
))
|
||||
}
|
||||
|
|
|
|||
|
|
@ -21,7 +21,7 @@ func (t *openstackOutput) translate(b *Blueprint) *pipeline.Pipeline {
|
|||
p := getCustomF30PackageSet(packages[:], []string{})
|
||||
addF30LocaleStage(p)
|
||||
addF30FSTabStage(p)
|
||||
addF30GRUB2Stage(p)
|
||||
addF30GRUB2Stage(p, b.getKernelCustomization())
|
||||
addF30SELinuxStage(p)
|
||||
addF30FixBlsStage(p)
|
||||
addF30QemuAssembler(p, "qcow2", t.getName())
|
||||
|
|
|
|||
|
|
@ -25,7 +25,7 @@ func (t *qcow2Output) translate(b *Blueprint) *pipeline.Pipeline {
|
|||
p := getCustomF30PackageSet(packages[:], excludedPackages[:])
|
||||
addF30LocaleStage(p)
|
||||
addF30FSTabStage(p)
|
||||
addF30GRUB2Stage(p)
|
||||
addF30GRUB2Stage(p, b.getKernelCustomization())
|
||||
addF30SELinuxStage(p)
|
||||
addF30FixBlsStage(p)
|
||||
addF30QemuAssembler(p, "qcow2", t.getName())
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@ func (t *vhdOutput) translate(b *Blueprint) *pipeline.Pipeline {
|
|||
p := getCustomF30PackageSet(packages[:], []string{})
|
||||
addF30LocaleStage(p)
|
||||
addF30FSTabStage(p)
|
||||
addF30GRUB2Stage(p)
|
||||
addF30GRUB2Stage(p, b.getKernelCustomization())
|
||||
addF30SELinuxStage(p)
|
||||
addF30FixBlsStage(p)
|
||||
addF30QemuAssembler(p, "qcow2", t.getName())
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@ type vmdkOutput struct{}
|
|||
func (t *vmdkOutput) translate(b *Blueprint) *pipeline.Pipeline {
|
||||
p := getF30Pipeline()
|
||||
addF30FSTabStage(p)
|
||||
addF30GRUB2Stage(p)
|
||||
addF30GRUB2Stage(p, b.getKernelCustomization())
|
||||
addF30SELinuxStage(p)
|
||||
addF30QemuAssembler(p, "vmdk", t.getName())
|
||||
return p
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue