@aws-cdk/aws-cloud9-alpha 2.63.2-alpha.0 → 2.64.0-alpha.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/.jsii +172 -31
- package/.jsii.tabl.json.gz +0 -0
- package/.warnings.jsii.js +5 -1
- package/README.md +45 -9
- package/lib/environment.d.ts +37 -0
- package/lib/environment.js +42 -5
- package/package.json +8 -8
package/.jsii
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
"url": "https://aws.amazon.com"
|
|
9
9
|
},
|
|
10
10
|
"dependencies": {
|
|
11
|
-
"aws-cdk-lib": "^2.
|
|
11
|
+
"aws-cdk-lib": "^2.64.0",
|
|
12
12
|
"constructs": "^10.0.0"
|
|
13
13
|
},
|
|
14
14
|
"dependencyClosure": {
|
|
@@ -2251,6 +2251,19 @@
|
|
|
2251
2251
|
}
|
|
2252
2252
|
}
|
|
2253
2253
|
},
|
|
2254
|
+
"aws-cdk-lib.aws_omics": {
|
|
2255
|
+
"targets": {
|
|
2256
|
+
"dotnet": {
|
|
2257
|
+
"namespace": "Amazon.CDK.AWS.Omics"
|
|
2258
|
+
},
|
|
2259
|
+
"java": {
|
|
2260
|
+
"package": "software.amazon.awscdk.services.omics"
|
|
2261
|
+
},
|
|
2262
|
+
"python": {
|
|
2263
|
+
"module": "aws_cdk.aws_omics"
|
|
2264
|
+
}
|
|
2265
|
+
}
|
|
2266
|
+
},
|
|
2254
2267
|
"aws-cdk-lib.aws_opensearchserverless": {
|
|
2255
2268
|
"targets": {
|
|
2256
2269
|
"dotnet": {
|
|
@@ -2875,6 +2888,19 @@
|
|
|
2875
2888
|
}
|
|
2876
2889
|
}
|
|
2877
2890
|
},
|
|
2891
|
+
"aws-cdk-lib.aws_simspaceweaver": {
|
|
2892
|
+
"targets": {
|
|
2893
|
+
"dotnet": {
|
|
2894
|
+
"namespace": "Amazon.CDK.AWS.SimSpaceWeaver"
|
|
2895
|
+
},
|
|
2896
|
+
"java": {
|
|
2897
|
+
"package": "software.amazon.awscdk.services.simspaceweaver"
|
|
2898
|
+
},
|
|
2899
|
+
"python": {
|
|
2900
|
+
"module": "aws_cdk.aws_simspaceweaver"
|
|
2901
|
+
}
|
|
2902
|
+
}
|
|
2903
|
+
},
|
|
2878
2904
|
"aws-cdk-lib.aws_sns": {
|
|
2879
2905
|
"targets": {
|
|
2880
2906
|
"dotnet": {
|
|
@@ -3344,7 +3370,7 @@
|
|
|
3344
3370
|
},
|
|
3345
3371
|
"name": "@aws-cdk/aws-cloud9-alpha",
|
|
3346
3372
|
"readme": {
|
|
3347
|
-
"markdown": "# AWS Cloud9 Construct Library\n<!--BEGIN STABILITY BANNER-->\n\n---\n\n\n\n> The APIs of higher level constructs in this module are experimental and under active development.\n> They are subject to non-backward compatible changes or removal in any future version. These are\n> not subject to the [Semantic Versioning](https://semver.org/) model and breaking changes will be\n> announced in the release notes. This means that while you may use them, you may need to update\n> your source code when upgrading to a newer version of this package.\n\n---\n\n<!--END STABILITY BANNER-->\n\nThis module is part of the [AWS Cloud Development Kit](https://github.com/aws/aws-cdk) project.\n\nAWS Cloud9 is a cloud-based integrated development environment (IDE) that lets you write, run, and debug your code with just a\nbrowser. It includes a code editor, debugger, and terminal. Cloud9 comes prepackaged with essential tools for popular\nprogramming languages, including JavaScript, Python, PHP, and more, so you don’t need to install files or configure your\ndevelopment machine to start new projects. Since your Cloud9 IDE is cloud-based, you can work on your projects from your\noffice, home, or anywhere using an internet-connected machine. Cloud9 also provides a seamless experience for developing\nserverless applications enabling you to easily define resources, debug, and switch between local and remote execution of\nserverless applications. With Cloud9, you can quickly share your development environment with your team, enabling you to pair\nprogram and track each other's inputs in real time.\n\n\n## Creating EC2 Environment\n\nEC2 Environments are defined with `Ec2Environment`. To create an EC2 environment in the private subnet, specify\n`subnetSelection` with private `subnetType`.\n\n\n```ts\n// create a cloud9 ec2 environment in a new VPC\nconst vpc = new ec2.Vpc(this, 'VPC', { maxAzs: 3});\nnew cloud9.Ec2Environment(this, 'Cloud9Env', { vpc, imageId: cloud9.ImageId.AMAZON_LINUX_2, });\n\n// or create the cloud9 environment in the default VPC with specific instanceType\nconst defaultVpc = ec2.Vpc.fromLookup(this, 'DefaultVPC', { isDefault: true });\nnew cloud9.Ec2Environment(this, 'Cloud9Env2', {\n vpc: defaultVpc,\n instanceType: new ec2.InstanceType('t3.large'),\n imageId: cloud9.ImageId.AMAZON_LINUX_2,\n});\n\n// or specify in a different subnetSelection\nconst c9env = new cloud9.Ec2Environment(this, 'Cloud9Env3', {\n vpc,\n subnetSelection: {\n subnetType: ec2.SubnetType.PRIVATE_WITH_EGRESS,\n },\n imageId: cloud9.ImageId.AMAZON_LINUX_2,\n});\n\n// print the Cloud9 IDE URL in the output\nnew CfnOutput(this, 'URL', { value: c9env.ideUrl });\n```\n\n## Specifying EC2 AMI\n\nUse `imageId` to specify the EC2 AMI image to be used:\n\n```ts\nconst defaultVpc = ec2.Vpc.fromLookup(this, 'DefaultVPC', { isDefault: true });\nnew cloud9.Ec2Environment(this, 'Cloud9Env2', {\n vpc: defaultVpc,\n instanceType: new ec2.InstanceType('t3.large'),\n imageId: cloud9.ImageId.UBUNTU_18_04,\n});\n```\n\n## Cloning Repositories\n\nUse `clonedRepositories` to clone one or multiple AWS Codecommit repositories into the environment:\n\n```ts\nimport * as codecommit from 'aws-cdk-lib/aws-codecommit';\n\n// create a codecommit repository to clone into the cloud9 environment\nconst repoNew = new codecommit.Repository(this, 'RepoNew', {\n repositoryName: 'new-repo',\n});\n\n// import an existing codecommit repository to clone into the cloud9 environment\nconst repoExisting = codecommit.Repository.fromRepositoryName(this, 'RepoExisting', 'existing-repo');\n\n// create a new Cloud9 environment and clone the two repositories\ndeclare const vpc: ec2.Vpc;\nnew cloud9.Ec2Environment(this, 'C9Env', {\n vpc,\n clonedRepositories: [\n cloud9.CloneRepository.fromCodeCommit(repoNew, '/src/new-repo'),\n cloud9.CloneRepository.fromCodeCommit(repoExisting, '/src/existing-repo'),\n ],\n imageId: cloud9.ImageId.AMAZON_LINUX_2,\n});\n```\n"
|
|
3373
|
+
"markdown": "# AWS Cloud9 Construct Library\n<!--BEGIN STABILITY BANNER-->\n\n---\n\n\n\n> The APIs of higher level constructs in this module are experimental and under active development.\n> They are subject to non-backward compatible changes or removal in any future version. These are\n> not subject to the [Semantic Versioning](https://semver.org/) model and breaking changes will be\n> announced in the release notes. This means that while you may use them, you may need to update\n> your source code when upgrading to a newer version of this package.\n\n---\n\n<!--END STABILITY BANNER-->\n\nThis module is part of the [AWS Cloud Development Kit](https://github.com/aws/aws-cdk) project.\n\nAWS Cloud9 is a cloud-based integrated development environment (IDE) that lets you write, run, and debug your code with just a\nbrowser. It includes a code editor, debugger, and terminal. Cloud9 comes prepackaged with essential tools for popular\nprogramming languages, including JavaScript, Python, PHP, and more, so you don’t need to install files or configure your\ndevelopment machine to start new projects. Since your Cloud9 IDE is cloud-based, you can work on your projects from your\noffice, home, or anywhere using an internet-connected machine. Cloud9 also provides a seamless experience for developing\nserverless applications enabling you to easily define resources, debug, and switch between local and remote execution of\nserverless applications. With Cloud9, you can quickly share your development environment with your team, enabling you to pair\nprogram and track each other's inputs in real time.\n\n\n## Creating EC2 Environment\n\nEC2 Environments are defined with `Ec2Environment`. To create an EC2 environment in the private subnet, specify\n`subnetSelection` with private `subnetType`.\n\n\n```ts\n// create a cloud9 ec2 environment in a new VPC\nconst vpc = new ec2.Vpc(this, 'VPC', { maxAzs: 3});\nnew cloud9.Ec2Environment(this, 'Cloud9Env', { vpc, imageId: cloud9.ImageId.AMAZON_LINUX_2, });\n\n// or create the cloud9 environment in the default VPC with specific instanceType\nconst defaultVpc = ec2.Vpc.fromLookup(this, 'DefaultVPC', { isDefault: true });\nnew cloud9.Ec2Environment(this, 'Cloud9Env2', {\n vpc: defaultVpc,\n instanceType: new ec2.InstanceType('t3.large'),\n imageId: cloud9.ImageId.AMAZON_LINUX_2,\n});\n\n// or specify in a different subnetSelection\nconst c9env = new cloud9.Ec2Environment(this, 'Cloud9Env3', {\n vpc,\n subnetSelection: {\n subnetType: ec2.SubnetType.PRIVATE_WITH_EGRESS,\n },\n imageId: cloud9.ImageId.AMAZON_LINUX_2,\n});\n\n// print the Cloud9 IDE URL in the output\nnew CfnOutput(this, 'URL', { value: c9env.ideUrl });\n```\n\n## Specifying EC2 AMI\n\nUse `imageId` to specify the EC2 AMI image to be used:\n\n```ts\nconst defaultVpc = ec2.Vpc.fromLookup(this, 'DefaultVPC', { isDefault: true });\nnew cloud9.Ec2Environment(this, 'Cloud9Env2', {\n vpc: defaultVpc,\n instanceType: new ec2.InstanceType('t3.large'),\n imageId: cloud9.ImageId.UBUNTU_18_04,\n});\n```\n\n## Cloning Repositories\n\nUse `clonedRepositories` to clone one or multiple AWS Codecommit repositories into the environment:\n\n```ts\nimport * as codecommit from 'aws-cdk-lib/aws-codecommit';\n\n// create a codecommit repository to clone into the cloud9 environment\nconst repoNew = new codecommit.Repository(this, 'RepoNew', {\n repositoryName: 'new-repo',\n});\n\n// import an existing codecommit repository to clone into the cloud9 environment\nconst repoExisting = codecommit.Repository.fromRepositoryName(this, 'RepoExisting', 'existing-repo');\n\n// create a new Cloud9 environment and clone the two repositories\ndeclare const vpc: ec2.Vpc;\nnew cloud9.Ec2Environment(this, 'C9Env', {\n vpc,\n clonedRepositories: [\n cloud9.CloneRepository.fromCodeCommit(repoNew, '/src/new-repo'),\n cloud9.CloneRepository.fromCodeCommit(repoExisting, '/src/existing-repo'),\n ],\n imageId: cloud9.ImageId.AMAZON_LINUX_2,\n});\n```\n\n## Specifying Owners\n\nEvery Cloud9 Environment has an **owner**. An owner has full control over the environment, and can invite additional members to the environment for collaboration purposes. For more information, see [Working with shared environments in AWS Cloud9](https://docs.aws.amazon.com/cloud9/latest/user-guide/share-environment.html)).\n\nBy default, the owner will be the identity that creates the Environment, which is most likely your CloudFormation Execution Role when the Environment is created using CloudFormation. Provider a value for the `owner` property to assign a different owner, either a specific IAM User or the AWS Account Root User.\n\n`Owner` is a user that owns a Cloud9 environment . `Owner` has their own access permissions, resources. And we can specify an `Owner`in an Ec2 environment which could be of two types, 1. AccountRoot and 2. Iam User. It allows AWS to determine who has permissions to manage the environment, either an IAM user or the account root user (but using the account root user is not recommended, see [environment sharing best practices](https://docs.aws.amazon.com/cloud9/latest/user-guide/share-environment.html#share-environment-best-practices)).\n\nTo specify the AWS Account Root User as the environment owner, use `Owner.accountRoot()`\n\n```ts\ndeclare const vpc: ec2.Vpc;\nnew cloud9.Ec2Environment(this, 'C9Env', {\n vpc,\n imageId: cloud9.ImageId.AMAZON_LINUX_2,\n\n owner: cloud9.Owner.accountRoot('111111111')\n})\n```\n\nTo specify a specific IAM User as the environment owner, use `Owner.user()`. The user should have the `AWSCloud9Administrator` managed policy\n\n```ts\nimport * as iam from 'aws-cdk-lib/aws-iam';\n\nconst user = new iam.User(this, 'user');\nuser.addManagedPolicy(iam.ManagedPolicy.fromAwsManagedPolicyName('AWSCloud9Administrator'));\ndeclare const vpc: ec2.Vpc;\nnew cloud9.Ec2Environment(this, 'C9Env', {\n vpc,\n imageId: cloud9.ImageId.AMAZON_LINUX_2,\n\n owner: cloud9.Owner.user(user)\n})\n```\n"
|
|
3348
3374
|
},
|
|
3349
3375
|
"repository": {
|
|
3350
3376
|
"directory": "packages/individual-packages/aws-cloud9",
|
|
@@ -3396,7 +3422,7 @@
|
|
|
3396
3422
|
"kind": "class",
|
|
3397
3423
|
"locationInModule": {
|
|
3398
3424
|
"filename": "lib/environment.ts",
|
|
3399
|
-
"line":
|
|
3425
|
+
"line": 214
|
|
3400
3426
|
},
|
|
3401
3427
|
"methods": [
|
|
3402
3428
|
{
|
|
@@ -3406,7 +3432,7 @@
|
|
|
3406
3432
|
},
|
|
3407
3433
|
"locationInModule": {
|
|
3408
3434
|
"filename": "lib/environment.ts",
|
|
3409
|
-
"line":
|
|
3435
|
+
"line": 221
|
|
3410
3436
|
},
|
|
3411
3437
|
"name": "fromCodeCommit",
|
|
3412
3438
|
"parameters": [
|
|
@@ -3446,7 +3472,7 @@
|
|
|
3446
3472
|
"immutable": true,
|
|
3447
3473
|
"locationInModule": {
|
|
3448
3474
|
"filename": "lib/environment.ts",
|
|
3449
|
-
"line":
|
|
3475
|
+
"line": 228
|
|
3450
3476
|
},
|
|
3451
3477
|
"name": "pathComponent",
|
|
3452
3478
|
"type": {
|
|
@@ -3460,7 +3486,7 @@
|
|
|
3460
3486
|
"immutable": true,
|
|
3461
3487
|
"locationInModule": {
|
|
3462
3488
|
"filename": "lib/environment.ts",
|
|
3463
|
-
"line":
|
|
3489
|
+
"line": 228
|
|
3464
3490
|
},
|
|
3465
3491
|
"name": "repositoryUrl",
|
|
3466
3492
|
"type": {
|
|
@@ -3480,7 +3506,7 @@
|
|
|
3480
3506
|
"kind": "enum",
|
|
3481
3507
|
"locationInModule": {
|
|
3482
3508
|
"filename": "lib/environment.ts",
|
|
3483
|
-
"line":
|
|
3509
|
+
"line": 31
|
|
3484
3510
|
},
|
|
3485
3511
|
"members": [
|
|
3486
3512
|
{
|
|
@@ -3512,7 +3538,7 @@
|
|
|
3512
3538
|
},
|
|
3513
3539
|
"stability": "experimental",
|
|
3514
3540
|
"summary": "A Cloud9 Environment with Amazon EC2.",
|
|
3515
|
-
"example": "import * as
|
|
3541
|
+
"example": "import * as iam from 'aws-cdk-lib/aws-iam';\n\nconst user = new iam.User(this, 'user');\nuser.addManagedPolicy(iam.ManagedPolicy.fromAwsManagedPolicyName('AWSCloud9Administrator'));\ndeclare const vpc: ec2.Vpc;\nnew cloud9.Ec2Environment(this, 'C9Env', {\n vpc,\n imageId: cloud9.ImageId.AMAZON_LINUX_2,\n\n owner: cloud9.Owner.user(user)\n})"
|
|
3516
3542
|
},
|
|
3517
3543
|
"fqn": "@aws-cdk/aws-cloud9-alpha.Ec2Environment",
|
|
3518
3544
|
"initializer": {
|
|
@@ -3521,7 +3547,7 @@
|
|
|
3521
3547
|
},
|
|
3522
3548
|
"locationInModule": {
|
|
3523
3549
|
"filename": "lib/environment.ts",
|
|
3524
|
-
"line":
|
|
3550
|
+
"line": 178
|
|
3525
3551
|
},
|
|
3526
3552
|
"parameters": [
|
|
3527
3553
|
{
|
|
@@ -3550,7 +3576,7 @@
|
|
|
3550
3576
|
"kind": "class",
|
|
3551
3577
|
"locationInModule": {
|
|
3552
3578
|
"filename": "lib/environment.ts",
|
|
3553
|
-
"line":
|
|
3579
|
+
"line": 133
|
|
3554
3580
|
},
|
|
3555
3581
|
"methods": [
|
|
3556
3582
|
{
|
|
@@ -3560,7 +3586,7 @@
|
|
|
3560
3586
|
},
|
|
3561
3587
|
"locationInModule": {
|
|
3562
3588
|
"filename": "lib/environment.ts",
|
|
3563
|
-
"line":
|
|
3589
|
+
"line": 137
|
|
3564
3590
|
},
|
|
3565
3591
|
"name": "fromEc2EnvironmentName",
|
|
3566
3592
|
"parameters": [
|
|
@@ -3604,7 +3630,7 @@
|
|
|
3604
3630
|
"immutable": true,
|
|
3605
3631
|
"locationInModule": {
|
|
3606
3632
|
"filename": "lib/environment.ts",
|
|
3607
|
-
"line":
|
|
3633
|
+
"line": 161
|
|
3608
3634
|
},
|
|
3609
3635
|
"name": "ec2EnvironmentArn",
|
|
3610
3636
|
"overrides": "@aws-cdk/aws-cloud9-alpha.IEc2Environment",
|
|
@@ -3623,7 +3649,7 @@
|
|
|
3623
3649
|
"immutable": true,
|
|
3624
3650
|
"locationInModule": {
|
|
3625
3651
|
"filename": "lib/environment.ts",
|
|
3626
|
-
"line":
|
|
3652
|
+
"line": 154
|
|
3627
3653
|
},
|
|
3628
3654
|
"name": "ec2EnvironmentName",
|
|
3629
3655
|
"overrides": "@aws-cdk/aws-cloud9-alpha.IEc2Environment",
|
|
@@ -3639,7 +3665,7 @@
|
|
|
3639
3665
|
"immutable": true,
|
|
3640
3666
|
"locationInModule": {
|
|
3641
3667
|
"filename": "lib/environment.ts",
|
|
3642
|
-
"line":
|
|
3668
|
+
"line": 166
|
|
3643
3669
|
},
|
|
3644
3670
|
"name": "environmentId",
|
|
3645
3671
|
"type": {
|
|
@@ -3654,7 +3680,7 @@
|
|
|
3654
3680
|
"immutable": true,
|
|
3655
3681
|
"locationInModule": {
|
|
3656
3682
|
"filename": "lib/environment.ts",
|
|
3657
|
-
"line":
|
|
3683
|
+
"line": 171
|
|
3658
3684
|
},
|
|
3659
3685
|
"name": "ideUrl",
|
|
3660
3686
|
"type": {
|
|
@@ -3669,7 +3695,7 @@
|
|
|
3669
3695
|
"immutable": true,
|
|
3670
3696
|
"locationInModule": {
|
|
3671
3697
|
"filename": "lib/environment.ts",
|
|
3672
|
-
"line":
|
|
3698
|
+
"line": 176
|
|
3673
3699
|
},
|
|
3674
3700
|
"name": "vpc",
|
|
3675
3701
|
"type": {
|
|
@@ -3685,7 +3711,7 @@
|
|
|
3685
3711
|
"docs": {
|
|
3686
3712
|
"stability": "experimental",
|
|
3687
3713
|
"summary": "Properties for Ec2Environment.",
|
|
3688
|
-
"example": "import * as
|
|
3714
|
+
"example": "import * as iam from 'aws-cdk-lib/aws-iam';\n\nconst user = new iam.User(this, 'user');\nuser.addManagedPolicy(iam.ManagedPolicy.fromAwsManagedPolicyName('AWSCloud9Administrator'));\ndeclare const vpc: ec2.Vpc;\nnew cloud9.Ec2Environment(this, 'C9Env', {\n vpc,\n imageId: cloud9.ImageId.AMAZON_LINUX_2,\n\n owner: cloud9.Owner.user(user)\n})",
|
|
3689
3715
|
"custom": {
|
|
3690
3716
|
"exampleMetadata": "infused"
|
|
3691
3717
|
}
|
|
@@ -3707,7 +3733,7 @@
|
|
|
3707
3733
|
"immutable": true,
|
|
3708
3734
|
"locationInModule": {
|
|
3709
3735
|
"filename": "lib/environment.ts",
|
|
3710
|
-
"line":
|
|
3736
|
+
"line": 126
|
|
3711
3737
|
},
|
|
3712
3738
|
"name": "imageId",
|
|
3713
3739
|
"type": {
|
|
@@ -3723,7 +3749,7 @@
|
|
|
3723
3749
|
"immutable": true,
|
|
3724
3750
|
"locationInModule": {
|
|
3725
3751
|
"filename": "lib/environment.ts",
|
|
3726
|
-
"line":
|
|
3752
|
+
"line": 89
|
|
3727
3753
|
},
|
|
3728
3754
|
"name": "vpc",
|
|
3729
3755
|
"type": {
|
|
@@ -3740,7 +3766,7 @@
|
|
|
3740
3766
|
"immutable": true,
|
|
3741
3767
|
"locationInModule": {
|
|
3742
3768
|
"filename": "lib/environment.ts",
|
|
3743
|
-
"line":
|
|
3769
|
+
"line": 111
|
|
3744
3770
|
},
|
|
3745
3771
|
"name": "clonedRepositories",
|
|
3746
3772
|
"optional": true,
|
|
@@ -3764,7 +3790,7 @@
|
|
|
3764
3790
|
"immutable": true,
|
|
3765
3791
|
"locationInModule": {
|
|
3766
3792
|
"filename": "lib/environment.ts",
|
|
3767
|
-
"line":
|
|
3793
|
+
"line": 120
|
|
3768
3794
|
},
|
|
3769
3795
|
"name": "connectionType",
|
|
3770
3796
|
"optional": true,
|
|
@@ -3782,7 +3808,7 @@
|
|
|
3782
3808
|
"immutable": true,
|
|
3783
3809
|
"locationInModule": {
|
|
3784
3810
|
"filename": "lib/environment.ts",
|
|
3785
|
-
"line":
|
|
3811
|
+
"line": 103
|
|
3786
3812
|
},
|
|
3787
3813
|
"name": "description",
|
|
3788
3814
|
"optional": true,
|
|
@@ -3800,7 +3826,7 @@
|
|
|
3800
3826
|
"immutable": true,
|
|
3801
3827
|
"locationInModule": {
|
|
3802
3828
|
"filename": "lib/environment.ts",
|
|
3803
|
-
"line":
|
|
3829
|
+
"line": 96
|
|
3804
3830
|
},
|
|
3805
3831
|
"name": "ec2EnvironmentName",
|
|
3806
3832
|
"optional": true,
|
|
@@ -3818,7 +3844,7 @@
|
|
|
3818
3844
|
"immutable": true,
|
|
3819
3845
|
"locationInModule": {
|
|
3820
3846
|
"filename": "lib/environment.ts",
|
|
3821
|
-
"line":
|
|
3847
|
+
"line": 75
|
|
3822
3848
|
},
|
|
3823
3849
|
"name": "instanceType",
|
|
3824
3850
|
"optional": true,
|
|
@@ -3826,6 +3852,25 @@
|
|
|
3826
3852
|
"fqn": "aws-cdk-lib.aws_ec2.InstanceType"
|
|
3827
3853
|
}
|
|
3828
3854
|
},
|
|
3855
|
+
{
|
|
3856
|
+
"abstract": true,
|
|
3857
|
+
"docs": {
|
|
3858
|
+
"default": "- The identity that CloudFormation executes under will be the owner",
|
|
3859
|
+
"remarks": "The owner has full control of the environment and can invite additional members.",
|
|
3860
|
+
"stability": "experimental",
|
|
3861
|
+
"summary": "Owner of the environment."
|
|
3862
|
+
},
|
|
3863
|
+
"immutable": true,
|
|
3864
|
+
"locationInModule": {
|
|
3865
|
+
"filename": "lib/environment.ts",
|
|
3866
|
+
"line": 68
|
|
3867
|
+
},
|
|
3868
|
+
"name": "owner",
|
|
3869
|
+
"optional": true,
|
|
3870
|
+
"type": {
|
|
3871
|
+
"fqn": "@aws-cdk/aws-cloud9-alpha.Owner"
|
|
3872
|
+
}
|
|
3873
|
+
},
|
|
3829
3874
|
{
|
|
3830
3875
|
"abstract": true,
|
|
3831
3876
|
"docs": {
|
|
@@ -3836,7 +3881,7 @@
|
|
|
3836
3881
|
"immutable": true,
|
|
3837
3882
|
"locationInModule": {
|
|
3838
3883
|
"filename": "lib/environment.ts",
|
|
3839
|
-
"line":
|
|
3884
|
+
"line": 83
|
|
3840
3885
|
},
|
|
3841
3886
|
"name": "subnetSelection",
|
|
3842
3887
|
"optional": true,
|
|
@@ -3860,7 +3905,7 @@
|
|
|
3860
3905
|
"kind": "interface",
|
|
3861
3906
|
"locationInModule": {
|
|
3862
3907
|
"filename": "lib/environment.ts",
|
|
3863
|
-
"line":
|
|
3908
|
+
"line": 12
|
|
3864
3909
|
},
|
|
3865
3910
|
"name": "IEc2Environment",
|
|
3866
3911
|
"properties": [
|
|
@@ -3876,7 +3921,7 @@
|
|
|
3876
3921
|
"immutable": true,
|
|
3877
3922
|
"locationInModule": {
|
|
3878
3923
|
"filename": "lib/environment.ts",
|
|
3879
|
-
"line":
|
|
3924
|
+
"line": 25
|
|
3880
3925
|
},
|
|
3881
3926
|
"name": "ec2EnvironmentArn",
|
|
3882
3927
|
"type": {
|
|
@@ -3895,7 +3940,7 @@
|
|
|
3895
3940
|
"immutable": true,
|
|
3896
3941
|
"locationInModule": {
|
|
3897
3942
|
"filename": "lib/environment.ts",
|
|
3898
|
-
"line":
|
|
3943
|
+
"line": 18
|
|
3899
3944
|
},
|
|
3900
3945
|
"name": "ec2EnvironmentName",
|
|
3901
3946
|
"type": {
|
|
@@ -3910,7 +3955,7 @@
|
|
|
3910
3955
|
"docs": {
|
|
3911
3956
|
"stability": "experimental",
|
|
3912
3957
|
"summary": "The image ID used for creating an Amazon EC2 environment.",
|
|
3913
|
-
"example": "import * as
|
|
3958
|
+
"example": "import * as iam from 'aws-cdk-lib/aws-iam';\n\nconst user = new iam.User(this, 'user');\nuser.addManagedPolicy(iam.ManagedPolicy.fromAwsManagedPolicyName('AWSCloud9Administrator'));\ndeclare const vpc: ec2.Vpc;\nnew cloud9.Ec2Environment(this, 'C9Env', {\n vpc,\n imageId: cloud9.ImageId.AMAZON_LINUX_2,\n\n owner: cloud9.Owner.user(user)\n})",
|
|
3914
3959
|
"custom": {
|
|
3915
3960
|
"exampleMetadata": "infused"
|
|
3916
3961
|
}
|
|
@@ -3919,7 +3964,7 @@
|
|
|
3919
3964
|
"kind": "enum",
|
|
3920
3965
|
"locationInModule": {
|
|
3921
3966
|
"filename": "lib/environment.ts",
|
|
3922
|
-
"line":
|
|
3967
|
+
"line": 47
|
|
3923
3968
|
},
|
|
3924
3969
|
"members": [
|
|
3925
3970
|
{
|
|
@@ -3939,8 +3984,104 @@
|
|
|
3939
3984
|
],
|
|
3940
3985
|
"name": "ImageId",
|
|
3941
3986
|
"symbolId": "lib/environment:ImageId"
|
|
3987
|
+
},
|
|
3988
|
+
"@aws-cdk/aws-cloud9-alpha.Owner": {
|
|
3989
|
+
"assembly": "@aws-cdk/aws-cloud9-alpha",
|
|
3990
|
+
"docs": {
|
|
3991
|
+
"stability": "experimental",
|
|
3992
|
+
"summary": "An environment owner.",
|
|
3993
|
+
"example": "declare const vpc: ec2.Vpc;\nnew cloud9.Ec2Environment(this, 'C9Env', {\n vpc,\n imageId: cloud9.ImageId.AMAZON_LINUX_2,\n\n owner: cloud9.Owner.accountRoot('111111111')\n})",
|
|
3994
|
+
"custom": {
|
|
3995
|
+
"exampleMetadata": "infused"
|
|
3996
|
+
}
|
|
3997
|
+
},
|
|
3998
|
+
"fqn": "@aws-cdk/aws-cloud9-alpha.Owner",
|
|
3999
|
+
"kind": "class",
|
|
4000
|
+
"locationInModule": {
|
|
4001
|
+
"filename": "lib/environment.ts",
|
|
4002
|
+
"line": 236
|
|
4003
|
+
},
|
|
4004
|
+
"methods": [
|
|
4005
|
+
{
|
|
4006
|
+
"docs": {
|
|
4007
|
+
"stability": "experimental",
|
|
4008
|
+
"summary": "Make the Account Root User the environment owner (not recommended)."
|
|
4009
|
+
},
|
|
4010
|
+
"locationInModule": {
|
|
4011
|
+
"filename": "lib/environment.ts",
|
|
4012
|
+
"line": 255
|
|
4013
|
+
},
|
|
4014
|
+
"name": "accountRoot",
|
|
4015
|
+
"parameters": [
|
|
4016
|
+
{
|
|
4017
|
+
"docs": {
|
|
4018
|
+
"summary": "the AccountId to use as the environment owner."
|
|
4019
|
+
},
|
|
4020
|
+
"name": "accountId",
|
|
4021
|
+
"type": {
|
|
4022
|
+
"primitive": "string"
|
|
4023
|
+
}
|
|
4024
|
+
}
|
|
4025
|
+
],
|
|
4026
|
+
"returns": {
|
|
4027
|
+
"type": {
|
|
4028
|
+
"fqn": "@aws-cdk/aws-cloud9-alpha.Owner"
|
|
4029
|
+
}
|
|
4030
|
+
},
|
|
4031
|
+
"static": true
|
|
4032
|
+
},
|
|
4033
|
+
{
|
|
4034
|
+
"docs": {
|
|
4035
|
+
"remarks": "User need to have AWSCloud9Administrator permissions",
|
|
4036
|
+
"see": "https://docs.aws.amazon.com/cloud9/latest/user-guide/share-environment.html#share-environment-about",
|
|
4037
|
+
"stability": "experimental",
|
|
4038
|
+
"summary": "Make an IAM user the environment owner."
|
|
4039
|
+
},
|
|
4040
|
+
"locationInModule": {
|
|
4041
|
+
"filename": "lib/environment.ts",
|
|
4042
|
+
"line": 245
|
|
4043
|
+
},
|
|
4044
|
+
"name": "user",
|
|
4045
|
+
"parameters": [
|
|
4046
|
+
{
|
|
4047
|
+
"docs": {
|
|
4048
|
+
"summary": "the User object to use as the environment owner."
|
|
4049
|
+
},
|
|
4050
|
+
"name": "user",
|
|
4051
|
+
"type": {
|
|
4052
|
+
"fqn": "aws-cdk-lib.aws_iam.IUser"
|
|
4053
|
+
}
|
|
4054
|
+
}
|
|
4055
|
+
],
|
|
4056
|
+
"returns": {
|
|
4057
|
+
"type": {
|
|
4058
|
+
"fqn": "@aws-cdk/aws-cloud9-alpha.Owner"
|
|
4059
|
+
}
|
|
4060
|
+
},
|
|
4061
|
+
"static": true
|
|
4062
|
+
}
|
|
4063
|
+
],
|
|
4064
|
+
"name": "Owner",
|
|
4065
|
+
"properties": [
|
|
4066
|
+
{
|
|
4067
|
+
"docs": {
|
|
4068
|
+
"stability": "experimental",
|
|
4069
|
+
"summary": "of environment owner."
|
|
4070
|
+
},
|
|
4071
|
+
"immutable": true,
|
|
4072
|
+
"locationInModule": {
|
|
4073
|
+
"filename": "lib/environment.ts",
|
|
4074
|
+
"line": 263
|
|
4075
|
+
},
|
|
4076
|
+
"name": "ownerArn",
|
|
4077
|
+
"type": {
|
|
4078
|
+
"primitive": "string"
|
|
4079
|
+
}
|
|
4080
|
+
}
|
|
4081
|
+
],
|
|
4082
|
+
"symbolId": "lib/environment:Owner"
|
|
3942
4083
|
}
|
|
3943
4084
|
},
|
|
3944
|
-
"version": "2.
|
|
4085
|
+
"version": "2.64.0-alpha.0",
|
|
3945
4086
|
"fingerprint": "**********"
|
|
3946
4087
|
}
|
package/.jsii.tabl.json.gz
CHANGED
|
Binary file
|
package/.warnings.jsii.js
CHANGED
|
@@ -17,6 +17,8 @@ function _aws_cdk_aws_cloud9_alpha_Ec2EnvironmentProps(p) {
|
|
|
17
17
|
_aws_cdk_aws_cloud9_alpha_CloneRepository(o);
|
|
18
18
|
if (!visitedObjects.has(p.connectionType))
|
|
19
19
|
_aws_cdk_aws_cloud9_alpha_ConnectionType(p.connectionType);
|
|
20
|
+
if (!visitedObjects.has(p.owner))
|
|
21
|
+
_aws_cdk_aws_cloud9_alpha_Owner(p.owner);
|
|
20
22
|
}
|
|
21
23
|
finally {
|
|
22
24
|
visitedObjects.delete(p);
|
|
@@ -26,6 +28,8 @@ function _aws_cdk_aws_cloud9_alpha_Ec2Environment(p) {
|
|
|
26
28
|
}
|
|
27
29
|
function _aws_cdk_aws_cloud9_alpha_CloneRepository(p) {
|
|
28
30
|
}
|
|
31
|
+
function _aws_cdk_aws_cloud9_alpha_Owner(p) {
|
|
32
|
+
}
|
|
29
33
|
function print(name, deprecationMessage) {
|
|
30
34
|
const deprecated = process.env.JSII_DEPRECATED;
|
|
31
35
|
const deprecationMode = ["warn", "fail", "quiet"].includes(deprecated) ? deprecated : "warn";
|
|
@@ -62,4 +66,4 @@ class DeprecationError extends Error {
|
|
|
62
66
|
});
|
|
63
67
|
}
|
|
64
68
|
}
|
|
65
|
-
module.exports = { print, getPropertyDescriptor, DeprecationError, _aws_cdk_aws_cloud9_alpha_IEc2Environment, _aws_cdk_aws_cloud9_alpha_ConnectionType, _aws_cdk_aws_cloud9_alpha_ImageId, _aws_cdk_aws_cloud9_alpha_Ec2EnvironmentProps, _aws_cdk_aws_cloud9_alpha_Ec2Environment, _aws_cdk_aws_cloud9_alpha_CloneRepository };
|
|
69
|
+
module.exports = { print, getPropertyDescriptor, DeprecationError, _aws_cdk_aws_cloud9_alpha_IEc2Environment, _aws_cdk_aws_cloud9_alpha_ConnectionType, _aws_cdk_aws_cloud9_alpha_ImageId, _aws_cdk_aws_cloud9_alpha_Ec2EnvironmentProps, _aws_cdk_aws_cloud9_alpha_Ec2Environment, _aws_cdk_aws_cloud9_alpha_CloneRepository, _aws_cdk_aws_cloud9_alpha_Owner };
|
package/README.md
CHANGED
|
@@ -17,19 +17,19 @@
|
|
|
17
17
|
|
|
18
18
|
This module is part of the [AWS Cloud Development Kit](https://github.com/aws/aws-cdk) project.
|
|
19
19
|
|
|
20
|
-
AWS Cloud9 is a cloud-based integrated development environment (IDE) that lets you write, run, and debug your code with just a
|
|
21
|
-
browser. It includes a code editor, debugger, and terminal. Cloud9 comes prepackaged with essential tools for popular
|
|
22
|
-
programming languages, including JavaScript, Python, PHP, and more, so you don’t need to install files or configure your
|
|
23
|
-
development machine to start new projects. Since your Cloud9 IDE is cloud-based, you can work on your projects from your
|
|
24
|
-
office, home, or anywhere using an internet-connected machine. Cloud9 also provides a seamless experience for developing
|
|
25
|
-
serverless applications enabling you to easily define resources, debug, and switch between local and remote execution of
|
|
26
|
-
serverless applications. With Cloud9, you can quickly share your development environment with your team, enabling you to pair
|
|
20
|
+
AWS Cloud9 is a cloud-based integrated development environment (IDE) that lets you write, run, and debug your code with just a
|
|
21
|
+
browser. It includes a code editor, debugger, and terminal. Cloud9 comes prepackaged with essential tools for popular
|
|
22
|
+
programming languages, including JavaScript, Python, PHP, and more, so you don’t need to install files or configure your
|
|
23
|
+
development machine to start new projects. Since your Cloud9 IDE is cloud-based, you can work on your projects from your
|
|
24
|
+
office, home, or anywhere using an internet-connected machine. Cloud9 also provides a seamless experience for developing
|
|
25
|
+
serverless applications enabling you to easily define resources, debug, and switch between local and remote execution of
|
|
26
|
+
serverless applications. With Cloud9, you can quickly share your development environment with your team, enabling you to pair
|
|
27
27
|
program and track each other's inputs in real time.
|
|
28
28
|
|
|
29
29
|
|
|
30
30
|
## Creating EC2 Environment
|
|
31
31
|
|
|
32
|
-
EC2 Environments are defined with `Ec2Environment`. To create an EC2 environment in the private subnet, specify
|
|
32
|
+
EC2 Environments are defined with `Ec2Environment`. To create an EC2 environment in the private subnet, specify
|
|
33
33
|
`subnetSelection` with private `subnetType`.
|
|
34
34
|
|
|
35
35
|
|
|
@@ -46,7 +46,7 @@ new cloud9.Ec2Environment(this, 'Cloud9Env2', {
|
|
|
46
46
|
imageId: cloud9.ImageId.AMAZON_LINUX_2,
|
|
47
47
|
});
|
|
48
48
|
|
|
49
|
-
// or specify in a different subnetSelection
|
|
49
|
+
// or specify in a different subnetSelection
|
|
50
50
|
const c9env = new cloud9.Ec2Environment(this, 'Cloud9Env3', {
|
|
51
51
|
vpc,
|
|
52
52
|
subnetSelection: {
|
|
@@ -98,3 +98,39 @@ new cloud9.Ec2Environment(this, 'C9Env', {
|
|
|
98
98
|
imageId: cloud9.ImageId.AMAZON_LINUX_2,
|
|
99
99
|
});
|
|
100
100
|
```
|
|
101
|
+
|
|
102
|
+
## Specifying Owners
|
|
103
|
+
|
|
104
|
+
Every Cloud9 Environment has an **owner**. An owner has full control over the environment, and can invite additional members to the environment for collaboration purposes. For more information, see [Working with shared environments in AWS Cloud9](https://docs.aws.amazon.com/cloud9/latest/user-guide/share-environment.html)).
|
|
105
|
+
|
|
106
|
+
By default, the owner will be the identity that creates the Environment, which is most likely your CloudFormation Execution Role when the Environment is created using CloudFormation. Provider a value for the `owner` property to assign a different owner, either a specific IAM User or the AWS Account Root User.
|
|
107
|
+
|
|
108
|
+
`Owner` is a user that owns a Cloud9 environment . `Owner` has their own access permissions, resources. And we can specify an `Owner`in an Ec2 environment which could be of two types, 1. AccountRoot and 2. Iam User. It allows AWS to determine who has permissions to manage the environment, either an IAM user or the account root user (but using the account root user is not recommended, see [environment sharing best practices](https://docs.aws.amazon.com/cloud9/latest/user-guide/share-environment.html#share-environment-best-practices)).
|
|
109
|
+
|
|
110
|
+
To specify the AWS Account Root User as the environment owner, use `Owner.accountRoot()`
|
|
111
|
+
|
|
112
|
+
```ts
|
|
113
|
+
declare const vpc: ec2.Vpc;
|
|
114
|
+
new cloud9.Ec2Environment(this, 'C9Env', {
|
|
115
|
+
vpc,
|
|
116
|
+
imageId: cloud9.ImageId.AMAZON_LINUX_2,
|
|
117
|
+
|
|
118
|
+
owner: cloud9.Owner.accountRoot('111111111')
|
|
119
|
+
})
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
To specify a specific IAM User as the environment owner, use `Owner.user()`. The user should have the `AWSCloud9Administrator` managed policy
|
|
123
|
+
|
|
124
|
+
```ts
|
|
125
|
+
import * as iam from 'aws-cdk-lib/aws-iam';
|
|
126
|
+
|
|
127
|
+
const user = new iam.User(this, 'user');
|
|
128
|
+
user.addManagedPolicy(iam.ManagedPolicy.fromAwsManagedPolicyName('AWSCloud9Administrator'));
|
|
129
|
+
declare const vpc: ec2.Vpc;
|
|
130
|
+
new cloud9.Ec2Environment(this, 'C9Env', {
|
|
131
|
+
vpc,
|
|
132
|
+
imageId: cloud9.ImageId.AMAZON_LINUX_2,
|
|
133
|
+
|
|
134
|
+
owner: cloud9.Owner.user(user)
|
|
135
|
+
})
|
|
136
|
+
```
|
package/lib/environment.d.ts
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import * as codecommit from 'aws-cdk-lib/aws-codecommit';
|
|
2
2
|
import * as ec2 from 'aws-cdk-lib/aws-ec2';
|
|
3
|
+
import { IUser } from 'aws-cdk-lib/aws-iam';
|
|
3
4
|
import * as cdk from 'aws-cdk-lib';
|
|
4
5
|
import { Construct } from 'constructs';
|
|
5
6
|
/**
|
|
@@ -52,6 +53,14 @@ export declare enum ImageId {
|
|
|
52
53
|
* Properties for Ec2Environment
|
|
53
54
|
*/
|
|
54
55
|
export interface Ec2EnvironmentProps {
|
|
56
|
+
/**
|
|
57
|
+
* Owner of the environment.
|
|
58
|
+
*
|
|
59
|
+
* The owner has full control of the environment and can invite additional members.
|
|
60
|
+
*
|
|
61
|
+
* @default - The identity that CloudFormation executes under will be the owner
|
|
62
|
+
*/
|
|
63
|
+
readonly owner?: Owner;
|
|
55
64
|
/**
|
|
56
65
|
* The type of instance to connect to the environment.
|
|
57
66
|
*
|
|
@@ -152,3 +161,31 @@ export declare class CloneRepository {
|
|
|
152
161
|
static fromCodeCommit(repository: codecommit.IRepository, path: string): CloneRepository;
|
|
153
162
|
private constructor();
|
|
154
163
|
}
|
|
164
|
+
/**
|
|
165
|
+
* An environment owner
|
|
166
|
+
*
|
|
167
|
+
*
|
|
168
|
+
*/
|
|
169
|
+
export declare class Owner {
|
|
170
|
+
readonly ownerArn: string;
|
|
171
|
+
/**
|
|
172
|
+
* Make an IAM user the environment owner
|
|
173
|
+
*
|
|
174
|
+
* User need to have AWSCloud9Administrator permissions
|
|
175
|
+
* @see https://docs.aws.amazon.com/cloud9/latest/user-guide/share-environment.html#share-environment-about
|
|
176
|
+
*
|
|
177
|
+
* @param user the User object to use as the environment owner
|
|
178
|
+
*/
|
|
179
|
+
static user(user: IUser): Owner;
|
|
180
|
+
/**
|
|
181
|
+
* Make the Account Root User the environment owner (not recommended)
|
|
182
|
+
*
|
|
183
|
+
* @param accountId the AccountId to use as the environment owner.
|
|
184
|
+
*/
|
|
185
|
+
static accountRoot(accountId: string): Owner;
|
|
186
|
+
/**
|
|
187
|
+
*
|
|
188
|
+
* @param ownerArn of environment owner.
|
|
189
|
+
*/
|
|
190
|
+
private constructor();
|
|
191
|
+
}
|
package/lib/environment.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var _a, _b;
|
|
2
|
+
var _a, _b, _c;
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
exports.CloneRepository = exports.Ec2Environment = exports.ImageId = exports.ConnectionType = void 0;
|
|
4
|
+
exports.Owner = exports.CloneRepository = exports.Ec2Environment = exports.ImageId = exports.ConnectionType = void 0;
|
|
5
5
|
const jsiiDeprecationWarnings = require("../.warnings.jsii.js");
|
|
6
6
|
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
|
|
7
7
|
const ec2 = require("aws-cdk-lib/aws-ec2");
|
|
@@ -64,6 +64,7 @@ class Ec2Environment extends cdk.Resource {
|
|
|
64
64
|
const c9env = new aws_cloud9_1.CfnEnvironmentEC2(this, 'Resource', {
|
|
65
65
|
name: props.ec2EnvironmentName,
|
|
66
66
|
description: props.description,
|
|
67
|
+
ownerArn: props.owner?.ownerArn,
|
|
67
68
|
instanceType: props.instanceType?.toString() ?? ec2.InstanceType.of(ec2.InstanceClass.BURSTABLE2, ec2.InstanceSize.MICRO).toString(),
|
|
68
69
|
subnetId: this.vpc.selectSubnets(vpcSubnets).subnetIds[0],
|
|
69
70
|
repositories: props.clonedRepositories ? props.clonedRepositories.map(r => ({
|
|
@@ -98,7 +99,7 @@ class Ec2Environment extends cdk.Resource {
|
|
|
98
99
|
}
|
|
99
100
|
exports.Ec2Environment = Ec2Environment;
|
|
100
101
|
_a = JSII_RTTI_SYMBOL_1;
|
|
101
|
-
Ec2Environment[_a] = { fqn: "@aws-cdk/aws-cloud9-alpha.Ec2Environment", version: "2.
|
|
102
|
+
Ec2Environment[_a] = { fqn: "@aws-cdk/aws-cloud9-alpha.Ec2Environment", version: "2.64.0-alpha.0" };
|
|
102
103
|
/**
|
|
103
104
|
* The class for different repository providers
|
|
104
105
|
*/
|
|
@@ -122,5 +123,41 @@ class CloneRepository {
|
|
|
122
123
|
}
|
|
123
124
|
exports.CloneRepository = CloneRepository;
|
|
124
125
|
_b = JSII_RTTI_SYMBOL_1;
|
|
125
|
-
CloneRepository[_b] = { fqn: "@aws-cdk/aws-cloud9-alpha.CloneRepository", version: "2.
|
|
126
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW52aXJvbm1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJlbnZpcm9ubWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFDQSwyQ0FBMkM7QUFDM0MsbUNBQW1DO0FBRW5DLHVEQUEyRDtBQXNCM0Q7O0dBRUc7QUFDSCxJQUFZLGNBV1g7QUFYRCxXQUFZLGNBQWM7SUFDeEI7O09BRUc7SUFDSCw2Q0FBMkIsQ0FBQTtJQUMzQjs7OztPQUlHO0lBQ0gsNkNBQTJCLENBQUE7QUFDN0IsQ0FBQyxFQVhXLGNBQWMsR0FBZCxzQkFBYyxLQUFkLHNCQUFjLFFBV3pCO0FBRUQ7O0dBRUc7QUFDSCxJQUFZLE9BU1g7QUFURCxXQUFZLE9BQU87SUFDakI7O09BRUc7SUFDSCxrREFBdUMsQ0FBQTtJQUN2Qzs7T0FFRztJQUNILCtDQUFvQyxDQUFBO0FBQ3RDLENBQUMsRUFUVyxPQUFPLEdBQVAsZUFBTyxLQUFQLGVBQU8sUUFTbEI7QUFpRUQ7OztHQUdHO0FBQ0gsTUFBYSxjQUFlLFNBQVEsR0FBRyxDQUFDLFFBQVE7SUE2QzlDLFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBMEI7UUFDbEUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQzs7Ozs7OytDQTlDUixjQUFjOzs7O1FBZ0R2QixJQUFJLENBQUMsR0FBRyxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUM7UUFDckIsSUFBSSxDQUFDLEtBQUssQ0FBQyxlQUFlLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtZQUNqRSxNQUFNLElBQUksS0FBSyxDQUFDLG9HQUFvRyxDQUFDLENBQUM7U0FDdkg7UUFFRCxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRTtZQUNsQixNQUFNLElBQUksS0FBSyxDQUFDLDhDQUE4QyxDQUFDLENBQUM7U0FDakU7UUFFRCxNQUFNLFVBQVUsR0FBRyxLQUFLLENBQUMsZUFBZSxJQUFJLEVBQUUsVUFBVSxFQUFFLEdBQUcsQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDbEYsTUFBTSxLQUFLLEdBQUcsSUFBSSw4QkFBaUIsQ0FBQyxJQUFJLEVBQUUsVUFBVSxFQUFFO1lBQ3BELElBQUksRUFBRSxLQUFLLENBQUMsa0JBQWtCO1lBQzlCLFdBQVcsRUFBRSxLQUFLLENBQUMsV0FBVztZQUM5QixZQUFZLEVBQUUsS0FBSyxDQUFDLFlBQVksRUFBRSxRQUFRLEVBQUUsSUFBSSxHQUFHLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLFVBQVUsRUFBRSxHQUFHLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxDQUFDLFFBQVEsRUFBRTtZQUNwSSxRQUFRLEVBQUUsSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsVUFBVSxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztZQUN6RCxZQUFZLEVBQUUsS0FBSyxDQUFDLGtCQUFrQixDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsa0JBQWtCLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQztnQkFDMUUsYUFBYSxFQUFFLENBQUMsQ0FBQyxhQUFhO2dCQUM5QixhQUFhLEVBQUUsQ0FBQyxDQUFDLGFBQWE7YUFDL0IsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVM7WUFDZixjQUFjLEVBQUUsS0FBSyxDQUFDLGNBQWMsSUFBSSxjQUFjLENBQUMsV0FBVztZQUNsRSxPQUFPLEVBQUUsS0FBSyxDQUFDLE9BQU87U0FDdkIsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLGFBQWEsR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDO1FBQy9CLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ3hELElBQUksQ0FBQyxrQkFBa0IsR0FBRyxLQUFLLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQzFELElBQUksQ0FBQyxNQUFNLEdBQUcsV0FBVyxJQUFJLENBQUMsR0FBRyxDQUFDLE1BQU0sc0NBQXNDLElBQUksQ0FBQyxhQUFhLEVBQUUsQ0FBQztLQUNwRztJQXpFRDs7T0FFRztJQUNJLE1BQU0sQ0FBQyxzQkFBc0IsQ0FBQyxLQUFnQixFQUFFLEVBQVUsRUFBRSxrQkFBMEI7UUFDM0YsTUFBTSxNQUFPLFNBQVEsR0FBRyxDQUFDLFFBQVE7WUFBakM7O2dCQUNTLHVCQUFrQixHQUFHLGtCQUFrQixDQUFDO2dCQUN4QyxzQkFBaUIsR0FBRyxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxTQUFTLENBQUM7b0JBQ3RELE9BQU8sRUFBRSxRQUFRO29CQUNqQixRQUFRLEVBQUUsYUFBYTtvQkFDdkIsWUFBWSxFQUFFLElBQUksQ0FBQyxrQkFBa0I7aUJBQ3RDLENBQUMsQ0FBQztZQUNMLENBQUM7U0FBQTtRQUNELE9BQU8sSUFBSSxNQUFNLENBQUMsS0FBSyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0tBQzlCOztBQWRILHdDQTJFQzs7O0FBRUQ7O0dBRUc7QUFDSCxNQUFhLGVBQWU7SUFjMUIsWUFBb0MsYUFBcUIsRUFBa0IsYUFBcUI7UUFBNUQsa0JBQWEsR0FBYixhQUFhLENBQVE7UUFBa0Isa0JBQWEsR0FBYixhQUFhLENBQVE7S0FBSTtJQWJwRzs7Ozs7T0FLRztJQUNJLE1BQU0sQ0FBQyxjQUFjLENBQUMsVUFBa0MsRUFBRSxJQUFZO1FBQzNFLE9BQU87WUFDTCxhQUFhLEVBQUUsVUFBVSxDQUFDLHNCQUFzQjtZQUNoRCxhQUFhLEVBQUUsSUFBSTtTQUNwQixDQUFDO0tBQ0g7O0FBWkgsMENBZUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBjb2RlY29tbWl0IGZyb20gJ2F3cy1jZGstbGliL2F3cy1jb2RlY29tbWl0JztcbmltcG9ydCAqIGFzIGVjMiBmcm9tICdhd3MtY2RrLWxpYi9hd3MtZWMyJztcbmltcG9ydCAqIGFzIGNkayBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcbmltcG9ydCB7IENmbkVudmlyb25tZW50RUMyIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWNsb3VkOSc7XG5cbi8qKlxuICogQSBDbG91ZDkgRW52aXJvbm1lbnRcbiAqXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSUVjMkVudmlyb25tZW50IGV4dGVuZHMgY2RrLklSZXNvdXJjZSB7XG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgRW52aXJvbm1lbnRFYzJcbiAgICpcbiAgICogQGF0dHJpYnV0ZSBlbnZpcm9ubWVudEVjMk5hbWVcbiAgICovXG4gIHJlYWRvbmx5IGVjMkVudmlyb25tZW50TmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgYXJuIG9mIHRoZSBFbnZpcm9ubWVudEVjMlxuICAgKlxuICAgKiBAYXR0cmlidXRlIGVudmlyb25tZW50RTJBcm5cbiAgICovXG4gIHJlYWRvbmx5IGVjMkVudmlyb25tZW50QXJuOiBzdHJpbmc7XG59XG5cbi8qKlxuICogVGhlIGNvbm5lY3Rpb24gdHlwZSB1c2VkIGZvciBjb25uZWN0aW5nIHRvIGFuIEFtYXpvbiBFQzIgZW52aXJvbm1lbnQuXG4gKi9cbmV4cG9ydCBlbnVtIENvbm5lY3Rpb25UeXBlIHtcbiAgLyoqXG4gICAqIENvbm5lY3QgdGhyb3VnaCBTU0hcbiAgICovXG4gIENPTk5FQ1RfU1NIID0gJ0NPTk5FQ1RfU1NIJyxcbiAgLyoqXG4gICAqIENvbm5lY3QgdGhyb3VnaCBBV1MgU3lzdGVtcyBNYW5hZ2VyXG4gICAqIFdoZW4gdXNpbmcgU1NNLCBzZXJ2aWNlIHJvbGUgYW5kIGluc3RhbmNlIHByb2ZpbGUgYXJlbid0IGF1dG9tYXRpY2FsbHkgY3JlYXRlZC5cbiAgICogU2VlIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9jbG91ZDkvbGF0ZXN0L3VzZXItZ3VpZGUvZWMyLXNzbS5odG1sI3NlcnZpY2Utcm9sZS1zc21cbiAgICovXG4gIENPTk5FQ1RfU1NNID0gJ0NPTk5FQ1RfU1NNJ1xufVxuXG4vKipcbiAqIFRoZSBpbWFnZSBJRCB1c2VkIGZvciBjcmVhdGluZyBhbiBBbWF6b24gRUMyIGVudmlyb25tZW50LlxuICovXG5leHBvcnQgZW51bSBJbWFnZUlkIHtcbiAgLyoqXG4gICAqIENyZWF0ZSB1c2luZyBBbWF6b24gTGludXggMlxuICAgKi9cbiAgQU1BWk9OX0xJTlVYXzIgPSAnYW1hem9ubGludXgtMi14ODZfNjQnLFxuICAvKipcbiAgICogQ3JlYXRlIHVzaW5nIFVidW51dCAxOC4wNFxuICAgKi9cbiAgVUJVTlRVXzE4XzA0ID0gJ3VidW50dS0xOC4wNC14ODZfNjQnXG59XG5cbi8qKlxuICogUHJvcGVydGllcyBmb3IgRWMyRW52aXJvbm1lbnRcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFYzJFbnZpcm9ubWVudFByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSB0eXBlIG9mIGluc3RhbmNlIHRvIGNvbm5lY3QgdG8gdGhlIGVudmlyb25tZW50LlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIHQyLm1pY3JvXG4gICAqL1xuICByZWFkb25seSBpbnN0YW5jZVR5cGU/OiBlYzIuSW5zdGFuY2VUeXBlO1xuXG4gIC8qKlxuICAgKiBUaGUgc3VibmV0U2VsZWN0aW9uIG9mIHRoZSBWUEMgdGhhdCBBV1MgQ2xvdWQ5IHdpbGwgdXNlIHRvIGNvbW11bmljYXRlIHdpdGhcbiAgICogdGhlIEFtYXpvbiBFQzIgaW5zdGFuY2UuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gYWxsIHB1YmxpYyBzdWJuZXRzIG9mIHRoZSBWUEMgYXJlIHNlbGVjdGVkLlxuICAgKi9cbiAgcmVhZG9ubHkgc3VibmV0U2VsZWN0aW9uPzogZWMyLlN1Ym5ldFNlbGVjdGlvbjtcblxuICAvKipcbiAgICogVGhlIFZQQyB0aGF0IEFXUyBDbG91ZDkgd2lsbCB1c2UgdG8gY29tbXVuaWNhdGUgd2l0aCB0aGUgQW1hem9uIEVsYXN0aWMgQ29tcHV0ZSBDbG91ZCAoQW1hem9uIEVDMikgaW5zdGFuY2UuXG4gICAqXG4gICAqL1xuICByZWFkb25seSB2cGM6IGVjMi5JVnBjO1xuXG4gIC8qKlxuICAgKiBOYW1lIG9mIHRoZSBlbnZpcm9ubWVudFxuICAgKlxuICAgKiBAZGVmYXVsdCAtIGF1dG9tYXRpY2FsbHkgZ2VuZXJhdGVkIG5hbWVcbiAgICovXG4gIHJlYWRvbmx5IGVjMkVudmlyb25tZW50TmFtZT86IHN0cmluZztcblxuICAvKipcbiAgICogRGVzY3JpcHRpb24gb2YgdGhlIGVudmlyb25tZW50XG4gICAqXG4gICAqIEBkZWZhdWx0IC0gbm8gZGVzY3JpcHRpb25cbiAgICovXG4gIHJlYWRvbmx5IGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgQVdTIENvZGVDb21taXQgcmVwb3NpdG9yeSB0byBiZSBjbG9uZWRcbiAgICpcbiAgICogQGRlZmF1bHQgLSBkbyBub3QgY2xvbmUgYW55IHJlcG9zaXRvcnlcbiAgICovXG4gIC8vIHJlYWRvbmx5IGNsb25lZFJlcG9zaXRvcmllcz86IENsb3VkOVJlcG9zaXRvcnlbXTtcbiAgcmVhZG9ubHkgY2xvbmVkUmVwb3NpdG9yaWVzPzogQ2xvbmVSZXBvc2l0b3J5W107XG5cbiAgLyoqXG4gICAqIFRoZSBjb25uZWN0aW9uIHR5cGUgdXNlZCBmb3IgY29ubmVjdGluZyB0byBhbiBBbWF6b24gRUMyIGVudmlyb25tZW50LlxuICAgKlxuICAgKiBWYWxpZCB2YWx1ZXMgYXJlOiBDT05ORUNUX1NTSCAoZGVmYXVsdCkgYW5kIENPTk5FQ1RfU1NNIChjb25uZWN0ZWQgdGhyb3VnaCBBV1MgU3lzdGVtcyBNYW5hZ2VyKVxuICAgKlxuICAgKiBAZGVmYXVsdCAtIENPTk5FQ1RfU1NIXG4gICAqL1xuICByZWFkb25seSBjb25uZWN0aW9uVHlwZT86IENvbm5lY3Rpb25UeXBlXG5cbiAgLyoqXG4gICAqIFRoZSBpbWFnZSBJRCB1c2VkIGZvciBjcmVhdGluZyBhbiBBbWF6b24gRUMyIGVudmlyb25tZW50LlxuICAgKlxuICAgKi9cbiAgcmVhZG9ubHkgaW1hZ2VJZDogSW1hZ2VJZFxufVxuXG4vKipcbiAqIEEgQ2xvdWQ5IEVudmlyb25tZW50IHdpdGggQW1hem9uIEVDMlxuICogQHJlc291cmNlIEFXUzo6Q2xvdWQ5OjpFbnZpcm9ubWVudEVDMlxuICovXG5leHBvcnQgY2xhc3MgRWMyRW52aXJvbm1lbnQgZXh0ZW5kcyBjZGsuUmVzb3VyY2UgaW1wbGVtZW50cyBJRWMyRW52aXJvbm1lbnQge1xuICAvKipcbiAgICogaW1wb3J0IGZyb20gRW52aXJvbm1lbnRFYzJOYW1lXG4gICAqL1xuICBwdWJsaWMgc3RhdGljIGZyb21FYzJFbnZpcm9ubWVudE5hbWUoc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgZWMyRW52aXJvbm1lbnROYW1lOiBzdHJpbmcpOiBJRWMyRW52aXJvbm1lbnQge1xuICAgIGNsYXNzIEltcG9ydCBleHRlbmRzIGNkay5SZXNvdXJjZSB7XG4gICAgICBwdWJsaWMgZWMyRW52aXJvbm1lbnROYW1lID0gZWMyRW52aXJvbm1lbnROYW1lO1xuICAgICAgcHVibGljIGVjMkVudmlyb25tZW50QXJuID0gY2RrLlN0YWNrLm9mKHRoaXMpLmZvcm1hdEFybih7XG4gICAgICAgIHNlcnZpY2U6ICdjbG91ZDknLFxuICAgICAgICByZXNvdXJjZTogJ2Vudmlyb25tZW50JyxcbiAgICAgICAgcmVzb3VyY2VOYW1lOiB0aGlzLmVjMkVudmlyb25tZW50TmFtZSxcbiAgICAgIH0pO1xuICAgIH1cbiAgICByZXR1cm4gbmV3IEltcG9ydChzY29wZSwgaWQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRoZSBlbnZpcm9ubWVudCBuYW1lIG9mIHRoaXMgQ2xvdWQ5IGVudmlyb25tZW50XG4gICAqXG4gICAqIEBhdHRyaWJ1dGVcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBlYzJFbnZpcm9ubWVudE5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGVudmlyb25tZW50IEFSTiBvZiB0aGlzIENsb3VkOSBlbnZpcm9ubWVudFxuICAgKlxuICAgKiBAYXR0cmlidXRlXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgZWMyRW52aXJvbm1lbnRBcm46IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIGVudmlyb25tZW50IElEIG9mIHRoaXMgQ2xvdWQ5IGVudmlyb25tZW50XG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgZW52aXJvbm1lbnRJZDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgY29tcGxldGUgSURFIFVSTCBvZiB0aGlzIENsb3VkOSBlbnZpcm9ubWVudFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGlkZVVybDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBWUEMgSURcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSB2cGM6IGVjMi5JVnBjO1xuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBFYzJFbnZpcm9ubWVudFByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkKTtcblxuICAgIHRoaXMudnBjID0gcHJvcHMudnBjO1xuICAgIGlmICghcHJvcHMuc3VibmV0U2VsZWN0aW9uICYmIHRoaXMudnBjLnB1YmxpY1N1Ym5ldHMubGVuZ3RoID09PSAwKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ25vIHN1Ym5ldFNlbGVjdGlvbiBzcGVjaWZpZWQgYW5kIG5vIHB1YmxpYyBzdWJuZXQgZm91bmQgaW4gdGhlIHZwYywgcGxlYXNlIHNwZWNpZnkgc3VibmV0U2VsZWN0aW9uJyk7XG4gICAgfVxuXG4gICAgaWYgKCFwcm9wcy5pbWFnZUlkKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ05vIGltYWdlSWQgc3BlY2lmaWVkLCBwbGVhc2Ugc3BlY2lmeSBpbWFnZUlkJyk7XG4gICAgfVxuXG4gICAgY29uc3QgdnBjU3VibmV0cyA9IHByb3BzLnN1Ym5ldFNlbGVjdGlvbiA/PyB7IHN1Ym5ldFR5cGU6IGVjMi5TdWJuZXRUeXBlLlBVQkxJQyB9O1xuICAgIGNvbnN0IGM5ZW52ID0gbmV3IENmbkVudmlyb25tZW50RUMyKHRoaXMsICdSZXNvdXJjZScsIHtcbiAgICAgIG5hbWU6IHByb3BzLmVjMkVudmlyb25tZW50TmFtZSxcbiAgICAgIGRlc2NyaXB0aW9uOiBwcm9wcy5kZXNjcmlwdGlvbixcbiAgICAgIGluc3RhbmNlVHlwZTogcHJvcHMuaW5zdGFuY2VUeXBlPy50b1N0cmluZygpID8/IGVjMi5JbnN0YW5jZVR5cGUub2YoZWMyLkluc3RhbmNlQ2xhc3MuQlVSU1RBQkxFMiwgZWMyLkluc3RhbmNlU2l6ZS5NSUNSTykudG9TdHJpbmcoKSxcbiAgICAgIHN1Ym5ldElkOiB0aGlzLnZwYy5zZWxlY3RTdWJuZXRzKHZwY1N1Ym5ldHMpLnN1Ym5ldElkc1swXSxcbiAgICAgIHJlcG9zaXRvcmllczogcHJvcHMuY2xvbmVkUmVwb3NpdG9yaWVzID8gcHJvcHMuY2xvbmVkUmVwb3NpdG9yaWVzLm1hcChyID0+ICh7XG4gICAgICAgIHJlcG9zaXRvcnlVcmw6IHIucmVwb3NpdG9yeVVybCxcbiAgICAgICAgcGF0aENvbXBvbmVudDogci5wYXRoQ29tcG9uZW50LFxuICAgICAgfSkpIDogdW5kZWZpbmVkLFxuICAgICAgY29ubmVjdGlvblR5cGU6IHByb3BzLmNvbm5lY3Rpb25UeXBlID8/IENvbm5lY3Rpb25UeXBlLkNPTk5FQ1RfU1NILFxuICAgICAgaW1hZ2VJZDogcHJvcHMuaW1hZ2VJZCxcbiAgICB9KTtcbiAgICB0aGlzLmVudmlyb25tZW50SWQgPSBjOWVudi5yZWY7XG4gICAgdGhpcy5lYzJFbnZpcm9ubWVudEFybiA9IGM5ZW52LmdldEF0dCgnQXJuJykudG9TdHJpbmcoKTtcbiAgICB0aGlzLmVjMkVudmlyb25tZW50TmFtZSA9IGM5ZW52LmdldEF0dCgnTmFtZScpLnRvU3RyaW5nKCk7XG4gICAgdGhpcy5pZGVVcmwgPSBgaHR0cHM6Ly8ke3RoaXMuZW52LnJlZ2lvbn0uY29uc29sZS5hd3MuYW1hem9uLmNvbS9jbG91ZDkvaWRlLyR7dGhpcy5lbnZpcm9ubWVudElkfWA7XG4gIH1cbn1cblxuLyoqXG4gKiBUaGUgY2xhc3MgZm9yIGRpZmZlcmVudCByZXBvc2l0b3J5IHByb3ZpZGVyc1xuICovXG5leHBvcnQgY2xhc3MgQ2xvbmVSZXBvc2l0b3J5IHtcbiAgLyoqXG4gICAqIGltcG9ydCByZXBvc2l0b3J5IHRvIGNsb3VkOSBlbnZpcm9ubWVudCBmcm9tIEFXUyBDb2RlQ29tbWl0XG4gICAqXG4gICAqIEBwYXJhbSByZXBvc2l0b3J5IHRoZSBjb2RlY29tbWl0IHJlcG9zaXRvcnkgdG8gY2xvbmUgZnJvbVxuICAgKiBAcGFyYW0gcGF0aCAgdGhlIHRhcmdldCBwYXRoIGluIGNsb3VkOSBlbnZpcm9ubWVudFxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBmcm9tQ29kZUNvbW1pdChyZXBvc2l0b3J5OiBjb2RlY29tbWl0LklSZXBvc2l0b3J5LCBwYXRoOiBzdHJpbmcpOiBDbG9uZVJlcG9zaXRvcnkge1xuICAgIHJldHVybiB7XG4gICAgICByZXBvc2l0b3J5VXJsOiByZXBvc2l0b3J5LnJlcG9zaXRvcnlDbG9uZVVybEh0dHAsXG4gICAgICBwYXRoQ29tcG9uZW50OiBwYXRoLFxuICAgIH07XG4gIH1cblxuICBwcml2YXRlIGNvbnN0cnVjdG9yKHB1YmxpYyByZWFkb25seSByZXBvc2l0b3J5VXJsOiBzdHJpbmcsIHB1YmxpYyByZWFkb25seSBwYXRoQ29tcG9uZW50OiBzdHJpbmcpIHt9XG59XG4iXX0=
|
|
126
|
+
CloneRepository[_b] = { fqn: "@aws-cdk/aws-cloud9-alpha.CloneRepository", version: "2.64.0-alpha.0" };
|
|
127
|
+
/**
|
|
128
|
+
* An environment owner
|
|
129
|
+
*
|
|
130
|
+
*
|
|
131
|
+
*/
|
|
132
|
+
class Owner {
|
|
133
|
+
/**
|
|
134
|
+
*
|
|
135
|
+
* @param ownerArn of environment owner.
|
|
136
|
+
*/
|
|
137
|
+
constructor(ownerArn) {
|
|
138
|
+
this.ownerArn = ownerArn;
|
|
139
|
+
}
|
|
140
|
+
/**
|
|
141
|
+
* Make an IAM user the environment owner
|
|
142
|
+
*
|
|
143
|
+
* User need to have AWSCloud9Administrator permissions
|
|
144
|
+
* @see https://docs.aws.amazon.com/cloud9/latest/user-guide/share-environment.html#share-environment-about
|
|
145
|
+
*
|
|
146
|
+
* @param user the User object to use as the environment owner
|
|
147
|
+
*/
|
|
148
|
+
static user(user) {
|
|
149
|
+
return { ownerArn: user.userArn };
|
|
150
|
+
}
|
|
151
|
+
/**
|
|
152
|
+
* Make the Account Root User the environment owner (not recommended)
|
|
153
|
+
*
|
|
154
|
+
* @param accountId the AccountId to use as the environment owner.
|
|
155
|
+
*/
|
|
156
|
+
static accountRoot(accountId) {
|
|
157
|
+
return { ownerArn: `arn:aws:iam::${accountId}:root` };
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
exports.Owner = Owner;
|
|
161
|
+
_c = JSII_RTTI_SYMBOL_1;
|
|
162
|
+
Owner[_c] = { fqn: "@aws-cdk/aws-cloud9-alpha.Owner", version: "2.64.0-alpha.0" };
|
|
163
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW52aXJvbm1lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJlbnZpcm9ubWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFDQSwyQ0FBMkM7QUFFM0MsbUNBQW1DO0FBRW5DLHVEQUEyRDtBQXNCM0Q7O0dBRUc7QUFDSCxJQUFZLGNBV1g7QUFYRCxXQUFZLGNBQWM7SUFDeEI7O09BRUc7SUFDSCw2Q0FBMkIsQ0FBQTtJQUMzQjs7OztPQUlHO0lBQ0gsNkNBQTJCLENBQUE7QUFDN0IsQ0FBQyxFQVhXLGNBQWMsR0FBZCxzQkFBYyxLQUFkLHNCQUFjLFFBV3pCO0FBRUQ7O0dBRUc7QUFDSCxJQUFZLE9BU1g7QUFURCxXQUFZLE9BQU87SUFDakI7O09BRUc7SUFDSCxrREFBdUMsQ0FBQTtJQUN2Qzs7T0FFRztJQUNILCtDQUFvQyxDQUFBO0FBQ3RDLENBQUMsRUFUVyxPQUFPLEdBQVAsZUFBTyxLQUFQLGVBQU8sUUFTbEI7QUF5RUQ7OztHQUdHO0FBQ0gsTUFBYSxjQUFlLFNBQVEsR0FBRyxDQUFDLFFBQVE7SUE2QzlDLFlBQVksS0FBZ0IsRUFBRSxFQUFVLEVBQUUsS0FBMEI7UUFDbEUsS0FBSyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsQ0FBQzs7Ozs7OytDQTlDUixjQUFjOzs7O1FBZ0R2QixJQUFJLENBQUMsR0FBRyxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUM7UUFDckIsSUFBSSxDQUFDLEtBQUssQ0FBQyxlQUFlLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtZQUNqRSxNQUFNLElBQUksS0FBSyxDQUFDLG9HQUFvRyxDQUFDLENBQUM7U0FDdkg7UUFFRCxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sRUFBRTtZQUNsQixNQUFNLElBQUksS0FBSyxDQUFDLDhDQUE4QyxDQUFDLENBQUM7U0FDakU7UUFFRCxNQUFNLFVBQVUsR0FBRyxLQUFLLENBQUMsZUFBZSxJQUFJLEVBQUUsVUFBVSxFQUFFLEdBQUcsQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLENBQUM7UUFDbEYsTUFBTSxLQUFLLEdBQUcsSUFBSSw4QkFBaUIsQ0FBQyxJQUFJLEVBQUUsVUFBVSxFQUFFO1lBQ3BELElBQUksRUFBRSxLQUFLLENBQUMsa0JBQWtCO1lBQzlCLFdBQVcsRUFBRSxLQUFLLENBQUMsV0FBVztZQUM5QixRQUFRLEVBQUUsS0FBSyxDQUFDLEtBQUssRUFBRSxRQUFRO1lBQy9CLFlBQVksRUFBRSxLQUFLLENBQUMsWUFBWSxFQUFFLFFBQVEsRUFBRSxJQUFJLEdBQUcsQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxhQUFhLENBQUMsVUFBVSxFQUFFLEdBQUcsQ0FBQyxZQUFZLENBQUMsS0FBSyxDQUFDLENBQUMsUUFBUSxFQUFFO1lBQ3BJLFFBQVEsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDO1lBQ3pELFlBQVksRUFBRSxLQUFLLENBQUMsa0JBQWtCLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDO2dCQUMxRSxhQUFhLEVBQUUsQ0FBQyxDQUFDLGFBQWE7Z0JBQzlCLGFBQWEsRUFBRSxDQUFDLENBQUMsYUFBYTthQUMvQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUztZQUNmLGNBQWMsRUFBRSxLQUFLLENBQUMsY0FBYyxJQUFJLGNBQWMsQ0FBQyxXQUFXO1lBQ2xFLE9BQU8sRUFBRSxLQUFLLENBQUMsT0FBTztTQUN2QixDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsYUFBYSxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUM7UUFDL0IsSUFBSSxDQUFDLGlCQUFpQixHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDeEQsSUFBSSxDQUFDLGtCQUFrQixHQUFHLEtBQUssQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsUUFBUSxFQUFFLENBQUM7UUFDMUQsSUFBSSxDQUFDLE1BQU0sR0FBRyxXQUFXLElBQUksQ0FBQyxHQUFHLENBQUMsTUFBTSxzQ0FBc0MsSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO0tBQ3BHO0lBMUVEOztPQUVHO0lBQ0ksTUFBTSxDQUFDLHNCQUFzQixDQUFDLEtBQWdCLEVBQUUsRUFBVSxFQUFFLGtCQUEwQjtRQUMzRixNQUFNLE1BQU8sU0FBUSxHQUFHLENBQUMsUUFBUTtZQUFqQzs7Z0JBQ1MsdUJBQWtCLEdBQUcsa0JBQWtCLENBQUM7Z0JBQ3hDLHNCQUFpQixHQUFHLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLFNBQVMsQ0FBQztvQkFDdEQsT0FBTyxFQUFFLFFBQVE7b0JBQ2pCLFFBQVEsRUFBRSxhQUFhO29CQUN2QixZQUFZLEVBQUUsSUFBSSxDQUFDLGtCQUFrQjtpQkFDdEMsQ0FBQyxDQUFDO1lBQ0wsQ0FBQztTQUFBO1FBQ0QsT0FBTyxJQUFJLE1BQU0sQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7S0FDOUI7O0FBZEgsd0NBNEVDOzs7QUFFRDs7R0FFRztBQUNILE1BQWEsZUFBZTtJQWMxQixZQUFvQyxhQUFxQixFQUFrQixhQUFxQjtRQUE1RCxrQkFBYSxHQUFiLGFBQWEsQ0FBUTtRQUFrQixrQkFBYSxHQUFiLGFBQWEsQ0FBUTtLQUFJO0lBYnBHOzs7OztPQUtHO0lBQ0ksTUFBTSxDQUFDLGNBQWMsQ0FBQyxVQUFrQyxFQUFFLElBQVk7UUFDM0UsT0FBTztZQUNMLGFBQWEsRUFBRSxVQUFVLENBQUMsc0JBQXNCO1lBQ2hELGFBQWEsRUFBRSxJQUFJO1NBQ3BCLENBQUM7S0FDSDs7QUFaSCwwQ0FlQzs7O0FBRUQ7Ozs7R0FJRztBQUNILE1BQWEsS0FBSztJQXVCaEI7OztPQUdHO0lBQ0gsWUFBb0MsUUFBZ0I7UUFBaEIsYUFBUSxHQUFSLFFBQVEsQ0FBUTtLQUFJO0lBMUJ4RDs7Ozs7OztPQU9HO0lBQ0ksTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFXO1FBQzVCLE9BQU8sRUFBRSxRQUFRLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO0tBQ25DO0lBR0Q7Ozs7T0FJRztJQUNJLE1BQU0sQ0FBQyxXQUFXLENBQUMsU0FBaUI7UUFDekMsT0FBTyxFQUFFLFFBQVEsRUFBRSxnQkFBZ0IsU0FBUyxPQUFPLEVBQUUsQ0FBQztLQUN2RDs7QUFyQkgsc0JBNEJDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgY29kZWNvbW1pdCBmcm9tICdhd3MtY2RrLWxpYi9hd3MtY29kZWNvbW1pdCc7XG5pbXBvcnQgKiBhcyBlYzIgZnJvbSAnYXdzLWNkay1saWIvYXdzLWVjMic7XG5pbXBvcnQgeyBJVXNlciB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1pYW0nO1xuaW1wb3J0ICogYXMgY2RrIGZyb20gJ2F3cy1jZGstbGliJztcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0IHsgQ2ZuRW52aXJvbm1lbnRFQzIgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtY2xvdWQ5JztcblxuLyoqXG4gKiBBIENsb3VkOSBFbnZpcm9ubWVudFxuICpcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJRWMyRW52aXJvbm1lbnQgZXh0ZW5kcyBjZGsuSVJlc291cmNlIHtcbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBFbnZpcm9ubWVudEVjMlxuICAgKlxuICAgKiBAYXR0cmlidXRlIGVudmlyb25tZW50RWMyTmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgZWMyRW52aXJvbm1lbnROYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBhcm4gb2YgdGhlIEVudmlyb25tZW50RWMyXG4gICAqXG4gICAqIEBhdHRyaWJ1dGUgZW52aXJvbm1lbnRFMkFyblxuICAgKi9cbiAgcmVhZG9ubHkgZWMyRW52aXJvbm1lbnRBcm46IHN0cmluZztcbn1cblxuLyoqXG4gKiBUaGUgY29ubmVjdGlvbiB0eXBlIHVzZWQgZm9yIGNvbm5lY3RpbmcgdG8gYW4gQW1hem9uIEVDMiBlbnZpcm9ubWVudC5cbiAqL1xuZXhwb3J0IGVudW0gQ29ubmVjdGlvblR5cGUge1xuICAvKipcbiAgICogQ29ubmVjdCB0aHJvdWdoIFNTSFxuICAgKi9cbiAgQ09OTkVDVF9TU0ggPSAnQ09OTkVDVF9TU0gnLFxuICAvKipcbiAgICogQ29ubmVjdCB0aHJvdWdoIEFXUyBTeXN0ZW1zIE1hbmFnZXJcbiAgICogV2hlbiB1c2luZyBTU00sIHNlcnZpY2Ugcm9sZSBhbmQgaW5zdGFuY2UgcHJvZmlsZSBhcmVuJ3QgYXV0b21hdGljYWxseSBjcmVhdGVkLlxuICAgKiBTZWUgaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2Nsb3VkOS9sYXRlc3QvdXNlci1ndWlkZS9lYzItc3NtLmh0bWwjc2VydmljZS1yb2xlLXNzbVxuICAgKi9cbiAgQ09OTkVDVF9TU00gPSAnQ09OTkVDVF9TU00nXG59XG5cbi8qKlxuICogVGhlIGltYWdlIElEIHVzZWQgZm9yIGNyZWF0aW5nIGFuIEFtYXpvbiBFQzIgZW52aXJvbm1lbnQuXG4gKi9cbmV4cG9ydCBlbnVtIEltYWdlSWQge1xuICAvKipcbiAgICogQ3JlYXRlIHVzaW5nIEFtYXpvbiBMaW51eCAyXG4gICAqL1xuICBBTUFaT05fTElOVVhfMiA9ICdhbWF6b25saW51eC0yLXg4Nl82NCcsXG4gIC8qKlxuICAgKiBDcmVhdGUgdXNpbmcgVWJ1bnV0IDE4LjA0XG4gICAqL1xuICBVQlVOVFVfMThfMDQgPSAndWJ1bnR1LTE4LjA0LXg4Nl82NCdcbn1cbi8qKlxuICogUHJvcGVydGllcyBmb3IgRWMyRW52aXJvbm1lbnRcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFYzJFbnZpcm9ubWVudFByb3BzIHtcbiAgLyoqXG4gICAqIE93bmVyIG9mIHRoZSBlbnZpcm9ubWVudC5cbiAgICpcbiAgICogVGhlIG93bmVyIGhhcyBmdWxsIGNvbnRyb2wgb2YgdGhlIGVudmlyb25tZW50IGFuZCBjYW4gaW52aXRlIGFkZGl0aW9uYWwgbWVtYmVycy5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBUaGUgaWRlbnRpdHkgdGhhdCBDbG91ZEZvcm1hdGlvbiBleGVjdXRlcyB1bmRlciB3aWxsIGJlIHRoZSBvd25lclxuICAgKi9cbiAgcmVhZG9ubHkgb3duZXI/OiBPd25lcjtcblxuICAvKipcbiAgICogVGhlIHR5cGUgb2YgaW5zdGFuY2UgdG8gY29ubmVjdCB0byB0aGUgZW52aXJvbm1lbnQuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gdDIubWljcm9cbiAgICovXG4gIHJlYWRvbmx5IGluc3RhbmNlVHlwZT86IGVjMi5JbnN0YW5jZVR5cGU7XG5cbiAgLyoqXG4gICAqIFRoZSBzdWJuZXRTZWxlY3Rpb24gb2YgdGhlIFZQQyB0aGF0IEFXUyBDbG91ZDkgd2lsbCB1c2UgdG8gY29tbXVuaWNhdGUgd2l0aFxuICAgKiB0aGUgQW1hem9uIEVDMiBpbnN0YW5jZS5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBhbGwgcHVibGljIHN1Ym5ldHMgb2YgdGhlIFZQQyBhcmUgc2VsZWN0ZWQuXG4gICAqL1xuICByZWFkb25seSBzdWJuZXRTZWxlY3Rpb24/OiBlYzIuU3VibmV0U2VsZWN0aW9uO1xuXG4gIC8qKlxuICAgKiBUaGUgVlBDIHRoYXQgQVdTIENsb3VkOSB3aWxsIHVzZSB0byBjb21tdW5pY2F0ZSB3aXRoIHRoZSBBbWF6b24gRWxhc3RpYyBDb21wdXRlIENsb3VkIChBbWF6b24gRUMyKSBpbnN0YW5jZS5cbiAgICpcbiAgICovXG4gIHJlYWRvbmx5IHZwYzogZWMyLklWcGM7XG5cbiAgLyoqXG4gICAqIE5hbWUgb2YgdGhlIGVudmlyb25tZW50XG4gICAqXG4gICAqIEBkZWZhdWx0IC0gYXV0b21hdGljYWxseSBnZW5lcmF0ZWQgbmFtZVxuICAgKi9cbiAgcmVhZG9ubHkgZWMyRW52aXJvbm1lbnROYW1lPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBEZXNjcmlwdGlvbiBvZiB0aGUgZW52aXJvbm1lbnRcbiAgICpcbiAgICogQGRlZmF1bHQgLSBubyBkZXNjcmlwdGlvblxuICAgKi9cbiAgcmVhZG9ubHkgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBBV1MgQ29kZUNvbW1pdCByZXBvc2l0b3J5IHRvIGJlIGNsb25lZFxuICAgKlxuICAgKiBAZGVmYXVsdCAtIGRvIG5vdCBjbG9uZSBhbnkgcmVwb3NpdG9yeVxuICAgKi9cbiAgLy8gcmVhZG9ubHkgY2xvbmVkUmVwb3NpdG9yaWVzPzogQ2xvdWQ5UmVwb3NpdG9yeVtdO1xuICByZWFkb25seSBjbG9uZWRSZXBvc2l0b3JpZXM/OiBDbG9uZVJlcG9zaXRvcnlbXTtcblxuICAvKipcbiAgICogVGhlIGNvbm5lY3Rpb24gdHlwZSB1c2VkIGZvciBjb25uZWN0aW5nIHRvIGFuIEFtYXpvbiBFQzIgZW52aXJvbm1lbnQuXG4gICAqXG4gICAqIFZhbGlkIHZhbHVlcyBhcmU6IENPTk5FQ1RfU1NIIChkZWZhdWx0KSBhbmQgQ09OTkVDVF9TU00gKGNvbm5lY3RlZCB0aHJvdWdoIEFXUyBTeXN0ZW1zIE1hbmFnZXIpXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gQ09OTkVDVF9TU0hcbiAgICovXG4gIHJlYWRvbmx5IGNvbm5lY3Rpb25UeXBlPzogQ29ubmVjdGlvblR5cGVcblxuICAvKipcbiAgICogVGhlIGltYWdlIElEIHVzZWQgZm9yIGNyZWF0aW5nIGFuIEFtYXpvbiBFQzIgZW52aXJvbm1lbnQuXG4gICAqXG4gICAqL1xuICByZWFkb25seSBpbWFnZUlkOiBJbWFnZUlkXG59XG5cbi8qKlxuICogQSBDbG91ZDkgRW52aXJvbm1lbnQgd2l0aCBBbWF6b24gRUMyXG4gKiBAcmVzb3VyY2UgQVdTOjpDbG91ZDk6OkVudmlyb25tZW50RUMyXG4gKi9cbmV4cG9ydCBjbGFzcyBFYzJFbnZpcm9ubWVudCBleHRlbmRzIGNkay5SZXNvdXJjZSBpbXBsZW1lbnRzIElFYzJFbnZpcm9ubWVudCB7XG4gIC8qKlxuICAgKiBpbXBvcnQgZnJvbSBFbnZpcm9ubWVudEVjMk5hbWVcbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgZnJvbUVjMkVudmlyb25tZW50TmFtZShzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBlYzJFbnZpcm9ubWVudE5hbWU6IHN0cmluZyk6IElFYzJFbnZpcm9ubWVudCB7XG4gICAgY2xhc3MgSW1wb3J0IGV4dGVuZHMgY2RrLlJlc291cmNlIHtcbiAgICAgIHB1YmxpYyBlYzJFbnZpcm9ubWVudE5hbWUgPSBlYzJFbnZpcm9ubWVudE5hbWU7XG4gICAgICBwdWJsaWMgZWMyRW52aXJvbm1lbnRBcm4gPSBjZGsuU3RhY2sub2YodGhpcykuZm9ybWF0QXJuKHtcbiAgICAgICAgc2VydmljZTogJ2Nsb3VkOScsXG4gICAgICAgIHJlc291cmNlOiAnZW52aXJvbm1lbnQnLFxuICAgICAgICByZXNvdXJjZU5hbWU6IHRoaXMuZWMyRW52aXJvbm1lbnROYW1lLFxuICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiBuZXcgSW1wb3J0KHNjb3BlLCBpZCk7XG4gIH1cblxuICAvKipcbiAgICogVGhlIGVudmlyb25tZW50IG5hbWUgb2YgdGhpcyBDbG91ZDkgZW52aXJvbm1lbnRcbiAgICpcbiAgICogQGF0dHJpYnV0ZVxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGVjMkVudmlyb25tZW50TmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgZW52aXJvbm1lbnQgQVJOIG9mIHRoaXMgQ2xvdWQ5IGVudmlyb25tZW50XG4gICAqXG4gICAqIEBhdHRyaWJ1dGVcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBlYzJFbnZpcm9ubWVudEFybjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgZW52aXJvbm1lbnQgSUQgb2YgdGhpcyBDbG91ZDkgZW52aXJvbm1lbnRcbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBlbnZpcm9ubWVudElkOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBjb21wbGV0ZSBJREUgVVJMIG9mIHRoaXMgQ2xvdWQ5IGVudmlyb25tZW50XG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgaWRlVXJsOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFZQQyBJRFxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHZwYzogZWMyLklWcGM7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IEVjMkVudmlyb25tZW50UHJvcHMpIHtcbiAgICBzdXBlcihzY29wZSwgaWQpO1xuXG4gICAgdGhpcy52cGMgPSBwcm9wcy52cGM7XG4gICAgaWYgKCFwcm9wcy5zdWJuZXRTZWxlY3Rpb24gJiYgdGhpcy52cGMucHVibGljU3VibmV0cy5sZW5ndGggPT09IDApIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignbm8gc3VibmV0U2VsZWN0aW9uIHNwZWNpZmllZCBhbmQgbm8gcHVibGljIHN1Ym5ldCBmb3VuZCBpbiB0aGUgdnBjLCBwbGVhc2Ugc3BlY2lmeSBzdWJuZXRTZWxlY3Rpb24nKTtcbiAgICB9XG5cbiAgICBpZiAoIXByb3BzLmltYWdlSWQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignTm8gaW1hZ2VJZCBzcGVjaWZpZWQsIHBsZWFzZSBzcGVjaWZ5IGltYWdlSWQnKTtcbiAgICB9XG5cbiAgICBjb25zdCB2cGNTdWJuZXRzID0gcHJvcHMuc3VibmV0U2VsZWN0aW9uID8/IHsgc3VibmV0VHlwZTogZWMyLlN1Ym5ldFR5cGUuUFVCTElDIH07XG4gICAgY29uc3QgYzllbnYgPSBuZXcgQ2ZuRW52aXJvbm1lbnRFQzIodGhpcywgJ1Jlc291cmNlJywge1xuICAgICAgbmFtZTogcHJvcHMuZWMyRW52aXJvbm1lbnROYW1lLFxuICAgICAgZGVzY3JpcHRpb246IHByb3BzLmRlc2NyaXB0aW9uLFxuICAgICAgb3duZXJBcm46IHByb3BzLm93bmVyPy5vd25lckFybixcbiAgICAgIGluc3RhbmNlVHlwZTogcHJvcHMuaW5zdGFuY2VUeXBlPy50b1N0cmluZygpID8/IGVjMi5JbnN0YW5jZVR5cGUub2YoZWMyLkluc3RhbmNlQ2xhc3MuQlVSU1RBQkxFMiwgZWMyLkluc3RhbmNlU2l6ZS5NSUNSTykudG9TdHJpbmcoKSxcbiAgICAgIHN1Ym5ldElkOiB0aGlzLnZwYy5zZWxlY3RTdWJuZXRzKHZwY1N1Ym5ldHMpLnN1Ym5ldElkc1swXSxcbiAgICAgIHJlcG9zaXRvcmllczogcHJvcHMuY2xvbmVkUmVwb3NpdG9yaWVzID8gcHJvcHMuY2xvbmVkUmVwb3NpdG9yaWVzLm1hcChyID0+ICh7XG4gICAgICAgIHJlcG9zaXRvcnlVcmw6IHIucmVwb3NpdG9yeVVybCxcbiAgICAgICAgcGF0aENvbXBvbmVudDogci5wYXRoQ29tcG9uZW50LFxuICAgICAgfSkpIDogdW5kZWZpbmVkLFxuICAgICAgY29ubmVjdGlvblR5cGU6IHByb3BzLmNvbm5lY3Rpb25UeXBlID8/IENvbm5lY3Rpb25UeXBlLkNPTk5FQ1RfU1NILFxuICAgICAgaW1hZ2VJZDogcHJvcHMuaW1hZ2VJZCxcbiAgICB9KTtcbiAgICB0aGlzLmVudmlyb25tZW50SWQgPSBjOWVudi5yZWY7XG4gICAgdGhpcy5lYzJFbnZpcm9ubWVudEFybiA9IGM5ZW52LmdldEF0dCgnQXJuJykudG9TdHJpbmcoKTtcbiAgICB0aGlzLmVjMkVudmlyb25tZW50TmFtZSA9IGM5ZW52LmdldEF0dCgnTmFtZScpLnRvU3RyaW5nKCk7XG4gICAgdGhpcy5pZGVVcmwgPSBgaHR0cHM6Ly8ke3RoaXMuZW52LnJlZ2lvbn0uY29uc29sZS5hd3MuYW1hem9uLmNvbS9jbG91ZDkvaWRlLyR7dGhpcy5lbnZpcm9ubWVudElkfWA7XG4gIH1cbn1cblxuLyoqXG4gKiBUaGUgY2xhc3MgZm9yIGRpZmZlcmVudCByZXBvc2l0b3J5IHByb3ZpZGVyc1xuICovXG5leHBvcnQgY2xhc3MgQ2xvbmVSZXBvc2l0b3J5IHtcbiAgLyoqXG4gICAqIGltcG9ydCByZXBvc2l0b3J5IHRvIGNsb3VkOSBlbnZpcm9ubWVudCBmcm9tIEFXUyBDb2RlQ29tbWl0XG4gICAqXG4gICAqIEBwYXJhbSByZXBvc2l0b3J5IHRoZSBjb2RlY29tbWl0IHJlcG9zaXRvcnkgdG8gY2xvbmUgZnJvbVxuICAgKiBAcGFyYW0gcGF0aCAgdGhlIHRhcmdldCBwYXRoIGluIGNsb3VkOSBlbnZpcm9ubWVudFxuICAgKi9cbiAgcHVibGljIHN0YXRpYyBmcm9tQ29kZUNvbW1pdChyZXBvc2l0b3J5OiBjb2RlY29tbWl0LklSZXBvc2l0b3J5LCBwYXRoOiBzdHJpbmcpOiBDbG9uZVJlcG9zaXRvcnkge1xuICAgIHJldHVybiB7XG4gICAgICByZXBvc2l0b3J5VXJsOiByZXBvc2l0b3J5LnJlcG9zaXRvcnlDbG9uZVVybEh0dHAsXG4gICAgICBwYXRoQ29tcG9uZW50OiBwYXRoLFxuICAgIH07XG4gIH1cblxuICBwcml2YXRlIGNvbnN0cnVjdG9yKHB1YmxpYyByZWFkb25seSByZXBvc2l0b3J5VXJsOiBzdHJpbmcsIHB1YmxpYyByZWFkb25seSBwYXRoQ29tcG9uZW50OiBzdHJpbmcpIHt9XG59XG5cbi8qKlxuICogQW4gZW52aXJvbm1lbnQgb3duZXJcbiAqXG4gKlxuICovXG5leHBvcnQgY2xhc3MgT3duZXIge1xuICAvKipcbiAgICogTWFrZSBhbiBJQU0gdXNlciB0aGUgZW52aXJvbm1lbnQgb3duZXJcbiAgICpcbiAgICogVXNlciBuZWVkIHRvIGhhdmUgQVdTQ2xvdWQ5QWRtaW5pc3RyYXRvciBwZXJtaXNzaW9uc1xuICAgKiBAc2VlIGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9jbG91ZDkvbGF0ZXN0L3VzZXItZ3VpZGUvc2hhcmUtZW52aXJvbm1lbnQuaHRtbCNzaGFyZS1lbnZpcm9ubWVudC1hYm91dFxuICAgKlxuICAgKiBAcGFyYW0gdXNlciB0aGUgVXNlciBvYmplY3QgdG8gdXNlIGFzIHRoZSBlbnZpcm9ubWVudCBvd25lclxuICAgKi9cbiAgcHVibGljIHN0YXRpYyB1c2VyKHVzZXI6IElVc2VyKTogT3duZXIge1xuICAgIHJldHVybiB7IG93bmVyQXJuOiB1c2VyLnVzZXJBcm4gfTtcbiAgfVxuXG5cbiAgLyoqXG4gICAqIE1ha2UgdGhlIEFjY291bnQgUm9vdCBVc2VyIHRoZSBlbnZpcm9ubWVudCBvd25lciAobm90IHJlY29tbWVuZGVkKVxuICAgKlxuICAgKiBAcGFyYW0gYWNjb3VudElkIHRoZSBBY2NvdW50SWQgdG8gdXNlIGFzIHRoZSBlbnZpcm9ubWVudCBvd25lci5cbiAgICovXG4gIHB1YmxpYyBzdGF0aWMgYWNjb3VudFJvb3QoYWNjb3VudElkOiBzdHJpbmcpOiBPd25lciB7XG4gICAgcmV0dXJuIHsgb3duZXJBcm46IGBhcm46YXdzOmlhbTo6JHthY2NvdW50SWR9OnJvb3RgIH07XG4gIH1cblxuICAvKipcbiAgICpcbiAgICogQHBhcmFtIG93bmVyQXJuIG9mIGVudmlyb25tZW50IG93bmVyLlxuICAgKi9cbiAgcHJpdmF0ZSBjb25zdHJ1Y3RvcihwdWJsaWMgcmVhZG9ubHkgb3duZXJBcm46IHN0cmluZykge31cbn0iXX0=
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aws-cdk/aws-cloud9-alpha",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.64.0-alpha.0",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "The CDK Construct Library for AWS::Cloud9",
|
|
6
6
|
"main": "lib/index.js",
|
|
@@ -81,19 +81,19 @@
|
|
|
81
81
|
},
|
|
82
82
|
"license": "Apache-2.0",
|
|
83
83
|
"devDependencies": {
|
|
84
|
-
"@aws-cdk/cdk-build-tools": "2.
|
|
85
|
-
"@aws-cdk/cfn2ts": "2.
|
|
86
|
-
"@aws-cdk/integ-runner": "2.
|
|
87
|
-
"@aws-cdk/pkglint": "2.
|
|
84
|
+
"@aws-cdk/cdk-build-tools": "2.64.0",
|
|
85
|
+
"@aws-cdk/cfn2ts": "2.64.0",
|
|
86
|
+
"@aws-cdk/integ-runner": "2.64.0",
|
|
87
|
+
"@aws-cdk/pkglint": "2.64.0",
|
|
88
88
|
"@types/jest": "^27.5.2",
|
|
89
|
-
"aws-cdk-lib": "2.
|
|
89
|
+
"aws-cdk-lib": "2.64.0",
|
|
90
90
|
"constructs": "^10.0.0",
|
|
91
|
-
"@aws-cdk/integ-tests-alpha": "2.
|
|
91
|
+
"@aws-cdk/integ-tests-alpha": "2.64.0-alpha.0"
|
|
92
92
|
},
|
|
93
93
|
"dependencies": {},
|
|
94
94
|
"homepage": "https://github.com/aws/aws-cdk",
|
|
95
95
|
"peerDependencies": {
|
|
96
|
-
"aws-cdk-lib": "^2.
|
|
96
|
+
"aws-cdk-lib": "^2.64.0",
|
|
97
97
|
"constructs": "^10.0.0"
|
|
98
98
|
},
|
|
99
99
|
"engines": {
|