Skip to content

Commit

Permalink
distro: support setting 'no-fstab' in experimental flags
Browse files Browse the repository at this point in the history
Setting IMAGE_BUILDER_EXPERIMENTAL="no-fstab" will enable mount units
without /etc/fstab for any image type.
  • Loading branch information
achilleas-k committed Mar 4, 2025
1 parent 8bcd07a commit 996500e
Show file tree
Hide file tree
Showing 2 changed files with 23 additions and 0 deletions.
11 changes: 11 additions & 0 deletions pkg/distro/fedora/imagetype.go
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ import (
"github.com/osbuild/images/pkg/datasizes"
"github.com/osbuild/images/pkg/disk"
"github.com/osbuild/images/pkg/distro"
"github.com/osbuild/images/pkg/experimentalflags"
"github.com/osbuild/images/pkg/image"
"github.com/osbuild/images/pkg/manifest"
"github.com/osbuild/images/pkg/platform"
Expand Down Expand Up @@ -277,6 +278,16 @@ func (t *imageType) Manifest(bp *blueprint.Blueprint,
w = cw
}

if experimentalflags.Bool("no-fstab") {
if t.defaultImageConfig == nil {
t.defaultImageConfig = &distro.ImageConfig{
MountUnits: common.ToPtr(true),
}
} else {
t.defaultImageConfig.MountUnits = common.ToPtr(true)
}
}

containerSources := make([]container.SourceSpec, len(bp.Containers))
for idx, cont := range bp.Containers {
containerSources[idx] = container.SourceSpec{
Expand Down
12 changes: 12 additions & 0 deletions pkg/distro/rhel/imagetype.go
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,15 @@ import (

"slices"

"github.com/osbuild/images/internal/common"
"github.com/osbuild/images/internal/environment"
"github.com/osbuild/images/internal/workload"
"github.com/osbuild/images/pkg/blueprint"
"github.com/osbuild/images/pkg/container"
"github.com/osbuild/images/pkg/datasizes"
"github.com/osbuild/images/pkg/disk"
"github.com/osbuild/images/pkg/distro"
"github.com/osbuild/images/pkg/experimentalflags"
"github.com/osbuild/images/pkg/image"
"github.com/osbuild/images/pkg/manifest"
"github.com/osbuild/images/pkg/osbuild"
Expand Down Expand Up @@ -337,6 +339,16 @@ func (t *ImageType) Manifest(bp *blueprint.Blueprint,
}
}

if experimentalflags.Bool("no-fstab") {
if t.DefaultImageConfig == nil {
t.DefaultImageConfig = &distro.ImageConfig{
MountUnits: common.ToPtr(true),
}
} else {
t.DefaultImageConfig.MountUnits = common.ToPtr(true)
}
}

source := rand.NewSource(seed)
// math/rand is good enough in this case
/* #nosec G404 */
Expand Down

0 comments on commit 996500e

Please sign in to comment.