Files
warewulf/internal/app/wwctl/server/root.go
Jonathon Anderson 65f85a00a3 wwctl completions for no args
Signed-off-by: Jonathon Anderson <janderson@ciq.com>
2025-02-09 16:13:57 -07:00

39 lines
894 B
Go

package server
import (
"fmt"
"syscall"
"github.com/spf13/cobra"
"github.com/warewulf/warewulf/internal/app/wwctl/completions"
"github.com/warewulf/warewulf/internal/pkg/warewulfd"
)
var (
baseCmd = &cobra.Command{
DisableFlagsInUseLine: true,
Use: "server [OPTIONS]",
Short: "Start Warewulf server",
RunE: CobraRunE,
Args: cobra.NoArgs,
ValidArgsFunction: completions.None,
}
)
func GetCommand() *cobra.Command {
return baseCmd
}
func CobraRunE(cmd *cobra.Command, args []string) error {
oldMask := syscall.Umask(000)
defer syscall.Umask(oldMask)
if err := warewulfd.DaemonInitLogging(); err != nil {
return fmt.Errorf("failed to configure logging: %w", err)
}
if err := warewulfd.RunServer(); err != nil {
return fmt.Errorf("failed to start Warewulf server: %w", err)
}
return nil
}