Update osbuild/images to v0.75.0

Signed-off-by: Tomáš Hozza <thozza@redhat.com>
This commit is contained in:
Tomáš Hozza 2024-08-07 16:36:28 +02:00 committed by Tomáš Hozza
parent 85e176f438
commit c3680ca0a7
105 changed files with 6457 additions and 603 deletions

View file

@ -80,6 +80,10 @@ type AnacondaInstaller struct {
// Temporary
UseRHELLoraxTemplates bool
// Uses the old, deprecated, Anaconda config option "kickstart-modules".
// Only for RHEL 8.
UseLegacyAnacondaConfig bool
}
func NewAnacondaInstaller(installerType AnacondaInstallerType,
@ -271,7 +275,14 @@ func (p *AnacondaInstaller) payloadStages() []*osbuild.Stage {
LoraxPath = "99-generic/runtime-postinstall.tmpl"
}
stages = append(stages, osbuild.NewAnacondaStage(osbuild.NewAnacondaStageOptions(p.AdditionalAnacondaModules, p.DisabledAnacondaModules)))
var anacondaStageOptions *osbuild.AnacondaStageOptions
if p.UseLegacyAnacondaConfig {
anacondaStageOptions = osbuild.NewAnacondaStageOptionsLegacy(p.AdditionalAnacondaModules, p.DisabledAnacondaModules)
} else {
anacondaStageOptions = osbuild.NewAnacondaStageOptions(p.AdditionalAnacondaModules, p.DisabledAnacondaModules)
}
stages = append(stages, osbuild.NewAnacondaStage(anacondaStageOptions))
stages = append(stages, osbuild.NewLoraxScriptStage(&osbuild.LoraxScriptStageOptions{
Path: LoraxPath,
BaseArch: p.platform.GetArch().String(),

View file

@ -14,6 +14,7 @@ import (
"github.com/osbuild/images/pkg/customizations/fsnode"
"github.com/osbuild/images/pkg/customizations/oscap"
"github.com/osbuild/images/pkg/customizations/shell"
"github.com/osbuild/images/pkg/customizations/subscription"
"github.com/osbuild/images/pkg/customizations/users"
"github.com/osbuild/images/pkg/disk"
"github.com/osbuild/images/pkg/osbuild"
@ -21,7 +22,6 @@ import (
"github.com/osbuild/images/pkg/platform"
"github.com/osbuild/images/pkg/rhsm/facts"
"github.com/osbuild/images/pkg/rpmmd"
"github.com/osbuild/images/pkg/subscription"
)
// OSCustomizations encapsulates all configuration applied to the base
@ -132,7 +132,8 @@ type OSCustomizations struct {
OpenSCAPRemediationConfig *oscap.RemediationConfig
Subscription *subscription.ImageOptions
RHSMConfig map[subscription.RHSMStatus]*osbuild.RHSMStageOptions
// The final RHSM config to be applied to the image
RHSMConfig *subscription.RHSMConfig
// Custom directories and files to create in the image
Directories []*fsnode.Directory
@ -254,7 +255,7 @@ func (p *OS) getPackageSetChain(Distro) []rpmmd.PackageSet {
// should already have the required packages, but some minimal image
// types, like 'tar' don't, so let's add them for the stage to run and
// to enable user management in the image.
packages = append(packages, "shadow-utils", "pam")
packages = append(packages, "shadow-utils", "pam", "passwd")
}
@ -306,7 +307,7 @@ func (p *OS) getBuildPackages(distro Distro) []string {
packages = append(packages, "python3-pyyaml")
}
}
if len(p.DNFConfig) > 0 || len(p.RHSMConfig) > 0 || p.WSLConfig != nil {
if len(p.DNFConfig) > 0 || p.RHSMConfig != nil || p.WSLConfig != nil {
packages = append(packages, "python3-iniparse")
}
@ -647,22 +648,18 @@ func (p *OS) serialize() osbuild.Pipeline {
}
pipeline.AddStage(osbuild.NewSystemdUnitCreateStage(regServiceStageOptions))
p.EnabledServices = append(p.EnabledServices, subscribeServiceFile)
if rhsmConfig, exists := p.RHSMConfig[subscription.RHSMConfigWithSubscription]; exists {
pipeline.AddStage(osbuild.NewRHSMStage(rhsmConfig))
}
} else {
if rhsmConfig, exists := p.RHSMConfig[subscription.RHSMConfigNoSubscription]; exists {
pipeline.AddStage(osbuild.NewRHSMStage(rhsmConfig))
}
}
if waConfig := p.WAAgentConfig; waConfig != nil {
pipeline.AddStage(osbuild.NewWAAgentConfStage(waConfig))
if p.RHSMConfig != nil {
pipeline.AddStage(osbuild.NewRHSMStage(osbuild.NewRHSMStageOptions(p.RHSMConfig)))
}
if udevRules := p.UdevRules; udevRules != nil {
pipeline.AddStage(osbuild.NewUdevRulesStage(udevRules))
if p.WAAgentConfig != nil {
pipeline.AddStage(osbuild.NewWAAgentConfStage(p.WAAgentConfig))
}
if p.UdevRules != nil {
pipeline.AddStage(osbuild.NewUdevRulesStage(p.UdevRules))
}
if pt := p.PartitionTable; pt != nil {
@ -795,8 +792,8 @@ func (p *OS) serialize() osbuild.Pipeline {
pipeline.AddStage(osbuild.GenShellInitStage(p.ShellInit))
}
if wslConf := p.WSLConfig; wslConf != nil {
pipeline.AddStage(osbuild.NewWSLConfStage(wslConf))
if p.WSLConfig != nil {
pipeline.AddStage(osbuild.NewWSLConfStage(p.WSLConfig))
}
if p.FIPS {