Skip to content

integ-runner: Something is not right about integs #33561

@IkeNefcy

Description

@IkeNefcy

Describe the bug

Lately I've been seeing a reoccurring issue with integs.

example

[~] Custom::CognitoUserPassword UserSetUserPasswordAD2F2A64
 └─ [~] Create
     └─ [~] .Fn::Join:
         └─ @@ -12,6 +12,6 @@
            [ ]         "User.Username"
            [ ]       ]
            [ ]     },
            [-]     "\",\"Password\":\"TestUser@123\",\"Permanent\":true},\"physicalResourceId\":{\"id\":\"SetUserPassword\"},\"logApiResponseData\":true}"
            [+]     "\",\"Password\":\"TestUser@123\",\"Permanent\":true},\"physicalResourceId\":{\"id\":\"SetUserPassword\"}}"
            [ ]   ]
            [ ] ]

Some Fn::Join commands will add this tag at the end, ,\"logApiResponseData\":true, This comes from the actual synth when you use --update-on-failed, so every time you update the integ, this is added, then when you actually run the integ command to check, you get this error, somehow the integ synth is not adding this and therefore erroring.

Every time that I've seen this, I just manually remove ,\"logApiResponseData\":true, and it's fixed.
But I noticed this a lot in many examples when I did my lambda commit which involved a ton of integ updates;
#33291

As mentioned to fix I just removed them for now. I don't have a list of examples but I am working on a PR right now and the error above came from .../aws-elasticloadbalancingv2/test/integ.alb.oidc.js

Opening this as a general discussion, I haven't actually done any deep dive on this yet, maybe after I finish this PR I will if no one has looked yet

Regression Issue

  • Select this option if this issue appears to be a regression.

Last Known Working CDK Version

No response

Expected Behavior

I'm expecting that --update-on-failed and yarn integ create compatible results. In this case where yarn integ would show ,\"logApiResponseData\":true, in it's synth.

Current Behavior

,\"logApiResponseData\":true, is not showing in the yarn integ synth and erroring.

Reproduction Steps

This example is a pain in the butt because certificates.
I'll find a simpler one.
Also you would have to make a small change for it to detect that it's changed, or I think there may be a way to force it, can't remember
yarn integ test/aws-elasticloadbalancingv2/test/integ.alb.oidc.js --update-on-failed (force?)
then
yarn integ test/aws-elasticloadbalancingv2/test/integ.alb.oidc.js
and see the error

Possible Solution

No idea, once I get a chance to look at what integ-runner is doing maybe I'll have something. Or if anyone has anything to add / this is known.

Additional Information/Context

No response

CDK CLI Version

2.178.2

Framework Version

No response

Node.js Version

18.18.0

OS

MacOS Sequioa 15.3

Language

TypeScript

Language Version

No response

Other information

No response

Metadata

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