diff --git a/CHANGELOG.md b/CHANGELOG.md index f1dafdf9..3ab75d0c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -73,6 +73,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). - `wwctl node list --fullall` has been removed - `wwctl profile list --fullall` has been removed - Remove `wwctl server ` #508 +- Remove `wwctl overlay build --host` #1419 +- Remove `wwctl overlay build --nodes` #1419 ### Fixed diff --git a/internal/app/wwctl/overlay/build/main.go b/internal/app/wwctl/overlay/build/main.go index 819d08df..5fb89b62 100644 --- a/internal/app/wwctl/overlay/build/main.go +++ b/internal/app/wwctl/overlay/build/main.go @@ -3,20 +3,16 @@ package build import ( "errors" "fmt" - "os" "strings" "syscall" "github.com/spf13/cobra" - warewulfconf "github.com/warewulf/warewulf/internal/pkg/config" "github.com/warewulf/warewulf/internal/pkg/hostlist" "github.com/warewulf/warewulf/internal/pkg/node" "github.com/warewulf/warewulf/internal/pkg/overlay" - "github.com/warewulf/warewulf/internal/pkg/wwlog" ) func CobraRunE(cmd *cobra.Command, args []string) error { - controller := warewulfconf.Get() nodeDB, err := node.New() if err != nil { return fmt.Errorf("could not open node configuration: %s", err) @@ -54,43 +50,29 @@ func CobraRunE(cmd *cobra.Command, args []string) error { if len(args) > 0 { if len(db) != 1 { - return errors.New("nust specify one node to build overlay") + return errors.New("must specify one node to build overlay") } for _, node := range db { return overlay.BuildOverlayIndir(node, OverlayNames, OverlayDir) } } else { - // TODO this seems different than what is set in BuildHostOverlay - hostname, _ := os.Hostname() - node := node.NewNode(hostname) - wwlog.Info("building overlay for host: %s", hostname) - return overlay.BuildOverlayIndir(node, OverlayNames, OverlayDir) - + return errors.New("must specify a node to build overlay") } } - if BuildHost && controller.Warewulf.EnableHostOverlay() { - err := overlay.BuildHostOverlay() - if err != nil { - return fmt.Errorf("host overlay could not be built: %s", err) - } + oldMask := syscall.Umask(007) + defer syscall.Umask(oldMask) + + if len(OverlayNames) > 0 { + err = overlay.BuildSpecificOverlays(db, OverlayNames) + } else { + err = overlay.BuildAllOverlays(db) } - if BuildNodes || (!BuildHost && !BuildNodes) { - oldMask := syscall.Umask(007) - defer syscall.Umask(oldMask) - - if len(OverlayNames) > 0 { - err = overlay.BuildSpecificOverlays(db, OverlayNames) - } else { - err = overlay.BuildAllOverlays(db) - } - - if err != nil { - return fmt.Errorf("some overlays failed to be generated: %s", err) - } + if err != nil { + return fmt.Errorf("some overlays failed to be generated: %s", err) } return nil } diff --git a/internal/app/wwctl/overlay/build/root.go b/internal/app/wwctl/overlay/build/root.go index e5adbc7b..e24ad6b3 100644 --- a/internal/app/wwctl/overlay/build/root.go +++ b/internal/app/wwctl/overlay/build/root.go @@ -29,15 +29,11 @@ var ( return node_names, cobra.ShellCompDirectiveNoFileComp }, } - BuildHost bool - BuildNodes bool OverlayNames []string OverlayDir string ) func init() { - baseCmd.PersistentFlags().BoolVarP(&BuildHost, "host", "H", false, "Build overlays only for the host") - baseCmd.PersistentFlags().BoolVarP(&BuildNodes, "nodes", "N", false, "Build overlays only for the nodes") baseCmd.PersistentFlags().StringSliceVarP(&OverlayNames, "overlay", "O", []string{}, "Build only specific overlay(s)") if err := baseCmd.RegisterFlagCompletionFunc("overlay", func(cmd *cobra.Command, args []string, toComplete string) ([]string, cobra.ShellCompDirective) { @@ -46,7 +42,7 @@ func init() { }); err != nil { log.Println(err) } - baseCmd.PersistentFlags().StringVarP(&OverlayDir, "output", "o", "", `Do not create an overlay image, for distribution but write to + baseCmd.PersistentFlags().StringVarP(&OverlayDir, "output", "o", "", `Do not create an overlay image for distribution but write to the given directory. An overlay must also be ge given to use this option.`) }