From 3f299c7d4365a9cd03c7c5dafab861bc2a69eb3f Mon Sep 17 00:00:00 2001 From: Achilleas Koutsou Date: Wed, 15 Feb 2023 14:34:56 +0100 Subject: [PATCH] distro: add ShellVars field to ImageConfig --- internal/distro/fedora/images.go | 1 + internal/distro/image_config.go | 3 +++ internal/distro/rhel7/images.go | 1 + internal/distro/rhel8/images.go | 1 + internal/distro/rhel9/images.go | 1 + 5 files changed, 7 insertions(+) diff --git a/internal/distro/fedora/images.go b/internal/distro/fedora/images.go index f5359c3d7..abf4c493a 100644 --- a/internal/distro/fedora/images.go +++ b/internal/distro/fedora/images.go @@ -143,6 +143,7 @@ func osCustomizations( // should have been validated before this point. panic(fmt.Sprintf("failed to convert file customizations to fs node files: %v", err)) } + osc.ShellInit = imageConfig.ShellInit osc.Grub2Config = imageConfig.Grub2Config osc.Sysconfig = imageConfig.Sysconfig diff --git a/internal/distro/image_config.go b/internal/distro/image_config.go index 5d0d4956f..cb688f3b8 100644 --- a/internal/distro/image_config.go +++ b/internal/distro/image_config.go @@ -5,6 +5,7 @@ import ( "reflect" "github.com/osbuild/osbuild-composer/internal/osbuild" + "github.com/osbuild/osbuild-composer/internal/shell" ) type RHSMSubscriptionStatus string @@ -38,6 +39,8 @@ type ImageConfig struct { // Disable documentation ExcludeDocs *bool + ShellInit []shell.InitFile + // for RHSM configuration, we need to potentially distinguish the case // when the user want the image to be subscribed on first boot and when not RHSMConfig map[RHSMSubscriptionStatus]*osbuild.RHSMStageOptions diff --git a/internal/distro/rhel7/images.go b/internal/distro/rhel7/images.go index d853dee13..d36a37dcb 100644 --- a/internal/distro/rhel7/images.go +++ b/internal/distro/rhel7/images.go @@ -156,6 +156,7 @@ func osCustomizations( // should have been validated before this point. panic(fmt.Sprintf("failed to convert file customizations to fs node files: %v", err)) } + osc.ShellInit = imageConfig.ShellInit osc.Grub2Config = imageConfig.Grub2Config osc.Sysconfig = imageConfig.Sysconfig diff --git a/internal/distro/rhel8/images.go b/internal/distro/rhel8/images.go index 40b7bbd0f..0c8b83b40 100644 --- a/internal/distro/rhel8/images.go +++ b/internal/distro/rhel8/images.go @@ -162,6 +162,7 @@ func osCustomizations( // should have been validated before this point. panic(fmt.Sprintf("failed to convert file customizations to fs node files: %v", err)) } + osc.ShellInit = imageConfig.ShellInit osc.Grub2Config = imageConfig.Grub2Config osc.Sysconfig = imageConfig.Sysconfig diff --git a/internal/distro/rhel9/images.go b/internal/distro/rhel9/images.go index 0baf7b1a3..156f43165 100644 --- a/internal/distro/rhel9/images.go +++ b/internal/distro/rhel9/images.go @@ -159,6 +159,7 @@ func osCustomizations( // should have been validated before this point. panic(fmt.Sprintf("failed to convert file customizations to fs node files: %v", err)) } + osc.ShellInit = imageConfig.ShellInit osc.Grub2Config = imageConfig.Grub2Config osc.Sysconfig = imageConfig.Sysconfig