@cdklabs/cdk-ecs-codedeploy 0.0.153 → 0.0.155
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 +237 -46
- package/API.md +120 -1
- package/lib/api-canary/index.js +1 -1
- package/lib/ecs-appspec/index.d.ts +32 -1
- package/lib/ecs-appspec/index.js +46 -3
- package/lib/ecs-deployment/index.d.ts +7 -1
- package/lib/ecs-deployment/index.js +3 -3
- package/lib/ecs-patterns/application-load-balanced-codedeployed-fargate-service.d.ts +7 -0
- package/lib/ecs-patterns/application-load-balanced-codedeployed-fargate-service.js +3 -2
- package/node_modules/@aws-sdk/client-codedeploy/package.json +5 -5
- package/node_modules/@aws-sdk/client-sso/package.json +3 -3
- package/node_modules/@aws-sdk/client-sso-oidc/package.json +3 -3
- package/node_modules/@aws-sdk/client-sts/package.json +4 -4
- package/node_modules/@aws-sdk/credential-provider-ini/package.json +2 -2
- package/node_modules/@aws-sdk/credential-provider-node/package.json +3 -3
- package/node_modules/@aws-sdk/credential-provider-sso/package.json +3 -3
- package/node_modules/@aws-sdk/middleware-user-agent/package.json +2 -2
- package/node_modules/@aws-sdk/token-providers/package.json +2 -2
- package/node_modules/@aws-sdk/util-endpoints/dist-cjs/resolveEndpoint.js +2 -2
- package/node_modules/@aws-sdk/util-endpoints/dist-es/resolveEndpoint.js +2 -2
- package/node_modules/@aws-sdk/util-endpoints/package.json +1 -1
- package/package.json +9 -4
package/API.md
CHANGED
|
@@ -1404,6 +1404,7 @@ const applicationLoadBalancedCodeDeployedFargateServiceProps: ApplicationLoadBal
|
|
|
1404
1404
|
| <code><a href="#@cdklabs/cdk-ecs-codedeploy.ApplicationLoadBalancedCodeDeployedFargateServiceProps.property.deploymentTimeout">deploymentTimeout</a></code> | <code>aws-cdk-lib.Duration</code> | The timeout for a CodeDeploy deployment. |
|
|
1405
1405
|
| <code><a href="#@cdklabs/cdk-ecs-codedeploy.ApplicationLoadBalancedCodeDeployedFargateServiceProps.property.deregistrationDelay">deregistrationDelay</a></code> | <code>aws-cdk-lib.Duration</code> | The amount of time for ELB to wait before changing the state of a deregistering target from 'draining' to 'unused'. |
|
|
1406
1406
|
| <code><a href="#@cdklabs/cdk-ecs-codedeploy.ApplicationLoadBalancedCodeDeployedFargateServiceProps.property.healthCheck">healthCheck</a></code> | <code>aws-cdk-lib.aws_elasticloadbalancingv2.HealthCheck</code> | The healthcheck to configure on the Application Load Balancer target groups. |
|
|
1407
|
+
| <code><a href="#@cdklabs/cdk-ecs-codedeploy.ApplicationLoadBalancedCodeDeployedFargateServiceProps.property.hooks">hooks</a></code> | <code><a href="#@cdklabs/cdk-ecs-codedeploy.AppSpecHooks">AppSpecHooks</a></code> | Optional lifecycle hooks. |
|
|
1407
1408
|
| <code><a href="#@cdklabs/cdk-ecs-codedeploy.ApplicationLoadBalancedCodeDeployedFargateServiceProps.property.responseTimeAlarmThreshold">responseTimeAlarmThreshold</a></code> | <code>aws-cdk-lib.Duration</code> | The threshold for response time alarm. |
|
|
1408
1409
|
| <code><a href="#@cdklabs/cdk-ecs-codedeploy.ApplicationLoadBalancedCodeDeployedFargateServiceProps.property.terminationWaitTime">terminationWaitTime</a></code> | <code>aws-cdk-lib.Duration</code> | The time to wait before terminating the original (blue) task set. |
|
|
1409
1410
|
| <code><a href="#@cdklabs/cdk-ecs-codedeploy.ApplicationLoadBalancedCodeDeployedFargateServiceProps.property.testPort">testPort</a></code> | <code>number</code> | The port to use for test traffic on the listener. |
|
|
@@ -2116,6 +2117,19 @@ The healthcheck to configure on the Application Load Balancer target groups.
|
|
|
2116
2117
|
|
|
2117
2118
|
---
|
|
2118
2119
|
|
|
2120
|
+
##### `hooks`<sup>Optional</sup> <a name="hooks" id="@cdklabs/cdk-ecs-codedeploy.ApplicationLoadBalancedCodeDeployedFargateServiceProps.property.hooks"></a>
|
|
2121
|
+
|
|
2122
|
+
```typescript
|
|
2123
|
+
public readonly hooks: AppSpecHooks;
|
|
2124
|
+
```
|
|
2125
|
+
|
|
2126
|
+
- *Type:* <a href="#@cdklabs/cdk-ecs-codedeploy.AppSpecHooks">AppSpecHooks</a>
|
|
2127
|
+
- *Default:* no lifecycle hooks
|
|
2128
|
+
|
|
2129
|
+
Optional lifecycle hooks.
|
|
2130
|
+
|
|
2131
|
+
---
|
|
2132
|
+
|
|
2119
2133
|
##### `responseTimeAlarmThreshold`<sup>Optional</sup> <a name="responseTimeAlarmThreshold" id="@cdklabs/cdk-ecs-codedeploy.ApplicationLoadBalancedCodeDeployedFargateServiceProps.property.responseTimeAlarmThreshold"></a>
|
|
2120
2134
|
|
|
2121
2135
|
```typescript
|
|
@@ -2155,6 +2169,90 @@ The port to use for test traffic on the listener.
|
|
|
2155
2169
|
|
|
2156
2170
|
---
|
|
2157
2171
|
|
|
2172
|
+
### AppSpecHooks <a name="AppSpecHooks" id="@cdklabs/cdk-ecs-codedeploy.AppSpecHooks"></a>
|
|
2173
|
+
|
|
2174
|
+
Lifecycle hooks configuration.
|
|
2175
|
+
|
|
2176
|
+
#### Initializer <a name="Initializer" id="@cdklabs/cdk-ecs-codedeploy.AppSpecHooks.Initializer"></a>
|
|
2177
|
+
|
|
2178
|
+
```typescript
|
|
2179
|
+
import { AppSpecHooks } from '@cdklabs/cdk-ecs-codedeploy'
|
|
2180
|
+
|
|
2181
|
+
const appSpecHooks: AppSpecHooks = { ... }
|
|
2182
|
+
```
|
|
2183
|
+
|
|
2184
|
+
#### Properties <a name="Properties" id="Properties"></a>
|
|
2185
|
+
|
|
2186
|
+
| **Name** | **Type** | **Description** |
|
|
2187
|
+
| --- | --- | --- |
|
|
2188
|
+
| <code><a href="#@cdklabs/cdk-ecs-codedeploy.AppSpecHooks.property.afterAllowTestTraffic">afterAllowTestTraffic</a></code> | <code>string \| aws-cdk-lib.aws_lambda.IFunction</code> | Lambda or ARN of a lambda to run tasks after the test listener serves traffic to the replacement task set. |
|
|
2189
|
+
| <code><a href="#@cdklabs/cdk-ecs-codedeploy.AppSpecHooks.property.afterAllowTraffic">afterAllowTraffic</a></code> | <code>string \| aws-cdk-lib.aws_lambda.IFunction</code> | Lambda or ARN of a lambda to run tasks after the second target group serves traffic to the replacement task set. |
|
|
2190
|
+
| <code><a href="#@cdklabs/cdk-ecs-codedeploy.AppSpecHooks.property.afterInstall">afterInstall</a></code> | <code>string \| aws-cdk-lib.aws_lambda.IFunction</code> | Lambda or ARN of a lambda to run tasks after the replacement task set is created and one of the target groups is associated with it. |
|
|
2191
|
+
| <code><a href="#@cdklabs/cdk-ecs-codedeploy.AppSpecHooks.property.beforeAllowTraffic">beforeAllowTraffic</a></code> | <code>string \| aws-cdk-lib.aws_lambda.IFunction</code> | Lambda or ARN of a lambda to run tasks after the second target group is associated with the replacement task set, but before traffic is shifted to the replacement task set. |
|
|
2192
|
+
| <code><a href="#@cdklabs/cdk-ecs-codedeploy.AppSpecHooks.property.beforeInstall">beforeInstall</a></code> | <code>string \| aws-cdk-lib.aws_lambda.IFunction</code> | Lambda or ARN of a lambda to run tasks before the replacement task set is created. |
|
|
2193
|
+
|
|
2194
|
+
---
|
|
2195
|
+
|
|
2196
|
+
##### `afterAllowTestTraffic`<sup>Optional</sup> <a name="afterAllowTestTraffic" id="@cdklabs/cdk-ecs-codedeploy.AppSpecHooks.property.afterAllowTestTraffic"></a>
|
|
2197
|
+
|
|
2198
|
+
```typescript
|
|
2199
|
+
public readonly afterAllowTestTraffic: string | IFunction;
|
|
2200
|
+
```
|
|
2201
|
+
|
|
2202
|
+
- *Type:* string | aws-cdk-lib.aws_lambda.IFunction
|
|
2203
|
+
|
|
2204
|
+
Lambda or ARN of a lambda to run tasks after the test listener serves traffic to the replacement task set.
|
|
2205
|
+
|
|
2206
|
+
---
|
|
2207
|
+
|
|
2208
|
+
##### `afterAllowTraffic`<sup>Optional</sup> <a name="afterAllowTraffic" id="@cdklabs/cdk-ecs-codedeploy.AppSpecHooks.property.afterAllowTraffic"></a>
|
|
2209
|
+
|
|
2210
|
+
```typescript
|
|
2211
|
+
public readonly afterAllowTraffic: string | IFunction;
|
|
2212
|
+
```
|
|
2213
|
+
|
|
2214
|
+
- *Type:* string | aws-cdk-lib.aws_lambda.IFunction
|
|
2215
|
+
|
|
2216
|
+
Lambda or ARN of a lambda to run tasks after the second target group serves traffic to the replacement task set.
|
|
2217
|
+
|
|
2218
|
+
---
|
|
2219
|
+
|
|
2220
|
+
##### `afterInstall`<sup>Optional</sup> <a name="afterInstall" id="@cdklabs/cdk-ecs-codedeploy.AppSpecHooks.property.afterInstall"></a>
|
|
2221
|
+
|
|
2222
|
+
```typescript
|
|
2223
|
+
public readonly afterInstall: string | IFunction;
|
|
2224
|
+
```
|
|
2225
|
+
|
|
2226
|
+
- *Type:* string | aws-cdk-lib.aws_lambda.IFunction
|
|
2227
|
+
|
|
2228
|
+
Lambda or ARN of a lambda to run tasks after the replacement task set is created and one of the target groups is associated with it.
|
|
2229
|
+
|
|
2230
|
+
---
|
|
2231
|
+
|
|
2232
|
+
##### `beforeAllowTraffic`<sup>Optional</sup> <a name="beforeAllowTraffic" id="@cdklabs/cdk-ecs-codedeploy.AppSpecHooks.property.beforeAllowTraffic"></a>
|
|
2233
|
+
|
|
2234
|
+
```typescript
|
|
2235
|
+
public readonly beforeAllowTraffic: string | IFunction;
|
|
2236
|
+
```
|
|
2237
|
+
|
|
2238
|
+
- *Type:* string | aws-cdk-lib.aws_lambda.IFunction
|
|
2239
|
+
|
|
2240
|
+
Lambda or ARN of a lambda to run tasks after the second target group is associated with the replacement task set, but before traffic is shifted to the replacement task set.
|
|
2241
|
+
|
|
2242
|
+
---
|
|
2243
|
+
|
|
2244
|
+
##### `beforeInstall`<sup>Optional</sup> <a name="beforeInstall" id="@cdklabs/cdk-ecs-codedeploy.AppSpecHooks.property.beforeInstall"></a>
|
|
2245
|
+
|
|
2246
|
+
```typescript
|
|
2247
|
+
public readonly beforeInstall: string | IFunction;
|
|
2248
|
+
```
|
|
2249
|
+
|
|
2250
|
+
- *Type:* string | aws-cdk-lib.aws_lambda.IFunction
|
|
2251
|
+
|
|
2252
|
+
Lambda or ARN of a lambda to run tasks before the replacement task set is created.
|
|
2253
|
+
|
|
2254
|
+
---
|
|
2255
|
+
|
|
2158
2256
|
### AwsvpcConfiguration <a name="AwsvpcConfiguration" id="@cdklabs/cdk-ecs-codedeploy.AwsvpcConfiguration"></a>
|
|
2159
2257
|
|
|
2160
2258
|
Network configuration for ECS services that have a network type of `awsvpc`.
|
|
@@ -2246,6 +2344,7 @@ const ecsDeploymentProps: EcsDeploymentProps = { ... }
|
|
|
2246
2344
|
| <code><a href="#@cdklabs/cdk-ecs-codedeploy.EcsDeploymentProps.property.targetService">targetService</a></code> | <code><a href="#@cdklabs/cdk-ecs-codedeploy.TargetService">TargetService</a></code> | The ECS service to target for the deployment. |
|
|
2247
2345
|
| <code><a href="#@cdklabs/cdk-ecs-codedeploy.EcsDeploymentProps.property.autoRollback">autoRollback</a></code> | <code>aws-cdk-lib.aws_codedeploy.AutoRollbackConfig</code> | The configuration for rollback in the event that a deployment fails. |
|
|
2248
2346
|
| <code><a href="#@cdklabs/cdk-ecs-codedeploy.EcsDeploymentProps.property.description">description</a></code> | <code>string</code> | The description for the deployment. |
|
|
2347
|
+
| <code><a href="#@cdklabs/cdk-ecs-codedeploy.EcsDeploymentProps.property.hooks">hooks</a></code> | <code><a href="#@cdklabs/cdk-ecs-codedeploy.AppSpecHooks">AppSpecHooks</a></code> | Optional lifecycle hooks. |
|
|
2249
2348
|
| <code><a href="#@cdklabs/cdk-ecs-codedeploy.EcsDeploymentProps.property.timeout">timeout</a></code> | <code>aws-cdk-lib.Duration</code> | The timeout for the deployment. |
|
|
2250
2349
|
|
|
2251
2350
|
---
|
|
@@ -2302,6 +2401,19 @@ The description for the deployment.
|
|
|
2302
2401
|
|
|
2303
2402
|
---
|
|
2304
2403
|
|
|
2404
|
+
##### `hooks`<sup>Optional</sup> <a name="hooks" id="@cdklabs/cdk-ecs-codedeploy.EcsDeploymentProps.property.hooks"></a>
|
|
2405
|
+
|
|
2406
|
+
```typescript
|
|
2407
|
+
public readonly hooks: AppSpecHooks;
|
|
2408
|
+
```
|
|
2409
|
+
|
|
2410
|
+
- *Type:* <a href="#@cdklabs/cdk-ecs-codedeploy.AppSpecHooks">AppSpecHooks</a>
|
|
2411
|
+
- *Default:* no lifecycle hooks
|
|
2412
|
+
|
|
2413
|
+
Optional lifecycle hooks.
|
|
2414
|
+
|
|
2415
|
+
---
|
|
2416
|
+
|
|
2305
2417
|
##### `timeout`<sup>Optional</sup> <a name="timeout" id="@cdklabs/cdk-ecs-codedeploy.EcsDeploymentProps.property.timeout"></a>
|
|
2306
2418
|
|
|
2307
2419
|
```typescript
|
|
@@ -2434,12 +2546,13 @@ see: https://docs.aws.amazon.com/codedeploy/latest/userguide/reference-appspec-f
|
|
|
2434
2546
|
```typescript
|
|
2435
2547
|
import { EcsAppSpec } from '@cdklabs/cdk-ecs-codedeploy'
|
|
2436
2548
|
|
|
2437
|
-
new EcsAppSpec(targetService: TargetService)
|
|
2549
|
+
new EcsAppSpec(targetService: TargetService, hooks?: AppSpecHooks)
|
|
2438
2550
|
```
|
|
2439
2551
|
|
|
2440
2552
|
| **Name** | **Type** | **Description** |
|
|
2441
2553
|
| --- | --- | --- |
|
|
2442
2554
|
| <code><a href="#@cdklabs/cdk-ecs-codedeploy.EcsAppSpec.Initializer.parameter.targetService">targetService</a></code> | <code><a href="#@cdklabs/cdk-ecs-codedeploy.TargetService">TargetService</a></code> | *No description.* |
|
|
2555
|
+
| <code><a href="#@cdklabs/cdk-ecs-codedeploy.EcsAppSpec.Initializer.parameter.hooks">hooks</a></code> | <code><a href="#@cdklabs/cdk-ecs-codedeploy.AppSpecHooks">AppSpecHooks</a></code> | *No description.* |
|
|
2443
2556
|
|
|
2444
2557
|
---
|
|
2445
2558
|
|
|
@@ -2449,6 +2562,12 @@ new EcsAppSpec(targetService: TargetService)
|
|
|
2449
2562
|
|
|
2450
2563
|
---
|
|
2451
2564
|
|
|
2565
|
+
##### `hooks`<sup>Optional</sup> <a name="hooks" id="@cdklabs/cdk-ecs-codedeploy.EcsAppSpec.Initializer.parameter.hooks"></a>
|
|
2566
|
+
|
|
2567
|
+
- *Type:* <a href="#@cdklabs/cdk-ecs-codedeploy.AppSpecHooks">AppSpecHooks</a>
|
|
2568
|
+
|
|
2569
|
+
---
|
|
2570
|
+
|
|
2452
2571
|
#### Methods <a name="Methods" id="Methods"></a>
|
|
2453
2572
|
|
|
2454
2573
|
| **Name** | **Description** |
|
package/lib/api-canary/index.js
CHANGED
|
@@ -76,5 +76,5 @@ class ApiCanary extends aws_synthetics_alpha_1.Canary {
|
|
|
76
76
|
}
|
|
77
77
|
exports.ApiCanary = ApiCanary;
|
|
78
78
|
_a = JSII_RTTI_SYMBOL_1;
|
|
79
|
-
ApiCanary[_a] = { fqn: "@cdklabs/cdk-ecs-codedeploy.ApiCanary", version: "0.0.
|
|
79
|
+
ApiCanary[_a] = { fqn: "@cdklabs/cdk-ecs-codedeploy.ApiCanary", version: "0.0.155" };
|
|
80
80
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYXBpLWNhbmFyeS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDZCQUE2QjtBQUM3Qix3RUFBK0c7QUFDL0csNkNBQTBEO0FBQzFELCtEQUF1RTtBQUd2RSwrQ0FBaUY7QUFDakYsNkRBQWtEO0FBRWxELG1EQUFvRDtBQTZLcEQ7O0dBRUc7QUFDSCxNQUFhLFNBQVUsU0FBUSw2QkFBTTtJQWdCbkMsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUFxQjtRQUM3RCxNQUFNLE9BQU8sR0FBRyxJQUFJLGlDQUFpQixDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsWUFBWSxDQUFDLENBQUMsQ0FBQztRQUN0RixNQUFNLFdBQVcsR0FBRyxJQUFJLHFCQUFLLENBQUMsS0FBSyxFQUFFLEdBQUcsRUFBRSxnQkFBZ0IsRUFBRTtZQUMxRCxJQUFJLEVBQUUsT0FBTyxDQUFDLFFBQVE7WUFDdEIsUUFBUSxFQUFFO2dCQUNSLEtBQUssRUFBRSx5QkFBVyxDQUFDLFlBQVksQ0FBQyxTQUFTLENBQUM7Z0JBQzFDLEtBQUssRUFBRSxPQUFPO2FBQ2Y7U0FDRixDQUFDLENBQUM7UUFDSCxJQUFJLGVBQWUsR0FBRyxLQUFLLENBQUMsdUJBQXVCLEVBQUUsTUFBTSxDQUFDO1FBQzVELElBQUksQ0FBQyxlQUFlLEVBQUU7WUFDcEIsZUFBZSxHQUFHLElBQUksZUFBTSxDQUFDLEtBQUssRUFBRSxHQUFHLEVBQUUsaUJBQWlCLEVBQUU7Z0JBQzFELFVBQVUsRUFBRSx5QkFBZ0IsQ0FBQyxVQUFVO2dCQUN2QyxpQkFBaUIsRUFBRSwwQkFBaUIsQ0FBQyxTQUFTO2dCQUM5QyxVQUFVLEVBQUUsSUFBSTthQUNqQixDQUFDLENBQUM7U0FDSjtRQUVELEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFO1lBQ2YsR0FBRyxLQUFLO1lBQ1IsSUFBSSxFQUFFLDJCQUFJLENBQUMsTUFBTSxDQUFDO2dCQUNoQixJQUFJLEVBQUUsMkJBQUksQ0FBQyxVQUFVLENBQUMsV0FBVyxDQUFDLE1BQU0sRUFBRSxXQUFXLENBQUMsV0FBVyxDQUFDO2dCQUNsRSxPQUFPLEVBQUUsZUFBZTthQUN6QixDQUFDO1lBQ0YsT0FBTyxFQUFFLDhCQUFPLENBQUMsK0JBQStCO1lBQ2hELG9CQUFvQixFQUFFO2dCQUNwQixPQUFPLEVBQUUsS0FBSyxDQUFDLE9BQU87Z0JBQ3RCLFdBQVcsRUFBRSxDQUFDLEtBQUssQ0FBQyxXQUFXLElBQUksRUFBRSxDQUFDLENBQUMsUUFBUSxFQUFFO2dCQUNqRCxTQUFTLEVBQUUsa0JBQUksQ0FBQyxNQUFNLENBQUMsRUFBRSxPQUFPLEVBQUUsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQzthQUN2RTtZQUNELHVCQUF1QixFQUFFO2dCQUN2QixNQUFNLEVBQUUsZUFBZTtnQkFDdkIsTUFBTSxFQUFFLEtBQUssQ0FBQyx1QkFBdUIsRUFBRSxNQUFNO2FBQzlDO1NBQ0YsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLE1BQU0sR0FBRyxLQUFLLENBQUMsS0FBSyxJQUFJLEVBQUUsQ0FBQztRQUVoQyxNQUFNLE1BQU0sR0FBRyxzQkFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUVuQyxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksc0JBQUssQ0FBQyxJQUFJLEVBQUUsY0FBYyxFQUFFO1lBQ2xELE1BQU0sRUFBRSxJQUFJLENBQUMsb0JBQW9CLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQztZQUM3QyxpQkFBaUIsRUFBRSxDQUFDO1lBQ3BCLFNBQVMsRUFBRSxHQUFHO1lBQ2Qsa0JBQWtCLEVBQUUsbUNBQWtCLENBQUMsbUJBQW1CO1NBQzNELENBQUMsQ0FBQztRQUVILElBQUksS0FBSyxDQUFDLHNCQUFzQixFQUFFO1lBQ2hDLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxzQkFBSyxDQUFDLElBQUksRUFBRSxlQUFlLEVBQUU7Z0JBQ3BELE1BQU0sRUFBRSxJQUFJLENBQUMsY0FBYyxDQUFDLEVBQUUsTUFBTSxFQUFFLENBQUM7Z0JBQ3ZDLGlCQUFpQixFQUFFLENBQUM7Z0JBQ3BCLFNBQVMsRUFBRSxLQUFLLENBQUMsc0JBQXNCLENBQUMsY0FBYyxFQUFFO2dCQUN4RCxrQkFBa0IsRUFBRSxtQ0FBa0IsQ0FBQyxzQkFBc0I7YUFDOUQsQ0FBQyxDQUFDO1NBQ0o7SUFDSCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILFdBQVcsQ0FBQyxJQUFpQjtRQUMzQixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN6QixDQUFDOztBQS9FSCw4QkFnRkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnO1xuaW1wb3J0IHsgQ2FuYXJ5LCBBcnRpZmFjdHNCdWNrZXRMb2NhdGlvbiwgU2NoZWR1bGUsIFRlc3QsIENvZGUsIFJ1bnRpbWUgfSBmcm9tICdAYXdzLWNkay9hd3Mtc3ludGhldGljcy1hbHBoYSc7XG5pbXBvcnQgeyBEdXJhdGlvbiwgRG9ja2VySW1hZ2UsIExhenkgfSBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgeyBBbGFybSwgQ29tcGFyaXNvbk9wZXJhdG9yIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWNsb3Vkd2F0Y2gnO1xuaW1wb3J0IHsgSVZwYywgU3VibmV0U2VsZWN0aW9uLCBJU2VjdXJpdHlHcm91cCB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1lYzInO1xuaW1wb3J0IHsgSVJvbGUgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtaWFtJztcbmltcG9ydCB7IEJsb2NrUHVibGljQWNjZXNzLCBCdWNrZXQsIEJ1Y2tldEVuY3J5cHRpb24gfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtczMnO1xuaW1wb3J0IHsgQXNzZXQgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtczMtYXNzZXRzJztcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0IHsgQ2FuYXJ5Q29kZUJ1bmRsZXIgfSBmcm9tICcuL2NvZGUtYnVuZGxpbmcnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFwaVRlc3RTdGVwIHtcbiAgLyoqXG4gICAqIE5hbWUgb2YgdGVzdC5cbiAgICovXG4gIHJlYWRvbmx5IG5hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogUGF0aCBvZiBIVFRQIHJlcXVlc3QsIHJlbGF0aXZlIHRvIGJhc2VVcmwuXG4gICAqL1xuICByZWFkb25seSBwYXRoOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE9wdGlvbmFsIG1ldGhvZCB0byBmb3IgSFRUUCByZXF1ZXN0LlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIEdFVFxuICAgKi9cbiAgcmVhZG9ubHkgbWV0aG9kPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBPcHRpb25hbCBoZWFkZXJzIHRvIGluY2x1ZGUgaW4gSFRUUCByZXF1ZXN0LlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIG5vIGhlYWRlcnMgaW5jbHVkZWQuXG4gICAqL1xuICByZWFkb25seSBoZWFkZXJzPzogeyBbIG5hbWU6IHN0cmluZyBdOiBzdHJpbmcgfTtcblxuICAvKipcbiAgICogT3B0aW9uYWwgYm9keSB0byBpbmNsdWRlIGluIEhUVFAgcmVxdWVzdC5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBubyBib2R5IGluY2x1ZGVkLlxuICAgKi9cbiAgcmVhZG9ubHkgYm9keT86IHN0cmluZztcblxuICAvKipcbiAgICogSk1FU1BhdGggdG8gYXBwbHkgYWdhaW5zdCB0aGUgcmVzcG9uc2UgZnJvbSB0aGUgSFRUUCByZXF1ZXN0IGFuZCBjb21wYXJlIGFnYWluc3QgZXhwZWN0ZWQgdmFsdWUuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gbm8gSk1FU1BhdGggYXNzZXJ0aW9uIHdpbGwgYmUgcGVyZm9ybWVkLlxuICAgKi9cbiAgcmVhZG9ubHkgam1lc1BhdGg/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIEV4cGVjdGVkIHZhbHVlIHRvIGNvbXBhcmUgYWdhaW5zdCB0aGUgam1lc1BhdGguXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gdW5kZWZpbmVkXG4gICAqL1xuICByZWFkb25seSBleHBlY3RlZFZhbHVlPzogYW55O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFwaUNhbmFyeVByb3BzIGV4dGVuZHMgQmFzZUNhbmFyeVByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSBiYXNlIFVSTCB0byB1c2UgZm9yIHRlc3RzLlxuICAgKi9cbiAgcmVhZG9ubHkgYmFzZVVybDogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgdGhyZXNob2xkIGZvciB0cmlnZ2VyaW5nIGFuIGFsYXJtIG9uIHRoZSB0ZXN0IGR1cmF0aW9uLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIG5vIGFsYXJtIGlzIGNyZWF0ZWQgZm9yIGR1cmF0aW9uXG4gICAqL1xuICByZWFkb25seSBkdXJhdGlvbkFsYXJtVGhyZXNob2xkPzogRHVyYXRpb247XG5cbiAgLyoqXG4gICAqIFRoZSBudW1iZXIgb2YgdGhyZWFkcyB0byBydW4gY29uY3VycmVudGx5IGZvciB0aGUgc3ludGhldGljIHRlc3QuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gMjBcbiAgICovXG4gIHJlYWRvbmx5IHRocmVhZENvdW50PzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBUaGUgc3RlcHMgdG8gcGVyZm9ybSBpbiB0aGUgc3ludGhldGljIHRlc3QuXG4gICAqL1xuICByZWFkb25seSBzdGVwcz86IEFwaVRlc3RTdGVwW107XG59XG5cbmludGVyZmFjZSBCYXNlQ2FuYXJ5UHJvcHMge1xuICAvKipcbiAgICogVGhlIHMzIGxvY2F0aW9uIHRoYXQgc3RvcmVzIHRoZSBkYXRhIG9mIHRoZSBjYW5hcnkgcnVucy5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBBIG5ldyBzMyBidWNrZXQgd2lsbCBiZSBjcmVhdGVkIHdpdGhvdXQgYSBwcmVmaXguXG4gICAqL1xuICByZWFkb25seSBhcnRpZmFjdHNCdWNrZXRMb2NhdGlvbj86IEFydGlmYWN0c0J1Y2tldExvY2F0aW9uO1xuXG4gIC8qKlxuICAgKiBDYW5hcnkgZXhlY3V0aW9uIHJvbGUuXG4gICAqXG4gICAqIFRoaXMgaXMgdGhlIHJvbGUgdGhhdCB3aWxsIGJlIGFzc3VtZWQgYnkgdGhlIGNhbmFyeSB1cG9uIGV4ZWN1dGlvbi5cbiAgICogSXQgY29udHJvbHMgdGhlIHBlcm1pc3Npb25zIHRoYXQgdGhlIGNhbmFyeSB3aWxsIGhhdmUuIFRoZSByb2xlIG11c3RcbiAgICogYmUgYXNzdW1hYmxlIGJ5IHRoZSBBV1MgTGFtYmRhIHNlcnZpY2UgcHJpbmNpcGFsLlxuICAgKlxuICAgKiBJZiBub3Qgc3VwcGxpZWQsIGEgcm9sZSB3aWxsIGJlIGNyZWF0ZWQgd2l0aCBhbGwgdGhlIHJlcXVpcmVkIHBlcm1pc3Npb25zLlxuICAgKiBJZiB5b3UgcHJvdmlkZSBhIFJvbGUsIHlvdSBtdXN0IGFkZCB0aGUgcmVxdWlyZWQgcGVybWlzc2lvbnMuXG4gICAqXG4gICAqIEBzZWUgcmVxdWlyZWQgcGVybWlzc2lvbnM6IGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9BV1NDbG91ZEZvcm1hdGlvbi9sYXRlc3QvVXNlckd1aWRlL2F3cy1yZXNvdXJjZS1zeW50aGV0aWNzLWNhbmFyeS5odG1sI2Nmbi1zeW50aGV0aWNzLWNhbmFyeS1leGVjdXRpb25yb2xlYXJuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gQSB1bmlxdWUgcm9sZSB3aWxsIGJlIGdlbmVyYXRlZCBmb3IgdGhpcyBjYW5hcnkuXG4gICAqIFlvdSBjYW4gYWRkIHBlcm1pc3Npb25zIHRvIHJvbGVzIGJ5IGNhbGxpbmcgJ2FkZFRvUm9sZVBvbGljeScuXG4gICAqL1xuICByZWFkb25seSByb2xlPzogSVJvbGU7XG5cbiAgLyoqXG4gICAqIEhvdyBsb25nIHRoZSBjYW5hcnkgd2lsbCBiZSBpbiBhICdSVU5OSU5HJyBzdGF0ZS4gRm9yIGV4YW1wbGUsIGlmIHlvdSBzZXQgYHRpbWVUb0xpdmVgIHRvIGJlIDEgaG91ciBhbmQgYHNjaGVkdWxlYCB0byBiZSBgcmF0ZSgxMCBtaW51dGVzKWAsXG4gICAqIHlvdXIgY2FuYXJ5IHdpbGwgcnVuIGF0IDEwIG1pbnV0ZSBpbnRlcnZhbHMgZm9yIGFuIGhvdXIsIGZvciBhIHRvdGFsIG9mIDYgdGltZXMuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gbm8gbGltaXRcbiAgICovXG4gIHJlYWRvbmx5IHRpbWVUb0xpdmU/OiBEdXJhdGlvbjtcblxuICAvKipcbiAgICogU3BlY2lmeSB0aGUgc2NoZWR1bGUgZm9yIGhvdyBvZnRlbiB0aGUgY2FuYXJ5IHJ1bnMuIEZvciBleGFtcGxlLCBpZiB5b3Ugc2V0IGBzY2hlZHVsZWAgdG8gYHJhdGUoMTAgbWludXRlcylgLCB0aGVuIHRoZSBjYW5hcnkgd2lsbCBydW4gZXZlcnkgMTAgbWludXRlcy5cbiAgICogWW91IGNhbiBzZXQgdGhlIHNjaGVkdWxlIHdpdGggYFNjaGVkdWxlLnJhdGUoRHVyYXRpb24pYCAocmVjb21tZW5kZWQpIG9yIHlvdSBjYW4gc3BlY2lmeSBhbiBleHByZXNzaW9uIHVzaW5nIGBTY2hlZHVsZS5leHByZXNzaW9uKClgLlxuICAgKiBAZGVmYXVsdCAncmF0ZSg1IG1pbnV0ZXMpJ1xuICAgKi9cbiAgcmVhZG9ubHkgc2NoZWR1bGU/OiBTY2hlZHVsZTtcblxuICAvKipcbiAgICogV2hldGhlciBvciBub3QgdGhlIGNhbmFyeSBzaG91bGQgc3RhcnQgYWZ0ZXIgY3JlYXRpb24uXG4gICAqXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIHJlYWRvbmx5IHN0YXJ0QWZ0ZXJDcmVhdGlvbj86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIEhvdyBtYW55IGRheXMgc2hvdWxkIHN1Y2Nlc3NmdWwgcnVucyBiZSByZXRhaW5lZC5cbiAgICpcbiAgICogQGRlZmF1bHQgRHVyYXRpb24uZGF5cygzMSlcbiAgICovXG4gIHJlYWRvbmx5IHN1Y2Nlc3NSZXRlbnRpb25QZXJpb2Q/OiBEdXJhdGlvbjtcblxuICAvKipcbiAgICogSG93IG1hbnkgZGF5cyBzaG91bGQgZmFpbGVkIHJ1bnMgYmUgcmV0YWluZWQuXG4gICAqXG4gICAqIEBkZWZhdWx0IER1cmF0aW9uLmRheXMoMzEpXG4gICAqL1xuICByZWFkb25seSBmYWlsdXJlUmV0ZW50aW9uUGVyaW9kPzogRHVyYXRpb247XG5cbiAgLyoqXG4gICAqIFRoZSBuYW1lIG9mIHRoZSBjYW5hcnkuIEJlIHN1cmUgdG8gZ2l2ZSBpdCBhIGRlc2NyaXB0aXZlIG5hbWUgdGhhdCBkaXN0aW5ndWlzaGVzIGl0IGZyb21cbiAgICogb3RoZXIgY2FuYXJpZXMgaW4geW91ciBhY2NvdW50LlxuICAgKlxuICAgKiBEbyBub3QgaW5jbHVkZSBzZWNyZXRzIG9yIHByb3ByaWV0YXJ5IGluZm9ybWF0aW9uIGluIHlvdXIgY2FuYXJ5IG5hbWUuIFRoZSBjYW5hcnkgbmFtZVxuICAgKiBtYWtlcyB1cCBwYXJ0IG9mIHRoZSBjYW5hcnkgQVJOLCB3aGljaCBpcyBpbmNsdWRlZCBpbiBvdXRib3VuZCBjYWxscyBvdmVyIHRoZSBpbnRlcm5ldC5cbiAgICogQHNlZSBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vQW1hem9uQ2xvdWRXYXRjaC9sYXRlc3QvbW9uaXRvcmluZy9zZXJ2aWNlbGVuc19jYW5hcmllc19zZWN1cml0eS5odG1sXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gQSB1bmlxdWUgbmFtZSB3aWxsIGJlIGdlbmVyYXRlZCBmcm9tIHRoZSBjb25zdHJ1Y3QgSURcbiAgICovXG4gIHJlYWRvbmx5IGNhbmFyeU5hbWU/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBWUEMgd2hlcmUgdGhpcyBjYW5hcnkgaXMgcnVuLlxuICAgKlxuICAgKiBTcGVjaWZ5IHRoaXMgaWYgdGhlIGNhbmFyeSBuZWVkcyB0byBhY2Nlc3MgcmVzb3VyY2VzIGluIGEgVlBDLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIE5vdCBpbiBWUENcbiAgICovXG4gIHJlYWRvbmx5IHZwYz86IElWcGM7XG5cbiAgLyoqXG4gICAqIFdoZXJlIHRvIHBsYWNlIHRoZSBuZXR3b3JrIGludGVyZmFjZXMgd2l0aGluIHRoZSBWUEMuIFlvdSBtdXN0IHByb3ZpZGUgYHZwY2Agd2hlbiB1c2luZyB0aGlzIHByb3AuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gdGhlIFZwYyBkZWZhdWx0IHN0cmF0ZWd5IGlmIG5vdCBzcGVjaWZpZWRcbiAgICovXG4gIHJlYWRvbmx5IHZwY1N1Ym5ldHM/OiBTdWJuZXRTZWxlY3Rpb247XG5cbiAgLyoqXG4gICAqIFRoZSBsaXN0IG9mIHNlY3VyaXR5IGdyb3VwcyB0byBhc3NvY2lhdGUgd2l0aCB0aGUgY2FuYXJ5J3MgbmV0d29yayBpbnRlcmZhY2VzLiBZb3UgbXVzdCBwcm92aWRlIGB2cGNgIHdoZW4gdXNpbmcgdGhpcyBwcm9wLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIElmIHRoZSBjYW5hcnkgaXMgcGxhY2VkIHdpdGhpbiBhIFZQQyBhbmQgYSBzZWN1cml0eSBncm91cCBpc1xuICAgKiBub3Qgc3BlY2lmaWVkIGEgZGVkaWNhdGVkIHNlY3VyaXR5IGdyb3VwIHdpbGwgYmUgY3JlYXRlZCBmb3IgdGhpcyBjYW5hcnkuXG4gICAqL1xuICByZWFkb25seSBzZWN1cml0eUdyb3Vwcz86IElTZWN1cml0eUdyb3VwW107XG59XG5cbi8qKlxuICogQSBDbG91ZFdhdGNoIFN5bnRoZXRpYyBDYW5hcnkgZm9yIG1vbml0b3JpbmcgQVBJcy5cbiAqL1xuZXhwb3J0IGNsYXNzIEFwaUNhbmFyeSBleHRlbmRzIENhbmFyeSB7XG4gIC8qKlxuICAgKiBBIENsb3VkV2F0Y2ggQWxhcm0gdGhhdCB0cmlnZ2VycyB3aGVuIHRoZSBzdWNjZXNzIHJhdGUgZmFsbHMgYmVsb3cgMTAwJSBvdmVyIHRoZSBwYXN0IDIgcGVyaW9kcy5cbiAgICovXG4gIHN1Y2Nlc3NBbGFybTogQWxhcm07XG5cbiAgLyoqXG4gICAqIEEgQ2xvdWRXYXRjaCBBbGFybSB0aGF0IHRyaWdnZXJzIHdoZW4gdGhlIGR1cmF0aW9uIG9mIHRoZSB0ZXN0cyBleGNlZWRzIHRoZSBnaXZlbiB0aHJlc2hvbGQgb3ZlciB0aGUgcGFzdCAyIHBlcmlvZHMuXG4gICAqL1xuICBkdXJhdGlvbkFsYXJtPzogQWxhcm07XG5cbiAgLyoqXG4gICAqIEBpbnRlcm5hbCBmaWVsZCB0byB0cmFjayBzdGVwcyBmb3IgdGhpcyBjYW5hcnkuXG4gICAqL1xuICBfc3RlcHM6IEFwaVRlc3RTdGVwW107XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IEFwaUNhbmFyeVByb3BzKSB7XG4gICAgY29uc3QgYnVuZGxlciA9IG5ldyBDYW5hcnlDb2RlQnVuZGxlcihwYXRoLmpvaW4oX19kaXJuYW1lLCAnLi4nLCAnLi4nLCAnY2FuYXJ5LXNyYycpKTtcbiAgICBjb25zdCBjYW5hcnlBc3NldCA9IG5ldyBBc3NldChzY29wZSwgYCR7aWR9QXBpQ2FuYXJ5QXNzZXRgLCB7XG4gICAgICBwYXRoOiBidW5kbGVyLmNvZGVQYXRoLFxuICAgICAgYnVuZGxpbmc6IHtcbiAgICAgICAgaW1hZ2U6IERvY2tlckltYWdlLmZyb21SZWdpc3RyeSgnbm9kZToxNCcpLFxuICAgICAgICBsb2NhbDogYnVuZGxlcixcbiAgICAgIH0sXG4gICAgfSk7XG4gICAgbGV0IGFydGlmYWN0c0J1Y2tldCA9IHByb3BzLmFydGlmYWN0c0J1Y2tldExvY2F0aW9uPy5idWNrZXQ7XG4gICAgaWYgKCFhcnRpZmFjdHNCdWNrZXQpIHtcbiAgICAgIGFydGlmYWN0c0J1Y2tldCA9IG5ldyBCdWNrZXQoc2NvcGUsIGAke2lkfUFydGlmYWN0c0J1Y2tldGAsIHtcbiAgICAgICAgZW5jcnlwdGlvbjogQnVja2V0RW5jcnlwdGlvbi5TM19NQU5BR0VELFxuICAgICAgICBibG9ja1B1YmxpY0FjY2VzczogQmxvY2tQdWJsaWNBY2Nlc3MuQkxPQ0tfQUxMLFxuICAgICAgICBlbmZvcmNlU1NMOiB0cnVlLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgc3VwZXIoc2NvcGUsIGlkLCB7XG4gICAgICAuLi5wcm9wcyxcbiAgICAgIHRlc3Q6IFRlc3QuY3VzdG9tKHtcbiAgICAgICAgY29kZTogQ29kZS5mcm9tQnVja2V0KGNhbmFyeUFzc2V0LmJ1Y2tldCwgY2FuYXJ5QXNzZXQuczNPYmplY3RLZXkpLFxuICAgICAgICBoYW5kbGVyOiAnaW5kZXguaGFuZGxlcicsXG4gICAgICB9KSxcbiAgICAgIHJ1bnRpbWU6IFJ1bnRpbWUuU1lOVEhFVElDU19OT0RFSlNfUFVQUEVURUVSXzNfOCxcbiAgICAgIGVudmlyb25tZW50VmFyaWFibGVzOiB7XG4gICAgICAgIGJhc2VVcmw6IHByb3BzLmJhc2VVcmwsXG4gICAgICAgIHRocmVhZENvdW50OiAocHJvcHMudGhyZWFkQ291bnQgPz8gMjApLnRvU3RyaW5nKCksXG4gICAgICAgIHRlc3RTdGVwczogTGF6eS5zdHJpbmcoeyBwcm9kdWNlOiAoKSA9PiBKU09OLnN0cmluZ2lmeSh0aGlzLl9zdGVwcykgfSksXG4gICAgICB9LFxuICAgICAgYXJ0aWZhY3RzQnVja2V0TG9jYXRpb246IHtcbiAgICAgICAgYnVja2V0OiBhcnRpZmFjdHNCdWNrZXQsXG4gICAgICAgIHByZWZpeDogcHJvcHMuYXJ0aWZhY3RzQnVja2V0TG9jYXRpb24/LnByZWZpeCxcbiAgICAgIH0sXG4gICAgfSk7XG4gICAgdGhpcy5fc3RlcHMgPSBwcm9wcy5zdGVwcyA/PyBbXTtcblxuICAgIGNvbnN0IHBlcmlvZCA9IER1cmF0aW9uLm1pbnV0ZXMoNSk7XG5cbiAgICB0aGlzLnN1Y2Nlc3NBbGFybSA9IG5ldyBBbGFybSh0aGlzLCAnU3VjY2Vzc0FsYXJtJywge1xuICAgICAgbWV0cmljOiB0aGlzLm1ldHJpY1N1Y2Nlc3NQZXJjZW50KHsgcGVyaW9kIH0pLFxuICAgICAgZXZhbHVhdGlvblBlcmlvZHM6IDIsXG4gICAgICB0aHJlc2hvbGQ6IDEwMCxcbiAgICAgIGNvbXBhcmlzb25PcGVyYXRvcjogQ29tcGFyaXNvbk9wZXJhdG9yLkxFU1NfVEhBTl9USFJFU0hPTEQsXG4gICAgfSk7XG5cbiAgICBpZiAocHJvcHMuZHVyYXRpb25BbGFybVRocmVzaG9sZCkge1xuICAgICAgdGhpcy5kdXJhdGlvbkFsYXJtID0gbmV3IEFsYXJtKHRoaXMsICdEdXJhdGlvbkFsYXJtJywge1xuICAgICAgICBtZXRyaWM6IHRoaXMubWV0cmljRHVyYXRpb24oeyBwZXJpb2QgfSksXG4gICAgICAgIGV2YWx1YXRpb25QZXJpb2RzOiAyLFxuICAgICAgICB0aHJlc2hvbGQ6IHByb3BzLmR1cmF0aW9uQWxhcm1UaHJlc2hvbGQudG9NaWxsaXNlY29uZHMoKSxcbiAgICAgICAgY29tcGFyaXNvbk9wZXJhdG9yOiBDb21wYXJpc29uT3BlcmF0b3IuR1JFQVRFUl9USEFOX1RIUkVTSE9MRCxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgYSBuZXcgdGVzdCBzdGVwIHRvIHRoaXMgY2FuYXJ5LlxuICAgKlxuICAgKiBAcGFyYW0gc3RlcCAtIEFwaVRlc3RTdGVwIHRvIGFkZC5cbiAgICovXG4gIGFkZFRlc3RTdGVwKHN0ZXA6IEFwaVRlc3RTdGVwKSB7XG4gICAgdGhpcy5fc3RlcHMucHVzaChzdGVwKTtcbiAgfVxufSJdfQ==
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import * as ec2 from 'aws-cdk-lib/aws-ec2';
|
|
2
2
|
import * as ecs from 'aws-cdk-lib/aws-ecs';
|
|
3
|
+
import * as lambda from 'aws-cdk-lib/aws-lambda';
|
|
3
4
|
/**
|
|
4
5
|
* Represents an AppSpec to be used for ECS services.
|
|
5
6
|
*
|
|
@@ -10,13 +11,18 @@ export declare class EcsAppSpec {
|
|
|
10
11
|
* Service to target for the deployment
|
|
11
12
|
*/
|
|
12
13
|
private readonly targetService;
|
|
13
|
-
|
|
14
|
+
/**
|
|
15
|
+
* Optional lifecycle hooks
|
|
16
|
+
*/
|
|
17
|
+
private readonly hooks?;
|
|
18
|
+
constructor(targetService: TargetService, hooks?: AppSpecHooks);
|
|
14
19
|
/**
|
|
15
20
|
* Render JSON string for this AppSpec to be used
|
|
16
21
|
*
|
|
17
22
|
* @returns string representation of this AppSpec
|
|
18
23
|
*/
|
|
19
24
|
toString(): string;
|
|
25
|
+
private hooksSection;
|
|
20
26
|
private configureAwsVpcNetworkingWithSecurityGroups;
|
|
21
27
|
}
|
|
22
28
|
/**
|
|
@@ -76,3 +82,28 @@ export interface AwsvpcConfiguration {
|
|
|
76
82
|
*/
|
|
77
83
|
readonly assignPublicIp: boolean;
|
|
78
84
|
}
|
|
85
|
+
/**
|
|
86
|
+
* Lifecycle hooks configuration
|
|
87
|
+
*/
|
|
88
|
+
export interface AppSpecHooks {
|
|
89
|
+
/**
|
|
90
|
+
* Lambda or ARN of a lambda to run tasks before the replacement task set is created.
|
|
91
|
+
*/
|
|
92
|
+
readonly beforeInstall?: string | lambda.IFunction;
|
|
93
|
+
/**
|
|
94
|
+
* Lambda or ARN of a lambda to run tasks after the replacement task set is created and one of the target groups is associated with it.
|
|
95
|
+
*/
|
|
96
|
+
readonly afterInstall?: string | lambda.IFunction;
|
|
97
|
+
/**
|
|
98
|
+
* Lambda or ARN of a lambda to run tasks after the test listener serves traffic to the replacement task set.
|
|
99
|
+
*/
|
|
100
|
+
readonly afterAllowTestTraffic?: string | lambda.IFunction;
|
|
101
|
+
/**
|
|
102
|
+
* Lambda or ARN of a lambda to run tasks after the second target group is associated with the replacement task set, but before traffic is shifted to the replacement task set.
|
|
103
|
+
*/
|
|
104
|
+
readonly beforeAllowTraffic?: string | lambda.IFunction;
|
|
105
|
+
/**
|
|
106
|
+
* Lambda or ARN of a lambda to run tasks after the second target group serves traffic to the replacement task set.
|
|
107
|
+
*/
|
|
108
|
+
readonly afterAllowTraffic?: string | lambda.IFunction;
|
|
109
|
+
}
|
package/lib/ecs-appspec/index.js
CHANGED
|
@@ -9,8 +9,9 @@ const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
|
|
|
9
9
|
* see: https://docs.aws.amazon.com/codedeploy/latest/userguide/reference-appspec-file-structure-resources.html#reference-appspec-file-structure-resources-ecs
|
|
10
10
|
*/
|
|
11
11
|
class EcsAppSpec {
|
|
12
|
-
constructor(targetService) {
|
|
12
|
+
constructor(targetService, hooks) {
|
|
13
13
|
this.targetService = targetService;
|
|
14
|
+
this.hooks = hooks;
|
|
14
15
|
}
|
|
15
16
|
/**
|
|
16
17
|
* Render JSON string for this AppSpec to be used
|
|
@@ -41,9 +42,51 @@ class EcsAppSpec {
|
|
|
41
42
|
},
|
|
42
43
|
},
|
|
43
44
|
}],
|
|
45
|
+
...this.hooksSection(),
|
|
44
46
|
};
|
|
45
47
|
return JSON.stringify(appSpec);
|
|
46
48
|
}
|
|
49
|
+
hooksSection() {
|
|
50
|
+
if (this.hooks == undefined) {
|
|
51
|
+
return {};
|
|
52
|
+
}
|
|
53
|
+
const hooks = this.hooks;
|
|
54
|
+
if (this.hooks.beforeInstall == undefined &&
|
|
55
|
+
this.hooks.afterInstall == undefined &&
|
|
56
|
+
this.hooks.afterAllowTestTraffic == undefined &&
|
|
57
|
+
this.hooks.beforeAllowTraffic == undefined &&
|
|
58
|
+
this.hooks.afterAllowTraffic == undefined) {
|
|
59
|
+
return {};
|
|
60
|
+
}
|
|
61
|
+
const capitalize = (s) => s && s[0].toUpperCase() + s.slice(1);
|
|
62
|
+
const hook = (name) => {
|
|
63
|
+
const hookValue = hooks[name];
|
|
64
|
+
if (hookValue == undefined) {
|
|
65
|
+
return [];
|
|
66
|
+
}
|
|
67
|
+
else {
|
|
68
|
+
return [{
|
|
69
|
+
[capitalize(name)]: typeof hookValue === 'string'
|
|
70
|
+
? hookValue
|
|
71
|
+
: hookValue.functionArn,
|
|
72
|
+
}];
|
|
73
|
+
}
|
|
74
|
+
};
|
|
75
|
+
const beforeInstall = hook('beforeInstall');
|
|
76
|
+
const afterInstall = hook('afterInstall');
|
|
77
|
+
const afterAllowTestTraffic = hook('afterAllowTestTraffic');
|
|
78
|
+
const beforeAllowTraffic = hook('beforeAllowTraffic');
|
|
79
|
+
const afterAllowTraffic = hook('afterAllowTraffic');
|
|
80
|
+
return {
|
|
81
|
+
Hooks: [
|
|
82
|
+
...beforeInstall,
|
|
83
|
+
...afterInstall,
|
|
84
|
+
...afterAllowTestTraffic,
|
|
85
|
+
...beforeAllowTraffic,
|
|
86
|
+
...afterAllowTraffic,
|
|
87
|
+
],
|
|
88
|
+
};
|
|
89
|
+
}
|
|
47
90
|
configureAwsVpcNetworkingWithSecurityGroups(awsvpcConfiguration) {
|
|
48
91
|
if (!awsvpcConfiguration) {
|
|
49
92
|
return undefined;
|
|
@@ -59,5 +102,5 @@ class EcsAppSpec {
|
|
|
59
102
|
}
|
|
60
103
|
exports.EcsAppSpec = EcsAppSpec;
|
|
61
104
|
_a = JSII_RTTI_SYMBOL_1;
|
|
62
|
-
EcsAppSpec[_a] = { fqn: "@cdklabs/cdk-ecs-codedeploy.EcsAppSpec", version: "0.0.
|
|
63
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZWNzLWFwcHNwZWMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFHQTs7OztHQUlHO0FBQ0gsTUFBYSxVQUFVO0lBTXJCLFlBQVksYUFBNEI7UUFDdEMsSUFBSSxDQUFDLGFBQWEsR0FBRyxhQUFhLENBQUM7SUFDckMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxRQUFRO1FBQ04sTUFBTSxPQUFPLEdBQUc7WUFDZCxPQUFPLEVBQUUsS0FBSztZQUNkLFNBQVMsRUFBRSxDQUFDO29CQUNWLGFBQWEsRUFBRTt3QkFDYixJQUFJLEVBQUUsbUJBQW1CO3dCQUN6QixVQUFVLEVBQUU7NEJBQ1YsY0FBYyxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsY0FBYyxDQUFDLGlCQUFpQjs0QkFDbkUsZ0JBQWdCLEVBQUU7Z0NBQ2hCLGFBQWEsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLGFBQWE7Z0NBQy9DLGFBQWEsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLGFBQWE7NkJBQ2hEOzRCQUNELGVBQWUsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLGVBQWU7NEJBQ25ELG9CQUFvQixFQUFFLElBQUksQ0FBQywyQ0FBMkMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLG1CQUFtQixDQUFDOzRCQUM5Ryx3QkFBd0IsRUFBRSxJQUFJLENBQUMsYUFBYSxDQUFDLHdCQUF3QixFQUFFLEdBQUcsQ0FBQyx3QkFBd0IsQ0FBQyxFQUFFO2dDQUNwRyxPQUFPO29DQUNMLElBQUksRUFBRSx3QkFBd0IsQ0FBQyxJQUFJO29DQUNuQyxnQkFBZ0IsRUFBRSx3QkFBd0IsQ0FBQyxnQkFBZ0I7b0NBQzNELE1BQU0sRUFBRSx3QkFBd0IsQ0FBQyxNQUFNO2lDQUN4QyxDQUFDOzRCQUNKLENBQUMsQ0FBQzt5QkFDSDtxQkFDRjtpQkFDRixDQUFDO1NBQ0gsQ0FBQztRQUNGLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRU8sMkNBQTJDLENBQUMsbUJBQXlDO1FBQzNGLElBQUksQ0FBQyxtQkFBbUIsRUFBRTtZQUN4QixPQUFPLFNBQVMsQ0FBQztTQUNsQjtRQUNELE9BQU87WUFDTCxtQkFBbUIsRUFBRTtnQkFDbkIsY0FBYyxFQUFFLG1CQUFtQixDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxVQUFVO2dCQUMzRSxPQUFPLEVBQUUsbUJBQW1CLENBQUMsR0FBRyxDQUFDLGFBQWEsQ0FBQyxtQkFBbUIsQ0FBQyxVQUFVLENBQUMsQ0FBQyxTQUFTO2dCQUN4RixjQUFjLEVBQUUsbUJBQW1CLENBQUMsY0FBYyxFQUFFLEdBQUcsQ0FBQyxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLGVBQWUsQ0FBQzthQUNwRjtTQUNGLENBQUM7SUFDSixDQUFDOztBQXRESCxnQ0F1REMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBlYzIgZnJvbSAnYXdzLWNkay1saWIvYXdzLWVjMic7XG5pbXBvcnQgKiBhcyBlY3MgZnJvbSAnYXdzLWNkay1saWIvYXdzLWVjcyc7XG5cbi8qKlxuICogUmVwcmVzZW50cyBhbiBBcHBTcGVjIHRvIGJlIHVzZWQgZm9yIEVDUyBzZXJ2aWNlcy5cbiAqXG4gKiBzZWU6IGh0dHBzOi8vZG9jcy5hd3MuYW1hem9uLmNvbS9jb2RlZGVwbG95L2xhdGVzdC91c2VyZ3VpZGUvcmVmZXJlbmNlLWFwcHNwZWMtZmlsZS1zdHJ1Y3R1cmUtcmVzb3VyY2VzLmh0bWwjcmVmZXJlbmNlLWFwcHNwZWMtZmlsZS1zdHJ1Y3R1cmUtcmVzb3VyY2VzLWVjc1xuICovXG5leHBvcnQgY2xhc3MgRWNzQXBwU3BlYyB7XG4gIC8qKlxuICAgKiBTZXJ2aWNlIHRvIHRhcmdldCBmb3IgdGhlIGRlcGxveW1lbnRcbiAgICovXG4gIHByaXZhdGUgcmVhZG9ubHkgdGFyZ2V0U2VydmljZTogVGFyZ2V0U2VydmljZTtcblxuICBjb25zdHJ1Y3Rvcih0YXJnZXRTZXJ2aWNlOiBUYXJnZXRTZXJ2aWNlKSB7XG4gICAgdGhpcy50YXJnZXRTZXJ2aWNlID0gdGFyZ2V0U2VydmljZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZW5kZXIgSlNPTiBzdHJpbmcgZm9yIHRoaXMgQXBwU3BlYyB0byBiZSB1c2VkXG4gICAqXG4gICAqIEByZXR1cm5zIHN0cmluZyByZXByZXNlbnRhdGlvbiBvZiB0aGlzIEFwcFNwZWNcbiAgICovXG4gIHRvU3RyaW5nKCk6IHN0cmluZyB7XG4gICAgY29uc3QgYXBwU3BlYyA9IHtcbiAgICAgIHZlcnNpb246ICcwLjAnLFxuICAgICAgUmVzb3VyY2VzOiBbe1xuICAgICAgICBUYXJnZXRTZXJ2aWNlOiB7XG4gICAgICAgICAgVHlwZTogJ0FXUzo6RUNTOjpTZXJ2aWNlJyxcbiAgICAgICAgICBQcm9wZXJ0aWVzOiB7XG4gICAgICAgICAgICBUYXNrRGVmaW5pdGlvbjogdGhpcy50YXJnZXRTZXJ2aWNlLnRhc2tEZWZpbml0aW9uLnRhc2tEZWZpbml0aW9uQXJuLFxuICAgICAgICAgICAgTG9hZEJhbGFuY2VySW5mbzoge1xuICAgICAgICAgICAgICBDb250YWluZXJOYW1lOiB0aGlzLnRhcmdldFNlcnZpY2UuY29udGFpbmVyTmFtZSxcbiAgICAgICAgICAgICAgQ29udGFpbmVyUG9ydDogdGhpcy50YXJnZXRTZXJ2aWNlLmNvbnRhaW5lclBvcnQsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgUGxhdGZvcm1WZXJzaW9uOiB0aGlzLnRhcmdldFNlcnZpY2UucGxhdGZvcm1WZXJzaW9uLFxuICAgICAgICAgICAgTmV0d29ya0NvbmZpZ3VyYXRpb246IHRoaXMuY29uZmlndXJlQXdzVnBjTmV0d29ya2luZ1dpdGhTZWN1cml0eUdyb3Vwcyh0aGlzLnRhcmdldFNlcnZpY2UuYXdzdnBjQ29uZmlndXJhdGlvbiksXG4gICAgICAgICAgICBDYXBhY2l0eVByb3ZpZGVyU3RyYXRlZ3k6IHRoaXMudGFyZ2V0U2VydmljZS5jYXBhY2l0eVByb3ZpZGVyU3RyYXRlZ3k/Lm1hcChjYXBhY2l0eVByb3ZpZGVyU3RyYXRlZ3kgPT4ge1xuICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIEJhc2U6IGNhcGFjaXR5UHJvdmlkZXJTdHJhdGVneS5iYXNlLFxuICAgICAgICAgICAgICAgIENhcGFjaXR5UHJvdmlkZXI6IGNhcGFjaXR5UHJvdmlkZXJTdHJhdGVneS5jYXBhY2l0eVByb3ZpZGVyLFxuICAgICAgICAgICAgICAgIFdlaWdodDogY2FwYWNpdHlQcm92aWRlclN0cmF0ZWd5LndlaWdodCxcbiAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICB9XSxcbiAgICB9O1xuICAgIHJldHVybiBKU09OLnN0cmluZ2lmeShhcHBTcGVjKTtcbiAgfVxuXG4gIHByaXZhdGUgY29uZmlndXJlQXdzVnBjTmV0d29ya2luZ1dpdGhTZWN1cml0eUdyb3Vwcyhhd3N2cGNDb25maWd1cmF0aW9uPzogQXdzdnBjQ29uZmlndXJhdGlvbikge1xuICAgIGlmICghYXdzdnBjQ29uZmlndXJhdGlvbikge1xuICAgICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgICB9XG4gICAgcmV0dXJuIHtcbiAgICAgIGF3c3ZwY0NvbmZpZ3VyYXRpb246IHtcbiAgICAgICAgYXNzaWduUHVibGljSXA6IGF3c3ZwY0NvbmZpZ3VyYXRpb24uYXNzaWduUHVibGljSXAgPyAnRU5BQkxFRCcgOiAnRElTQUJMRUQnLFxuICAgICAgICBzdWJuZXRzOiBhd3N2cGNDb25maWd1cmF0aW9uLnZwYy5zZWxlY3RTdWJuZXRzKGF3c3ZwY0NvbmZpZ3VyYXRpb24udnBjU3VibmV0cykuc3VibmV0SWRzLFxuICAgICAgICBzZWN1cml0eUdyb3VwczogYXdzdnBjQ29uZmlndXJhdGlvbi5zZWN1cml0eUdyb3Vwcz8ubWFwKChzZykgPT4gc2cuc2VjdXJpdHlHcm91cElkKSxcbiAgICAgIH0sXG4gICAgfTtcbiAgfVxufVxuXG4vKipcbiAqIERlc2NyaWJlIHRoZSB0YXJnZXQgZm9yIENvZGVEZXBsb3kgdG8gdXNlIHdoZW4gY3JlYXRpbmcgYSBkZXBsb3ltZW50IGZvciBhbiBlY3MuRWNzRGVwbG95bWVudEdyb3VwLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIFRhcmdldFNlcnZpY2Uge1xuICAvKipcbiAgICogVGhlIFRhc2tEZWZpbnRpb24gdG8gZGVwbG95IHRvIHRoZSB0YXJnZXQgc2VydmljZXMuXG4gICAqL1xuICByZWFkb25seSB0YXNrRGVmaW5pdGlvbjogZWNzLklUYXNrRGVmaW5pdGlvbjtcblxuICAvKipcbiAgICogVGhlIG5hbWUgb2YgdGhlIEFtYXpvbiBFQ1MgY29udGFpbmVyIHRoYXQgY29udGFpbnMgeW91ciBBbWF6b24gRUNTIGFwcGxpY2F0aW9uLiBJdCBtdXN0IGJlIGEgY29udGFpbmVyIHNwZWNpZmllZCBpbiB5b3VyIEFtYXpvbiBFQ1MgdGFzayBkZWZpbml0aW9uLlxuICAgKi9cbiAgcmVhZG9ubHkgY29udGFpbmVyTmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgcG9ydCBvbiB0aGUgY29udGFpbmVyIHdoZXJlIHRyYWZmaWMgd2lsbCBiZSByb3V0ZWQgdG8uXG4gICAqL1xuICByZWFkb25seSBjb250YWluZXJQb3J0OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFRoZSBwbGF0Zm9ybSB2ZXJzaW9uIG9mIHRoZSBGYXJnYXRlIHRhc2tzIGluIHRoZSBkZXBsb3llZCBBbWF6b24gRUNTIHNlcnZpY2UuXG4gICAqIHNlZTogaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL0FtYXpvbkVDUy9sYXRlc3QvZGV2ZWxvcGVyZ3VpZGUvcGxhdGZvcm1fdmVyc2lvbnMuaHRtbFxuICAgKlxuICAgKiBAZGVmYXVsdCBMQVRFU1RcbiAgICovXG4gIHJlYWRvbmx5IHBsYXRmb3JtVmVyc2lvbj86IGVjcy5GYXJnYXRlUGxhdGZvcm1WZXJzaW9uO1xuXG4gIC8qKlxuICAgKiBOZXR3b3JrIGNvbmZpZ3VyYXRpb24gZm9yIEVDUyBzZXJ2aWNlcyB0aGF0IGhhdmUgYSBuZXR3b3JrIHR5cGUgb2YgYGF3c3ZwY2AuXG4gICAqXG4gICAqIEBkZWZhdWx0IHJldXNlIGN1cnJlbnQgbmV0d29yayBzZXR0aW5ncyBmb3IgRUNTIHNlcnZpY2UuXG4gICAqL1xuICByZWFkb25seSBhd3N2cGNDb25maWd1cmF0aW9uPzogQXdzdnBjQ29uZmlndXJhdGlvbjtcblxuICAvKipcbiAgICogQSBsaXN0IG9mIEFtYXpvbiBFQ1MgY2FwYWNpdHkgcHJvdmlkZXJzIHRvIHVzZSBmb3IgdGhlIGRlcGxveW1lbnQuXG4gICAqXG4gICAqIEBkZWZhdWx0IHJldXNlIGN1cnJlbnQgY2FwY2l0eSBwcm92aWRlciBzdHJhdGVneSBmb3IgRUNTIHNlcnZpY2UuXG4gICAqL1xuICByZWFkb25seSBjYXBhY2l0eVByb3ZpZGVyU3RyYXRlZ3k/OiBlY3MuQ2FwYWNpdHlQcm92aWRlclN0cmF0ZWd5W107XG5cbn1cblxuLyoqXG4gKiBOZXR3b3JrIGNvbmZpZ3VyYXRpb24gZm9yIEVDUyBzZXJ2aWNlcyB0aGF0IGhhdmUgYSBuZXR3b3JrIHR5cGUgb2YgYGF3c3ZwY2AuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQXdzdnBjQ29uZmlndXJhdGlvbiB7XG4gIC8qKlxuICAgKiBUaGUgVlBDIHRvIHVzZSBmb3IgdGhlIHRhc2suXG4gICAqL1xuICByZWFkb25seSB2cGM6IGVjMi5JVnBjO1xuXG4gIC8qKlxuICAgKiBUaGUgU3VibmV0cyB0byB1c2UgZm9yIHRoZSB0YXNrLlxuICAgKi9cbiAgcmVhZG9ubHkgdnBjU3VibmV0czogZWMyLlN1Ym5ldFNlbGVjdGlvbjtcblxuICAvKipcbiAgICogVGhlIFNlY3VyaXR5IEdyb3VwcyB0byB1c2UgZm9yIHRoZSB0YXNrLlxuICAgKi9cbiAgcmVhZG9ubHkgc2VjdXJpdHlHcm91cHM6IGVjMi5JU2VjdXJpdHlHcm91cFtdO1xuXG4gIC8qKlxuICAgKiBBc3NpZ24gYSBwdWJsaWMgSVAgYWRkcmVzcyB0byB0aGUgdGFzay5cbiAgICovXG4gIHJlYWRvbmx5IGFzc2lnblB1YmxpY0lwOiBib29sZWFuO1xufSJdfQ==
|
|
105
|
+
EcsAppSpec[_a] = { fqn: "@cdklabs/cdk-ecs-codedeploy.EcsAppSpec", version: "0.0.155" };
|
|
106
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZWNzLWFwcHNwZWMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFJQTs7OztHQUlHO0FBQ0gsTUFBYSxVQUFVO0lBVXJCLFlBQVksYUFBNEIsRUFBRSxLQUFvQjtRQUM1RCxJQUFJLENBQUMsYUFBYSxHQUFHLGFBQWEsQ0FBQztRQUNuQyxJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztJQUNyQixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILFFBQVE7UUFDTixNQUFNLE9BQU8sR0FBRztZQUNkLE9BQU8sRUFBRSxLQUFLO1lBQ2QsU0FBUyxFQUFFLENBQUM7b0JBQ1YsYUFBYSxFQUFFO3dCQUNiLElBQUksRUFBRSxtQkFBbUI7d0JBQ3pCLFVBQVUsRUFBRTs0QkFDVixjQUFjLEVBQUUsSUFBSSxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUMsaUJBQWlCOzRCQUNuRSxnQkFBZ0IsRUFBRTtnQ0FDaEIsYUFBYSxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsYUFBYTtnQ0FDL0MsYUFBYSxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsYUFBYTs2QkFDaEQ7NEJBQ0QsZUFBZSxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsZUFBZTs0QkFDbkQsb0JBQW9CLEVBQUUsSUFBSSxDQUFDLDJDQUEyQyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsbUJBQW1CLENBQUM7NEJBQzlHLHdCQUF3QixFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsd0JBQXdCLEVBQUUsR0FBRyxDQUFDLHdCQUF3QixDQUFDLEVBQUU7Z0NBQ3BHLE9BQU87b0NBQ0wsSUFBSSxFQUFFLHdCQUF3QixDQUFDLElBQUk7b0NBQ25DLGdCQUFnQixFQUFFLHdCQUF3QixDQUFDLGdCQUFnQjtvQ0FDM0QsTUFBTSxFQUFFLHdCQUF3QixDQUFDLE1BQU07aUNBQ3hDLENBQUM7NEJBQ0osQ0FBQyxDQUFDO3lCQUNIO3FCQUNGO2lCQUNGLENBQUM7WUFDRixHQUFHLElBQUksQ0FBQyxZQUFZLEVBQUU7U0FDdkIsQ0FBQztRQUNGLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNqQyxDQUFDO0lBRU8sWUFBWTtRQUNsQixJQUFJLElBQUksQ0FBQyxLQUFLLElBQUksU0FBUyxFQUFFO1lBQzNCLE9BQU8sRUFBRSxDQUFDO1NBQ1g7UUFDRCxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDO1FBQ3pCLElBQ0UsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLElBQUksU0FBUztZQUNyQyxJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksSUFBSSxTQUFTO1lBQ3BDLElBQUksQ0FBQyxLQUFLLENBQUMscUJBQXFCLElBQUksU0FBUztZQUM3QyxJQUFJLENBQUMsS0FBSyxDQUFDLGtCQUFrQixJQUFJLFNBQVM7WUFDMUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsSUFBSSxTQUFTLEVBQ3pDO1lBQ0EsT0FBTyxFQUFFLENBQUM7U0FDWDtRQUNELE1BQU0sVUFBVSxHQUFHLENBQUMsQ0FBUyxFQUFFLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFdBQVcsRUFBRSxHQUFHLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDdkUsTUFBTSxJQUFJLEdBQUcsQ0FBQyxJQUF3QixFQUFFLEVBQUU7WUFDeEMsTUFBTSxTQUFTLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQzlCLElBQUksU0FBUyxJQUFJLFNBQVMsRUFBRTtnQkFDMUIsT0FBTyxFQUFFLENBQUM7YUFDWDtpQkFBTTtnQkFDTCxPQUFPLENBQUM7d0JBQ04sQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUMsRUFDaEIsT0FBTyxTQUFTLEtBQUssUUFBUTs0QkFDM0IsQ0FBQyxDQUFDLFNBQVM7NEJBQ1gsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxXQUFXO3FCQUM1QixDQUFDLENBQUM7YUFDSjtRQUNILENBQUMsQ0FBQztRQUNGLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUM1QyxNQUFNLFlBQVksR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7UUFDMUMsTUFBTSxxQkFBcUIsR0FBRyxJQUFJLENBQUMsdUJBQXVCLENBQUMsQ0FBQztRQUM1RCxNQUFNLGtCQUFrQixHQUFHLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDO1FBQ3RELE1BQU0saUJBQWlCLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLENBQUM7UUFFcEQsT0FBTztZQUNMLEtBQUssRUFBRTtnQkFDTCxHQUFHLGFBQWE7Z0JBQ2hCLEdBQUcsWUFBWTtnQkFDZixHQUFHLHFCQUFxQjtnQkFDeEIsR0FBRyxrQkFBa0I7Z0JBQ3JCLEdBQUcsaUJBQWlCO2FBQ3JCO1NBQ0YsQ0FBQztJQUNKLENBQUM7SUFFTywyQ0FBMkMsQ0FBQyxtQkFBeUM7UUFDM0YsSUFBSSxDQUFDLG1CQUFtQixFQUFFO1lBQ3hCLE9BQU8sU0FBUyxDQUFDO1NBQ2xCO1FBQ0QsT0FBTztZQUNMLG1CQUFtQixFQUFFO2dCQUNuQixjQUFjLEVBQUUsbUJBQW1CLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLFVBQVU7Z0JBQzNFLE9BQU8sRUFBRSxtQkFBbUIsQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLG1CQUFtQixDQUFDLFVBQVUsQ0FBQyxDQUFDLFNBQVM7Z0JBQ3hGLGNBQWMsRUFBRSxtQkFBbUIsQ0FBQyxjQUFjLEVBQUUsR0FBRyxDQUFDLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsZUFBZSxDQUFDO2FBQ3BGO1NBQ0YsQ0FBQztJQUNKLENBQUM7O0FBekdILGdDQTBHQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGVjMiBmcm9tICdhd3MtY2RrLWxpYi9hd3MtZWMyJztcbmltcG9ydCAqIGFzIGVjcyBmcm9tICdhd3MtY2RrLWxpYi9hd3MtZWNzJztcbmltcG9ydCAqIGFzIGxhbWJkYSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtbGFtYmRhJztcblxuLyoqXG4gKiBSZXByZXNlbnRzIGFuIEFwcFNwZWMgdG8gYmUgdXNlZCBmb3IgRUNTIHNlcnZpY2VzLlxuICpcbiAqIHNlZTogaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2NvZGVkZXBsb3kvbGF0ZXN0L3VzZXJndWlkZS9yZWZlcmVuY2UtYXBwc3BlYy1maWxlLXN0cnVjdHVyZS1yZXNvdXJjZXMuaHRtbCNyZWZlcmVuY2UtYXBwc3BlYy1maWxlLXN0cnVjdHVyZS1yZXNvdXJjZXMtZWNzXG4gKi9cbmV4cG9ydCBjbGFzcyBFY3NBcHBTcGVjIHtcbiAgLyoqXG4gICAqIFNlcnZpY2UgdG8gdGFyZ2V0IGZvciB0aGUgZGVwbG95bWVudFxuICAgKi9cbiAgcHJpdmF0ZSByZWFkb25seSB0YXJnZXRTZXJ2aWNlOiBUYXJnZXRTZXJ2aWNlO1xuICAvKipcbiAgICogT3B0aW9uYWwgbGlmZWN5Y2xlIGhvb2tzXG4gICAqL1xuICBwcml2YXRlIHJlYWRvbmx5IGhvb2tzPzogQXBwU3BlY0hvb2tzO1xuXG4gIGNvbnN0cnVjdG9yKHRhcmdldFNlcnZpY2U6IFRhcmdldFNlcnZpY2UsIGhvb2tzPzogQXBwU3BlY0hvb2tzKSB7XG4gICAgdGhpcy50YXJnZXRTZXJ2aWNlID0gdGFyZ2V0U2VydmljZTtcbiAgICB0aGlzLmhvb2tzID0gaG9va3M7XG4gIH1cblxuICAvKipcbiAgICogUmVuZGVyIEpTT04gc3RyaW5nIGZvciB0aGlzIEFwcFNwZWMgdG8gYmUgdXNlZFxuICAgKlxuICAgKiBAcmV0dXJucyBzdHJpbmcgcmVwcmVzZW50YXRpb24gb2YgdGhpcyBBcHBTcGVjXG4gICAqL1xuICB0b1N0cmluZygpOiBzdHJpbmcge1xuICAgIGNvbnN0IGFwcFNwZWMgPSB7XG4gICAgICB2ZXJzaW9uOiAnMC4wJyxcbiAgICAgIFJlc291cmNlczogW3tcbiAgICAgICAgVGFyZ2V0U2VydmljZToge1xuICAgICAgICAgIFR5cGU6ICdBV1M6OkVDUzo6U2VydmljZScsXG4gICAgICAgICAgUHJvcGVydGllczoge1xuICAgICAgICAgICAgVGFza0RlZmluaXRpb246IHRoaXMudGFyZ2V0U2VydmljZS50YXNrRGVmaW5pdGlvbi50YXNrRGVmaW5pdGlvbkFybixcbiAgICAgICAgICAgIExvYWRCYWxhbmNlckluZm86IHtcbiAgICAgICAgICAgICAgQ29udGFpbmVyTmFtZTogdGhpcy50YXJnZXRTZXJ2aWNlLmNvbnRhaW5lck5hbWUsXG4gICAgICAgICAgICAgIENvbnRhaW5lclBvcnQ6IHRoaXMudGFyZ2V0U2VydmljZS5jb250YWluZXJQb3J0LFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIFBsYXRmb3JtVmVyc2lvbjogdGhpcy50YXJnZXRTZXJ2aWNlLnBsYXRmb3JtVmVyc2lvbixcbiAgICAgICAgICAgIE5ldHdvcmtDb25maWd1cmF0aW9uOiB0aGlzLmNvbmZpZ3VyZUF3c1ZwY05ldHdvcmtpbmdXaXRoU2VjdXJpdHlHcm91cHModGhpcy50YXJnZXRTZXJ2aWNlLmF3c3ZwY0NvbmZpZ3VyYXRpb24pLFxuICAgICAgICAgICAgQ2FwYWNpdHlQcm92aWRlclN0cmF0ZWd5OiB0aGlzLnRhcmdldFNlcnZpY2UuY2FwYWNpdHlQcm92aWRlclN0cmF0ZWd5Py5tYXAoY2FwYWNpdHlQcm92aWRlclN0cmF0ZWd5ID0+IHtcbiAgICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICBCYXNlOiBjYXBhY2l0eVByb3ZpZGVyU3RyYXRlZ3kuYmFzZSxcbiAgICAgICAgICAgICAgICBDYXBhY2l0eVByb3ZpZGVyOiBjYXBhY2l0eVByb3ZpZGVyU3RyYXRlZ3kuY2FwYWNpdHlQcm92aWRlcixcbiAgICAgICAgICAgICAgICBXZWlnaHQ6IGNhcGFjaXR5UHJvdmlkZXJTdHJhdGVneS53ZWlnaHQsXG4gICAgICAgICAgICAgIH07XG4gICAgICAgICAgICB9KSxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfV0sXG4gICAgICAuLi50aGlzLmhvb2tzU2VjdGlvbigpLFxuICAgIH07XG4gICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KGFwcFNwZWMpO1xuICB9XG5cbiAgcHJpdmF0ZSBob29rc1NlY3Rpb24oKSB7XG4gICAgaWYgKHRoaXMuaG9va3MgPT0gdW5kZWZpbmVkKSB7XG4gICAgICByZXR1cm4ge307XG4gICAgfVxuICAgIGNvbnN0IGhvb2tzID0gdGhpcy5ob29rcztcbiAgICBpZiAoXG4gICAgICB0aGlzLmhvb2tzLmJlZm9yZUluc3RhbGwgPT0gdW5kZWZpbmVkICYmXG4gICAgICB0aGlzLmhvb2tzLmFmdGVySW5zdGFsbCA9PSB1bmRlZmluZWQgJiZcbiAgICAgIHRoaXMuaG9va3MuYWZ0ZXJBbGxvd1Rlc3RUcmFmZmljID09IHVuZGVmaW5lZCAmJlxuICAgICAgdGhpcy5ob29rcy5iZWZvcmVBbGxvd1RyYWZmaWMgPT0gdW5kZWZpbmVkICYmXG4gICAgICB0aGlzLmhvb2tzLmFmdGVyQWxsb3dUcmFmZmljID09IHVuZGVmaW5lZFxuICAgICkge1xuICAgICAgcmV0dXJuIHt9O1xuICAgIH1cbiAgICBjb25zdCBjYXBpdGFsaXplID0gKHM6IHN0cmluZykgPT4gcyAmJiBzWzBdLnRvVXBwZXJDYXNlKCkgKyBzLnNsaWNlKDEpO1xuICAgIGNvbnN0IGhvb2sgPSAobmFtZToga2V5b2YgQXBwU3BlY0hvb2tzKSA9PiB7XG4gICAgICBjb25zdCBob29rVmFsdWUgPSBob29rc1tuYW1lXTtcbiAgICAgIGlmIChob29rVmFsdWUgPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHJldHVybiBbXTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHJldHVybiBbe1xuICAgICAgICAgIFtjYXBpdGFsaXplKG5hbWUpXTpcbiAgICAgICAgICAgIHR5cGVvZiBob29rVmFsdWUgPT09ICdzdHJpbmcnXG4gICAgICAgICAgICAgID8gaG9va1ZhbHVlXG4gICAgICAgICAgICAgIDogaG9va1ZhbHVlLmZ1bmN0aW9uQXJuLFxuICAgICAgICB9XTtcbiAgICAgIH1cbiAgICB9O1xuICAgIGNvbnN0IGJlZm9yZUluc3RhbGwgPSBob29rKCdiZWZvcmVJbnN0YWxsJyk7XG4gICAgY29uc3QgYWZ0ZXJJbnN0YWxsID0gaG9vaygnYWZ0ZXJJbnN0YWxsJyk7XG4gICAgY29uc3QgYWZ0ZXJBbGxvd1Rlc3RUcmFmZmljID0gaG9vaygnYWZ0ZXJBbGxvd1Rlc3RUcmFmZmljJyk7XG4gICAgY29uc3QgYmVmb3JlQWxsb3dUcmFmZmljID0gaG9vaygnYmVmb3JlQWxsb3dUcmFmZmljJyk7XG4gICAgY29uc3QgYWZ0ZXJBbGxvd1RyYWZmaWMgPSBob29rKCdhZnRlckFsbG93VHJhZmZpYycpO1xuXG4gICAgcmV0dXJuIHtcbiAgICAgIEhvb2tzOiBbXG4gICAgICAgIC4uLmJlZm9yZUluc3RhbGwsXG4gICAgICAgIC4uLmFmdGVySW5zdGFsbCxcbiAgICAgICAgLi4uYWZ0ZXJBbGxvd1Rlc3RUcmFmZmljLFxuICAgICAgICAuLi5iZWZvcmVBbGxvd1RyYWZmaWMsXG4gICAgICAgIC4uLmFmdGVyQWxsb3dUcmFmZmljLFxuICAgICAgXSxcbiAgICB9O1xuICB9XG5cbiAgcHJpdmF0ZSBjb25maWd1cmVBd3NWcGNOZXR3b3JraW5nV2l0aFNlY3VyaXR5R3JvdXBzKGF3c3ZwY0NvbmZpZ3VyYXRpb24/OiBBd3N2cGNDb25maWd1cmF0aW9uKSB7XG4gICAgaWYgKCFhd3N2cGNDb25maWd1cmF0aW9uKSB7XG4gICAgICByZXR1cm4gdW5kZWZpbmVkO1xuICAgIH1cbiAgICByZXR1cm4ge1xuICAgICAgYXdzdnBjQ29uZmlndXJhdGlvbjoge1xuICAgICAgICBhc3NpZ25QdWJsaWNJcDogYXdzdnBjQ29uZmlndXJhdGlvbi5hc3NpZ25QdWJsaWNJcCA/ICdFTkFCTEVEJyA6ICdESVNBQkxFRCcsXG4gICAgICAgIHN1Ym5ldHM6IGF3c3ZwY0NvbmZpZ3VyYXRpb24udnBjLnNlbGVjdFN1Ym5ldHMoYXdzdnBjQ29uZmlndXJhdGlvbi52cGNTdWJuZXRzKS5zdWJuZXRJZHMsXG4gICAgICAgIHNlY3VyaXR5R3JvdXBzOiBhd3N2cGNDb25maWd1cmF0aW9uLnNlY3VyaXR5R3JvdXBzPy5tYXAoKHNnKSA9PiBzZy5zZWN1cml0eUdyb3VwSWQpLFxuICAgICAgfSxcbiAgICB9O1xuICB9XG59XG5cbi8qKlxuICogRGVzY3JpYmUgdGhlIHRhcmdldCBmb3IgQ29kZURlcGxveSB0byB1c2Ugd2hlbiBjcmVhdGluZyBhIGRlcGxveW1lbnQgZm9yIGFuIGVjcy5FY3NEZXBsb3ltZW50R3JvdXAuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgVGFyZ2V0U2VydmljZSB7XG4gIC8qKlxuICAgKiBUaGUgVGFza0RlZmludGlvbiB0byBkZXBsb3kgdG8gdGhlIHRhcmdldCBzZXJ2aWNlcy5cbiAgICovXG4gIHJlYWRvbmx5IHRhc2tEZWZpbml0aW9uOiBlY3MuSVRhc2tEZWZpbml0aW9uO1xuXG4gIC8qKlxuICAgKiBUaGUgbmFtZSBvZiB0aGUgQW1hem9uIEVDUyBjb250YWluZXIgdGhhdCBjb250YWlucyB5b3VyIEFtYXpvbiBFQ1MgYXBwbGljYXRpb24uIEl0IG11c3QgYmUgYSBjb250YWluZXIgc3BlY2lmaWVkIGluIHlvdXIgQW1hem9uIEVDUyB0YXNrIGRlZmluaXRpb24uXG4gICAqL1xuICByZWFkb25seSBjb250YWluZXJOYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBwb3J0IG9uIHRoZSBjb250YWluZXIgd2hlcmUgdHJhZmZpYyB3aWxsIGJlIHJvdXRlZCB0by5cbiAgICovXG4gIHJlYWRvbmx5IGNvbnRhaW5lclBvcnQ6IG51bWJlcjtcblxuICAvKipcbiAgICogVGhlIHBsYXRmb3JtIHZlcnNpb24gb2YgdGhlIEZhcmdhdGUgdGFza3MgaW4gdGhlIGRlcGxveWVkIEFtYXpvbiBFQ1Mgc2VydmljZS5cbiAgICogc2VlOiBodHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vQW1hem9uRUNTL2xhdGVzdC9kZXZlbG9wZXJndWlkZS9wbGF0Zm9ybV92ZXJzaW9ucy5odG1sXG4gICAqXG4gICAqIEBkZWZhdWx0IExBVEVTVFxuICAgKi9cbiAgcmVhZG9ubHkgcGxhdGZvcm1WZXJzaW9uPzogZWNzLkZhcmdhdGVQbGF0Zm9ybVZlcnNpb247XG5cbiAgLyoqXG4gICAqIE5ldHdvcmsgY29uZmlndXJhdGlvbiBmb3IgRUNTIHNlcnZpY2VzIHRoYXQgaGF2ZSBhIG5ldHdvcmsgdHlwZSBvZiBgYXdzdnBjYC5cbiAgICpcbiAgICogQGRlZmF1bHQgcmV1c2UgY3VycmVudCBuZXR3b3JrIHNldHRpbmdzIGZvciBFQ1Mgc2VydmljZS5cbiAgICovXG4gIHJlYWRvbmx5IGF3c3ZwY0NvbmZpZ3VyYXRpb24/OiBBd3N2cGNDb25maWd1cmF0aW9uO1xuXG4gIC8qKlxuICAgKiBBIGxpc3Qgb2YgQW1hem9uIEVDUyBjYXBhY2l0eSBwcm92aWRlcnMgdG8gdXNlIGZvciB0aGUgZGVwbG95bWVudC5cbiAgICpcbiAgICogQGRlZmF1bHQgcmV1c2UgY3VycmVudCBjYXBjaXR5IHByb3ZpZGVyIHN0cmF0ZWd5IGZvciBFQ1Mgc2VydmljZS5cbiAgICovXG4gIHJlYWRvbmx5IGNhcGFjaXR5UHJvdmlkZXJTdHJhdGVneT86IGVjcy5DYXBhY2l0eVByb3ZpZGVyU3RyYXRlZ3lbXTtcblxufVxuXG4vKipcbiAqIE5ldHdvcmsgY29uZmlndXJhdGlvbiBmb3IgRUNTIHNlcnZpY2VzIHRoYXQgaGF2ZSBhIG5ldHdvcmsgdHlwZSBvZiBgYXdzdnBjYC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBd3N2cGNDb25maWd1cmF0aW9uIHtcbiAgLyoqXG4gICAqIFRoZSBWUEMgdG8gdXNlIGZvciB0aGUgdGFzay5cbiAgICovXG4gIHJlYWRvbmx5IHZwYzogZWMyLklWcGM7XG5cbiAgLyoqXG4gICAqIFRoZSBTdWJuZXRzIHRvIHVzZSBmb3IgdGhlIHRhc2suXG4gICAqL1xuICByZWFkb25seSB2cGNTdWJuZXRzOiBlYzIuU3VibmV0U2VsZWN0aW9uO1xuXG4gIC8qKlxuICAgKiBUaGUgU2VjdXJpdHkgR3JvdXBzIHRvIHVzZSBmb3IgdGhlIHRhc2suXG4gICAqL1xuICByZWFkb25seSBzZWN1cml0eUdyb3VwczogZWMyLklTZWN1cml0eUdyb3VwW107XG5cbiAgLyoqXG4gICAqIEFzc2lnbiBhIHB1YmxpYyBJUCBhZGRyZXNzIHRvIHRoZSB0YXNrLlxuICAgKi9cbiAgcmVhZG9ubHkgYXNzaWduUHVibGljSXA6IGJvb2xlYW47XG59XG5cbi8qKlxuICogTGlmZWN5Y2xlIGhvb2tzIGNvbmZpZ3VyYXRpb25cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBBcHBTcGVjSG9va3Mge1xuICAvKipcbiAgICogTGFtYmRhIG9yIEFSTiBvZiBhIGxhbWJkYSB0byBydW4gdGFza3MgYmVmb3JlIHRoZSByZXBsYWNlbWVudCB0YXNrIHNldCBpcyBjcmVhdGVkLlxuICAgKi9cbiAgcmVhZG9ubHkgYmVmb3JlSW5zdGFsbD86IHN0cmluZyB8IGxhbWJkYS5JRnVuY3Rpb247XG4gIC8qKlxuICAgKiBMYW1iZGEgb3IgQVJOIG9mIGEgbGFtYmRhIHRvIHJ1biB0YXNrcyBhZnRlciB0aGUgcmVwbGFjZW1lbnQgdGFzayBzZXQgaXMgY3JlYXRlZCBhbmQgb25lIG9mIHRoZSB0YXJnZXQgZ3JvdXBzIGlzIGFzc29jaWF0ZWQgd2l0aCBpdC5cbiAgICovXG4gIHJlYWRvbmx5IGFmdGVySW5zdGFsbD86IHN0cmluZyB8IGxhbWJkYS5JRnVuY3Rpb247XG4gIC8qKlxuICAgKiBMYW1iZGEgb3IgQVJOIG9mIGEgbGFtYmRhIHRvIHJ1biB0YXNrcyBhZnRlciB0aGUgdGVzdCBsaXN0ZW5lciBzZXJ2ZXMgdHJhZmZpYyB0byB0aGUgcmVwbGFjZW1lbnQgdGFzayBzZXQuXG4gICAqL1xuICByZWFkb25seSBhZnRlckFsbG93VGVzdFRyYWZmaWM/OiBzdHJpbmcgfCBsYW1iZGEuSUZ1bmN0aW9uO1xuICAvKipcbiAgICogTGFtYmRhIG9yIEFSTiBvZiBhIGxhbWJkYSB0byBydW4gdGFza3MgYWZ0ZXIgdGhlIHNlY29uZCB0YXJnZXQgZ3JvdXAgaXMgYXNzb2NpYXRlZCB3aXRoIHRoZSByZXBsYWNlbWVudCB0YXNrIHNldCwgYnV0IGJlZm9yZSB0cmFmZmljIGlzIHNoaWZ0ZWQgdG8gdGhlIHJlcGxhY2VtZW50IHRhc2sgc2V0LlxuICAgKi9cbiAgcmVhZG9ubHkgYmVmb3JlQWxsb3dUcmFmZmljPzogc3RyaW5nIHwgbGFtYmRhLklGdW5jdGlvbjtcbiAgLyoqXG4gICAqIExhbWJkYSBvciBBUk4gb2YgYSBsYW1iZGEgdG8gcnVuIHRhc2tzIGFmdGVyIHRoZSBzZWNvbmQgdGFyZ2V0IGdyb3VwIHNlcnZlcyB0cmFmZmljIHRvIHRoZSByZXBsYWNlbWVudCB0YXNrIHNldC5cbiAgICovXG4gIHJlYWRvbmx5IGFmdGVyQWxsb3dUcmFmZmljPzogc3RyaW5nIHwgbGFtYmRhLklGdW5jdGlvbjtcbn1cbiJdfQ==
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as cdk from 'aws-cdk-lib';
|
|
2
2
|
import * as codedeploy from 'aws-cdk-lib/aws-codedeploy';
|
|
3
3
|
import { Construct } from 'constructs';
|
|
4
|
-
import { TargetService } from '../ecs-appspec';
|
|
4
|
+
import { AppSpecHooks, TargetService } from '../ecs-appspec';
|
|
5
5
|
/**
|
|
6
6
|
* Construction properties of EcsDeployment.
|
|
7
7
|
*/
|
|
@@ -34,6 +34,12 @@ export interface EcsDeploymentProps {
|
|
|
34
34
|
* @default 30 minutes
|
|
35
35
|
*/
|
|
36
36
|
readonly timeout?: cdk.Duration;
|
|
37
|
+
/**
|
|
38
|
+
* Optional lifecycle hooks
|
|
39
|
+
*
|
|
40
|
+
* @default - no lifecycle hooks
|
|
41
|
+
*/
|
|
42
|
+
readonly hooks?: AppSpecHooks;
|
|
37
43
|
}
|
|
38
44
|
/**
|
|
39
45
|
* A CodeDeploy Deployment for a Amazon ECS service DeploymentGroup. An EcsDeploymentGroup
|
|
@@ -42,7 +42,7 @@ class EcsDeployment extends constructs_1.Construct {
|
|
|
42
42
|
autoRollbackConfigurationEnabled = 'false';
|
|
43
43
|
}
|
|
44
44
|
}
|
|
45
|
-
const appspec = new ecs_appspec_1.EcsAppSpec(props.targetService);
|
|
45
|
+
const appspec = new ecs_appspec_1.EcsAppSpec(props.targetService, props.hooks);
|
|
46
46
|
const deployment = new cdk.CustomResource(this, 'Resource', {
|
|
47
47
|
serviceToken: ecsDeploymentProvider.serviceToken,
|
|
48
48
|
resourceType: 'Custom::EcsDeployment',
|
|
@@ -61,5 +61,5 @@ class EcsDeployment extends constructs_1.Construct {
|
|
|
61
61
|
}
|
|
62
62
|
exports.EcsDeployment = EcsDeployment;
|
|
63
63
|
_a = JSII_RTTI_SYMBOL_1;
|
|
64
|
-
EcsDeployment[_a] = { fqn: "@cdklabs/cdk-ecs-codedeploy.EcsDeployment", version: "0.0.
|
|
65
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
64
|
+
EcsDeployment[_a] = { fqn: "@cdklabs/cdk-ecs-codedeploy.EcsDeployment", version: "0.0.155" };
|
|
65
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvZWNzLWRlcGxveW1lbnQvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSxtQ0FBbUM7QUFFbkMsMkNBQXVDO0FBQ3ZDLGdEQUF5RTtBQUN6RSx3RUFBbUU7QUFnRG5FOzs7Ozs7R0FNRztBQUNILE1BQWEsYUFBYyxTQUFRLHNCQUFTO0lBTTFDLFlBQW1CLEtBQXlCO1FBQzFDLEtBQUssQ0FBQyxLQUFLLENBQUMsZUFBZSxFQUFFLFlBQVksQ0FBQyxDQUFDO1FBRTNDLE1BQU0scUJBQXFCLEdBQUcsSUFBSSwrQ0FBcUIsQ0FBQyxJQUFJLEVBQUUsb0JBQW9CLEVBQUU7WUFDbEYsZUFBZSxFQUFFLEtBQUssQ0FBQyxlQUFlO1lBQ3RDLE9BQU8sRUFBRSxLQUFLLENBQUMsT0FBTyxJQUFJLEdBQUcsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztTQUNuRCxDQUFDLENBQUM7UUFFSCxJQUFJLCtCQUErQixHQUF3QixTQUFTLENBQUM7UUFDckUsSUFBSSxnQ0FBZ0MsR0FBd0IsU0FBUyxDQUFDO1FBQ3RFLElBQUksS0FBSyxDQUFDLFlBQVksRUFBRTtZQUN0QixJQUFJLE1BQU0sR0FBYyxFQUFFLENBQUM7WUFDM0IsSUFBSSxLQUFLLENBQUMsWUFBWSxDQUFDLGlCQUFpQixFQUFFO2dCQUN4QyxNQUFNLENBQUMsSUFBSSxDQUFDLDBCQUEwQixDQUFDLENBQUM7YUFDekM7WUFDRCxJQUFJLEtBQUssQ0FBQyxZQUFZLENBQUMsZ0JBQWdCLEVBQUU7Z0JBQ3ZDLE1BQU0sQ0FBQyxJQUFJLENBQUMsb0JBQW9CLENBQUMsQ0FBQzthQUNuQztZQUNELElBQUksS0FBSyxDQUFDLFlBQVksQ0FBQyxpQkFBaUIsRUFBRTtnQkFDeEMsTUFBTSxDQUFDLElBQUksQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO2FBQzNDO1lBQ0QsSUFBSSxNQUFNLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRTtnQkFDckIsZ0NBQWdDLEdBQUcsTUFBTSxDQUFDO2dCQUMxQywrQkFBK0IsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO2FBQ3BEO2lCQUFNO2dCQUNMLGdDQUFnQyxHQUFHLE9BQU8sQ0FBQzthQUM1QztTQUNGO1FBRUQsTUFBTSxPQUFPLEdBQUcsSUFBSSx3QkFBVSxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUUsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ2pFLE1BQU0sVUFBVSxHQUFHLElBQUksR0FBRyxDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsVUFBVSxFQUFFO1lBQzFELFlBQVksRUFBRSxxQkFBcUIsQ0FBQyxZQUFZO1lBQ2hELFlBQVksRUFBRSx1QkFBdUI7WUFDckMsVUFBVSxFQUFFO2dCQUNWLGVBQWUsRUFBRSxLQUFLLENBQUMsZUFBZSxDQUFDLFdBQVcsQ0FBQyxlQUFlO2dCQUNsRSxvQkFBb0IsRUFBRSxLQUFLLENBQUMsZUFBZSxDQUFDLGdCQUFnQixDQUFDLG9CQUFvQjtnQkFDakYsbUJBQW1CLEVBQUUsS0FBSyxDQUFDLGVBQWUsQ0FBQyxtQkFBbUI7Z0JBQzlELGdDQUFnQztnQkFDaEMsK0JBQStCO2dCQUMvQixXQUFXLEVBQUUsS0FBSyxDQUFDLFdBQVc7Z0JBQzlCLHNCQUFzQixFQUFFLE9BQU8sQ0FBQyxRQUFRLEVBQUU7YUFDM0M7U0FDRixDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsWUFBWSxHQUFHLFVBQVUsQ0FBQyxZQUFZLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDOUQsQ0FBQzs7QUFsREgsc0NBb0RDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgY2RrIGZyb20gJ2F3cy1jZGstbGliJztcbmltcG9ydCAqIGFzIGNvZGVkZXBsb3kgZnJvbSAnYXdzLWNkay1saWIvYXdzLWNvZGVkZXBsb3knO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5pbXBvcnQgeyBBcHBTcGVjSG9va3MsIEVjc0FwcFNwZWMsIFRhcmdldFNlcnZpY2UgfSBmcm9tICcuLi9lY3MtYXBwc3BlYyc7XG5pbXBvcnQgeyBFY3NEZXBsb3ltZW50UHJvdmlkZXIgfSBmcm9tICcuLi9lY3MtZGVwbG95bWVudC1wcm92aWRlcic7XG5cbi8qKlxuICogQ29uc3RydWN0aW9uIHByb3BlcnRpZXMgb2YgRWNzRGVwbG95bWVudC5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBFY3NEZXBsb3ltZW50UHJvcHMge1xuICAvKipcbiAgICogVGhlIGRlcGxveW1lbnQgZ3JvdXAgdG8gdGFyZ2V0IGZvciB0aGlzIGRlcGxveW1lbnQuXG4gICAqL1xuICByZWFkb25seSBkZXBsb3ltZW50R3JvdXA6IGNvZGVkZXBsb3kuSUVjc0RlcGxveW1lbnRHcm91cDtcblxuICAvKipcbiAgICogVGhlIEVDUyBzZXJ2aWNlIHRvIHRhcmdldCBmb3IgdGhlIGRlcGxveW1lbnQuXG4gICAqXG4gICAqIHNlZTogaHR0cHM6Ly9kb2NzLmF3cy5hbWF6b24uY29tL2NvZGVkZXBsb3kvbGF0ZXN0L3VzZXJndWlkZS9yZWZlcmVuY2UtYXBwc3BlYy1maWxlLXN0cnVjdHVyZS1yZXNvdXJjZXMuaHRtbCNyZWZlcmVuY2UtYXBwc3BlYy1maWxlLXN0cnVjdHVyZS1yZXNvdXJjZXMtZWNzXG4gICAqL1xuICByZWFkb25seSB0YXJnZXRTZXJ2aWNlOiBUYXJnZXRTZXJ2aWNlO1xuXG4gIC8qKlxuICAgKiBUaGUgY29uZmlndXJhdGlvbiBmb3Igcm9sbGJhY2sgaW4gdGhlIGV2ZW50IHRoYXQgYSBkZXBsb3ltZW50IGZhaWxzLlxuICAgKlxuICAgKiBAZGVmYXVsdDogbm8gYXV0b21hdGljIHJvbGxiYWNrIHRyaWdnZXJlZFxuICAgKi9cbiAgcmVhZG9ubHkgYXV0b1JvbGxiYWNrPzogY29kZWRlcGxveS5BdXRvUm9sbGJhY2tDb25maWc7XG5cbiAgLyoqXG4gICAqIFRoZSBkZXNjcmlwdGlvbiBmb3IgdGhlIGRlcGxveW1lbnQuXG4gICAqXG4gICAqIEBkZWZhdWx0IG5vIGRlc2NyaXB0aW9uXG4gICAqL1xuICByZWFkb25seSBkZXNjcmlwdGlvbj86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHRpbWVvdXQgZm9yIHRoZSBkZXBsb3ltZW50LiBJZiB0aGUgdGltZW91dCBpcyByZWFjaGVkLCBpdCB3aWxsIHRyaWdnZXIgYSByb2xsYmFjayBvZiB0aGUgc3RhY2suXG4gICAqXG4gICAqIEBkZWZhdWx0IDMwIG1pbnV0ZXNcbiAgICovXG4gIHJlYWRvbmx5IHRpbWVvdXQ/OiBjZGsuRHVyYXRpb247XG5cbiAgLyoqXG4gICAqIE9wdGlvbmFsIGxpZmVjeWNsZSBob29rc1xuICAgKlxuICAgKiBAZGVmYXVsdCAtIG5vIGxpZmVjeWNsZSBob29rc1xuICAgKi9cbiAgcmVhZG9ubHkgaG9va3M/OiBBcHBTcGVjSG9va3M7XG5cbn1cblxuLyoqXG4gKiBBIENvZGVEZXBsb3kgRGVwbG95bWVudCBmb3IgYSBBbWF6b24gRUNTIHNlcnZpY2UgRGVwbG95bWVudEdyb3VwLiBBbiBFY3NEZXBsb3ltZW50R3JvdXBcbiAqIG11c3Qgb25seSBoYXZlIDEgRWNzRGVwbG95bWVudC4gVGhpcyBsaW1pdCBpcyBlbmZvcmNlZCBieSByZW1vdmluZyB0aGUgc2NvcGUgYW5kIGlkXG4gKiBmcm9tIHRoZSBjb25zdHJ1Y3Rvci4gVGhlIHNjb3BlIHdpbGwgYWx3YXlzIGJlIHNldCB0byB0aGUgRWNzRGVwbG95bWVudEdyb3VwXG4gKiBhbmQgdGhlIGlkIHdpbGwgYWx3YXlzIGJlIHNldCB0byB0aGUgc3RyaW5nICdEZXBsb3ltZW50JyB0byBmb3JjZSBhbiBlcnJvciBpZiBtdWxpdGlwbGVcbiAqIEVjc0RlcGxveW1lbnQgY29uc3RydWN0cyBhcmUgY3JlYXRlZCBmb3IgYSBzaW5nbGUgRWNzRGVwbG95bWVudEdyb3VwLlxuICovXG5leHBvcnQgY2xhc3MgRWNzRGVwbG95bWVudCBleHRlbmRzIENvbnN0cnVjdCB7XG4gIC8qKlxuICAgKiBUaGUgaWQgb2YgdGhlIGRlcGxveW1lbnQgdGhhdCB3YXMgY3JlYXRlZC5cbiAgICovXG4gIGRlcGxveW1lbnRJZDogc3RyaW5nO1xuXG4gIHB1YmxpYyBjb25zdHJ1Y3Rvcihwcm9wczogRWNzRGVwbG95bWVudFByb3BzKSB7XG4gICAgc3VwZXIocHJvcHMuZGVwbG95bWVudEdyb3VwLCAnRGVwbG95bWVudCcpO1xuXG4gICAgY29uc3QgZWNzRGVwbG95bWVudFByb3ZpZGVyID0gbmV3IEVjc0RlcGxveW1lbnRQcm92aWRlcih0aGlzLCAnRGVwbG95bWVudFByb3ZpZGVyJywge1xuICAgICAgZGVwbG95bWVudEdyb3VwOiBwcm9wcy5kZXBsb3ltZW50R3JvdXAsXG4gICAgICB0aW1lb3V0OiBwcm9wcy50aW1lb3V0IHx8IGNkay5EdXJhdGlvbi5taW51dGVzKDMwKSxcbiAgICB9KTtcblxuICAgIGxldCBhdXRvUm9sbGJhY2tDb25maWd1cmF0aW9uRXZlbnRzIDogc3RyaW5nIHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkO1xuICAgIGxldCBhdXRvUm9sbGJhY2tDb25maWd1cmF0aW9uRW5hYmxlZCA6IHN0cmluZyB8IHVuZGVmaW5lZCA9IHVuZGVmaW5lZDtcbiAgICBpZiAocHJvcHMuYXV0b1JvbGxiYWNrKSB7XG4gICAgICBsZXQgZXZlbnRzIDogc3RyaW5nW10gPSBbXTtcbiAgICAgIGlmIChwcm9wcy5hdXRvUm9sbGJhY2suZGVwbG95bWVudEluQWxhcm0pIHtcbiAgICAgICAgZXZlbnRzLnB1c2goJ0RFUExPWU1FTlRfU1RPUF9PTl9BTEFSTScpO1xuICAgICAgfVxuICAgICAgaWYgKHByb3BzLmF1dG9Sb2xsYmFjay5mYWlsZWREZXBsb3ltZW50KSB7XG4gICAgICAgIGV2ZW50cy5wdXNoKCdERVBMT1lNRU5UX0ZBSUxVUkUnKTtcbiAgICAgIH1cbiAgICAgIGlmIChwcm9wcy5hdXRvUm9sbGJhY2suc3RvcHBlZERlcGxveW1lbnQpIHtcbiAgICAgICAgZXZlbnRzLnB1c2goJ0RFUExPWU1FTlRfU1RPUF9PTl9SRVFVRVNUJyk7XG4gICAgICB9XG4gICAgICBpZiAoZXZlbnRzLmxlbmd0aCA+IDApIHtcbiAgICAgICAgYXV0b1JvbGxiYWNrQ29uZmlndXJhdGlvbkVuYWJsZWQgPSAndHJ1ZSc7XG4gICAgICAgIGF1dG9Sb2xsYmFja0NvbmZpZ3VyYXRpb25FdmVudHMgPSBldmVudHMuam9pbignLCcpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgYXV0b1JvbGxiYWNrQ29uZmlndXJhdGlvbkVuYWJsZWQgPSAnZmFsc2UnO1xuICAgICAgfVxuICAgIH1cblxuICAgIGNvbnN0IGFwcHNwZWMgPSBuZXcgRWNzQXBwU3BlYyhwcm9wcy50YXJnZXRTZXJ2aWNlLCBwcm9wcy5ob29rcyk7XG4gICAgY29uc3QgZGVwbG95bWVudCA9IG5ldyBjZGsuQ3VzdG9tUmVzb3VyY2UodGhpcywgJ1Jlc291cmNlJywge1xuICAgICAgc2VydmljZVRva2VuOiBlY3NEZXBsb3ltZW50UHJvdmlkZXIuc2VydmljZVRva2VuLFxuICAgICAgcmVzb3VyY2VUeXBlOiAnQ3VzdG9tOjpFY3NEZXBsb3ltZW50JyxcbiAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgYXBwbGljYXRpb25OYW1lOiBwcm9wcy5kZXBsb3ltZW50R3JvdXAuYXBwbGljYXRpb24uYXBwbGljYXRpb25OYW1lLFxuICAgICAgICBkZXBsb3ltZW50Q29uZmlnTmFtZTogcHJvcHMuZGVwbG95bWVudEdyb3VwLmRlcGxveW1lbnRDb25maWcuZGVwbG95bWVudENvbmZpZ05hbWUsXG4gICAgICAgIGRlcGxveW1lbnRHcm91cE5hbWU6IHByb3BzLmRlcGxveW1lbnRHcm91cC5kZXBsb3ltZW50R3JvdXBOYW1lLFxuICAgICAgICBhdXRvUm9sbGJhY2tDb25maWd1cmF0aW9uRW5hYmxlZCxcbiAgICAgICAgYXV0b1JvbGxiYWNrQ29uZmlndXJhdGlvbkV2ZW50cyxcbiAgICAgICAgZGVzY3JpcHRpb246IHByb3BzLmRlc2NyaXB0aW9uLFxuICAgICAgICByZXZpc2lvbkFwcFNwZWNDb250ZW50OiBhcHBzcGVjLnRvU3RyaW5nKCksXG4gICAgICB9LFxuICAgIH0pO1xuICAgIHRoaXMuZGVwbG95bWVudElkID0gZGVwbG95bWVudC5nZXRBdHRTdHJpbmcoJ2RlcGxveW1lbnRJZCcpO1xuICB9XG5cbn1cbiJdfQ==
|
|
@@ -7,6 +7,7 @@ import { ApplicationListener, ApplicationTargetGroup, HealthCheck } from 'aws-cd
|
|
|
7
7
|
import { IBucket } from 'aws-cdk-lib/aws-s3';
|
|
8
8
|
import { Construct } from 'constructs';
|
|
9
9
|
import { ApiTestStep, ApiCanary } from '../api-canary';
|
|
10
|
+
import { AppSpecHooks } from '../ecs-appspec';
|
|
10
11
|
import { EcsDeployment } from '../ecs-deployment';
|
|
11
12
|
/**
|
|
12
13
|
* The properties for the ApplicationLoadBalancedCodeDeployedFargateService service.
|
|
@@ -91,6 +92,12 @@ export interface ApplicationLoadBalancedCodeDeployedFargateServiceProps extends
|
|
|
91
92
|
* @default - listenerPort + 1
|
|
92
93
|
*/
|
|
93
94
|
readonly testPort?: number;
|
|
95
|
+
/**
|
|
96
|
+
* Optional lifecycle hooks
|
|
97
|
+
*
|
|
98
|
+
* @default - no lifecycle hooks
|
|
99
|
+
*/
|
|
100
|
+
readonly hooks?: AppSpecHooks;
|
|
94
101
|
}
|
|
95
102
|
/**
|
|
96
103
|
* A Fargate service running on an ECS cluster fronted by an application load balancer and deployed by CodeDeploy.
|
|
@@ -142,6 +142,7 @@ class ApplicationLoadBalancedCodeDeployedFargateService extends aws_ecs_patterns
|
|
|
142
142
|
containerName: this.taskDefinition.defaultContainer.containerName,
|
|
143
143
|
containerPort: this.taskDefinition.defaultContainer.containerPort,
|
|
144
144
|
},
|
|
145
|
+
hooks: props.hooks,
|
|
145
146
|
});
|
|
146
147
|
}
|
|
147
148
|
addServiceAsTarget(service) {
|
|
@@ -150,5 +151,5 @@ class ApplicationLoadBalancedCodeDeployedFargateService extends aws_ecs_patterns
|
|
|
150
151
|
}
|
|
151
152
|
exports.ApplicationLoadBalancedCodeDeployedFargateService = ApplicationLoadBalancedCodeDeployedFargateService;
|
|
152
153
|
_a = JSII_RTTI_SYMBOL_1;
|
|
153
|
-
ApplicationLoadBalancedCodeDeployedFargateService[_a] = { fqn: "@cdklabs/cdk-ecs-codedeploy.ApplicationLoadBalancedCodeDeployedFargateService", version: "0.0.
|
|
154
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwbGljYXRpb24tbG9hZC1iYWxhbmNlZC1jb2RlZGVwbG95ZWQtZmFyZ2F0ZS1zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Vjcy1wYXR0ZXJucy9hcHBsaWNhdGlvbi1sb2FkLWJhbGFuY2VkLWNvZGVkZXBsb3llZC1mYXJnYXRlLXNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSx3RUFBeUQ7QUFDekQsNkNBQXVDO0FBQ3ZDLCtEQUEwRztBQUMxRywrREFBMkg7QUFDM0gsaURBQTRFO0FBQzVFLG1FQUFpSTtBQUNqSSx1RkFBbUo7QUFDbkosK0NBQTBGO0FBRTFGLDhDQUF1RDtBQUN2RCxzREFBa0Q7QUFtR2xEOztHQUVHO0FBQ0gsTUFBYSxpREFBa0QsU0FBUSx3REFBcUM7SUF5QzFHOztPQUVHO0lBQ0gsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUE2RDtRQUNyRyxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRTtZQUNmLEdBQUcsS0FBSztZQUNSLG9CQUFvQixFQUFFO2dCQUNwQixJQUFJLEVBQUUsa0NBQXdCLENBQUMsV0FBVzthQUMzQztTQUNGLENBQUMsQ0FBQztRQUVILElBQUksS0FBSyxDQUFDLG1CQUFtQixFQUFFO1lBQzdCLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLHNDQUFzQyxFQUFFLEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO1NBQ3pIO1FBQ0QsSUFBSSxLQUFLLENBQUMsV0FBVyxFQUFFO1lBQ3JCLElBQUksQ0FBQyxXQUFXLENBQUMsb0JBQW9CLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1NBQzFEO1FBQ0QsSUFBSSxDQUFDLGVBQWUsR0FBRyxLQUFLLENBQUMsZUFBZTtZQUMxQyxJQUFJLGVBQU0sQ0FBQyxJQUFJLEVBQUUsaUJBQWlCLEVBQUU7Z0JBQ2xDLFVBQVUs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LEVBQUUsS0FBSyxDQUFDLGlCQUFpQixJQUFJLHNCQUFRLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUN4RCxhQUFhLEVBQUU7Z0JBQ2IsY0FBYyxFQUFFLElBQUksQ0FBQyxjQUFjO2dCQUNuQyxhQUFhLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxnQkFBaUIsQ0FBQyxhQUFhO2dCQUNsRSxhQUFhLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxnQkFBaUIsQ0FBQyxhQUFhO2FBQ25FO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVTLGtCQUFrQixDQUFDLE9BQW9CO1FBQy9DLEtBQUssQ0FBQyxrQkFBa0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNwQyxDQUFDOztBQXJMSCw4R0FzTEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTY2hlZHVsZSB9IGZyb20gJ0Bhd3MtY2RrL2F3cy1zeW50aGV0aWNzLWFscGhhJztcbmltcG9ydCB7IER1cmF0aW9uIH0gZnJvbSAnYXdzLWNkay1saWInO1xuaW1wb3J0IHsgQWxhcm0sIEFsYXJtUnVsZSwgQ29tcGFyaXNvbk9wZXJhdG9yLCBDb21wb3NpdGVBbGFybSwgSUFsYXJtIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWNsb3Vkd2F0Y2gnO1xuaW1wb3J0IHsgRWNzQXBwbGljYXRpb24sIEVjc0RlcGxveW1lbnRDb25maWcsIEVjc0RlcGxveW1lbnRHcm91cCwgSUVjc0RlcGxveW1lbnRDb25maWcgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtY29kZWRlcGxveSc7XG5pbXBvcnQgeyBCYXNlU2VydmljZSwgRGVwbG95bWVudENvbnRyb2xsZXJUeXBlIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWVjcyc7XG5pbXBvcnQgeyBBcHBsaWNhdGlvbkxvYWRCYWxhbmNlZEZhcmdhdGVTZXJ2aWNlLCBBcHBsaWNhdGlvbkxvYWRCYWxhbmNlZEZhcmdhdGVTZXJ2aWNlUHJvcHMgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtZWNzLXBhdHRlcm5zJztcbmltcG9ydCB7IEFwcGxpY2F0aW9uTGlzdGVuZXIsIEFwcGxpY2F0aW9uUHJvdG9jb2wsIEFwcGxpY2F0aW9uVGFyZ2V0R3JvdXAsIEhlYWx0aENoZWNrLCBUYXJnZXRUeXBlIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWVsYXN0aWNsb2FkYmFsYW5jaW5ndjInO1xuaW1wb3J0IHsgQmxvY2tQdWJsaWNBY2Nlc3MsIEJ1Y2tldCwgQnVja2V0RW5jcnlwdGlvbiwgSUJ1Y2tldCB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1zMyc7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcbmltcG9ydCB7IEFwaVRlc3RTdGVwLCBBcGlDYW5hcnkgfSBmcm9tICcuLi9hcGktY2FuYXJ5JztcbmltcG9ydCB7IEVjc0RlcGxveW1lbnQgfSBmcm9tICcuLi9lY3MtZGVwbG95bWVudCc7XG5cbi8qKlxuICogVGhlIHByb3BlcnRpZXMgZm9yIHRoZSBBcHBsaWNhdGlvbkxvYWRCYWxhbmNlZENvZGVEZXBsb3llZEZhcmdhdGVTZXJ2aWNlIHNlcnZpY2UuXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgQXBwbGljYXRpb25Mb2FkQmFsYW5jZWRDb2RlRGVwbG95ZWRGYXJnYXRlU2VydmljZVByb3BzIGV4dGVuZHMgQXBwbGljYXRpb25Mb2FkQmFsYW5jZWRGYXJnYXRlU2VydmljZVByb3BzIHtcbiAgLyoqXG4gICAqIFRoZSB0aW1lb3V0IGZvciBhIENvZGVEZXBsb3kgZGVwbG95bWVudC5cbiAgICpcbiAgICogQGRlZmF1bHQgLSA2MCBtaW51dGVzXG4gICAqL1xuICByZWFkb25seSBkZXBsb3ltZW50VGltZW91dD86IER1cmF0aW9uO1xuXG4gIC8qKlxuICAgKiBUaGUgdGltZSB0byB3YWl0IGJlZm9yZSB0ZXJtaW5hdGluZyB0aGUgb3JpZ2luYWwgKGJsdWUpIHRhc2sgc2V0LlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIDEwIG1pbnV0ZXNcbiAgICovXG4gIHJlYWRvbmx5IHRlcm1pbmF0aW9uV2FpdFRpbWU/OiBEdXJhdGlvbjtcblxuICAvKipcbiAgICogVGhlIGRlcGxveW1lbnQgY29uZmlndXJhdGlvbiB0byB1c2UgZm9yIHRoZSBkZXBsb3ltZW50IGdyb3VwLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIEVjc0RlcGxveW1lbnRDb25maWcuQUxMX0FUX09OQ0VcbiAgICovXG4gIHJlYWRvbmx5IGRlcGxveW1lbnRDb25maWc/OiBJRWNzRGVwbG95bWVudENvbmZpZztcblxuICAvKipcbiAgICogVGhlIGFtb3VudCBvZiB0aW1lIGZvciBFTEIgdG8gd2FpdCBiZWZvcmUgY2hhbmdpbmcgdGhlIHN0YXRlIG9mIGEgZGVyZWdpc3RlcmluZyB0YXJnZXRcbiAgICogZnJvbSAnZHJhaW5pbmcnIHRvICd1bnVzZWQnLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIDMwMCBzZWNvbmRzXG4gICAqL1xuICByZWFkb25seSBkZXJlZ2lzdHJhdGlvbkRlbGF5PzogRHVyYXRpb247XG5cbiAgLyoqXG4gICAqIFRoZSBoZWFsdGhjaGVjayB0byBjb25maWd1cmUgb24gdGhlIEFwcGxpY2F0aW9uIExvYWQgQmFsYW5jZXIgdGFyZ2V0IGdyb3Vwcy5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBubyBoZWFsdGggY2hlY2sgaXMgY29uZmlndXJlZFxuICAgKi9cbiAgcmVhZG9ubHkgaGVhbHRoQ2hlY2s/OiBIZWFsdGhDaGVjaztcblxuICAvKipcbiAgICogVGhlIGJ1Y2tldCB0byB1c2UgZm9yIGFjY2VzcyBsb2dzIGZyb20gdGhlIEFwcGxpY2F0aW9uIExvYWQgQmFsYW5jZXIuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gYSBuZXcgUzMgYnVja2V0IHdpbGwgYmUgY3JlYXRlZFxuICAgKi9cbiAgcmVhZG9ubHkgYWNjZXNzTG9nQnVja2V0PzogSUJ1Y2tldDtcblxuICAvKipcbiAgICogVGhlIHByZWZpeCB0byB1c2UgZm9yIGFjY2VzcyBsb2dzIGZyb20gdGhlIEFwcGxpY2F0aW9uIExvYWQgQmFsYW5jZXIuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gbm9uZVxuICAgKi9cbiAgcmVhZG9ubHkgYWNjZXNzTG9nUHJlZml4Pzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgdGhyZXNob2xkIGZvciByZXNwb25zZSB0aW1lIGFsYXJtLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIG5vIGFsYXJtIHdpbGwgYmUgY3JlYXRlZFxuICAgKi9cbiAgcmVhZG9ubHkgcmVzcG9uc2VUaW1lQWxhcm1UaHJlc2hvbGQ/OiBEdXJhdGlvbjtcblxuICAvKipcbiAgICogVGhlIG51bWJlciBvZiB0aHJlYWRzIHRvIHJ1biBjb25jdXJyZW50bHkgZm9yIHRoZSBzeW50aGV0aWMgdGVzdC5cbiAgICpcbiAgICogQGRlZmF1bHQgLSAyMFxuICAgKi9cbiAgcmVhZG9ubHkgYXBpQ2FuYXJ5VGhyZWFkQ291bnQ/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFRoZSBmcmVxdWVuY3kgZm9yIHJ1bm5pbmcgdGhlIGFwaSBjYW5hcmllcy5cbiAgICpcbiAgICogQGRlZmF1bHQgLSA1IG1pbnV0ZXNcbiAgICovXG4gIHJlYWRvbmx5IGFwaUNhbmFyeVNjaGVkdWxlPzogRHVyYXRpb247XG5cbiAgLyoqXG4gICAqIFRoZSB0aHJlc2hvbGQgZm9yIGhvdyBsb25nIGEgYXBpIGNhbmFyeSBjYW4gdGFrZSB0byBydW4uXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gbm8gYWxhcm0gaXMgY3JlYXRlZCBmb3IgdGVzdCBkdXJhdGlvblxuICAgKi9cbiAgcmVhZG9ubHkgYXBpQ2FuYXJ5VGltZW91dD86IER1cmF0aW9uO1xuXG4gIC8qKlxuICAgKiBUaGUgc3RlcHMgdG8gcnVuIGluIHRoZSBjYW5hcnkuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gbm8gc3ludGhldGljIHRlc3Qgd2lsbCBiZSBjcmVhdGVkXG4gICAqL1xuICByZWFkb25seSBhcGlUZXN0U3RlcHM/OiBBcGlUZXN0U3RlcFtdO1xuXG4gIC8qKlxuICAgKiBUaGUgcG9ydCB0byB1c2UgZm9yIHRlc3QgdHJhZmZpYyBvbiB0aGUgbGlzdGVuZXJcbiAgICpcbiAgICogQGRlZmF1bHQgLSBsaXN0ZW5lclBvcnQgKyAxXG4gICAqL1xuICByZWFkb25seSB0ZXN0UG9ydD86IG51bWJlcjtcbn1cblxuLyoqXG4gKiBBIEZhcmdhdGUgc2VydmljZSBydW5uaW5nIG9uIGFuIEVDUyBjbHVzdGVyIGZyb250ZWQgYnkgYW4gYXBwbGljYXRpb24gbG9hZCBiYWxhbmNlciBhbmQgZGVwbG95ZWQgYnkgQ29kZURlcGxveS5cbiAqL1xuZXhwb3J0IGNsYXNzIEFwcGxpY2F0aW9uTG9hZEJhbGFuY2VkQ29kZURlcGxveWVkRmFyZ2F0ZVNlcnZpY2UgZXh0ZW5kcyBBcHBsaWNhdGlvbkxvYWRCYWxhbmNlZEZhcmdhdGVTZXJ2aWNlIHtcbiAgLyoqXG4gICAqIENvbXBvc2l0ZSBhbGFybSBmb3IgbW9uaXRvcmluZyBoZWFsdGggb2Ygc2VydmljZS5cbiAgICovXG4gIGhlYWx0aEFsYXJtPzogSUFsYXJtO1xuXG4gIC8qKlxuICAgKiBBUEkgQ2FuYXJ5IGZvciB0aGUgc2VydmljZS5cbiAgICovXG4gIGFwaUNhbmFyeT86IEFwaUNhbmFyeTtcblxuICAvKipcbiAgICogVGVzdCBsaXN0ZW5lciB0byB1c2UgZm9yIENvZGVEZXBsb3kgZGVwbG95bWVudHMuXG4gICAqL1xuICB0ZXN0TGlzdGVuZXI6IEFwcGxpY2F0aW9uTGlzdGVuZXI7XG5cbiAgLyoqXG4gICAqIFRlc3QgdGFyZ2V0IGdyb3VwIHRvIHVzZSBmb3IgQ29kZURlcGxveSBkZXBsb3ltZW50cy5cbiAgICovXG4gIGdyZWVuVGFyZ2V0R3JvdXA6IEFwcGxpY2F0aW9uVGFyZ2V0R3JvdXA7XG5cbiAgLyoqXG4gICAqIFMzIEJ1Y2tldCB1c2VkIGZvciBhY2Nlc3MgbG9ncy5cbiAgICovXG4gIGFjY2Vzc0xvZ0J1Y2tldDogSUJ1Y2tldDtcblxuICAvKipcbiAgICogQ29kZURlcGxveSBhcHBsaWNhdGlvbiBmb3IgdGhpcyBzZXJ2aWNlLlxuICAgKi9cbiAgYXBwbGljYXRpb246IEVjc0FwcGxpY2F0aW9uO1xuXG4gIC8qKlxuICAgKiBDb2RlRGVwbG95IGRlcGxveW1lbnQgZ3JvdXAgZm9yIHRoaXMgc2VydmljZS5cbiAgICovXG4gIGRlcGxveW1lbnRHcm91cDogRWNzRGVwbG95bWVudEdyb3VwO1xuXG4gIC8qKlxuICAgKiBDb2RlRGVwbG95IGRlcGxveW1lbnQgZm9yIHRoaXMgc2VydmljZS5cbiAgICovXG4gIGRlcGxveW1lbnQ6IEVjc0RlcGxveW1lbnQ7XG5cbiAgLyoqXG4gICAqIENvbnN0cnVjdHMgYSBuZXcgaW5zdGFuY2Ugb2YgdGhlIEFwcGxpY2F0aW9uTG9hZEJhbGFuY2VkQ29kZURlcGxveWVkRmFyZ2F0ZVNlcnZpY2UgY2xhc3MuXG4gICAqL1xuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcm9wczogQXBwbGljYXRpb25Mb2FkQmFsYW5jZWRDb2RlRGVwbG95ZWRGYXJnYXRlU2VydmljZVByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCB7XG4gICAgICAuLi5wcm9wcyxcbiAgICAgIGRlcGxveW1lbnRDb250cm9sbGVyOiB7XG4gICAgICAgIHR5cGU6IERlcGxveW1lbnRDb250cm9sbGVyVHlwZS5DT0RFX0RFUExPWSxcbiAgICAgIH0sXG4gICAgfSk7XG5cbiAgICBpZiAocHJvcHMuZGVyZWdpc3RyYXRpb25EZWxheSkge1xuICAgICAgdGhpcy50YXJnZXRHcm91cC5zZXRBdHRyaWJ1dGUoJ2RlcmVnaXN0cmF0aW9uX2RlbGF5LnRpbWVvdXRfc2Vjb25kcycsIHByb3BzLmRlcmVnaXN0cmF0aW9uRGVsYXkudG9TZWNvbmRzKCkudG9TdHJpbmcoKSk7XG4gICAgfVxuICAgIGlmIChwcm9wcy5oZWFsdGhDaGVjaykge1xuICAgICAgdGhpcy50YXJnZXRHcm91cC5jb25maWd1cmVIZWFsdGhDaGVjayhwcm9wcy5oZWFsdGhDaGVjayk7XG4gICAgfVxuICAgIHRoaXMuYWNjZXNzTG9nQnVja2V0ID0gcHJvcHMuYWNjZXNzTG9nQnVja2V0ID8/XG4gICAgICBuZXcgQnVja2V0KHRoaXMsICdBY2Nlc3NMb2dCdWNrZXQnLCB7XG4gICAgICAgIGVuY3J5cHRpb246IEJ1Y2tldEVuY3J5cHRpb24uUzNfTUFOQUdFRCxcbiAgICAgICAgYmxvY2tQdWJsaWNBY2Nlc3M6IEJsb2NrUHVibGljQWNjZXNzLkJMT0NLX0FMTCxcbiAgICAgICAgZW5mb3JjZVNTTDogdHJ1ZSxcbiAgICAgIH0pO1xuXG4gICAgdGhpcy5sb2FkQmFsYW5jZXIubG9nQWNjZXNzTG9ncyh0aGlzLmFjY2Vzc0xvZ0J1Y2tldCwgcHJvcHMuYWNjZXNzTG9nUHJlZml4KTtcblxuICAgIGNvbnN0IGFsYXJtczogSUFsYXJtW10gPSBbXTtcbiAgICBpZiAocHJvcHMucmVzcG9uc2VUaW1lQWxhcm1UaHJlc2hvbGQpIHtcbiAgICAgIGNvbnN0IHJlc3BvbnNlVGltZUFsYXJtID0gbmV3IEFsYXJtKHRoaXMsICdSZXNwb25zZVRpbWVBbGFybScsIHtcbiAgICAgICAgbWV0cmljOiB0aGlzLmxvYWRCYWxhbmNlci5tZXRyaWNzLnRhcmdldFJlc3BvbnNlVGltZSh7XG4gICAgICAgICAgcGVyaW9kOiBEdXJhdGlvbi5taW51dGVzKDEpLFxuICAgICAgICAgIHN0YXRpc3RpYzogJ3A5NScsXG4gICAgICAgIH0pLFxuICAgICAgICBldmFsdWF0aW9uUGVyaW9kczogMixcbiAgICAgICAgdGhyZXNob2xkOiBwcm9wcy5yZXNwb25zZVRpbWVBbGFybVRocmVzaG9sZC50b1NlY29uZHMoKSxcbiAgICAgICAgY29tcGFyaXNvbk9wZXJhdG9yOiBDb21wYXJpc29uT3BlcmF0b3IuR1JFQVRFUl9USEFOX1RIUkVTSE9MRCxcbiAgICAgIH0pO1xuICAgICAgYWxhcm1zLnB1c2gocmVzcG9uc2VUaW1lQWxhcm0pO1xuICAgIH1cblxuICAgIGNvbnN0IHByb3RvY29sID0gcHJvcHMucHJvdG9jb2wgPz8gKHByb3BzLmNlcnRpZmljYXRlID8gQXBwbGljYXRpb25Qcm90b2NvbC5IVFRQUyA6IEFwcGxpY2F0aW9uUHJvdG9jb2wuSFRUUCk7XG5cbiAgICBjb25zdCB0ZXN0SG9zdE5hbWUgPSBwcm9wcy5kb21haW5OYW1lID8gcHJvcHMuZG9tYWluTmFtZSA6IHRoaXMubG9hZEJhbGFuY2VyLmxvYWRCYWxhbmNlckRuc05hbWU7XG5cbiAgICBpZiAocHJvcHMuYXBpVGVzdFN0ZXBzPy5sZW5ndGgpIHtcbiAgICAgIHRoaXMuYXBpQ2FuYXJ5ID0gbmV3IEFwaUNhbmFyeSh0aGlzLCAnQ2FuYXJ5Jywge1xuICAgICAgICBiYXNlVXJsOiBgJHtwcm90b2NvbC50b0xvd2VyQ2FzZSgpfTovLyR7dGVzdEhvc3ROYW1lfWAsXG4gICAgICAgIGR1cmF0aW9uQWxhcm1UaHJlc2hvbGQ6IHByb3BzLmFwaUNhbmFyeVRpbWVvdXQsXG4gICAgICAgIHNjaGVkdWxlOiBTY2hlZHVsZS5yYXRlKHByb3BzLmFwaUNhbmFyeVNjaGVkdWxlID8/IER1cmF0aW9uLm1pbnV0ZXMoNSkpLFxuICAgICAgICB0aHJlYWRDb3VudDogcHJvcHMuYXBpQ2FuYXJ5VGhyZWFkQ291bnQsXG4gICAgICAgIHN0ZXBzOiBwcm9wcy5hcGlUZXN0U3RlcHMsXG4gICAgICB9KTtcblxuICAgICAgdGhpcy5hcGlDYW5hcnkubm9kZS5hZGREZXBlbmRlbmN5KHRoaXMuc2VydmljZSk7XG5cbiAgICAgIGFsYXJtcy5wdXNoKHRoaXMuYXBpQ2FuYXJ5LnN1Y2Nlc3NBbGFybSk7XG4gICAgICBpZiAodGhpcy5hcGlDYW5hcnkuZHVyYXRpb25BbGFybSkge1xuICAgICAgICBhbGFybXMucHVzaCh0aGlzLmFwaUNhbmFyeS5kdXJhdGlvbkFsYXJtKTtcbiAgICAgIH1cbiAgICB9XG4gICAgaWYgKGFsYXJtcy5sZW5ndGggPiAwKSB7XG4gICAgICB0aGlzLmhlYWx0aEFsYXJtID0gbmV3IENvbXBvc2l0ZUFsYXJtKHRoaXMsICdIZWFsdGhBbGFybScsIHtcbiAgICAgICAgYWxhcm1SdWxlOiBBbGFybVJ1bGUuYW55T2YoLi4uYWxhcm1zKSxcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLmhlYWx0aEFsYXJtID0gdW5kZWZpbmVkO1xuICAgIH1cblxuICAgIGxldCB0ZXN0UG9ydDogbnVtYmVyO1xuICAgIGlmIChwcm9wcy50ZXN0UG9ydCkge1xuICAgICAgdGVzdFBvcnQgPSBwcm9wcy50ZXN0UG9ydDtcbiAgICB9IGVsc2UgaWYgKHByb3BzLmxpc3RlbmVyUG9ydCkge1xuICAgICAgdGVzdFBvcnQgPSBwcm9wcy5saXN0ZW5lclBvcnQgKyAxO1xuICAgIH0gZWxzZSBpZiAocHJvdG9jb2wgPT09IEFwcGxpY2F0aW9uUHJvdG9jb2wuSFRUUCkge1xuICAgICAgdGVzdFBvcnQgPSA4MDgwO1xuICAgIH0gZWxzZSBpZiAocHJvdG9jb2wgPT09IEFwcGxpY2F0aW9uUHJvdG9jb2wuSFRUUFMpIHtcbiAgICAgIHRlc3RQb3J0ID0gODQ0MztcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdVbmFibGUgdG8gZGV0ZXJtaW5lIHBvcnQgZm9yIHRlc3QgbGlzdGVuZXInKTtcbiAgICB9XG5cbiAgICBsZXQgY2VydGlmaWNhdGVzO1xuICAgIGlmIChwcm9wcy5jZXJ0aWZpY2F0ZSkge1xuICAgICAgY2VydGlmaWNhdGVzID0gW3Byb3BzLmNlcnRpZmljYXRlXTtcbiAgICB9XG5cbiAgICB0aGlzLnRlc3RMaXN0ZW5lciA9IHRoaXMubG9hZEJhbGFuY2VyLmFkZExpc3RlbmVyKCdUZXN0TGlzdGVuZXInLCB7XG4gICAgICBwcm90b2NvbCxcbiAgICAgIHBvcnQ6IHRlc3RQb3J0LFxuICAgICAgb3BlbjogcHJvcHMub3Blbkxpc3RlbmVyID8/IHRydWUsXG4gICAgICBzc2xQb2xpY3k6IHByb3BzLnNzbFBvbGljeSxcbiAgICAgIGNlcnRpZmljYXRlczogY2VydGlmaWNhdGVzLFxuICAgIH0pO1xuXG4gICAgdGhpcy5ncmVlblRhcmdldEdyb3VwID0gbmV3IEFwcGxpY2F0aW9uVGFyZ2V0R3JvdXAodGhpcywgJ0dyZWVuVGFyZ2V0R3JvdXAnLCB7XG4gICAgICB2cGM6IHRoaXMuY2x1c3Rlci52cGMsXG4gICAgICBwb3J0OiB0ZXN0UG9ydCxcbiAgICAgIHByb3RvY29sOiBwcm9wcy50YXJnZXRQcm90b2NvbCA/PyBBcHBsaWNhdGlvblByb3RvY29sLkhUVFAsXG4gICAgICBwcm90b2NvbFZlcnNpb246IHByb3BzLnByb3RvY29sVmVyc2lvbixcbiAgICAgIGRlcmVnaXN0cmF0aW9uRGVsYXk6IHByb3BzLmRlcmVnaXN0cmF0aW9uRGVsYXksXG4gICAgICBoZWFsdGhDaGVjazogcHJvcHMuaGVhbHRoQ2hlY2ssXG4gICAgICB0YXJnZXRUeXBlOiBUYXJnZXRUeXBlLklQLFxuICAgIH0pO1xuXG4gICAgdGhpcy5saXN0ZW5lci5ub2RlLmFkZERlcGVuZGVuY3kodGhpcy5ncmVlblRhcmdldEdyb3VwKTtcblxuICAgIHRoaXMudGVzdExpc3RlbmVyLmFkZFRhcmdldEdyb3VwcygnRUNTJywge1xuICAgICAgdGFyZ2V0R3JvdXBzOiBbdGhpcy5ncmVlblRhcmdldEdyb3VwXSxcbiAgICB9KTtcblxuICAgIHRoaXMuYXBwbGljYXRpb24gPSBuZXcgRWNzQXBwbGljYXRpb24odGhpcywgJ0FwcGxpY2F0aW9uJyk7XG4gICAgdGhpcy5kZXBsb3ltZW50R3JvdXAgPSBuZXcgRWNzRGVwbG95bWVudEdyb3VwKHRoaXMsICdEZXBsb3ltZW50R3JvdXAnLCB7XG4gICAgICBhcHBsaWNhdGlvbjogdGhpcy5hcHBsaWNhdGlvbixcbiAgICAgIGFsYXJtczogdGhpcy5oZWFsdGhBbGFybT9bdGhpcy5oZWFsdGhBbGFybV06dW5kZWZpbmVkLFxuICAgICAgc2VydmljZTogdGhpcy5zZXJ2aWNlLFxuICAgICAgYmx1ZUdyZWVuRGVwbG95bWVudENvbmZpZzoge1xuICAgICAgICBibHVlVGFyZ2V0R3JvdXA6IHRoaXMudGFyZ2V0R3JvdXAsXG4gICAgICAgIGdyZWVuVGFyZ2V0R3JvdXA6IHRoaXMuZ3JlZW5UYXJnZXRHcm91cCxcbiAgICAgICAgbGlzdGVuZXI6IHRoaXMubGlzdGVuZXIsXG4gICAgICAgIHRlc3RMaXN0ZW5lcjogdGhpcy50ZXN0TGlzdGVuZXIsXG4gICAgICAgIHRlcm1pbmF0aW9uV2FpdFRpbWU6IHByb3BzLnRlcm1pbmF0aW9uV2FpdFRpbWUgPz8gRHVyYXRpb24ubWludXRlcygxMCksXG4gICAgICB9LFxuICAgICAgZGVwbG95bWVudENvbmZpZzogcHJvcHMuZGVwbG95bWVudENvbmZpZyA/PyBFY3NEZXBsb3ltZW50Q29uZmlnLkFMTF9BVF9PTkNFLFxuICAgICAgYXV0b1JvbGxiYWNrOiB7XG4gICAgICAgIHN0b3BwZWREZXBsb3ltZW50OiB0cnVlLFxuICAgICAgfSxcbiAgICB9KTtcbiAgICB0aGlzLmRlcGxveW1lbnQgPSBuZXcgRWNzRGVwbG95bWVudCh7XG4gICAgICBkZXBsb3ltZW50R3JvdXA6IHRoaXMuZGVwbG95bWVudEdyb3VwLFxuICAgICAgdGltZW91dDogcHJvcHMuZGVwbG95bWVudFRpbWVvdXQgPz8gRHVyYXRpb24ubWludXRlcyg2MCksXG4gICAgICB0YXJnZXRTZXJ2aWNlOiB7XG4gICAgICAgIHRhc2tEZWZpbml0aW9uOiB0aGlzLnRhc2tEZWZpbml0aW9uLFxuICAgICAgICBjb250YWluZXJOYW1lOiB0aGlzLnRhc2tEZWZpbml0aW9uLmRlZmF1bHRDb250YWluZXIhLmNvbnRhaW5lck5hbWUsXG4gICAgICAgIGNvbnRhaW5lclBvcnQ6IHRoaXMudGFza0RlZmluaXRpb24uZGVmYXVsdENvbnRhaW5lciEuY29udGFpbmVyUG9ydCxcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgYWRkU2VydmljZUFzVGFyZ2V0KHNlcnZpY2U6IEJhc2VTZXJ2aWNlKSB7XG4gICAgc3VwZXIuYWRkU2VydmljZUFzVGFyZ2V0KHNlcnZpY2UpO1xuICB9XG59XG4iXX0=
|
|
154
|
+
ApplicationLoadBalancedCodeDeployedFargateService[_a] = { fqn: "@cdklabs/cdk-ecs-codedeploy.ApplicationLoadBalancedCodeDeployedFargateService", version: "0.0.155" };
|
|
155
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwbGljYXRpb24tbG9hZC1iYWxhbmNlZC1jb2RlZGVwbG95ZWQtZmFyZ2F0ZS1zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2Vjcy1wYXR0ZXJucy9hcHBsaWNhdGlvbi1sb2FkLWJhbGFuY2VkLWNvZGVkZXBsb3llZC1mYXJnYXRlLXNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSx3RUFBeUQ7QUFDekQsNkNBQXVDO0FBQ3ZDLCtEQUEwRztBQUMxRywrREFBMkg7QUFDM0gsaURBQTRFO0FBQzVFLG1FQUFpSTtBQUNqSSx1RkFBbUo7QUFDbkosK0NBQTBGO0FBRTFGLDhDQUF1RDtBQUV2RCxzREFBa0Q7QUEwR2xEOztHQUVHO0FBQ0gsTUFBYSxpREFBa0QsU0FBUSx3REFBcUM7SUF5QzFHOztPQUVHO0lBQ0gsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUE2RDtRQUNyRyxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRTtZQUNmLEdBQUcsS0FBSztZQUNSLG9CQUFvQixFQUFFO2dCQUNwQixJQUFJLEVBQUUsa0NBQXdCLENBQUMsV0FBVzthQUMzQztTQUNGLENBQUMsQ0FBQztRQUVILElBQUksS0FBSyxDQUFDLG1CQUFtQixFQUFFO1lBQzdCLElBQUksQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLHNDQUFzQyxFQUFFLEtBQUssQ0FBQyxtQkFBbUIsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO1NBQ3pIO1FBQ0QsSUFBSSxLQUFLLENBQUMsV0FBVyxFQUFFO1lBQ3JCLElBQUksQ0FBQyxXQUFXLENBQUMsb0JBQW9CLENBQUMsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO1NBQzFEO1FBQ0QsSUFBSSxDQUFDLGVBQWUsR0FBRyxLQUFLLENBQUMsZUFBZTtZQUMxQyxJQUFJLGVBQU0sQ0FBQyxJQUFJLEVBQUUsaUJBQWlCLEVBQUU7Z0JBQ2xDLFVBQVUs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LEVBQUUsS0FBSyxDQUFDLGlCQUFpQixJQUFJLHNCQUFRLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUN4RCxhQUFhLEVBQUU7Z0JBQ2IsY0FBYyxFQUFFLElBQUksQ0FBQyxjQUFjO2dCQUNuQyxhQUFhLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxnQkFBaUIsQ0FBQyxhQUFhO2dCQUNsRSxhQUFhLEVBQUUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxnQkFBaUIsQ0FBQyxhQUFhO2FBQ25FO1lBQ0QsS0FBSyxFQUFFLEtBQUssQ0FBQyxLQUFLO1NBQ25CLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFUyxrQkFBa0IsQ0FBQyxPQUFvQjtRQUMvQyxLQUFLLENBQUMsa0JBQWtCLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDcEMsQ0FBQzs7QUF0TEgsOEdBdUxDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2NoZWR1bGUgfSBmcm9tICdAYXdzLWNkay9hd3Mtc3ludGhldGljcy1hbHBoYSc7XG5pbXBvcnQgeyBEdXJhdGlvbiB9IGZyb20gJ2F3cy1jZGstbGliJztcbmltcG9ydCB7IEFsYXJtLCBBbGFybVJ1bGUsIENvbXBhcmlzb25PcGVyYXRvciwgQ29tcG9zaXRlQWxhcm0sIElBbGFybSB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1jbG91ZHdhdGNoJztcbmltcG9ydCB7IEVjc0FwcGxpY2F0aW9uLCBFY3NEZXBsb3ltZW50Q29uZmlnLCBFY3NEZXBsb3ltZW50R3JvdXAsIElFY3NEZXBsb3ltZW50Q29uZmlnIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWNvZGVkZXBsb3knO1xuaW1wb3J0IHsgQmFzZVNlcnZpY2UsIERlcGxveW1lbnRDb250cm9sbGVyVHlwZSB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1lY3MnO1xuaW1wb3J0IHsgQXBwbGljYXRpb25Mb2FkQmFsYW5jZWRGYXJnYXRlU2VydmljZSwgQXBwbGljYXRpb25Mb2FkQmFsYW5jZWRGYXJnYXRlU2VydmljZVByb3BzIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWVjcy1wYXR0ZXJucyc7XG5pbXBvcnQgeyBBcHBsaWNhdGlvbkxpc3RlbmVyLCBBcHBsaWNhdGlvblByb3RvY29sLCBBcHBsaWNhdGlvblRhcmdldEdyb3VwLCBIZWFsdGhDaGVjaywgVGFyZ2V0VHlwZSB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1lbGFzdGljbG9hZGJhbGFuY2luZ3YyJztcbmltcG9ydCB7IEJsb2NrUHVibGljQWNjZXNzLCBCdWNrZXQsIEJ1Y2tldEVuY3J5cHRpb24sIElCdWNrZXQgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtczMnO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5pbXBvcnQgeyBBcGlUZXN0U3RlcCwgQXBpQ2FuYXJ5IH0gZnJvbSAnLi4vYXBpLWNhbmFyeSc7XG5pbXBvcnQgeyBBcHBTcGVjSG9va3MgfSBmcm9tICcuLi9lY3MtYXBwc3BlYyc7XG5pbXBvcnQgeyBFY3NEZXBsb3ltZW50IH0gZnJvbSAnLi4vZWNzLWRlcGxveW1lbnQnO1xuXG4vKipcbiAqIFRoZSBwcm9wZXJ0aWVzIGZvciB0aGUgQXBwbGljYXRpb25Mb2FkQmFsYW5jZWRDb2RlRGVwbG95ZWRGYXJnYXRlU2VydmljZSBzZXJ2aWNlLlxuICovXG5leHBvcnQgaW50ZXJmYWNlIEFwcGxpY2F0aW9uTG9hZEJhbGFuY2VkQ29kZURlcGxveWVkRmFyZ2F0ZVNlcnZpY2VQcm9wcyBleHRlbmRzIEFwcGxpY2F0aW9uTG9hZEJhbGFuY2VkRmFyZ2F0ZVNlcnZpY2VQcm9wcyB7XG4gIC8qKlxuICAgKiBUaGUgdGltZW91dCBmb3IgYSBDb2RlRGVwbG95IGRlcGxveW1lbnQuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gNjAgbWludXRlc1xuICAgKi9cbiAgcmVhZG9ubHkgZGVwbG95bWVudFRpbWVvdXQ/OiBEdXJhdGlvbjtcblxuICAvKipcbiAgICogVGhlIHRpbWUgdG8gd2FpdCBiZWZvcmUgdGVybWluYXRpbmcgdGhlIG9yaWdpbmFsIChibHVlKSB0YXNrIHNldC5cbiAgICpcbiAgICogQGRlZmF1bHQgLSAxMCBtaW51dGVzXG4gICAqL1xuICByZWFkb25seSB0ZXJtaW5hdGlvbldhaXRUaW1lPzogRHVyYXRpb247XG5cbiAgLyoqXG4gICAqIFRoZSBkZXBsb3ltZW50IGNvbmZpZ3VyYXRpb24gdG8gdXNlIGZvciB0aGUgZGVwbG95bWVudCBncm91cC5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBFY3NEZXBsb3ltZW50Q29uZmlnLkFMTF9BVF9PTkNFXG4gICAqL1xuICByZWFkb25seSBkZXBsb3ltZW50Q29uZmlnPzogSUVjc0RlcGxveW1lbnRDb25maWc7XG5cbiAgLyoqXG4gICAqIFRoZSBhbW91bnQgb2YgdGltZSBmb3IgRUxCIHRvIHdhaXQgYmVmb3JlIGNoYW5naW5nIHRoZSBzdGF0ZSBvZiBhIGRlcmVnaXN0ZXJpbmcgdGFyZ2V0XG4gICAqIGZyb20gJ2RyYWluaW5nJyB0byAndW51c2VkJy5cbiAgICpcbiAgICogQGRlZmF1bHQgLSAzMDAgc2Vjb25kc1xuICAgKi9cbiAgcmVhZG9ubHkgZGVyZWdpc3RyYXRpb25EZWxheT86IER1cmF0aW9uO1xuXG4gIC8qKlxuICAgKiBUaGUgaGVhbHRoY2hlY2sgdG8gY29uZmlndXJlIG9uIHRoZSBBcHBsaWNhdGlvbiBMb2FkIEJhbGFuY2VyIHRhcmdldCBncm91cHMuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gbm8gaGVhbHRoIGNoZWNrIGlzIGNvbmZpZ3VyZWRcbiAgICovXG4gIHJlYWRvbmx5IGhlYWx0aENoZWNrPzogSGVhbHRoQ2hlY2s7XG5cbiAgLyoqXG4gICAqIFRoZSBidWNrZXQgdG8gdXNlIGZvciBhY2Nlc3MgbG9ncyBmcm9tIHRoZSBBcHBsaWNhdGlvbiBMb2FkIEJhbGFuY2VyLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIGEgbmV3IFMzIGJ1Y2tldCB3aWxsIGJlIGNyZWF0ZWRcbiAgICovXG4gIHJlYWRvbmx5IGFjY2Vzc0xvZ0J1Y2tldD86IElCdWNrZXQ7XG5cbiAgLyoqXG4gICAqIFRoZSBwcmVmaXggdG8gdXNlIGZvciBhY2Nlc3MgbG9ncyBmcm9tIHRoZSBBcHBsaWNhdGlvbiBMb2FkIEJhbGFuY2VyLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIG5vbmVcbiAgICovXG4gIHJlYWRvbmx5IGFjY2Vzc0xvZ1ByZWZpeD86IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIHRocmVzaG9sZCBmb3IgcmVzcG9uc2UgdGltZSBhbGFybS5cbiAgICpcbiAgICogQGRlZmF1bHQgLSBubyBhbGFybSB3aWxsIGJlIGNyZWF0ZWRcbiAgICovXG4gIHJlYWRvbmx5IHJlc3BvbnNlVGltZUFsYXJtVGhyZXNob2xkPzogRHVyYXRpb247XG5cbiAgLyoqXG4gICAqIFRoZSBudW1iZXIgb2YgdGhyZWFkcyB0byBydW4gY29uY3VycmVudGx5IGZvciB0aGUgc3ludGhldGljIHRlc3QuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gMjBcbiAgICovXG4gIHJlYWRvbmx5IGFwaUNhbmFyeVRocmVhZENvdW50PzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBUaGUgZnJlcXVlbmN5IGZvciBydW5uaW5nIHRoZSBhcGkgY2FuYXJpZXMuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gNSBtaW51dGVzXG4gICAqL1xuICByZWFkb25seSBhcGlDYW5hcnlTY2hlZHVsZT86IER1cmF0aW9uO1xuXG4gIC8qKlxuICAgKiBUaGUgdGhyZXNob2xkIGZvciBob3cgbG9uZyBhIGFwaSBjYW5hcnkgY2FuIHRha2UgdG8gcnVuLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIG5vIGFsYXJtIGlzIGNyZWF0ZWQgZm9yIHRlc3QgZHVyYXRpb25cbiAgICovXG4gIHJlYWRvbmx5IGFwaUNhbmFyeVRpbWVvdXQ/OiBEdXJhdGlvbjtcblxuICAvKipcbiAgICogVGhlIHN0ZXBzIHRvIHJ1biBpbiB0aGUgY2FuYXJ5LlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIG5vIHN5bnRoZXRpYyB0ZXN0IHdpbGwgYmUgY3JlYXRlZFxuICAgKi9cbiAgcmVhZG9ubHkgYXBpVGVzdFN0ZXBzPzogQXBpVGVzdFN0ZXBbXTtcblxuICAvKipcbiAgICogVGhlIHBvcnQgdG8gdXNlIGZvciB0ZXN0IHRyYWZmaWMgb24gdGhlIGxpc3RlbmVyXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gbGlzdGVuZXJQb3J0ICsgMVxuICAgKi9cbiAgcmVhZG9ubHkgdGVzdFBvcnQ/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIE9wdGlvbmFsIGxpZmVjeWNsZSBob29rc1xuICAgKlxuICAgKiBAZGVmYXVsdCAtIG5vIGxpZmVjeWNsZSBob29rc1xuICAgKi9cbiAgcmVhZG9ubHkgaG9va3M/OiBBcHBTcGVjSG9va3M7XG59XG5cbi8qKlxuICogQSBGYXJnYXRlIHNlcnZpY2UgcnVubmluZyBvbiBhbiBFQ1MgY2x1c3RlciBmcm9udGVkIGJ5IGFuIGFwcGxpY2F0aW9uIGxvYWQgYmFsYW5jZXIgYW5kIGRlcGxveWVkIGJ5IENvZGVEZXBsb3kuXG4gKi9cbmV4cG9ydCBjbGFzcyBBcHBsaWNhdGlvbkxvYWRCYWxhbmNlZENvZGVEZXBsb3llZEZhcmdhdGVTZXJ2aWNlIGV4dGVuZHMgQXBwbGljYXRpb25Mb2FkQmFsYW5jZWRGYXJnYXRlU2VydmljZSB7XG4gIC8qKlxuICAgKiBDb21wb3NpdGUgYWxhcm0gZm9yIG1vbml0b3JpbmcgaGVhbHRoIG9mIHNlcnZpY2UuXG4gICAqL1xuICBoZWFsdGhBbGFybT86IElBbGFybTtcblxuICAvKipcbiAgICogQVBJIENhbmFyeSBmb3IgdGhlIHNlcnZpY2UuXG4gICAqL1xuICBhcGlDYW5hcnk/OiBBcGlDYW5hcnk7XG5cbiAgLyoqXG4gICAqIFRlc3QgbGlzdGVuZXIgdG8gdXNlIGZvciBDb2RlRGVwbG95IGRlcGxveW1lbnRzLlxuICAgKi9cbiAgdGVzdExpc3RlbmVyOiBBcHBsaWNhdGlvbkxpc3RlbmVyO1xuXG4gIC8qKlxuICAgKiBUZXN0IHRhcmdldCBncm91cCB0byB1c2UgZm9yIENvZGVEZXBsb3kgZGVwbG95bWVudHMuXG4gICAqL1xuICBncmVlblRhcmdldEdyb3VwOiBBcHBsaWNhdGlvblRhcmdldEdyb3VwO1xuXG4gIC8qKlxuICAgKiBTMyBCdWNrZXQgdXNlZCBmb3IgYWNjZXNzIGxvZ3MuXG4gICAqL1xuICBhY2Nlc3NMb2dCdWNrZXQ6IElCdWNrZXQ7XG5cbiAgLyoqXG4gICAqIENvZGVEZXBsb3kgYXBwbGljYXRpb24gZm9yIHRoaXMgc2VydmljZS5cbiAgICovXG4gIGFwcGxpY2F0aW9uOiBFY3NBcHBsaWNhdGlvbjtcblxuICAvKipcbiAgICogQ29kZURlcGxveSBkZXBsb3ltZW50IGdyb3VwIGZvciB0aGlzIHNlcnZpY2UuXG4gICAqL1xuICBkZXBsb3ltZW50R3JvdXA6IEVjc0RlcGxveW1lbnRHcm91cDtcblxuICAvKipcbiAgICogQ29kZURlcGxveSBkZXBsb3ltZW50IGZvciB0aGlzIHNlcnZpY2UuXG4gICAqL1xuICBkZXBsb3ltZW50OiBFY3NEZXBsb3ltZW50O1xuXG4gIC8qKlxuICAgKiBDb25zdHJ1Y3RzIGEgbmV3IGluc3RhbmNlIG9mIHRoZSBBcHBsaWNhdGlvbkxvYWRCYWxhbmNlZENvZGVEZXBsb3llZEZhcmdhdGVTZXJ2aWNlIGNsYXNzLlxuICAgKi9cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IEFwcGxpY2F0aW9uTG9hZEJhbGFuY2VkQ29kZURlcGxveWVkRmFyZ2F0ZVNlcnZpY2VQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgLi4ucHJvcHMsXG4gICAgICBkZXBsb3ltZW50Q29udHJvbGxlcjoge1xuICAgICAgICB0eXBlOiBEZXBsb3ltZW50Q29udHJvbGxlclR5cGUuQ09ERV9ERVBMT1ksXG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgaWYgKHByb3BzLmRlcmVnaXN0cmF0aW9uRGVsYXkpIHtcbiAgICAgIHRoaXMudGFyZ2V0R3JvdXAuc2V0QXR0cmlidXRlKCdkZXJlZ2lzdHJhdGlvbl9kZWxheS50aW1lb3V0X3NlY29uZHMnLCBwcm9wcy5kZXJlZ2lzdHJhdGlvbkRlbGF5LnRvU2Vjb25kcygpLnRvU3RyaW5nKCkpO1xuICAgIH1cbiAgICBpZiAocHJvcHMuaGVhbHRoQ2hlY2spIHtcbiAgICAgIHRoaXMudGFyZ2V0R3JvdXAuY29uZmlndXJlSGVhbHRoQ2hlY2socHJvcHMuaGVhbHRoQ2hlY2spO1xuICAgIH1cbiAgICB0aGlzLmFjY2Vzc0xvZ0J1Y2tldCA9IHByb3BzLmFjY2Vzc0xvZ0J1Y2tldCA/P1xuICAgICAgbmV3IEJ1Y2tldCh0aGlzLCAnQWNjZXNzTG9nQnVja2V0Jywge1xuICAgICAgICBlbmNyeXB0aW9uOiBCdWNrZXRFbmNyeXB0aW9uLlMzX01BTkFHRUQsXG4gICAgICAgIGJsb2NrUHVibGljQWNjZXNzOiBCbG9ja1B1YmxpY0FjY2Vzcy5CTE9DS19BTEwsXG4gICAgICAgIGVuZm9yY2VTU0w6IHRydWUsXG4gICAgICB9KTtcblxuICAgIHRoaXMubG9hZEJhbGFuY2VyLmxvZ0FjY2Vzc0xvZ3ModGhpcy5hY2Nlc3NMb2dCdWNrZXQsIHByb3BzLmFjY2Vzc0xvZ1ByZWZpeCk7XG5cbiAgICBjb25zdCBhbGFybXM6IElBbGFybVtdID0gW107XG4gICAgaWYgKHByb3BzLnJlc3BvbnNlVGltZUFsYXJtVGhyZXNob2xkKSB7XG4gICAgICBjb25zdCByZXNwb25zZVRpbWVBbGFybSA9IG5ldyBBbGFybSh0aGlzLCAnUmVzcG9uc2VUaW1lQWxhcm0nLCB7XG4gICAgICAgIG1ldHJpYzogdGhpcy5sb2FkQmFsYW5jZXIubWV0cmljcy50YXJnZXRSZXNwb25zZVRpbWUoe1xuICAgICAgICAgIHBlcmlvZDogRHVyYXRpb24ubWludXRlcygxKSxcbiAgICAgICAgICBzdGF0aXN0aWM6ICdwOTUnLFxuICAgICAgICB9KSxcbiAgICAgICAgZXZhbHVhdGlvblBlcmlvZHM6IDIsXG4gICAgICAgIHRocmVzaG9sZDogcHJvcHMucmVzcG9uc2VUaW1lQWxhcm1UaHJlc2hvbGQudG9TZWNvbmRzKCksXG4gICAgICAgIGNvbXBhcmlzb25PcGVyYXRvcjogQ29tcGFyaXNvbk9wZXJhdG9yLkdSRUFURVJfVEhBTl9USFJFU0hPTEQsXG4gICAgICB9KTtcbiAgICAgIGFsYXJtcy5wdXNoKHJlc3BvbnNlVGltZUFsYXJtKTtcbiAgICB9XG5cbiAgICBjb25zdCBwcm90b2NvbCA9IHByb3BzLnByb3RvY29sID8/IChwcm9wcy5jZXJ0aWZpY2F0ZSA/IEFwcGxpY2F0aW9uUHJvdG9jb2wuSFRUUFMgOiBBcHBsaWNhdGlvblByb3RvY29sLkhUVFApO1xuXG4gICAgY29uc3QgdGVzdEhvc3ROYW1lID0gcHJvcHMuZG9tYWluTmFtZSA/IHByb3BzLmRvbWFpbk5hbWUgOiB0aGlzLmxvYWRCYWxhbmNlci5sb2FkQmFsYW5jZXJEbnNOYW1lO1xuXG4gICAgaWYgKHByb3BzLmFwaVRlc3RTdGVwcz8ubGVuZ3RoKSB7XG4gICAgICB0aGlzLmFwaUNhbmFyeSA9IG5ldyBBcGlDYW5hcnkodGhpcywgJ0NhbmFyeScsIHtcbiAgICAgICAgYmFzZVVybDogYCR7cHJvdG9jb2wudG9Mb3dlckNhc2UoKX06Ly8ke3Rlc3RIb3N0TmFtZX1gLFxuICAgICAgICBkdXJhdGlvbkFsYXJtVGhyZXNob2xkOiBwcm9wcy5hcGlDYW5hcnlUaW1lb3V0LFxuICAgICAgICBzY2hlZHVsZTogU2NoZWR1bGUucmF0ZShwcm9wcy5hcGlDYW5hcnlTY2hlZHVsZSA/PyBEdXJhdGlvbi5taW51dGVzKDUpKSxcbiAgICAgICAgdGhyZWFkQ291bnQ6IHByb3BzLmFwaUNhbmFyeVRocmVhZENvdW50LFxuICAgICAgICBzdGVwczogcHJvcHMuYXBpVGVzdFN0ZXBzLFxuICAgICAgfSk7XG5cbiAgICAgIHRoaXMuYXBpQ2FuYXJ5Lm5vZGUuYWRkRGVwZW5kZW5jeSh0aGlzLnNlcnZpY2UpO1xuXG4gICAgICBhbGFybXMucHVzaCh0aGlzLmFwaUNhbmFyeS5zdWNjZXNzQWxhcm0pO1xuICAgICAgaWYgKHRoaXMuYXBpQ2FuYXJ5LmR1cmF0aW9uQWxhcm0pIHtcbiAgICAgICAgYWxhcm1zLnB1c2godGhpcy5hcGlDYW5hcnkuZHVyYXRpb25BbGFybSk7XG4gICAgICB9XG4gICAgfVxuICAgIGlmIChhbGFybXMubGVuZ3RoID4gMCkge1xuICAgICAgdGhpcy5oZWFsdGhBbGFybSA9IG5ldyBDb21wb3NpdGVBbGFybSh0aGlzLCAnSGVhbHRoQWxhcm0nLCB7XG4gICAgICAgIGFsYXJtUnVsZTogQWxhcm1SdWxlLmFueU9mKC4uLmFsYXJtcyksXG4gICAgICB9KTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5oZWFsdGhBbGFybSA9IHVuZGVmaW5lZDtcbiAgICB9XG5cbiAgICBsZXQgdGVzdFBvcnQ6IG51bWJlcjtcbiAgICBpZiAocHJvcHMudGVzdFBvcnQpIHtcbiAgICAgIHRlc3RQb3J0ID0gcHJvcHMudGVzdFBvcnQ7XG4gICAgfSBlbHNlIGlmIChwcm9wcy5saXN0ZW5lclBvcnQpIHtcbiAgICAgIHRlc3RQb3J0ID0gcHJvcHMubGlzdGVuZXJQb3J0ICsgMTtcbiAgICB9IGVsc2UgaWYgKHByb3RvY29sID09PSBBcHBsaWNhdGlvblByb3RvY29sLkhUVFApIHtcbiAgICAgIHRlc3RQb3J0ID0gODA4MDtcbiAgICB9IGVsc2UgaWYgKHByb3RvY29sID09PSBBcHBsaWNhdGlvblByb3RvY29sLkhUVFBTKSB7XG4gICAgICB0ZXN0UG9ydCA9IDg0NDM7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignVW5hYmxlIHRvIGRldGVybWluZSBwb3J0IGZvciB0ZXN0IGxpc3RlbmVyJyk7XG4gICAgfVxuXG4gICAgbGV0IGNlcnRpZmljYXRlcztcbiAgICBpZiAocHJvcHMuY2VydGlmaWNhdGUpIHtcbiAgICAgIGNlcnRpZmljYXRlcyA9IFtwcm9wcy5jZXJ0aWZpY2F0ZV07XG4gICAgfVxuXG4gICAgdGhpcy50ZXN0TGlzdGVuZXIgPSB0aGlzLmxvYWRCYWxhbmNlci5hZGRMaXN0ZW5lcignVGVzdExpc3RlbmVyJywge1xuICAgICAgcHJvdG9jb2wsXG4gICAgICBwb3J0OiB0ZXN0UG9ydCxcbiAgICAgIG9wZW46IHByb3BzLm9wZW5MaXN0ZW5lciA/PyB0cnVlLFxuICAgICAgc3NsUG9saWN5OiBwcm9wcy5zc2xQb2xpY3ksXG4gICAgICBjZXJ0aWZpY2F0ZXM6IGNlcnRpZmljYXRlcyxcbiAgICB9KTtcblxuICAgIHRoaXMuZ3JlZW5UYXJnZXRHcm91cCA9IG5ldyBBcHBsaWNhdGlvblRhcmdldEdyb3VwKHRoaXMsICdHcmVlblRhcmdldEdyb3VwJywge1xuICAgICAgdnBjOiB0aGlzLmNsdXN0ZXIudnBjLFxuICAgICAgcG9ydDogdGVzdFBvcnQsXG4gICAgICBwcm90b2NvbDogcHJvcHMudGFyZ2V0UHJvdG9jb2wgPz8gQXBwbGljYXRpb25Qcm90b2NvbC5IVFRQLFxuICAgICAgcHJvdG9jb2xWZXJzaW9uOiBwcm9wcy5wcm90b2NvbFZlcnNpb24sXG4gICAgICBkZXJlZ2lzdHJhdGlvbkRlbGF5OiBwcm9wcy5kZXJlZ2lzdHJhdGlvbkRlbGF5LFxuICAgICAgaGVhbHRoQ2hlY2s6IHByb3BzLmhlYWx0aENoZWNrLFxuICAgICAgdGFyZ2V0VHlwZTogVGFyZ2V0VHlwZS5JUCxcbiAgICB9KTtcblxuICAgIHRoaXMubGlzdGVuZXIubm9kZS5hZGREZXBlbmRlbmN5KHRoaXMuZ3JlZW5UYXJnZXRHcm91cCk7XG5cbiAgICB0aGlzLnRlc3RMaXN0ZW5lci5hZGRUYXJnZXRHcm91cHMoJ0VDUycsIHtcbiAgICAgIHRhcmdldEdyb3VwczogW3RoaXMuZ3JlZW5UYXJnZXRHcm91cF0sXG4gICAgfSk7XG5cbiAgICB0aGlzLmFwcGxpY2F0aW9uID0gbmV3IEVjc0FwcGxpY2F0aW9uKHRoaXMsICdBcHBsaWNhdGlvbicpO1xuICAgIHRoaXMuZGVwbG95bWVudEdyb3VwID0gbmV3IEVjc0RlcGxveW1lbnRHcm91cCh0aGlzLCAnRGVwbG95bWVudEdyb3VwJywge1xuICAgICAgYXBwbGljYXRpb246IHRoaXMuYXBwbGljYXRpb24sXG4gICAgICBhbGFybXM6IHRoaXMuaGVhbHRoQWxhcm0/W3RoaXMuaGVhbHRoQWxhcm1dOnVuZGVmaW5lZCxcbiAgICAgIHNlcnZpY2U6IHRoaXMuc2VydmljZSxcbiAgICAgIGJsdWVHcmVlbkRlcGxveW1lbnRDb25maWc6IHtcbiAgICAgICAgYmx1ZVRhcmdldEdyb3VwOiB0aGlzLnRhcmdldEdyb3VwLFxuICAgICAgICBncmVlblRhcmdldEdyb3VwOiB0aGlzLmdyZWVuVGFyZ2V0R3JvdXAsXG4gICAgICAgIGxpc3RlbmVyOiB0aGlzLmxpc3RlbmVyLFxuICAgICAgICB0ZXN0TGlzdGVuZXI6IHRoaXMudGVzdExpc3RlbmVyLFxuICAgICAgICB0ZXJtaW5hdGlvbldhaXRUaW1lOiBwcm9wcy50ZXJtaW5hdGlvbldhaXRUaW1lID8/IER1cmF0aW9uLm1pbnV0ZXMoMTApLFxuICAgICAgfSxcbiAgICAgIGRlcGxveW1lbnRDb25maWc6IHByb3BzLmRlcGxveW1lbnRDb25maWcgPz8gRWNzRGVwbG95bWVudENvbmZpZy5BTExfQVRfT05DRSxcbiAgICAgIGF1dG9Sb2xsYmFjazoge1xuICAgICAgICBzdG9wcGVkRGVwbG95bWVudDogdHJ1ZSxcbiAgICAgIH0sXG4gICAgfSk7XG4gICAgdGhpcy5kZXBsb3ltZW50ID0gbmV3IEVjc0RlcGxveW1lbnQoe1xuICAgICAgZGVwbG95bWVudEdyb3VwOiB0aGlzLmRlcGxveW1lbnRHcm91cCxcbiAgICAgIHRpbWVvdXQ6IHByb3BzLmRlcGxveW1lbnRUaW1lb3V0ID8/IER1cmF0aW9uLm1pbnV0ZXMoNjApLFxuICAgICAgdGFyZ2V0U2VydmljZToge1xuICAgICAgICB0YXNrRGVmaW5pdGlvbjogdGhpcy50YXNrRGVmaW5pdGlvbixcbiAgICAgICAgY29udGFpbmVyTmFtZTogdGhpcy50YXNrRGVmaW5pdGlvbi5kZWZhdWx0Q29udGFpbmVyIS5jb250YWluZXJOYW1lLFxuICAgICAgICBjb250YWluZXJQb3J0OiB0aGlzLnRhc2tEZWZpbml0aW9uLmRlZmF1bHRDb250YWluZXIhLmNvbnRhaW5lclBvcnQsXG4gICAgICB9LFxuICAgICAgaG9va3M6IHByb3BzLmhvb2tzLFxuICAgIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIGFkZFNlcnZpY2VBc1RhcmdldChzZXJ2aWNlOiBCYXNlU2VydmljZSkge1xuICAgIHN1cGVyLmFkZFNlcnZpY2VBc1RhcmdldChzZXJ2aWNlKTtcbiAgfVxufVxuIl19
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aws-sdk/client-codedeploy",
|
|
3
3
|
"description": "AWS SDK for JavaScript Codedeploy Client for Node.js, Browser and React Native",
|
|
4
|
-
"version": "3.
|
|
4
|
+
"version": "3.332.0",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"build": "concurrently 'yarn:build:cjs' 'yarn:build:es' 'yarn:build:types'",
|
|
7
7
|
"build:cjs": "tsc -p tsconfig.cjs.json",
|
|
@@ -21,9 +21,9 @@
|
|
|
21
21
|
"dependencies": {
|
|
22
22
|
"@aws-crypto/sha256-browser": "3.0.0",
|
|
23
23
|
"@aws-crypto/sha256-js": "3.0.0",
|
|
24
|
-
"@aws-sdk/client-sts": "3.
|
|
24
|
+
"@aws-sdk/client-sts": "3.332.0",
|
|
25
25
|
"@aws-sdk/config-resolver": "3.329.0",
|
|
26
|
-
"@aws-sdk/credential-provider-node": "3.
|
|
26
|
+
"@aws-sdk/credential-provider-node": "3.332.0",
|
|
27
27
|
"@aws-sdk/fetch-http-handler": "3.329.0",
|
|
28
28
|
"@aws-sdk/hash-node": "3.329.0",
|
|
29
29
|
"@aws-sdk/invalid-dependency": "3.329.0",
|
|
@@ -36,7 +36,7 @@
|
|
|
36
36
|
"@aws-sdk/middleware-serde": "3.329.0",
|
|
37
37
|
"@aws-sdk/middleware-signing": "3.329.0",
|
|
38
38
|
"@aws-sdk/middleware-stack": "3.329.0",
|
|
39
|
-
"@aws-sdk/middleware-user-agent": "3.
|
|
39
|
+
"@aws-sdk/middleware-user-agent": "3.332.0",
|
|
40
40
|
"@aws-sdk/node-config-provider": "3.329.0",
|
|
41
41
|
"@aws-sdk/node-http-handler": "3.329.0",
|
|
42
42
|
"@aws-sdk/protocol-http": "3.329.0",
|
|
@@ -48,7 +48,7 @@
|
|
|
48
48
|
"@aws-sdk/util-body-length-node": "3.310.0",
|
|
49
49
|
"@aws-sdk/util-defaults-mode-browser": "3.329.0",
|
|
50
50
|
"@aws-sdk/util-defaults-mode-node": "3.329.0",
|
|
51
|
-
"@aws-sdk/util-endpoints": "3.
|
|
51
|
+
"@aws-sdk/util-endpoints": "3.332.0",
|
|
52
52
|
"@aws-sdk/util-retry": "3.329.0",
|
|
53
53
|
"@aws-sdk/util-user-agent-browser": "3.329.0",
|
|
54
54
|
"@aws-sdk/util-user-agent-node": "3.329.0",
|