question-mark
Stuck on an issue?

Lightrun Answers was designed to reduce the constant googling that comes with debugging 3rd party libraries. It collects links to all the places you might be looking at while hunting down a tough bug.

And, if you’re still stuck at the end, we’re happy to hop on a call to see how we can help out.

Add support for Fn::Transform

See original GitHub issue

cfn-lint version: 0.7.4

Description of issue.

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

Example:

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.

Issue Analytics

  • State:open
  • Created 5 years ago
  • Reactions:30
  • Comments:28 (3 by maintainers)

github_iconTop GitHub Comments

6reactions
darrenweinercommented, Feb 13, 2022

Would be great to see resolution on this issue. Fundamentally, synthesizing the transform is an intractable problem, ignore it, perhaps with a message if possible so cfn-lint doesn’t have to be disabled.

4reactions
phenecommented, Jan 13, 2021

That’s because you do have duplicates.

- "SubnetIds": [ {"Ref": "SubnetId001", "Ref": "SubnetId002", "Ref": "SubnetId003"} ]
+ "SubnetIds": [ { "Ref": "SubnetId001" }, { "Ref": "SubnetId002" }, { "Ref": "SubnetId003" } ]
Read more comments on GitHub >

github_iconTop Results From Across the Web

Add support for Fn::Transform · Issue #476 - GitHub
One approach would be to read the file and process it into the template just like the import would do. The other approach,...
Read more >
Fn::Transform - AWS CloudFormation
Specify a macro to perform custom processing on part of a stack template by using the Fn::Transform intrinsic function.
Read more >
Using Amazon CloudFormation macros in your templates
AWS::Include transform enables you to insert boilerplate template snippets ... The Fn::ImportValue intrinsic function isn't currently supported in macros.
Read more >
Using the CloudFormation AWS::Include Macro - Medium
The AWS::Include transformation takes a single parameter, which is the path to the S3 object to insert at the specific location.
Read more >
transform - CSS: Cascading Style Sheets - MDN Web Docs
The transform CSS property lets you rotate, scale, skew, or translate an element. It modifies the coordinate space of the CSS visual ...
Read more >

github_iconTop Related Medium Post

No results found

github_iconTop Related StackOverflow Question

No results found

github_iconTroubleshoot Live Code

Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free

github_iconTop Related Reddit Thread

No results found

github_iconTop Related Hackernoon Post

No results found

github_iconTop Related Tweet

No results found

github_iconTop Related Dev.to Post

No results found

github_iconTop Related Hashnode Post

No results found