Package Exports
- yaml-cfn
- yaml-cfn/index.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (yaml-cfn) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
yaml-cfn
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.
Installation
npm install --save-dev yaml-cfn
Usage
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:
const { schema } = require('yaml-cfn');
const yaml = require('js-yaml');
yaml.safeLoad(input, { schema: schema })