zsh にて gcloud コマンドで補完を効かせる方法 (Ubuntu)

結論

以下の方法で gcloud コマンドをインストールすればよいです。

# インストールするディレクトリは ~/.glcloud と仮定して作業をします
mkdir ~/.gcloud
cd ~/.gcloud

# 以下では 367.0.0 を指定してますが、バージョンは最新のものに差し替えます (https://cloud.google.com/sdk/docs/downloads-versioned-archives?hl=JA)
wget https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-sdk-367.0.0-linux-x86_64.tar.gz
tar xvzf google-cloud-sdk-367.0.0-linux-x86_64.tar.gz
rm google-cloud-sdk-367.0.0-linux-x86_64.tar.gz

cd google-cloud-sdk
./install.sh

上記を実行すると対話式インストールが始まり、以下のように補完の設定が .zshrc に自動で書き込まれます*1

Modify profile to update your $PATH and enable shell command completion?

Do you want to continue (Y/n)?  Y

The Google Cloud SDK installer will now prompt you to update an rc file to bring the
Google Cloud CLIs into your environment.

Enter a path to an rc file to update, or leave blank to use [/home/FOOBAR/.zshrc]:
Backing up [/home/FOOBAR/.zshrc] to [/home/FOOBAR/.zshrc.backup].
[/home/FOOBAR/.zshrc] has been updated.

==> Start a new shell for the changes to take effect.

これで補完が効くようになります。

$ gcloud co(ここで TABキー を押下)
components  composer    compute     config      container

補足

公式ドキュメント では apt で入れる方法が書いてありますが、apt で入れると補完は自動では入らない?ようです。

*1:念のためのバックアップが .zshrc.backup として保存されます

Powered by はてなブログ