ハンズオンで作成した際のちょっとしたメモです。
VScodeの拡張機能を使う
テキストエディタで書くことも出来るが、拡張機能を使うと捗る。
上記をインストし、.ymlの拡張子でファイルを作成。startと書いてtabを押すとテンプレートが自動生成される。
ctrl + shift + p で、settings.jsonを開き、ここの設定を追加。ファイルの認識と、特定タグのカスタム設定。
"yaml.schemas": {
"https://d33vqc0rt9ld30.cloudfront.net/latest/gzip/CloudFormationResourceSpecification.json": [
"*.cf.yaml",
"*.cf.yml",
"*.cfn/*.yaml",
"*.cfn/*.yml",
"cloud*formation/*.yaml",
"cloud*formation/*.yml"
]
},
"yaml.customTags": [
"!And sequence",
"!Equals sequence",
"!If sequence",
"!Not sequence",
"!Or sequence",
"!Base64",
"!Cidr sequence",
"!FindInMap sequence",
"!GetAtt",
"!GetAZs",
"!ImportValue",
"!Join sequence",
"!Select sequence",
"!Split sequence",
"!Sub",
"!Ref"
],
テンプレートを書いていく
テンプレート内のセクションはResourcesのみ必須。他は任意。
詳細は公式ドキュメントを参照
Resourcesに色々と書いていく訳だけど、書き方も公式ドキュメントに記載がある。
都度都度公式を見ながら設定していく事になる。
ベストプラクティスはこちらを参照。色々あるみたいだけど、ちょっとピンとこない。。
具体的には個人の記事を参考にしていくと良いかも。また追記していきまーす。
参考記事
CloudFormationの実践ベストプラクティス - Qiita
はじめにこの記事では、AWSさんが提供しているAWS CloudFormationのベストプラクティスを解読し、「ベストプラクティスを実現する構成」を考えてみるということを目的としております。そ…
コメント