Skip to content

CloudFormation Output count is greater than max allowed 60 #133

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
raman188 opened this issue Sep 29, 2020 · 3 comments
Open

CloudFormation Output count is greater than max allowed 60 #133

raman188 opened this issue Sep 29, 2020 · 3 comments

Comments

@raman188
Copy link

raman188 commented Sep 29, 2020

Using Serverless-split-stacks plugin, we try to split the stacks using two options:
i) perType
ii) perFunction

i) Using perType option, we receive - "The CloudFormation template is invalid: Template error: instance of Fn::GetAtt references undefined resource CheckIntegrationEventsRuleSchedule1" error.
ii) Using perFunction option, we receive - "The CloudFormation template is invalid: Template format error: Unresolved resource dependencies [IamRoleLambdaExecution] in the Resources block of the template" error.

Queries:
i) How we can validate serverless.yml on local server? Please elaborate.
ii) Is there something else we need to do on aws console to resolve cloud formation template related issues.

@raman188 raman188 changed the title CloudFormation Ouput count is greater than max allowed 60 CloudFormation Output count is greater than max allowed 60 Sep 29, 2020
@morficus
Copy link

this seems to be related to #123

@vicary
Copy link
Contributor

vicary commented Mar 3, 2021

Basically this stack trace,

  1. https://github.com/dougmoscrop/serverless-plugin-split-stacks/blob/master/lib/utils.js#L84
  2. https://github.com/dougmoscrop/serverless-plugin-split-stacks/blob/master/lib/replace-outputs.js#L10
  3. https://github.com/dougmoscrop/serverless-plugin-split-stacks/blob/master/split-stacks.js#L65

replaceOutputs is ran after the migrateExistingResources and migrateNewResources above, and thus, bypasses the stack splitting logic altogether.

All these logics should have the migration logics included above,

      .then(() => this.replaceReferences())
      .then(() => this.replaceOutputs())
      .then(() => this.replaceConditions())
      .then(() => this.mergeStackResources())
      .then(() => this.sequenceStacks())

I am currently deciding if I should hard fork this, or make a huge refactor PR that is almost asking for a grinding halt.

@vicary
Copy link
Contributor

vicary commented Mar 3, 2021

My comment above should also applies to #91 and #123.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants