VTRyo Blog

一歩ずつ前に進むブログ

terraform

CloudFormationで管理していたリソースを安全にTerraformに移管するならDeletionPolicyを設定する

最初はCloudFormationで作成したリソースを、本格IaC導入に伴ってTerraformを始めとした別のツールに移管するケースがあります。 それを実現する場合、次の手順が考えられます(今回は題名通りTerraformを前提)。 CloudFormationで生成されたリソースをTerr…

Terraformにおけるリモート側のリソースにアクセスしない、いくつかの特殊なData Sources

TerraformのData Sourcesといえば既存のリソースを参照するときに利用するアレだ。 developer.hashicorp.com 見るシーンとしては「AWSコンソール側ですでに作成済みのリソースがあるんだけど、Terraformで参照だけしたい」みたいな。 # lambda.tf data "aws_…

CloudFrontのTooManyHeadersInForwardedValues

TerraformでCloudFrontを構築しているときに出くわしたエラーメッセージ。 公式Documentにも出力されるエラーメッセージにも理由は書いてある。「Too many」というからにはMaxを超えているはずなのだが、forwarded_valuesのMax値がわからなくて困った。 リク…

Production, Stagingのような最初の文字だけ大文字にするTerraform - title Function

Terraformを使っていて、関数名が環境によって差があるときにvar.envで分岐することが多いと思う。 単純な環境名であれば、分岐はproduction, staging, developmentなどが多い例だろうが、関数名になると最初が大文字であるケースがある。 例えばhogeProduct…

mapを使った読みやすいterraform variablesの書き方

ディレクトリ構成 以下のように、terraform/provider/aws/env/stgとしました。 変数ファイルであるvariables.tfもメイン処理をするec2.tfも同じディレクトリに置きます。

よく使うコードはスニペット化しよう

アジェンダ 1 いちいちコード書くの面倒くさい! 1.1 tfファイルの記述方法をJSONにする 1.1.1 セレクタを調べる 1.1.2 .atom/snippet.cson 1.1.2.1 csonって何ぞ? 1.1.3 登録方法 1.1.3.1 variable 1.1.4 その他のスニペットも同時に登録する 1.2 まとめ 1…