@jjrawlins/cdk-ami-builder 0.0.26 → 0.0.27
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 +2 -2
- package/cdk-ami-builder/CheckStateMachineStatusFunction.go +2 -62
- package/cdk-ami-builder/CheckStateMachineStatusFunctionProps.go +0 -74
- package/cdk-ami-builder/CheckStateMachineStatusFunction__checks.go +0 -28
- package/cdk-ami-builder/CheckStateMachineStatusFunction__no_checks.go +0 -12
- package/cdk-ami-builder/README.md +0 -1
- package/cdk-ami-builder/StartStateMachineFunction.go +2 -62
- package/cdk-ami-builder/StartStateMachineFunctionProps.go +0 -74
- package/cdk-ami-builder/StartStateMachineFunction__checks.go +0 -28
- package/cdk-ami-builder/StartStateMachineFunction__no_checks.go +0 -12
- package/cdk-ami-builder/go.mod +2 -2
- package/cdk-ami-builder/jsii/jsii.go +2 -2
- package/cdk-ami-builder/main.go +0 -6
- package/cdk-ami-builder/version +1 -1
- package/lib/ImagePipeline/ImagePipeline.js +1 -1
- package/lib/Lambdas/CheckStateMachineStatus/CheckStateMachineStatus-function.js +1 -1
- package/lib/Lambdas/StartStateMachine/StartStateMachine-function.js +1 -1
- package/package.json +1 -1
package/.jsii
CHANGED
|
@@ -4746,6 +4746,6 @@
|
|
|
4746
4746
|
"symbolId": "src/ImagePipeline/ImagePipeline:VolumeProps"
|
|
4747
4747
|
}
|
|
4748
4748
|
},
|
|
4749
|
-
"version": "0.0.
|
|
4750
|
-
"fingerprint": "
|
|
4749
|
+
"version": "0.0.27",
|
|
4750
|
+
"fingerprint": "ureYaYZHNoLtg0vRdlYkBfsyMFI+qKYZUTGdX9cRXkM="
|
|
4751
4751
|
}
|
|
@@ -122,11 +122,11 @@ type CheckStateMachineStatusFunction interface {
|
|
|
122
122
|
AddEnvironment(key *string, value *string, options *awslambda.EnvironmentOptions) awslambda.Function
|
|
123
123
|
// Adds an event source to this function.
|
|
124
124
|
//
|
|
125
|
-
// Event sources are implemented in the aws-cdk
|
|
125
|
+
// Event sources are implemented in the @aws-cdk/aws-lambda-event-sources module.
|
|
126
126
|
//
|
|
127
127
|
// The following example adds an SQS Queue as an event source:
|
|
128
128
|
// ```
|
|
129
|
-
// import { SqsEventSource } from 'aws-cdk
|
|
129
|
+
// import { SqsEventSource } from '@aws-cdk/aws-lambda-event-sources';
|
|
130
130
|
// myFunction.addEventSource(new SqsEventSource(myQueue));
|
|
131
131
|
// ```.
|
|
132
132
|
AddEventSource(source awslambda.IEventSource)
|
|
@@ -177,14 +177,8 @@ type CheckStateMachineStatusFunction interface {
|
|
|
177
177
|
GetResourceNameAttribute(nameAttr *string) *string
|
|
178
178
|
// Grant the given identity permissions to invoke this Lambda.
|
|
179
179
|
GrantInvoke(grantee awsiam.IGrantable) awsiam.Grant
|
|
180
|
-
// Grant multiple principals the ability to invoke this Lambda via CompositePrincipal.
|
|
181
|
-
GrantInvokeCompositePrincipal(compositePrincipal awsiam.CompositePrincipal) *[]awsiam.Grant
|
|
182
|
-
// Grant the given identity permissions to invoke the $LATEST version or unqualified version of this Lambda.
|
|
183
|
-
GrantInvokeLatestVersion(grantee awsiam.IGrantable) awsiam.Grant
|
|
184
180
|
// Grant the given identity permissions to invoke this Lambda Function URL.
|
|
185
181
|
GrantInvokeUrl(grantee awsiam.IGrantable) awsiam.Grant
|
|
186
|
-
// Grant the given identity permissions to invoke the given version of this Lambda.
|
|
187
|
-
GrantInvokeVersion(grantee awsiam.IGrantable, version awslambda.IVersion) awsiam.Grant
|
|
188
182
|
// Mix additional information into the hash of the Version object.
|
|
189
183
|
//
|
|
190
184
|
// The Lambda Function construct does its best to automatically create a new
|
|
@@ -485,9 +479,6 @@ func CheckStateMachineStatusFunction_ClassifyVersionProperty(propertyName *strin
|
|
|
485
479
|
}
|
|
486
480
|
|
|
487
481
|
// Import a lambda function into the CDK using its ARN.
|
|
488
|
-
//
|
|
489
|
-
// For `Function.addPermissions()` to work on this imported lambda, make sure that is
|
|
490
|
-
// in the same account and region as the stack you are importing it into.
|
|
491
482
|
func CheckStateMachineStatusFunction_FromFunctionArn(scope constructs.Construct, id *string, functionArn *string) awslambda.IFunction {
|
|
492
483
|
_init_.Initialize()
|
|
493
484
|
|
|
@@ -507,9 +498,6 @@ func CheckStateMachineStatusFunction_FromFunctionArn(scope constructs.Construct,
|
|
|
507
498
|
}
|
|
508
499
|
|
|
509
500
|
// Creates a Lambda function object which represents a function not defined within this stack.
|
|
510
|
-
//
|
|
511
|
-
// For `Function.addPermissions()` to work on this imported lambda, set the sameEnvironment property to true
|
|
512
|
-
// if this imported lambda is in the same account and region as the stack you are importing it into.
|
|
513
501
|
func CheckStateMachineStatusFunction_FromFunctionAttributes(scope constructs.Construct, id *string, attrs *awslambda.FunctionAttributes) awslambda.IFunction {
|
|
514
502
|
_init_.Initialize()
|
|
515
503
|
|
|
@@ -969,38 +957,6 @@ func (c *jsiiProxy_CheckStateMachineStatusFunction) GrantInvoke(grantee awsiam.I
|
|
|
969
957
|
return returns
|
|
970
958
|
}
|
|
971
959
|
|
|
972
|
-
func (c *jsiiProxy_CheckStateMachineStatusFunction) GrantInvokeCompositePrincipal(compositePrincipal awsiam.CompositePrincipal) *[]awsiam.Grant {
|
|
973
|
-
if err := c.validateGrantInvokeCompositePrincipalParameters(compositePrincipal); err != nil {
|
|
974
|
-
panic(err)
|
|
975
|
-
}
|
|
976
|
-
var returns *[]awsiam.Grant
|
|
977
|
-
|
|
978
|
-
_jsii_.Invoke(
|
|
979
|
-
c,
|
|
980
|
-
"grantInvokeCompositePrincipal",
|
|
981
|
-
[]interface{}{compositePrincipal},
|
|
982
|
-
&returns,
|
|
983
|
-
)
|
|
984
|
-
|
|
985
|
-
return returns
|
|
986
|
-
}
|
|
987
|
-
|
|
988
|
-
func (c *jsiiProxy_CheckStateMachineStatusFunction) GrantInvokeLatestVersion(grantee awsiam.IGrantable) awsiam.Grant {
|
|
989
|
-
if err := c.validateGrantInvokeLatestVersionParameters(grantee); err != nil {
|
|
990
|
-
panic(err)
|
|
991
|
-
}
|
|
992
|
-
var returns awsiam.Grant
|
|
993
|
-
|
|
994
|
-
_jsii_.Invoke(
|
|
995
|
-
c,
|
|
996
|
-
"grantInvokeLatestVersion",
|
|
997
|
-
[]interface{}{grantee},
|
|
998
|
-
&returns,
|
|
999
|
-
)
|
|
1000
|
-
|
|
1001
|
-
return returns
|
|
1002
|
-
}
|
|
1003
|
-
|
|
1004
960
|
func (c *jsiiProxy_CheckStateMachineStatusFunction) GrantInvokeUrl(grantee awsiam.IGrantable) awsiam.Grant {
|
|
1005
961
|
if err := c.validateGrantInvokeUrlParameters(grantee); err != nil {
|
|
1006
962
|
panic(err)
|
|
@@ -1017,22 +973,6 @@ func (c *jsiiProxy_CheckStateMachineStatusFunction) GrantInvokeUrl(grantee awsia
|
|
|
1017
973
|
return returns
|
|
1018
974
|
}
|
|
1019
975
|
|
|
1020
|
-
func (c *jsiiProxy_CheckStateMachineStatusFunction) GrantInvokeVersion(grantee awsiam.IGrantable, version awslambda.IVersion) awsiam.Grant {
|
|
1021
|
-
if err := c.validateGrantInvokeVersionParameters(grantee, version); err != nil {
|
|
1022
|
-
panic(err)
|
|
1023
|
-
}
|
|
1024
|
-
var returns awsiam.Grant
|
|
1025
|
-
|
|
1026
|
-
_jsii_.Invoke(
|
|
1027
|
-
c,
|
|
1028
|
-
"grantInvokeVersion",
|
|
1029
|
-
[]interface{}{grantee, version},
|
|
1030
|
-
&returns,
|
|
1031
|
-
)
|
|
1032
|
-
|
|
1033
|
-
return returns
|
|
1034
|
-
}
|
|
1035
|
-
|
|
1036
976
|
func (c *jsiiProxy_CheckStateMachineStatusFunction) InvalidateVersionBasedOn(x *string) {
|
|
1037
977
|
if err := c.validateInvalidateVersionBasedOnParameters(x); err != nil {
|
|
1038
978
|
panic(err)
|
|
@@ -46,9 +46,6 @@ type CheckStateMachineStatusFunctionProps struct {
|
|
|
46
46
|
//
|
|
47
47
|
// If set to false, you must individually add traffic rules to allow the
|
|
48
48
|
// Lambda to connect to network targets.
|
|
49
|
-
//
|
|
50
|
-
// Do not specify this property if the `securityGroups` or `securityGroup` property is set.
|
|
51
|
-
// Instead, configure `allowAllOutbound` directly on the security group.
|
|
52
49
|
// Default: true.
|
|
53
50
|
//
|
|
54
51
|
AllowAllOutbound *bool `field:"optional" json:"allowAllOutbound" yaml:"allowAllOutbound"`
|
|
@@ -60,15 +57,6 @@ type CheckStateMachineStatusFunctionProps struct {
|
|
|
60
57
|
// Default: false.
|
|
61
58
|
//
|
|
62
59
|
AllowPublicSubnet *bool `field:"optional" json:"allowPublicSubnet" yaml:"allowPublicSubnet"`
|
|
63
|
-
// Sets the application log level for the function.
|
|
64
|
-
// Default: "INFO".
|
|
65
|
-
//
|
|
66
|
-
// Deprecated: Use `applicationLogLevelV2` as a property instead.
|
|
67
|
-
ApplicationLogLevel *string `field:"optional" json:"applicationLogLevel" yaml:"applicationLogLevel"`
|
|
68
|
-
// Sets the application log level for the function.
|
|
69
|
-
// Default: ApplicationLogLevel.INFO
|
|
70
|
-
//
|
|
71
|
-
ApplicationLogLevelV2 awslambda.ApplicationLogLevel `field:"optional" json:"applicationLogLevelV2" yaml:"applicationLogLevelV2"`
|
|
72
60
|
// The system architectures compatible with this lambda function.
|
|
73
61
|
// Default: Architecture.X86_64
|
|
74
62
|
//
|
|
@@ -148,12 +136,6 @@ type CheckStateMachineStatusFunctionProps struct {
|
|
|
148
136
|
// Default: - No Lambda Insights.
|
|
149
137
|
//
|
|
150
138
|
InsightsVersion awslambda.LambdaInsightsVersion `field:"optional" json:"insightsVersion" yaml:"insightsVersion"`
|
|
151
|
-
// Allows outbound IPv6 traffic on VPC functions that are connected to dual-stack subnets.
|
|
152
|
-
//
|
|
153
|
-
// Only used if 'vpc' is supplied.
|
|
154
|
-
// Default: false.
|
|
155
|
-
//
|
|
156
|
-
Ipv6AllowedForDualStack *bool `field:"optional" json:"ipv6AllowedForDualStack" yaml:"ipv6AllowedForDualStack"`
|
|
157
139
|
// A list of layers to add to the function's execution environment.
|
|
158
140
|
//
|
|
159
141
|
// You can configure your Lambda function to pull in
|
|
@@ -162,62 +144,21 @@ type CheckStateMachineStatusFunctionProps struct {
|
|
|
162
144
|
// Default: - No layers.
|
|
163
145
|
//
|
|
164
146
|
Layers *[]awslambda.ILayerVersion `field:"optional" json:"layers" yaml:"layers"`
|
|
165
|
-
// Sets the logFormat for the function.
|
|
166
|
-
// Default: "Text".
|
|
167
|
-
//
|
|
168
|
-
// Deprecated: Use `loggingFormat` as a property instead.
|
|
169
|
-
LogFormat *string `field:"optional" json:"logFormat" yaml:"logFormat"`
|
|
170
|
-
// Sets the loggingFormat for the function.
|
|
171
|
-
// Default: LoggingFormat.TEXT
|
|
172
|
-
//
|
|
173
|
-
LoggingFormat awslambda.LoggingFormat `field:"optional" json:"loggingFormat" yaml:"loggingFormat"`
|
|
174
|
-
// The log group the function sends logs to.
|
|
175
|
-
//
|
|
176
|
-
// By default, Lambda functions send logs to an automatically created default log group named /aws/lambda/\<function name\>.
|
|
177
|
-
// However you cannot change the properties of this auto-created log group using the AWS CDK, e.g. you cannot set a different log retention.
|
|
178
|
-
//
|
|
179
|
-
// Use the `logGroup` property to create a fully customizable LogGroup ahead of time, and instruct the Lambda function to send logs to it.
|
|
180
|
-
//
|
|
181
|
-
// Providing a user-controlled log group was rolled out to commercial regions on 2023-11-16.
|
|
182
|
-
// If you are deploying to another type of region, please check regional availability first.
|
|
183
|
-
// Default: `/aws/lambda/${this.functionName}` - default log group created by Lambda
|
|
184
|
-
//
|
|
185
|
-
LogGroup awslogs.ILogGroup `field:"optional" json:"logGroup" yaml:"logGroup"`
|
|
186
147
|
// The number of days log events are kept in CloudWatch Logs.
|
|
187
148
|
//
|
|
188
149
|
// When updating
|
|
189
150
|
// this property, unsetting it doesn't remove the log retention policy. To
|
|
190
151
|
// remove the retention policy, set the value to `INFINITE`.
|
|
191
|
-
//
|
|
192
|
-
// This is a legacy API and we strongly recommend you move away from it if you can.
|
|
193
|
-
// Instead create a fully customizable log group with `logs.LogGroup` and use the `logGroup` property
|
|
194
|
-
// to instruct the Lambda function to send logs to it.
|
|
195
|
-
// Migrating from `logRetention` to `logGroup` will cause the name of the log group to change.
|
|
196
|
-
// Users and code and referencing the name verbatim will have to adjust.
|
|
197
|
-
//
|
|
198
|
-
// In AWS CDK code, you can access the log group name directly from the LogGroup construct:
|
|
199
|
-
// ```ts
|
|
200
|
-
// import * as logs from 'aws-cdk-lib/aws-logs';
|
|
201
|
-
//
|
|
202
|
-
// declare const myLogGroup: logs.LogGroup;
|
|
203
|
-
// myLogGroup.logGroupName;
|
|
204
|
-
// ```.
|
|
205
152
|
// Default: logs.RetentionDays.INFINITE
|
|
206
153
|
//
|
|
207
154
|
LogRetention awslogs.RetentionDays `field:"optional" json:"logRetention" yaml:"logRetention"`
|
|
208
155
|
// When log retention is specified, a custom resource attempts to create the CloudWatch log group.
|
|
209
156
|
//
|
|
210
157
|
// These options control the retry policy when interacting with CloudWatch APIs.
|
|
211
|
-
//
|
|
212
|
-
// This is a legacy API and we strongly recommend you migrate to `logGroup` if you can.
|
|
213
|
-
// `logGroup` allows you to create a fully customizable log group and instruct the Lambda function to send logs to it.
|
|
214
158
|
// Default: - Default AWS SDK retry options.
|
|
215
159
|
//
|
|
216
160
|
LogRetentionRetryOptions *awslambda.LogRetentionRetryOptions `field:"optional" json:"logRetentionRetryOptions" yaml:"logRetentionRetryOptions"`
|
|
217
161
|
// The IAM role for the Lambda function associated with the custom resource that sets the retention policy.
|
|
218
|
-
//
|
|
219
|
-
// This is a legacy API and we strongly recommend you migrate to `logGroup` if you can.
|
|
220
|
-
// `logGroup` allows you to create a fully customizable log group and instruct the Lambda function to send logs to it.
|
|
221
162
|
// Default: - A new role is created.
|
|
222
163
|
//
|
|
223
164
|
LogRetentionRole awsiam.IRole `field:"optional" json:"logRetentionRole" yaml:"logRetentionRole"`
|
|
@@ -280,21 +221,6 @@ type CheckStateMachineStatusFunctionProps struct {
|
|
|
280
221
|
// group will be created for this function.
|
|
281
222
|
//
|
|
282
223
|
SecurityGroups *[]awsec2.ISecurityGroup `field:"optional" json:"securityGroups" yaml:"securityGroups"`
|
|
283
|
-
// Enable SnapStart for Lambda Function.
|
|
284
|
-
//
|
|
285
|
-
// SnapStart is currently supported only for Java 11, 17 runtime.
|
|
286
|
-
// Default: - No snapstart.
|
|
287
|
-
//
|
|
288
|
-
SnapStart awslambda.SnapStartConf `field:"optional" json:"snapStart" yaml:"snapStart"`
|
|
289
|
-
// Sets the system log level for the function.
|
|
290
|
-
// Default: "INFO".
|
|
291
|
-
//
|
|
292
|
-
// Deprecated: Use `systemLogLevelV2` as a property instead.
|
|
293
|
-
SystemLogLevel *string `field:"optional" json:"systemLogLevel" yaml:"systemLogLevel"`
|
|
294
|
-
// Sets the system log level for the function.
|
|
295
|
-
// Default: SystemLogLevel.INFO
|
|
296
|
-
//
|
|
297
|
-
SystemLogLevelV2 awslambda.SystemLogLevel `field:"optional" json:"systemLogLevelV2" yaml:"systemLogLevelV2"`
|
|
298
224
|
// The function execution time (in seconds) after which Lambda terminates the function.
|
|
299
225
|
//
|
|
300
226
|
// Because the execution time affects cost, set this value
|
|
@@ -158,22 +158,6 @@ func (c *jsiiProxy_CheckStateMachineStatusFunction) validateGrantInvokeParameter
|
|
|
158
158
|
return nil
|
|
159
159
|
}
|
|
160
160
|
|
|
161
|
-
func (c *jsiiProxy_CheckStateMachineStatusFunction) validateGrantInvokeCompositePrincipalParameters(compositePrincipal awsiam.CompositePrincipal) error {
|
|
162
|
-
if compositePrincipal == nil {
|
|
163
|
-
return fmt.Errorf("parameter compositePrincipal is required, but nil was provided")
|
|
164
|
-
}
|
|
165
|
-
|
|
166
|
-
return nil
|
|
167
|
-
}
|
|
168
|
-
|
|
169
|
-
func (c *jsiiProxy_CheckStateMachineStatusFunction) validateGrantInvokeLatestVersionParameters(grantee awsiam.IGrantable) error {
|
|
170
|
-
if grantee == nil {
|
|
171
|
-
return fmt.Errorf("parameter grantee is required, but nil was provided")
|
|
172
|
-
}
|
|
173
|
-
|
|
174
|
-
return nil
|
|
175
|
-
}
|
|
176
|
-
|
|
177
161
|
func (c *jsiiProxy_CheckStateMachineStatusFunction) validateGrantInvokeUrlParameters(grantee awsiam.IGrantable) error {
|
|
178
162
|
if grantee == nil {
|
|
179
163
|
return fmt.Errorf("parameter grantee is required, but nil was provided")
|
|
@@ -182,18 +166,6 @@ func (c *jsiiProxy_CheckStateMachineStatusFunction) validateGrantInvokeUrlParame
|
|
|
182
166
|
return nil
|
|
183
167
|
}
|
|
184
168
|
|
|
185
|
-
func (c *jsiiProxy_CheckStateMachineStatusFunction) validateGrantInvokeVersionParameters(grantee awsiam.IGrantable, version awslambda.IVersion) error {
|
|
186
|
-
if grantee == nil {
|
|
187
|
-
return fmt.Errorf("parameter grantee is required, but nil was provided")
|
|
188
|
-
}
|
|
189
|
-
|
|
190
|
-
if version == nil {
|
|
191
|
-
return fmt.Errorf("parameter version is required, but nil was provided")
|
|
192
|
-
}
|
|
193
|
-
|
|
194
|
-
return nil
|
|
195
|
-
}
|
|
196
|
-
|
|
197
169
|
func (c *jsiiProxy_CheckStateMachineStatusFunction) validateInvalidateVersionBasedOnParameters(x *string) error {
|
|
198
170
|
if x == nil {
|
|
199
171
|
return fmt.Errorf("parameter x is required, but nil was provided")
|
|
@@ -56,22 +56,10 @@ func (c *jsiiProxy_CheckStateMachineStatusFunction) validateGrantInvokeParameter
|
|
|
56
56
|
return nil
|
|
57
57
|
}
|
|
58
58
|
|
|
59
|
-
func (c *jsiiProxy_CheckStateMachineStatusFunction) validateGrantInvokeCompositePrincipalParameters(compositePrincipal awsiam.CompositePrincipal) error {
|
|
60
|
-
return nil
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
func (c *jsiiProxy_CheckStateMachineStatusFunction) validateGrantInvokeLatestVersionParameters(grantee awsiam.IGrantable) error {
|
|
64
|
-
return nil
|
|
65
|
-
}
|
|
66
|
-
|
|
67
59
|
func (c *jsiiProxy_CheckStateMachineStatusFunction) validateGrantInvokeUrlParameters(grantee awsiam.IGrantable) error {
|
|
68
60
|
return nil
|
|
69
61
|
}
|
|
70
62
|
|
|
71
|
-
func (c *jsiiProxy_CheckStateMachineStatusFunction) validateGrantInvokeVersionParameters(grantee awsiam.IGrantable, version awslambda.IVersion) error {
|
|
72
|
-
return nil
|
|
73
|
-
}
|
|
74
|
-
|
|
75
63
|
func (c *jsiiProxy_CheckStateMachineStatusFunction) validateInvalidateVersionBasedOnParameters(x *string) error {
|
|
76
64
|
return nil
|
|
77
65
|
}
|
|
@@ -88,7 +88,6 @@ const imagePipeline = new ImagePipeline(this, 'ImagePipeline', {
|
|
|
88
88
|
parentImage: image.getImage(this).imageId,
|
|
89
89
|
vpc: vpc,
|
|
90
90
|
imageRecipeVersion: version,
|
|
91
|
-
autoBuild: true, // Otherwise you can't use the below output
|
|
92
91
|
components: [
|
|
93
92
|
{
|
|
94
93
|
name: 'Install-Monitoring',
|
|
@@ -122,11 +122,11 @@ type StartStateMachineFunction interface {
|
|
|
122
122
|
AddEnvironment(key *string, value *string, options *awslambda.EnvironmentOptions) awslambda.Function
|
|
123
123
|
// Adds an event source to this function.
|
|
124
124
|
//
|
|
125
|
-
// Event sources are implemented in the aws-cdk
|
|
125
|
+
// Event sources are implemented in the @aws-cdk/aws-lambda-event-sources module.
|
|
126
126
|
//
|
|
127
127
|
// The following example adds an SQS Queue as an event source:
|
|
128
128
|
// ```
|
|
129
|
-
// import { SqsEventSource } from 'aws-cdk
|
|
129
|
+
// import { SqsEventSource } from '@aws-cdk/aws-lambda-event-sources';
|
|
130
130
|
// myFunction.addEventSource(new SqsEventSource(myQueue));
|
|
131
131
|
// ```.
|
|
132
132
|
AddEventSource(source awslambda.IEventSource)
|
|
@@ -177,14 +177,8 @@ type StartStateMachineFunction interface {
|
|
|
177
177
|
GetResourceNameAttribute(nameAttr *string) *string
|
|
178
178
|
// Grant the given identity permissions to invoke this Lambda.
|
|
179
179
|
GrantInvoke(grantee awsiam.IGrantable) awsiam.Grant
|
|
180
|
-
// Grant multiple principals the ability to invoke this Lambda via CompositePrincipal.
|
|
181
|
-
GrantInvokeCompositePrincipal(compositePrincipal awsiam.CompositePrincipal) *[]awsiam.Grant
|
|
182
|
-
// Grant the given identity permissions to invoke the $LATEST version or unqualified version of this Lambda.
|
|
183
|
-
GrantInvokeLatestVersion(grantee awsiam.IGrantable) awsiam.Grant
|
|
184
180
|
// Grant the given identity permissions to invoke this Lambda Function URL.
|
|
185
181
|
GrantInvokeUrl(grantee awsiam.IGrantable) awsiam.Grant
|
|
186
|
-
// Grant the given identity permissions to invoke the given version of this Lambda.
|
|
187
|
-
GrantInvokeVersion(grantee awsiam.IGrantable, version awslambda.IVersion) awsiam.Grant
|
|
188
182
|
// Mix additional information into the hash of the Version object.
|
|
189
183
|
//
|
|
190
184
|
// The Lambda Function construct does its best to automatically create a new
|
|
@@ -485,9 +479,6 @@ func StartStateMachineFunction_ClassifyVersionProperty(propertyName *string, loc
|
|
|
485
479
|
}
|
|
486
480
|
|
|
487
481
|
// Import a lambda function into the CDK using its ARN.
|
|
488
|
-
//
|
|
489
|
-
// For `Function.addPermissions()` to work on this imported lambda, make sure that is
|
|
490
|
-
// in the same account and region as the stack you are importing it into.
|
|
491
482
|
func StartStateMachineFunction_FromFunctionArn(scope constructs.Construct, id *string, functionArn *string) awslambda.IFunction {
|
|
492
483
|
_init_.Initialize()
|
|
493
484
|
|
|
@@ -507,9 +498,6 @@ func StartStateMachineFunction_FromFunctionArn(scope constructs.Construct, id *s
|
|
|
507
498
|
}
|
|
508
499
|
|
|
509
500
|
// Creates a Lambda function object which represents a function not defined within this stack.
|
|
510
|
-
//
|
|
511
|
-
// For `Function.addPermissions()` to work on this imported lambda, set the sameEnvironment property to true
|
|
512
|
-
// if this imported lambda is in the same account and region as the stack you are importing it into.
|
|
513
501
|
func StartStateMachineFunction_FromFunctionAttributes(scope constructs.Construct, id *string, attrs *awslambda.FunctionAttributes) awslambda.IFunction {
|
|
514
502
|
_init_.Initialize()
|
|
515
503
|
|
|
@@ -969,38 +957,6 @@ func (s *jsiiProxy_StartStateMachineFunction) GrantInvoke(grantee awsiam.IGranta
|
|
|
969
957
|
return returns
|
|
970
958
|
}
|
|
971
959
|
|
|
972
|
-
func (s *jsiiProxy_StartStateMachineFunction) GrantInvokeCompositePrincipal(compositePrincipal awsiam.CompositePrincipal) *[]awsiam.Grant {
|
|
973
|
-
if err := s.validateGrantInvokeCompositePrincipalParameters(compositePrincipal); err != nil {
|
|
974
|
-
panic(err)
|
|
975
|
-
}
|
|
976
|
-
var returns *[]awsiam.Grant
|
|
977
|
-
|
|
978
|
-
_jsii_.Invoke(
|
|
979
|
-
s,
|
|
980
|
-
"grantInvokeCompositePrincipal",
|
|
981
|
-
[]interface{}{compositePrincipal},
|
|
982
|
-
&returns,
|
|
983
|
-
)
|
|
984
|
-
|
|
985
|
-
return returns
|
|
986
|
-
}
|
|
987
|
-
|
|
988
|
-
func (s *jsiiProxy_StartStateMachineFunction) GrantInvokeLatestVersion(grantee awsiam.IGrantable) awsiam.Grant {
|
|
989
|
-
if err := s.validateGrantInvokeLatestVersionParameters(grantee); err != nil {
|
|
990
|
-
panic(err)
|
|
991
|
-
}
|
|
992
|
-
var returns awsiam.Grant
|
|
993
|
-
|
|
994
|
-
_jsii_.Invoke(
|
|
995
|
-
s,
|
|
996
|
-
"grantInvokeLatestVersion",
|
|
997
|
-
[]interface{}{grantee},
|
|
998
|
-
&returns,
|
|
999
|
-
)
|
|
1000
|
-
|
|
1001
|
-
return returns
|
|
1002
|
-
}
|
|
1003
|
-
|
|
1004
960
|
func (s *jsiiProxy_StartStateMachineFunction) GrantInvokeUrl(grantee awsiam.IGrantable) awsiam.Grant {
|
|
1005
961
|
if err := s.validateGrantInvokeUrlParameters(grantee); err != nil {
|
|
1006
962
|
panic(err)
|
|
@@ -1017,22 +973,6 @@ func (s *jsiiProxy_StartStateMachineFunction) GrantInvokeUrl(grantee awsiam.IGra
|
|
|
1017
973
|
return returns
|
|
1018
974
|
}
|
|
1019
975
|
|
|
1020
|
-
func (s *jsiiProxy_StartStateMachineFunction) GrantInvokeVersion(grantee awsiam.IGrantable, version awslambda.IVersion) awsiam.Grant {
|
|
1021
|
-
if err := s.validateGrantInvokeVersionParameters(grantee, version); err != nil {
|
|
1022
|
-
panic(err)
|
|
1023
|
-
}
|
|
1024
|
-
var returns awsiam.Grant
|
|
1025
|
-
|
|
1026
|
-
_jsii_.Invoke(
|
|
1027
|
-
s,
|
|
1028
|
-
"grantInvokeVersion",
|
|
1029
|
-
[]interface{}{grantee, version},
|
|
1030
|
-
&returns,
|
|
1031
|
-
)
|
|
1032
|
-
|
|
1033
|
-
return returns
|
|
1034
|
-
}
|
|
1035
|
-
|
|
1036
976
|
func (s *jsiiProxy_StartStateMachineFunction) InvalidateVersionBasedOn(x *string) {
|
|
1037
977
|
if err := s.validateInvalidateVersionBasedOnParameters(x); err != nil {
|
|
1038
978
|
panic(err)
|
|
@@ -46,9 +46,6 @@ type StartStateMachineFunctionProps struct {
|
|
|
46
46
|
//
|
|
47
47
|
// If set to false, you must individually add traffic rules to allow the
|
|
48
48
|
// Lambda to connect to network targets.
|
|
49
|
-
//
|
|
50
|
-
// Do not specify this property if the `securityGroups` or `securityGroup` property is set.
|
|
51
|
-
// Instead, configure `allowAllOutbound` directly on the security group.
|
|
52
49
|
// Default: true.
|
|
53
50
|
//
|
|
54
51
|
AllowAllOutbound *bool `field:"optional" json:"allowAllOutbound" yaml:"allowAllOutbound"`
|
|
@@ -60,15 +57,6 @@ type StartStateMachineFunctionProps struct {
|
|
|
60
57
|
// Default: false.
|
|
61
58
|
//
|
|
62
59
|
AllowPublicSubnet *bool `field:"optional" json:"allowPublicSubnet" yaml:"allowPublicSubnet"`
|
|
63
|
-
// Sets the application log level for the function.
|
|
64
|
-
// Default: "INFO".
|
|
65
|
-
//
|
|
66
|
-
// Deprecated: Use `applicationLogLevelV2` as a property instead.
|
|
67
|
-
ApplicationLogLevel *string `field:"optional" json:"applicationLogLevel" yaml:"applicationLogLevel"`
|
|
68
|
-
// Sets the application log level for the function.
|
|
69
|
-
// Default: ApplicationLogLevel.INFO
|
|
70
|
-
//
|
|
71
|
-
ApplicationLogLevelV2 awslambda.ApplicationLogLevel `field:"optional" json:"applicationLogLevelV2" yaml:"applicationLogLevelV2"`
|
|
72
60
|
// The system architectures compatible with this lambda function.
|
|
73
61
|
// Default: Architecture.X86_64
|
|
74
62
|
//
|
|
@@ -148,12 +136,6 @@ type StartStateMachineFunctionProps struct {
|
|
|
148
136
|
// Default: - No Lambda Insights.
|
|
149
137
|
//
|
|
150
138
|
InsightsVersion awslambda.LambdaInsightsVersion `field:"optional" json:"insightsVersion" yaml:"insightsVersion"`
|
|
151
|
-
// Allows outbound IPv6 traffic on VPC functions that are connected to dual-stack subnets.
|
|
152
|
-
//
|
|
153
|
-
// Only used if 'vpc' is supplied.
|
|
154
|
-
// Default: false.
|
|
155
|
-
//
|
|
156
|
-
Ipv6AllowedForDualStack *bool `field:"optional" json:"ipv6AllowedForDualStack" yaml:"ipv6AllowedForDualStack"`
|
|
157
139
|
// A list of layers to add to the function's execution environment.
|
|
158
140
|
//
|
|
159
141
|
// You can configure your Lambda function to pull in
|
|
@@ -162,62 +144,21 @@ type StartStateMachineFunctionProps struct {
|
|
|
162
144
|
// Default: - No layers.
|
|
163
145
|
//
|
|
164
146
|
Layers *[]awslambda.ILayerVersion `field:"optional" json:"layers" yaml:"layers"`
|
|
165
|
-
// Sets the logFormat for the function.
|
|
166
|
-
// Default: "Text".
|
|
167
|
-
//
|
|
168
|
-
// Deprecated: Use `loggingFormat` as a property instead.
|
|
169
|
-
LogFormat *string `field:"optional" json:"logFormat" yaml:"logFormat"`
|
|
170
|
-
// Sets the loggingFormat for the function.
|
|
171
|
-
// Default: LoggingFormat.TEXT
|
|
172
|
-
//
|
|
173
|
-
LoggingFormat awslambda.LoggingFormat `field:"optional" json:"loggingFormat" yaml:"loggingFormat"`
|
|
174
|
-
// The log group the function sends logs to.
|
|
175
|
-
//
|
|
176
|
-
// By default, Lambda functions send logs to an automatically created default log group named /aws/lambda/\<function name\>.
|
|
177
|
-
// However you cannot change the properties of this auto-created log group using the AWS CDK, e.g. you cannot set a different log retention.
|
|
178
|
-
//
|
|
179
|
-
// Use the `logGroup` property to create a fully customizable LogGroup ahead of time, and instruct the Lambda function to send logs to it.
|
|
180
|
-
//
|
|
181
|
-
// Providing a user-controlled log group was rolled out to commercial regions on 2023-11-16.
|
|
182
|
-
// If you are deploying to another type of region, please check regional availability first.
|
|
183
|
-
// Default: `/aws/lambda/${this.functionName}` - default log group created by Lambda
|
|
184
|
-
//
|
|
185
|
-
LogGroup awslogs.ILogGroup `field:"optional" json:"logGroup" yaml:"logGroup"`
|
|
186
147
|
// The number of days log events are kept in CloudWatch Logs.
|
|
187
148
|
//
|
|
188
149
|
// When updating
|
|
189
150
|
// this property, unsetting it doesn't remove the log retention policy. To
|
|
190
151
|
// remove the retention policy, set the value to `INFINITE`.
|
|
191
|
-
//
|
|
192
|
-
// This is a legacy API and we strongly recommend you move away from it if you can.
|
|
193
|
-
// Instead create a fully customizable log group with `logs.LogGroup` and use the `logGroup` property
|
|
194
|
-
// to instruct the Lambda function to send logs to it.
|
|
195
|
-
// Migrating from `logRetention` to `logGroup` will cause the name of the log group to change.
|
|
196
|
-
// Users and code and referencing the name verbatim will have to adjust.
|
|
197
|
-
//
|
|
198
|
-
// In AWS CDK code, you can access the log group name directly from the LogGroup construct:
|
|
199
|
-
// ```ts
|
|
200
|
-
// import * as logs from 'aws-cdk-lib/aws-logs';
|
|
201
|
-
//
|
|
202
|
-
// declare const myLogGroup: logs.LogGroup;
|
|
203
|
-
// myLogGroup.logGroupName;
|
|
204
|
-
// ```.
|
|
205
152
|
// Default: logs.RetentionDays.INFINITE
|
|
206
153
|
//
|
|
207
154
|
LogRetention awslogs.RetentionDays `field:"optional" json:"logRetention" yaml:"logRetention"`
|
|
208
155
|
// When log retention is specified, a custom resource attempts to create the CloudWatch log group.
|
|
209
156
|
//
|
|
210
157
|
// These options control the retry policy when interacting with CloudWatch APIs.
|
|
211
|
-
//
|
|
212
|
-
// This is a legacy API and we strongly recommend you migrate to `logGroup` if you can.
|
|
213
|
-
// `logGroup` allows you to create a fully customizable log group and instruct the Lambda function to send logs to it.
|
|
214
158
|
// Default: - Default AWS SDK retry options.
|
|
215
159
|
//
|
|
216
160
|
LogRetentionRetryOptions *awslambda.LogRetentionRetryOptions `field:"optional" json:"logRetentionRetryOptions" yaml:"logRetentionRetryOptions"`
|
|
217
161
|
// The IAM role for the Lambda function associated with the custom resource that sets the retention policy.
|
|
218
|
-
//
|
|
219
|
-
// This is a legacy API and we strongly recommend you migrate to `logGroup` if you can.
|
|
220
|
-
// `logGroup` allows you to create a fully customizable log group and instruct the Lambda function to send logs to it.
|
|
221
162
|
// Default: - A new role is created.
|
|
222
163
|
//
|
|
223
164
|
LogRetentionRole awsiam.IRole `field:"optional" json:"logRetentionRole" yaml:"logRetentionRole"`
|
|
@@ -280,21 +221,6 @@ type StartStateMachineFunctionProps struct {
|
|
|
280
221
|
// group will be created for this function.
|
|
281
222
|
//
|
|
282
223
|
SecurityGroups *[]awsec2.ISecurityGroup `field:"optional" json:"securityGroups" yaml:"securityGroups"`
|
|
283
|
-
// Enable SnapStart for Lambda Function.
|
|
284
|
-
//
|
|
285
|
-
// SnapStart is currently supported only for Java 11, 17 runtime.
|
|
286
|
-
// Default: - No snapstart.
|
|
287
|
-
//
|
|
288
|
-
SnapStart awslambda.SnapStartConf `field:"optional" json:"snapStart" yaml:"snapStart"`
|
|
289
|
-
// Sets the system log level for the function.
|
|
290
|
-
// Default: "INFO".
|
|
291
|
-
//
|
|
292
|
-
// Deprecated: Use `systemLogLevelV2` as a property instead.
|
|
293
|
-
SystemLogLevel *string `field:"optional" json:"systemLogLevel" yaml:"systemLogLevel"`
|
|
294
|
-
// Sets the system log level for the function.
|
|
295
|
-
// Default: SystemLogLevel.INFO
|
|
296
|
-
//
|
|
297
|
-
SystemLogLevelV2 awslambda.SystemLogLevel `field:"optional" json:"systemLogLevelV2" yaml:"systemLogLevelV2"`
|
|
298
224
|
// The function execution time (in seconds) after which Lambda terminates the function.
|
|
299
225
|
//
|
|
300
226
|
// Because the execution time affects cost, set this value
|
|
@@ -158,22 +158,6 @@ func (s *jsiiProxy_StartStateMachineFunction) validateGrantInvokeParameters(gran
|
|
|
158
158
|
return nil
|
|
159
159
|
}
|
|
160
160
|
|
|
161
|
-
func (s *jsiiProxy_StartStateMachineFunction) validateGrantInvokeCompositePrincipalParameters(compositePrincipal awsiam.CompositePrincipal) error {
|
|
162
|
-
if compositePrincipal == nil {
|
|
163
|
-
return fmt.Errorf("parameter compositePrincipal is required, but nil was provided")
|
|
164
|
-
}
|
|
165
|
-
|
|
166
|
-
return nil
|
|
167
|
-
}
|
|
168
|
-
|
|
169
|
-
func (s *jsiiProxy_StartStateMachineFunction) validateGrantInvokeLatestVersionParameters(grantee awsiam.IGrantable) error {
|
|
170
|
-
if grantee == nil {
|
|
171
|
-
return fmt.Errorf("parameter grantee is required, but nil was provided")
|
|
172
|
-
}
|
|
173
|
-
|
|
174
|
-
return nil
|
|
175
|
-
}
|
|
176
|
-
|
|
177
161
|
func (s *jsiiProxy_StartStateMachineFunction) validateGrantInvokeUrlParameters(grantee awsiam.IGrantable) error {
|
|
178
162
|
if grantee == nil {
|
|
179
163
|
return fmt.Errorf("parameter grantee is required, but nil was provided")
|
|
@@ -182,18 +166,6 @@ func (s *jsiiProxy_StartStateMachineFunction) validateGrantInvokeUrlParameters(g
|
|
|
182
166
|
return nil
|
|
183
167
|
}
|
|
184
168
|
|
|
185
|
-
func (s *jsiiProxy_StartStateMachineFunction) validateGrantInvokeVersionParameters(grantee awsiam.IGrantable, version awslambda.IVersion) error {
|
|
186
|
-
if grantee == nil {
|
|
187
|
-
return fmt.Errorf("parameter grantee is required, but nil was provided")
|
|
188
|
-
}
|
|
189
|
-
|
|
190
|
-
if version == nil {
|
|
191
|
-
return fmt.Errorf("parameter version is required, but nil was provided")
|
|
192
|
-
}
|
|
193
|
-
|
|
194
|
-
return nil
|
|
195
|
-
}
|
|
196
|
-
|
|
197
169
|
func (s *jsiiProxy_StartStateMachineFunction) validateInvalidateVersionBasedOnParameters(x *string) error {
|
|
198
170
|
if x == nil {
|
|
199
171
|
return fmt.Errorf("parameter x is required, but nil was provided")
|
|
@@ -56,22 +56,10 @@ func (s *jsiiProxy_StartStateMachineFunction) validateGrantInvokeParameters(gran
|
|
|
56
56
|
return nil
|
|
57
57
|
}
|
|
58
58
|
|
|
59
|
-
func (s *jsiiProxy_StartStateMachineFunction) validateGrantInvokeCompositePrincipalParameters(compositePrincipal awsiam.CompositePrincipal) error {
|
|
60
|
-
return nil
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
func (s *jsiiProxy_StartStateMachineFunction) validateGrantInvokeLatestVersionParameters(grantee awsiam.IGrantable) error {
|
|
64
|
-
return nil
|
|
65
|
-
}
|
|
66
|
-
|
|
67
59
|
func (s *jsiiProxy_StartStateMachineFunction) validateGrantInvokeUrlParameters(grantee awsiam.IGrantable) error {
|
|
68
60
|
return nil
|
|
69
61
|
}
|
|
70
62
|
|
|
71
|
-
func (s *jsiiProxy_StartStateMachineFunction) validateGrantInvokeVersionParameters(grantee awsiam.IGrantable, version awslambda.IVersion) error {
|
|
72
|
-
return nil
|
|
73
|
-
}
|
|
74
|
-
|
|
75
63
|
func (s *jsiiProxy_StartStateMachineFunction) validateInvalidateVersionBasedOnParameters(x *string) error {
|
|
76
64
|
return nil
|
|
77
65
|
}
|
package/cdk-ami-builder/go.mod
CHANGED
|
@@ -4,9 +4,9 @@ go 1.23
|
|
|
4
4
|
|
|
5
5
|
require (
|
|
6
6
|
github.com/aws/jsii-runtime-go v1.114.1
|
|
7
|
-
github.com/aws/aws-cdk-go/awscdk/v2 v2.
|
|
7
|
+
github.com/aws/aws-cdk-go/awscdk/v2 v2.85.0
|
|
8
8
|
github.com/aws/constructs-go/constructs/v10 v10.4.2
|
|
9
9
|
github.com/cdklabs/awscdk-asset-awscli-go/awscliv1/v2 v2.2.252 // indirect
|
|
10
10
|
github.com/cdklabs/awscdk-asset-kubectl-go/kubectlv20/v2 v2.1.4 // indirect
|
|
11
|
-
github.com/cdklabs/awscdk-asset-node-proxy-agent-go/
|
|
11
|
+
github.com/cdklabs/awscdk-asset-node-proxy-agent-go/nodeproxyagentv5/v2 v2.0.166 // indirect
|
|
12
12
|
)
|
|
@@ -13,7 +13,7 @@ import (
|
|
|
13
13
|
constructs "github.com/aws/constructs-go/constructs/v10/jsii"
|
|
14
14
|
)
|
|
15
15
|
|
|
16
|
-
//go:embed jjrawlins-cdk-ami-builder-0.0.
|
|
16
|
+
//go:embed jjrawlins-cdk-ami-builder-0.0.26.tgz
|
|
17
17
|
var tarball []byte
|
|
18
18
|
|
|
19
19
|
// Initialize loads the necessary packages in the @jsii/kernel to support the enclosing module.
|
|
@@ -24,5 +24,5 @@ func Initialize() {
|
|
|
24
24
|
constructs.Initialize()
|
|
25
25
|
|
|
26
26
|
// Load this library into the kernel
|
|
27
|
-
_jsii_.Load("@jjrawlins/cdk-ami-builder", "0.0.
|
|
27
|
+
_jsii_.Load("@jjrawlins/cdk-ami-builder", "0.0.26", tarball)
|
|
28
28
|
}
|
package/cdk-ami-builder/main.go
CHANGED
|
@@ -36,10 +36,7 @@ func init() {
|
|
|
36
36
|
_jsii_.MemberMethod{JsiiMethod: "getResourceArnAttribute", GoMethod: "GetResourceArnAttribute"},
|
|
37
37
|
_jsii_.MemberMethod{JsiiMethod: "getResourceNameAttribute", GoMethod: "GetResourceNameAttribute"},
|
|
38
38
|
_jsii_.MemberMethod{JsiiMethod: "grantInvoke", GoMethod: "GrantInvoke"},
|
|
39
|
-
_jsii_.MemberMethod{JsiiMethod: "grantInvokeCompositePrincipal", GoMethod: "GrantInvokeCompositePrincipal"},
|
|
40
|
-
_jsii_.MemberMethod{JsiiMethod: "grantInvokeLatestVersion", GoMethod: "GrantInvokeLatestVersion"},
|
|
41
39
|
_jsii_.MemberMethod{JsiiMethod: "grantInvokeUrl", GoMethod: "GrantInvokeUrl"},
|
|
42
|
-
_jsii_.MemberMethod{JsiiMethod: "grantInvokeVersion", GoMethod: "GrantInvokeVersion"},
|
|
43
40
|
_jsii_.MemberProperty{JsiiProperty: "grantPrincipal", GoGetter: "GrantPrincipal"},
|
|
44
41
|
_jsii_.MemberMethod{JsiiMethod: "invalidateVersionBasedOn", GoMethod: "InvalidateVersionBasedOn"},
|
|
45
42
|
_jsii_.MemberProperty{JsiiProperty: "isBoundToVpc", GoGetter: "IsBoundToVpc"},
|
|
@@ -207,10 +204,7 @@ func init() {
|
|
|
207
204
|
_jsii_.MemberMethod{JsiiMethod: "getResourceArnAttribute", GoMethod: "GetResourceArnAttribute"},
|
|
208
205
|
_jsii_.MemberMethod{JsiiMethod: "getResourceNameAttribute", GoMethod: "GetResourceNameAttribute"},
|
|
209
206
|
_jsii_.MemberMethod{JsiiMethod: "grantInvoke", GoMethod: "GrantInvoke"},
|
|
210
|
-
_jsii_.MemberMethod{JsiiMethod: "grantInvokeCompositePrincipal", GoMethod: "GrantInvokeCompositePrincipal"},
|
|
211
|
-
_jsii_.MemberMethod{JsiiMethod: "grantInvokeLatestVersion", GoMethod: "GrantInvokeLatestVersion"},
|
|
212
207
|
_jsii_.MemberMethod{JsiiMethod: "grantInvokeUrl", GoMethod: "GrantInvokeUrl"},
|
|
213
|
-
_jsii_.MemberMethod{JsiiMethod: "grantInvokeVersion", GoMethod: "GrantInvokeVersion"},
|
|
214
208
|
_jsii_.MemberProperty{JsiiProperty: "grantPrincipal", GoGetter: "GrantPrincipal"},
|
|
215
209
|
_jsii_.MemberMethod{JsiiMethod: "invalidateVersionBasedOn", GoMethod: "InvalidateVersionBasedOn"},
|
|
216
210
|
_jsii_.MemberProperty{JsiiProperty: "isBoundToVpc", GoGetter: "IsBoundToVpc"},
|
package/cdk-ami-builder/version
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
0.0.
|
|
1
|
+
0.0.26
|
|
@@ -392,5 +392,5 @@ class ImagePipeline extends constructs_1.Construct {
|
|
|
392
392
|
}
|
|
393
393
|
exports.ImagePipeline = ImagePipeline;
|
|
394
394
|
_a = JSII_RTTI_SYMBOL_1;
|
|
395
|
-
ImagePipeline[_a] = { fqn: "@jjrawlins/cdk-ami-builder.ImagePipeline", version: "0.0.
|
|
395
|
+
ImagePipeline[_a] = { fqn: "@jjrawlins/cdk-ami-builder.ImagePipeline", version: "0.0.27" };
|
|
396
396
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSW1hZ2VQaXBlbGluZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9JbWFnZVBpcGVsaW5lL0ltYWdlUGlwZWxpbmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBQSx5QkFBeUI7QUFDekIsa0NBQWtDO0FBRWxDLDZDQVVxQjtBQUNyQiwyQ0FBMkM7QUFFM0MsaURBQTJDO0FBQzNDLGlEQUEwQztBQUMxQyxtRUFBd0Q7QUFDeEQsMkNBQXVDO0FBQ3ZDLHNDQUFzQztBQUN0QyxnQ0FBZ0M7QUFDaEMsc0VBQW9EO0FBQ3BELDBIQUFzSDtBQUN0SCx3R0FBb0c7QUFDcEcsa0RBQStDO0FBNk0vQyxNQUFhLGFBQWMsU0FBUSxzQkFBUztJQUsxQyxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQXlCO1FBQ2pFLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDakIsSUFBSSxvQkFBaUUsQ0FBQztRQUN0RSxJQUFJLFdBQXdDLENBQUM7UUFDN0MsSUFBSSxDQUFDLHFCQUFxQixHQUFHLEVBQUUsQ0FBQztRQUNoQyxJQUFJLENBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQztRQUNsQixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsRUFBRSxDQUFDO1FBQzNCLE1BQU0sT0FBTyxHQUFHLG1CQUFLLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLE9BQU8sQ0FBQztRQUN2QyxNQUFNLE1BQU0sR0FBRyxtQkFBSyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLENBQUM7UUFDckMsTUFBTSxTQUFTLEdBQUcsbUJBQUssQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsU0FBUyxDQUFDO1FBQzNDLE1BQU0sV0FBVyxHQUFHLElBQUksYUFBRyxDQUFDLElBQUksRUFBRSxhQUFhLEVBQUU7WUFDL0MsV0FBVyxFQUFFLHVDQUF1QztZQUNwRCxLQUFLLEVBQUUsZ0JBQWdCLFNBQVMsY0FBYztTQUMv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LFFBQVEsRUFBRSxDQUFDO0lBQzlDLENBQUM7O0FBdFpILHNDQXdaQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGZzIGZyb20gJ2ZzJztcbmltcG9ydCAqIGFzIHBhdGggZnJvbSAnbm9kZTpwYXRoJztcblxuaW1wb3J0IHtcbiAgQXJuLFxuICBhd3NfaWFtIGFzIGlhbSxcbiAgYXdzX2ltYWdlYnVpbGRlciBhcyBpbWFnZWJ1aWxkZXIsXG4gIGF3c19zbnMgYXMgc25zLFxuICBhd3Nfc25zX3N1YnNjcmlwdGlvbnMgYXMgc3Vic2NyaXB0aW9ucyxcbiAgQ3VzdG9tUmVzb3VyY2UsXG4gIER1cmF0aW9uLFxuICBSZW1vdmFsUG9saWN5LFxuICBTdGFjayxcbn0gZnJvbSAnYXdzLWNkay1saWInO1xuaW1wb3J0ICogYXMgZWMyIGZyb20gJ2F3cy1jZGstbGliL2F3cy1lYzInO1xuaW1wb3J0IHsgVnBjIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWVjMic7XG5pbXBvcnQgeyBSb2xlIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWlhbSc7XG5pbXBvcnQgeyBLZXkgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3Mta21zJztcbmltcG9ydCB7IFByb3ZpZGVyIH0gZnJvbSAnYXdzLWNkay1saWIvY3VzdG9tLXJlc291cmNlcyc7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcbmltcG9ydCAqIGFzIENyeXB0b0pTIGZyb20gJ2NyeXB0by1qcyc7XG5pbXBvcnQgKiBhcyB5YW1sIGZyb20gJ2pzLXlhbWwnO1xuaW1wb3J0IHsgQWN0aW9ucyB9IGZyb20gJy4uL0lhbVBvbGljeUJ1aWxkZXJIZWxwZXInO1xuaW1wb3J0IHsgQ2hlY2tTdGF0ZU1hY2hpbmVTdGF0dXNGdW5jdGlvbiB9IGZyb20gJy4uL0xhbWJkYXMvQ2hlY2tTdGF0ZU1hY2hpbmVTdGF0dXMvQ2hlY2tTdGF0ZU1hY2hpbmVTdGF0dXMtZnVuY3Rpb24nO1xuaW1wb3J0IHsgU3RhcnRTdGF0ZU1hY2hpbmVGdW5jdGlvbiB9IGZyb20gJy4uL0xhbWJkYXMvU3RhcnRTdGF0ZU1hY2hpbmUvU3RhcnRTdGF0ZU1hY2hpbmUtZnVuY3Rpb24nO1xuaW1wb3J0IHsgU3RhdGVNYWNoaW5lIH0gZnJvbSAnLi4vU3RhdGVNYWNoaW5lJztcblxuZXhwb3J0IGludGVyZmFjZSBJRWJzUGFyYW1ldGVycyB7XG4gIC8qKlxuICAgICAqIFNpemUgb2YgdGhlIHZvbHVtZSBpbiBHaUJcbiAgICAgKi9cbiAgdm9sdW1lU2l6ZTogbnVtYmVyO1xuICAvKipcbiAgICAgKiBUeXBlIG9mIHRoZSB2b2x1bWVcbiAgICAgKlxuICAgICAqIEBkZWZhdWx0IGdwMlxuICAgICAqL1xuICB2b2x1bWVUeXBlPzogc3RyaW5nO1xuICAvKipcbiAgICAgKiBLTVMgS2V5IEFsaWFzIGZvciB0aGUgdm9sdW1lXG4gICAgICogSWYgbm90IHNwZWNpZmllZCwgdGhlIGRlZmF1bHQgQU1JIGVuY3J5cHRpb24ga2V5IGFsaWFzIHdpbGwgYmUgdXNlZFxuICAgICAqIEN1c3RvbSBLTVMgS2V5cyBBbGlhcyBuZWVkIHRvIGV4aXN0IGluIHRoZSBvdGhlciBhY2NvdW50cyBmb3IgZGlzdHJpYnV0aW9uIHRvIHdvcmsgY29ycmVjdGx5LlxuICAgICAqIEBkZWZhdWx0IGFsaWFzL2F3cy9lYnNcbiAgICAgKi9cbiAga21zS2V5SWQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgICAqIFdoZXRoZXIgdGhlIHZvbHVtZSBpcyBlbmNyeXB0ZWRcbiAgICAgKlxuICAgICAqIEBkZWZhdWx0IHRydWVcbiAgICAgKi9cbiAgZW5jcnlwdGVkPzogYm9vbGVhbjtcbiAgLyoqXG4gICAgICogV2hldGhlciB0aGUgdm9sdW1lIGlzIGRlbGV0ZWQgd2hlbiB0aGUgaW5zdGFuY2UgaXMgdGVybWluYXRlZFxuICAgICAqXG4gICAgICogQGRlZmF1bHQgdHJ1ZVxuICAgICAqL1xuICBkZWxldGVPblRlcm1pbmF0aW9uPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBWb2x1bWVQcm9wcyB7XG4gIC8qKlxuICAgICAqIE5hbWUgb2YgdGhlIHZvbHVtZVxuICAgICAqL1xuICByZWFkb25seSBkZXZpY2VOYW1lOiBzdHJpbmc7XG4gIC8qKlxuICAgICAqIEVCUyBCbG9jayBTdG9yZSBQYXJhbWV0ZXJzXG4gICAgICpcbiAgICAgKiBCeSBkZWZhdWx0LCB0aGUgJ2ttc0tleUlkJyBvZiBFQlMgdm9sdW1lIGlzIHNldCB0byAnYW1pRW5jcnlwdGlvbktleS5rZXlJZCcsXG4gICAgICogYW5kICdlbmNyeXB0ZWQnIGlzIHNldCB0byAndHJ1ZScuIElmIHlvdSB3aXNoIHRvIHVzZSBhIGRpZmZlcmVudCBLTVMgS2V5LFxuICAgICAqIHlvdSBtYXkgZG8gc28uIEhvd2V2ZXIsIHBsZWFzZSBtYWtlIHN1cmUgdGhhdCB0aGUgbmVjZXNzYXJ5IHBlcm1pc3Npb25zXG4gICAgICogYW5kIGNvbXBsaWFuY2UgcmVxdWlyZW1lbnRzIGZvciB0aGUgS01TIEtleSBhcmUgYWxyZWFkeSBzZXQgdXAuXG4gICAgICovXG4gIHJlYWRvbmx5IGViczogSUVic1BhcmFtZXRlcnM7XG59XG5cbi8qKlxuICogQnVpbGQgY29tbWFuZHMgZm9yIHRoZSBjb21wb25lbnRcbiAqL1xuZXhwb3J0IGludGVyZmFjZSBJQWN0aW9uQ29tbWFuZHMge1xuICBjb21tYW5kczogc3RyaW5nW107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgSVN0ZXBDb21tYW5kcyB7XG4gIG5hbWU6IHN0cmluZzsgLy8gXlstX0EtWmEtei0wLTldWy1fQS1aYS16MC05IF17MSwxMjZ9Wy1fQS1aYS16LTAtOV0kL1xuICBhY3Rpb246ICdFeGVjdXRlQmFzaCcgfCAnRXhlY3V0ZVBvd2VyU2hlbGwnIHwgJ1VwZGF0ZU9TJztcbiAgaW5wdXRzPzogSUFjdGlvbkNvbW1hbmRzO1xufVxuXG4vKipcbiAqIFBoYXNlcyBmb3IgdGhlIGNvbXBvbmVudFxuICovXG5leHBvcnQgaW50ZXJmYWNlIElQaGFzZXMge1xuICBuYW1lOiAnYnVpbGQnIHwgJ3ZhbGlkYXRlJyB8ICd0ZXN0JztcbiAgc3RlcHM6IElTdGVwQ29tbWFuZHNbXTtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJSW5wdXRQYXJhbWV0ZXIge1xuICB0eXBlOiBzdHJpbmc7XG4gIGRlZmF1bHQ6IHN0cmluZztcbiAgZGVzY3JpcHRpb246IHN0cmluZztcbn1cblxuZXhwb3J0IHR5cGUgSVBhcmFtZXRlcnMgPSBSZWNvcmQ8c3RyaW5nLCBJSW5wdXRQYXJhbWV0ZXI+O1xuXG4vKipcbiAqIENvbXBvbmVudCBkYXRhXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSUNvbXBvbmVudERvY3VtZW50IHtcbiAgbmFtZT86IHN0cmluZztcbiAgZGVzY3JpcHRpb24/OiBzdHJpbmc7XG4gIHNjaGVtYVZlcnNpb24/OiBzdHJpbmc7XG4gIHBoYXNlczogSVBoYXNlc1tdO1xufVxuXG4vKipcbiAqIENvbXBvbmVudCBwcm9wc1xuICovXG5leHBvcnQgaW50ZXJmYWNlIElDb21wb25lbnRQcm9wcyB7XG4gIG5hbWU/OiBzdHJpbmc7XG4gIGRlc2NyaXB0aW9uPzogc3RyaW5nO1xuICBjb21wb25lbnRWZXJzaW9uPzogc3RyaW5nO1xuICBzY2hlbWFWZXJzaW9uPzogc3RyaW5nO1xuICBwYXJhbWV0ZXJzPzogSVBhcmFtZXRlcnM7XG4gIHBsYXRmb3JtPzogJ0xpbnV4JyB8ICdXaW5kb3dzJztcbiAgY29tcG9uZW50RG9jdW1lbnQ6IElDb21wb25lbnREb2N1bWVudDtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBJbWFnZVBpcGVsaW5lUHJvcHMge1xuICByZWFkb25seSBzdWJuZXRJZD86IHN0cmluZztcbiAgcmVhZG9ubHkgc2VjdXJpdHlHcm91cHM/OiBzdHJpbmdbXTtcbiAgcmVhZG9ubHkgZGlzdHJpYnV0aW9uUmVnaW9ucz86IHN0cmluZ1tdO1xuICAvKipcbiAgICAgKiBWcGMgdG8gdXNlIGZvciB0aGUgSW1hZ2UgQnVpbGRlciBQaXBlbGluZVxuICAgICAqL1xuICByZWFkb25seSB2cGM6IFZwYztcbiAgLyoqXG4gICAgICogTGlzdCBvZiBjb21wb25lbnQgcHJvcHNcbiAgICAgKi9cbiAgcmVhZG9ubHkgY29tcG9uZW50czogSUNvbXBvbmVudFByb3BzW107XG4gIC8qKlxuICAgICAqIE5hbWUgb2YgdGhlIGluc3RhbmNlIHByb2ZpbGUgdGhhdCB3aWxsIGJlIGFzc29jaWF0ZWQgd2l0aCB0aGUgSW5zdGFuY2UgQ29uZmlndXJhdGlvbi5cbiAgICAgKi9cbiAgcmVhZG9ubHkgcHJvZmlsZU5hbWU/OiBzdHJpbmc7XG4gIC8qKlxuICAgICAqIEFkZGl0aW9uYWwgcG9saWNpZXMgdG8gYWRkIHRvIHRoZSBpbnN0YW5jZSBwcm9maWxlIGFzc29jaWF0ZWQgd2l0aCB0aGUgSW5zdGFuY2UgQ29uZmlndXJhdGlvbnNcbiAgICAgKi9cbiAgcmVhZG9ubHkgYWRkaXRpb25hbFBvbGljaWVzPzogaWFtLk1hbmFnZWRQb2xpY3lbXTtcblxuICAvKipcbiAgICAgKiBVc2VyRGF0YSBzY3JpcHQgdGhhdCB3aWxsIG92ZXJyaWRlIGRlZmF1bHQgb25lIChpZiBzcGVjaWZpZWQpXG4gICAgICpcbiAgICAgKiBAZGVmYXVsdCAtIG5vbmVcbiAgICAgKi9cbiAgcmVhZG9ubHkgdXNlckRhdGFTY3JpcHQ/OiBzdHJpbmc7XG4gIC8qKlxuICAgICAqIEltYWdlIHJlY2lwZSB2ZXJzaW9uIChEZWZhdWx0OiAwLjAuMSlcbiAgICAgKi9cbiAgcmVhZG9ubHkgaW1hZ2VSZWNpcGVWZXJzaW9uPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgICAqIFRoZSBzb3VyY2UgKHBhcmVudCkgaW1hZ2UgdGhhdCB0aGUgaW1hZ2UgcmVjaXBlIHVzZXMgYXMgaXRzIGJhc2UgZW52aXJvbm1lbnQuIFRoZSB2YWx1ZSBjYW4gYmUgdGhlIHBhcmVudCBpbWFnZSBBUk4gb3IgYW4gSW1hZ2UgQnVpbGRlciBBTUkgSURcbiAgICAgKi9cbiAgcmVhZG9ubHkgcGFyZW50SW1hZ2U6IHN0cmluZztcblxuICAvKipcbiAgICAgKiBMaXN0IG9mIGluc3RhbmNlIHR5cGVzIHVzZWQgaW4gdGhlIEluc3RhbmNlIENvbmZpZ3VyYXRpb24gKERlZmF1bHQ6IFsgJ3QzLm1lZGl1bScsICdtNS5sYXJnZScsICdtNS54bGFyZ2UnIF0pXG4gICAgICovXG4gIHJlYWRvbmx5IGluc3RhbmNlVHlwZXM/OiBzdHJpbmdbXTtcbiAgLyoqXG4gICAgICogUGxhdGZvcm0gdHlwZSBMaW51eCBvciBXaW5kb3dzIChEZWZhdWx0OiBMaW51eClcbiAgICAgKi9cbiAgcmVhZG9ubHkgcGxhdGZvcm0/OiAnTGludXgnIHwgJ1dpbmRvd3MnO1xuICAvKipcbiAgICAgKiBFbWFpbCB1c2VkIHRvIHJlY2VpdmUgSW1hZ2UgQnVpbGRlciBQaXBlbGluZSBOb3RpZmljYXRpb25zIHZpYSBTTlNcbiAgICAgKi9cbiAgcmVhZG9ubHkgZW1haWw/OiBzdHJpbmc7XG4gIC8qKlxuICAgICAqIExpc3Qgb2Ygc2VjdXJpdHkgZ3JvdXAgSURzIGZvciB0aGUgSW5mcmFzdHJ1Y3R1cmUgQ29uZmlndXJhdGlvblxuICAgICAqL1xuICByZWFkb25seSBzZWN1cml0eUdyb3VwSWRzPzogc3RyaW5nW107XG4gIC8qKlxuICAgICAqIFN1Ym5ldCBJRCBmb3IgdGhlIEluZnJhc3RydWN0dXJlIENvbmZpZ3VyYXRpb25cbiAgICAgKi9cbiAgcmVhZG9ubHkgZWJzVm9sdW1lQ29uZmlndXJhdGlvbnM/OiBWb2x1bWVQcm9wc1tdO1xuICAvKipcbiAgICAgKiBTZXQgdG8gdHJ1ZSBpZiB5b3Ugd2FudCB0byBlbmFibGUgY29udGludW91cyB2dWxuZXJhYmlsaXR5IHNjYW5zIHRocm91Z2ggQVdTIElucGVjdG9yXG4gICAgICovXG4gIHJlYWRvbmx5IGVuYWJsZVZ1bG5TY2Fucz86IGJvb2xlYW47XG4gIC8qKlxuICAgICAqIFN0b3JlIHZ1bG5lcmFiaWxpdHkgc2NhbnMgdGhyb3VnaCBBV1MgSW5zcGVjdG9yIGluIEVDUiB1c2luZyB0aGlzIHJlcG8gbmFtZSAoaWYgb3B0aW9uIGlzIGVuYWJsZWQpXG4gICAgICovXG4gIHJlYWRvbmx5IHZ1bG5TY2Fuc1JlcG9OYW1lPzogc3RyaW5nO1xuICAvKipcbiAgICAgKiBTdG9yZSB2dWxuZXJhYmlsaXR5IHNjYW5zIHRocm91Z2ggQVdTIEluc3BlY3RvciBpbiBFQ1IgdXNpbmcgdGhlc2UgaW1hZ2UgdGFncyAoaWYgb3B0aW9uIGlzIGVuYWJsZWQpXG4gICAgICovXG4gIHJlYWRvbmx5IHZ1bG5TY2Fuc1JlcG9UYWdzPzogc3RyaW5nW107XG5cbiAgLyoqXG4gICAgICogVGhpcyB2YXJpYWJsZSByZXByZXNlbnRzIGFuIGFycmF5IG9mIHNoYXJlZCBhY2NvdW50IElEcy5cbiAgICAgKiBJdCBpcyBvcHRpb25hbCBhbmQgcmVhZG9ubHkuXG4gICAgICogSWYgaXQgaXMgcHJvdmlkZWQsIHRoaXMgQU1JIHdpbGwgYmUgdmlzaWJsZSB0byB0aGUgYWNjb3VudHMgaW4gdGhlIGFycmF5LlxuICAgICAqICBJbiBvcmRlciB0byBzaGFyZSB0aGUgQU1JIHdpdGggb3RoZXIgYWNjb3VudHMsIHlvdSBtdXN0IHNwZWNpZnkgYSBLTVMga2V5IElEIGZvciB0aGUgRUJTIHZvbHVtZSBjb25maWd1cmF0aW9uIGFzIEFXUyBkb2VzIG5vdCBhbGxvdyBzaGFyaW5nIEFNSXMgZW5jcnlwdGVkIHdpdGggdGhlIGRlZmF1bHQgQU1JIGVuY3J5cHRpb24ga2V5LlxuICAgICAqIEB0eXBlIHtBcnJheTxzdHJpbmc+fVxuICAgICAqIEByZWFkb25seVxuICAgICAqL1xuICByZWFkb25seSBkaXN0cmlidXRpb25BY2NvdW50SWRzPzogc3RyaW5nW107XG5cbiAgLyoqXG4gICAgICogRmxhZyBpbmRpY2F0aW5nIHdoZXRoZXIgdGhlIGRlYnVnIGltYWdlIHBpcGVsaW5lIGlzIGVuYWJsZWQgb3Igbm90LlxuICAgICAqIFRoaXMgdmFyaWFibGUgaXMgb3B0aW9uYWwuIERlZmF1bHQgdmFsdWUgaXMgZmFsc2UuXG4gICAgICogIEZ1bmN0aW9uYWxseSwgdGhpcyB3aWxsIGZsYWcgdG8gcmV0dXJuIGFzIGZpbmlzaGVkIGltbWVkaWF0ZWx5IGFmdGVyIGZpcnN0IGNoZWNrIHRvIHNlZSBpZiB0aGUgaW1hZ2UgcGlwZWxpbmUgaGFzIGZpbmlzaGVkLlxuICAgICAqICBUaGlzIGlzIHVzZWZ1bCBmb3IgZGVidWdnaW5nIHRoZSBpbWFnZSBwaXBlbGluZS4gIEhvd2V2ZXIsIHRoZXJlIHdpbGwgYmUgbm8gQU1JIHZhbHVlIHJldHVybmVkLlxuICAgICAqXG4gICAgICogQHR5cGUge2Jvb2xlYW59XG4gICAgICogQHJlYWRvbmx5XG4gICAgICovXG4gIHJlYWRvbmx5IGRlYnVnSW1hZ2VQaXBlbGluZT86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAgICogVGhlIGFsaWFzIG9mIHRoZSBLTVMga2V5IHVzZWQgZm9yIGVuY3J5cHRpb24gYW5kIGRlY3J5cHRpb24gb2YgY29udGVudCBpbiB0aGUgZGlzdHJpYnV0aW9uLlxuICAgICAqIFRoaXMgcHJvcGVydHkgaXMgb3B0aW9uYWwgYW5kIHJlYWRvbmx5LlxuICAgICAqIFRoZSBkZWZhdWx0IGVuY3J5cHRpb24ga2V5IGlzIG5vdCBjb21wYXRpYmxlIHdpdGggY3Jvc3MtYWNjb3VudCBBTUkgc2hhcmluZy5cbiAgICAgKiBJZiB5b3Ugc3BlY2lmeSBkaXN0cmlidXRpb25BY2NvdW50SWRzLCB5b3UgbXVzdCBzcGVjaWZ5IGEgbm9uLWRlZmF1bHQgZW5jcnlwdGlvbiBrZXkgdXNpbmcgdGhpcyBwcm9wZXJ0eS4gT3RoZXJ3aXNlLCBJbWFnZSBCdWlsZGVyIHdpbGwgdGhyb3cgYW4gZXJyb3IuXG4gICAgICogS2VlcCBpbiBtaW5kIHRoYXQgdGhlIEtNUyBrZXkgaW4gdGhlIGRpc3RyaWJ1dGlvbiBhY2NvdW50IG11c3QgYWxsb3cgdGhlIEVDMkltYWdlQnVpbGRlckRpc3RyaWJ1dGlvbkNyb3NzQWNjb3VudFJvbGUgcm9sZSB0byB1c2UgdGhlIGtleS5cbiAgICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgICAqIEByZWFkb25seVxuICAgICAqL1xuICByZWFkb25seSBkaXN0cmlidXRpb25LbXNLZXlBbGlhcz86IHN0cmluZztcbn1cblxuZXhwb3J0IGNsYXNzIEltYWdlUGlwZWxpbmUgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuICBpbWFnZVJlY2lwZUNvbXBvbmVudHM6IGltYWdlYnVpbGRlci5DZm5JbWFnZVJlY2lwZS5Db21wb25lbnRDb25maWd1cmF0aW9uUHJvcGVydHlbXTtcbiAgaW1hZ2VQaXBlbGluZUFybjogc3RyaW5nO1xuICBpbWFnZUlkOiBzdHJpbmc7XG5cbiAgY29uc3RydWN0b3Ioc2NvcGU6IENvbnN0cnVjdCwgaWQ6IHN0cmluZywgcHJvcHM6IEltYWdlUGlwZWxpbmVQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG4gICAgbGV0IGluZnJhc3RydWN0dXJlQ29uZmlnOiBpbWFnZWJ1aWxkZXIuQ2ZuSW5mcmFzdHJ1Y3R1cmVDb25maWd1cmF0aW9uO1xuICAgIGxldCBpbWFnZVJlY2lwZTogaW1hZ2VidWlsZGVyLkNmbkltYWdlUmVjaXBlO1xuICAgIHRoaXMuaW1hZ2VSZWNpcGVDb21wb25lbnRzID0gW107XG4gICAgdGhpcy5pbWFnZUlkID0gJyc7XG4gICAgdGhpcy5pbWFnZVBpcGVsaW5lQXJuID0gJyc7XG4gICAgY29uc3QgYWNjb3VudCA9IFN0YWNrLm9mKHRoaXMpLmFjY291bnQ7XG4gICAgY29uc3QgcmVnaW9uID0gU3RhY2sub2YodGhpcykucmVnaW9uO1xuICAgIGNvbnN0IHN0YWNrTmFtZSA9IFN0YWNrLm9mKHRoaXMpLnN0YWNrTmFtZTtcbiAgICBjb25zdCB0b3BpY0ttc0tleSA9IG5ldyBLZXkodGhpcywgJ1RvcGljS21zS2V5Jywge1xuICAgICAgZGVzY3JpcHRpb246ICdLTVMgS2V5IHVzZWQgdG8gZW5jcnlwdCB0aGUgU05TIHRvcGljJyxcbiAgICAgIGFsaWFzOiBgL2FtaS1idWlsZGVyLyR7c3RhY2tOYW1lfS1Ub3BpY0ttc0tleWAsXG4gICAgfSk7XG4gICAgLy8gQ29uc3RydWN0IGNvZGUgYmVsb3dcbiAgICBjb25zdCB0b3BpYyA9IG5ldyBzbnMuVG9waWModGhpcywgJ0ltYWdlQnVpbGRlclRvcGljJywge1xuICAgICAgZGlzcGxheU5hbWU6ICdJbWFnZSBCdWlsZGVyIE5vdGlmeScsXG4gICAgICBtYXN0ZXJLZXk6IHRvcGljS21zS2V5LFxuICAgIH0pO1xuXG4gICAgaWYgKHByb3BzLmVtYWlsICE9IG51bGwpIHtcbiAgICAgIHRvcGljLmFkZFN1YnNjcmlwdGlvbihuZXcgc3Vic2NyaXB0aW9ucy5FbWFpbFN1YnNjcmlwdGlvbihwcm9wcy5lbWFpbCkpO1xuICAgIH1cblxuICAgIGNvbnN0IHJvbGUgPSBuZXcgaWFtLlJvbGUodGhpcywgJ1JvbGUnLCB7XG4gICAgICBhc3N1bWVkQnk6IG5ldyBpYW0uU2VydmljZVByaW5jaXBhbCgnZWMyLmFtYXpvbmF3cy5jb20nKSxcbiAgICAgIGRlc2NyaXB0aW9uOiAnSUFNIHJvbGUgdXNlZCBhcyBwYXJ0IG9mIGFuIEltYWdlIEJ1aWxkZXIgcGlwZWxpbmUnLFxuICAgIH0pO1xuXG4gICAgcm9sZS5hZGRNYW5hZ2VkUG9saWN5KGlhbS5NYW5hZ2VkUG9saWN5LmZyb21Bd3NNYW5hZ2VkUG9saWN5TmFtZSgnRUMySW5zdGFuY2VQcm9maWxlRm9ySW1hZ2VCdWlsZGVyJykpO1xuICAgIHJvbGUuYWRkTWFuYWdlZFBvbGljeShpYW0uTWFuYWdlZFBvbGljeS5mcm9tQXdzTWFuYWdlZFBvbGljeU5hbWUoJ0VDMkluc3RhbmNlUHJvZmlsZUZvckltYWdlQnVpbGRlckVDUkNvbnRhaW5lckJ1aWxkcycpKTtcbiAgICByb2xlLmFkZE1hbmFnZWRQb2xpY3koaWFtLk1hbmFnZWRQb2xpY3kuZnJvbUF3c01hbmFnZWRQb2xpY3lOYW1lKCdBbWF6b25TU01NYW5hZ2VkSW5zdGFuY2VDb3JlJykpO1xuICAgIGlmICh0eXBlb2YgcHJvcHMuYWRkaXRpb25hbFBvbGljaWVzICE9PSAndW5kZWZpbmVkJyAmJiBwcm9wcy5hZGRpdGlvbmFsUG9saWNpZXMubGVuZ3RoID49IDEpIHtcbiAgICAgIGZvciAoY29uc3QgcG9saWN5IG9mIHByb3BzLmFkZGl0aW9uYWxQb2xpY2llcykge1xuICAgICAgICByb2xlLmFkZE1hbmFnZWRQb2xpY3kocG9saWN5KTtcbiAgICAgIH1cbiAgICB9XG5cbiAgICBjb25zdCBpbnN0YW5jZVByb2ZpbGVOYW1lID0gcHJvcHMucHJvZmlsZU5hbWUgPz8gYCR7c3RhY2tOYW1lfS1JbnN0YW5jZVByb2ZpbGVgO1xuICAgIGNvbnN0IGluZnJhQ29uZmlnTmFtZSA9IGAke3N0YWNrTmFtZX0tSW5mcmFzdHJ1Y3R1cmVDb25maWd1cmF0aW9uYDtcbiAgICBjb25zdCBpbWFnZVJlY2lwZU5hbWUgPSBgJHtzdGFja05hbWV9LUltYWdlUmVjaXBlYDtcbiAgICBjb25zdCBpbWFnZVJlY2lwZVZlcnNpb24gPSBwcm9wcy5pbWFnZVJlY2lwZVZlcnNpb24gPz8gJzAuMC4xJztcbiAgICBjb25zdCBwaXBlbGluZUJhc2VOYW1lID0gYCR7c3RhY2tOYW1lfS1JbWFnZVBpcGVsaW5lYDtcbiAgICBjb25zdCBwaXBlbGluZU5hbWUgPSBgJHtwaXBlbGluZUJhc2VOYW1lfS0ke2ltYWdlUmVjaXBlVmVyc2lvbi5yZXBsYWNlKC9cXC4vZywgJy0nKX1gO1xuXG4gICAgLy8gVXNlIHRoZSBmaXJzdCB2b2x1bWUgY29uZmlndXJhdGlvbidzIEtNUyBrZXkgSUQgYXMgdGhlIGVmZmVjdGl2ZSBLTVMga2V5IElEXG4gICAgLy8gSWYgdGhlIGZpcnN0IHZvbHVtZSBjb25maWd1cmF0aW9uIGRvZXMgbm90IGhhdmUgYSBLTVMga2V5IElELCB1c2UgdGhlIGRlZmF1bHQgQU1JIGVuY3J5cHRpb24ga2V5XG4gICAgLy8gS2VlcCBpbiBtaW5kIHRob3VnaCB0aGF0IGRlZmF1bHQgQU1JIGVuY3J5cHRpb24ga2V5IGlzIG5vdCBjb21wYXRpYmxlIHdpdGggY3Jvc3MtYWNjb3VudCBBTUkgc2hhcmluZ1xuICAgIGNvbnN0IGRpc3RyaWJ1dGlvbktleUFsaWFzID0gcHJvcHMuZGlzdHJpYnV0aW9uS21zS2V5QWxpYXMgPz8gJ2FsaWFzL2F3cy9lYnMnO1xuICAgIGNvbnN0IGVic1ZvbHVtZUVmZmVjdGl2ZUttc0FsaWFzID0gcHJvcHMuZWJzVm9sdW1lQ29uZmlndXJhdGlvbnM/LlswXT8uZWJzPy5rbXNLZXlJZFxuICAgICAgPyBwcm9wcy5lYnNWb2x1bWVDb25maWd1cmF0aW9ucyFbMF0uZWJzLmttc0tleUlkXG4gICAgICA6IChwcm9wcy5kaXN0cmlidXRpb25LbXNLZXlBbGlhcyA/PyAnYWxpYXMvYXdzL2VicycpO1xuICAgIGNvbnN0IGRpc3RyaWJ1dGlvbkFjY291bnRJZHMgPSBwcm9wcy5kaXN0cmlidXRpb25BY2NvdW50SWRzID8/IFtdO1xuICAgIGNvbnN0IGRpc3RyaWJ1dGlvblJlZ2lvbnMgPSBwcm9wcy5kaXN0cmlidXRpb25SZWdpb25zID8/IFtdO1xuXG4gICAgaWYgKChwcm9wcy5kaXN0cmlidXRpb25SZWdpb25zPy5sZW5ndGggPT09IDAgJiYgcHJvcHMuZGlzdHJpYnV0aW9uQWNjb3VudElkcz8ubGVuZ3RoKSB8fFxuICAgICAgKHByb3BzLmRpc3RyaWJ1dGlvblJlZ2lvbnM/Lmxlbmd0aCAmJiBwcm9wcy5kaXN0cmlidXRpb25BY2NvdW50SWRzPy5sZW5ndGggPT09IDApKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ2Rpc3RyaWJ1dGlvblJlZ2lvbnMgbXVzdCBiZSBzcGVjaWZpZWQgaWYgZGlzdHJpYnV0aW9uQWNjb3VudElkcyBpcyBzcGVjaWZpZWQnKTtcbiAgICB9XG5cbiAgICBpZiAoKHByb3BzLmRpc3RyaWJ1dGlvblJlZ2lvbnM/Lmxlbmd0aCAmJiBwcm9wcy5kaXN0cmlidXRpb25BY2NvdW50SWRzPy5sZW5ndGgpICYmIHByb3BzLmRpc3RyaWJ1dGlvbkttc0tleUFsaWFzID09PSAnYWxpYXMvYXdzL2VicycpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignSWYgZGlzdHJpYnV0aW9uUmVnaW9ucyBhbmQgZGlzdHJpYnV0aW9uQWNjb3VudElkcyBhcmUgc3BlY2lmaWVkLCBkaXN0cmlidXRpb25LbXNLZXlBbGlhcyBtdXN0IGJlIHNwZWNpZmllZCcpO1xuICAgIH1cblxuICAgIGNvbnN0IHByb2ZpbGUgPSBuZXcgaWFtLkNmbkluc3RhbmNlUHJvZmlsZSh0aGlzLCAnSW5zdGFuY2VQcm9maWxlJywge1xuICAgICAgcm9sZXM6IFtyb2xlLnJvbGVOYW1lXSxcbiAgICAgIGluc3RhbmNlUHJvZmlsZU5hbWU6IGluc3RhbmNlUHJvZmlsZU5hbWUsXG4gICAgfSk7XG5cbiAgICBjb25zdCBkZWZhdWx0R3JvdXAgPSBuZXcgZWMyLlNlY3VyaXR5R3JvdXAodGhpcywgJ1NlY3VyaXR5R3JvdXAnLCB7XG4gICAgICB2cGM6IHByb3BzLnZwYyxcbiAgICAgIGFsbG93QWxsT3V0Ym91bmQ6IHRydWUsXG4gICAgfSk7XG5cbiAgICBpZiAocHJvcHMuc2VjdXJpdHlHcm91cHMgPT0gbnVsbCB8fCBwcm9wcy5zdWJuZXRJZCA9PSBudWxsKSB7XG4gICAgICBpbmZyYXN0cnVjdHVyZUNvbmZpZyA9IG5ldyBpbWFnZWJ1aWxkZXIuQ2ZuSW5mcmFzdHJ1Y3R1cmVDb25maWd1cmF0aW9uKHRoaXMsICdJbmZyYXN0cnVjdHVyZUNvbmZpZ3VyYXRpb24nLCB7XG4gICAgICAgIGluc3RhbmNlUHJvZmlsZU5hbWU6IGluc3RhbmNlUHJvZmlsZU5hbWUsXG4gICAgICAgIG5hbWU6IGluZnJhQ29uZmlnTmFtZSxcbiAgICAgICAgZGVzY3JpcHRpb246ICdJbmZyYXN0cnVjdHVyZSBDb25maWd1cmF0aW9uIGZvciBJbWFnZSBCdWlsZGVyJyxcbiAgICAgICAgaW5zdGFuY2VUeXBlczogcHJvcHMuaW5zdGFuY2VUeXBlcyA/PyBbJ3QzLm1lZGl1bScsICdtNS5sYXJnZScsICdtNS54bGFyZ2UnXSxcbiAgICAgICAgc25zVG9waWNBcm46IHRvcGljLnRvcGljQXJuLFxuICAgICAgICBzZWN1cml0eUdyb3VwSWRzOiBbZGVmYXVsdEdyb3VwLnNlY3VyaXR5R3JvdXBJZF0sXG4gICAgICAgIHN1Ym5ldElkOiBwcm9wcy52cGMucHVibGljU3VibmV0c1swXS5zdWJuZXRJZCxcbiAgICAgIH0pO1xuXG4gICAgfSBlbHNlIHtcbiAgICAgIGluZnJhc3RydWN0dXJlQ29uZmlnID0gbmV3IGltYWdlYnVpbGRlci5DZm5JbmZyYXN0cnVjdHVyZUNvbmZpZ3VyYXRpb24odGhpcywgJ0luZnJhc3RydWN0dXJlQ29uZmlndXJhdGlvbicsIHtcbiAgICAgICAgaW5zdGFuY2VQcm9maWxlTmFtZTogaW5zdGFuY2VQcm9maWxlTmFtZSxcbiAgICAgICAgbmFtZTogaW5mcmFDb25maWdOYW1lLFxuICAgICAgICBkZXNjcmlwdGlvbjogJ0luZnJhc3RydWN0dXJlIENvbmZpZ3VyYXRpb24gZm9yIEltYWdlIEJ1aWxkZXInLFxuICAgICAgICBpbnN0YW5jZVR5cGVzOiBwcm9wcy5pbnN0YW5jZVR5cGVzID8/IFsndDMubWVkaXVtJywgJ201LmxhcmdlJywgJ201LnhsYXJnZSddLFxuICAgICAgICBzbnNUb3BpY0FybjogdG9waWMudG9waWNBcm4sXG4gICAgICAgIHNlY3VyaXR5R3JvdXBJZHM6IHByb3BzLnNlY3VyaXR5R3JvdXBzLFxuICAgICAgICBzdWJuZXRJZDogcHJvcHMuc3VibmV0SWQsXG4gICAgICB9KTtcbiAgICB9XG4gICAgaW5mcmFzdHJ1Y3R1cmVDb25maWcuYWRkRGVwZW5kZW5jeShwcm9maWxlKTtcblxuICAgIC8qKlxuICAgICAgICAgKiBJbWFnZSByZWNpcGUgY29uZmlndXJhdGlvblxuICAgICAgICAgKi9cbiAgICBsZXQgaW1hZ2VSZWNpcGVQcm9wczogaW1hZ2VidWlsZGVyLkNmbkltYWdlUmVjaXBlUHJvcHM7XG4gICAgaW1hZ2VSZWNpcGVQcm9wcyA9IHtcbiAgICAgIGNvbXBvbmVudHM6IFtdLFxuICAgICAgbmFtZTogaW1hZ2VSZWNpcGVOYW1lLFxuICAgICAgcGFyZW50SW1hZ2U6IHByb3BzLnBhcmVudEltYWdlLFxuICAgICAgdmVyc2lvbjogaW1hZ2VSZWNpcGVWZXJzaW9uID8/ICcwLjAuMScsXG4gICAgfTtcbiAgICBpZiAocHJvcHMudXNlckRhdGFTY3JpcHQpIHtcbiAgICAgIGltYWdlUmVjaXBlUHJvcHMgPSB7XG4gICAgICAgIC4uLmltYWdlUmVjaXBlUHJvcHMsXG4gICAgICAgIGFkZGl0aW9uYWxJbnN0YW5jZUNvbmZpZ3VyYXRpb246IHtcbiAgICAgICAgICB1c2VyRGF0YU92ZXJyaWRlOiBwcm9wcy51c2VyRGF0YVNjcmlwdCxcbiAgICAgICAgfSxcbiAgICAgIH07XG4gICAgfVxuXG4gICAgaWYgKHByb3BzLmVic1ZvbHVtZUNvbmZpZ3VyYXRpb25zPy5bMF0uZWJzKSB7XG4gICAgICAvLyBHbyBvdmVyIGVhY2ggY29uZmlndXJhdGlvbiBhbmQgc2V0IHRoZSBkZWZhdWx0XG4gICAgICBmb3IgKGNvbnN0IGNvbmZpZyBvZiBwcm9wcy5lYnNWb2x1bWVDb25maWd1cmF0aW9ucyEpIHtcbiAgICAgICAgLy8gSWYgZW5jcnlwdGlvbiBpcyBub3Qgc2V0LCBlbmFibGUgaXRcbiAgICAgICAgaWYgKGNvbmZpZy5lYnMuZW5jcnlwdGVkID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICBjb25maWcuZWJzLmVuY3J5cHRlZCA9IHRydWU7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBJZiBLTVMgS2V5IElEIGlzIG5vdCBzZXQsIHVzZSB0aGUgZGVmYXVsdFxuICAgICAgICBpZiAoIWNvbmZpZy5lYnMua21zS2V5SWQpIHtcbiAgICAgICAgICBjb25maWcuZWJzLmttc0tleUlkID0gZWJzVm9sdW1lRWZmZWN0aXZlS21zQWxpYXM7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBJZiBkZWxldGVPblRlcm1pbmF0aW9uIGlzIG5vdCBzZXQsIGVuYWJsZSBpdFxuICAgICAgICBpZiAoIWNvbmZpZy5lYnMuZGVsZXRlT25UZXJtaW5hdGlvbikge1xuICAgICAgICAgIGNvbmZpZy5lYnMuZGVsZXRlT25UZXJtaW5hdGlvbiA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICAgIGltYWdlUmVjaXBlUHJvcHMgPSB7XG4gICAgICAgIC4uLmltYWdlUmVjaXBlUHJvcHMsXG4gICAgICAgIGJsb2NrRGV2aWNlTWFwcGluZ3M6IHByb3BzLmVic1ZvbHVtZUNvbmZpZ3VyYXRpb25zLFxuICAgICAgfTtcbiAgICB9IGVsc2Uge1xuICAgICAgaW1hZ2VSZWNpcGVQcm9wcyA9IHtcbiAgICAgICAgLi4uaW1hZ2VSZWNpcGVQcm9wcyxcbiAgICAgICAgYmxvY2tEZXZpY2VNYXBwaW5nczogW1xuICAgICAgICAgIHtcbiAgICAgICAgICAgIGRldmljZU5hbWU6ICcvZGV2L3NkYTEnLFxuICAgICAgICAgICAgZWJzOiB7XG4gICAgICAgICAgICAgIGttc0tleUlkOiAnYWxpYXMvYXdzL2VicycsXG4gICAgICAgICAgICAgIGVuY3J5cHRlZDogdHJ1ZSxcbiAgICAgICAgICAgICAgdm9sdW1lU2l6ZTogMzAsXG4gICAgICAgICAgICAgIHZvbHVtZVR5cGU6ICdncDMnLFxuICAgICAgICAgICAgICBkZWxldGVPblRlcm1pbmF0aW9uOiB0cnVlLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9LFxuICAgICAgICBdLFxuICAgICAgfTtcbiAgICB9XG4gICAgaW1hZ2VSZWNpcGUgPSBuZXcgaW1hZ2VidWlsZGVyLkNmbkltYWdlUmVjaXBlKHRoaXMsICdJbWFnZVJlY2lwZScsIGltYWdlUmVjaXBlUHJvcHMpO1xuXG4gICAgcHJvcHMuY29tcG9uZW50cy5mb3JFYWNoKChjb21wb25lbnQ6IElDb21wb25lbnRQcm9wcywgaW5kZXg6IG51bWJlcikgPT4ge1xuICAgICAgY29uc3QgY29tcG9uZW50TmFtZSA9IGNvbXBvbmVudC5uYW1lPy5yZXBsYWNlKC8gL2csICctJyk7XG4gICAgICBjb21wb25lbnQubmFtZSA9IGNvbXBvbmVudE5hbWU7XG4gICAgICBjb25zdCBjb21wb25lbnRIYXNoID0gdGhpcy5zdHJpbmdUb01ENShKU09OLnN0cmluZ2lmeShjb21wb25lbnQpKTtcbiAgICAgIGNvbnN0IGNvbXBvbmVudERvY3VtZW50SGFzaCA9IHRoaXMuc3RyaW5nVG9NRDUoSlNPTi5zdHJpbmdpZnkoY29tcG9uZW50LmNvbXBvbmVudERvY3VtZW50KSk7XG4gICAgICBjb25zdCBjb21wb25lbnREb2N1bWVudDogSUNvbXBvbmVudERvY3VtZW50ID0ge1xuICAgICAgICBuYW1lOiBjb21wb25lbnROYW1lID8/IGAke3N0YWNrTmFtZX0tJHtjb21wb25lbnREb2N1bWVudEhhc2h9LSR7aW5kZXh9YCxcbiAgICAgICAgZGVzY3JpcHRpb246IGNvbXBvbmVudC5kZXNjcmlwdGlvbixcbiAgICAgICAgc2NoZW1hVmVyc2lvbjogY29tcG9uZW50LnNjaGVtYVZlcnNpb24gPz8gJzEuMCcsXG4gICAgICAgIHBoYXNlczogY29tcG9uZW50LmNvbXBvbmVudERvY3VtZW50LnBoYXNlcyxcbiAgICAgIH07XG4gICAgICBjb25zdCBkYXRhID0geWFtbC5kdW1wKGNvbXBvbmVudERvY3VtZW50KTtcbiAgICAgIGxldCBuZXdDb21wb25lbnQgPSBuZXcgaW1hZ2VidWlsZGVyLkNmbkNvbXBvbmVudCh0aGlzLCBjb21wb25lbnQubmFtZSA/PyBgQ29tcG9uZW50LSR7aW5kZXh9YCwge1xuICAgICAgICBuYW1lOiBjb21wb25lbnQubmFtZSA/PyBgJHtzdGFja05hbWUudG9Mb3dlckNhc2UoKX0tJHtjb21wb25lbnRIYXNofS0ke2luZGV4fWAsXG4gICAgICAgIGRlc2NyaXB0aW9uOiBjb21wb25lbnQuZGVzY3JpcHRpb24sXG4gICAgICAgIHBsYXRmb3JtOiBjb21wb25lbnQucGxhdGZvcm0gPz8gJ0xpbnV4JyxcbiAgICAgICAgdmVyc2lvbjogY29tcG9uZW50LmNvbXBvbmVudFZlcnNpb24gPz8gcHJvcHMuaW1hZ2VSZWNpcGVWZXJzaW9uID8/ICcwLjAuMScsXG4gICAgICAgIGRhdGE6IGRhdGEsXG4gICAgICB9KTtcblxuICAgICAgLy8gYWRkIHRoZSBjb21wb25lbnQgdG8gdGhlIEltYWdlIFJlY2lwZVxuICAgICAgdGhpcy5pbWFnZVJlY2lwZUNvbXBvbmVudHMucHVzaCh7IGNvbXBvbmVudEFybjogbmV3Q29tcG9uZW50LmF0dHJBcm4gfSk7XG4gICAgICBpbWFnZVJlY2lwZS5jb21wb25lbnRzID0gdGhpcy5pbWFnZVJlY2lwZUNvbXBvbmVudHM7XG4gICAgfSk7XG5cbiAgICBjb25zdCBpbWFnZVJlY2lwZUhhc2ggPSB0aGlzLnN0cmluZ1RvTUQ1KEpTT04uc3RyaW5naWZ5KHRoaXMuaW1hZ2VSZWNpcGVDb21wb25lbnRzKSk7XG4gICAgaW1hZ2VSZWNpcGUubmFtZSA9IGAke2ltYWdlUmVjaXBlTmFtZX0tJHtpbWFnZVJlY2lwZUhhc2h9LSR7aW1hZ2VSZWNpcGVWZXJzaW9uLnJlcGxhY2UoL1xcLi9nLCAnLScpfWA7XG5cbiAgICBsZXQgaW1hZ2VQaXBlbGluZVByb3BzOiBpbWFnZWJ1aWxkZXIuQ2ZuSW1hZ2VQaXBlbGluZVByb3BzO1xuICAgIGltYWdlUGlwZWxpbmVQcm9wcyA9IHtcbiAgICAgIGluZnJhc3RydWN0dXJlQ29uZmlndXJhdGlvbkFybjogaW5mcmFzdHJ1Y3R1cmVDb25maWcuYXR0ckFybixcbiAgICAgIG5hbWU6IHBpcGVsaW5lTmFtZSxcbiAgICAgIGRlc2NyaXB0aW9uOiAnSW1hZ2UgcGlwZWxpbmUnLFxuICAgICAgaW1hZ2VSZWNpcGVBcm46IGltYWdlUmVjaXBlLmF0dHJBcm4sXG4gICAgfTtcbiAgICBpZiAocHJvcHMuZW5hYmxlVnVsblNjYW5zKSB7XG4gICAgICBpbWFnZVBpcGVsaW5lUHJvcHMgPSB7XG4gICAgICAgIC4uLmltYWdlUGlwZWxpbmVQcm9wcyxcbiAgICAgICAgaW1hZ2VTY2FubmluZ0NvbmZpZ3VyYXRpb246IHtcbiAgICAgICAgICBpbWFnZVNjYW5uaW5nRW5hYmxlZDogcHJvcHMuZW5hYmxlVnVsblNjYW5zLFxuICAgICAgICAgIGVjckNvbmZpZ3VyYXRpb246IHtcbiAgICAgICAgICAgIHJlcG9zaXRvcnlOYW1lOiBwcm9wcy52dWxuU2NhbnNSZXBvTmFtZSxcbiAgICAgICAgICAgIGNvbnRhaW5lclRhZ3M6IHByb3BzLnZ1bG5TY2Fuc1JlcG9UYWdzLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICB9O1xuICAgIH1cbiAgICBpZiAoZGlzdHJpYnV0aW9uQWNjb3VudElkcy5sZW5ndGggPiAwICYmIGRpc3RyaWJ1dGlvblJlZ2lvbnMubGVuZ3RoID4gMCkge1xuICAgICAgY29uc3QgZGlzdHJpYnV0aW9uc0xpc3Q6IGltYWdlYnVpbGRlci5DZm5EaXN0cmlidXRpb25Db25maWd1cmF0aW9uLkRpc3RyaWJ1dGlvblByb3BlcnR5W10gPSBbXTtcbiAgICAgIGRpc3RyaWJ1dGlvblJlZ2lvbnMuZm9yRWFjaChkaXN0cmlidXRpb25SZWdpb24gPT4ge1xuICAgICAgICBjb25zdCBkaXN0cmlidXRpb25Db25maWc6IGFueSA9IHtcbiAgICAgICAgICByZWdpb246IGRpc3RyaWJ1dGlvblJlZ2lvbixcbiAgICAgICAgICBhbWlEaXN0cmlidXRpb25Db25maWd1cmF0aW9uOiB7XG4gICAgICAgICAgICAvL0NhcGl0YWwgY2FzZSBoZXJlIGJlY2F1c2UgaXQncyBhbiBvYmplY3Qgb2YgdHlwZSBhbnksIGJ1dCBjYXBpdGFsIGNhc2UgaXMgd2hhdCBpcyBleHBlY3RlZCBpbiBDbG91ZEZvcm1hdGlvblxuICAgICAgICAgICAgLy9odHRwczovL2RvY3MuYXdzLmFtYXpvbi5jb20vQVdTQ2xvdWRGb3JtYXRpb24vbGF0ZXN0L1VzZXJHdWlkZS9hd3MtcHJvcGVydGllcy1pbWFnZWJ1aWxkZXItZGlzdHJpYnV0aW9uY29uZmlndXJhdGlvbi1hbWlkaXN0cmlidXRpb25jb25maWd1cmF0aW9uLmh0bWxcbiAgICAgICAgICAgIE5hbWU6IGAke2ltYWdlUmVjaXBlTmFtZX0tJHtkaXN0cmlidXRpb25SZWdpb259LXt7aW1hZ2VidWlsZGVyOmJ1aWxkRGF0ZX19YCxcbiAgICAgICAgICAgIERlc2NyaXB0aW9uOiBgY29weSBBTUkgJHtpbWFnZVJlY2lwZU5hbWV9IHRvICR7ZGlzdHJpYnV0aW9uUmVnaW9ufWAsXG4gICAgICAgICAgICBUYXJnZXRBY2NvdW50SWRzOiBkaXN0cmlidXRpb25BY2NvdW50SWRzLFxuICAgICAgICAgICAgTGF1bmNoUGVybWlzc2lvbkNvbmZpZ3VyYXRpb246IHtcbiAgICAgICAgICAgICAgVXNlcklkczogZGlzdHJpYnV0aW9uQWNjb3VudElkcyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBLbXNLZXlJZDogZGlzdHJpYnV0aW9uS2V5QWxpYXMsIC8vdXNpbmcgZGVmYXVsdCBBV1MtbWFuYWdlZCBrZXkgaWYgb25lIGlzbid0IGdpdmVuIGlzIHByb2hpYml0ZWRcbiAgICAgICAgICB9LFxuICAgICAgICB9O1xuICAgICAgICBkaXN0cmlidXRpb25zTGlzdC5wdXNoKGRpc3RyaWJ1dGlvbkNvbmZpZyk7XG4gICAgICB9KTtcbiAgICAgIGNvbnN0IGFtaURpc3RyaWJ1dGlvbkNvbmZpZ3VyYXRpb24gPSBuZXcgaW1hZ2VidWlsZGVyLkNmbkRpc3RyaWJ1dGlvbkNvbmZpZ3VyYXRpb24odGhpcywgJ2FtaURpc3RyaWJ1dGlvbkNvbmZpZ3VyYXRpb24nLCB7XG4gICAgICAgIG5hbWU6IGAke2ltYWdlUmVjaXBlTmFtZX0tZGlzdHJpYnV0aW9uLWNvbmZpZy0ke2ltYWdlUmVjaXBlVmVyc2lvbi5yZXBsYWNlKC9cXC4vZywgJy0nKX1gLFxuICAgICAgICBkZXNjcmlwdGlvbjogYENyb3NzIGFjY291bnQgZGlzdHJpYnV0aW9uIHNldHRpbmdzIGZvciAke2ltYWdlUmVjaXBlTmFtZX1gLFxuICAgICAgICBkaXN0cmlidXRpb25zOiBkaXN0cmlidXRpb25zTGlzdCxcbiAgICAgIH0pO1xuICAgICAgaW1hZ2VQaXBlbGluZVByb3BzID0ge1xuICAgICAgICAuLi5pbWFnZVBpcGVsaW5lUHJvcHMsXG4gICAgICAgIGRpc3RyaWJ1dGlvbkNvbmZpZ3VyYXRpb25Bcm46IGFtaURpc3RyaWJ1dGlvbkNvbmZpZ3VyYXRpb24uYXR0ckFybixcbiAgICAgIH07XG4gICAgfVxuXG4gICAgY29uc3QgaW1hZ2VCdWlsZFBpcGVsaW5lID0gbmV3IGltYWdlYnVpbGRlci5DZm5JbWFnZVBpcGVsaW5lKHRoaXMsICdJbWFnZVBpcGVsaW5lJywgaW1hZ2VQaXBlbGluZVByb3BzKTtcbiAgICB0aGlzLmltYWdlUGlwZWxpbmVBcm4gPSBpbWFnZUJ1aWxkUGlwZWxpbmUuYXR0ckFybjtcblxuICAgIGNvbnN0IHN0YXJ0U3RhdGVNYWNoaW5lRnVuY3Rpb24gPSBuZXcgU3RhcnRTdGF0ZU1hY2hpbmVGdW5jdGlvbih0aGlzLCAnU3RhcnRTdGF0ZU1hY2hpbmVGdW5jdGlvbicsXG4gICAgICB7XG4gICAgICAgIGRlc2NyaXB0aW9uOiAnU3RhcnRTdGF0ZU1hY2hpbmVGdW5jdGlvbicsXG4gICAgICAgIG1lbW9yeVNpemU6IDEyOCxcbiAgICAgICAgdGltZW91dDogRHVyYXRpb24ubWludXRlcygxMiksXG4gICAgICAgIGluaXRpYWxQb2xpY3k6IFtcbiAgICAgICAgICBuZXcgaWFtLlBvbGljeVN0YXRlbWVudCh7XG4gICAgICAgICAgICBlZmZlY3Q6IGlhbS5FZmZlY3QuQUxMT1csXG4gICAgICAgICAgICBhY3Rpb25zOiBbXG4gICAgICAgICAgICAgIEFjdGlvbnMuc3RhdGVzLlN0YXJ0RXhlY3V0aW9uLFxuICAgICAgICAgICAgICBBY3Rpb25zLnN0YXRlcy5HZXRFeGVjdXRpb25IaXN0b3J5LFxuICAgICAgICAgICAgICBBY3Rpb25zLnN0YXRlcy5MaXN0RXhlY3V0aW9ucyxcbiAgICAgICAgICAgICAgQWN0aW9ucy5zdGF0ZXMuRGVzY3JpYmVFeGVjdXRpb24sXG4gICAgICAgICAgICBdLFxuICAgICAgICAgICAgcmVzb3VyY2VzOiBbJyonXSxcbiAgICAgICAgICB9KSxcbiAgICAgICAgICBuZXcgaWFtLlBvbGljeVN0YXRlbWVudCh7XG4gICAgICAgICAgICBlZmZlY3Q6IGlhbS5FZmZlY3QuQUxMT1csXG4gICAgICAgICAgICBhY3Rpb25zOiBbXG4gICAgICAgICAgICAgIEFjdGlvbnMuaW1hZ2VidWlsZGVyLkxpc3RJbWFnZVBpcGVsaW5lcyxcbiAgICAgICAgICAgICAgQWN0aW9ucy5pbWFnZWJ1aWxkZXIuU3RhcnRJbWFnZVBpcGVsaW5lRXhlY3V0aW9uLFxuICAgICAgICAgICAgICBBY3Rpb25zLmltYWdlYnVpbGRlci5HZXRJbWFnZSxcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICByZXNvdXJjZXM6IFsnKiddLFxuICAgICAgICAgIH0pLFxuICAgICAgICAgIG5ldyBpYW0uUG9saWN5U3RhdGVtZW50KHtcbiAgICAgICAgICAgIGVmZmVjdDogaWFtLkVmZmVjdC5BTExPVyxcbiAgICAgICAgICAgIGFjdGlvbnM6IFtcbiAgICAgICAgICAgICAgJ2ttczoqJyxcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgICAvLyBhcm46e3BhcnRpdGlvbn06e3NlcnZpY2V9OntyZWdpb259OnthY2NvdW50fTp7cmVzb3VyY2V9e3NlcH17cmVzb3VyY2UtbmFtZX0vXG4gICAgICAgICAgICByZXNvdXJjZXM6IFtBcm4uZm9ybWF0KHtcbiAgICAgICAgICAgICAgc2VydmljZTogJ2ttcycsXG4gICAgICAgICAgICAgIHJlc291cmNlOiAnYWxpYXMvYXdzL2VicycsXG4gICAgICAgICAgICAgIGFjY291bnQ6ICcqJyxcbiAgICAgICAgICAgICAgcmVnaW9uOiAnKicsXG4gICAgICAgICAgICAgIHBhcnRpdGlvbjogJ2F3cycsXG4gICAgICAgICAgICB9KV0sXG4gICAgICAgICAgfSksXG4gICAgICAgIF0sXG4gICAgICB9KTtcblxuICAgIGNvbnN0IGNoZWNrU3RhdGVNYWNoaW5lU3RhdHVzRnVuY3Rpb24gPSBuZXcgQ2hlY2tTdGF0ZU1hY2hpbmVTdGF0dXNGdW5jdGlvbih0aGlzLCAnQ2hlY2tTdGF0ZU1hY2hpbmVTdGF0dXNGdW5jdGlvbicsIHtcbiAgICAgIGRlc2NyaXB0aW9uOiAnQ2hlY2tTdGF0ZU1hY2hpbmVTdGF0dXNGdW5jdGlvbicsXG4gICAgICBtZW1vcnlTaXplOiAxMjgsXG4gICAgICB0aW1lb3V0OiBEdXJhdGlvbi5taW51dGVzKDEyKSxcbiAgICAgIGluaXRpYWxQb2xpY3k6IFtcbiAgICAgICAgbmV3IGlhbS5Qb2xpY3lTdGF0ZW1lbnQoe1xuICAgICAgICAgIGVmZmVjdDogaWFtLkVmZmVjdC5BTExPVyxcbiAgICAgICAgICBhY3Rpb25zOiBbXG4gICAgICAgICAgICBBY3Rpb25zLnN0YXRlcy5EZXNjcmliZUV4ZWN1dGlvbixcbiAgICAgICAgICAgIEFjdGlvbnMuc3RhdGVzLkxpc3RFeGVjdXRpb25zLFxuICAgICAgICAgICAgQWN0aW9ucy5zdGF0ZXMuR2V0RXhlY3V0aW9uSGlzdG9yeSxcbiAgICAgICAgICBdLFxuICAgICAgICAgIHJlc291cmNlczogWycqJ10sXG4gICAgICAgIH0pLFxuICAgICAgICBuZXcgaWFtLlBvbGljeVN0YXRlbWVudCh7XG4gICAgICAgICAgZWZmZWN0OiBpYW0uRWZmZWN0LkFMTE9XLFxuICAgICAgICAgIGFjdGlvbnM6IFtcbiAgICAgICAgICAgIEFjdGlvbnMuaW1hZ2VidWlsZGVyLkxpc3RJbWFnZVBpcGVsaW5lcyxcbiAgICAgICAgICAgIEFjdGlvbnMuaW1hZ2VidWlsZGVyLlN0YXJ0SW1hZ2VQaXBlbGluZUV4ZWN1dGlvbixcbiAgICAgICAgICAgIEFjdGlvbnMuaW1hZ2VidWlsZGVyLkdldEltYWdlLFxuICAgICAgICAgIF0sXG4gICAgICAgICAgcmVzb3VyY2VzOiBbJyonXSxcbiAgICAgICAgfSksXG4gICAgICAgIG5ldyBpYW0uUG9saWN5U3RhdGVtZW50KHtcbiAgICAgICAgICBlZmZlY3Q6IGlhbS5FZmZlY3QuQUxMT1csXG4gICAgICAgICAgYWN0aW9uczogW1xuICAgICAgICAgICAgQWN0aW9ucy5lYzIuTW9kaWZ5SW1hZ2VBdHRyaWJ1dGUsXG4gICAgICAgICAgXSxcbiAgICAgICAgICByZXNvdXJjZXM6IFsnKiddLFxuICAgICAgICB9KSxcbiAgICAgICAgbmV3IGlhbS5Qb2xpY3lTdGF0ZW1lbnQoe1xuICAgICAgICAgIGVmZmVjdDogaWFtLkVmZmVjdC5BTExPVyxcbiAgICAgICAgICBhY3Rpb25zOiBbXG4gICAgICAgICAgICAna21zOionLFxuICAgICAgICAgIF0sXG4gICAgICAgICAgcmVzb3VyY2VzOiBbQXJuLmZvcm1hdCh7XG4gICAgICAgICAgICBzZXJ2aWNlOiAna21zJyxcbiAgICAgICAgICAgIHJlc291cmNlOiAnYWxpYXMvYXdzL2VicycsXG4gICAgICAgICAgICBhY2NvdW50OiAnKicsXG4gICAgICAgICAgICByZWdpb246ICcqJyxcbiAgICAgICAgICAgIHBhcnRpdGlvbjogJ2F3cycsXG4gICAgICAgICAgfSldLFxuICAgICAgICB9KSxcbiAgICAgIF0sXG4gICAgfSk7XG5cbiAgICBjb25zdCBwcm92aWRlciA9IG5ldyBQcm92aWRlcih0aGlzLCAnUmVzb3VyY2VQcm92aWRlcicsIHtcbiAgICAgIG9uRXZlbnRIYW5kbGVyOiBzdGFydFN0YXRlTWFjaGluZUZ1bmN0aW9uLFxuICAgICAgaXNDb21wbGV0ZUhhbmRsZXI6IGNoZWNrU3RhdGVNYWNoaW5lU3RhdHVzRnVuY3Rpb24sXG4gICAgICB0b3RhbFRpbWVvdXQ6IER1cmF0aW9uLm1pbnV0ZXMoNjApLFxuICAgICAgcXVlcnlJbnRlcnZhbDogRHVyYXRpb24ubWludXRlcygyKSxcbiAgICB9KTtcblxuICAgIGNvbnN0IHN0YXRlTWFjaGluZVJvbGUgPSBuZXcgUm9sZSh0aGlzLCAnU3RhdGVNYWNoaW5lUm9sZScsIHtcbiAgICAgIGFzc3VtZWRCeTogbmV3IGlhbS5TZXJ2aWNlUHJpbmNpcGFsKCdzdGF0ZXMuYW1hem9uYXdzLmNvbScpLFxuICAgICAgbWFuYWdlZFBvbGljaWVzOiBbXG4gICAgICAgIGlhbS5NYW5hZ2VkUG9saWN5LmZyb21Bd3NNYW5hZ2VkUG9saWN5TmFtZSgnc2VydmljZS1yb2xlL0FXU0xhbWJkYVJvbGUnKSxcbiAgICAgIF0sXG4gICAgICBpbmxpbmVQb2xpY2llczoge1xuICAgICAgICBTdGF0ZU1hY2hpbmVQb2xpY3k6IG5ldyBpYW0uUG9saWN5RG9jdW1lbnQoe1xuICAgICAgICAgIHN0YXRlbWVudHM6IFtcbiAgICAgICAgICAgIG5ldyBpYW0uUG9saWN5U3RhdGVtZW50KHtcbiAgICAgICAgICAgICAgZWZmZWN0OiBpYW0uRWZmZWN0LkFMTE9XLFxuICAgICAgICAgICAgICBhY3Rpb25zOiBbXG4gICAgICAgICAgICAgICAgQWN0aW9ucy54cmF5LlB1dFRyYWNlU2VnbWVudHMsXG4gICAgICAgICAgICAgICAgQWN0aW9ucy54cmF5LlB1dFRlbGVtZXRyeVJlY29yZHMsXG4gICAgICAgICAgICAgICAgQWN0aW9ucy54cmF5LkdldFNhbXBsaW5nUnVsZXMsXG4gICAgICAgICAgICAgICAgQWN0aW9ucy54cmF5LkdldFNhbXBsaW5nVGFyZ2V0cyxcbiAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgICAgcmVzb3VyY2VzOiBbJyonXSxcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgbmV3IGlhbS5Qb2xpY3lTdGF0ZW1lbnQoe1xuICAgICAgICAgICAgICBlZmZlY3Q6IGlhbS5FZmZlY3QuQUxMT1csXG4gICAgICAgICAgICAgIGFjdGlvbnM6IFtcbiAgICAgICAgICAgICAgICAnaW1hZ2VidWlsZGVyOionLFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICByZXNvdXJjZXM6IFtgYXJuOmF3czppbWFnZWJ1aWxkZXI6JHtyZWdpb24gPz8gJyonfToke2FjY291bnQgPz8gJyonfTppbWFnZS1waXBlbGluZS8ke3BpcGVsaW5lQmFzZU5hbWUudG9Mb3dlckNhc2UoKX0tKmBdLFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgICBuZXcgaWFtLlBvbGljeVN0YXRlbWVudCh7XG4gICAgICAgICAgICAgIGVmZmVjdDogaWFtLkVmZmVjdC5BTExPVyxcbiAgICAgICAgICAgICAgYWN0aW9uczogW1xuICAgICAgICAgICAgICAgIEFjdGlvbnMuaW1hZ2VidWlsZGVyLkdldEltYWdlLFxuICAgICAgICAgICAgICBdLFxuICAgICAgICAgICAgICByZXNvdXJjZXM6IFsnKiddLFxuICAgICAgICAgICAgfSksXG4gICAgICAgICAgXSxcbiAgICAgICAgfSksXG4gICAgICB9LFxuICAgIH0pO1xuXG4gICAgY29uc3Qgc3RhdGVNYWNoaW5lID0gbmV3IFN0YXRlTWFjaGluZSh0aGlzLCAnU3RhdGVNYWNoaW5lJywge1xuICAgICAgZGVmaW5pdGlvbjogSlNPTi5wYXJzZShcbiAgICAgICAgZnMucmVhZEZpbGVTeW5jKHBhdGguam9pbihcbiAgICAgICAgICBfX2Rpcm5hbWUsICcuLicsICdTdGF0ZU1hY2hpbmVGaWxlcycsICdJbWFnZUJ1aWxkaW5nU3RhdGVNYWNoaW5lLmpzb24nKSwgJ3V0ZjgnKS50b1N0cmluZygpKSxcbiAgICAgIHJvbGU6IHN0YXRlTWFjaGluZVJvbGUsXG4gICAgfSk7XG5cbiAgICBjb25zdCBlZmZlY3RpdmVSZW1vdmFsUG9saWN5ID0gcHJvcHMuZGVidWdJbWFnZVBpcGVsaW5lID09PSB0cnVlID8gUmVtb3ZhbFBvbGljeS5SRVRBSU4gOiBSZW1vdmFsUG9saWN5LkRFU1RST1k7XG5cbiAgICBjb25zdCBjb21wb25lbnRzSGFzaCA9IHRoaXMuc3RyaW5nVG9NRDUoSlNPTi5zdHJpbmdpZnkocHJvcHMuY29tcG9uZW50cykpO1xuICAgIGNvbnN0IGltYWdlUGlwZWxpbmUgPSBuZXcgQ3VzdG9tUmVzb3VyY2UodGhpcywgJ0N1c3RvbVJlc291cmNlJyxcbiAgICAgIHtcbiAgICAgICAgc2VydmljZVRva2VuOiBwcm92aWRlci5zZXJ2aWNlVG9rZW4sXG4gICAgICAgIHByb3BlcnRpZXM6IHtcbiAgICAgICAgICBJbWFnZVBpcGVsaW5lQXJuOiBpbWFnZUJ1aWxkUGlwZWxpbmUuYXR0ckFybixcbiAgICAgICAgICBTdGF0ZU1hY2hpbmVBcm46IHN0YXRlTWFjaGluZS5zdGF0ZU1hY2hpbmVBcm4sXG4gICAgICAgICAgVmVyc2lvbjogcHJvcHMuaW1hZ2VSZWNpcGVWZXJzaW9uID8/ICcwLjAuMScsXG4gICAgICAgICAgQ29tcG9uZW50c0hhc2g6IGNvbXBvbmVudHNIYXNoLFxuICAgICAgICAgIFBoeXNpY2FsUmVzb3VyY2VJZDogYCR7c3RhY2tOYW1lfS1JbWFnZVBpcGVsaW5lLSR7aW1hZ2VSZWNpcGVWZXJzaW9uLnJlcGxhY2UoL1xcLi9nLCAnLScpfWAsXG4gICAgICAgICAgQW1pS21zSWQ6IGRpc3RyaWJ1dGlvbktleUFsaWFzLFxuICAgICAgICAgIFNoYXJlZEFjY291bnRJZHM6IGRpc3RyaWJ1dGlvbkFjY291bnRJZHMuam9pbignLCcpLFxuICAgICAgICAgIERlYnVnSW1hZ2VQaXBlbGluZTogcHJvcHMuZGVidWdJbWFnZVBpcGVsaW5lID09PSB0cnVlID8gJ3RydWUnIDogJ2ZhbHNlJyxcbiAgICAgICAgfSxcbiAgICAgICAgcmVtb3ZhbFBvbGljeTogZWZmZWN0aXZlUmVtb3ZhbFBvbGljeSxcbiAgICAgIH0pO1xuXG4gICAgdGhpcy5pbWFnZUlkID0gaW1hZ2VQaXBlbGluZS5nZXRBdHRTdHJpbmcoJ0FtaUlkJyk7XG4gIH1cblxuICBwcml2YXRlIHN0cmluZ1RvTUQ1KGlucHV0U3RyaW5nOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiBDcnlwdG9KUy5NRDUoaW5wdXRTdHJpbmcpLnRvU3RyaW5nKCk7XG4gIH1cblxufVxuXG4iXX0=
|
|
@@ -23,5 +23,5 @@ class CheckStateMachineStatusFunction extends lambda.Function {
|
|
|
23
23
|
}
|
|
24
24
|
exports.CheckStateMachineStatusFunction = CheckStateMachineStatusFunction;
|
|
25
25
|
_a = JSII_RTTI_SYMBOL_1;
|
|
26
|
-
CheckStateMachineStatusFunction[_a] = { fqn: "@jjrawlins/cdk-ami-builder.CheckStateMachineStatusFunction", version: "0.0.
|
|
26
|
+
CheckStateMachineStatusFunction[_a] = { fqn: "@jjrawlins/cdk-ami-builder.CheckStateMachineStatusFunction", version: "0.0.27" };
|
|
27
27
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2hlY2tTdGF0ZU1hY2hpbmVTdGF0dXMtZnVuY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvTGFtYmRhcy9DaGVja1N0YXRlTWFjaGluZVN0YXR1cy9DaGVja1N0YXRlTWFjaGluZVN0YXR1cy1mdW5jdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDZFQUE2RTtBQUM3RSw2QkFBNkI7QUFDN0IsaURBQWlEO0FBU2pEOztHQUVHO0FBQ0gsTUFBYSwrQkFBZ0MsU0FBUSxNQUFNLENBQUMsUUFBUTtJQUNsRSxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQTRDO1FBQ3BGLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFO1lBQ2YsV0FBVyxFQUFFLHVFQUF1RTtZQUNwRixHQUFHLEtBQUs7WUFDUixPQUFPLEVBQUUsSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDLFlBQVksRUFBRSxNQUFNLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQztZQUN0RSxPQUFPLEVBQUUsZUFBZTtZQUN4QixJQUFJLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsZ0ZBQWdGLENBQUMsQ0FBQztTQUNwSSxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsY0FBYyxDQUFDLHFDQUFxQyxFQUFFLEdBQUcsRUFBRSxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQzFGLENBQUM7O0FBVkgsMEVBV0MiLCJzb3VyY2VzQ29udGVudCI6WyIvLyB+fiBHZW5lcmF0ZWQgYnkgcHJvamVuLiBUbyBtb2RpZnksIGVkaXQgLnByb2plbnJjLnRzIGFuZCBydW4gXCJucHggcHJvamVuXCIuXG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnO1xuaW1wb3J0ICogYXMgbGFtYmRhIGZyb20gJ2F3cy1jZGstbGliL2F3cy1sYW1iZGEnO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5cbi8qKlxuICogUHJvcHMgZm9yIENoZWNrU3RhdGVNYWNoaW5lU3RhdHVzRnVuY3Rpb25cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBDaGVja1N0YXRlTWFjaGluZVN0YXR1c0Z1bmN0aW9uUHJvcHMgZXh0ZW5kcyBsYW1iZGEuRnVuY3Rpb25PcHRpb25zIHtcbn1cblxuLyoqXG4gKiBBbiBBV1MgTGFtYmRhIGZ1bmN0aW9uIHdoaWNoIGV4ZWN1dGVzIHNyYy9MYW1iZGFzL0NoZWNrU3RhdGVNYWNoaW5lU3RhdHVzL0NoZWNrU3RhdGVNYWNoaW5lU3RhdHVzLlxuICovXG5leHBvcnQgY2xhc3MgQ2hlY2tTdGF0ZU1hY2hpbmVTdGF0dXNGdW5jdGlvbiBleHRlbmRzIGxhbWJkYS5GdW5jdGlvbiB7XG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzPzogQ2hlY2tTdGF0ZU1hY2hpbmVTdGF0dXNGdW5jdGlvblByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCB7XG4gICAgICBkZXNjcmlwdGlvbjogJ3NyYy9MYW1iZGFzL0NoZWNrU3RhdGVNYWNoaW5lU3RhdHVzL0NoZWNrU3RhdGVNYWNoaW5lU3RhdHVzLmxhbWJkYS50cycsXG4gICAgICAuLi5wcm9wcyxcbiAgICAgIHJ1bnRpbWU6IG5ldyBsYW1iZGEuUnVudGltZSgnbm9kZWpzMjIueCcsIGxhbWJkYS5SdW50aW1lRmFtaWx5Lk5PREVKUyksXG4gICAgICBoYW5kbGVyOiAnaW5kZXguaGFuZGxlcicsXG4gICAgICBjb2RlOiBsYW1iZGEuQ29kZS5mcm9tQXNzZXQocGF0aC5qb2luKF9fZGlybmFtZSwgJy4uLy4uLy4uL2Fzc2V0cy9MYW1iZGFzL0NoZWNrU3RhdGVNYWNoaW5lU3RhdHVzL0NoZWNrU3RhdGVNYWNoaW5lU3RhdHVzLmxhbWJkYScpKSxcbiAgICB9KTtcbiAgICB0aGlzLmFkZEVudmlyb25tZW50KCdBV1NfTk9ERUpTX0NPTk5FQ1RJT05fUkVVU0VfRU5BQkxFRCcsICcxJywgeyByZW1vdmVJbkVkZ2U6IHRydWUgfSk7XG4gIH1cbn0iXX0=
|
|
@@ -23,5 +23,5 @@ class StartStateMachineFunction extends lambda.Function {
|
|
|
23
23
|
}
|
|
24
24
|
exports.StartStateMachineFunction = StartStateMachineFunction;
|
|
25
25
|
_a = JSII_RTTI_SYMBOL_1;
|
|
26
|
-
StartStateMachineFunction[_a] = { fqn: "@jjrawlins/cdk-ami-builder.StartStateMachineFunction", version: "0.0.
|
|
26
|
+
StartStateMachineFunction[_a] = { fqn: "@jjrawlins/cdk-ami-builder.StartStateMachineFunction", version: "0.0.27" };
|
|
27
27
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3RhcnRTdGF0ZU1hY2hpbmUtZnVuY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvTGFtYmRhcy9TdGFydFN0YXRlTWFjaGluZS9TdGFydFN0YXRlTWFjaGluZS1mdW5jdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLDZFQUE2RTtBQUM3RSw2QkFBNkI7QUFDN0IsaURBQWlEO0FBU2pEOztHQUVHO0FBQ0gsTUFBYSx5QkFBMEIsU0FBUSxNQUFNLENBQUMsUUFBUTtJQUM1RCxZQUFZLEtBQWdCLEVBQUUsRUFBVSxFQUFFLEtBQXNDO1FBQzlFLEtBQUssQ0FBQyxLQUFLLEVBQUUsRUFBRSxFQUFFO1lBQ2YsV0FBVyxFQUFFLDJEQUEyRDtZQUN4RSxHQUFHLEtBQUs7WUFDUixPQUFPLEVBQUUsSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDLFlBQVksRUFBRSxNQUFNLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQztZQUN0RSxPQUFPLEVBQUUsZUFBZTtZQUN4QixJQUFJLEVBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLEVBQUUsb0VBQW9FLENBQUMsQ0FBQztTQUN4SCxDQUFDLENBQUM7UUFDSCxJQUFJLENBQUMsY0FBYyxDQUFDLHFDQUFxQyxFQUFFLEdBQUcsRUFBRSxFQUFFLFlBQVksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQzFGLENBQUM7O0FBVkgsOERBV0MiLCJzb3VyY2VzQ29udGVudCI6WyIvLyB+fiBHZW5lcmF0ZWQgYnkgcHJvamVuLiBUbyBtb2RpZnksIGVkaXQgLnByb2plbnJjLnRzIGFuZCBydW4gXCJucHggcHJvamVuXCIuXG5pbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnO1xuaW1wb3J0ICogYXMgbGFtYmRhIGZyb20gJ2F3cy1jZGstbGliL2F3cy1sYW1iZGEnO1xuaW1wb3J0IHsgQ29uc3RydWN0IH0gZnJvbSAnY29uc3RydWN0cyc7XG5cbi8qKlxuICogUHJvcHMgZm9yIFN0YXJ0U3RhdGVNYWNoaW5lRnVuY3Rpb25cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBTdGFydFN0YXRlTWFjaGluZUZ1bmN0aW9uUHJvcHMgZXh0ZW5kcyBsYW1iZGEuRnVuY3Rpb25PcHRpb25zIHtcbn1cblxuLyoqXG4gKiBBbiBBV1MgTGFtYmRhIGZ1bmN0aW9uIHdoaWNoIGV4ZWN1dGVzIHNyYy9MYW1iZGFzL1N0YXJ0U3RhdGVNYWNoaW5lL1N0YXJ0U3RhdGVNYWNoaW5lLlxuICovXG5leHBvcnQgY2xhc3MgU3RhcnRTdGF0ZU1hY2hpbmVGdW5jdGlvbiBleHRlbmRzIGxhbWJkYS5GdW5jdGlvbiB7XG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzPzogU3RhcnRTdGF0ZU1hY2hpbmVGdW5jdGlvblByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCB7XG4gICAgICBkZXNjcmlwdGlvbjogJ3NyYy9MYW1iZGFzL1N0YXJ0U3RhdGVNYWNoaW5lL1N0YXJ0U3RhdGVNYWNoaW5lLmxhbWJkYS50cycsXG4gICAgICAuLi5wcm9wcyxcbiAgICAgIHJ1bnRpbWU6IG5ldyBsYW1iZGEuUnVudGltZSgnbm9kZWpzMjIueCcsIGxhbWJkYS5SdW50aW1lRmFtaWx5Lk5PREVKUyksXG4gICAgICBoYW5kbGVyOiAnaW5kZXguaGFuZGxlcicsXG4gICAgICBjb2RlOiBsYW1iZGEuQ29kZS5mcm9tQXNzZXQocGF0aC5qb2luKF9fZGlybmFtZSwgJy4uLy4uLy4uL2Fzc2V0cy9MYW1iZGFzL1N0YXJ0U3RhdGVNYWNoaW5lL1N0YXJ0U3RhdGVNYWNoaW5lLmxhbWJkYScpKSxcbiAgICB9KTtcbiAgICB0aGlzLmFkZEVudmlyb25tZW50KCdBV1NfTk9ERUpTX0NPTk5FQ1RJT05fUkVVU0VfRU5BQkxFRCcsICcxJywgeyByZW1vdmVJbkVkZ2U6IHRydWUgfSk7XG4gIH1cbn0iXX0=
|