Edited at

GCEでsshするVMや登録済みのconfigをpecoで切り替える

More than 3 years have passed since last update.


あらまし

gcloudでproject移動するのがめんどくさいからなんとかする

の記事を元に、もっと楽をしたい気持ちが芽生えたので

sshするVMや登録済みのconfig選択をpecoを使って選択できるようにした。

configの詳細(configとは、登録方法など)に関しては以前まとめてましたので

よろしければあわせてどうぞ。

gcloud confing configurations コマンドでconfig設定を切り替える


動作確認環境

Mac OS X El Capitan ver:10.11.6


必要なパッケージ


設定

~/.zshrcなどzshの設定ファイルに以下を追記。


sshするVMをpecoで選択

function gssh() {

vm_data=$(gcloud compute instances list | peco)
instance_name=$(echo ${vm_data} | awk '{print $1}')
zone_name=$(echo ${vm_data} | awk '{print $2}')
if [ -n "${instance_name}" ] && [ -n "${zone_name}" ]; then
gcloud compute ssh ${instance_name} --zone ${zone_name}
fi}


登録済みのconfigをpecoで選択

function gcfg() {

configuration_name=$(gcloud config configurations list | peco | awk '{print $1}')
if [ -n "${configuration_name}" ]; then
gcloud config configurations activate "${configuration_name}"
fi}


使い方


gssh


  • 現在configに設定されているgcpのVM一覧が表示される。

  • 選択すれば gcloud compute ssh コマンドで選択したVMへのSSH接続を試みる。


gcfg


  • 現在登録したconfig一覧が表示される。

  • 選択すれば gcloud config configurations activate コマンドで選択したconfigへの切り替えを試みる。