Help us understand the problem. What is going on with this article?

Google Cloud SDK のインストール/アンインストールメモ(公式バージョン)

イントロ

FirebaseとGoogle Cloud Platform をさわれる環境を構築する/Google Cloud Platform のCLIのインストールgcloud コマンドをインストールする手順を整理したけど brew cask でやるより公式のがシンプルでよかったので、そちらの手順のメモ。。といってもほぼ公式をなぞったくらいです、、、、。

前提環境

$ sw_vers
ProductName:    Mac OS X
ProductVersion: 10.14.6
BuildVersion:   18G95
$

インストール

https://cloud.google.com/sdk/docs/downloads-interactive?hl=ja を参考に実行していきます。

$ curl https://sdk.cloud.google.com | bash
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   443  100   443    0     0   1346      0 --:--:-- --:--:-- --:--:--  1346
Downloading Google Cloud SDK install script: https://dl.google.com/dl/cloudsdk/channels/rapid/install_google_cloud_sdk.bash
######################################################################## 100.0%
Running install script from: /var/folders/fp/ph0q_b6s64v9pmpbn8x547400000gp/T/tmp.XXXXXXXXXX.G4GMjyqO/install_google_cloud_sdk.bash
which curl
curl -# -f https://dl.google.com/dl/cloudsdk/channels/rapid/google-cloud-sdk.tar.gz
######################################################################## 100.0%

Installation directory (this will create a google-cloud-sdk subdirectory) (/Users/xxxxxx):   'インストール先の指定'

...ぶわーっとでるので省略...

/Users/xxxxxx/google-cloud-sdk/install.sh
Welcome to the Google Cloud SDK!

To help improve the quality of this product, we collect anonymized usage data
and anonymized stacktraces when crashes are encountered; additional information
is available at <https://cloud.google.com/sdk/usage-statistics>. You may choose
to opt out of this collection now (by choosing 'N' at the below prompt), or at
any time in the future by running the following command:

    gcloud config set disable_usage_reporting true

Do you want to help improve the Google Cloud SDK (Y/n)?   'とりあえずreturn'


This will install all the core command line tools necessary for working with
the Google Cloud Platform.



Your current Cloud SDK version is: 263.0.0
Installing components from version: 263.0.0

┌────────────────────────────────────────────────────────────────────────────┐
│                    These components will be installed.                     │
├─────────────────────────────────────────────────────┬────────────┬─────────┤
│                         Name                        │  Version   │   Size  │
├─────────────────────────────────────────────────────┼────────────┼─────────┤
│ BigQuery Command Line Tool                          │     2.0.47 │ < 1 MiB │
│ BigQuery Command Line Tool (Platform Specific)      │     2.0.46 │ < 1 MiB │
│ Cloud SDK Core Libraries (Platform Specific)        │ 2019.08.16 │ < 1 MiB │
│ Cloud Storage Command Line Tool                     │       4.42 │ 3.6 MiB │
│ Cloud Storage Command Line Tool (Platform Specific) │       4.42 │ < 1 MiB │
│ Default set of gcloud commands                      │            │         │
│ gcloud cli dependencies                             │ 2018.08.03 │ 1.5 MiB │
└─────────────────────────────────────────────────────┴────────────┴─────────┘

For the latest full release notes, please visit:
  https://cloud.google.com/sdk/release_notes

╔════════════════════════════════════════════════════════════╗
╠═ Creating update staging area                             ═╣
╠════════════════════════════════════════════════════════════╣
╠═ Installing: BigQuery Command Line Tool                   ═╣
╠════════════════════════════════════════════════════════════╣
╠═ Installing: BigQuery Command Line Tool (Platform Spec... ═╣
╠════════════════════════════════════════════════════════════╣
╠═ Installing: Cloud SDK Core Libraries (Platform Specific) ═╣
╠════════════════════════════════════════════════════════════╣
╠═ Installing: Cloud Storage Command Line Tool              ═╣
╠════════════════════════════════════════════════════════════╣
╠═ Installing: Cloud Storage Command Line Tool (Platform... ═╣
╠════════════════════════════════════════════════════════════╣
╠═ Installing: Default set of gcloud commands               ═╣
╠════════════════════════════════════════════════════════════╣
╠═ Installing: gcloud cli dependencies                      ═╣
╠════════════════════════════════════════════════════════════╣
╠═ Creating backup and activating new installation          ═╣
╚════════════════════════════════════════════════════════════╝

Performing post processing steps...done.

Update done!



To take a quick anonymous survey, run:
  $ gcloud alpha survey


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

Do you want to continue (Y/n)?   'とりあえずreturn'

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
[/Users/xxxxxx/.bash_profile]:
Backing up [/Users/xxxxxx/.bash_profile] to [/Users/xxxxxx/.bash_profile.backup].
[/Users/xxxxxx/.bash_profile] has been updated.

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


For more information on how to get started, please visit:
  https://cloud.google.com/sdk/docs/quickstarts

~/.bash_profileが書き換えられたようなので一応確認。

$ cat ~/.bash_profile
...
# The next line updates PATH for the Google Cloud SDK.
if [ -f '/Users/xxxxxx/google-cloud-sdk/path.bash.inc' ]; then . '/Users/xxxxxx/google-cloud-sdk/path.bash.inc'; fi

# The next line enables shell command completion for gcloud.
if [ -f '/Users/xxxxxx/google-cloud-sdk/completion.bash.inc' ]; then . '/Users/xxxxxx/google-cloud-sdk/completion.bash.inc'; fi

$

パスを通す処理が追加されていますね。
つづいて、シェルの再起動を実施。

$ exec -l $SHELL
$

さいごに、環境の初期化をします。たとえば Firebaseなどを一緒に使ってると、該当するログインユーザ(下記でいうとxxxx@ki-no.org)と、プロジェクト名(fb-samples-xxxxxなど)は決まっていたりすると思うので、それらを指定しましょう。

$ gcloud init
Welcome! This command will take you through the configuration of gcloud.

Your current configuration has been set to: [default]

You can skip diagnostics next time by using the following flag:
  gcloud init --skip-diagnostics

Network diagnostic detects and fixes local network connection issues.
Checking network connection...done.
Reachability Check passed.
Network diagnostic passed (1/1 checks passed).

You must log in to continue. Would you like to log in (Y/n)?

Your browser has been opened to visit:

    https://accounts.google.com/o/oauth2/auth?code_challenge=xxx&prompt=select_account&code_challenge_method=S256&access_type=offline&redirect_uri=http%3A%2F%2Flocalhost%3A8085%2F&response_type=code&client_id=32555940559.apps.googleusercontent.com&scope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fuserinfo.email+https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fcloud-platform+https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fappengine.admin+https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fcompute+https%3A%2F%2Fwww.googleapis.com%2Fauth%2Faccounts.reauth

'ブラウザでOAuthの認証画面が上がりますので、認証・認可してください'

You are logged in as: [xxxx@ki-no.org].

Pick cloud project to use:
 [1] fb-samples-xxxxx
 [2] spring-base-xxxxx
 [3] Create a new project
Please enter numeric choice or text value (must exactly match list
item):  1

Your current project has been set to: [fb-samples-xxxxx].

Not setting default zone/region (this feature makes it easier to use
[gcloud compute] by setting an appropriate default value for the
--zone and --region flag).
See https://cloud.google.com/compute/docs/gcloud-compute section on how to set
default compute region and zone manually. If you would like [gcloud init] to be
able to do this for you the next time you run it, make sure the
Compute Engine API is enabled for your project on the
https://console.developers.google.com/apis page.

Your Google Cloud SDK is configured and ready to use!

* Commands that require authentication will use fb@ki-no.org by default
* Commands will reference project `fb-samples-xxxxx` by default
Run `gcloud help config` to learn how to change individual settings

This gcloud configuration is called [default]. You can create additional configurations if you work with multiple accounts and/or projects.
Run `gcloud topic configurations` to learn more.

Some things to try next:

* Run `gcloud --help` to see the Cloud Platform services you can interact with. And run `gcloud help COMMAND` to get help on any gcloud command.
* Run `gcloud topic --help` to learn about advanced features of the SDK like arg files and output formatting
$

インストール完了ですね。。

疎通確認。

$ gcloud projects describe fb-samples-xxxxx
createTime: '2019-09-01T11:33:55.627Z'
lifecycleState: ACTIVE
name: fb-samples
parent:
  id: 'xx'
  type: organization
projectId: fb-samples-xxxxx
projectNumber: 'xx'
$

うん、なんか返ってきてますね!

疎通確認2

スケジューラを表示してみます。

$ gcloud  scheduler jobs list
ERROR: (gcloud.scheduler.jobs.list) User [xx@ki-no.org] does not have permission to access project [fb-samples-xxxxx] (or it may not exist):
 Cloud Scheduler API has not been used in project xx before or it is disabled. 
Enable it by visiting https://console.cloud.google.com/apis/api/cloudscheduler.googleapis.com/overview?project=xx then retry.
 If you enabled this API recently, wait a few minutes for the action to propagate to our systems and retry.
- '@type': type.googleapis.com/google.rpc.Help
  links:
  - description: Google Cloud Console API activation
    url: https://console.cloud.google.com/apis/api/cloudscheduler.googleapis.com/overview?project=xx
$

なんか怒られました。上記URLにアクセスすると、、、あー、スケジューラは課金が必要ぽいですね。

sche.png

というわけで必要に応じて有効化してください。

そのうえで、もう一度やってみると、

$ gcloud  scheduler jobs list
Listed 0 items.
$

うん、スケジュール設定してないのでゼロ件とでました。OKですね。

アンインストール

もっかい初めからやり直すとか、全部消したい場合。コレも https://cloud.google.com/sdk/docs/uninstall-cloud-sdk?hl=ja を参考に。

$ gcloud info --format='value(installation.sdk_root)'
/Users/xxxxxx/google-cloud-sdk
$
$ gcloud info --format='value(config.paths.global_config_dir)'
/Users/xxxxxx/.config/gcloud
$

これらでインストールディレクトリと、環境設定ディレクトリが表示されるので、それらを削除するだけでOK.

$ rm -fr /Users/xxxxxx/google-cloud-sdk
$ rm -fr /Users/xxxxxx/.config/gcloud
$

おつかれさまでしたー。

関連リンク

Why do not you register as a user and use Qiita more conveniently?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away