@aws-cdk-testing/cli-integ 3.5.0 → 3.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/aws.js +6 -9
- package/lib/cli/query-github.js +2 -3
- package/lib/cli/run-suite.js +2 -3
- package/lib/cli/stage-distribution.js +4 -4
- package/lib/eventually.js +3 -3
- package/lib/files.js +2 -3
- package/lib/github.js +5 -6
- package/lib/integ-test.js +58 -3
- package/lib/package-sources/release-source.d.ts +1 -1
- package/lib/package-sources/release-source.js +2 -3
- package/lib/package-sources/repo-source.d.ts +1 -1
- package/lib/package-sources/repo-source.js +1 -1
- package/lib/package-sources/repo-tools/npm.js +4 -5
- package/lib/package-sources/subprocess.d.ts +1 -1
- package/lib/package-sources/subprocess.js +1 -1
- package/lib/process.js +5 -6
- package/lib/proxy.d.ts +1 -1
- package/lib/proxy.js +2 -2
- package/lib/resource-pool.js +5 -3
- package/lib/shell.d.ts +3 -3
- package/lib/shell.js +8 -12
- package/lib/staging/codeartifact.js +8 -11
- package/lib/staging/maven.d.ts +2 -2
- package/lib/staging/maven.js +3 -5
- package/lib/staging/npm.d.ts +2 -2
- package/lib/staging/npm.js +1 -1
- package/lib/staging/nuget.d.ts +2 -2
- package/lib/staging/nuget.js +1 -1
- package/lib/staging/parallel-shell.js +2 -2
- package/lib/staging/pypi.d.ts +2 -2
- package/lib/staging/pypi.js +1 -1
- package/lib/with-aws.d.ts +2 -2
- package/lib/with-aws.js +5 -4
- package/lib/with-cdk-app.d.ts +7 -5
- package/lib/with-cdk-app.js +28 -33
- package/lib/with-cli-lib.d.ts +4 -3
- package/lib/with-cli-lib.js +1 -1
- package/lib/with-packages.d.ts +1 -1
- package/lib/with-packages.js +1 -1
- package/lib/with-sam.d.ts +3 -3
- package/lib/with-sam.js +4 -7
- package/lib/with-temporary-directory.d.ts +1 -1
- package/lib/with-temporary-directory.js +1 -1
- package/lib/xpmutex.js +5 -3
- package/npm-shrinkwrap.json +8722 -0
- package/package.json +11 -7
- package/resources/cdk-apps/refactoring/cdk.json +7 -0
- package/resources/cdk-apps/refactoring/refactoring.js +18 -0
- package/test-reports/junit.xml +15 -0
- package/tests/cli-integ-tests/cdk-assets/cdk-assets-uses-profile.integtest.js +11 -11
- package/tests/cli-integ-tests/cdk-assets/smoketest.integtest.js +9 -9
- package/tests/cli-integ-tests/cdk-bootstrap-add-tags.integtest.js +2 -3
- package/tests/cli-integ-tests/cdk-bootstrap-can-add-tags-then-update-tags-during-re-bootstrap.integtest.js +2 -3
- package/tests/cli-integ-tests/cdk-bootstrap-can-bootstrap-without-execution.integtest.js +2 -3
- package/tests/cli-integ-tests/cdk-bootstrap-can-create-a-legacy-bootstrap-stack-with---public-access-block-configuration-false.integtest.js +2 -3
- package/tests/cli-integ-tests/cdk-bootstrap-can-create-multiple-legacy-bootstrap-stacks.integtest.js +2 -3
- package/tests/cli-integ-tests/cdk-bootstrap-can-remove-custompermissionsboundary.integtest.js +4 -6
- package/tests/cli-integ-tests/cdk-bootstrap-can-remove-trusted-account.integtest.js +2 -3
- package/tests/cli-integ-tests/cdk-bootstrap-create-ecr-with-tag-immutability-to-set-on.integtest.js +4 -5
- package/tests/cli-integ-tests/cdk-bootstrap-switch-on-termination-protection.integtest.js +2 -3
- package/tests/cli-integ-tests/cdk-ci-true-output-to-stdout.integtest.js +1 -1
- package/tests/cli-integ-tests/cdk-deploy---method-direct.integtest.js +2 -3
- package/tests/cli-integ-tests/cdk-deploy-and-test-stack-with-lambda-asset.integtest.js +3 -4
- package/tests/cli-integ-tests/cdk-deploy-deletes-all-notification-arns-when-empty-array-is-passed.integtest.js +3 -4
- package/tests/cli-integ-tests/cdk-deploy-preserves-existing-notification-arns-when-not-specified.integtest.js +2 -3
- package/tests/cli-integ-tests/cdk-deploy-with-import-existing-resources-true.integtest.js +2 -3
- package/tests/cli-integ-tests/cdk-deploy-with-notification-arn-as-flag.integtest.js +2 -3
- package/tests/cli-integ-tests/cdk-deploy-with-notification-arn-as-prop-and-flag.integtest.js +2 -3
- package/tests/cli-integ-tests/cdk-deploy-with-notification-arn-as-prop.integtest.js +2 -3
- package/tests/cli-integ-tests/cdk-deploy-with-parameters-multi.integtest.js +3 -4
- package/tests/cli-integ-tests/cdk-deploy-with-parameters.integtest.js +2 -3
- package/tests/cli-integ-tests/cdk-deploy-without-execute-a-named-change-set.integtest.js +2 -3
- package/tests/cli-integ-tests/cdk-deploy-without-import-existing-resources.integtest.js +2 -3
- package/tests/cli-integ-tests/cdk-deploy.integtest.js +2 -3
- package/tests/cli-integ-tests/cdk-destroy-interactive.integtest.js +6 -7
- package/tests/cli-integ-tests/cdk-fast-deploy.integtest.js +4 -5
- package/tests/cli-integ-tests/cdk-gc-garbage-collection-untags-in-use-s3-objects.integtest.js +2 -2
- package/tests/cli-integ-tests/cdk-hotswap-deployment-for-ecs-service-waits-for-deployment-to-complete.integtest.js +6 -5
- package/tests/cli-integ-tests/cdk-hotswap-deployment-supports-appsync-apis-with-many-functions.integtest.js +2 -3
- package/tests/cli-integ-tests/cdk-hotswap-deployment-supports-ecs-service.integtest.js +3 -4
- package/tests/cli-integ-tests/cdk-hotswap-deployment-supports-fn::importvalue-intrinsic.integtest.js +3 -4
- package/tests/cli-integ-tests/cdk-hotswap-deployment-supports-lambda-functions-description-and-environment-variables.integtest.js +3 -4
- package/tests/cli-integ-tests/cdk-hotswap-ecs-deployment-respects-properties-override.integtest.js +5 -6
- package/tests/cli-integ-tests/cdk-import-interactive.integtest.js +5 -6
- package/tests/cli-integ-tests/cdk-lib-cli-lib-deploy.integtest.js +2 -3
- package/tests/cli-integ-tests/cdk-lib-security-related-changes-without-a-cli-are-expected-to-fail-when-approval-is-required.integtest.js +1 -2
- package/tests/cli-integ-tests/cdk-migrate/cdk-migrate--from-stack-creates-deployable-app-csharp.integtest.js +1 -1
- package/tests/cli-integ-tests/cdk-migrate/cdk-migrate--from-stack-creates-deployable-app-java.integtest.js +1 -1
- package/tests/cli-integ-tests/cdk-migrate/cdk-migrate--from-stack-creates-deployable-app-python.integtest.js +1 -1
- package/tests/cli-integ-tests/cdk-migrate/cdk-migrate--from-stack-creates-deployable-app-typescript.integtest.js +1 -1
- package/tests/cli-integ-tests/cdk-migrate/cdk-migrate-deploys-successfully-csharp.integtest.js +1 -1
- package/tests/cli-integ-tests/cdk-migrate/cdk-migrate-deploys-successfully-java.integtest.js +1 -1
- package/tests/cli-integ-tests/cdk-migrate/cdk-migrate-deploys-successfully-python.integtest.js +1 -1
- package/tests/cli-integ-tests/cdk-migrate/cdk-migrate-deploys-successfully-typescript.integtest.js +1 -1
- package/tests/cli-integ-tests/cdk-migrate/cdk-migrate-generates-migrate.json.integtest.js +1 -1
- package/tests/cli-integ-tests/cdk-migrate/testcase.d.ts +1 -1
- package/tests/cli-integ-tests/cdk-migrate/testcase.js +4 -6
- package/tests/cli-integ-tests/cdk-nested-stack-with-parameters.integtest.js +2 -3
- package/tests/cli-integ-tests/cdk-refactor-dry-run.integtest.d.ts +1 -0
- package/tests/cli-integ-tests/cdk-refactor-dry-run.integtest.js +41 -0
- package/tests/cli-integ-tests/cdk-requests-go-through-a-proxy-when-configured.integtest.js +2 -3
- package/tests/cli-integ-tests/cdk-stack-in-update_rollback_complete-state-can-be-updated.integtest.js +5 -6
- package/tests/cli-integ-tests/cdk-test-migrate-deployment-for-app-with-localfile-source-in-migrate.json.integtest.js +4 -4
- package/tests/cli-integ-tests/cdk-update-to-stack-in-rollback_complete-state-will-delete-stack-and-create-a-new-one.integtest.js +5 -6
- package/tests/cli-integ-tests/proxy.integtest.js +2 -3
- package/tests/init-go/init-go.integtest.js +2 -3
- package/tests/init-typescript-app/init-typescript-app.integtest.js +1 -1
- package/tests/tool-integrations/amplify.integtest.js +4 -4
- package/tests/tool-integrations/with-tool-context.d.ts +5 -5
- package/tests/tool-integrations/with-tool-context.js +1 -1
- package/.eslintrc.js +0 -9
- package/lib/aws.ts +0 -303
- package/lib/cli/query-github.ts +0 -56
- package/lib/cli/run-suite.ts +0 -153
- package/lib/cli/stage-distribution.ts +0 -262
- package/lib/cli/test-root.ts +0 -3
- package/lib/corking.ts +0 -33
- package/lib/eventually.ts +0 -42
- package/lib/files.ts +0 -80
- package/lib/github.ts +0 -43
- package/lib/index.ts +0 -13
- package/lib/integ-test.ts +0 -110
- package/lib/lists.ts +0 -9
- package/lib/memoize.ts +0 -14
- package/lib/npm.ts +0 -41
- package/lib/package-sources/release-source.ts +0 -82
- package/lib/package-sources/repo-source.ts +0 -112
- package/lib/package-sources/repo-tools/npm.ts +0 -48
- package/lib/package-sources/source.ts +0 -35
- package/lib/package-sources/subprocess.ts +0 -15
- package/lib/process.ts +0 -154
- package/lib/proxy.ts +0 -64
- package/lib/resource-pool.ts +0 -140
- package/lib/resources.ts +0 -4
- package/lib/shell.ts +0 -331
- package/lib/staging/codeartifact.ts +0 -387
- package/lib/staging/maven.ts +0 -95
- package/lib/staging/npm.ts +0 -62
- package/lib/staging/nuget.ts +0 -75
- package/lib/staging/parallel-shell.ts +0 -51
- package/lib/staging/pypi.ts +0 -50
- package/lib/staging/usage-dir.ts +0 -99
- package/lib/with-aws.ts +0 -111
- package/lib/with-cdk-app.ts +0 -847
- package/lib/with-cli-lib.ts +0 -150
- package/lib/with-packages.ts +0 -15
- package/lib/with-sam.ts +0 -295
- package/lib/with-temporary-directory.ts +0 -35
- package/lib/with-timeout.ts +0 -33
- package/lib/xpmutex.ts +0 -218
- package/resources/cli-regression-patches/v2.130.0/node_modules/@aws-cdk-testing/cli-integ/resources/cdk-apps/sam_cdk_integ_app/lib/nested-stack.js +0 -19
- package/resources/cli-regression-patches/v2.130.0/node_modules/@aws-cdk-testing/cli-integ/resources/cdk-apps/sam_cdk_integ_app/lib/test-stack.js +0 -134
- package/tests/cli-integ-tests/cdk---exclusively-selects-only-selected-stack.integtest.ts +0 -29
- package/tests/cli-integ-tests/cdk-assets/cdk-assets-uses-profile.integtest.ts +0 -92
- package/tests/cli-integ-tests/cdk-assets/smoketest.integtest.ts +0 -82
- package/tests/cli-integ-tests/cdk-automatic-ordering-with-concurrency.integtest.ts +0 -15
- package/tests/cli-integ-tests/cdk-automatic-ordering.integtest.ts +0 -15
- package/tests/cli-integ-tests/cdk-automatic-rollback-if-paused-and---no-rollback-is-removed-from-flags.integtest.ts +0 -40
- package/tests/cli-integ-tests/cdk-automatic-rollback-if-paused-and-change-contains-a-replacement.integtest.ts +0 -40
- package/tests/cli-integ-tests/cdk-automatic-rollback-if-replacement-and---no-rollback-is-removed-from-flags.integtest.ts +0 -29
- package/tests/cli-integ-tests/cdk-bootstrap-a-customized-template-vendor-will-not-overwrite-the-default-template.integtest.ts +0 -42
- package/tests/cli-integ-tests/cdk-bootstrap-add-tags.integtest.ts +0 -26
- package/tests/cli-integ-tests/cdk-bootstrap-can-add-tags-then-update-tags-during-re-bootstrap.integtest.ts +0 -28
- package/tests/cli-integ-tests/cdk-bootstrap-can-and-deploy-if-omitting-execution-policies.integtest.ts +0 -21
- package/tests/cli-integ-tests/cdk-bootstrap-can-bootstrap-without-execution.integtest.ts +0 -22
- package/tests/cli-integ-tests/cdk-bootstrap-can-create-a-legacy-bootstrap-stack-with---public-access-block-configuration-false.integtest.ts +0 -21
- package/tests/cli-integ-tests/cdk-bootstrap-can-create-multiple-legacy-bootstrap-stacks.integtest.ts +0 -27
- package/tests/cli-integ-tests/cdk-bootstrap-can-deploy-modern-synthesized-stack-even-if-bootstrap-stack-name-is-unknown.integtest.ts +0 -24
- package/tests/cli-integ-tests/cdk-bootstrap-can-deploy-with-session-tags-on-the-deploy.integtest.ts +0 -25
- package/tests/cli-integ-tests/cdk-bootstrap-can-deploy-without-execution-role-and-with-session-tags-on-deploy-role.integtest.ts +0 -22
- package/tests/cli-integ-tests/cdk-bootstrap-can-dump-the-template.integtest.ts +0 -32
- package/tests/cli-integ-tests/cdk-bootstrap-can-remove-custompermissionsboundary.integtest.ts +0 -77
- package/tests/cli-integ-tests/cdk-bootstrap-can-remove-trusted-account.integtest.ts +0 -30
- package/tests/cli-integ-tests/cdk-bootstrap-can-use-the-custom-permissions-boundary-(with-slashes)-to-bootstrap.integtest.ts +0 -15
- package/tests/cli-integ-tests/cdk-bootstrap-can-use-the-custom-permissions-boundary-to-bootstrap.integtest.ts +0 -15
- package/tests/cli-integ-tests/cdk-bootstrap-can-use-the-default-permissions-boundary-to-bootstrap.integtest.ts +0 -15
- package/tests/cli-integ-tests/cdk-bootstrap-create-ecr-with-tag-immutability-to-set-on.integtest.ts +0 -34
- package/tests/cli-integ-tests/cdk-bootstrap-deploy-new-style-synthesis-to-new-style-bootstrap-(with-docker-image).integtest.ts +0 -22
- package/tests/cli-integ-tests/cdk-bootstrap-deploy-new-style-synthesis-to-new-style-bootstrap.integtest.ts +0 -22
- package/tests/cli-integ-tests/cdk-bootstrap-deploy-old-style-synthesis-to-new-style-bootstrap.integtest.ts +0 -21
- package/tests/cli-integ-tests/cdk-bootstrap-switch-on-termination-protection.integtest.ts +0 -24
- package/tests/cli-integ-tests/cdk-bootstrap-upgrade-legacy-bootstrap-stack-to-new-bootstrap-stack-while-in-use.integtest.ts +0 -47
- package/tests/cli-integ-tests/cdk-can-still-load-old-assemblies.integtest.ts +0 -57
- package/tests/cli-integ-tests/cdk-cdk-diff---fail-on-multiple-stacks-exits-with-error-if-any-of-the-stacks-contains-a-diff.integtest.ts +0 -22
- package/tests/cli-integ-tests/cdk-cdk-diff---fail-with-multiple-stack-exits-with-if-any-of-the-stacks-contains-a-diff.integtest.ts +0 -22
- package/tests/cli-integ-tests/cdk-cdk-diff---quiet-does-not-print-there-were-no-differences-message-for-stacks-which-have-no-differences.integtest.ts +0 -19
- package/tests/cli-integ-tests/cdk-cdk-diff---security-only---fail-exits-when-security-changes-are-present.integtest.ts +0 -14
- package/tests/cli-integ-tests/cdk-cdk-diff---security-only---fail-exits-when-security-diff-for-sso-access-control-config.integtest.ts +0 -13
- package/tests/cli-integ-tests/cdk-cdk-diff---security-only---fail-exits-when-security-diff-for-sso-assignment.integtest.ts +0 -13
- package/tests/cli-integ-tests/cdk-cdk-diff---security-only---fail-exits-when-security-diff-for-sso-perm-set-with-managed-policy.integtest.ts +0 -13
- package/tests/cli-integ-tests/cdk-cdk-diff---security-only---fail-exits-when-security-diff-for-sso-perm-set-without-managed-policy.integtest.ts +0 -13
- package/tests/cli-integ-tests/cdk-cdk-diff---security-only-successfully-outputs-sso-access-control-information.integtest.ts +0 -35
- package/tests/cli-integ-tests/cdk-cdk-diff---security-only-successfully-outputs-sso-assignment-information.integtest.ts +0 -37
- package/tests/cli-integ-tests/cdk-cdk-diff---security-only-successfully-outputs-sso-permission-set-with-managed-policy-information.integtest.ts +0 -35
- package/tests/cli-integ-tests/cdk-cdk-diff---security-only-successfully-outputs-sso-permission-set-without-managed-policy-information.integtest.ts +0 -37
- package/tests/cli-integ-tests/cdk-cdk-diff-doesnt-show-resource-metadata-changes.integtest.ts +0 -23
- package/tests/cli-integ-tests/cdk-cdk-diff-shows-resource-metadata-changes-with---no-change-set.integtest.ts +0 -23
- package/tests/cli-integ-tests/cdk-cdk-diff-with-large-changeset-and-custom-toolkit-stack-name-and-qualifier-does-not-fail.integtest.ts +0 -39
- package/tests/cli-integ-tests/cdk-cdk-diff-with-large-changeset-does-not-fail.integtest.ts +0 -28
- package/tests/cli-integ-tests/cdk-cdk-diff.integtest.ts +0 -18
- package/tests/cli-integ-tests/cdk-cdk-ls---show-dependencies---json---long.integtest.ts +0 -50
- package/tests/cli-integ-tests/cdk-cdk-ls---show-dependencies---json.integtest.ts +0 -95
- package/tests/cli-integ-tests/cdk-cdk-ls.integtest.ts +0 -36
- package/tests/cli-integ-tests/cdk-cdk-notices-are-displayed-correctly.integtest.ts +0 -42
- package/tests/cli-integ-tests/cdk-cdk-notices-with---unacknowledged.integtest.ts +0 -14
- package/tests/cli-integ-tests/cdk-cdk-synth-add-the-metadata-properties-expected-by-sam.integtest.ts +0 -126
- package/tests/cli-integ-tests/cdk-cdk-synth-bundled-functions-as-expected.integtest.ts +0 -80
- package/tests/cli-integ-tests/cdk-cdk-synth.integtest.ts +0 -53
- package/tests/cli-integ-tests/cdk-ci-output-to-stderr.integtest.ts +0 -19
- package/tests/cli-integ-tests/cdk-ci-true-output-to-stdout.integtest.ts +0 -28
- package/tests/cli-integ-tests/cdk-construct-with-builtin-lambda-function.integtest.ts +0 -14
- package/tests/cli-integ-tests/cdk-context-in-stage-propagates-to-top.integtest.ts +0 -20
- package/tests/cli-integ-tests/cdk-context-setting.integtest.ts +0 -33
- package/tests/cli-integ-tests/cdk-deploy---method-direct.integtest.ts +0 -23
- package/tests/cli-integ-tests/cdk-deploy-all-concurrently.integtest.ts +0 -17
- package/tests/cli-integ-tests/cdk-deploy-all.integtest.ts +0 -14
- package/tests/cli-integ-tests/cdk-deploy-and-test-stack-with-lambda-asset.integtest.ts +0 -31
- package/tests/cli-integ-tests/cdk-deploy-deletes-all-notification-arns-when-empty-array-is-passed.integtest.ts +0 -50
- package/tests/cli-integ-tests/cdk-deploy-no-stacks-error.integtest.ts +0 -18
- package/tests/cli-integ-tests/cdk-deploy-no-stacks-with---ignore-no-stacks.integtest.ts +0 -17
- package/tests/cli-integ-tests/cdk-deploy-preserves-existing-notification-arns-when-not-specified.integtest.ts +0 -51
- package/tests/cli-integ-tests/cdk-deploy-stack-with-docker-asset.integtest.ts +0 -11
- package/tests/cli-integ-tests/cdk-deploy-stack-with-lambda-asset-to-object-lock-enabled-asset-bucket.integtest.ts +0 -42
- package/tests/cli-integ-tests/cdk-deploy-stack-without-resource.integtest.ts +0 -32
- package/tests/cli-integ-tests/cdk-deploy-wildcard-with-outputs.integtest.ts +0 -28
- package/tests/cli-integ-tests/cdk-deploy-with-import-existing-resources-true.integtest.ts +0 -29
- package/tests/cli-integ-tests/cdk-deploy-with-method-direct-and-import-existing-resources-fails.integtest.ts +0 -17
- package/tests/cli-integ-tests/cdk-deploy-with-notification-arn-as-flag.integtest.ts +0 -36
- package/tests/cli-integ-tests/cdk-deploy-with-notification-arn-as-prop-and-flag.integtest.ts +0 -45
- package/tests/cli-integ-tests/cdk-deploy-with-notification-arn-as-prop.integtest.ts +0 -37
- package/tests/cli-integ-tests/cdk-deploy-with-parameters-multi.integtest.ts +0 -33
- package/tests/cli-integ-tests/cdk-deploy-with-parameters.integtest.ts +0 -26
- package/tests/cli-integ-tests/cdk-deploy-with-role.integtest.ts +0 -119
- package/tests/cli-integ-tests/cdk-deploy-with-wildcard-and-parameters.integtest.ts +0 -22
- package/tests/cli-integ-tests/cdk-deploy-without-execute-a-named-change-set.integtest.ts +0 -36
- package/tests/cli-integ-tests/cdk-deploy-without-import-existing-resources.integtest.ts +0 -28
- package/tests/cli-integ-tests/cdk-deploy.integtest.ts +0 -20
- package/tests/cli-integ-tests/cdk-destroy-interactive.integtest.ts +0 -36
- package/tests/cli-integ-tests/cdk-doubly-nested-stack.integtest.ts +0 -12
- package/tests/cli-integ-tests/cdk-enablediffnofail.integtest.ts +0 -44
- package/tests/cli-integ-tests/cdk-failed-deploy-does-not-hang.integtest.ts +0 -12
- package/tests/cli-integ-tests/cdk-fast-deploy.integtest.ts +0 -41
- package/tests/cli-integ-tests/cdk-gc-garbage-collection-deletes-unused-ecr-images.integtest.ts +0 -48
- package/tests/cli-integ-tests/cdk-gc-garbage-collection-deletes-unused-s3-objects.integtest.ts +0 -51
- package/tests/cli-integ-tests/cdk-gc-garbage-collection-keeps-in-use-ecr-images.integtest.ts +0 -48
- package/tests/cli-integ-tests/cdk-gc-garbage-collection-keeps-in-use-s3-objects.integtest.ts +0 -52
- package/tests/cli-integ-tests/cdk-gc-garbage-collection-tags-unused-ecr-images.integtest.ts +0 -47
- package/tests/cli-integ-tests/cdk-gc-garbage-collection-tags-unused-s3-objects.integtest.ts +0 -63
- package/tests/cli-integ-tests/cdk-gc-garbage-collection-untags-in-use-ecr-images.integtest.ts +0 -55
- package/tests/cli-integ-tests/cdk-gc-garbage-collection-untags-in-use-s3-objects.integtest.ts +0 -63
- package/tests/cli-integ-tests/cdk-generating-and-loading-assembly.integtest.ts +0 -52
- package/tests/cli-integ-tests/cdk-hotswap-deployment-for-ecs-service-detects-failed-deployment-and-errors.integtest.ts +0 -29
- package/tests/cli-integ-tests/cdk-hotswap-deployment-for-ecs-service-waits-for-deployment-to-complete.integtest.ts +0 -45
- package/tests/cli-integ-tests/cdk-hotswap-deployment-supports-appsync-apis-with-many-functions.integtest.ts +0 -36
- package/tests/cli-integ-tests/cdk-hotswap-deployment-supports-ecs-service.integtest.ts +0 -41
- package/tests/cli-integ-tests/cdk-hotswap-deployment-supports-fn::importvalue-intrinsic.integtest.ts +0 -53
- package/tests/cli-integ-tests/cdk-hotswap-deployment-supports-lambda-functions-description-and-environment-variables.integtest.ts +0 -43
- package/tests/cli-integ-tests/cdk-hotswap-ecs-deployment-respects-properties-override.integtest.ts +0 -59
- package/tests/cli-integ-tests/cdk-iam-diff.integtest.ts +0 -23
- package/tests/cli-integ-tests/cdk-import-interactive.integtest.ts +0 -57
- package/tests/cli-integ-tests/cdk-lib-cli-lib-deploy.integtest.ts +0 -32
- package/tests/cli-integ-tests/cdk-lib-cli-lib-list.integtest.ts +0 -12
- package/tests/cli-integ-tests/cdk-lib-cli-lib-synth.integtest.ts +0 -27
- package/tests/cli-integ-tests/cdk-lib-security-related-changes-without-a-cli-are-expected-to-fail-when-approval-is-required.integtest.ts +0 -32
- package/tests/cli-integ-tests/cdk-migrate/cdk-migrate--from-stack-creates-deployable-app-csharp.integtest.ts +0 -13
- package/tests/cli-integ-tests/cdk-migrate/cdk-migrate--from-stack-creates-deployable-app-java.integtest.ts +0 -14
- package/tests/cli-integ-tests/cdk-migrate/cdk-migrate--from-stack-creates-deployable-app-python.integtest.ts +0 -13
- package/tests/cli-integ-tests/cdk-migrate/cdk-migrate--from-stack-creates-deployable-app-typescript.integtest.ts +0 -13
- package/tests/cli-integ-tests/cdk-migrate/cdk-migrate-deploys-successfully-csharp.integtest.ts +0 -15
- package/tests/cli-integ-tests/cdk-migrate/cdk-migrate-deploys-successfully-java.integtest.ts +0 -15
- package/tests/cli-integ-tests/cdk-migrate/cdk-migrate-deploys-successfully-python.integtest.ts +0 -15
- package/tests/cli-integ-tests/cdk-migrate/cdk-migrate-deploys-successfully-typescript.integtest.ts +0 -15
- package/tests/cli-integ-tests/cdk-migrate/cdk-migrate-generates-migrate.json.integtest.ts +0 -20
- package/tests/cli-integ-tests/cdk-migrate/testcase.ts +0 -69
- package/tests/cli-integ-tests/cdk-nested-stack-with-parameters.integtest.ts +0 -28
- package/tests/cli-integ-tests/cdk-requests-go-through-a-proxy-when-configured.integtest.ts +0 -39
- package/tests/cli-integ-tests/cdk-sam-can-locally-test-the-synthesized-cdk-application.integtest.ts +0 -25
- package/tests/cli-integ-tests/cdk-security-related-changes-without-a-cli-are-expected-to-fail.integtest.ts +0 -30
- package/tests/cli-integ-tests/cdk-skips-notice-refresh.integtest.ts +0 -26
- package/tests/cli-integ-tests/cdk-ssm-parameter-provider-error.integtest.ts +0 -18
- package/tests/cli-integ-tests/cdk-stack-in-update_rollback_complete-state-can-be-updated.integtest.ts +0 -59
- package/tests/cli-integ-tests/cdk-stage-with-bundled-lambda-function.integtest.ts +0 -13
- package/tests/cli-integ-tests/cdk-synth---quiet-can-be-specified-in-cdk.json.integtest.ts +0 -20
- package/tests/cli-integ-tests/cdk-synthing-a-stage-with-errors-can-be-suppressed.integtest.ts +0 -15
- package/tests/cli-integ-tests/cdk-synthing-a-stage-with-errors-leads-to-failure.integtest.ts +0 -18
- package/tests/cli-integ-tests/cdk-templates-on-disk-contain-metadata-resource.integtest.ts +0 -25
- package/tests/cli-integ-tests/cdk-termination-protection.integtest.ts +0 -19
- package/tests/cli-integ-tests/cdk-test-cdk-rollback---force.integtest.ts +0 -48
- package/tests/cli-integ-tests/cdk-test-cdk-rollback.integtest.ts +0 -38
- package/tests/cli-integ-tests/cdk-test-migrate-deployment-for-app-with-localfile-source-in-migrate.json.integtest.ts +0 -56
- package/tests/cli-integ-tests/cdk-test-resource-import-with-construct-that-requires-bundling.integtest.ts +0 -74
- package/tests/cli-integ-tests/cdk-test-resource-import.integtest.ts +0 -64
- package/tests/cli-integ-tests/cdk-two-ways-of-showing-the-version.integtest.ts +0 -14
- package/tests/cli-integ-tests/cdk-update-to-stack-in-rollback_complete-state-will-delete-stack-and-create-a-new-one.integtest.ts +0 -47
- package/tests/cli-integ-tests/cdk-vpc-lookup.integtest.ts +0 -26
- package/tests/cli-integ-tests/proxy.integtest.ts +0 -168
- package/tests/init-csharp/init-csharp.integtest.ts +0 -15
- package/tests/init-fsharp/init-fsharp.integtest.ts +0 -15
- package/tests/init-go/init-go.integtest.ts +0 -28
- package/tests/init-java/init-java.integtest.ts +0 -14
- package/tests/init-javascript/init-javascript.integtest.ts +0 -58
- package/tests/init-python/init-python.integtest.ts +0 -20
- package/tests/init-typescript-app/init-typescript-app.integtest.ts +0 -67
- package/tests/init-typescript-lib/init-typescript-lib.integtest.ts +0 -13
- package/tests/tool-integrations/amplify.integtest.ts +0 -117
- package/tests/tool-integrations/with-tool-context.ts +0 -14
- package/tests/uberpackage/uberpackage.integtest.ts +0 -11
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import { integTest, withoutBootstrap, randomString } from '../../lib';
|
|
2
|
-
|
|
3
|
-
jest.setTimeout(2 * 60 * 60_000); // Includes the time to acquire locks, worst-case single-threaded runtime
|
|
4
|
-
|
|
5
|
-
integTest('upgrade legacy bootstrap stack to new bootstrap stack while in use', withoutBootstrap(async (fixture) => {
|
|
6
|
-
const bootstrapStackName = fixture.bootstrapStackName;
|
|
7
|
-
|
|
8
|
-
const legacyBootstrapBucketName = `aws-cdk-bootstrap-integ-test-legacy-bckt-${randomString()}`;
|
|
9
|
-
const newBootstrapBucketName = `aws-cdk-bootstrap-integ-test-v2-bckt-${randomString()}`;
|
|
10
|
-
fixture.rememberToDeleteBucket(legacyBootstrapBucketName); // This one will leak
|
|
11
|
-
fixture.rememberToDeleteBucket(newBootstrapBucketName); // This one shouldn't leak if the test succeeds, but let's be safe in case it doesn't
|
|
12
|
-
|
|
13
|
-
// Legacy bootstrap
|
|
14
|
-
await fixture.cdkBootstrapLegacy({
|
|
15
|
-
toolkitStackName: bootstrapStackName,
|
|
16
|
-
bootstrapBucketName: legacyBootstrapBucketName,
|
|
17
|
-
});
|
|
18
|
-
|
|
19
|
-
// Deploy stack that uses file assets
|
|
20
|
-
await fixture.cdkDeploy('lambda', {
|
|
21
|
-
options: [
|
|
22
|
-
'--context', `bootstrapBucket=${legacyBootstrapBucketName}`,
|
|
23
|
-
'--context', 'legacySynth=true',
|
|
24
|
-
'--context', `@aws-cdk/core:bootstrapQualifier=${fixture.qualifier}`,
|
|
25
|
-
'--toolkit-stack-name', bootstrapStackName,
|
|
26
|
-
],
|
|
27
|
-
});
|
|
28
|
-
|
|
29
|
-
// Upgrade bootstrap stack to "new" style
|
|
30
|
-
await fixture.cdkBootstrapModern({
|
|
31
|
-
toolkitStackName: bootstrapStackName,
|
|
32
|
-
bootstrapBucketName: newBootstrapBucketName,
|
|
33
|
-
cfnExecutionPolicy: 'arn:aws:iam::aws:policy/AdministratorAccess',
|
|
34
|
-
});
|
|
35
|
-
|
|
36
|
-
// (Force) deploy stack again
|
|
37
|
-
// --force to bypass the check which says that the template hasn't changed.
|
|
38
|
-
await fixture.cdkDeploy('lambda', {
|
|
39
|
-
options: [
|
|
40
|
-
'--context', `bootstrapBucket=${newBootstrapBucketName}`,
|
|
41
|
-
'--context', `@aws-cdk/core:bootstrapQualifier=${fixture.qualifier}`,
|
|
42
|
-
'--toolkit-stack-name', bootstrapStackName,
|
|
43
|
-
'--force',
|
|
44
|
-
],
|
|
45
|
-
});
|
|
46
|
-
}));
|
|
47
|
-
|
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
import { promises as fs } from 'fs';
|
|
2
|
-
import * as os from 'os';
|
|
3
|
-
import * as path from 'path';
|
|
4
|
-
import { integTest, RESOURCES_DIR, shell, withDefaultFixture, cloneDirectory } from '../../lib';
|
|
5
|
-
|
|
6
|
-
jest.setTimeout(2 * 60 * 60_000); // Includes the time to acquire locks, worst-case single-threaded runtime
|
|
7
|
-
|
|
8
|
-
integTest(
|
|
9
|
-
'can still load old assemblies',
|
|
10
|
-
withDefaultFixture(async (fixture) => {
|
|
11
|
-
const cxAsmDir = path.join(os.tmpdir(), 'cdk-integ-cx');
|
|
12
|
-
|
|
13
|
-
const testAssembliesDirectory = path.join(RESOURCES_DIR, 'cloud-assemblies');
|
|
14
|
-
for (const asmdir of await listChildDirs(testAssembliesDirectory)) {
|
|
15
|
-
fixture.log(`ASSEMBLY ${asmdir}`);
|
|
16
|
-
await cloneDirectory(asmdir, cxAsmDir);
|
|
17
|
-
|
|
18
|
-
// Some files in the asm directory that have a .js extension are
|
|
19
|
-
// actually treated as templates. Evaluate them using NodeJS.
|
|
20
|
-
const templates = await listChildren(cxAsmDir, (fullPath) => Promise.resolve(fullPath.endsWith('.js')));
|
|
21
|
-
for (const template of templates) {
|
|
22
|
-
const targetName = template.replace(/.js$/, '');
|
|
23
|
-
await shell([process.execPath, template, '>', targetName], {
|
|
24
|
-
cwd: cxAsmDir,
|
|
25
|
-
outputs: [fixture.output],
|
|
26
|
-
modEnv: {
|
|
27
|
-
TEST_ACCOUNT: await fixture.aws.account(),
|
|
28
|
-
TEST_REGION: fixture.aws.region,
|
|
29
|
-
},
|
|
30
|
-
});
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
// Use this directory as a Cloud Assembly
|
|
34
|
-
const output = await fixture.cdk(['--app', cxAsmDir, '-v', 'synth']);
|
|
35
|
-
|
|
36
|
-
// Assert that there was no providerError in CDK's stderr
|
|
37
|
-
// Because we rely on the app/framework to actually error in case the
|
|
38
|
-
// provider fails, we inspect the logs here.
|
|
39
|
-
expect(output).not.toContain('$providerError');
|
|
40
|
-
}
|
|
41
|
-
}),
|
|
42
|
-
);
|
|
43
|
-
|
|
44
|
-
async function listChildren(parent: string, pred: (x: string) => Promise<boolean>) {
|
|
45
|
-
const ret = new Array<string>();
|
|
46
|
-
for (const child of await fs.readdir(parent, { encoding: 'utf-8' })) {
|
|
47
|
-
const fullPath = path.join(parent, child.toString());
|
|
48
|
-
if (await pred(fullPath)) {
|
|
49
|
-
ret.push(fullPath);
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
return ret;
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
async function listChildDirs(parent: string) {
|
|
56
|
-
return listChildren(parent, async (fullPath: string) => (await fs.stat(fullPath)).isDirectory());
|
|
57
|
-
}
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { integTest, withDefaultFixture } from '../../lib';
|
|
2
|
-
|
|
3
|
-
jest.setTimeout(2 * 60 * 60_000); // Includes the time to acquire locks, worst-case single-threaded runtime
|
|
4
|
-
|
|
5
|
-
integTest(
|
|
6
|
-
'cdk diff --fail on multiple stacks exits with error if any of the stacks contains a diff',
|
|
7
|
-
withDefaultFixture(async (fixture) => {
|
|
8
|
-
// GIVEN
|
|
9
|
-
const diff1 = await fixture.cdk(['diff', fixture.fullStackName('test-1')]);
|
|
10
|
-
expect(diff1).toContain('AWS::SNS::Topic');
|
|
11
|
-
|
|
12
|
-
await fixture.cdkDeploy('test-2');
|
|
13
|
-
const diff2 = await fixture.cdk(['diff', fixture.fullStackName('test-2')]);
|
|
14
|
-
expect(diff2).toContain('There were no differences');
|
|
15
|
-
|
|
16
|
-
// WHEN / THEN
|
|
17
|
-
await expect(
|
|
18
|
-
fixture.cdk(['diff', '--fail', fixture.fullStackName('test-1'), fixture.fullStackName('test-2')]),
|
|
19
|
-
).rejects.toThrow('exited with error');
|
|
20
|
-
}),
|
|
21
|
-
);
|
|
22
|
-
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
import { integTest, withDefaultFixture } from '../../lib';
|
|
2
|
-
|
|
3
|
-
jest.setTimeout(2 * 60 * 60_000); // Includes the time to acquire locks, worst-case single-threaded runtime
|
|
4
|
-
|
|
5
|
-
integTest(
|
|
6
|
-
'cdk diff --fail with multiple stack exits with if any of the stacks contains a diff',
|
|
7
|
-
withDefaultFixture(async (fixture) => {
|
|
8
|
-
// GIVEN
|
|
9
|
-
await fixture.cdkDeploy('test-1');
|
|
10
|
-
const diff1 = await fixture.cdk(['diff', fixture.fullStackName('test-1')]);
|
|
11
|
-
expect(diff1).toContain('There were no differences');
|
|
12
|
-
|
|
13
|
-
const diff2 = await fixture.cdk(['diff', fixture.fullStackName('test-2')]);
|
|
14
|
-
expect(diff2).toContain('AWS::SNS::Topic');
|
|
15
|
-
|
|
16
|
-
// WHEN / THEN
|
|
17
|
-
await expect(
|
|
18
|
-
fixture.cdk(['diff', '--fail', fixture.fullStackName('test-1'), fixture.fullStackName('test-2')]),
|
|
19
|
-
).rejects.toThrow('exited with error');
|
|
20
|
-
}),
|
|
21
|
-
);
|
|
22
|
-
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { integTest, withDefaultFixture } from '../../lib';
|
|
2
|
-
|
|
3
|
-
jest.setTimeout(2 * 60 * 60_000); // Includes the time to acquire locks, worst-case single-threaded runtime
|
|
4
|
-
|
|
5
|
-
integTest(
|
|
6
|
-
"cdk diff --quiet does not print 'There were no differences' message for stacks which have no differences",
|
|
7
|
-
withDefaultFixture(async (fixture) => {
|
|
8
|
-
// GIVEN
|
|
9
|
-
await fixture.cdkDeploy('test-1');
|
|
10
|
-
|
|
11
|
-
// WHEN
|
|
12
|
-
const diff = await fixture.cdk(['diff', '--quiet', fixture.fullStackName('test-1')]);
|
|
13
|
-
|
|
14
|
-
// THEN
|
|
15
|
-
expect(diff).not.toContain('Stack test-1');
|
|
16
|
-
expect(diff).not.toContain('There were no differences');
|
|
17
|
-
}),
|
|
18
|
-
);
|
|
19
|
-
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { integTest, withDefaultFixture } from '../../lib';
|
|
2
|
-
|
|
3
|
-
jest.setTimeout(2 * 60 * 60_000); // Includes the time to acquire locks, worst-case single-threaded runtime
|
|
4
|
-
|
|
5
|
-
integTest(
|
|
6
|
-
'cdk diff --security-only --fail exits when security changes are present',
|
|
7
|
-
withDefaultFixture(async (fixture) => {
|
|
8
|
-
const stackName = 'iam-test';
|
|
9
|
-
await expect(fixture.cdk(['diff', '--security-only', '--fail', fixture.fullStackName(stackName)])).rejects.toThrow(
|
|
10
|
-
'exited with error',
|
|
11
|
-
);
|
|
12
|
-
}),
|
|
13
|
-
);
|
|
14
|
-
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { integTest, withDefaultFixture } from '../../lib';
|
|
2
|
-
|
|
3
|
-
jest.setTimeout(2 * 60 * 60_000); // Includes the time to acquire locks, worst-case single-threaded runtime
|
|
4
|
-
|
|
5
|
-
integTest(
|
|
6
|
-
'cdk diff --security-only --fail exits when security diff for sso access control config',
|
|
7
|
-
withDefaultFixture(async (fixture) => {
|
|
8
|
-
await expect(
|
|
9
|
-
fixture.cdk(['diff', '--security-only', '--fail', fixture.fullStackName('sso-access-control')]),
|
|
10
|
-
).rejects.toThrow('exited with error');
|
|
11
|
-
}),
|
|
12
|
-
);
|
|
13
|
-
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { integTest, withDefaultFixture } from '../../lib';
|
|
2
|
-
|
|
3
|
-
jest.setTimeout(2 * 60 * 60_000); // Includes the time to acquire locks, worst-case single-threaded runtime
|
|
4
|
-
|
|
5
|
-
integTest(
|
|
6
|
-
'cdk diff --security-only --fail exits when security diff for sso-assignment',
|
|
7
|
-
withDefaultFixture(async (fixture) => {
|
|
8
|
-
await expect(
|
|
9
|
-
fixture.cdk(['diff', '--security-only', '--fail', fixture.fullStackName('sso-assignment')]),
|
|
10
|
-
).rejects.toThrow('exited with error');
|
|
11
|
-
}),
|
|
12
|
-
);
|
|
13
|
-
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { integTest, withDefaultFixture } from '../../lib';
|
|
2
|
-
|
|
3
|
-
jest.setTimeout(2 * 60 * 60_000); // Includes the time to acquire locks, worst-case single-threaded runtime
|
|
4
|
-
|
|
5
|
-
integTest(
|
|
6
|
-
'cdk diff --security-only --fail exits when security diff for sso-perm-set-with-managed-policy',
|
|
7
|
-
withDefaultFixture(async (fixture) => {
|
|
8
|
-
await expect(
|
|
9
|
-
fixture.cdk(['diff', '--security-only', '--fail', fixture.fullStackName('sso-perm-set-with-managed-policy')]),
|
|
10
|
-
).rejects.toThrow('exited with error');
|
|
11
|
-
}),
|
|
12
|
-
);
|
|
13
|
-
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import { integTest, withDefaultFixture } from '../../lib';
|
|
2
|
-
|
|
3
|
-
jest.setTimeout(2 * 60 * 60_000); // Includes the time to acquire locks, worst-case single-threaded runtime
|
|
4
|
-
|
|
5
|
-
integTest(
|
|
6
|
-
'cdk diff --security-only --fail exits when security diff for sso-perm-set-without-managed-policy',
|
|
7
|
-
withDefaultFixture(async (fixture) => {
|
|
8
|
-
await expect(
|
|
9
|
-
fixture.cdk(['diff', '--security-only', '--fail', fixture.fullStackName('sso-perm-set-without-managed-policy')]),
|
|
10
|
-
).rejects.toThrow('exited with error');
|
|
11
|
-
}),
|
|
12
|
-
);
|
|
13
|
-
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import { integTest, withDefaultFixture } from '../../lib';
|
|
2
|
-
|
|
3
|
-
jest.setTimeout(2 * 60 * 60_000); // Includes the time to acquire locks, worst-case single-threaded runtime
|
|
4
|
-
|
|
5
|
-
integTest(
|
|
6
|
-
'cdk diff --security-only successfully outputs sso-access-control information',
|
|
7
|
-
withDefaultFixture(async (fixture) => {
|
|
8
|
-
const diff = await fixture.cdk(['diff', '--security-only', fixture.fullStackName('sso-access-control')]);
|
|
9
|
-
`┌───┬────────────────────────────────┬────────────────────────┬─────────────────────────────────┐
|
|
10
|
-
│ │ Resource │ InstanceArn │ AccessControlAttributes │
|
|
11
|
-
├───┼────────────────────────────────┼────────────────────────┼─────────────────────────────────┤
|
|
12
|
-
│ + │\${instanceAccessControlConfig} │ arn:aws:test:testvalue │ Key: first, Values: [a] │
|
|
13
|
-
│ │ │ │ Key: second, Values: [b] │
|
|
14
|
-
│ │ │ │ Key: third, Values: [c] │
|
|
15
|
-
│ │ │ │ Key: fourth, Values: [d] │
|
|
16
|
-
│ │ │ │ Key: fifth, Values: [e] │
|
|
17
|
-
│ │ │ │ Key: sixth, Values: [f] │
|
|
18
|
-
└───┴────────────────────────────────┴────────────────────────┴─────────────────────────────────┘
|
|
19
|
-
`;
|
|
20
|
-
expect(diff).toContain('Resource');
|
|
21
|
-
expect(diff).toContain('instanceAccessControlConfig');
|
|
22
|
-
|
|
23
|
-
expect(diff).toContain('InstanceArn');
|
|
24
|
-
expect(diff).toContain('arn:aws:sso:::instance/testvalue');
|
|
25
|
-
|
|
26
|
-
expect(diff).toContain('AccessControlAttributes');
|
|
27
|
-
expect(diff).toContain('Key: first, Values: [a]');
|
|
28
|
-
expect(diff).toContain('Key: second, Values: [b]');
|
|
29
|
-
expect(diff).toContain('Key: third, Values: [c]');
|
|
30
|
-
expect(diff).toContain('Key: fourth, Values: [d]');
|
|
31
|
-
expect(diff).toContain('Key: fifth, Values: [e]');
|
|
32
|
-
expect(diff).toContain('Key: sixth, Values: [f]');
|
|
33
|
-
}),
|
|
34
|
-
);
|
|
35
|
-
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import { integTest, withDefaultFixture } from '../../lib';
|
|
2
|
-
|
|
3
|
-
jest.setTimeout(2 * 60 * 60_000); // Includes the time to acquire locks, worst-case single-threaded runtime
|
|
4
|
-
|
|
5
|
-
integTest(
|
|
6
|
-
'cdk diff --security-only successfully outputs sso-assignment information',
|
|
7
|
-
withDefaultFixture(async (fixture) => {
|
|
8
|
-
const diff = await fixture.cdk(['diff', '--security-only', fixture.fullStackName('sso-assignment')]);
|
|
9
|
-
`┌───┬───────────────┬──────────────────────────────────┬─────────────────────────┬──────────────────────────────┬───────────────┬──────────────┬─────────────┐
|
|
10
|
-
│ │ Resource │ InstanceArn │ PermissionSetArn │ PrincipalId │ PrincipalType │ TargetId │ TargetType │
|
|
11
|
-
├───┼───────────────┼──────────────────────────────────┼─────────────────────────┼──────────────────────────────┼───────────────┼──────────────┼─────────────┤
|
|
12
|
-
│ + │\${assignment} │ arn:aws:sso:::instance/testvalue │ arn:aws:sso:::testvalue │ 11111111-2222-3333-4444-test │ USER │ 111111111111 │ AWS_ACCOUNT │
|
|
13
|
-
└───┴───────────────┴──────────────────────────────────┴─────────────────────────┴──────────────────────────────┴───────────────┴──────────────┴─────────────┘
|
|
14
|
-
`;
|
|
15
|
-
expect(diff).toContain('Resource');
|
|
16
|
-
expect(diff).toContain('assignment');
|
|
17
|
-
|
|
18
|
-
expect(diff).toContain('InstanceArn');
|
|
19
|
-
expect(diff).toContain('arn:aws:sso:::instance/testvalue');
|
|
20
|
-
|
|
21
|
-
expect(diff).toContain('PermissionSetArn');
|
|
22
|
-
expect(diff).toContain('arn:aws:sso:::testvalue');
|
|
23
|
-
|
|
24
|
-
expect(diff).toContain('PrincipalId');
|
|
25
|
-
expect(diff).toContain('11111111-2222-3333-4444-test');
|
|
26
|
-
|
|
27
|
-
expect(diff).toContain('PrincipalType');
|
|
28
|
-
expect(diff).toContain('USER');
|
|
29
|
-
|
|
30
|
-
expect(diff).toContain('TargetId');
|
|
31
|
-
expect(diff).toContain('111111111111');
|
|
32
|
-
|
|
33
|
-
expect(diff).toContain('TargetType');
|
|
34
|
-
expect(diff).toContain('AWS_ACCOUNT');
|
|
35
|
-
}),
|
|
36
|
-
);
|
|
37
|
-
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import { integTest, withDefaultFixture } from '../../lib';
|
|
2
|
-
|
|
3
|
-
jest.setTimeout(2 * 60 * 60_000); // Includes the time to acquire locks, worst-case single-threaded runtime
|
|
4
|
-
|
|
5
|
-
integTest(
|
|
6
|
-
'cdk diff --security-only successfully outputs sso-permission-set-with-managed-policy information',
|
|
7
|
-
withDefaultFixture(async (fixture) => {
|
|
8
|
-
const diff = await fixture.cdk([
|
|
9
|
-
'diff',
|
|
10
|
-
'--security-only',
|
|
11
|
-
fixture.fullStackName('sso-perm-set-with-managed-policy'),
|
|
12
|
-
]);
|
|
13
|
-
`┌───┬──────────────────────────────────────────┬──────────────────────────────────┬────────────────────┬───────────────────────────────────────────────────────────────┬─────────────────────────────────┐
|
|
14
|
-
│ │ Resource │ InstanceArn │ PermissionSet name │ PermissionsBoundary │ CustomerManagedPolicyReferences │
|
|
15
|
-
├───┼──────────────────────────────────────────┼──────────────────────────────────┼────────────────────┼───────────────────────────────────────────────────────────────┼─────────────────────────────────┤
|
|
16
|
-
│ + │\${permission-set-with-managed-policy} │ arn:aws:sso:::instance/testvalue │ niceWork │ ManagedPolicyArn: arn:aws:iam::aws:policy/AdministratorAccess │ Name: forSSO, Path: │
|
|
17
|
-
`;
|
|
18
|
-
|
|
19
|
-
expect(diff).toContain('Resource');
|
|
20
|
-
expect(diff).toContain('permission-set-with-managed-policy');
|
|
21
|
-
|
|
22
|
-
expect(diff).toContain('InstanceArn');
|
|
23
|
-
expect(diff).toContain('arn:aws:sso:::instance/testvalue');
|
|
24
|
-
|
|
25
|
-
expect(diff).toContain('PermissionSet name');
|
|
26
|
-
expect(diff).toContain('niceWork');
|
|
27
|
-
|
|
28
|
-
expect(diff).toContain('PermissionsBoundary');
|
|
29
|
-
expect(diff).toContain('ManagedPolicyArn: arn:aws:iam::aws:policy/AdministratorAccess');
|
|
30
|
-
|
|
31
|
-
expect(diff).toContain('CustomerManagedPolicyReferences');
|
|
32
|
-
expect(diff).toContain('Name: forSSO, Path:');
|
|
33
|
-
}),
|
|
34
|
-
);
|
|
35
|
-
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import { integTest, withDefaultFixture } from '../../lib';
|
|
2
|
-
|
|
3
|
-
jest.setTimeout(2 * 60 * 60_000); // Includes the time to acquire locks, worst-case single-threaded runtime
|
|
4
|
-
|
|
5
|
-
integTest(
|
|
6
|
-
'cdk diff --security-only successfully outputs sso-permission-set-without-managed-policy information',
|
|
7
|
-
withDefaultFixture(async (fixture) => {
|
|
8
|
-
const diff = await fixture.cdk([
|
|
9
|
-
'diff',
|
|
10
|
-
'--security-only',
|
|
11
|
-
fixture.fullStackName('sso-perm-set-without-managed-policy'),
|
|
12
|
-
]);
|
|
13
|
-
`┌───┬──────────────────────────────────────────┬──────────────────────────────────┬────────────────────┬───────────────────────────────────┬─────────────────────────────────┐
|
|
14
|
-
│ │ Resource │ InstanceArn │ PermissionSet name │ PermissionsBoundary │ CustomerManagedPolicyReferences │
|
|
15
|
-
├───┼──────────────────────────────────────────┼──────────────────────────────────┼────────────────────┼───────────────────────────────────┼─────────────────────────────────┤
|
|
16
|
-
│ + │\${permission-set-without-managed-policy} │ arn:aws:sso:::instance/testvalue │ testName │ CustomerManagedPolicyReference: { │ │
|
|
17
|
-
│ │ │ │ │ Name: why, Path: /how/ │ │
|
|
18
|
-
│ │ │ │ │ } │ │
|
|
19
|
-
`;
|
|
20
|
-
expect(diff).toContain('Resource');
|
|
21
|
-
expect(diff).toContain('permission-set-without-managed-policy');
|
|
22
|
-
|
|
23
|
-
expect(diff).toContain('InstanceArn');
|
|
24
|
-
expect(diff).toContain('arn:aws:sso:::instance/testvalue');
|
|
25
|
-
|
|
26
|
-
expect(diff).toContain('PermissionSet name');
|
|
27
|
-
expect(diff).toContain('testName');
|
|
28
|
-
|
|
29
|
-
expect(diff).toContain('PermissionsBoundary');
|
|
30
|
-
expect(diff).toContain('CustomerManagedPolicyReference: {');
|
|
31
|
-
expect(diff).toContain('Name: why, Path: /how/');
|
|
32
|
-
expect(diff).toContain('}');
|
|
33
|
-
|
|
34
|
-
expect(diff).toContain('CustomerManagedPolicyReferences');
|
|
35
|
-
}),
|
|
36
|
-
);
|
|
37
|
-
|
package/tests/cli-integ-tests/cdk-cdk-diff-doesnt-show-resource-metadata-changes.integtest.ts
DELETED
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { integTest, withDefaultFixture } from '../../lib';
|
|
2
|
-
|
|
3
|
-
jest.setTimeout(2 * 60 * 60_000); // Includes the time to acquire locks, worst-case single-threaded runtime
|
|
4
|
-
|
|
5
|
-
integTest(
|
|
6
|
-
'cdk diff doesnt show resource metadata changes',
|
|
7
|
-
withDefaultFixture(async (fixture) => {
|
|
8
|
-
// GIVEN - small initial stack with default resource metadata
|
|
9
|
-
await fixture.cdkDeploy('metadata');
|
|
10
|
-
|
|
11
|
-
// WHEN - changing resource metadata value
|
|
12
|
-
const diff = await fixture.cdk(['diff', fixture.fullStackName('metadata')], {
|
|
13
|
-
verbose: true,
|
|
14
|
-
modEnv: {
|
|
15
|
-
INTEG_METADATA_VALUE: 'custom',
|
|
16
|
-
},
|
|
17
|
-
});
|
|
18
|
-
|
|
19
|
-
// Assert there are no changes
|
|
20
|
-
expect(diff).toContain('There were no differences');
|
|
21
|
-
}),
|
|
22
|
-
);
|
|
23
|
-
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { integTest, withDefaultFixture } from '../../lib';
|
|
2
|
-
|
|
3
|
-
jest.setTimeout(2 * 60 * 60_000); // Includes the time to acquire locks, worst-case single-threaded runtime
|
|
4
|
-
|
|
5
|
-
integTest(
|
|
6
|
-
'cdk diff shows resource metadata changes with --no-change-set',
|
|
7
|
-
withDefaultFixture(async (fixture) => {
|
|
8
|
-
// GIVEN - small initial stack with default resource metadata
|
|
9
|
-
await fixture.cdkDeploy('metadata');
|
|
10
|
-
|
|
11
|
-
// WHEN - changing resource metadata value
|
|
12
|
-
const diff = await fixture.cdk(['diff --no-change-set', fixture.fullStackName('metadata')], {
|
|
13
|
-
verbose: true,
|
|
14
|
-
modEnv: {
|
|
15
|
-
INTEG_METADATA_VALUE: 'custom',
|
|
16
|
-
},
|
|
17
|
-
});
|
|
18
|
-
|
|
19
|
-
// Assert there are changes
|
|
20
|
-
expect(diff).not.toContain('There were no differences');
|
|
21
|
-
}),
|
|
22
|
-
);
|
|
23
|
-
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
import { integTest, withoutBootstrap } from '../../lib';
|
|
2
|
-
|
|
3
|
-
jest.setTimeout(2 * 60 * 60_000); // Includes the time to acquire locks, worst-case single-threaded runtime
|
|
4
|
-
|
|
5
|
-
integTest('cdk diff with large changeset and custom toolkit stack name and qualifier does not fail', withoutBootstrap(async (fixture) => {
|
|
6
|
-
// Bootstrapping with custom toolkit stack name and qualifier
|
|
7
|
-
const qualifier = fixture.qualifier;
|
|
8
|
-
|
|
9
|
-
const toolkitStackName = fixture.bootstrapStackName;
|
|
10
|
-
await fixture.cdkBootstrapModern({
|
|
11
|
-
verbose: true,
|
|
12
|
-
toolkitStackName: toolkitStackName,
|
|
13
|
-
qualifier: qualifier,
|
|
14
|
-
});
|
|
15
|
-
|
|
16
|
-
// Deploying small initial stack with only one IAM role
|
|
17
|
-
await fixture.cdkDeploy('iam-roles', {
|
|
18
|
-
modEnv: {
|
|
19
|
-
NUMBER_OF_ROLES: '1',
|
|
20
|
-
},
|
|
21
|
-
options: [
|
|
22
|
-
'--toolkit-stack-name', toolkitStackName,
|
|
23
|
-
'--context', `@aws-cdk/core:bootstrapQualifier=${qualifier}`,
|
|
24
|
-
],
|
|
25
|
-
});
|
|
26
|
-
|
|
27
|
-
// WHEN - adding a role with a ton of metadata to create a large diff
|
|
28
|
-
const diff = await fixture.cdk(['diff', '--toolkit-stack-name', toolkitStackName, '--context', `@aws-cdk/core:bootstrapQualifier=${qualifier}`, fixture.fullStackName('iam-roles')], {
|
|
29
|
-
verbose: true,
|
|
30
|
-
modEnv: {
|
|
31
|
-
NUMBER_OF_ROLES: '2',
|
|
32
|
-
},
|
|
33
|
-
});
|
|
34
|
-
|
|
35
|
-
// Assert that the CLI assumes the file publishing role:
|
|
36
|
-
expect(diff).toMatch(/Assuming role .*file-publishing-role/);
|
|
37
|
-
expect(diff).toContain('success: Published');
|
|
38
|
-
}));
|
|
39
|
-
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { integTest, withDefaultFixture } from '../../lib';
|
|
2
|
-
|
|
3
|
-
jest.setTimeout(2 * 60 * 60_000); // Includes the time to acquire locks, worst-case single-threaded runtime
|
|
4
|
-
|
|
5
|
-
integTest(
|
|
6
|
-
'cdk diff with large changeset does not fail',
|
|
7
|
-
withDefaultFixture(async (fixture) => {
|
|
8
|
-
// GIVEN - small initial stack with only one IAM role
|
|
9
|
-
await fixture.cdkDeploy('iam-roles', {
|
|
10
|
-
modEnv: {
|
|
11
|
-
NUMBER_OF_ROLES: '1',
|
|
12
|
-
},
|
|
13
|
-
});
|
|
14
|
-
|
|
15
|
-
// WHEN - adding an additional role with a ton of metadata to create a large diff
|
|
16
|
-
const diff = await fixture.cdk(['diff', fixture.fullStackName('iam-roles')], {
|
|
17
|
-
verbose: true,
|
|
18
|
-
modEnv: {
|
|
19
|
-
NUMBER_OF_ROLES: '2',
|
|
20
|
-
},
|
|
21
|
-
});
|
|
22
|
-
|
|
23
|
-
// Assert that the CLI assumes the file publishing role:
|
|
24
|
-
expect(diff).toMatch(/Assuming role .*file-publishing-role/);
|
|
25
|
-
expect(diff).toContain('success: Published');
|
|
26
|
-
}),
|
|
27
|
-
);
|
|
28
|
-
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { integTest, withDefaultFixture } from '../../lib';
|
|
2
|
-
|
|
3
|
-
jest.setTimeout(2 * 60 * 60_000); // Includes the time to acquire locks, worst-case single-threaded runtime
|
|
4
|
-
|
|
5
|
-
integTest(
|
|
6
|
-
'cdk diff',
|
|
7
|
-
withDefaultFixture(async (fixture) => {
|
|
8
|
-
const diff1 = await fixture.cdk(['diff', fixture.fullStackName('test-1')]);
|
|
9
|
-
expect(diff1).toContain('AWS::SNS::Topic');
|
|
10
|
-
|
|
11
|
-
const diff2 = await fixture.cdk(['diff', fixture.fullStackName('test-2')]);
|
|
12
|
-
expect(diff2).toContain('AWS::SNS::Topic');
|
|
13
|
-
|
|
14
|
-
// We can make it fail by passing --fail
|
|
15
|
-
await expect(fixture.cdk(['diff', '--fail', fixture.fullStackName('test-1')])).rejects.toThrow('exited with error');
|
|
16
|
-
}),
|
|
17
|
-
);
|
|
18
|
-
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
import { integTest, withDefaultFixture } from '../../lib';
|
|
2
|
-
|
|
3
|
-
jest.setTimeout(2 * 60 * 60_000); // Includes the time to acquire locks, worst-case single-threaded runtime
|
|
4
|
-
|
|
5
|
-
integTest(
|
|
6
|
-
'cdk ls --show-dependencies --json --long',
|
|
7
|
-
withDefaultFixture(async (fixture) => {
|
|
8
|
-
const listing = await fixture.cdk(['ls --show-dependencies --json --long'], { captureStderr: false });
|
|
9
|
-
|
|
10
|
-
const expectedStacks = [
|
|
11
|
-
{
|
|
12
|
-
id: 'order-providing',
|
|
13
|
-
name: 'order-providing',
|
|
14
|
-
enviroment: {
|
|
15
|
-
account: 'unknown-account',
|
|
16
|
-
region: 'unknown-region',
|
|
17
|
-
name: 'aws://unknown-account/unknown-region',
|
|
18
|
-
},
|
|
19
|
-
dependencies: [],
|
|
20
|
-
},
|
|
21
|
-
{
|
|
22
|
-
id: 'order-consuming',
|
|
23
|
-
name: 'order-consuming',
|
|
24
|
-
enviroment: {
|
|
25
|
-
account: 'unknown-account',
|
|
26
|
-
region: 'unknown-region',
|
|
27
|
-
name: 'aws://unknown-account/unknown-region',
|
|
28
|
-
},
|
|
29
|
-
dependencies: [
|
|
30
|
-
{
|
|
31
|
-
id: 'order-providing',
|
|
32
|
-
dependencies: [],
|
|
33
|
-
},
|
|
34
|
-
],
|
|
35
|
-
},
|
|
36
|
-
];
|
|
37
|
-
|
|
38
|
-
for (const stack of expectedStacks) {
|
|
39
|
-
expect(listing).toContain(fixture.fullStackName(stack.id));
|
|
40
|
-
expect(listing).toContain(fixture.fullStackName(stack.name));
|
|
41
|
-
expect(listing).toContain(stack.enviroment.account);
|
|
42
|
-
expect(listing).toContain(stack.enviroment.name);
|
|
43
|
-
expect(listing).toContain(stack.enviroment.region);
|
|
44
|
-
for (const dependency of stack.dependencies) {
|
|
45
|
-
expect(listing).toContain(fixture.fullStackName(dependency.id));
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
}),
|
|
49
|
-
);
|
|
50
|
-
|