A CloudFormation template with the "DatadogServerless" Transform and a "AWS::Lambda::Function" resource should deploy without error in AWS.
Actual Behavior
After installing v0.3.0 of the serverless macro, a CloudFormation template with the "DatadogServerless" Transform and a "AWS::Lambda::Function" fails to deploy with this error:
Properties validation failed for resource MyLambdaFunction with message: #/Tags: expected type: JSONArray, found: JSONObject
This happened with a variety of our Lambda-deploying CloudFormation templates which had not been changed.
The processed template with 0.3.0 includes these tags in object format on my Lambda function:
"Tags": {
"dd_sls_macro": "v0.3.0"
}
The previous version of the macro we had installed, 0.2.5, has them as an array like this:
Create a CloudFormation template that uses the DatadogServerless transform and includes a AWS::Lambda::Function resource. If it matters, my template is in JSON format
Deploy the template into AWS. Mine is deployed via the Javascript SDK, but it should also happen through the console.
The template fails to deploy with the error listed above.
Expected Behavior
A CloudFormation template with the "DatadogServerless" Transform and a "AWS::Lambda::Function" resource should deploy without error in AWS.
Actual Behavior
After installing v0.3.0 of the serverless macro, a CloudFormation template with the "DatadogServerless" Transform and a "AWS::Lambda::Function" fails to deploy with this error:
This happened with a variety of our Lambda-deploying CloudFormation templates which had not been changed.
The processed template with 0.3.0 includes these tags in object format on my Lambda function:
The previous version of the macro we had installed, 0.2.5, has them as an array like this:
AWS CloudFormation does not appear to like the newer output from the macro.
Steps to Reproduce the Problem
Specifications
For the Datadog Serverless Macro:
Stacktrace