🫨

GCPのconfig切り替えが面倒?mise + 対話入力で楽に切り替える方法

に公開

🧭 はじめに:GCP の config 切り替え、地味に面倒じゃないですか?

Google Cloud Platform(GCP)を複数プロジェクトで使っていると、gcloud config configurations activate コマンドで構成を切り替える場面がよくあります。

gcloud config configurations activate my-project-dev
gcloud config configurations activate my-project-prd

このようなコマンドを毎回打つのは意外とストレスです。

  • プロジェクト名を正確に覚えておく必要がある
  • 打ち間違えるとエラーになる
  • 毎回履歴やメモを確認するのが手間

そんなときにおすすめなのが miseグローバルタスク機能です。

💡 解決策:~/.config/mise/config.toml で常に使えるタスクを定義

mise では、~/.config/mise/config.toml にタスクを定義することで、どのディレクトリでも使えるグローバルタスクを登録できます。

🛠️ ステップ 1:対話スクリプトを作成

まず以下のスクリプトを ~/.config/mise/activate-gcp-config.sh として保存します:

#!/bin/bash
read -p "Enter GCP project name: " PROJECT_NAME
gcloud config configurations activate "$PROJECT_NAME"

保存したら、実行権限を付けます:

chmod +x ~/.config/mise/activate-gcp-config.sh

🛠️ ステップ 2:~/.config/mise/config.toml にタスクを定義

次に、~/.config/mise/config.toml に以下を追記します:

[tasks.activate-gcp-config]
description = "GCP Configをアクティブにする. PROJECT_NAMEはrun後に入力"
run = "~/.config/mise/activate-gcp-config.sh"

これで、どこからでも mise run activate-gcp-config を実行できるようになります。

▶️ 実行してみる

mise run

すると以下のようにタスク選択画面が表示されます:

mise run
Tasks
Select a task to run
❯ activate-gcp-config             GCP Configをアクティブにする. PROJECT_NAMEはrun後に入力
  gcp-config-configurations-list  GCPの設定リスト

activate-gcp-config を選ぶと、以下のプロンプトが表示されます:

Enter GCP project name:

ここに my-project-dev などと入力すれば:

gcloud config configurations activate my-project-dev

が自動実行されます。

📝 補足:config 名を忘れた?リスト表示タスクも追加しよう

以下のようなタスクも追加しておくと便利です:

[tasks.gcp-config-configurations-list]
alias = "gccl"
description = "GCPの設定リスト"
run = "gcloud config configurations list"

同様に mise run から実行できます:

mise run
Tasks
Select a task to run
  activate-gcp-config             GCP Configをアクティブにする. PROJECT_NAMEはrun後に入力
❯ gcp-config-configurations-list  GCPの設定リスト

これで設定一覧を確認してから確実に切り替えができます。

✅ まとめ

項目 内容
スクリプト配置先 ~/.config/mise/activate-gcp-config.sh
タスク定義先 ~/.config/mise/config.toml
実行方法 mise run activate-gcp-config または mise run → 選択

🏁 おわりに

mise のグローバルタスクを使えば、GCP の config 切り替えが驚くほど快適になります。

  • どのディレクトリからでも実行可能
  • 入力ミスを防げる
  • 思い出せない設定名も一覧で確認できる

毎日の「ちょっと面倒」を一つずつ減らしていきましょう!

🔗 参考リンク

Discussion