I am using the serverless framework and cannot deploy because I have more than 500 resources which is the CloudFormation limit. I am using the split-stack plugin, but it is still failing. Any help would be appreciated. It puts most of the resources in root. This is the start of my serverless.yaml file:
splitStacks:
perFunction: true
perType: true
maxStackResources: 200
nestedStacks:
CustomResourcesStack:
resources:
- ElastiCacheSubnetGroup
- ElastiCacheCluster
- GatewayResponseDefault4XX
- SesTemplate
- CognitoUserPool
- CognitoUserPoolClient
- ApiGatewayAuthorizer
- CognitoIdentityPool
- CognitoIdentityPoolRoles
- CognitoAuthRole
- GoogleUserPoolIdentityProvider
DMSStack:
resources:
- DmsMigrationDocdbToOpensearch
- DmsOpenSearchEndpoint
- DmsDocumentDbEndpoint
- MyDmsReplicationSubnetGroup
- DmsInstance
OpenSearchStack:
resources:
- OpenSearchDomain
- OpenSearchRole
SchedulerStack:
resources:
- SchedulerRole
- JobScheduleGroup
- AssetsScheduleGroup
- AssetIndexesScheduleGroup
S3Stack:
resources:
- TemplatesBucket
- ImagesBucket
- BucketPolicy
- RealtorsBucket
- RealtorsBucketPolicy
ElastiCacheStack:
resources:
- ElastiCacheSubnetGroup
- ElastiCacheCluster
ApiGatewayStack:
resources:.....
this is the output:
Packaging hamlethub for stage dev (us-east-1)
Creating Swagger file...
[serverless-plugin-split-stacks]: Summary: 215 resources migrated into 14 nested stacks
[serverless-plugin-split-stacks]: ├─ (root): 536
[serverless-plugin-split-stacks]: │ ├─ Outputs: 31
[serverless-plugin-split-stacks]: │ └─ Parameters: 0 (References: 618)
[serverless-plugin-split-stacks]: ├─ APINestedStack: 98
[serverless-plugin-split-stacks]: │ ├─ Outputs: 78
[serverless-plugin-split-stacks]: │ └─ Parameters: 0 (References: 194)
[serverless-plugin-split-stacks]: ├─ AddAssetNestedStack: 1
[serverless-plugin-split-stacks]: │ ├─ Outputs: 0
[serverless-plugin-split-stacks]: │ └─ Parameters: 1 (References: 0)
[serverless-plugin-split-stacks]: ├─ AlarmsNestedStack: 2
[serverless-plugin-split-stacks]: │ ├─ Outputs: 0
[serverless-plugin-split-stacks]: │ └─ Parameters: 1 (References: 0)
[serverless-plugin-split-stacks]: ├─ ApproveSuggestionNestedStack: 1
[serverless-plugin-split-stacks]: │ ├─ Outputs: 0
[serverless-plugin-split-stacks]: │ └─ Parameters: 1 (References: 0)
[serverless-plugin-split-stacks]: ├─ CropImageNestedStack: 1
[serverless-plugin-split-stacks]: │ ├─ Outputs: 0
[serverless-plugin-split-stacks]: │ └─ Parameters: 1 (References: 0)
[serverless-plugin-split-stacks]: ├─ DeleteUserNestedStack: 1
[serverless-plugin-split-stacks]: │ ├─ Outputs: 0
[serverless-plugin-split-stacks]: │ └─ Parameters: 1 (References: 0)
[serverless-plugin-split-stacks]: ├─ ManageSuggestionsNestedStack: 1
[serverless-plugin-split-stacks]: │ ├─ Outputs: 0
[serverless-plugin-split-stacks]: │ └─ Parameters: 1 (References: 0)
[serverless-plugin-split-stacks]: ├─ PermissionsNestedStack: 99
[serverless-plugin-split-stacks]: │ ├─ Outputs: 0
[serverless-plugin-split-stacks]: │ └─ Parameters: 102 (References: 0)
[serverless-plugin-split-stacks]: ├─ PoliciesNestedStack: 3
[serverless-plugin-split-stacks]: │ ├─ Outputs: 0
[serverless-plugin-split-stacks]: │ └─ Parameters: 1 (References: 0)
[serverless-plugin-split-stacks]: ├─ RepostAssetNestedStack: 1
[serverless-plugin-split-stacks]: │ ├─ Outputs: 0
[serverless-plugin-split-stacks]: │ └─ Parameters: 1 (References: 0)
[serverless-plugin-split-stacks]: ├─ SearchHubNestedStack: 2
[serverless-plugin-split-stacks]: │ ├─ Outputs: 0
[serverless-plugin-split-stacks]: │ └─ Parameters: 1 (References: 0)
[serverless-plugin-split-stacks]: ├─ SubscribeHubNestedStack: 1
[serverless-plugin-split-stacks]: │ ├─ Outputs: 0
[serverless-plugin-split-stacks]: │ └─ Parameters: 1 (References: 0)
[serverless-plugin-split-stacks]: ├─ SubscriptionsNestedStack: 3
[serverless-plugin-split-stacks]: │ ├─ Outputs: 0
[serverless-plugin-split-stacks]: │ └─ Parameters: 1 (References: 0)
[serverless-plugin-split-stacks]: └─ UnsubscribeHubNestedStack: 1
[serverless-plugin-split-stacks]: ├─ Outputs: 0
[serverless-plugin-split-stacks]: └─ Parameters: 1 (References: 0)
✔ Service packaged (217s)
I have tried multiple tags with split-stacks, but it always puts too many resources in the root