zrok/cmd/zrok/main.go

89 lines
1.9 KiB
Go
Raw Normal View History

2022-07-19 20:17:51 +02:00
package main
import (
"github.com/michaelquigley/pfxlog"
"github.com/sirupsen/logrus"
"github.com/spf13/cobra"
"os"
"path/filepath"
"strings"
)
func init() {
2023-01-13 21:12:18 +01:00
pfxlog.GlobalInit(logrus.InfoLevel, pfxlog.DefaultOptions().SetTrimPrefix("github.com/openziti/"))
rootCmd.PersistentFlags().BoolVarP(&verbose, "verbose", "v", false, "Enable verbose logging")
2022-09-26 19:55:15 +02:00
rootCmd.PersistentFlags().BoolVarP(&panicInstead, "panic", "p", false, "Panic instead of showing pretty errors")
rootCmd.AddCommand(accessCmd)
adminCmd.AddCommand(adminCreateCmd)
2022-12-02 15:08:38 +01:00
adminCmd.AddCommand(adminDeleteCmd)
2022-12-02 15:43:25 +01:00
adminCmd.AddCommand(adminListCmd)
2022-12-02 18:19:41 +01:00
adminCmd.AddCommand(adminUpdateCmd)
rootCmd.AddCommand(adminCmd)
2023-01-09 21:24:01 +01:00
rootCmd.AddCommand(configCmd)
rootCmd.AddCommand(shareCmd)
rootCmd.AddCommand(testCmd)
2022-07-19 20:17:51 +02:00
}
var rootCmd = &cobra.Command{
Use: strings.TrimSuffix(filepath.Base(os.Args[0]), filepath.Ext(os.Args[0])),
Short: "zrok",
PersistentPreRun: func(_ *cobra.Command, _ []string) {
if verbose {
logrus.SetLevel(logrus.DebugLevel)
}
},
}
var verbose bool
2022-09-26 19:55:15 +02:00
var panicInstead bool
2022-07-19 22:15:54 +02:00
2022-11-23 17:34:02 +01:00
var accessCmd = &cobra.Command{
Use: "access",
2023-01-04 20:42:58 +01:00
Short: "Create frontend access for shares",
}
var adminCmd = &cobra.Command{
Use: "admin",
Short: "Administration and operations functions",
2022-11-23 17:34:02 +01:00
}
var adminCreateCmd = &cobra.Command{
Use: "create",
Short: "Create global resources",
}
2022-12-02 15:08:38 +01:00
var adminDeleteCmd = &cobra.Command{
Use: "delete",
Short: "Delete global resources",
}
2022-12-02 15:43:25 +01:00
var adminListCmd = &cobra.Command{
Use: "list",
Short: "List global resources",
}
2022-12-02 18:19:41 +01:00
var adminUpdateCmd = &cobra.Command{
Use: "update",
Short: "Update global resources",
}
2023-01-09 21:24:01 +01:00
var configCmd = &cobra.Command{
Use: "config",
Short: "Configure your zrok environment",
}
var shareCmd = &cobra.Command{
Use: "share",
2023-01-04 20:42:58 +01:00
Short: "Create backend access for shares",
}
var testCmd = &cobra.Command{
Use: "test",
Short: "Utilities for testing zrok deployments",
}
2022-07-19 20:17:51 +02:00
func main() {
if err := rootCmd.Execute(); err != nil {
panic(err)
}
}