123456789101112131415161718192021222324252627282930313233343536 |
- package gen
- import (
- "strings"
- "text/template"
- "zero/tools/goctl/util"
- "zero/tools/goctl/vars"
- )
- func GenerateDockerfile(goFile string, args ...string) error {
- relPath, err := util.PathFromGoSrc()
- if err != nil {
- return err
- }
- out, err := util.CreateIfNotExist("Dockerfile")
- if err != nil {
- return err
- }
- defer out.Close()
- var builder strings.Builder
- for _, arg := range args {
- builder.WriteString(`, "` + arg + `"`)
- }
- t := template.Must(template.New("dockerfile").Parse(dockerTemplate))
- return t.Execute(out, map[string]string{
- "projectName": vars.ProjectName,
- "goRelPath": relPath,
- "goFile": goFile,
- "exeFile": util.FileNameWithoutExt(goFile),
- "argument": builder.String(),
- })
- }
|