aws-cloudformation / aws-cloudformation/cfn-lint

Add support for Fn::Transform

Open
#476 32 comments 37 reactions 0 assignees View on GitHub
enhancement
Dominant language
Python
Stars
2.6k
Forks
643
Avg merge
1d 19h
Merged PRs (30d)
41

Description

*cfn-lint version: 0.7.4*

*Description of issue.*

cfn-lint does not properly evaluate Fn::Transform.

Example:

```yaml
Resources:

'Fn::Transform':
Name: 'AWS::Include'
Parameters:
Location: "s3://mybucket/mySnippet.yaml"

'Fn::Transform':
Name: 'AWS::Include'
Parameters:
Location: "s3://mybucket/mySecondSnippet.yaml"
```

Returns:
> Illegal cfn - missing Type: id: Fn::Transform

Additionally, multiple Fn::Transforms produce this error:
> Duplicate resource found "Fn::Transform" (line 299)

The template used which generated these errors passed `aws cloudformation validate-template` without error, so it is valid CFN syntax.

Contributor guide

Open the contributing guide

Research direction

Reproduce the reported errors with the YAML example and compare the result with AWS CloudFormation validation. Trace how cfn-lint handles Fn::Transform under Resources, including repeated transforms, and consider the issue complete when valid transforms no longer trigger missing-Type or duplicate-resource errors.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
tooling
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.