From a392d71da6fd8e82a7e93fe63abe746908a0c0e8 Mon Sep 17 00:00:00 2001 From: Tomas Hozza Date: Tue, 15 Feb 2022 20:56:40 +0100 Subject: [PATCH] Move `kernelCmdlineStageOptions()` from distros to `osbuild2` Move the `kernelCmdlineStageOptions()` function duplicated in many distro definitions to the `osbuild2` package as `NewKernelCmdlineStageOptions()`. This will prevent creating another copy of the code in rhel-84 for the `gce` image. Signed-off-by: Tomas Hozza --- internal/distro/rhel85/pipelines.go | 2 +- internal/distro/rhel85/stage_options.go | 7 ------- internal/distro/rhel86/pipelines.go | 2 +- internal/distro/rhel86/stage_options.go | 7 ------- internal/distro/rhel90/pipelines.go | 2 +- internal/distro/rhel90/stage_options.go | 7 ------- internal/distro/rhel90beta/pipelines.go | 2 +- internal/distro/rhel90beta/stage_options.go | 7 ------- internal/osbuild2/kernel_cmdline_stage.go | 7 +++++++ 9 files changed, 11 insertions(+), 32 deletions(-) diff --git a/internal/distro/rhel85/pipelines.go b/internal/distro/rhel85/pipelines.go index 75a74d0ff..d40ec5f85 100644 --- a/internal/distro/rhel85/pipelines.go +++ b/internal/distro/rhel85/pipelines.go @@ -68,7 +68,7 @@ func prependKernelCmdlineStage(pipeline *osbuild.Pipeline, t *imageType, pt *dis if rootPartition == nil { panic("s390x image must have a root partition, this is a programming error") } - kernelStage := osbuild.NewKernelCmdlineStage(kernelCmdlineStageOptions(rootPartition.Filesystem.UUID, t.kernelOptions)) + kernelStage := osbuild.NewKernelCmdlineStage(osbuild.NewKernelCmdlineStageOptions(rootPartition.Filesystem.UUID, t.kernelOptions)) pipeline.Stages = append([]*osbuild.Stage{kernelStage}, pipeline.Stages...) } return pipeline diff --git a/internal/distro/rhel85/stage_options.go b/internal/distro/rhel85/stage_options.go index 9ae5b64a9..90d876f27 100644 --- a/internal/distro/rhel85/stage_options.go +++ b/internal/distro/rhel85/stage_options.go @@ -532,13 +532,6 @@ func qemuStageOptions(filename, format, compat string) *osbuild.QEMUStageOptions } } -func kernelCmdlineStageOptions(rootUUID string, kernelOptions string) *osbuild.KernelCmdlineStageOptions { - return &osbuild.KernelCmdlineStageOptions{ - RootFsUUID: rootUUID, - KernelOpts: kernelOptions, - } -} - func nginxConfigStageOptions(path, htmlRoot, listen string) *osbuild.NginxConfigStageOptions { // configure nginx to work in an unprivileged container cfg := &osbuild.NginxConfig{ diff --git a/internal/distro/rhel86/pipelines.go b/internal/distro/rhel86/pipelines.go index 4e1d87908..4a6115478 100644 --- a/internal/distro/rhel86/pipelines.go +++ b/internal/distro/rhel86/pipelines.go @@ -47,7 +47,7 @@ func prependKernelCmdlineStage(pipeline *osbuild.Pipeline, t *imageType, pt *dis if rootPartition == nil { panic("s390x image must have a root partition, this is a programming error") } - kernelStage := osbuild.NewKernelCmdlineStage(kernelCmdlineStageOptions(rootPartition.Filesystem.UUID, t.kernelOptions)) + kernelStage := osbuild.NewKernelCmdlineStage(osbuild.NewKernelCmdlineStageOptions(rootPartition.Filesystem.UUID, t.kernelOptions)) pipeline.Stages = append([]*osbuild.Stage{kernelStage}, pipeline.Stages...) } return pipeline diff --git a/internal/distro/rhel86/stage_options.go b/internal/distro/rhel86/stage_options.go index 7d242f9f4..aa2d8c9c0 100644 --- a/internal/distro/rhel86/stage_options.go +++ b/internal/distro/rhel86/stage_options.go @@ -573,13 +573,6 @@ func qemuStageOptions(filename, format, compat string) *osbuild.QEMUStageOptions } } -func kernelCmdlineStageOptions(rootUUID string, kernelOptions string) *osbuild.KernelCmdlineStageOptions { - return &osbuild.KernelCmdlineStageOptions{ - RootFsUUID: rootUUID, - KernelOpts: kernelOptions, - } -} - func nginxConfigStageOptions(path, htmlRoot, listen string) *osbuild.NginxConfigStageOptions { // configure nginx to work in an unprivileged container cfg := &osbuild.NginxConfig{ diff --git a/internal/distro/rhel90/pipelines.go b/internal/distro/rhel90/pipelines.go index e9dddb138..e1021a962 100644 --- a/internal/distro/rhel90/pipelines.go +++ b/internal/distro/rhel90/pipelines.go @@ -43,7 +43,7 @@ func qcow2Pipelines(t *imageType, customizations *blueprint.Customizations, opti func prependKernelCmdlineStage(pipeline *osbuild.Pipeline, t *imageType, pt *disk.PartitionTable) *osbuild.Pipeline { rootFsUUID := pt.RootPartition().Filesystem.UUID - kernelStage := osbuild.NewKernelCmdlineStage(kernelCmdlineStageOptions(rootFsUUID, t.kernelOptions)) + kernelStage := osbuild.NewKernelCmdlineStage(osbuild.NewKernelCmdlineStageOptions(rootFsUUID, t.kernelOptions)) pipeline.Stages = append([]*osbuild.Stage{kernelStage}, pipeline.Stages...) return pipeline } diff --git a/internal/distro/rhel90/stage_options.go b/internal/distro/rhel90/stage_options.go index 3774b15d4..9095b4bec 100644 --- a/internal/distro/rhel90/stage_options.go +++ b/internal/distro/rhel90/stage_options.go @@ -574,13 +574,6 @@ func qemuStageOptions(filename, format, compat string) *osbuild.QEMUStageOptions } } -func kernelCmdlineStageOptions(rootUUID string, kernelOptions string) *osbuild.KernelCmdlineStageOptions { - return &osbuild.KernelCmdlineStageOptions{ - RootFsUUID: rootUUID, - KernelOpts: kernelOptions, - } -} - func nginxConfigStageOptions(path, htmlRoot, listen string) *osbuild.NginxConfigStageOptions { // configure nginx to work in an unprivileged container cfg := &osbuild.NginxConfig{ diff --git a/internal/distro/rhel90beta/pipelines.go b/internal/distro/rhel90beta/pipelines.go index 17b5a6d88..44a225859 100644 --- a/internal/distro/rhel90beta/pipelines.go +++ b/internal/distro/rhel90beta/pipelines.go @@ -61,7 +61,7 @@ func qcow2Pipelines(t *imageType, customizations *blueprint.Customizations, opti func prependKernelCmdlineStage(pipeline *osbuild.Pipeline, t *imageType, pt *disk.PartitionTable) *osbuild.Pipeline { rootFsUUID := pt.RootPartition().Filesystem.UUID - kernelStage := osbuild.NewKernelCmdlineStage(kernelCmdlineStageOptions(rootFsUUID, t.kernelOptions)) + kernelStage := osbuild.NewKernelCmdlineStage(osbuild.NewKernelCmdlineStageOptions(rootFsUUID, t.kernelOptions)) pipeline.Stages = append([]*osbuild.Stage{kernelStage}, pipeline.Stages...) return pipeline } diff --git a/internal/distro/rhel90beta/stage_options.go b/internal/distro/rhel90beta/stage_options.go index 46758f1bb..9da2960c6 100644 --- a/internal/distro/rhel90beta/stage_options.go +++ b/internal/distro/rhel90beta/stage_options.go @@ -505,10 +505,3 @@ func qemuStageOptions(filename, format, compat string) *osbuild.QEMUStageOptions Format: options, } } - -func kernelCmdlineStageOptions(rootUUID string, kernelOptions string) *osbuild.KernelCmdlineStageOptions { - return &osbuild.KernelCmdlineStageOptions{ - RootFsUUID: rootUUID, - KernelOpts: kernelOptions, - } -} diff --git a/internal/osbuild2/kernel_cmdline_stage.go b/internal/osbuild2/kernel_cmdline_stage.go index c75624486..45e5d791d 100644 --- a/internal/osbuild2/kernel_cmdline_stage.go +++ b/internal/osbuild2/kernel_cmdline_stage.go @@ -17,3 +17,10 @@ func NewKernelCmdlineStage(options *KernelCmdlineStageOptions) *Stage { Options: options, } } + +func NewKernelCmdlineStageOptions(rootUUID string, kernelOptions string) *KernelCmdlineStageOptions { + return &KernelCmdlineStageOptions{ + RootFsUUID: rootUUID, + KernelOpts: kernelOptions, + } +}