🪣

TerraformでCloud Storageバッケットを作成する方法

2022/09/21に公開

この記事について

この記事ではTerraformを使ってCloud Storageのバケットを作成する方法について紹介します。

コーディングの準備

ターミナルで下記のコマンドを実行してコーディングの準備をします。

touch main.tf terraform.tfvars

コーディング

エディタで下記のファイルを開いて内容を入力します。

main.tf

terraform.tfvars

プロジェクトIDについては下記のコマンドで一覧できます。

gcloud config configurations list

バケット名の00000000の部分は日付8桁などに置き換えます。

バケットの作成

必要に応じて下記のコマンドを実行してtfファイルのフォーマットやバリデーションを行います。

terraform fmt
terraform validate

ターミナルで下記のコマンドを実行してバケットを作成します。

terraform init
terraform apply

作成されたバケット名を確認するには下記のコマンドを実行します。

terraform output

参考にしたWebページ

おわりに

terraform output -raw bucket_nameとコマンドを実行するとTerraformの出力値(Output Values)を取得することができるのできます。このコマンドと環境変数を組み合わせることでプログラムからTerraformの出力値を参照することができます。一例を下記に示します。

MY_BUCKET=`terraform output -raw bucket_name` \
  node -e 'console.log(process.env.MY_BUCKET)'

上記のようなやり方はあまり一般的ではないので使用は推奨されません。特にTerraformの出力値の数が多い場合はコマンドが長くなって読みにくくなります。少し面倒ですがTerraformの出力値を.envなどに手動でコピーするのがシンプルなので良いと考えています。

GitHubで編集を提案

Discussion