yaml-cfn
npm i yaml-cfn

yaml-cfn

Parser and schema for CloudFormation YAML templates

by gristlabs

0.3.1 (see all)License:Apache-2.0TypeScript:Not Found
npm i yaml-cfn
Readme

yaml-cfn

CI npm version

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 })

Downloads/wk

34.9K

GitHub Stars

25

LAST COMMIT

1yr ago

MAINTAINERS

1

CONTRIBUTORS

6

OPEN ISSUES

2

OPEN PRs

0
VersionTagPublished
0.3.1
latest
1yr ago
No alternatives found
No tutorials found
Add a tutorial