私はApp Engine Pythonアプリケーションを作成し、サービスアカウント経由で管理しようとしています(Googleアカウントで信頼できないマシンから開発を行っているためです)。資格情報)。App Engine cronをサービスアカウントで更新すると認証に失敗する
新しいコードバージョンをデプロイするのに成功しました。(ヒント:サービスアカウントApp Engineの「Deployer」と「Service Admin」の権限をIAMコンソールに与える必要があります。私は3つすべてを与え終わった)しかし、あなたはまた、myapp.appspot.com
とstaging.myapp.appspot.com
*)という名前のステージングとデプロイメントに使用されるGCSバケットに対する書き込み権限を持っていることを確認する必要がありますが、新しいcron.yaml
をデプロイできません。私がしようとすると:
$ gcloud app deploy cron.yaml
You are about to update the following configurations:
- myapp/cron (from [.../myapp/cron.yaml])
Do you want to continue (Y/n)?
Updating config [cron]...failed.
ERROR: (gcloud.app.deploy) Server responded with code [403]:
Forbidden Unexpected HTTP status 403.
You do not have permission to modify this app (app_id=u'p~myapp').
私は--verbosity=debug
とgcloud app deploy
を実行した場合、私はそれがhttps://appengine.google.com/api/cron/update?app_id=myapp
に要求を行うと、私はサービスアカウントのプロジェクトエディタまたは所有者に与えて試してみた403
を取り戻すだことがわかりますこれはうまくいきません。
*:この質問では、プロジェクトIDのインスタンスがすべてmyapp
に置き換えられました。
「gcloud auth login」と同じくらい単純なことはありますか? – GAEfan
ありがとうございますが、いいえ:サービスアカウントでアプリのコードにログインしてプッシュすることができます。プッシュしないのはcronの設定だけです。 –
あなたはバグを発見したようです。私たちは設定ファイルのデプロイメント([dos、dispatch、queue、indexes、cron] .yaml)のためのレガシバックエンドを使用しています。 [Cloud SDK問題追跡ツール](https://code.google.com/p/google-cloud-sdk/issues/list)にバグを報告すると、その問題に関する最新情報が得られます。そうでない場合は、プライベートトラッカーにバグをオープンするようにします。/App Engine Googler – Betamos