Template format error: Unrecognized resource types: [AWS::SES::Template] bug or expected behaviour?

0

Hi everyone,

I'm trying to deploy multi-region StackSets but get the following error:

Template format error: Unrecognized resource types: [AWS::SES::Template]

The resource type definition is correct according to the CloudFormation documentation and previous tests I executed with standard CloudFormation stacks. Using simple stacks within the region of choice the template the resources get provisioned successfully. But why is CloudFormation StackSet unable to deploy the AWS::SES::Template resource?

The region of choice is eu-west-1 if this makes any difference.

Would be great to get some help and if it is a bug to address this to the AWS support team.

Best regards and thanks in advance!

4 Answers
1
Accepted Answer

Which regions are you deploying the Stack Set to? If you try to deploy to a region which doesn't has SES or support that resource, you'll get that error. You should limit your Stack Set deployment to just supported regions. You could also (if there are other resources in the template you still want to deploy) use a Condition to only deploy the Template in a suitable region(s).

For reference, I quickly put together a minimal template with the AWS::SES::Template resource in, and checked the region support with the cfn-lint tool:

% cat ses.yaml
AWSTemplateFormatVersion: 2010-09-09

Resources:
  Template:
    Type: AWS::SES::Template
    Properties:
      Template:
        HtmlPart: Testing
        SubjectPart: Testing
        TemplateName: Testing
        TextPart: Testing

% cfn-lint -r ALL_REGIONS -- ses.yaml
E3001 Invalid or unsupported Type AWS::SES::Template for resource Template in af-south-1
ses.yaml:5:5

E3001 Invalid or unsupported Type AWS::SES::Template for resource Template in ap-east-1
ses.yaml:5:5

E3001 Invalid or unsupported Type AWS::SES::Template for resource Template in ap-northeast-2
ses.yaml:5:5

E3001 Invalid or unsupported Type AWS::SES::Template for resource Template in ap-northeast-3
ses.yaml:5:5

E3001 Invalid or unsupported Type AWS::SES::Template for resource Template in ap-south-1
ses.yaml:5:5

E3001 Invalid or unsupported Type AWS::SES::Template for resource Template in ap-southeast-2
ses.yaml:5:5

E3001 Invalid or unsupported Type AWS::SES::Template for resource Template in ap-southeast-3
ses.yaml:5:5

E3001 Invalid or unsupported Type AWS::SES::Template for resource Template in ca-central-1
ses.yaml:5:5

E3001 Invalid or unsupported Type AWS::SES::Template for resource Template in cn-north-1
ses.yaml:5:5

E3001 Invalid or unsupported Type AWS::SES::Template for resource Template in cn-northwest-1
ses.yaml:5:5

E3001 Invalid or unsupported Type AWS::SES::Template for resource Template in eu-central-1
ses.yaml:5:5

E3001 Invalid or unsupported Type AWS::SES::Template for resource Template in eu-west-2
ses.yaml:5:5

E3001 Invalid or unsupported Type AWS::SES::Template for resource Template in sa-east-1
ses.yaml:5:5

E3001 Invalid or unsupported Type AWS::SES::Template for resource Template in us-gov-east-1
ses.yaml:5:5

E3001 Invalid or unsupported Type AWS::SES::Template for resource Template in us-gov-west-1
ses.yaml:5:5
profile pictureAWS
EXPERT
James_S
answered 2 years ago
  • That was the exact issue I had. Deploying the stack manually in eu-central-1 out of curiousity and then in eu-west-1 showed this problem. The confusing thing was, that the template used for a stack set is relative to the stack sets region and not the stack instance regions.

    Thank you and this is the correct answer to everyone facing the same issue.

  • To clarify, although the feature is available within most of these regions, the CloudFormation resource is not. Refer to this issue for tracking: https://github.com/aws-cloudformation/cloudformation-coverage-roadmap/issues/326

0

As per the documentation, the resource type is correct, and also the region you selected is supported. Please refer to link {1}

But Before you perform "Multi-region Deployment With AWS Cloudformation Stacksets", you need to set up permissions for cloud formation stacksets.

AWS CloudFormation StackSets requires specific permissions to be able to deploy stacks in multiple AWS accounts across multiple AWS Regions. It needs an administrator role that is used to perform StackSets operations, and an execution role to deploy the actual stacks in target accounts.

These roles require specific naming conventions:

***AWSCloudFormationStackSetAdministrationRole ***for the administrator role, and **AWSCloudFormationStackSetExecutionRole for the execution role.

Note: StackSets execution will fail if either of these roles are missing.

The ***AWSCloudFormationStackSetAdministrationRole ***should be created in the account where you are creating the StackSet.

The ***AWSCloudFormationStackSetExecutionRole ***should be created in each target account where you wish to deploy the stack.

{1} https://docs.aws.amazon.com/general/latest/gr/cfn.html#regional-support-stacksets

I hope this helps.

answered 2 years ago
0

Thank you for your support. The error is not permission related though. For verification: I already deployed SSM parameters using the same setup, even the same template file. The only new thing to the CloudFormation template file are the AWS::SES::Template resources, which CloudFormation StackSet doesn't seem to like or recognize.

I already get the error message when I upload the CloudFormation template via AWS Management Console > CloudFormation > StackSets. Same happens programmatically.

answered 2 years ago
0

If cloudformation stackset isn't recognizing the "AWS::SES::Template" resources, in that case, can you please validate template syntax?

Please refer to the knowledge-center article below:

https://aws.amazon.com/premiumsupport/knowledge-center/cloudformation-template-validation/

answered 2 years ago

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions

Relevant content