AWS CloudFormation Linter

AWS CloudFormation Linter

Community Analyzer
Template size limit CFLIN-E1002
Anti-pattern
Major

Check the size of the template is less than the upper limit

Resources have appropriate names CFLIN-E3006
Anti-pattern
Major

Check if Resources are properly named (A-Za-z0-9)

Unique resource and parameter names CFLIN-E3007
Anti-pattern
Major

All resources and parameters must have unique names

Property is unwanted based on another properties value CFLIN-E3018
Anti-pattern
Major

When certain properties have a certain value it results in other properties not being needed. This rule will validate those unwanted properties are not specified when those values are supplied

Attributedefinitions / keyschemas mismatch CFLIN-E3039
Anti-pattern
Major

Verify the set of Attributes in AttributeDefinitions and KeySchemas match

Outputs descriptions can only be strings CFLIN-E6005
Anti-pattern
Major

Outputs descriptions can only be strings

Mapping attribute limit not exceeded CFLIN-E7012
Anti-pattern
Major

Check if the amount of Mapping attributes in the template is less than the upper limit

Check fn::and structure for validity CFLIN-E8004
Anti-pattern
Major

Check Fn::And is a list of two elements

Resource limit CFLIN-I3010
Anti-pattern
Major

Check the number of Resources in the template is approaching the upper limit

Check stateful resources have a set updatereplacepolicy/deletionpolicy CFLIN-I3011
Anti-pattern
Major

The default action when replacing/removing a resource is to delete it. This check requires you to explicitly set policies

Arns should use correctly placed pseudo parameters CFLIN-I3042
Anti-pattern
Major

Checks Resources if ARNs use correctly placed Pseudo Parameters instead of hardcoded Partition, Region, and Account Number

Check if parameters have a valid value based on an allowed pattern CFLIN-W2031
Anti-pattern
Major

Check if parameters have a valid value in a pattern. The Parameter's allowed pattern is based on the usages in property (Ref)

Check if password properties are correctly configured CFLIN-W2501
Anti-pattern
Major

Password properties should not be strings and if parameter using NoEcho

Availability zone parameters should not be hardcoded CFLIN-W3010
Anti-pattern
Major

Check if an Availability Zone property is hardcoded.

Check iam permission configuration CFLIN-W3037
Anti-pattern
Major

Check for valid IAM Permissions

Error processing rule on the template CFLIN-E0002
Anti-pattern
Major

Errors found when processing a rule on the template

Getatt validation of parameters CFLIN-E1010
Anti-pattern
Major

Validates that GetAtt parameters are to valid resources and properties of those resources

Check required properties for lambda if the deployment package is a .zip file CFLIN-W2533
Anti-pattern
Major

When the package type is Zip, you must also specify the handler and runtime properties.

Template description can only be a string CFLIN-E1004
Anti-pattern
Major

Template description can only be a string

Select validation of parameters CFLIN-E1017
Anti-pattern
Major

Making sure the Select function is properly configured