diff --git a/packages/@aws-cdk/aws-amplify-alpha/.npmignore b/packages/@aws-cdk/aws-amplify-alpha/.npmignore index 115d01c3c9529..706093184e13f 100644 --- a/packages/@aws-cdk/aws-amplify-alpha/.npmignore +++ b/packages/@aws-cdk/aws-amplify-alpha/.npmignore @@ -31,3 +31,6 @@ junit.xml test/ !*.lit.ts **/*.snapshot + +# include custom-resource-handlers +!custom-resource-handlers/* diff --git a/packages/@aws-cdk/aws-amplify-alpha/lib/branch.ts b/packages/@aws-cdk/aws-amplify-alpha/lib/branch.ts index 5da6ddc798b1b..7638a15abcf15 100644 --- a/packages/@aws-cdk/aws-amplify-alpha/lib/branch.ts +++ b/packages/@aws-cdk/aws-amplify-alpha/lib/branch.ts @@ -233,7 +233,7 @@ class AmplifyAssetDeploymentProvider extends NestedStack { this, 'amplify-asset-deployment-on-event', { - entry: path.join(__dirname, '..', '..', 'custom-resource-handlers', 'dist', 'aws-amplify-alpha', 'asset-deployment-handler', 'index.js'), + entry: path.join(__dirname, '..', 'custom-resource-handlers', 'dist', 'aws-amplify-alpha', 'asset-deployment-handler', 'index.js'), handler: 'onEvent', initialPolicy: [ new iam.PolicyStatement({ diff --git a/packages/@aws-cdk/aws-amplify-alpha/package.json b/packages/@aws-cdk/aws-amplify-alpha/package.json index fc3a036eb1302..c9d5081fbd328 100644 --- a/packages/@aws-cdk/aws-amplify-alpha/package.json +++ b/packages/@aws-cdk/aws-amplify-alpha/package.json @@ -67,7 +67,10 @@ "cdk-build": { "env": { "AWSLINT_BASE_CONSTRUCT": true - } + }, + "pre": [ + "./scripts/airlift-custom-resource-handlers.sh" + ] }, "keywords": [ "aws", diff --git a/packages/@aws-cdk/aws-amplify-alpha/scripts/airlift-custom-resource-handlers.sh b/packages/@aws-cdk/aws-amplify-alpha/scripts/airlift-custom-resource-handlers.sh new file mode 100755 index 0000000000000..d134623873eee --- /dev/null +++ b/packages/@aws-cdk/aws-amplify-alpha/scripts/airlift-custom-resource-handlers.sh @@ -0,0 +1,23 @@ +#!/bin/bash + +scriptdir=$(cd $(dirname $0) && pwd) +customresourcedir=$(node -p "path.dirname(require.resolve('@aws-cdk/custom-resource-handlers/package.json'))") +awscdklibdir=${scriptdir}/.. + +list_custom_resources() { + for file in $customresourcedir/dist/aws-amplify-alpha/*/index.js; do + echo $file | rev | cut -d "/" -f 2-4 | rev + done +} + +customresources=$(list_custom_resources) + +echo $customresources + +cd $awscdklibdir +mkdir -p $awscdklibdir/custom-resource-handlers + +for cr in $customresources; do + mkdir -p $awscdklibdir/custom-resource-handlers/$cr + cp $customresourcedir/$cr/index.js $awscdklibdir/custom-resource-handlers/$cr +done diff --git a/packages/@aws-cdk/aws-amplify-alpha/test/integ.app-asset-deployment.js.snapshot/asset.85f7bb0ac0b4da3571afd49c891d631f4f07c0ef710a02046d3a9abd8d9d4604/index.js b/packages/@aws-cdk/aws-amplify-alpha/test/integ.app-asset-deployment.js.snapshot/asset.85f7bb0ac0b4da3571afd49c891d631f4f07c0ef710a02046d3a9abd8d9d4604/index.js new file mode 100644 index 0000000000000..d14f83b11887b --- /dev/null +++ b/packages/@aws-cdk/aws-amplify-alpha/test/integ.app-asset-deployment.js.snapshot/asset.85f7bb0ac0b4da3571afd49c891d631f4f07c0ef710a02046d3a9abd8d9d4604/index.js @@ -0,0 +1,110 @@ +"use strict"; + +// packages/@aws-cdk/aws-amplify-alpha/custom-resource-handlers/dist/aws-amplify-alpha/asset-deployment-handler/index.js +var n = Object.defineProperty; +var h = Object.getOwnPropertyDescriptor; +var f = Object.getOwnPropertyNames; +var b = Object.prototype.hasOwnProperty; +var C = (t, e) => { + for (var s in e) + n(t, s, { get: e[s], enumerable: true }); +}; +var I = (t, e, s, o) => { + if (e && typeof e == "object" || typeof e == "function") + for (let r of f(e)) + !b.call(t, r) && r !== s && n(t, r, { get: () => e[r], enumerable: !(o = h(e, r)) || o.enumerable }); + return t; +}; +var A = (t) => I(n({}, "__esModule", { value: true }), t); +var P = {}; +C(P, { isComplete: () => w, onEvent: () => v }); +module.exports = A(P); +var c = require("@aws-sdk/client-amplify"); +var l = require("@aws-sdk/client-s3"); +var a = require("@aws-sdk/client-s3"); +var m = require("@aws-sdk/s3-request-presigner"); +var p = class { + constructor(e) { + this.requestType = e.RequestType, this.requestId = e.RequestId, this.logicalResourceId = e.LogicalResourceId, this.physicalResourceId = e.PhysicalResourceId, this.event = e; + } + onEvent() { + switch (this.requestType) { + case "Create": + return this.onCreate(); + case "Update": + return this.onUpdate(); + case "Delete": + return this.onDelete(); + } + throw new Error(`Invalid request type ${this.requestType}`); + } + isComplete() { + switch (this.requestType) { + case "Create": + return this.isCreateComplete(); + case "Update": + return this.isUpdateComplete(); + case "Delete": + return this.isDeleteComplete(); + } + throw new Error(`Invalid request type ${this.requestType}`); + } + log(e) { + console.log(JSON.stringify(e, void 0, 2)); + } +}; +var i = class extends p { + constructor(e, s, o) { + super(o), this.props = this.event.ResourceProperties, this.amplify = e, this.s3 = s; + } + async onCreate() { + console.log("deploying to Amplify with options:", JSON.stringify(this.props, void 0, 2)); + let e = await this.amplify.listJobs({ appId: this.props.AppId, branchName: this.props.BranchName, maxResults: 1 }); + if (e.jobSummaries && e.jobSummaries.find((y) => y.status === "PENDING")) + return Promise.reject("Amplify job already running. Aborting deployment."); + let s = new a.GetObjectCommand({ Bucket: this.props.S3BucketName, Key: this.props.S3ObjectKey }), o = await (0, m.getSignedUrl)(this.s3, s); + return { AmplifyJobId: (await this.amplify.startDeployment({ appId: this.props.AppId, branchName: this.props.BranchName, sourceUrl: o })).jobSummary?.jobId }; + } + async isCreateComplete() { + return this.isActive(this.event.AmplifyJobId); + } + async onDelete() { + } + async isDeleteComplete() { + return { IsComplete: true }; + } + async onUpdate() { + return this.onCreate(); + } + async isUpdateComplete() { + return this.isActive(this.event.AmplifyJobId); + } + async isActive(e) { + if (!e) + throw new Error("Unable to determine Amplify job status without job id"); + let s = await this.amplify.getJob({ appId: this.props.AppId, branchName: this.props.BranchName, jobId: e }); + if (s.job?.summary?.status === "SUCCEED") + return { IsComplete: true, Data: { JobId: e, Status: s.job.summary.status } }; + if (s.job?.summary?.status === "FAILED" || s.job?.summary?.status === "CANCELLED") + throw new Error(`Amplify job failed with status: ${s.job?.summary?.status}`); + return { IsComplete: false }; + } +}; +var R = "Custom::AmplifyAssetDeployment"; +var d = { logger: console }; +var E = new c.Amplify(d); +var g = new l.S3(d); +async function v(t) { + return u(t).onEvent(); +} +async function w(t) { + return u(t).isComplete(); +} +function u(t) { + switch (t.ResourceType) { + case R: + return new i(E, g, t); + default: + throw new Error(`Unsupported resource type "${t.ResourceType}"`); + } +} diff --git a/packages/@aws-cdk/aws-amplify-alpha/test/integ.app-asset-deployment.js.snapshot/cdk-amplify-app-asset-deployment.assets.json b/packages/@aws-cdk/aws-amplify-alpha/test/integ.app-asset-deployment.js.snapshot/cdk-amplify-app-asset-deployment.assets.json index 0c28849d6c9bf..b9004b1e7df51 100644 --- a/packages/@aws-cdk/aws-amplify-alpha/test/integ.app-asset-deployment.js.snapshot/cdk-amplify-app-asset-deployment.assets.json +++ b/packages/@aws-cdk/aws-amplify-alpha/test/integ.app-asset-deployment.js.snapshot/cdk-amplify-app-asset-deployment.assets.json @@ -14,6 +14,19 @@ } } }, + "85f7bb0ac0b4da3571afd49c891d631f4f07c0ef710a02046d3a9abd8d9d4604": { + "source": { + "path": "asset.85f7bb0ac0b4da3571afd49c891d631f4f07c0ef710a02046d3a9abd8d9d4604", + "packaging": "zip" + }, + "destinations": { + "current_account-current_region": { + "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", + "objectKey": "85f7bb0ac0b4da3571afd49c891d631f4f07c0ef710a02046d3a9abd8d9d4604.zip", + "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" + } + } + }, "9307ab790c544d7c4d94504a1c950222bbfc119c2c12b44440ad46939e0b6364": { "source": { "path": "asset.9307ab790c544d7c4d94504a1c950222bbfc119c2c12b44440ad46939e0b6364", @@ -40,7 +53,7 @@ } } }, - "d1af98ce124bb93199d3d45ff8930b99badcdd089777b7976a0ad9af56d220f6": { + "2f9d2632b48a4f92f6691c3e3cfcbeb47798c945a2d03b93514de1a3d3ec72ed": { "source": { "path": "cdkamplifyappassetdeploymentcomamazonawscdkcustomresourcesamplifyassetdeploymentprovider02396C99.nested.template.json", "packaging": "file" @@ -48,12 +61,12 @@ "destinations": { "current_account-current_region": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "d1af98ce124bb93199d3d45ff8930b99badcdd089777b7976a0ad9af56d220f6.json", + "objectKey": "2f9d2632b48a4f92f6691c3e3cfcbeb47798c945a2d03b93514de1a3d3ec72ed.json", "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" } } }, - "900e4ae1ef84c6d9a4f44372cb251b10cdd38ecbb49ad1d3ab592e648a752de7": { + "c221e6276b2eea7f782d562cdf2ea6004fd2456f2dbf4de21ff01554544f6d3e": { "source": { "path": "cdk-amplify-app-asset-deployment.template.json", "packaging": "file" @@ -61,7 +74,7 @@ "destinations": { "current_account-current_region": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "900e4ae1ef84c6d9a4f44372cb251b10cdd38ecbb49ad1d3ab592e648a752de7.json", + "objectKey": "c221e6276b2eea7f782d562cdf2ea6004fd2456f2dbf4de21ff01554544f6d3e.json", "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" } } diff --git a/packages/@aws-cdk/aws-amplify-alpha/test/integ.app-asset-deployment.js.snapshot/cdk-amplify-app-asset-deployment.template.json b/packages/@aws-cdk/aws-amplify-alpha/test/integ.app-asset-deployment.js.snapshot/cdk-amplify-app-asset-deployment.template.json index 0a249b8862cab..9227907cdc9e5 100644 --- a/packages/@aws-cdk/aws-amplify-alpha/test/integ.app-asset-deployment.js.snapshot/cdk-amplify-app-asset-deployment.template.json +++ b/packages/@aws-cdk/aws-amplify-alpha/test/integ.app-asset-deployment.js.snapshot/cdk-amplify-app-asset-deployment.template.json @@ -90,7 +90,7 @@ { "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" }, - "/d1af98ce124bb93199d3d45ff8930b99badcdd089777b7976a0ad9af56d220f6.json" + "/2f9d2632b48a4f92f6691c3e3cfcbeb47798c945a2d03b93514de1a3d3ec72ed.json" ] ] } diff --git a/packages/@aws-cdk/aws-amplify-alpha/test/integ.app-asset-deployment.js.snapshot/cdkamplifyappassetdeploymentcomamazonawscdkcustomresourcesamplifyassetdeploymentprovider02396C99.nested.template.json b/packages/@aws-cdk/aws-amplify-alpha/test/integ.app-asset-deployment.js.snapshot/cdkamplifyappassetdeploymentcomamazonawscdkcustomresourcesamplifyassetdeploymentprovider02396C99.nested.template.json index df069b26de47a..e361b257eb42e 100644 --- a/packages/@aws-cdk/aws-amplify-alpha/test/integ.app-asset-deployment.js.snapshot/cdkamplifyappassetdeploymentcomamazonawscdkcustomresourcesamplifyassetdeploymentprovider02396C99.nested.template.json +++ b/packages/@aws-cdk/aws-amplify-alpha/test/integ.app-asset-deployment.js.snapshot/cdkamplifyappassetdeploymentcomamazonawscdkcustomresourcesamplifyassetdeploymentprovider02396C99.nested.template.json @@ -64,7 +64,7 @@ "S3Bucket": { "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" }, - "S3Key": "9307ab790c544d7c4d94504a1c950222bbfc119c2c12b44440ad46939e0b6364.zip" + "S3Key": "85f7bb0ac0b4da3571afd49c891d631f4f07c0ef710a02046d3a9abd8d9d4604.zip" }, "Environment": { "Variables": { diff --git a/packages/@aws-cdk/aws-amplify-alpha/test/integ.app-asset-deployment.js.snapshot/manifest.json b/packages/@aws-cdk/aws-amplify-alpha/test/integ.app-asset-deployment.js.snapshot/manifest.json index fcc6280817093..2b578594c37fd 100644 --- a/packages/@aws-cdk/aws-amplify-alpha/test/integ.app-asset-deployment.js.snapshot/manifest.json +++ b/packages/@aws-cdk/aws-amplify-alpha/test/integ.app-asset-deployment.js.snapshot/manifest.json @@ -18,7 +18,7 @@ "validateOnSynth": false, "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", - "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/900e4ae1ef84c6d9a4f44372cb251b10cdd38ecbb49ad1d3ab592e648a752de7.json", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/c221e6276b2eea7f782d562cdf2ea6004fd2456f2dbf4de21ff01554544f6d3e.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", "additionalDependencies": [ diff --git a/packages/@aws-cdk/aws-amplify-alpha/test/integ.app-asset-deployment.js.snapshot/tree.json b/packages/@aws-cdk/aws-amplify-alpha/test/integ.app-asset-deployment.js.snapshot/tree.json index 145544b984f6e..c59cf57a9e7ff 100644 --- a/packages/@aws-cdk/aws-amplify-alpha/test/integ.app-asset-deployment.js.snapshot/tree.json +++ b/packages/@aws-cdk/aws-amplify-alpha/test/integ.app-asset-deployment.js.snapshot/tree.json @@ -306,7 +306,7 @@ "s3Bucket": { "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" }, - "s3Key": "9307ab790c544d7c4d94504a1c950222bbfc119c2c12b44440ad46939e0b6364.zip" + "s3Key": "85f7bb0ac0b4da3571afd49c891d631f4f07c0ef710a02046d3a9abd8d9d4604.zip" }, "environment": { "variables": { @@ -1353,7 +1353,7 @@ { "Fn::Sub": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}" }, - "/d1af98ce124bb93199d3d45ff8930b99badcdd089777b7976a0ad9af56d220f6.json" + "/2f9d2632b48a4f92f6691c3e3cfcbeb47798c945a2d03b93514de1a3d3ec72ed.json" ] ] } diff --git a/packages/@aws-cdk/aws-amplify-alpha/test/integ.app-codecommit.js.snapshot/cdk-amplify-codecommit-app.assets.json b/packages/@aws-cdk/aws-amplify-alpha/test/integ.app-codecommit.js.snapshot/cdk-amplify-codecommit-app.assets.json index 93d2518b4e43d..2a441522a8c50 100644 --- a/packages/@aws-cdk/aws-amplify-alpha/test/integ.app-codecommit.js.snapshot/cdk-amplify-codecommit-app.assets.json +++ b/packages/@aws-cdk/aws-amplify-alpha/test/integ.app-codecommit.js.snapshot/cdk-amplify-codecommit-app.assets.json @@ -1,7 +1,7 @@ { - "version": "20.0.0", + "version": "36.0.0", "files": { - "6e52872592f7d527f083f6ccb4f9fb078d5e235d5073d6cdaaba6a8904a37e8c": { + "d2697b970b8a26f59203a7427affe250439c407e695e88e5d45aef3ac4c4b744": { "source": { "path": "cdk-amplify-codecommit-app.template.json", "packaging": "file" @@ -9,7 +9,7 @@ "destinations": { "current_account-current_region": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "6e52872592f7d527f083f6ccb4f9fb078d5e235d5073d6cdaaba6a8904a37e8c.json", + "objectKey": "d2697b970b8a26f59203a7427affe250439c407e695e88e5d45aef3ac4c4b744.json", "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" } } diff --git a/packages/@aws-cdk/aws-amplify-alpha/test/integ.app-codecommit.js.snapshot/cdk-amplify-codecommit-app.template.json b/packages/@aws-cdk/aws-amplify-alpha/test/integ.app-codecommit.js.snapshot/cdk-amplify-codecommit-app.template.json index cb96e980bfe05..7042075be0d02 100644 --- a/packages/@aws-cdk/aws-amplify-alpha/test/integ.app-codecommit.js.snapshot/cdk-amplify-codecommit-app.template.json +++ b/packages/@aws-cdk/aws-amplify-alpha/test/integ.app-codecommit.js.snapshot/cdk-amplify-codecommit-app.template.json @@ -52,7 +52,6 @@ "AppF1B96344": { "Type": "AWS::Amplify::App", "Properties": { - "Name": "App", "BasicAuthConfig": { "EnableBasicAuth": false }, @@ -62,13 +61,14 @@ "Arn" ] }, + "Name": "App", + "Platform": "WEB", "Repository": { "Fn::GetAtt": [ "Repo02AC86CF", "CloneUrlHttp" ] - }, - "Platform": "WEB" + } } }, "AppmainF505BAED": { @@ -120,4 +120,4 @@ ] } } -} +} \ No newline at end of file diff --git a/packages/@aws-cdk/aws-amplify-alpha/test/integ.app-codecommit.js.snapshot/cdk.out b/packages/@aws-cdk/aws-amplify-alpha/test/integ.app-codecommit.js.snapshot/cdk.out index 588d7b269d34f..1f0068d32659a 100644 --- a/packages/@aws-cdk/aws-amplify-alpha/test/integ.app-codecommit.js.snapshot/cdk.out +++ b/packages/@aws-cdk/aws-amplify-alpha/test/integ.app-codecommit.js.snapshot/cdk.out @@ -1 +1 @@ -{"version":"20.0.0"} \ No newline at end of file +{"version":"36.0.0"} \ No newline at end of file diff --git a/packages/@aws-cdk/aws-amplify-alpha/test/integ.app-codecommit.js.snapshot/integ.json b/packages/@aws-cdk/aws-amplify-alpha/test/integ.app-codecommit.js.snapshot/integ.json index 3d3cb3cec5373..8759c8dd30c9e 100644 --- a/packages/@aws-cdk/aws-amplify-alpha/test/integ.app-codecommit.js.snapshot/integ.json +++ b/packages/@aws-cdk/aws-amplify-alpha/test/integ.app-codecommit.js.snapshot/integ.json @@ -1,5 +1,5 @@ { - "version": "20.0.0", + "version": "36.0.0", "testCases": { "integ.app-codecommit": { "stacks": [ diff --git a/packages/@aws-cdk/aws-amplify-alpha/test/integ.app-codecommit.js.snapshot/manifest.json b/packages/@aws-cdk/aws-amplify-alpha/test/integ.app-codecommit.js.snapshot/manifest.json index 021bc1764d444..f18b5538d2d71 100644 --- a/packages/@aws-cdk/aws-amplify-alpha/test/integ.app-codecommit.js.snapshot/manifest.json +++ b/packages/@aws-cdk/aws-amplify-alpha/test/integ.app-codecommit.js.snapshot/manifest.json @@ -1,12 +1,6 @@ { - "version": "20.0.0", + "version": "36.0.0", "artifacts": { - "Tree": { - "type": "cdk:tree", - "properties": { - "file": "tree.json" - } - }, "cdk-amplify-codecommit-app.assets": { "type": "cdk:asset-manifest", "properties": { @@ -20,10 +14,11 @@ "environment": "aws://unknown-account/unknown-region", "properties": { "templateFile": "cdk-amplify-codecommit-app.template.json", + "terminationProtection": false, "validateOnSynth": false, "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", - "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/6e52872592f7d527f083f6ccb4f9fb078d5e235d5073d6cdaaba6a8904a37e8c.json", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/d2697b970b8a26f59203a7427affe250439c407e695e88e5d45aef3ac4c4b744.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", "additionalDependencies": [ @@ -83,6 +78,12 @@ ] }, "displayName": "cdk-amplify-codecommit-app" + }, + "Tree": { + "type": "cdk:tree", + "properties": { + "file": "tree.json" + } } } } \ No newline at end of file diff --git a/packages/@aws-cdk/aws-amplify-alpha/test/integ.app-codecommit.js.snapshot/tree.json b/packages/@aws-cdk/aws-amplify-alpha/test/integ.app-codecommit.js.snapshot/tree.json index 8a94bd6edc4bc..570197dc70056 100644 --- a/packages/@aws-cdk/aws-amplify-alpha/test/integ.app-codecommit.js.snapshot/tree.json +++ b/packages/@aws-cdk/aws-amplify-alpha/test/integ.app-codecommit.js.snapshot/tree.json @@ -4,14 +4,6 @@ "id": "App", "path": "", "children": { - "Tree": { - "id": "Tree", - "path": "Tree", - "constructInfo": { - "fqn": "constructs.Construct", - "version": "10.1.85" - } - }, "cdk-amplify-codecommit-app": { "id": "cdk-amplify-codecommit-app", "path": "cdk-amplify-codecommit-app", @@ -30,13 +22,13 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-codecommit.CfnRepository", + "fqn": "aws-cdk-lib.aws_codecommit.CfnRepository", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-codecommit.Repository", + "fqn": "aws-cdk-lib.aws_codecommit.Repository", "version": "0.0.0" } }, @@ -48,6 +40,14 @@ "id": "Role", "path": "cdk-amplify-codecommit-app/App/Role", "children": { + "ImportRole": { + "id": "ImportRole", + "path": "cdk-amplify-codecommit-app/App/Role/ImportRole", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, "Resource": { "id": "Resource", "path": "cdk-amplify-codecommit-app/App/Role/Resource", @@ -69,7 +69,7 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.CfnRole", + "fqn": "aws-cdk-lib.aws_iam.CfnRole", "version": "0.0.0" } }, @@ -107,19 +107,19 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.CfnPolicy", + "fqn": "aws-cdk-lib.aws_iam.CfnPolicy", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.Policy", + "fqn": "aws-cdk-lib.aws_iam.Policy", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.Role", + "fqn": "aws-cdk-lib.aws_iam.Role", "version": "0.0.0" } }, @@ -129,7 +129,6 @@ "attributes": { "aws:cdk:cloudformation:type": "AWS::Amplify::App", "aws:cdk:cloudformation:props": { - "name": "App", "basicAuthConfig": { "enableBasicAuth": false }, @@ -139,6 +138,8 @@ "Arn" ] }, + "name": "App", + "platform": "WEB", "repository": { "Fn::GetAtt": [ "Repo02AC86CF", @@ -148,7 +149,7 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-amplify.CfnApp", + "fqn": "aws-cdk-lib.aws_amplify.CfnApp", "version": "0.0.0" } }, @@ -174,32 +175,56 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-amplify.CfnBranch", + "fqn": "aws-cdk-lib.aws_amplify.CfnBranch", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-amplify.Branch", + "fqn": "@aws-cdk/aws-amplify-alpha.Branch", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-amplify.App", + "fqn": "@aws-cdk/aws-amplify-alpha.App", + "version": "0.0.0" + } + }, + "BootstrapVersion": { + "id": "BootstrapVersion", + "path": "cdk-amplify-codecommit-app/BootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnParameter", + "version": "0.0.0" + } + }, + "CheckBootstrapVersion": { + "id": "CheckBootstrapVersion", + "path": "cdk-amplify-codecommit-app/CheckBootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnRule", "version": "0.0.0" } } }, + "constructInfo": { + "fqn": "aws-cdk-lib.Stack", + "version": "0.0.0" + } + }, + "Tree": { + "id": "Tree", + "path": "Tree", "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.85" + "version": "10.3.0" } } }, "constructInfo": { - "fqn": "constructs.Construct", - "version": "10.1.85" + "fqn": "aws-cdk-lib.App", + "version": "0.0.0" } } } \ No newline at end of file diff --git a/packages/@aws-cdk/aws-amplify-alpha/test/integ.app.js.snapshot/cdk-amplify-app.assets.json b/packages/@aws-cdk/aws-amplify-alpha/test/integ.app.js.snapshot/cdk-amplify-app.assets.json index 493a60542444b..8f3d1c9f81f4e 100644 --- a/packages/@aws-cdk/aws-amplify-alpha/test/integ.app.js.snapshot/cdk-amplify-app.assets.json +++ b/packages/@aws-cdk/aws-amplify-alpha/test/integ.app.js.snapshot/cdk-amplify-app.assets.json @@ -1,7 +1,7 @@ { - "version": "20.0.0", + "version": "36.0.0", "files": { - "61d61670a5f1b42b9d9a564d09ce8d6715f3e29fb801c67dd4d9d7f153457da9": { + "22e02c42ac809ba771ca721849e50315beb137290c42d32c9e8a905e09ed1c74": { "source": { "path": "cdk-amplify-app.template.json", "packaging": "file" @@ -9,7 +9,7 @@ "destinations": { "current_account-current_region": { "bucketName": "cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}", - "objectKey": "61d61670a5f1b42b9d9a564d09ce8d6715f3e29fb801c67dd4d9d7f153457da9.json", + "objectKey": "22e02c42ac809ba771ca721849e50315beb137290c42d32c9e8a905e09ed1c74.json", "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-file-publishing-role-${AWS::AccountId}-${AWS::Region}" } } diff --git a/packages/@aws-cdk/aws-amplify-alpha/test/integ.app.js.snapshot/cdk-amplify-app.template.json b/packages/@aws-cdk/aws-amplify-alpha/test/integ.app.js.snapshot/cdk-amplify-app.template.json index a0d4dcb69bbd1..46c16f533d69b 100644 --- a/packages/@aws-cdk/aws-amplify-alpha/test/integ.app.js.snapshot/cdk-amplify-app.template.json +++ b/packages/@aws-cdk/aws-amplify-alpha/test/integ.app.js.snapshot/cdk-amplify-app.template.json @@ -31,7 +31,6 @@ "AppF1B96344": { "Type": "AWS::Amplify::App", "Properties": { - "Name": "App", "AutoBranchCreationConfig": { "BasicAuthConfig": { "EnableBasicAuth": false @@ -80,6 +79,7 @@ "Arn" ] }, + "Name": "App", "Platform": "WEB_COMPUTE" } }, @@ -138,4 +138,4 @@ ] } } -} +} \ No newline at end of file diff --git a/packages/@aws-cdk/aws-amplify-alpha/test/integ.app.js.snapshot/cdk.out b/packages/@aws-cdk/aws-amplify-alpha/test/integ.app.js.snapshot/cdk.out index 588d7b269d34f..1f0068d32659a 100644 --- a/packages/@aws-cdk/aws-amplify-alpha/test/integ.app.js.snapshot/cdk.out +++ b/packages/@aws-cdk/aws-amplify-alpha/test/integ.app.js.snapshot/cdk.out @@ -1 +1 @@ -{"version":"20.0.0"} \ No newline at end of file +{"version":"36.0.0"} \ No newline at end of file diff --git a/packages/@aws-cdk/aws-amplify-alpha/test/integ.app.js.snapshot/integ.json b/packages/@aws-cdk/aws-amplify-alpha/test/integ.app.js.snapshot/integ.json index c91f15a6149aa..31c399e7eee24 100644 --- a/packages/@aws-cdk/aws-amplify-alpha/test/integ.app.js.snapshot/integ.json +++ b/packages/@aws-cdk/aws-amplify-alpha/test/integ.app.js.snapshot/integ.json @@ -1,5 +1,5 @@ { - "version": "20.0.0", + "version": "36.0.0", "testCases": { "integ.app": { "stacks": [ diff --git a/packages/@aws-cdk/aws-amplify-alpha/test/integ.app.js.snapshot/manifest.json b/packages/@aws-cdk/aws-amplify-alpha/test/integ.app.js.snapshot/manifest.json index 7e942470c44b0..51a6c03d5a853 100644 --- a/packages/@aws-cdk/aws-amplify-alpha/test/integ.app.js.snapshot/manifest.json +++ b/packages/@aws-cdk/aws-amplify-alpha/test/integ.app.js.snapshot/manifest.json @@ -1,12 +1,6 @@ { - "version": "20.0.0", + "version": "36.0.0", "artifacts": { - "Tree": { - "type": "cdk:tree", - "properties": { - "file": "tree.json" - } - }, "cdk-amplify-app.assets": { "type": "cdk:asset-manifest", "properties": { @@ -20,10 +14,11 @@ "environment": "aws://unknown-account/unknown-region", "properties": { "templateFile": "cdk-amplify-app.template.json", + "terminationProtection": false, "validateOnSynth": false, "assumeRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-deploy-role-${AWS::AccountId}-${AWS::Region}", "cloudFormationExecutionRoleArn": "arn:${AWS::Partition}:iam::${AWS::AccountId}:role/cdk-hnb659fds-cfn-exec-role-${AWS::AccountId}-${AWS::Region}", - "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/61d61670a5f1b42b9d9a564d09ce8d6715f3e29fb801c67dd4d9d7f153457da9.json", + "stackTemplateAssetObjectUrl": "s3://cdk-hnb659fds-assets-${AWS::AccountId}-${AWS::Region}/22e02c42ac809ba771ca721849e50315beb137290c42d32c9e8a905e09ed1c74.json", "requiresBootstrapStackVersion": 6, "bootstrapStackVersionSsmParameter": "/cdk-bootstrap/hnb659fds/version", "additionalDependencies": [ @@ -77,6 +72,12 @@ ] }, "displayName": "cdk-amplify-app" + }, + "Tree": { + "type": "cdk:tree", + "properties": { + "file": "tree.json" + } } } } \ No newline at end of file diff --git a/packages/@aws-cdk/aws-amplify-alpha/test/integ.app.js.snapshot/tree.json b/packages/@aws-cdk/aws-amplify-alpha/test/integ.app.js.snapshot/tree.json index 5d2caafdff6bc..c63b69aacd030 100644 --- a/packages/@aws-cdk/aws-amplify-alpha/test/integ.app.js.snapshot/tree.json +++ b/packages/@aws-cdk/aws-amplify-alpha/test/integ.app.js.snapshot/tree.json @@ -4,14 +4,6 @@ "id": "App", "path": "", "children": { - "Tree": { - "id": "Tree", - "path": "Tree", - "constructInfo": { - "fqn": "constructs.Construct", - "version": "10.1.85" - } - }, "cdk-amplify-app": { "id": "cdk-amplify-app", "path": "cdk-amplify-app", @@ -24,6 +16,14 @@ "id": "Role", "path": "cdk-amplify-app/App/Role", "children": { + "ImportRole": { + "id": "ImportRole", + "path": "cdk-amplify-app/App/Role/ImportRole", + "constructInfo": { + "fqn": "aws-cdk-lib.Resource", + "version": "0.0.0" + } + }, "Resource": { "id": "Resource", "path": "cdk-amplify-app/App/Role/Resource", @@ -45,13 +45,13 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.CfnRole", + "fqn": "aws-cdk-lib.aws_iam.CfnRole", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-iam.Role", + "fqn": "aws-cdk-lib.aws_iam.Role", "version": "0.0.0" } }, @@ -72,13 +72,13 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-secretsmanager.CfnSecret", + "fqn": "aws-cdk-lib.aws_secretsmanager.CfnSecret", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-secretsmanager.Secret", + "fqn": "aws-cdk-lib.aws_secretsmanager.Secret", "version": "0.0.0" } }, @@ -88,7 +88,6 @@ "attributes": { "aws:cdk:cloudformation:type": "AWS::Amplify::App", "aws:cdk:cloudformation:props": { - "name": "App", "autoBranchCreationConfig": { "basicAuthConfig": { "enableBasicAuth": false @@ -136,11 +135,13 @@ "AppRole1AF9B530", "Arn" ] - } + }, + "name": "App", + "platform": "WEB_COMPUTE" } }, "constructInfo": { - "fqn": "@aws-cdk/aws-amplify.CfnApp", + "fqn": "aws-cdk-lib.aws_amplify.CfnApp", "version": "0.0.0" } }, @@ -172,32 +173,56 @@ } }, "constructInfo": { - "fqn": "@aws-cdk/aws-amplify.CfnBranch", + "fqn": "aws-cdk-lib.aws_amplify.CfnBranch", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-amplify.Branch", + "fqn": "@aws-cdk/aws-amplify-alpha.Branch", "version": "0.0.0" } } }, "constructInfo": { - "fqn": "@aws-cdk/aws-amplify.App", + "fqn": "@aws-cdk/aws-amplify-alpha.App", + "version": "0.0.0" + } + }, + "BootstrapVersion": { + "id": "BootstrapVersion", + "path": "cdk-amplify-app/BootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnParameter", + "version": "0.0.0" + } + }, + "CheckBootstrapVersion": { + "id": "CheckBootstrapVersion", + "path": "cdk-amplify-app/CheckBootstrapVersion", + "constructInfo": { + "fqn": "aws-cdk-lib.CfnRule", "version": "0.0.0" } } }, + "constructInfo": { + "fqn": "aws-cdk-lib.Stack", + "version": "0.0.0" + } + }, + "Tree": { + "id": "Tree", + "path": "Tree", "constructInfo": { "fqn": "constructs.Construct", - "version": "10.1.85" + "version": "10.3.0" } } }, "constructInfo": { - "fqn": "constructs.Construct", - "version": "10.1.85" + "fqn": "aws-cdk-lib.App", + "version": "0.0.0" } } } \ No newline at end of file diff --git a/packages/@aws-cdk/custom-resource-handlers/README.md b/packages/@aws-cdk/custom-resource-handlers/README.md index 653aa30c11796..23f040d381a92 100644 --- a/packages/@aws-cdk/custom-resource-handlers/README.md +++ b/packages/@aws-cdk/custom-resource-handlers/README.md @@ -15,7 +15,7 @@ and included as part of the `aws-cdk-lib` package. ### Experimental: -- None currently +- aws-amplify-alpha/asset-deployment-handler These handlers are excluded from `aws-cdk-lib/custom-resource-handlers` and are individually copied into their respective `-alpha` packages at build time. When an `-alpha` package is