'goapp deploy'和'appcf.py'之间的区别是在Google App Engine上部署我的应用程序?

时间:2016-03-29 17:28:31

标签: google-app-engine go deployment

我不明白

之间的区别
goapp deploy -application <YOUR_PROJECT_ID> myapp/

appcfg.py -A <YOUR_PROJECT_ID_> -V v1 update myapp/

尝试在Google应用引擎中部署我的应用时。请有人开导我吗?

2 个答案:

答案 0 :(得分:3)

记录在Uploading, Downloading, and Managing a Go App中:

  

goapp deploy包装了SDK中提供的appcfg.py python工具。如果您需要更好地控制部署,也可以直接调用此工具。

goapp deploy相当于appcfg.py update myapp/

这些命令自动从app.yaml获取应用程序ID和其他配置。您可以使用-application的{​​{1}}参数或goapp的{​​{1}}来覆盖应用程序ID。

因此-A调用了appcfg.py,这是隐藏goapp deploy的便捷方法。

appcfg.py

部署位于appcfg.py文件夹中的应用程序。将从必须位于goapp deploy -application <YOUR_PROJECT_ID> myapp/ 的{​​{1}}文件中读取配置。该命令还会覆盖应用程序ID(如果存在于myapp中),将改为使用app.yaml

myapp/app.yaml

这也会部署应用程序,但app.yaml会覆盖<YOUR_PROJECT_ID>中可能存在的版本,并将使用版本appcfg.py -A <YOUR_PROJECT_ID> -V v1 update myapp/ -V用于覆盖myapp/app.yaml的ID,在这种情况下为v1

答案 1 :(得分:1)

goapp是从构建到部署的整个Go-on-App-Engine工作流程的通用工具;您可以使用相同的工具来安装依赖项(get),build您的应用,本地运行(serve)然后deploy它(以及运行测试,格式化)代码等)。

其中一些包装其他工具:goapp fmt可能只包裹gofmt,而goapp deploy只包裹appcfg.py update(请参阅docs