feat(goctl): Support gateway sample generation (#3049)
This commit is contained in:
62
tools/goctl/gateway/template.go
Normal file
62
tools/goctl/gateway/template.go
Normal file
@@ -0,0 +1,62 @@
|
||||
package gateway
|
||||
|
||||
import (
|
||||
_ "embed"
|
||||
"fmt"
|
||||
|
||||
"github.com/zeromicro/go-zero/tools/goctl/util/pathx"
|
||||
)
|
||||
|
||||
const (
|
||||
category = "gateway"
|
||||
etcTemplateFileFile = "etc.tpl"
|
||||
mainTemplateFile = "main.tpl"
|
||||
)
|
||||
|
||||
//go:embed conf.yml
|
||||
var etcTemplate string
|
||||
|
||||
//go:embed gateway.tpl
|
||||
var mainTemplate string
|
||||
|
||||
|
||||
var templates = map[string]string{
|
||||
etcTemplateFileFile: etcTemplate,
|
||||
mainTemplateFile: mainTemplate,
|
||||
}
|
||||
|
||||
// GenTemplates is the entry for command goctl template,
|
||||
// it will create the specified category
|
||||
func GenTemplates() error {
|
||||
return pathx.InitTemplates(category, templates)
|
||||
}
|
||||
|
||||
// RevertTemplate restores the deleted template files
|
||||
func RevertTemplate(name string) error {
|
||||
content, ok := templates[name]
|
||||
if !ok {
|
||||
return fmt.Errorf("%s: no such file name", name)
|
||||
}
|
||||
return pathx.CreateTemplate(category, name, content)
|
||||
}
|
||||
|
||||
// Clean deletes all template files
|
||||
func Clean() error {
|
||||
return pathx.Clean(category)
|
||||
}
|
||||
|
||||
// Update is used to update the template files, it will delete the existing old templates at first,
|
||||
// and then create the latest template files
|
||||
func Update() error {
|
||||
err := Clean()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
return pathx.InitTemplates(category, templates)
|
||||
}
|
||||
|
||||
// Category returns a const string value for rpc template category
|
||||
func Category() string {
|
||||
return category
|
||||
}
|
||||
Reference in New Issue
Block a user