makeshift/cmd/init.go

41 lines
853 B
Go

package cmd
import (
"git.towk2.me/towk/makeshift/pkg/service"
"github.com/rs/zerolog/log"
"github.com/spf13/cobra"
)
var initCmd = &cobra.Command{
Use: "init",
Example: `
# create default files and directories at specified root path
makeshift init $MAKESHIFT_ROOT
`,
Args: cobra.ExactArgs(1),
Short: "Initialize directory with default files",
Run: func(cmd *cobra.Command, args []string) {
var (
rootPath, _ = cmd.Flags().GetString("root")
server *service.Service
err error
)
// create the server root files and directories
err = server.Init()
if err != nil {
log.Error().Err(err).
Str("root", rootPath).
Msg("failed to initialize server root")
return
}
log.Debug().
Str("root", rootPath).
Msg("initialize makeshift files at root path")
},
}
func init() {
rootCmd.AddCommand(initCmd)
}