- Newest
- Most votes
- Most comments
Hello.
Can you share the CloudFormation template you're using?
I've seen the same error occur in the past due to incorrect parameter names or definition names.
CloudFormation error messages can sometimes be difficult to pinpoint the exact location of the error, so it's difficult to determine whether there are any problems with the template without checking it.
For example, a similar error can occur even with a minor typo, as in the answer below from stackoverflow.
https://stackoverflow.com/questions/77474684/aws-cloudformation-error-securitygroup-typenamelist-member-must-satisfy-const
The error you're encountering is related to how you're using the CloudFormation command, not an issue with your template itself. The validation error message indicates a problem with the typeNameList parameter, which suggests you might be inadvertently passing resource types in a format expected for CloudFormation extensions.
Based on the error pattern [A-Za-z0-9]{2,64}::[A-Za-z0-9]{2,64}::[A-Za-z0-9]{2,64}(::MODULE){0,1}, this appears to be related to CloudFormation extension type names, which follow a specific pattern (like "AWS::ServiceName::ResourceType").
The most likely cause is that you're using a parameter or flag that's intended for CloudFormation extension activation or registration, not for standard stack creation. The --capabilities flag you're using is correct for IAM resources, but there might be another parameter in your command that's causing CloudFormation to interpret your resource types as extension types.
Try simplifying your command to:
aws cloudformation create-stack --stack-name my-vpc-stack --template-url https://s3.amazonaws.com/cfn-templates-8702/vpc.yaml --capabilities CAPABILITY_IAM
If you're using any other parameters like --type-name-list or similar, remove them as they're intended for extension registration, not standard stack creation.
Since your template validates successfully and you've been able to deploy the same resources using bash automation, the issue is almost certainly with how the CloudFormation command is being executed rather than with the template itself.
Sources
AWS::CloudFormation::TypeActivation - AWS CloudFormation
RequiredActivatedType - AWS CloudFormation
AWS::CloudFormation::PublicTypeVersion - AWS CloudFormation
Thanks for the pointers! The issue was my template, not CFN. Two fixes:
-
I had Type: SubnetRouteTableAssociation without the namespace — changed to Type: AWS::EC2::SubnetRouteTableAssociation.
-
In the IGW attach, I accidentally used InternetGatewayId: ! InternetGateway — corrected to InternetGatewayId: !Ref InternetGateway. Also verified DependsOn: VPCGatewayAttachment matches the actual logical ID of the attachment resource. After these changes, validate-template passes and the stack creates successfully.
Relevant content
- AWS OFFICIALUpdated 5 months ago
