Parser and schema for CloudFormation YAML template tags.
npm install yaml-cfn!CI

> Parser and schema for CloudFormation YAML template tags.
Implements support for AWS-specific CloudFormation YAML schema.
The implementation and tests are based on the official AWS Python client
aws-cli. It supports all intrinsic CloudFormation functions listed in
AWS docs
as of October 2017.
``bash`
npm install --save-dev yaml-cfn
`js
const { yamlParse, yamlDump } = require('yaml-cfn');
const input =
Key:
- !GetAtt Foo.Bar
- !Equals [!Ref Baz, "hello"];
const parsed = {
"Key": [
{"Fn::GetAtt": ["Foo", "Bar"]},
{"Fn::Equals": [{"Ref": "Baz"}, "hello"]}
]
};
assert.deepEqual(yamlParse(input), parsed);
assert.deepEqual(yamlParse(yamlDump(parsed)), parsed);
`
The module uses js-yaml. The schema it uses is also exported,
and may be used e.g. like so:
`js``
const { schema } = require('yaml-cfn');
const yaml = require('js-yaml');
yaml.safeLoad(input, { schema: schema })