VSCodeのプラグインでAWSのCloudFormationの構文を簡単に記述する方法
こんにちは!さっしです!
インフラの各種サービスの内容がコードとして保存ができ、そのコードを使って自動で構築ができたら便利ですね。
そのことをInfrastructure as Code(IaC)と呼び、それを実現するためにAWSでは「CloudFormation」呼ばれるサービスが提供されています。
しかしそのサービスを使う際には、AWS側で決められた構文を使う必要があり、それを覚えるのはなかなか大変です。
そのため、今回は「CloudFormationの雛形の構文」を「VSCode」を使い簡単に出力する方法をご紹介します。
■やりたいこと
・VSCode(Visual Studio Code)のプラグインでCloudFormationの構文を自動補完したい
・ VSCode側でCloudFormation独自関数をエラーとして認識させない
■事前準備
・「cloudformation」ディレクトリを作成し、そのディレクトリに「test.yml」ファイルを作成する
■やること
1.VSCodeにCloudFormationのプラグインをインストールする
2.初回雛形の構文を出力する
3.settings.jsonを編集し、独自関数をエラーとして認識させない
■1.VSCodeにCloudFormationのプラグインをインストールする
・VSCodeを立ち上げる
・左メニューの「四角が4つ」重なっているマークをクリックし、検索バーに「CloudFormation」と入力する
・右側にある「Install」ボタンをクリックする
■2.初回雛形の構文を出力する
・test.ymlを開く
・「start」と入力した後に「 tabキー」を1回押す
・初回雛形の構文が出力されることを確認する
■3.settings.jsonを編集し、独自関数をエラーとして認識させない
ファイル:test.yml
・「Resources」の下のエリアに以下の内容を入力し保存する
myEC2Instance:
Type: AWS::EC2::Instance
Properties:
KeyName:
DisableApiTermination:
ImageId:
InstanceType:
Monitoring: true|false
SecurityGroupIds:
- sg-id
UserData: !Base64 |
#!/bin/bash -ex
# put your script here
Tags:
- Key: key
Value: value
・独自関数がエラーとして認識されていることを確認する
※今回は「!Base64」がエラーとして認識されている
・「command + p」を押し、検索メニューバーに「settings.json」と入力しエンタキーを押す
※windowsの場合はctrl + shift + p
ファイル:settings.json
・以下の内容を入力し保存する
{
"yaml.schemas": {
"https://d33vqc0rt9ld30.cloudfront.net/latest/gzip/CloudFormationResourceSpecification.json": [
"*.cf.yaml",
"*.cf.yml",
"cfn/*.yaml",
"cfn/*.yml",
"cloudformation/*.yaml",
"cloudformation/*.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"
]
}
ファイル:test.yml
・独自関数がエラーとして認識されていないことを確認する
設定は以上になります。
AWSってほんと楽しいですね!
この記事が気に入ったらサポートをしてみませんか?