複数のGCPプロジェクトで並行作業していると、うっかり別のプロジェクトに gcloud app deploy
などしてしまうことがありませんか?私はあります。
事故そのものも悲しいんですが、事故のたびにアカウントとプロジェクトを切り替える方法を毎回ググっていて悲しいので自分用にまとめてみます。
状態確認
gcloudコマンドにはデフォルトのアカウントやプロジェクトが設定できます。何か作業する前に現在のデフォルト値を確認しましょう。
$ gcloud config list
(略)
[core]
account = ***@***.jp
disable_usage_reporting = True
project = ****
account
とproject
が期待通りの値か確認して、期待と違ったら設定し直す必要があります。
ちなみにデフォルト設定の実体は$HOME/.config/gcloud/configurations/config_default
以下にあります。1
アカウント切り替え
下記コマンドを打つとブラウザが立ち上がり、アカウント選択画面に遷移します。適宜アカウントを切り替えましょう。
$ gcloud auth login
プロジェクトの切り替え
下記コマンドを打つとプロジェクトが切り替わります。
$ gcloud config set project [PROJECT_ID]
Updated property [core/project].
別解:全コマンドでプロジェクトを明示的に指定する
私の知る限り、GCPで使うコマンドはいずれもプロジェクトを指定するオプションがあります。
-
gcloud
は--project
オプション -
bq
は--project_id
オプション -
gsutil mb
なら-p
オプション
特にお仕事で使うような場合はオペミス防止のために全コマンドについてプロジェクトを明示的に指定するのが良いでしょう。
まとめ
これで安心してgcloud app deploy
できますね。
慣れてくるとgcloud app deploy
のあとエンター2連打して確認をスキップしたくなるんですが、確認は大事ですぞ(確認を怠って消してはいけないものを上書きした人の意見)。
ちなみに上書きしてもWebコンソールからポチポチ操作すると旧バージョンに戻せます。さすがGAE。
-
MacとLinuxの場合。 ↩