Selaa lähdekoodia

chore: refine docker for better compatible with package main (#1944)

* chore: refine docker for better compatible with package main

* chore: default to current dir on goctl docker command
Kevin Wan 2 vuotta sitten
vanhempi
sitoutus
289a325757

+ 1 - 1
tools/goctl/docker/cmd.go

@@ -21,7 +21,7 @@ var (
 )
 
 func init() {
-	Cmd.Flags().StringVar(&varStringGo, "go", "", "The file that contains main function")
+	Cmd.Flags().StringVar(&varStringGo, "go", ".", "The directory that contains main function")
 	Cmd.Flags().StringVar(&varStringBase, "base", "scratch", "The base image to build the docker image, default scratch")
 	Cmd.Flags().IntVar(&varIntPort, "port", 0, "The port to expose, default none")
 	Cmd.Flags().StringVar(&varStringHome, "home", "", "The goctl home path of the template, --home and --remote cannot be set at the same time, if they are, --remote has higher priority")

+ 6 - 1
tools/goctl/docker/docker.go

@@ -151,12 +151,17 @@ func generateDockerfile(goFile, base string, port int, version, timezone string,
 		builder.WriteString(`, "` + arg + `"`)
 	}
 
+	absGoPath, err := filepath.Abs(goFile)
+	if err != nil {
+		return err
+	}
+
 	t := template.Must(template.New("dockerfile").Parse(text))
 	return t.Execute(out, Docker{
 		Chinese:     env.InChina(),
 		GoRelPath:   projPath,
 		GoFile:      goFile,
-		ExeFile:     pathx.FileNameWithoutExt(filepath.Base(goFile)),
+		ExeFile:     filepath.Base(absGoPath),
 		BaseImage:   base,
 		HasPort:     port > 0,
 		Port:        port,

+ 1 - 1
tools/goctl/docker/docker.tpl

@@ -15,7 +15,7 @@ ADD go.sum .
 RUN go mod download
 COPY . .
 {{if .Argument}}COPY {{.GoRelPath}}/etc /app/etc
-{{end}}RUN go build -ldflags="-s -w" -o /app/{{.ExeFile}} {{.GoRelPath}}/{{.GoFile}}
+{{end}}RUN go build -ldflags="-s -w" -o /app/{{.ExeFile}} {{.GoRelPath}}
 
 
 FROM {{.BaseImage}}

+ 2 - 2
tools/goctl/model/sql/template/model.go

@@ -46,10 +46,10 @@ package {{.pkg}}
 {{.vars}}
 {{.types}}
 {{.new}}
-{{.insert}}
+{{.delete}}
 {{.find}}
+{{.insert}}
 {{.update}}
-{{.delete}}
 {{.extraMethod}}
 {{.tableName}}
 `, util.DoNotEditHead)