Skip to content

Stack Mapping Fails (V2 Transformer Migration)  #32

Open
@sacrampton

Description

Before opening, please confirm:

  • I have installed the latest version of the Amplify CLI (see above), and confirmed that the issue still persists.
  • I have searched for duplicate or closed issues.
  • I have read the guide for submitting bug reports.
  • I have done my best to include a minimal, self-contained set of instructions for consistently reproducing the issue.
  • I have removed any sensitive information from my code snippets and submission.

How did you install the Amplify CLI?

npm install -g @aws-amplify/cli

If applicable, what version of Node.js are you using?

v17.1.0

Amplify CLI Version

8.1.0

What operating system are you using?

AWS LINUX

Did you make any manual changes to the cloud resources managed by Amplify? Please describe the changes made.

Modified transform.conf.json

{
  "StackMapping": {
     "ItemclassificationResolver": "ConnectionStack2",
     "ItemlocationResolver": "ConnectionStack2",
     "ItemmaterialResolver": "ConnectionStack2",
     "ItemoperatingUnitResolver": "ConnectionStack2",
     "ItempackageResolver": "ConnectionStack2"
  }
}

Amplify Categories

api

Amplify Commands

push

Describe the bug

Trying to migrate existing database to the V2 transformer and the ConnectionStack.json exceeds 500 resources.

So modifying the transform.conf.json file to split into multiple ConnectionStacks.

I compiled the schema without any StackMapping first and extracted a list of 427 resources to put in the transform.conf.json file. I put them all in ConnectionStack2 as shown (partially below) - but when I compiled it comes back with the error that there are more than 500 resources in ConnectionStack2.

  "StackMapping":{
    "UomscaleResolver": "ConnectionStack2",
    "ScaleuomResolver": "ConnectionStack2",
    "ItemplantResolver": "ConnectionStack2",
    "PartbrandResolver": "ConnectionStack2",
    "PhotoitemResolver": "ConnectionStack2"
   }

So I spread the resources across 6 additional Connection Stacks and that compiled fine - but when I push I get the following error.

Circular dependency between resources: [CustomResourcesjson, ConnectionStack6, ConnectionStack2, ConnectionStack3, ConnectionStack4, ConnectionStack5]

The Custom Resources is attached - there are no custom resources.
CustomResources.zip

Alternately, if I then change up the StackMapping to get beyond the error above, namely by reducing the numbers of records in StackMapping or changing how they are mapped I can get beyond the above circular error - but then I'll get the following error saying it failed...

CREATE_FAILED AssetVisitseriesReferenceResolver AWS::AppSync::Resolver Tue May 10 2022 23:18:22 GMT+0000 (Coordinated Universal Time) Only one resolver is allowed per field. (Service: AWSAppSync; Status Code: 400; Error Code: BadRequestException; Request ID: 8cf3287a-6301-4222-874c-6f42cfbcf62c; Proxy: null)

Expected behavior

Expect it to work as per V1 where I put any resource from the original ConnectionStack.json into the StackMapping table and that resource moves to the separate json file. This is not the case as evidenced by my addition of 423 resources exceeds the 500 limit in the ConnectionStack2.json

Reproduction steps

See above

GraphQL schema(s)

# Put schemas below this line

Log output

# Put your logs below this line


Additional information

No response

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions