aws-delivlib 13.4.3 → 13.4.4
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/cdk.out/delivlib-test.assets.json +2 -2
- package/cdk.out/delivlib-test.template.json +30 -25
- package/cdk.out/manifest.json +119 -119
- package/cdk.out/tree.json +30 -25
- package/lib/__tests__/test-stack.js +8 -7
- package/package.json +1 -1
package/cdk.out/tree.json
CHANGED
|
@@ -882,7 +882,7 @@
|
|
|
882
882
|
"Owner": "awslabs",
|
|
883
883
|
"Repo": "aws-delivlib-sample",
|
|
884
884
|
"Branch": "master",
|
|
885
|
-
"OAuthToken": "{{resolve:secretsmanager:arn:aws:secretsmanager:us-east-1:712950704752:secret:github-token-
|
|
885
|
+
"OAuthToken": "{{resolve:secretsmanager:arn:aws:secretsmanager:us-east-1:712950704752:secret:github-token-QDP6QX:SecretString:::}}",
|
|
886
886
|
"PollForSourceChanges": false
|
|
887
887
|
},
|
|
888
888
|
"runOrder": 1
|
|
@@ -1291,7 +1291,7 @@
|
|
|
1291
1291
|
"aws:cdk:cloudformation:props": {
|
|
1292
1292
|
"authentication": "GITHUB_HMAC",
|
|
1293
1293
|
"authenticationConfiguration": {
|
|
1294
|
-
"secretToken": "{{resolve:secretsmanager:arn:aws:secretsmanager:us-east-1:712950704752:secret:github-token-
|
|
1294
|
+
"secretToken": "{{resolve:secretsmanager:arn:aws:secretsmanager:us-east-1:712950704752:secret:github-token-QDP6QX:SecretString:::}}"
|
|
1295
1295
|
},
|
|
1296
1296
|
"filters": [
|
|
1297
1297
|
{
|
|
@@ -5671,7 +5671,7 @@
|
|
|
5671
5671
|
"secretsmanager:GetSecretValue"
|
|
5672
5672
|
],
|
|
5673
5673
|
"Effect": "Allow",
|
|
5674
|
-
"Resource": "arn:aws:secretsmanager:us-east-1:712950704752:secret:delivlib/npm-
|
|
5674
|
+
"Resource": "arn:aws:secretsmanager:us-east-1:712950704752:secret:delivlib/npm-MhaWgx"
|
|
5675
5675
|
},
|
|
5676
5676
|
{
|
|
5677
5677
|
"Action": [
|
|
@@ -5788,12 +5788,12 @@
|
|
|
5788
5788
|
{
|
|
5789
5789
|
"name": "FOR_REAL",
|
|
5790
5790
|
"type": "PLAINTEXT",
|
|
5791
|
-
"value": "
|
|
5791
|
+
"value": "false"
|
|
5792
5792
|
},
|
|
5793
5793
|
{
|
|
5794
5794
|
"name": "NPM_TOKEN_SECRET",
|
|
5795
5795
|
"type": "PLAINTEXT",
|
|
5796
|
-
"value": "arn:aws:secretsmanager:us-east-1:712950704752:secret:delivlib/npm-
|
|
5796
|
+
"value": "arn:aws:secretsmanager:us-east-1:712950704752:secret:delivlib/npm-MhaWgx"
|
|
5797
5797
|
},
|
|
5798
5798
|
{
|
|
5799
5799
|
"name": "DISTTAG",
|
|
@@ -6084,7 +6084,7 @@
|
|
|
6084
6084
|
"secretsmanager:GetSecretValue"
|
|
6085
6085
|
],
|
|
6086
6086
|
"Effect": "Allow",
|
|
6087
|
-
"Resource": "arn:aws:secretsmanager:us-east-1:712950704752:secret:delivlib/nuget-
|
|
6087
|
+
"Resource": "arn:aws:secretsmanager:us-east-1:712950704752:secret:delivlib/nuget-jDbgrN"
|
|
6088
6088
|
},
|
|
6089
6089
|
{
|
|
6090
6090
|
"Action": [
|
|
@@ -6234,7 +6234,7 @@
|
|
|
6234
6234
|
{
|
|
6235
6235
|
"name": "FOR_REAL",
|
|
6236
6236
|
"type": "PLAINTEXT",
|
|
6237
|
-
"value": "
|
|
6237
|
+
"value": "false"
|
|
6238
6238
|
},
|
|
6239
6239
|
{
|
|
6240
6240
|
"name": "NUGET_SECRET_REGION",
|
|
@@ -6244,7 +6244,7 @@
|
|
|
6244
6244
|
{
|
|
6245
6245
|
"name": "NUGET_SECRET_ID",
|
|
6246
6246
|
"type": "PLAINTEXT",
|
|
6247
|
-
"value": "arn:aws:secretsmanager:us-east-1:712950704752:secret:delivlib/nuget-
|
|
6247
|
+
"value": "arn:aws:secretsmanager:us-east-1:712950704752:secret:delivlib/nuget-jDbgrN"
|
|
6248
6248
|
},
|
|
6249
6249
|
{
|
|
6250
6250
|
"name": "CODE_SIGNING_SECRET_ID",
|
|
@@ -6542,7 +6542,7 @@
|
|
|
6542
6542
|
"secretsmanager:GetSecretValue"
|
|
6543
6543
|
],
|
|
6544
6544
|
"Effect": "Allow",
|
|
6545
|
-
"Resource": "arn:aws:secretsmanager:us-east-1:712950704752:secret:delivlib/maven-
|
|
6545
|
+
"Resource": "arn:aws:secretsmanager:us-east-1:712950704752:secret:delivlib/maven-S4Q2y3"
|
|
6546
6546
|
},
|
|
6547
6547
|
{
|
|
6548
6548
|
"Action": [
|
|
@@ -6698,12 +6698,12 @@
|
|
|
6698
6698
|
{
|
|
6699
6699
|
"name": "FOR_REAL",
|
|
6700
6700
|
"type": "PLAINTEXT",
|
|
6701
|
-
"value": "
|
|
6701
|
+
"value": "false"
|
|
6702
6702
|
},
|
|
6703
6703
|
{
|
|
6704
6704
|
"name": "MAVEN_LOGIN_SECRET",
|
|
6705
6705
|
"type": "PLAINTEXT",
|
|
6706
|
-
"value": "arn:aws:secretsmanager:us-east-1:712950704752:secret:delivlib/maven-
|
|
6706
|
+
"value": "arn:aws:secretsmanager:us-east-1:712950704752:secret:delivlib/maven-S4Q2y3"
|
|
6707
6707
|
},
|
|
6708
6708
|
{
|
|
6709
6709
|
"name": "MAVEN_ENDPOINT",
|
|
@@ -7012,7 +7012,7 @@
|
|
|
7012
7012
|
"secretsmanager:DescribeSecret"
|
|
7013
7013
|
],
|
|
7014
7014
|
"Effect": "Allow",
|
|
7015
|
-
"Resource": "arn:aws:secretsmanager:us-east-1:712950704752:secret:github-token-
|
|
7015
|
+
"Resource": "arn:aws:secretsmanager:us-east-1:712950704752:secret:github-token-QDP6QX"
|
|
7016
7016
|
},
|
|
7017
7017
|
{
|
|
7018
7018
|
"Action": [
|
|
@@ -7188,7 +7188,7 @@
|
|
|
7188
7188
|
{
|
|
7189
7189
|
"name": "FOR_REAL",
|
|
7190
7190
|
"type": "PLAINTEXT",
|
|
7191
|
-
"value": "
|
|
7191
|
+
"value": "false"
|
|
7192
7192
|
},
|
|
7193
7193
|
{
|
|
7194
7194
|
"name": "SECONDARY_SOURCE_NAMES",
|
|
@@ -7492,7 +7492,7 @@
|
|
|
7492
7492
|
"secretsmanager:GetSecretValue"
|
|
7493
7493
|
],
|
|
7494
7494
|
"Effect": "Allow",
|
|
7495
|
-
"Resource": "arn:aws:secretsmanager:us-east-1:712950704752:secret:delivlib/github-ssh-
|
|
7495
|
+
"Resource": "arn:aws:secretsmanager:us-east-1:712950704752:secret:delivlib/github-ssh-okGazo"
|
|
7496
7496
|
},
|
|
7497
7497
|
{
|
|
7498
7498
|
"Action": [
|
|
@@ -7619,12 +7619,12 @@
|
|
|
7619
7619
|
{
|
|
7620
7620
|
"name": "SSH_KEY_SECRET",
|
|
7621
7621
|
"type": "PLAINTEXT",
|
|
7622
|
-
"value": "arn:aws:secretsmanager:us-east-1:712950704752:secret:delivlib/github-ssh-
|
|
7622
|
+
"value": "arn:aws:secretsmanager:us-east-1:712950704752:secret:delivlib/github-ssh-okGazo"
|
|
7623
7623
|
},
|
|
7624
7624
|
{
|
|
7625
7625
|
"name": "FOR_REAL",
|
|
7626
7626
|
"type": "PLAINTEXT",
|
|
7627
|
-
"value": "
|
|
7627
|
+
"value": "false"
|
|
7628
7628
|
},
|
|
7629
7629
|
{
|
|
7630
7630
|
"name": "COMMIT_USERNAME",
|
|
@@ -7920,7 +7920,7 @@
|
|
|
7920
7920
|
"secretsmanager:GetSecretValue"
|
|
7921
7921
|
],
|
|
7922
7922
|
"Effect": "Allow",
|
|
7923
|
-
"Resource": "arn:aws:secretsmanager:us-east-1:712950704752:secret:delivlib/pypi-
|
|
7923
|
+
"Resource": "arn:aws:secretsmanager:us-east-1:712950704752:secret:delivlib/pypi-tp8M57"
|
|
7924
7924
|
},
|
|
7925
7925
|
{
|
|
7926
7926
|
"Action": [
|
|
@@ -8037,12 +8037,12 @@
|
|
|
8037
8037
|
{
|
|
8038
8038
|
"name": "FOR_REAL",
|
|
8039
8039
|
"type": "PLAINTEXT",
|
|
8040
|
-
"value": "
|
|
8040
|
+
"value": "false"
|
|
8041
8041
|
},
|
|
8042
8042
|
{
|
|
8043
8043
|
"name": "PYPI_CREDENTIALS_SECRET_ID",
|
|
8044
8044
|
"type": "PLAINTEXT",
|
|
8045
|
-
"value": "arn:aws:secretsmanager:us-east-1:712950704752:secret:delivlib/pypi-
|
|
8045
|
+
"value": "arn:aws:secretsmanager:us-east-1:712950704752:secret:delivlib/pypi-tp8M57"
|
|
8046
8046
|
}
|
|
8047
8047
|
]
|
|
8048
8048
|
},
|
|
@@ -8323,7 +8323,7 @@
|
|
|
8323
8323
|
"secretsmanager:GetSecretValue"
|
|
8324
8324
|
],
|
|
8325
8325
|
"Effect": "Allow",
|
|
8326
|
-
"Resource": "arn:aws:secretsmanager:us-east-1:712950704752:secret:github-token-
|
|
8326
|
+
"Resource": "arn:aws:secretsmanager:us-east-1:712950704752:secret:github-token-QDP6QX"
|
|
8327
8327
|
},
|
|
8328
8328
|
{
|
|
8329
8329
|
"Action": [
|
|
@@ -8437,10 +8437,15 @@
|
|
|
8437
8437
|
"type": "PLAINTEXT",
|
|
8438
8438
|
"value": "d51656c063a0eef8e6e43eebc868209915793a138eb4a16217cb8d51583f6424.zip"
|
|
8439
8439
|
},
|
|
8440
|
+
{
|
|
8441
|
+
"name": "DRYRUN",
|
|
8442
|
+
"type": "PLAINTEXT",
|
|
8443
|
+
"value": "true"
|
|
8444
|
+
},
|
|
8440
8445
|
{
|
|
8441
8446
|
"name": "GITHUB_TOKEN_SECRET",
|
|
8442
8447
|
"type": "PLAINTEXT",
|
|
8443
|
-
"value": "arn:aws:secretsmanager:us-east-1:712950704752:secret:github-token-
|
|
8448
|
+
"value": "arn:aws:secretsmanager:us-east-1:712950704752:secret:github-token-QDP6QX"
|
|
8444
8449
|
},
|
|
8445
8450
|
{
|
|
8446
8451
|
"name": "GIT_BRANCH",
|
|
@@ -8666,7 +8671,7 @@
|
|
|
8666
8671
|
"secretsmanager:GetSecretValue"
|
|
8667
8672
|
],
|
|
8668
8673
|
"Effect": "Allow",
|
|
8669
|
-
"Resource": "arn:aws:secretsmanager:us-east-1:712950704752:secret:delivlib/github-ssh-
|
|
8674
|
+
"Resource": "arn:aws:secretsmanager:us-east-1:712950704752:secret:delivlib/github-ssh-okGazo"
|
|
8670
8675
|
},
|
|
8671
8676
|
{
|
|
8672
8677
|
"Action": [
|
|
@@ -8675,7 +8680,7 @@
|
|
|
8675
8680
|
"secretsmanager:GetSecretValue"
|
|
8676
8681
|
],
|
|
8677
8682
|
"Effect": "Allow",
|
|
8678
|
-
"Resource": "arn:aws:secretsmanager:us-east-1:712950704752:secret:github-token-
|
|
8683
|
+
"Resource": "arn:aws:secretsmanager:us-east-1:712950704752:secret:github-token-QDP6QX"
|
|
8679
8684
|
}
|
|
8680
8685
|
],
|
|
8681
8686
|
"Version": "2012-10-17"
|
|
@@ -8732,7 +8737,7 @@
|
|
|
8732
8737
|
"gitCloneDepth": 0,
|
|
8733
8738
|
"reportBuildStatus": false,
|
|
8734
8739
|
"location": "https://github.com/awslabs/aws-delivlib-sample.git",
|
|
8735
|
-
"buildSpec": "{\n \"version\": \"0.2\",\n \"phases\": {\n \"pre_build\": {\n \"commands\": [\n \"git config --global user.email \\\"foo@bar.com\\\"\",\n \"git config --global user.name \\\"foobar\\\"\"\n ]\n },\n \"build\": {\n \"commands\": [\n \"export SKIP=false\",\n \"$SKIP || { aws secretsmanager get-secret-value --secret-id \\\"arn:aws:secretsmanager:us-east-1:712950704752:secret:delivlib/github-ssh-
|
|
8740
|
+
"buildSpec": "{\n \"version\": \"0.2\",\n \"phases\": {\n \"pre_build\": {\n \"commands\": [\n \"git config --global user.email \\\"foo@bar.com\\\"\",\n \"git config --global user.name \\\"foobar\\\"\"\n ]\n },\n \"build\": {\n \"commands\": [\n \"export SKIP=false\",\n \"$SKIP || { aws secretsmanager get-secret-value --secret-id \\\"arn:aws:secretsmanager:us-east-1:712950704752:secret:delivlib/github-ssh-okGazo\\\" --output=text --query=SecretString > ~/.ssh/id_rsa ; }\",\n \"$SKIP || { mkdir -p ~/.ssh ; }\",\n \"$SKIP || { chmod 0600 ~/.ssh/id_rsa ~/.ssh/config ; }\",\n \"$SKIP || { ssh-keyscan -t rsa github.com >> ~/.ssh/known_hosts ; }\",\n \"$SKIP || { ls .git && { echo \\\".git directory exists\\\"; } || { echo \\\".git directory doesnot exist - cloning...\\\" && git init . && git remote add origin git@github.com:awslabs/aws-delivlib-sample.git && git fetch && git reset --hard origin/master && git branch -M master && git clean -fqdx; } ; }\",\n \"$SKIP || { git describe --exact-match master && { echo 'Skip condition is met, skipping...' && export SKIP=true; } || { echo 'Skip condition is not met, continuing...' && export SKIP=false; } ; }\",\n \"$SKIP || { export GITHUB_TOKEN=$(aws secretsmanager get-secret-value --secret-id \\\"arn:aws:secretsmanager:us-east-1:712950704752:secret:github-token-QDP6QX\\\" --output=text --query=SecretString) ; }\",\n \"$SKIP || { git rev-parse --verify origin/bump/$VERSION && { git checkout bump/$VERSION && git merge master && npm i && npm run bump && export VERSION=$(git describe) && echo Finished running user commands; } || { git checkout master && git checkout -b temp && npm i && npm run bump && export VERSION=$(git describe) && echo Finished running user commands && git branch -M bump/$VERSION; } ; }\",\n \"$SKIP || { git merge-base --is-ancestor bump/$VERSION origin/master && { echo \\\"Skipping: bump/$VERSION is an ancestor of origin/master\\\"; export SKIP=true; } || { echo \\\"Pushing: bump/$VERSION is ahead of origin/master\\\"; export SKIP=false; } ; }\",\n \"$SKIP || { git remote add origin_ssh git@github.com:awslabs/aws-delivlib-sample.git ; }\",\n \"$SKIP || { git push --atomic --follow-tags origin_ssh bump/$VERSION:bump/$VERSION ; }\",\n \"$SKIP || { curl --fail -X POST -o pr.json --header \\\"Authorization: token $GITHUB_TOKEN\\\" --header \\\"Content-Type: application/json\\\" -d \\\"{\\\\\\\"title\\\\\\\":\\\\\\\"chore(release): $VERSION\\\\\\\",\\\\\\\"base\\\\\\\":\\\\\\\"master\\\\\\\",\\\\\\\"head\\\\\\\":\\\\\\\"bump/$VERSION\\\\\\\"}\\\" https://api.github.com/repos/awslabs/aws-delivlib-sample/pulls && export PR_NUMBER=$(node -p 'require(\\\"./pr.json\\\").number') ; }\",\n \"$SKIP || { curl --fail -X PATCH --header \\\"Authorization: token $GITHUB_TOKEN\\\" --header \\\"Content-Type: application/json\\\" -d \\\"{\\\\\\\"body\\\\\\\":\\\\\\\"See [CHANGELOG](https://github.com/awslabs/aws-delivlib-sample/blob/bump/$VERSION/CHANGELOG.md)\\\\\\\"}\\\" https://api.github.com/repos/awslabs/aws-delivlib-sample/pulls/$PR_NUMBER ; }\"\n ]\n }\n }\n}"
|
|
8736
8741
|
},
|
|
8737
8742
|
"encryptionKey": "alias/aws/s3",
|
|
8738
8743
|
"triggers": {
|
|
@@ -9015,7 +9020,7 @@
|
|
|
9015
9020
|
},
|
|
9016
9021
|
"DeletePreviousComments": "true",
|
|
9017
9022
|
"CommentOnSuccess": "true",
|
|
9018
|
-
"GitHubOAuthToken": "{{resolve:secretsmanager:arn:aws:secretsmanager:us-east-1:712950704752:secret:github-token-
|
|
9023
|
+
"GitHubOAuthToken": "{{resolve:secretsmanager:arn:aws:secretsmanager:us-east-1:712950704752:secret:github-token-QDP6QX:SecretString:::}}"
|
|
9019
9024
|
}
|
|
9020
9025
|
}
|
|
9021
9026
|
},
|
|
@@ -32,8 +32,8 @@ class TestStack extends monocdk_1.Stack {
|
|
|
32
32
|
//
|
|
33
33
|
const githubRepo = new delivlib.WritableGitHubRepo({
|
|
34
34
|
repository: 'awslabs/aws-delivlib-sample',
|
|
35
|
-
tokenSecretArn: 'arn:aws:secretsmanager:us-east-1:712950704752:secret:github-token-
|
|
36
|
-
sshKeySecret: { secretArn: 'arn:aws:secretsmanager:us-east-1:712950704752:secret:delivlib/github-ssh-
|
|
35
|
+
tokenSecretArn: 'arn:aws:secretsmanager:us-east-1:712950704752:secret:github-token-QDP6QX',
|
|
36
|
+
sshKeySecret: { secretArn: 'arn:aws:secretsmanager:us-east-1:712950704752:secret:delivlib/github-ssh-okGazo' },
|
|
37
37
|
commitEmail: 'foo@bar.com',
|
|
38
38
|
commitUsername: 'foobar',
|
|
39
39
|
});
|
|
@@ -47,6 +47,7 @@ class TestStack extends monocdk_1.Stack {
|
|
|
47
47
|
environment: {
|
|
48
48
|
DELIVLIB_ENV_TEST: 'MAGIC_1924',
|
|
49
49
|
},
|
|
50
|
+
dryRun: true,
|
|
50
51
|
});
|
|
51
52
|
//
|
|
52
53
|
// TEST
|
|
@@ -108,7 +109,7 @@ class TestStack extends monocdk_1.Stack {
|
|
|
108
109
|
// PUBLISH
|
|
109
110
|
//
|
|
110
111
|
pipeline.publishToNpm({
|
|
111
|
-
npmTokenSecret: { secretArn: 'arn:aws:secretsmanager:us-east-1:712950704752:secret:delivlib/npm-
|
|
112
|
+
npmTokenSecret: { secretArn: 'arn:aws:secretsmanager:us-east-1:712950704752:secret:delivlib/npm-MhaWgx' },
|
|
112
113
|
access: delivlib.NpmAccess.RESTRICTED,
|
|
113
114
|
});
|
|
114
115
|
// this creates a self-signed certificate
|
|
@@ -125,7 +126,7 @@ class TestStack extends monocdk_1.Stack {
|
|
|
125
126
|
retainPrivateKey: false,
|
|
126
127
|
});
|
|
127
128
|
pipeline.publishToNuGet({
|
|
128
|
-
nugetApiKeySecret: { secretArn: 'arn:aws:secretsmanager:us-east-1:712950704752:secret:delivlib/nuget-
|
|
129
|
+
nugetApiKeySecret: { secretArn: 'arn:aws:secretsmanager:us-east-1:712950704752:secret:delivlib/nuget-jDbgrN' },
|
|
129
130
|
codeSign,
|
|
130
131
|
});
|
|
131
132
|
const signingKey = new delivlib.OpenPGPKeyPair(this, 'CodeSign', {
|
|
@@ -140,7 +141,7 @@ class TestStack extends monocdk_1.Stack {
|
|
|
140
141
|
removalPolicy: delivlib.OpenPGPKeyPairRemovalPolicy.DESTROY_IMMEDIATELY,
|
|
141
142
|
});
|
|
142
143
|
pipeline.publishToMaven({
|
|
143
|
-
mavenLoginSecret: { secretArn: 'arn:aws:secretsmanager:us-east-1:712950704752:secret:delivlib/maven-
|
|
144
|
+
mavenLoginSecret: { secretArn: 'arn:aws:secretsmanager:us-east-1:712950704752:secret:delivlib/maven-S4Q2y3' },
|
|
144
145
|
mavenEndpoint: 'https://aws.oss.sonatype.org:443/',
|
|
145
146
|
signingKey,
|
|
146
147
|
stagingProfileId: '68a05363083174',
|
|
@@ -154,7 +155,7 @@ class TestStack extends monocdk_1.Stack {
|
|
|
154
155
|
githubRepo,
|
|
155
156
|
});
|
|
156
157
|
pipeline.publishToPyPI({
|
|
157
|
-
loginSecret: { secretArn: 'arn:aws:secretsmanager:us-east-1:712950704752:secret:delivlib/pypi-
|
|
158
|
+
loginSecret: { secretArn: 'arn:aws:secretsmanager:us-east-1:712950704752:secret:delivlib/pypi-tp8M57' },
|
|
158
159
|
});
|
|
159
160
|
// publish go bindings to awslabs/aws-delivlib-sample under the "golang"
|
|
160
161
|
// branch (repository is derived from "go.moduleName" in package.json)
|
|
@@ -181,4 +182,4 @@ class TestStack extends monocdk_1.Stack {
|
|
|
181
182
|
}
|
|
182
183
|
}
|
|
183
184
|
exports.TestStack = TestStack;
|
|
184
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC1zdGFjay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInRlc3Qtc3RhY2sudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDJDQUE2QjtBQUM3QixxQ0FLaUI7QUFDakIsb0RBQXNDO0FBR3RDLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLGdCQUFnQixDQUFDLENBQUM7QUFFdkQsTUFBYSxTQUFVLFNBQVEsZUFBSztJQUNsQyxZQUFZLE1BQVcsRUFBRSxFQUFVLEVBQUUsUUFBb0IsRUFBRztRQUMxRCxLQUFLLENBQUMsTUFBTSxFQUFFLEVBQUUsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUV6QixFQUFFO1FBQ0YsU0FBUztRQUNULEVBQUU7UUFFRixNQUFNLFVBQVUsR0FBRyxJQUFJLFFBQVEsQ0FBQyxrQkFBa0IsQ0FBQztZQUNqRCxVQUFVLEVBQUUsNkJBQTZCO1lBQ3pDLGNBQWMsRUFBRSwwRUFBMEU7WUFDMUYsWUFBWSxFQUFFLEVBQUUsU0FBUyxFQUFFLGlGQUFpRixFQUFFO1lBQzlHLFdBQVcsRUFBRSxhQUFhO1lBQzFCLGNBQWMsRUFBRSxRQUFRO1NBQ3pCLENBQUMsQ0FBQztRQUVILEVBQUU7UUFDRixRQUFRO1FBQ1IsRUFBRTtRQUVGLE1BQU0sUUFBUSxHQUFHLElBQUksUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsb0JBQW9CLEVBQUU7WUFDakUsS0FBSyxFQUFFLDRCQUE0QjtZQUNuQyxJQUFJLEVBQUUsVUFBVTtZQUNoQixpQkFBaUIsRUFBRSxzQ0FBc0M7WUFDekQsV0FBVyxFQUFFO2dCQUNYLGlCQUFpQixFQUFFLFlBQVk7YUFDaEM7U0FDRixDQUFDLENBQUM7UUFFSCxFQUFFO1FBQ0YsT0FBTztRQUNQLEVBQUU7UUFFRiwwQ0FBMEM7UUFDMUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUU7WUFDN0IsUUFBUSxFQUFFLFFBQVEs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MkUsRUFBRTtTQUN4RyxDQUFDLENBQUM7UUFFSCx3RUFBd0U7UUFDeEUsc0VBQXNFO1FBQ3RFLFFBQVEsQ0FBQyxlQUFlLENBQUM7WUFDdkIsaUJBQWlCLEVBQUUsRUFBRSxTQUFTLEVBQUUsVUFBVSxDQUFDLGNBQWMsRUFBRTtZQUMzRCxTQUFTLEVBQUUsUUFBUTtZQUNuQixZQUFZLEVBQUUsaUNBQWlDO1lBQy9DLFdBQVcsRUFBRSxnQkFBZ0I7U0FDOUIsQ0FBQyxDQUFDO1FBRUgsRUFBRTtRQUNGLE9BQU87UUFFUCxRQUFRLENBQUMsUUFBUSxDQUFDO1lBQ2hCLFdBQVcsRUFBRSx1QkFBdUI7U0FDckMsQ0FBQyxDQUFDO1FBRUgsRUFBRTtRQUNGLGFBQWE7UUFFYixRQUFRLENBQUMsU0FBUyxDQUFDO1lBQ2pCLFVBQVUsRUFBRSxJQUFJO1NBQ2pCLENBQUMsQ0FBQztRQUVILEVBQUU7UUFDRixpQkFBaUI7UUFDakIsRUFBRTtRQUVGLFFBQVEsQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO0lBQzlCLENBQUM7Q0FDRjtBQXhMRCw4QkF3TEMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyBwYXRoIGZyb20gJ3BhdGgnO1xuaW1wb3J0IHtcbiAgQXBwLCBTdGFjaywgU3RhY2tQcm9wcyxcbiAgYXdzX2V2ZW50cyBhcyBldmVudHMsXG4gIGF3c19pYW0gYXMgaWFtLFxuICBhd3Nfa21zIGFzIGttcyxcbn0gZnJvbSAnbW9ub2Nkayc7XG5pbXBvcnQgKiBhcyBkZWxpdmxpYiBmcm9tICcuLi8uLi9saWInO1xuXG5cbmNvbnN0IHRlc3REaXIgPSBwYXRoLmpvaW4oX19kaXJuYW1lLCAnZGVsaXZsaWItdGVzdHMnKTtcblxuZXhwb3J0IGNsYXNzIFRlc3RTdGFjayBleHRlbmRzIFN0YWNrIHtcbiAgY29uc3RydWN0b3IocGFyZW50OiBBcHAsIGlkOiBzdHJpbmcsIHByb3BzOiBTdGFja1Byb3BzID0geyB9KSB7XG4gICAgc3VwZXIocGFyZW50LCBpZCwgcHJvcHMpO1xuXG4gICAgLy9cbiAgICAvLyBTT1VSQ0VcbiAgICAvL1xuXG4gICAgY29uc3QgZ2l0aHViUmVwbyA9IG5ldyBkZWxpdmxpYi5Xcml0YWJsZUdpdEh1YlJlcG8oe1xuICAgICAgcmVwb3NpdG9yeTogJ2F3c2xhYnMvYXdzLWRlbGl2bGliLXNhbXBsZScsXG4gICAgICB0b2tlblNlY3JldEFybjogJ2Fybjphd3M6c2VjcmV0c21hbmFnZXI6dXMtZWFzdC0xOjcxMjk1MDcwNDc1MjpzZWNyZXQ6Z2l0aHViLXRva2VuLW5uQXFmVycsXG4gICAgICBzc2hLZXlTZWNyZXQ6IHsgc2VjcmV0QXJuOiAnYXJuOmF3czpzZWNyZXRzbWFuYWdlcjp1cy1lYXN0LTE6NzEyOTUwNzA0NzUyOnNlY3JldDpkZWxpdmxpYi9naXRodWItc3NoLWx3emZqVycgfSxcbiAgICAgIGNvbW1pdEVtYWlsOiAnZm9vQGJhci5jb20nLFxuICAgICAgY29tbWl0VXNlcm5hbWU6ICdmb29iYXInLFxuICAgIH0pO1xuXG4gICAgLy9cbiAgICAvLyBCVUlMRFxuICAgIC8vXG5cbiAgICBjb25zdCBwaXBlbGluZSA9IG5ldyBkZWxpdmxpYi5QaXBlbGluZSh0aGlzLCAnQ29kZUNvbW1pdFBpcGVsaW5lJywge1xuICAgICAgdGl0bGU6ICdhd3MtZGVsaXZsaWIgdGVzdCBwaXBlbGluZScsXG4gICAgICByZXBvOiBnaXRodWJSZXBvLFxuICAgICAgbm90aWZpY2F0aW9uRW1haWw6ICdhd3MtY2RrLWRlditkZWxpdmxpYi10ZXN0QGFtYXpvbi5jb20nLFxuICAgICAgZW52aXJvbm1lbnQ6IHtcbiAgICAgICAgREVMSVZMSUJfRU5WX1RFU1Q6ICdNQUdJQ18xOTI0JyxcbiAgICAgIH0sXG4gICAgfSk7XG5cbiAgICAvL1xuICAgIC8vIFRFU1RcbiAgICAvL1xuXG4gICAgLy8gYWRkIGEgdGVzdCB0aGF0IHJ1bnMgb24gYW4gdWJ1bnR1IGxpbnV4XG4gICAgcGlwZWxpbmUuYWRkVGVzdCgnSGVsbG9MaW51eCcsIHtcbiAgICAgIHBsYXRmb3JtOiBkZWxpdmxpYi5TaGVsbFBsYXRmb3JtLkxpbnV4VWJ1bnR1LFxuICAgICAgZW50cnlwb2ludDogJ3Rlc3Quc2gnLFxuICAgICAgc2NyaXB0RGlyZWN0b3J5OiBwYXRoLmpvaW4odGVzdERpciwgJ2xpbnV4JyksXG4gICAgfSk7XG5cbiAgICAvLyBhZGQgYSB0ZXN0IHRoYXQgcnVucyBvbiBXaW5kb3dzXG4gICAgcGlwZWxpbmUuYWRkVGVzdCgnSGVsbG9XaW5kb3dzJywge1xuICAgICAgcGxhdGZvcm06IGRlbGl2bGliLlNoZWxsUGxhdGZvcm0uV2luZG93cyxcbiAgICAgIGVudHJ5cG9pbnQ6ICd0ZXN0LnBzMScsXG4gICAgICBzY3JpcHREaXJlY3Rvcnk6IHBhdGguam9pbih0ZXN0RGlyLCAnd2luZG93cycpLFxuICAgIH0pO1xuXG4gICAgY29uc3QgZXh0ZXJuYWxJZCA9ICdyZXF1aXJlLW1lLXBsZWFzZSc7XG5cbiAgICBjb25zdCByb2xlID0gbmV3IGlhbS5Sb2xlKHRoaXMsICdBc3N1bWVNZScsIHtcbiAgICAgIGFzc3VtZWRCeTogbmV3IGlhbS5BY2NvdW50UHJpbmNpcGFsKFN0YWNrLm9mKHRoaXMpLmFjY291bnQpLFxuICAgICAgZXh0ZXJuYWxJZCxcbiAgICB9KTtcblxuICAgIHBpcGVsaW5lLmFkZFRlc3QoJ0Fzc3VtZVJvbGUnLCB7XG4gICAgICBlbnRyeXBvaW50OiAndGVzdC5zaCcsXG4gICAgICBzY3JpcHREaXJlY3Rvcnk6IHBhdGguam9pbih0ZXN0RGlyLCAnYXNzdW1lLXJvbGUnKSxcbiAgICAgIGFzc3VtZVJvbGU6IHtcbiAgICAgICAgcm9sZUFybjogcm9sZS5yb2xlQXJuLFxuICAgICAgICBzZXNzaW9uTmFtZTogJ2Fzc3VtZS1yb2xlLXRlc3QnLFxuICAgICAgICBleHRlcm5hbElkLFxuICAgICAgfSxcbiAgICAgIGVudmlyb25tZW50OiB7XG4gICAgICAgIEVYUEVDVEVEX1JPTEVfTkFNRTogcm9sZS5yb2xlTmFtZSxcbiAgICAgIH0sXG4gICAgfSk7XG5cbiAgICBjb25zdCBhY3Rpb24gPSBwaXBlbGluZS5hZGRTaGVsbGFibGUoJ1Rlc3QnLCAnR2VuZXJhdGVUd29BcnRpZmFjdHMnLCB7XG4gICAgICBlbnRyeXBvaW50OiAndm9pZC5zaCcsXG4gICAgICBzY3JpcHREaXJlY3Rvcnk6IHBhdGguam9pbih0ZXN0RGlyLCAnbGludXgnKSxcbiAgICAgIGJ1aWxkU3BlYzogZGVsaXZsaWIuQnVpbGRTcGVjLnNpbXBsZSh7XG4gICAgICAgIGJ1aWxkOiBbXG4gICAgICAgICAgJ21rZGlyIC1wIG91dHB1dDEgb3V0cHV0MicsXG4gICAgICAgICAgJ2VjaG8gXFwne1wibmFtZVwiOiBcIm91dHB1dDFcIiwgXCJ2ZXJzaW9uXCI6IFwiMS4yLjNcIiwgXCJjb21taXRcIjogXCJhYmNkZWZcIn1cXCcgPiBvdXRwdXQxL2J1aWxkLmpzb24nLFxuICAgICAgICAgICdlY2hvIFxcJ3tcIm5hbWVcIjogXCJvdXRwdXQyXCIsIFwidmVyc2lvblwiOiBcIjEuMi4zXCIsIFwiY29tbWl0XCI6IFwiYWJjZGVmXCJ9XFwnID4gb3V0cHV0Mi9idWlsZC5qc29uJyxcbiAgICAgICAgXSxcbiAgICAgICAgYXJ0aWZhY3REaXJlY3Rvcnk6ICdvdXRwdXQxJyxcbiAgICAgICAgYWRkaXRpb25hbEFydGlmYWN0RGlyZWN0b3JpZXM6IHtcbiAgICAgICAgICBhcnRpZmFjdDI6ICdvdXRwdXQyJyxcbiAgICAgICAgfSxcbiAgICAgIH0pLFxuICAgIH0pLmFjdGlvbjtcbiAgICBjb25zdCBzaGVsbGFibGVBcnRpZmFjdHMgPSBhY3Rpb24uYWN0aW9uUHJvcGVydGllcy5vdXRwdXRzO1xuXG4gICAgLy9cbiAgICAvLyBDQU5BUllcbiAgICAvL1xuXG4gICAgcGlwZWxpbmUuYWRkQ2FuYXJ5KCdIZWxsb0NhbmFyeScsIHtcbiAgICAgIHNjaGVkdWxlOiBldmVudHMuU2NoZWR1bGUuZXhwcmVzc2lvbigncmF0ZSgxIG1pbnV0ZSknKSxcbiAgICAgIHNjcmlwdERpcmVjdG9yeTogcGF0aC5qb2luKHRlc3REaXIsICdsaW51eCcpLFxuICAgICAgZW50cnlwb2ludDogJ3Rlc3Quc2gnLFxuICAgIH0pO1xuXG4gICAgLy9cbiAgICAvLyBQVUJMSVNIXG4gICAgLy9cblxuICAgIHBpcGVsaW5lLnB1Ymxpc2hUb05wbSh7XG4gICAgICBucG1Ub2tlblNlY3JldDogeyBzZWNyZXRBcm46ICdhcm46YXdzOnNlY3JldHNtYW5hZ2VyOnVzLWVhc3QtMTo3MTI5NTA3MDQ3NTI6c2VjcmV0OmRlbGl2bGliL25wbS1PeW5HNjInIH0sXG4gICAgICBhY2Nlc3M6IGRlbGl2bGliLk5wbUFjY2Vzcy5SRVNUUklDVEVELFxuICAgIH0pO1xuXG4gICAgLy8gdGhpcyBjcmVhdGVzIGEgc2VsZi1zaWduZWQgY2VydGlmaWNhdGVcbiAgICBjb25zdCBjb2RlU2lnbiA9IG5ldyBkZWxpdmxpYi5Db2RlU2lnbmluZ0NlcnRpZmljYXRlKHRoaXMsICdYNTA5Q29kZVNpZ25pbmdLZXknLCB7XG4gICAgICBkaXN0aW5ndWlzaGVkTmFtZToge1xuICAgICAgICBjb21tb25OYW1lOiAnZGVsaXZsaWItdGVzdCcsXG4gICAgICAgIGNvdW50cnk6ICdJTCcsXG4gICAgICAgIGVtYWlsQWRkcmVzczogJ2F3cy1jZGstZGV2K2RlbGl2bGliLXRlc3RAYW1hem9uLmNvbScsXG4gICAgICAgIGxvY2FsaXR5OiAnWml0eScsXG4gICAgICAgIG9yZ2FuaXphdGlvbk5hbWU6ICdBbWF6b24gVGVzdCcsXG4gICAgICAgIG9yZ2FuaXphdGlvbmFsVW5pdE5hbWU6ICdBV1MnLFxuICAgICAgICBzdGF0ZU9yUHJvdmluY2U6ICdadGF0ZScsXG4gICAgICB9LFxuICAgICAgcmV0YWluUHJpdmF0ZUtleTogZmFsc2UsXG4gICAgfSk7XG5cbiAgICBwaXBlbGluZS5wdWJsaXNoVG9OdUdldCh7XG4gICAgICBudWdldEFwaUtleVNlY3JldDogeyBzZWNyZXRBcm46ICdhcm46YXdzOnNlY3JldHNtYW5hZ2VyOnVzLWVhc3QtMTo3MTI5NTA3MDQ3NTI6c2VjcmV0OmRlbGl2bGliL251Z2V0LWZIelNVRCcgfSxcbiAgICAgIGNvZGVTaWduLFxuICAgIH0pO1xuXG4gICAgY29uc3Qgc2lnbmluZ0tleSA9IG5ldyBkZWxpdmxpYi5PcGVuUEdQS2V5UGFpcih0aGlzLCAnQ29kZVNpZ24nLCB7XG4gICAgICBlbWFpbDogJ2F3cy1jZGstZGV2K2RlbGl2bGliQGFtYXpvbi5jb20nLFxuICAgICAgZW5jcnlwdGlvbktleTogbmV3IGttcy5LZXkodGhpcywgJ0NvZGVTaWduLUNNSycpLFxuICAgICAgZXhwaXJ5OiAnNHknLFxuICAgICAgaWRlbnRpdHk6ICdhd3MtY2RrLWRldicsXG4gICAgICBrZXlTaXplQml0czogNF8wOTYsXG4gICAgICBwdWJLZXlQYXJhbWV0ZXJOYW1lOiBgLyR7dGhpcy5ub2RlLnBhdGh9L0NvZGVTaWduLnB1YmAsXG4gICAgICBzZWNyZXROYW1lOiB0aGlzLm5vZGUucGF0aCArICcvQ29kZVNpZ24nLFxuICAgICAgdmVyc2lvbjogMCxcbiAgICAgIHJlbW92YWxQb2xpY3k6IGRlbGl2bGliLk9wZW5QR1BLZXlQYWlyUmVtb3ZhbFBvbGljeS5ERVNUUk9ZX0lNTUVESUFURUxZLFxuICAgIH0pO1xuXG4gICAgcGlwZWxpbmUucHVibGlzaFRvTWF2ZW4oe1xuICAgICAgbWF2ZW5Mb2dpblNlY3JldDogeyBzZWNyZXRBcm46ICdhcm46YXdzOnNlY3JldHNtYW5hZ2VyOnVzLWVhc3QtMTo3MTI5NTA3MDQ3NTI6c2VjcmV0OmRlbGl2bGliL21hdmVuLTdST0NXaScgfSxcbiAgICAgIG1hdmVuRW5kcG9pbnQ6ICdodHRwczovL2F3cy5vc3Muc29uYXR5cGUub3JnOjQ0My8nLFxuICAgICAgc2lnbmluZ0tleSxcbiAgICAgIHN0YWdpbmdQcm9maWxlSWQ6ICc2OGEwNTM2MzA4MzE3NCcsXG4gICAgfSk7XG5cbiAgICBwaXBlbGluZS5wdWJsaXNoVG9HaXRIdWIoe1xuICAgICAgZ2l0aHViUmVwbyxcbiAgICAgIHNpZ25pbmdLZXksXG4gICAgICBhZGRpdGlvbmFsSW5wdXRBcnRpZmFjdHM6IHNoZWxsYWJsZUFydGlmYWN0cyxcbiAgICB9KTtcblxuICAgIHBpcGVsaW5lLnB1Ymxpc2hUb0dpdEh1YlBhZ2VzKHtcbiAgICAgIGdpdGh1YlJlcG8sXG4gICAgfSk7XG5cbiAgICBwaXBlbGluZS5wdWJsaXNoVG9QeVBJKHtcbiAgICAgIGxvZ2luU2VjcmV0OiB7IHNlY3JldEFybjogJ2Fybjphd3M6c2VjcmV0c21hbmFnZXI6dXMtZWFzdC0xOjcxMjk1MDcwNDc1MjpzZWNyZXQ6ZGVsaXZsaWIvcHlwaS10T2hINlgnIH0sXG4gICAgfSk7XG5cbiAgICAvLyBwdWJsaXNoIGdvIGJpbmRpbmdzIHRvIGF3c2xhYnMvYXdzLWRlbGl2bGliLXNhbXBsZSB1bmRlciB0aGUgXCJnb2xhbmdcIlxuICAgIC8vIGJyYW5jaCAocmVwb3NpdG9yeSBpcyBkZXJpdmVkIGZyb20gXCJnby5tb2R1bGVOYW1lXCIgaW4gcGFja2FnZS5qc29uKVxuICAgIHBpcGVsaW5lLnB1Ymxpc2hUb0dvbGFuZyh7XG4gICAgICBnaXRodWJUb2tlblNlY3JldDogeyBzZWNyZXRBcm46IGdpdGh1YlJlcG8udG9rZW5TZWNyZXRBcm4gfSxcbiAgICAgIGdpdEJyYW5jaDogJ2dvbGFuZycsXG4gICAgICBnaXRVc2VyRW1haWw6ICdhd3MtY2RrLWRlditkZWxpdmxpYkBhbWF6b24uY29tJyxcbiAgICAgIGdpdFVzZXJOYW1lOiAnRGVsaXZsaWIgVGVzdHMnLFxuICAgIH0pO1xuXG4gICAgLy9cbiAgICAvLyBCVU1QXG5cbiAgICBwaXBlbGluZS5hdXRvQnVtcCh7XG4gICAgICBidW1wQ29tbWFuZDogJ25wbSBpICYmIG5wbSBydW4gYnVtcCcsXG4gICAgfSk7XG5cbiAgICAvL1xuICAgIC8vIEFVVE8tQlVJTERcblxuICAgIHBpcGVsaW5lLmF1dG9CdWlsZCh7XG4gICAgICBwdWJsaWNMb2dzOiB0cnVlLFxuICAgIH0pO1xuXG4gICAgLy9cbiAgICAvLyBDSEFOR0UgQ09OVFJPTFxuICAgIC8vXG5cbiAgICBwaXBlbGluZS5hZGRDaGFuZ2VDb250cm9sKCk7XG4gIH1cbn1cbiJdfQ==
|
|
185
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVzdC1zdGFjay5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbInRlc3Qtc3RhY2sudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBLDJDQUE2QjtBQUM3QixxQ0FLaUI7QUFDakIsb0RBQXNDO0FBR3RDLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLGdCQUFnQixDQUFDLENBQUM7QUFFdkQsTUFBYSxTQUFVLFNBQVEsZUFBSztJQUNsQyxZQUFZLE1BQVcsRUFBRSxFQUFVLEVBQUUsUUFBb0IsRUFBRztRQUMxRCxLQUFLLENBQUMsTUFBTSxFQUFFLEVBQUUsRUFBRSxLQUFLLENBQUMsQ0FBQztRQUV6QixFQUFFO1FBQ0YsU0FBUztRQUNULEVBQUU7UUFFRixNQUFNLFVBQVUsR0FBRyxJQUFJLFFBQVEsQ0FBQyxrQkFBa0IsQ0FBQztZQUNqRCxVQUFVLEVBQUUsNkJBQTZCO1lBQ3pDLGNBQWMsRUFBRSwwRUFBMEU7WUFDMUYsWUFBWSxFQUFFLEVBQUUsU0FBUyxFQUFFLGlGQUFpRixFQUFFO1lBQzlHLFdBQVcsRUFBRSxhQUFhO1lBQzFCLGNBQWMsRUFBRSxRQUFRO1NBQ3pCLENBQUMsQ0FBQztRQUVILEVBQUU7UUFDRixRQUFRO1FBQ1IsRUFBRTtRQUVGLE1BQU0sUUFBUSxHQUFHLElBQUksUUFBUSxDQUFDLFFBQVEsQ0FBQyxJQUFJLEVBQUUsb0JBQW9CLEVBQUU7WUFDakUsS0FBSyxFQUFFLDRCQUE0QjtZQUNuQyxJQUFJLEVBQUUsVUFBVTtZQUNoQixpQkFBaUIsRUFBRSxzQ0FBc0M7WUFDekQsV0FBVyxFQUFFO2dCQUNYLGlCQUFpQixFQUFFLFlBQVk7YUFDaEM7WUFDRCxNQUFNLEVBQUUsSUFBSTtTQUNiLENBQUMsQ0FBQztRQUVILEVBQUU7UUFDRixPQUFPO1FBQ1AsRUFBRTtRQUVGLDBDQUEwQztRQUMxQyxRQUFRLENBQUMsT0FBTyxDQUFDLFlBQVksRUFBRTtZ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LEVBQUUsU0FBUyxFQUFFLDJFQUEyRSxFQUFFO1NBQ3hHLENBQUMsQ0FBQztRQUVILHdFQUF3RTtRQUN4RSxzRUFBc0U7UUFDdEUsUUFBUSxDQUFDLGVBQWUsQ0FBQztZQUN2QixpQkFBaUIsRUFBRSxFQUFFLFNBQVMsRUFBRSxVQUFVLENBQUMsY0FBYyxFQUFFO1lBQzNELFNBQVMsRUFBRSxRQUFRO1lBQ25CLFlBQVksRUFBRSxpQ0FBaUM7WUFDL0MsV0FBVyxFQUFFLGdCQUFnQjtTQUM5QixDQUFDLENBQUM7UUFFSCxFQUFFO1FBQ0YsT0FBTztRQUVQLFFBQVEsQ0FBQyxRQUFRLENBQUM7WUFDaEIsV0FBVyxFQUFFLHVCQUF1QjtTQUNyQyxDQUFDLENBQUM7UUFFSCxFQUFFO1FBQ0YsYUFBYTtRQUViLFFBQVEsQ0FBQyxTQUFTLENBQUM7WUFDakIsVUFBVSxFQUFFLElBQUk7U0FDakIsQ0FBQyxDQUFDO1FBRUgsRUFBRTtRQUNGLGlCQUFpQjtRQUNqQixFQUFFO1FBRUYsUUFBUSxDQUFDLGdCQUFnQixFQUFFLENBQUM7SUFDOUIsQ0FBQztDQUNGO0FBekxELDhCQXlMQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIHBhdGggZnJvbSAncGF0aCc7XG5pbXBvcnQge1xuICBBcHAsIFN0YWNrLCBTdGFja1Byb3BzLFxuICBhd3NfZXZlbnRzIGFzIGV2ZW50cyxcbiAgYXdzX2lhbSBhcyBpYW0sXG4gIGF3c19rbXMgYXMga21zLFxufSBmcm9tICdtb25vY2RrJztcbmltcG9ydCAqIGFzIGRlbGl2bGliIGZyb20gJy4uLy4uL2xpYic7XG5cblxuY29uc3QgdGVzdERpciA9IHBhdGguam9pbihfX2Rpcm5hbWUsICdkZWxpdmxpYi10ZXN0cycpO1xuXG5leHBvcnQgY2xhc3MgVGVzdFN0YWNrIGV4dGVuZHMgU3RhY2sge1xuICBjb25zdHJ1Y3RvcihwYXJlbnQ6IEFwcCwgaWQ6IHN0cmluZywgcHJvcHM6IFN0YWNrUHJvcHMgPSB7IH0pIHtcbiAgICBzdXBlcihwYXJlbnQsIGlkLCBwcm9wcyk7XG5cbiAgICAvL1xuICAgIC8vIFNPVVJDRVxuICAgIC8vXG5cbiAgICBjb25zdCBnaXRodWJSZXBvID0gbmV3IGRlbGl2bGliLldyaXRhYmxlR2l0SHViUmVwbyh7XG4gICAgICByZXBvc2l0b3J5OiAnYXdzbGFicy9hd3MtZGVsaXZsaWItc2FtcGxlJyxcbiAgICAgIHRva2VuU2VjcmV0QXJuOiAnYXJuOmF3czpzZWNyZXRzbWFuYWdlcjp1cy1lYXN0LTE6NzEyOTUwNzA0NzUyOnNlY3JldDpnaXRodWItdG9rZW4tUURQNlFYJyxcbiAgICAgIHNzaEtleVNlY3JldDogeyBzZWNyZXRBcm46ICdhcm46YXdzOnNlY3JldHNtYW5hZ2VyOnVzLWVhc3QtMTo3MTI5NTA3MDQ3NTI6c2VjcmV0OmRlbGl2bGliL2dpdGh1Yi1zc2gtb2tHYXpvJyB9LFxuICAgICAgY29tbWl0RW1haWw6ICdmb29AYmFyLmNvbScsXG4gICAgICBjb21taXRVc2VybmFtZTogJ2Zvb2JhcicsXG4gICAgfSk7XG5cbiAgICAvL1xuICAgIC8vIEJVSUxEXG4gICAgLy9cblxuICAgIGNvbnN0IHBpcGVsaW5lID0gbmV3IGRlbGl2bGliLlBpcGVsaW5lKHRoaXMsICdDb2RlQ29tbWl0UGlwZWxpbmUnLCB7XG4gICAgICB0aXRsZTogJ2F3cy1kZWxpdmxpYiB0ZXN0IHBpcGVsaW5lJyxcbiAgICAgIHJlcG86IGdpdGh1YlJlcG8sXG4gICAgICBub3RpZmljYXRpb25FbWFpbDogJ2F3cy1jZGstZGV2K2RlbGl2bGliLXRlc3RAYW1hem9uLmNvbScsXG4gICAgICBlbnZpcm9ubWVudDoge1xuICAgICAgICBERUxJVkxJQl9FTlZfVEVTVDogJ01BR0lDXzE5MjQnLFxuICAgICAgfSxcbiAgICAgIGRyeVJ1bjogdHJ1ZSxcbiAgICB9KTtcblxuICAgIC8vXG4gICAgLy8gVEVTVFxuICAgIC8vXG5cbiAgICAvLyBhZGQgYSB0ZXN0IHRoYXQgcnVucyBvbiBhbiB1YnVudHUgbGludXhcbiAgICBwaXBlbGluZS5hZGRUZXN0KCdIZWxsb0xpbnV4Jywge1xuICAgICAgcGxhdGZvcm06IGRlbGl2bGliLlNoZWxsUGxhdGZvcm0uTGludXhVYnVudHUsXG4gICAgICBlbnRyeXBvaW50OiAndGVzdC5zaCcsXG4gICAgICBzY3JpcHREaXJlY3Rvcnk6IHBhdGguam9pbih0ZXN0RGlyLCAnbGludXgnKSxcbiAgICB9KTtcblxuICAgIC8vIGFkZCBhIHRlc3QgdGhhdCBydW5zIG9uIFdpbmRvd3NcbiAgICBwaXBlbGluZS5hZGRUZXN0KCdIZWxsb1dpbmRvd3MnLCB7XG4gICAgICBwbGF0Zm9ybTogZGVsaXZsaWIuU2hlbGxQbGF0Zm9ybS5XaW5kb3dzLFxuICAgICAgZW50cnlwb2ludDogJ3Rlc3QucHMxJyxcbiAgICAgIHNjcmlwdERpcmVjdG9yeTogcGF0aC5qb2luKHRlc3REaXIsICd3aW5kb3dzJyksXG4gICAgfSk7XG5cbiAgICBjb25zdCBleHRlcm5hbElkID0gJ3JlcXVpcmUtbWUtcGxlYXNlJztcblxuICAgIGNvbnN0IHJvbGUgPSBuZXcgaWFtLlJvbGUodGhpcywgJ0Fzc3VtZU1lJywge1xuICAgICAgYXNzdW1lZEJ5OiBuZXcgaWFtLkFjY291bnRQcmluY2lwYWwoU3RhY2sub2YodGhpcykuYWNjb3VudCksXG4gICAgICBleHRlcm5hbElkLFxuICAgIH0pO1xuXG4gICAgcGlwZWxpbmUuYWRkVGVzdCgnQXNzdW1lUm9sZScsIHtcbiAgICAgIGVudHJ5cG9pbnQ6ICd0ZXN0LnNoJyxcbiAgICAgIHNjcmlwdERpcmVjdG9yeTogcGF0aC5qb2luKHRlc3REaXIsICdhc3N1bWUtcm9sZScpLFxuICAgICAgYXNzdW1lUm9sZToge1xuICAgICAgICByb2xlQXJuOiByb2xlLnJvbGVBcm4sXG4gICAgICAgIHNlc3Npb25OYW1lOiAnYXNzdW1lLXJvbGUtdGVzdCcsXG4gICAgICAgIGV4dGVybmFsSWQsXG4gICAgICB9LFxuICAgICAgZW52aXJvbm1lbnQ6IHtcbiAgICAgICAgRVhQRUNURURfUk9MRV9OQU1FOiByb2xlLnJvbGVOYW1lLFxuICAgICAgfSxcbiAgICB9KTtcblxuICAgIGNvbnN0IGFjdGlvbiA9IHBpcGVsaW5lLmFkZFNoZWxsYWJsZSgnVGVzdCcsICdHZW5lcmF0ZVR3b0FydGlmYWN0cycsIHtcbiAgICAgIGVudHJ5cG9pbnQ6ICd2b2lkLnNoJyxcbiAgICAgIHNjcmlwdERpcmVjdG9yeTogcGF0aC5qb2luKHRlc3REaXIsICdsaW51eCcpLFxuICAgICAgYnVpbGRTcGVjOiBkZWxpdmxpYi5CdWlsZFNwZWMuc2ltcGxlKHtcbiAgICAgICAgYnVpbGQ6IFtcbiAgICAgICAgICAnbWtkaXIgLXAgb3V0cHV0MSBvdXRwdXQyJyxcbiAgICAgICAgICAnZWNobyBcXCd7XCJuYW1lXCI6IFwib3V0cHV0MVwiLCBcInZlcnNpb25cIjogXCIxLjIuM1wiLCBcImNvbW1pdFwiOiBcImFiY2RlZlwifVxcJyA+IG91dHB1dDEvYnVpbGQuanNvbicsXG4gICAgICAgICAgJ2VjaG8gXFwne1wibmFtZVwiOiBcIm91dHB1dDJcIiwgXCJ2ZXJzaW9uXCI6IFwiMS4yLjNcIiwgXCJjb21taXRcIjogXCJhYmNkZWZcIn1cXCcgPiBvdXRwdXQyL2J1aWxkLmpzb24nLFxuICAgICAgICBdLFxuICAgICAgICBhcnRpZmFjdERpcmVjdG9yeTogJ291dHB1dDEnLFxuICAgICAgICBhZGRpdGlvbmFsQXJ0aWZhY3REaXJlY3Rvcmllczoge1xuICAgICAgICAgIGFydGlmYWN0MjogJ291dHB1dDInLFxuICAgICAgICB9LFxuICAgICAgfSksXG4gICAgfSkuYWN0aW9uO1xuICAgIGNvbnN0IHNoZWxsYWJsZUFydGlmYWN0cyA9IGFjdGlvbi5hY3Rpb25Qcm9wZXJ0aWVzLm91dHB1dHM7XG5cbiAgICAvL1xuICAgIC8vIENBTkFSWVxuICAgIC8vXG5cbiAgICBwaXBlbGluZS5hZGRDYW5hcnkoJ0hlbGxvQ2FuYXJ5Jywge1xuICAgICAgc2NoZWR1bGU6IGV2ZW50cy5TY2hlZHVsZS5leHByZXNzaW9uKCdyYXRlKDEgbWludXRlKScpLFxuICAgICAgc2NyaXB0RGlyZWN0b3J5OiBwYXRoLmpvaW4odGVzdERpciwgJ2xpbnV4JyksXG4gICAgICBlbnRyeXBvaW50OiAndGVzdC5zaCcsXG4gICAgfSk7XG5cbiAgICAvL1xuICAgIC8vIFBVQkxJU0hcbiAgICAvL1xuXG4gICAgcGlwZWxpbmUucHVibGlzaFRvTnBtKHtcbiAgICAgIG5wbVRva2VuU2VjcmV0OiB7IHNlY3JldEFybjogJ2Fybjphd3M6c2VjcmV0c21hbmFnZXI6dXMtZWFzdC0xOjcxMjk1MDcwNDc1MjpzZWNyZXQ6ZGVsaXZsaWIvbnBtLU1oYVdneCcgfSxcbiAgICAgIGFjY2VzczogZGVsaXZsaWIuTnBtQWNjZXNzLlJFU1RSSUNURUQsXG4gICAgfSk7XG5cbiAgICAvLyB0aGlzIGNyZWF0ZXMgYSBzZWxmLXNpZ25lZCBjZXJ0aWZpY2F0ZVxuICAgIGNvbnN0IGNvZGVTaWduID0gbmV3IGRlbGl2bGliLkNvZGVTaWduaW5nQ2VydGlmaWNhdGUodGhpcywgJ1g1MDlDb2RlU2lnbmluZ0tleScsIHtcbiAgICAgIGRpc3Rpbmd1aXNoZWROYW1lOiB7XG4gICAgICAgIGNvbW1vbk5hbWU6ICdkZWxpdmxpYi10ZXN0JyxcbiAgICAgICAgY291bnRyeTogJ0lMJyxcbiAgICAgICAgZW1haWxBZGRyZXNzOiAnYXdzLWNkay1kZXYrZGVsaXZsaWItdGVzdEBhbWF6b24uY29tJyxcbiAgICAgICAgbG9jYWxpdHk6ICdaaXR5JyxcbiAgICAgICAgb3JnYW5pemF0aW9uTmFtZTogJ0FtYXpvbiBUZXN0JyxcbiAgICAgICAgb3JnYW5pemF0aW9uYWxVbml0TmFtZTogJ0FXUycsXG4gICAgICAgIHN0YXRlT3JQcm92aW5jZTogJ1p0YXRlJyxcbiAgICAgIH0sXG4gICAgICByZXRhaW5Qcml2YXRlS2V5OiBmYWxzZSxcbiAgICB9KTtcblxuICAgIHBpcGVsaW5lLnB1Ymxpc2hUb051R2V0KHtcbiAgICAgIG51Z2V0QXBpS2V5U2VjcmV0OiB7IHNlY3JldEFybjogJ2Fybjphd3M6c2VjcmV0c21hbmFnZXI6dXMtZWFzdC0xOjcxMjk1MDcwNDc1MjpzZWNyZXQ6ZGVsaXZsaWIvbnVnZXQtakRiZ3JOJyB9LFxuICAgICAgY29kZVNpZ24sXG4gICAgfSk7XG5cbiAgICBjb25zdCBzaWduaW5nS2V5ID0gbmV3IGRlbGl2bGliLk9wZW5QR1BLZXlQYWlyKHRoaXMsICdDb2RlU2lnbicsIHtcbiAgICAgIGVtYWlsOiAnYXdzLWNkay1kZXYrZGVsaXZsaWJAYW1hem9uLmNvbScsXG4gICAgICBlbmNyeXB0aW9uS2V5OiBuZXcga21zLktleSh0aGlzLCAnQ29kZVNpZ24tQ01LJyksXG4gICAgICBleHBpcnk6ICc0eScsXG4gICAgICBpZGVudGl0eTogJ2F3cy1jZGstZGV2JyxcbiAgICAgIGtleVNpemVCaXRzOiA0XzA5NixcbiAgICAgIHB1YktleVBhcmFtZXRlck5hbWU6IGAvJHt0aGlzLm5vZGUucGF0aH0vQ29kZVNpZ24ucHViYCxcbiAgICAgIHNlY3JldE5hbWU6IHRoaXMubm9kZS5wYXRoICsgJy9Db2RlU2lnbicsXG4gICAgICB2ZXJzaW9uOiAwLFxuICAgICAgcmVtb3ZhbFBvbGljeTogZGVsaXZsaWIuT3BlblBHUEtleVBhaXJSZW1vdmFsUG9saWN5LkRFU1RST1lfSU1NRURJQVRFTFksXG4gICAgfSk7XG5cbiAgICBwaXBlbGluZS5wdWJsaXNoVG9NYXZlbih7XG4gICAgICBtYXZlbkxvZ2luU2VjcmV0OiB7IHNlY3JldEFybjogJ2Fybjphd3M6c2VjcmV0c21hbmFnZXI6dXMtZWFzdC0xOjcxMjk1MDcwNDc1MjpzZWNyZXQ6ZGVsaXZsaWIvbWF2ZW4tUzRRMnkzJyB9LFxuICAgICAgbWF2ZW5FbmRwb2ludDogJ2h0dHBzOi8vYXdzLm9zcy5zb25hdHlwZS5vcmc6NDQzLycsXG4gICAgICBzaWduaW5nS2V5LFxuICAgICAgc3RhZ2luZ1Byb2ZpbGVJZDogJzY4YTA1MzYzMDgzMTc0JyxcbiAgICB9KTtcblxuICAgIHBpcGVsaW5lLnB1Ymxpc2hUb0dpdEh1Yih7XG4gICAgICBnaXRodWJSZXBvLFxuICAgICAgc2lnbmluZ0tleSxcbiAgICAgIGFkZGl0aW9uYWxJbnB1dEFydGlmYWN0czogc2hlbGxhYmxlQXJ0aWZhY3RzLFxuICAgIH0pO1xuXG4gICAgcGlwZWxpbmUucHVibGlzaFRvR2l0SHViUGFnZXMoe1xuICAgICAgZ2l0aHViUmVwbyxcbiAgICB9KTtcblxuICAgIHBpcGVsaW5lLnB1Ymxpc2hUb1B5UEkoe1xuICAgICAgbG9naW5TZWNyZXQ6IHsgc2VjcmV0QXJuOiAnYXJuOmF3czpzZWNyZXRzbWFuYWdlcjp1cy1lYXN0LTE6NzEyOTUwNzA0NzUyOnNlY3JldDpkZWxpdmxpYi9weXBpLXRwOE01NycgfSxcbiAgICB9KTtcblxuICAgIC8vIHB1Ymxpc2ggZ28gYmluZGluZ3MgdG8gYXdzbGFicy9hd3MtZGVsaXZsaWItc2FtcGxlIHVuZGVyIHRoZSBcImdvbGFuZ1wiXG4gICAgLy8gYnJhbmNoIChyZXBvc2l0b3J5IGlzIGRlcml2ZWQgZnJvbSBcImdvLm1vZHVsZU5hbWVcIiBpbiBwYWNrYWdlLmpzb24pXG4gICAgcGlwZWxpbmUucHVibGlzaFRvR29sYW5nKHtcbiAgICAgIGdpdGh1YlRva2VuU2VjcmV0OiB7IHNlY3JldEFybjogZ2l0aHViUmVwby50b2tlblNlY3JldEFybiB9LFxuICAgICAgZ2l0QnJhbmNoOiAnZ29sYW5nJyxcbiAgICAgIGdpdFVzZXJFbWFpbDogJ2F3cy1jZGstZGV2K2RlbGl2bGliQGFtYXpvbi5jb20nLFxuICAgICAgZ2l0VXNlck5hbWU6ICdEZWxpdmxpYiBUZXN0cycsXG4gICAgfSk7XG5cbiAgICAvL1xuICAgIC8vIEJVTVBcblxuICAgIHBpcGVsaW5lLmF1dG9CdW1wKHtcbiAgICAgIGJ1bXBDb21tYW5kOiAnbnBtIGkgJiYgbnBtIHJ1biBidW1wJyxcbiAgICB9KTtcblxuICAgIC8vXG4gICAgLy8gQVVUTy1CVUlMRFxuXG4gICAgcGlwZWxpbmUuYXV0b0J1aWxkKHtcbiAgICAgIHB1YmxpY0xvZ3M6IHRydWUsXG4gICAgfSk7XG5cbiAgICAvL1xuICAgIC8vIENIQU5HRSBDT05UUk9MXG4gICAgLy9cblxuICAgIHBpcGVsaW5lLmFkZENoYW5nZUNvbnRyb2woKTtcbiAgfVxufVxuIl19
|