如何使用gcloud将具有依赖关系的golang应用程序部署到应用程序引擎?

时间:2016-03-22 16:17:48

标签: google-app-engine go deployment gcloud

我有一个使用" github.com/gorilla/mux"我可以用goapp deploy部署它。但我不能对gcloud preview app deploy做同样的事情,因为我遇到了这个错误:

Beginning deployment...
Copying files to Google Cloud Storage...
Synchronizing files to [<googlecloudsdk.api_lib.app.cloud_storage.BucketReference object at 0x10514e790>].
File upload done.
Updating module [api]...failed.
ERROR: (gcloud.preview.app.deploy) Error Response: [9] Deployment contains files that cannot be compiled: Compile failed:
2016/03/22 09:06:40 go-app-builder: build timing: 1×6g (42ms total), 0×6l (0 total)
2016/03/22 09:06:40 go-app-builder: failed running 6g: exit status 1

api.go:29: can't find import: "github.com/gorilla/handlers"

我希望能够这样做,因为我需要在合并时从travisCI部署,我想使用service-client.json进行授权。

周围有什么办法吗?

2 个答案:

答案 0 :(得分:3)

自Google Cloud SDK 142.0.0以及app-engine-go 1.9.50以来,您应该能够部署您的应用

gcloud beta app deploy

这也使您可以使用CI / CD工具

答案 1 :(得分:2)

要直接回答您的问题,解决此问题的方法是使用{标准环境{App for Application}文档推荐的goapp deploy Deploying a Go App。在gcloud preview app deploy可用时,建议使用goapp来处理特定的环境和依赖性要求。

或者,如果您希望使用 gcloud ,则需要立即使用gcloud app deploygcloud preview app deploydeprecated and/or removed as of June 29, 2016