Ruby on Rails ウェブサイトを Google Cloud のアプリ エンジンにデプロイしています。 CloudSQL データベースを(多かれ少なかれ)構成済みで、単にデータベースを移行したいと考えています。 Google では、次のコマンドを実行することを推奨しています。
バンドル実行 rake appengine:exec – バンドル実行 rake db:移行
そうすると、次のエラーが表示されます。
rake aborted!
NoMethodError: undefined method `[]' for nil:NilClass (NoMethodError)
container = app_info["deployment"]["container"]
^^^^^^^^^^^^^
Tasks: TOP => appengine:exec
(See full trace by running task with --trace)
これをデバッグする方法がわかりません。何か試せることがあれば、ぜひ教えてください。または、この問題を直接解決する方法に関する情報をお持ちでしたら、それでも構いません。
ありがとう!
アプリのルート ディレクトリを再帰的に検索したところ、バイナリ ファイル内に app_info が見つかりました。それを見たらどうすればいいのか分かりませんでした。
他の多くのスタック オーバーフロー スレッドを調べましたが、同様のものは見つかりませんでした。
app.yaml と database.yml が正しく構造化されていることを (能力の限り) 確認しました。
私も同じ問題を抱えており、プルリクエストをリポジトリに送信しました。 https://translate.google.com/translate?hl=ja&sl=en&tl=ja&u=https://github.com/GoogleCloudPlatform/serverless-exec-ruby/pull/28