HashiCorp

Terraformで循環参照のエラーが出た時

これは、リソースを変数で参照して整合性?を保とうとしたときに良くなる。 variable "env" { type = "string" default = "dev" } variable "service" { type = "string" default = "foo" } resource "aws_cloudfront_origin_access_identity" "origin_acces…

Terraformでテンプレートを使ってポリシーを定義する

Terraformにはテンプレート機能がある。よく使われるのは、ポリシーの設定などで、ヒアドキュメントで記述されるようなものを、別ファイルに記述し変数を与えて埋めていく。 ポリシーを定義する 例えば、ユーザやグループにポリシーを設定するために、まずポ…

Terraform で変数を使う

Terrafromでは変数が利用でき、variableを定義して、値を注入する。 一番シンプルな例は次の通り。 provider "aws" { region = "ap-northeast-1" } variable "foo" {} resource "aws_s3_bucket" "s3_bucket" { bucket = "${var.foo}" acl = "private" } vari…

Terraform でループして複数のリソースを作成する

TerraformでListの変数を使ってループさせたい時がある。 例えば、ユーザアカウントを複数作りたいとき。 以下のようなリソース定義を必要な分だけ書かないといけない。10個あったら10個。メッチャ大変。 resource "aws_iam_user" "developer" { name = "foo…

Terraform に入門してみる

Terraformを使うのでとりあえず入門記事を漁って見る。 Terraform簡易チュートリアル on AWS - Qiita EC2の起動から削除までを一通り説明している最小構成のチュートリアルだと思う。一番最初にやるのがよいかな。内容は事前準備、Terraformの導入、Terrafor…