Skip to content

a-mymt/terraform-training-1

Repository files navigation

前提

  1. GCPに登録済み
  2. GCPにterraform用のサービスアカウント作成済み
  3. サービスアカウントの鍵(auth.json)をCloudStorageにアップロード済み
  4. Terraform Cloudに登録済み

※手順 3. の鍵についてはこちらを参照

コンテナ

  • build
docker build -t terraform-training \
--build-arg GITHUB_USER_NAME="user.name" \
--build-arg GITHUB_USER_EMAIL="user.email" \
--build-arg GITHUB_USER_TOKEN="github_token" \
--no-cache .
  • run
docker run -itd --privileged --rm \
--name terraform-training \
--hostname terraform-training \
terraform-training
  • login
docker exec -it terraform-training /bin/bash

gcloud

  • set config
gcloud config configurations create <任意>
gcloud config set core/account <Google Cloudのログインに使ったメアド>
gcloud config set core/project <Google CloudのプロジェクトID>
  • auth login
gcloud auth login
gcloud auth application-default login
  • auth.json download
gcloud storage ls
gcloud storage cp gs://<BUCKET_NAME>/<OBJECT_NAME> ./auth.json

※詳細についてはこちらを参照

Terraform cloud

  • set config
echo 'export TF_TOKEN_app_terraform_io="<TERRAFORM_TOKEN_VALUE>"' >> ~/.bash_profile
source ~/.bash_profile

詳細についてこちらを参照

  • register terraform key(Optional post-deployment option)
gcloud secrets list
printf "<TERRAFORM_TOKEN_VALUE>" | gcloud secrets versions add terraform-api-key --data-file=-

やります。。

  • add README
  • githubのトークンとかがセットされてないのでDockerfileを修正
  • auth.jsonをバケットから取得する手順を書く
  • functions.tfを追加する
  • golangコード用のリポジトリを追加する

About

learn terraform

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published