diff --git a/cmd/zrok/accessPublic.go b/cmd/zrok/accessPublic.go index f3353929..a05743f6 100644 --- a/cmd/zrok/accessPublic.go +++ b/cmd/zrok/accessPublic.go @@ -9,8 +9,11 @@ import ( "github.com/spf13/cobra" ) +var accessPublicCmd *accessPublicCommand + func init() { - accessCmd.AddCommand(newAccessPublicCommand().cmd) + accessPublicCmd = newAccessPublicCommand() + accessCmd.AddCommand(accessPublicCmd.cmd) } type accessPublicCommand struct { @@ -29,7 +32,7 @@ func newAccessPublicCommand() *accessPublicCommand { return command } -func (self *accessPublicCommand) run(_ *cobra.Command, args []string) { +func (cmd *accessPublicCommand) run(_ *cobra.Command, args []string) { cfg := publicFrontend.DefaultConfig() if len(args) == 1 { if err := cfg.Load(args[0]); err != nil { diff --git a/cmd/zrok/accessPublicValidate.go b/cmd/zrok/accessPublicValidate.go new file mode 100644 index 00000000..a7de00d5 --- /dev/null +++ b/cmd/zrok/accessPublicValidate.go @@ -0,0 +1,37 @@ +package main + +import ( + "fmt" + "github.com/michaelquigley/cf" + "github.com/openziti/zrok/endpoints/publicFrontend" + "github.com/openziti/zrok/tui" + "github.com/sirupsen/logrus" + "github.com/spf13/cobra" +) + +func init() { + accessPublicCmd.cmd.AddCommand(newAccessPublicValidateCommand().cmd) +} + +type accessPublicValidateCommand struct { + cmd *cobra.Command +} + +func newAccessPublicValidateCommand() *accessPublicValidateCommand { + cmd := &cobra.Command{ + Use: "validate ", + Short: "Validate a zrok access public configuration document", + Args: cobra.ExactArgs(1), + } + command := &accessPublicValidateCommand{cmd: cmd} + cmd.Run = command.run + return command +} + +func (cmd *accessPublicValidateCommand) run(_ *cobra.Command, args []string) { + cfg := publicFrontend.DefaultConfig() + if err := cfg.Load(args[0]); err != nil { + tui.Error(fmt.Sprintf("unable to load configuration '%v'", args[0]), err) + } + logrus.Infof(cf.Dump(cfg, cf.DefaultOptions())) +} diff --git a/cmd/zrok/controllerValidate.go b/cmd/zrok/controllerValidate.go index ad115235..a09d106f 100644 --- a/cmd/zrok/controllerValidate.go +++ b/cmd/zrok/controllerValidate.go @@ -19,7 +19,7 @@ type controllerValidateCommand struct { func newControllerValidateCommand() *controllerValidateCommand { cmd := &cobra.Command{ Use: "validate ", - Short: "Validate a zrok controlle configuration document", + Short: "Validate a zrok controller configuration document", Args: cobra.ExactArgs(1), } command := &controllerValidateCommand{cmd: cmd}