使用Google的Maven GAE插件上传OAuth2无密码GAE

时间:2013-06-04 19:44:52

标签: google-app-engine maven oauth-2.0 maven-gae-plugin

我知道Google支持无密码GAE应用上传使用appcfg。{sh,cmd],如下所述:https://developers.google.com/appengine/docs/java/tools/uploadinganapp#Passwordless_Login_with_OAuth2

但是,我想知道我是否可以使用Google's official Maven GAE plugin做同样的事情。有一个名为appengine:update的目标,用于将本地GAE应用上传到云端。但是,我无法在任何地方找到有关这是否支持OAuth2的信息。任何人都知道我如何结合OAuth2和这个Maven插件?

之所以如此,是因为我正在使用Jenkins构建我的项目,而我更愿意在构建过程中使用Maven目标自动上传我的应用程序而不是运行脚本(比Maven目标更复杂)作为后期建立步骤。

2 个答案:

答案 0 :(得分:6)

似乎在GAE Maven插件的最新版本中已经得到了改进(不需要appcfg调用)。它足以调用:

mvn clean appengine:update

如果没有〜/ .appcfg_oauth2_tokens_java,它会弹出您的浏览器,并要求获取Google帐户的凭据。验证成功后,您将看到OAuth2令牌。将它粘贴到您调用mvn的终端窗口中,然后就完成了。

答案 1 :(得分:0)

看来appengine:update会自动支持OAuth2。我只需要使用appcfg.sh运行手动构建。如果那个shell脚本在你的PATH上,那么命令看起来像这样:

appcfg.sh --oauth2 update myapp/war-directory

按照手动步骤部署我的应用并为我的用户下载OAuth2令牌后,我可以运行mvn appengine:udpate。这将检测我的OAuth2令牌,而不需要任何手动交互。