Как передать -ldflags в сборку GAE?
У меня есть HTTP-сервис, написанный на Go. внутри main.go
У меня есть глобальный version
строка.
package main
var version string
Локально я строю используя -ldflags "-X main.version=$VERSION
где $VERSION
определяется средой оболочки, например:
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 на сборку с эквивалентными флагами ld для выпечки в моей строке версии?
Я должен также упомянуть, что я использую модули Go с GO111MODULE=on
локально при строительстве.
1 ответ
Вы не можете сделать это с помощью файла app.yaml. Однако вы можете использовать Cloud build для создания и развертывания приложения в App Engine. В вашем cloudbuild.yaml вы можете добавить строку к шагу сборки
args: ['build', '-a', '-installsuffix', 'cgo', '-ldflags', '''-w''', '-o', 'main', './main.go']