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개 답변
2
수락된 답변

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
전문가
James_S
답변함 2년 전
profile picture
전문가
검토됨 12일 전
  • 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.

답변함 2년 전
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.

답변함 2년 전
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/

답변함 2년 전

로그인하지 않았습니다. 로그인해야 답변을 게시할 수 있습니다.

좋은 답변은 질문에 명확하게 답하고 건설적인 피드백을 제공하며 질문자의 전문적인 성장을 장려합니다.

질문 답변하기에 대한 가이드라인

관련 콘텐츠