validate.go 601 B

123456789101112131415161718192021222324252627282930313233
  1. package validate
  2. import (
  3. "errors"
  4. "fmt"
  5. "github.com/logrusorgru/aurora"
  6. "github.com/spf13/cobra"
  7. "github.com/zeromicro/go-zero/tools/goctl/api/parser"
  8. )
  9. // VarStringAPI describes an API.
  10. var VarStringAPI string
  11. // GoValidateApi verifies whether the api has a syntax error
  12. func GoValidateApi(_ *cobra.Command, _ []string) error {
  13. apiFile := VarStringAPI
  14. if len(apiFile) == 0 {
  15. return errors.New("missing -api")
  16. }
  17. spec, err := parser.Parse(apiFile)
  18. if err != nil {
  19. return err
  20. }
  21. err = spec.Validate()
  22. if err == nil {
  23. fmt.Println(aurora.Green("api format ok"))
  24. }
  25. return err
  26. }