AWS YAML の JSON パーサー
動機
AWS の設定ファイルは JSON より YAML 派なんだけど、設定ファイルを Node.js (JSON) で処理したい。
AWS 独自の組み込み関数が使われていて、そのおかげで便利なんだけど、普通のYAMLパーサーだと読めない。
(組み込み関数のドキュメントは こちら)
そこで、組み込み関数を出来る限りエミュレートした専用パーサーを用意した。
ソースコード
インストール
yarn add aws-yaml
使い方
import yaml from 'aws-yaml';
import fs from 'fs';
const buff = await fs.promises.readFile('template.yaml', 'utf8');
const json = yaml.load(buff);
const { Resources } = json;
使える関数
full | short |
---|---|
Ref | !Ref |
Fn::Join | !Join |
Fn::Select | !Select |
Fn::Split | !Split |
Fn::GetAtt | !GetAtt |
Fn::Sub | !Sub |
Fn::FindInMap | !FindInMap |
Fn::GetAZs | !GetAZs |
Fn::If | !If |
Fn::Equals | !Equals |
Fn::And | !And |
Fn::Or | !Or |
Fn::Not | !Not |
Fn::Base64 | !Base64 |
Fn::Cidr | !Cidr |
使えない関数
full | short |
---|---|
Fn::ImportValue | !ImportValue |
Fn::Transform | !Transform |
Author And Source
この問題について(AWS YAML の JSON パーサー), 我々は、より多くの情報をここで見つけました https://qiita.com/exabugs/items/c9e8b4226617960fc8c4著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .