cfn-lint
cfn-lint copied to clipboard
Break off decoding into library
Right now, there aren't great libraries available for encoding and decoding cloudformation files, but there are many programs that try and do so and reinvent the wheel for encoding and decoding cfn.
For example, sceptre needs to parse and dump cfn files, but there's no common encoder or decoder for them to use. This becomes problematic in cases where custom tags like !GetAtt
are used, and require special handling.
Since the logic exists here, it would be useful to see this exported as a library. While applications could just import these decoders from the cfn-lint module, but it's unclear whether or not consumers can trust the API of these interfaces to stay stable.
I like this idea.
We've been talking about doing something similar for the patched specs as well.
@rjlohan you have any thoughts on this?
My own wishlist item would be for the AWS CloudFormation team to open-source the encoder/decoder used by the service itself. I think there would be a lot of benefits from supporting third-party app dev like this to education to providing a pathway for community contributions and feedback.