sorta kinda...

主にAWS関連ですが、これに限らずいろいろ勉強したことや思ったことを書いていきます。

むっちゃ簡単!CloudFormation テンプレートの json/yaml 変換

AWS でひたすらリソースを作っては消すを繰り返している那須です。

CloudFormation テンプレートって jsonyaml で書きますが、最初 json で書いててやっぱり yaml で書くべきやったなーって思う時ありませんか? yaml はコメントが書けたり json を比べてカッコとか書かなくていいので余計なことでエラーを出さなくて済むのでいいですよね。

json から yaml に変換するツールやサービスって探すといっぱいあるんですが、yaml から json に変換するようなものって意外と少ないので、このあたり自由に変換できたらいいのになーと思ってたら、、、ありました。ので紹介しましょう!

 

CloudFormation デザイナーっていいな

AWS リソースのアイコンをドラッグ&ドロップするだけでテンプレートを作成してくれる便利なのがデザイナーです。本来の用途はテンプレート作成ですが、この json / yaml 変換がなかなか優秀なのですよ。

CloudFormation コンソールに行くと、「テンプレートのデザイン」ボタンがあるので押します。 f:id:nasrinjp1:20180527112612p:plain

すると、上半分が AWS リソースアイコンを置くエリア、下半分がその結果作成されるテンプレートのエリアです。テンプレートエリアで直接編集できるので、そこに基となる jsonyaml をコピペします。そして「テンプレートの言語の選択」で切り替えるだけで json/yaml が変換できますよ。

json を選択してる状態で json でテンプレートを書きます。 f:id:nasrinjp1:20180527112624p:plain

そして、そのまま yaml を選択するだけでテンプレート言語が yaml になります! f:id:nasrinjp1:20180527120110p:plain

もちろん、yaml から json にもできますよ。

 

まとめ

要件次第で言語を切り替えられるので、最初はやりやすい言語でテンプレート作成したほうが精神衛生上もよいですね!

 

一緒に楽しくクラウドを使いまくってくれる仲間を募集中

今は BeeX に所属しているのですが、BeeX は SAP だけやってるのではなく、AWS や Azure の仕事も山ほどあります。心の底から一緒に楽しんで前に進んでくれる仲間を募集中です!↓の採用ページからでもどこからでもいいので、とりあえず話だけでも聞いていただければとても嬉しいです!あなたからの連絡を待ってますよー! www.beex-inc.com