summaryrefslogtreecommitdiff
path: root/cmd/cobra.go
diff options
context:
space:
mode:
Diffstat (limited to 'cmd/cobra.go')
-rw-r--r--cmd/cobra.go33
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
+}