goctl-swagger/generate/generate.go

33 lines
604 B
Go
Raw Normal View History

2021-01-01 20:30:52 +08:00
package generate
import (
"bytes"
"encoding/json"
"fmt"
"io/ioutil"
2021-04-01 23:19:31 +08:00
2022-02-14 10:32:28 +08:00
"github.com/zeromicro/go-zero/tools/goctl/plugin"
2021-01-01 20:30:52 +08:00
)
2022-02-14 10:32:28 +08:00
func Do(filename string, host string, basePath string, in *plugin.Plugin) error {
2021-07-30 14:33:10 +08:00
swagger, err := applyGenerate(in, host, basePath)
2021-01-01 20:30:52 +08:00
if err != nil {
fmt.Println(err)
}
var formatted bytes.Buffer
enc := json.NewEncoder(&formatted)
enc.SetIndent("", " ")
if err := enc.Encode(swagger); err != nil {
2021-04-01 23:19:31 +08:00
fmt.Println(err)
2021-01-01 20:30:52 +08:00
}
2021-01-16 20:44:15 +08:00
output := in.Dir + "/" + filename
2021-01-01 20:30:52 +08:00
err = ioutil.WriteFile(output, formatted.Bytes(), 0666)
2021-04-01 23:19:31 +08:00
if err != nil {
fmt.Println(err)
}
2021-01-01 20:30:52 +08:00
return err
}