33 lines
630 B
Go
33 lines
630 B
Go
package generate
|
|
|
|
import (
|
|
"bytes"
|
|
"encoding/json"
|
|
"fmt"
|
|
"os"
|
|
|
|
"github.com/zeromicro/go-zero/tools/goctl/plugin"
|
|
)
|
|
|
|
func Do(filename, host, basePath, schemes, pack, response string, in *plugin.Plugin) error {
|
|
swagger, err := applyGenerate(in, host, basePath, schemes, pack, response)
|
|
if err != nil {
|
|
fmt.Println(err)
|
|
}
|
|
var formatted bytes.Buffer
|
|
enc := json.NewEncoder(&formatted)
|
|
enc.SetIndent("", " ")
|
|
|
|
if err := enc.Encode(swagger); err != nil {
|
|
fmt.Println(err)
|
|
}
|
|
|
|
output := in.Dir + "/" + filename
|
|
|
|
err = os.WriteFile(output, formatted.Bytes(), 0o666)
|
|
if err != nil {
|
|
fmt.Println(err)
|
|
}
|
|
return err
|
|
}
|