为Google App Engine设置crontab作业

时间:2017-01-28 16:24:11

标签: git google-app-engine gcloud

我正在尝试从Google App Engine自动部署我的应用。因此,我直接从Google Cloud Shell为此任务设置了一个crontab作业。它会检查是否有任何传入推送到git的主服务器,它会自动提取更改并自动部署应用程序。

拉动过程很好。我的问题是,当从crontab执行shell时,它会调用gcloud app deploy将应用程序部署到app目录中。但是,它会提示需要auth登录才能部署应用程序。但如果我直接致电gcloud app deploy,它的工作正常。

所以我想知道如果我想调用gcloud命令,如何避免crontab作业中的auth登录过程。 `

1 个答案:

答案 0 :(得分:0)

计算机上的每个用户都有自己的gcloud config目录,其中包含自己的一组凭据。您的crontab可能是以root用户身份运行的,该用户未使用与手动登录时相同的配置。您需要以crontab正在运行的用户身份登录。

话虽如此,这种策略不太适合你。云外壳用于通过浏览器进行交互式使用,并在不活动时间后断开连接。您将无法从那里运行持久的自动化流程。