用curl登录谷歌?

时间:2016-03-14 05:39:23

标签: google-app-engine authentication curl command-line

我正在开发一个使用Google App Engine的项目。我正在使用Travis的持续集成,并希望能够直接从它进行部署。由于will not be resolved directly的错误,我无法依赖Travis的内置GAE部署,因此我基本上必须手动使用mvn appengine:update。这需要我导航到生成的URL并手动粘贴到终端一个身份验证代码,这是我在自动构建中无法做到的。

然而,有人建议我做一些Unix魔术。虽然我可以轻松地从grep中选择要导航到的网址,但仍需要使用我的凭据登录Google才能真正获取身份验证代码(然后我可以grep和管道到部署程序)。

鉴于此,如何使用我的凭据登录Google,仅使用curl或类似的命令行实用程序?

1 个答案:

答案 0 :(得分:1)

我过去使用服务帐户完成了类似的事情。这些可能非常适合您的问题。

服务帐户将允许您无需人工干预即可对您的应用进行身份验证和上传。

概述

通过设置密钥,服务帐户将允许您执行“无密码”身份验证,例如您可能已使用sshgit等。这将删除您手动登录的要求,或通过尝试自动进行“手动”登录来遵循疯狂之路。

基本上有两个步骤:

  1. 创建您的服务帐户和密钥(使用正确的权限)
  2. 使用该凭据代替您现在正在执行的操作
  3. 资源

    我认为最好提供一份资源清单而不是具体说明,因为它基本上不可能简洁地表达(即使这是一个简单的过程,也会有很多令人烦恼的小事),每个人的要求会略有不同谷歌可能会在某个时候改变这个过程。

    希望这足以让你朝着正确的方向前进。

    注意

    你可能不得不花一些时间看看你的.appcfg_oauth2_tokens_java并解决各种其他烦恼,但我相信这种方法是解决问题的最佳方法。

    听起来你有一个非常简单的设置,而且只有一个服务帐户可以让你到那里,但是如果你需要有点奇怪,the App Engine Admin API总是存在。