如何将-ldflags传递到GAE构建



我有一个http服务。内部main.go我有一个全局version字符串。

package main
var version string

本地,我使用-ldflags "-X main.version=$VERSION构建$VERSION由Shell环境确定,例如:

VERSION=v0.16.0 go build ./cmd/app -ldflags "-X main.version=$VERSION

我最近决定试用Google App Engine,并从基本的YAML文件开始:

runtime: go111
handlers:
- url: /.*
  script: auto

我可以在YAML文件中设置什么,以指示GAE使用等效的LDFLAG构建以在我的版本字符串中烘烤?

我还应该提到我在构建时在本地使用GO111MODULE=on使用GO模块。

您无法使用app.yaml文件进行操作。但是,您可以使用Cloud Build来构建和部署应用程序为应用引擎。在您的CloudBuild.yaml中,您可以在构建步骤中添加一行

args: ['build', '-a', '-installsuffix', 'cgo', '-ldflags', '''-w''', '-o', 'main', './main.go']

最新更新