diff options
Diffstat (limited to 'cmd/cobra.go')
-rw-r--r-- | cmd/cobra.go | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/cmd/cobra.go b/cmd/cobra.go new file mode 100644 index 0000000..ad95ec0 --- /dev/null +++ b/cmd/cobra.go @@ -0,0 +1,33 @@ +package caddycmd + +import ( + "github.com/spf13/cobra" +) + +var rootCmd = &cobra.Command{ + Use: "caddy", +} + +const docsHeader = "{{if not .HasParent}} Caddy is an extensible server platform.\n\n{{end}}" +const fullDocsFooter = `Full documentation is available at: +https://caddyserver.com/docs/command-line +` + +func init() { + rootCmd.SetHelpTemplate(docsHeader + rootCmd.HelpTemplate() + "\n" + fullDocsFooter) +} + +func caddyCmdToCoral(caddyCmd Command) *cobra.Command { + cmd := &cobra.Command{ + Use: caddyCmd.Name, + Short: caddyCmd.Short, + Long: caddyCmd.Long, + RunE: func(cmd *cobra.Command, _ []string) error { + fls := cmd.Flags() + _, err := caddyCmd.Func(Flags{fls}) + return err + }, + } + cmd.Flags().AddGoFlagSet(caddyCmd.Flags) + return cmd +} |