@macedon-technologies/batman 1.26.0 → 1.27.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.jsii +4 -4
- package/lib/ApiConstructFile.js +2 -2
- package/lib/Application.js +5 -1
- package/lib/BatmanProject.js +2 -3
- package/lib/BootcampApplication.js +5 -1
- package/lib/BootcampProject.js +2 -3
- package/lib/CodeOwnersFile.js +1 -1
- package/lib/ProductionDeployWorkflow.js +1 -1
- package/lib/SecretConstructFile.d.ts +10 -0
- package/lib/SecretConstructFile.js +68 -0
- package/lib/SecretHandlerFiles.d.ts +11 -0
- package/lib/SecretHandlerFiles.js +189 -0
- package/lib/SoftwareFactoryFiles.js +1 -1
- package/lib/SoftwareFactoryModels.js +12 -7
- package/lib/SoftwareFactoryWorkflows.js +13 -4
- package/lib/StagingDeployWorkflow.js +1 -1
- package/lib/WorkflowAutoDiscover.js +1 -1
- package/models/@swamp/software-factory/platform-common-factory.yaml +11 -6
- package/package.json +1 -1
- package/workflows/workflow-pre-pr-verify.yaml +12 -3
package/.jsii
CHANGED
|
@@ -123,7 +123,7 @@
|
|
|
123
123
|
"kind": "interface",
|
|
124
124
|
"locationInModule": {
|
|
125
125
|
"filename": "src/Application.ts",
|
|
126
|
-
"line":
|
|
126
|
+
"line": 24
|
|
127
127
|
},
|
|
128
128
|
"name": "ApplicationEnvironmentConfig",
|
|
129
129
|
"properties": [
|
|
@@ -135,7 +135,7 @@
|
|
|
135
135
|
"immutable": true,
|
|
136
136
|
"locationInModule": {
|
|
137
137
|
"filename": "src/Application.ts",
|
|
138
|
-
"line":
|
|
138
|
+
"line": 25
|
|
139
139
|
},
|
|
140
140
|
"name": "githubActionRoleArn",
|
|
141
141
|
"type": {
|
|
@@ -1283,6 +1283,6 @@
|
|
|
1283
1283
|
"symbolId": "src/WorkflowAutoDiscover:WorkflowAutoDiscover"
|
|
1284
1284
|
}
|
|
1285
1285
|
},
|
|
1286
|
-
"version": "1.
|
|
1287
|
-
"fingerprint": "
|
|
1286
|
+
"version": "1.27.0",
|
|
1287
|
+
"fingerprint": "CUDyAAUOzlbxUTD+Kb+6E1LU0pD0IIPn4PeBrwAzuig="
|
|
1288
1288
|
}
|
package/lib/ApiConstructFile.js
CHANGED
|
@@ -9,7 +9,6 @@ class ApiConstructFile extends projen_1.SampleFile {
|
|
|
9
9
|
super(project, 'src/constructs/Api.ts', {
|
|
10
10
|
contents: `import { join } from 'path';
|
|
11
11
|
import { RustFunction } from '@cdklabs/aws-lambda-rust';
|
|
12
|
-
import { Secret } from '@matthewbonig/secret';
|
|
13
12
|
import { Duration, Stack } from 'aws-cdk-lib';
|
|
14
13
|
import { AccessLogFormat, EndpointType, LambdaIntegration, LogGroupLogDestination, RestApi, TokenAuthorizer } from 'aws-cdk-lib/aws-apigateway';
|
|
15
14
|
import { IVpc } from 'aws-cdk-lib/aws-ec2';
|
|
@@ -21,6 +20,7 @@ import { Bucket } from 'aws-cdk-lib/aws-s3';
|
|
|
21
20
|
|
|
22
21
|
import { Construct } from 'constructs';
|
|
23
22
|
import { N8N_ENDPOINT, N8N_JWT_KEY } from './handler/Api.Function';
|
|
23
|
+
import { Secret } from './Secret';
|
|
24
24
|
|
|
25
25
|
export interface ApiProps {
|
|
26
26
|
readonly cloudFrontOriginRequestPolicyId?: string;
|
|
@@ -191,4 +191,4 @@ export class Api extends Construct {
|
|
|
191
191
|
}
|
|
192
192
|
}
|
|
193
193
|
exports.ApiConstructFile = ApiConstructFile;
|
|
194
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXBpQ29uc3RydWN0RmlsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9BcGlDb25zdHJ1Y3RGaWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLG1DQUFvQztBQUd2QixRQUFBLGlDQUFpQyxHQUFHLGtDQUFrQyxDQUFDO0FBV3BGLE1BQWEsZ0JBQWlCLFNBQVEsbUJBQVU7SUFDOUMsWUFBWSxPQUE0QixFQUFFLFVBQW1DLEVBQUU7UUFDN0UsTUFBTSx1QkFBdUIsR0FBRyxPQUFPLENBQUMsdUJBQXVCLElBQUkseUNBQWlDLENBQUM7UUFDckcsS0FBSyxDQUFDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRTtZQUN0QyxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs0QkEyRVksdUJBQXVCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQXdHbEQ7U0FDSSxDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0Y7QUExTEQsNENBMExDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2FtcGxlRmlsZSB9IGZyb20gJ3Byb2plbic7XG5pbXBvcnQgeyBBd3NDZGtUeXBlU2NyaXB0QXBwIH0gZnJvbSAncHJvamVuL2xpYi9hd3NjZGsnO1xuXG5leHBvcnQgY29uc3QgREVGQVVMVF9BVVRIT1JJWkVSX09CSkVDVF9WRVJTSU9OID0gJ3NrYU9vdGZwSzhsOEJiUWdvTnlUWU8zTVo1YUEuM3hsJztcblxuZXhwb3J0IGludGVyZmFjZSBBcGlDb25zdHJ1Y3RGaWxlT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBUaGUgUzMgb2JqZWN0IHZlcnNpb24gb2YgdGhlIGNsZXJrLWF1dGhvcml6ZXIgTGFtYmRhIGRlcGxveW1lbnQgcGFja2FnZSB0byBwaW4uXG4gICAqXG4gICAqIEBkZWZhdWx0ICdza2FPb3RmcEs4bDhCYlFnb055VFlPM01aNWFBLjN4bCdcbiAgICovXG4gIHJlYWRvbmx5IGF1dGhvcml6ZXJPYmplY3RWZXJzaW9uPzogc3RyaW5nO1xufVxuXG5leHBvcnQgY2xhc3MgQXBpQ29uc3RydWN0RmlsZSBleHRlbmRzIFNhbXBsZUZpbGUge1xuICBjb25zdHJ1Y3Rvcihwcm9qZWN0OiBBd3NDZGtUeXBlU2NyaXB0QXBwLCBvcHRpb25zOiBBcGlDb25zdHJ1Y3RGaWxlT3B0aW9ucyA9IHt9KSB7XG4gICAgY29uc3QgYXV0aG9yaXplck9iamVjdFZlcnNpb24gPSBvcHRpb25zLmF1dGhvcml6ZXJPYmplY3RWZXJzaW9uID8/
|
|
194
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXBpQ29uc3RydWN0RmlsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9BcGlDb25zdHJ1Y3RGaWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLG1DQUFvQztBQUd2QixRQUFBLGlDQUFpQyxHQUFHLGtDQUFrQyxDQUFDO0FBV3BGLE1BQWEsZ0JBQWlCLFNBQVEsbUJBQVU7SUFDOUMsWUFBWSxPQUE0QixFQUFFLFVBQW1DLEVBQUU7UUFDN0UsTUFBTSx1QkFBdUIsR0FBRyxPQUFPLENBQUMsdUJBQXVCLElBQUkseUNBQWlDLENBQUM7UUFDckcsS0FBSyxDQUFDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRTtZQUN0QyxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs0QkEyRVksdUJBQXVCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQXdHbEQ7U0FDSSxDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0Y7QUExTEQsNENBMExDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2FtcGxlRmlsZSB9IGZyb20gJ3Byb2plbic7XG5pbXBvcnQgeyBBd3NDZGtUeXBlU2NyaXB0QXBwIH0gZnJvbSAncHJvamVuL2xpYi9hd3NjZGsnO1xuXG5leHBvcnQgY29uc3QgREVGQVVMVF9BVVRIT1JJWkVSX09CSkVDVF9WRVJTSU9OID0gJ3NrYU9vdGZwSzhsOEJiUWdvTnlUWU8zTVo1YUEuM3hsJztcblxuZXhwb3J0IGludGVyZmFjZSBBcGlDb25zdHJ1Y3RGaWxlT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBUaGUgUzMgb2JqZWN0IHZlcnNpb24gb2YgdGhlIGNsZXJrLWF1dGhvcml6ZXIgTGFtYmRhIGRlcGxveW1lbnQgcGFja2FnZSB0byBwaW4uXG4gICAqXG4gICAqIEBkZWZhdWx0ICdza2FPb3RmcEs4bDhCYlFnb055VFlPM01aNWFBLjN4bCdcbiAgICovXG4gIHJlYWRvbmx5IGF1dGhvcml6ZXJPYmplY3RWZXJzaW9uPzogc3RyaW5nO1xufVxuXG5leHBvcnQgY2xhc3MgQXBpQ29uc3RydWN0RmlsZSBleHRlbmRzIFNhbXBsZUZpbGUge1xuICBjb25zdHJ1Y3Rvcihwcm9qZWN0OiBBd3NDZGtUeXBlU2NyaXB0QXBwLCBvcHRpb25zOiBBcGlDb25zdHJ1Y3RGaWxlT3B0aW9ucyA9IHt9KSB7XG4gICAgY29uc3QgYXV0aG9yaXplck9iamVjdFZlcnNpb24gPSBvcHRpb25zLmF1dGhvcml6ZXJPYmplY3RWZXJzaW9uID8/IERFRkFVTFRfQVVUSE9SSVpFUl9PQkpFQ1RfVkVSU0lPTjtcbiAgICBzdXBlcihwcm9qZWN0LCAnc3JjL2NvbnN0cnVjdHMvQXBpLnRzJywge1xuICAgICAgY29udGVudHM6IGBpbXBvcnQgeyBqb2luIH0gZnJvbSAncGF0aCc7XG5pbXBvcnQgeyBSdXN0RnVuY3Rpb24gfSBmcm9tICdAY2RrbGFicy9hd3MtbGFtYmRhLXJ1c3QnO1xuaW1wb3J0IHsgRHVyYXRpb24sIFN0YWNrIH0gZnJvbSAnYXdzLWNkay1saWInO1xuaW1wb3J0IHsgQWNjZXNzTG9nRm9ybWF0LCBFbmRwb2ludFR5cGUsIExhbWJkYUludGVncmF0aW9uLCBMb2dHcm91cExvZ0Rlc3RpbmF0aW9uLCBSZXN0QXBpLCBUb2tlbkF1dGhvcml6ZXIgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtYXBpZ2F0ZXdheSc7XG5pbXBvcnQgeyBJVnBjIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWVjMic7XG5pbXBvcnQgeyBBbnlQcmluY2lwYWwsIEVmZmVjdCwgUG9saWN5RG9jdW1lbnQsIFBvbGljeVN0YXRlbWVudCB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1pYW0nO1xuaW1wb3J0IHsgQXJjaGl0ZWN0dXJlLCBTM0NvZGVWMiwgRnVuY3Rpb24gYXMgTGFtYmRhRnVuY3Rpb24sIFJ1bnRpbWUgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtbGFtYmRhJztcbmltcG9ydCB7IE5vZGVqc0Z1bmN0aW9uIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLWxhbWJkYS1ub2RlanMnO1xuaW1wb3J0IHsgTG9nR3JvdXAsIFJldGVudGlvbkRheXMgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtbG9ncyc7XG5pbXBvcnQgeyBCdWNrZXQgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtczMnO1xuXG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcbmltcG9ydCB7IE44Tl9FTkRQT0lOVCwgTjhOX0pXVF9LRVkgfSBmcm9tICcuL2hhbmRsZXIvQXBpLkZ1bmN0aW9uJztcbmltcG9ydCB7IFNlY3JldCB9IGZyb20gJy4vU2VjcmV0JztcblxuZXhwb3J0IGludGVyZmFjZSBBcGlQcm9wcyB7XG4gIHJlYWRvbmx5IGNsb3VkRnJvbnRPcmlnaW5SZXF1ZXN0UG9saWN5SWQ/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IHZwYzogSVZwYztcbiAgcmVhZG9ubHkgY2xlcmtKd2tzVXJsOiBzdHJpbmc7XG4gIHJlYWRvbmx5IG44bkVuZHBvaW50OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBjbGFzcyBBcGkgZXh0ZW5kcyBDb25zdHJ1Y3Qge1xuICBwdWJsaWMgcmVzdEFwaTogUmVzdEFwaTtcbiAgcHVibGljIGxhbWJkYUZ1bmN0aW9uOiBMYW1iZGFGdW5jdGlvbjtcblxuICBwcml2YXRlIGF1dGhvcml6ZXJGdW5jdGlvbjogUnVzdEZ1bmN0aW9uO1xuICBwcml2YXRlIG44bkp3dEtleVNlY3JldDogU2VjcmV0O1xuICBwcml2YXRlIGF1dGhvcml6ZXI6IFRva2VuQXV0aG9yaXplcjtcbiAgcHJpdmF0ZSBjbGVya0F1dGhTZWNyZXQ6IFNlY3JldDtcblxuICBjb25zdHJ1Y3RvcihzY29wZTogQ29uc3RydWN0LCBpZDogc3RyaW5nLCBwcml2YXRlIHByb3BzOiBBcGlQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCk7XG5cblxuICAgIHRoaXMuY3JlYXRlTjhOSnd0U2VjcmV0KCk7XG4gICAgaWYgKCF0aGlzLm44bkp3dEtleVNlY3JldCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdGYWlsZWQgdG8gY3JlYXRlIG44biBKV1Qga2V5IHNlY3JldCcpO1xuICAgIH1cblxuICAgIHRoaXMuY3JlYXRlQ2xlcmtBdXRoU2VjcmV0KCk7XG4gICAgaWYgKCF0aGlzLmNsZXJrQXV0aFNlY3JldCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdGYWlsZWQgdG8gY3JlYXRlIENsZXJrIGF1dGggc2VjcmV0Jyk7XG4gICAgfVxuXG4gICAgdGhpcy5jcmVhdGVMYW1iZGFGdW5jdGlvbigpO1xuICAgIGlmICghdGhpcy5sYW1iZGFGdW5jdGlvbikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdGYWlsZWQgdG8gY3JlYXRlIGxhbWJkYSBmdW5jdGlvbicpO1xuICAgIH1cblxuICAgIHRoaXMuY3JlYXRlQXV0aG9yaXplckZ1bmN0aW9uKCk7XG4gICAgaWYgKCF0aGlzLmF1dGhvcml6ZXJGdW5jdGlvbikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdGYWlsZWQgdG8gY3JlYXRlIGF1dGhvcml6ZXIgZnVuY3Rpb24nKTtcbiAgICB9XG5cbiAgICB0aGlzLmNyZWF0ZVJlc3RBcGkoKTtcbiAgICBpZiAoIXRoaXMucmVzdEFwaSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdGYWlsZWQgdG8gY3JlYXRlIFJFU1QgQVBJJyk7XG4gICAgfVxuXG4gICAgdGhpcy5jcmVhdGVBdXRob3JpemVyKCk7XG4gICAgaWYgKCF0aGlzLmF1dGhvcml6ZXIpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignRmFpbGVkIHRvIGNyZWF0ZSBhdXRob3JpemVyJyk7XG4gICAgfVxuXG4gICAgdGhpcy5zZXR1cEFwaUludGVncmF0aW9uKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgY3JlYXRlQXV0aG9yaXplckZ1bmN0aW9uKCkge1xuICAgIHRoaXMuYXV0aG9yaXplckZ1bmN0aW9uID0gbmV3IExhbWJkYUZ1bmN0aW9uKHRoaXMsICdDbGVya0F1dGhvcml6ZXJIYW5kbGVyJywge1xuICAgICAgcnVudGltZTogUnVudGltZS5QUk9WSURFRF9BTDIwMjMsXG4gICAgICB0aW1lb3V0OiBEdXJhdGlvbi5zZWNvbmRzKDEwKSxcbiAgICAgIGNvZGU6IFMzQ29kZVYyLmZyb21CdWNrZXRWMihcbiAgICAgICAgQnVja2V0LmZyb21CdWNrZXROYW1lKHRoaXMsICdNYWNlZG9uUGxhdGZvcm1CdWNrZXQnLCAnbWFjZWRvbi1wbGF0Zm9ybS1jb21tb24tMDE1OTU1ODE3MjYzJyksXG4gICAgICAgICdsYW1iZGEvY2xlcmstYXV0aG9yaXplci1hcm02NC1sYXRlc3QuemlwJyxcbiAgICAgICAgeyBvYmplY3RWZXJzaW9uOiAnJHthdXRob3JpemVyT2JqZWN0VmVyc2lvbn0nIH0sXG4gICAgICApLFxuICAgICAgZW52aXJvbm1lbnQ6IHtcbiAgICAgICAgQ0xFUktfSldLU19VUkw6IHRoaXMucHJvcHMuY2xlcmtKd2tzVXJsLFxuICAgICAgfSxcbiAgICAgIGhhbmRsZXI6ICdpdHNydXN0YmFieScsXG4gICAgICBhcmNoaXRlY3R1cmU6IEFyY2hpdGVjdHVyZS5BUk1fNjQsXG4gICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgY3JlYXRlTjhOSnd0U2VjcmV0KCkge1xuICAgIHRoaXMubjhuSnd0S2V5U2VjcmV0ID0gbmV3IFNlY3JldCh0aGlzLCAnTjhuSnd0S2V5U2VjcmV0Jywge30pO1xuICB9XG5cbiAgcHJvdGVjdGVkIGNyZWF0ZUxhbWJkYUZ1bmN0aW9uKCkge1xuICAgIHRoaXMubGFtYmRhRnVuY3Rpb24gPSBuZXcgTm9kZWpzRnVuY3Rpb24odGhpcywgJ0Z1bmN0aW9uJywge1xuICAgICAgcnVudGltZTogUnVudGltZS5OT0RFSlNfMjRfWCxcbiAgICAgIHRpbWVvdXQ6IER1cmF0aW9uLnNlY29uZHMoMzApLFxuICAgICAgbWVtb3J5U2l6ZTogNTEyLFxuICAgICAgZW50cnk6IGpvaW4oX19kaXJuYW1lLCAnaGFuZGxlci9BcGkuRnVuY3Rpb24udHMnKSxcbiAgICAgIHZwYzogdGhpcy5wcm9wcy52cGMsXG4gICAgICBlbnZpcm9ubWVudDoge1xuICAgICAgICBbTjhOX0pXVF9LRVldOiB0aGlzLm44bkp3dEtleVNlY3JldC5zZWNyZXROYW1lLFxuICAgICAgICBbTjhOX0VORFBPSU5UXTogdGhpcy5wcm9wcy5uOG5FbmRwb2ludCxcbiAgICAgIH0sXG4gICAgfSk7XG4gICAgdGhpcy5uOG5Kd3RLZXlTZWNyZXQuZ3JhbnRSZWFkKHRoaXMubGFtYmRhRnVuY3Rpb24pO1xuICB9XG5cbiAgcHJvdGVjdGVkIGNyZWF0ZVJlc3RBcGkoKSB7XG4gICAgY29uc3QgYWNjZXNzTG9nR3JvdXAgPSBuZXcgTG9nR3JvdXAodGhpcywgJ0FwaUFjY2Vzc0xvZ3MnLCB7XG4gICAgICByZXRlbnRpb246IFJldGVudGlvbkRheXMuVFdPX1dFRUtTLFxuICAgIH0pO1xuXG4gICAgdGhpcy5yZXN0QXBpID0gbmV3IFJlc3RBcGkodGhpcywgJ1Jlc3RBcGknLCB7XG4gICAgICByZXN0QXBpTmFtZTogXFxgXFwke1N0YWNrLm9mKHRoaXMpLnN0YWNrTmFtZX0tYXBpXFxgLFxuICAgICAgZGVzY3JpcHRpb246ICdBUEkgZm9yIE1WUCBVSSBhcHBsaWNhdGlvbicsXG4gICAgICBlbmRwb2ludFR5cGVzOiBbRW5kcG9pbnRUeXBlLlJFR0lPTkFMXSxcbiAgICAgIGNsb3VkV2F0Y2hSb2xlOiB0cnVlLFxuICAgICAgZGVwbG95T3B0aW9uczoge1xuICAgICAgICB0cmFjaW5nRW5hYmxlZDogdHJ1ZSxcbiAgICAgICAgbWV0cmljc0VuYWJsZWQ6IHRydWUsXG4gICAgICAgIGFjY2Vzc0xvZ0Rlc3RpbmF0aW9uOiBuZXcgTG9nR3JvdXBMb2dEZXN0aW5hdGlvbihhY2Nlc3NMb2dHcm91cCksXG4gICAgICAgIGFjY2Vzc0xvZ0Zvcm1hdDogQWNjZXNzTG9nRm9ybWF0Lmpzb25XaXRoU3RhbmRhcmRGaWVsZHMoKSxcbiAgICAgIH0sXG4gICAgICBwb2xpY3k6IG5ldyBQb2xpY3lEb2N1bWVudCh7XG4gICAgICAgIHN0YXRlbWVudHM6IFtcbiAgICAgICAgICBuZXcgUG9saWN5U3RhdGVtZW50KHtcbiAgICAgICAgICAgIGVmZmVjdDogRWZmZWN0LkRFTlksXG4gICAgICAgICAgICBwcmluY2lwYWxzOiBbbmV3IEFueVByaW5jaXBhbCgpXSxcbiAgICAgICAgICAgIGFjdGlvbnM6IFsnZXhlY3V0ZS1hcGk6SW52b2tlJ10sXG4gICAgICAgICAgICByZXNvdXJjZXM6IFsnKiddLFxuICAgICAgICAgICAgY29uZGl0aW9uczoge1xuICAgICAgICAgICAgICBTdHJpbmdOb3RFcXVhbHM6IHtcbiAgICAgICAgICAgICAgICAnYXdzOnVzZXJhZ2VudCc6ICdBbWF6b24gQ2xvdWRGcm9udCcsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0pLFxuICAgICAgICAgIG5ldyBQb2xpY3lTdGF0ZW1lbnQoe1xuICAgICAgICAgICAgZWZmZWN0OiBFZmZlY3QuQUxMT1csXG4gICAgICAgICAgICBwcmluY2lwYWxzOiBbbmV3IEFueVByaW5jaXBhbCgpXSxcbiAgICAgICAgICAgIGFjdGlvbnM6IFsnZXhlY3V0ZS1hcGk6SW52b2tlJ10sXG4gICAgICAgICAgICByZXNvdXJjZXM6IFsnKiddLFxuICAgICAgICAgICAgY29uZGl0aW9uczoge1xuICAgICAgICAgICAgICBTdHJpbmdFcXVhbHM6IHtcbiAgICAgICAgICAgICAgICAnYXdzOnVzZXJhZ2VudCc6ICdBbWF6b24gQ2xvdWRGcm9udCcsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgIH0pLFxuICAgICAgICBdLFxuICAgICAgfSksXG4gICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgY3JlYXRlQXV0aG9yaXplcigpIHtcbiAgICB0aGlzLmF1dGhvcml6ZXIgPSBuZXcgVG9rZW5BdXRob3JpemVyKHRoaXMsICdDbGVya0F1dGhvcml6ZXInLCB7XG4gICAgICBoYW5kbGVyOiB0aGlzLmF1dGhvcml6ZXJGdW5jdGlvbixcbiAgICAgIGlkZW50aXR5U291cmNlOiAnbWV0aG9kLnJlcXVlc3QuaGVhZGVyLkF1dGhvcml6YXRpb24nLFxuICAgIH0pO1xuICB9XG5cbiAgcHJvdGVjdGVkIHNldHVwQXBpSW50ZWdyYXRpb24oKSB7XG4gICAgY29uc3QgaW50ZWdyYXRpb24gPSBuZXcgTGFtYmRhSW50ZWdyYXRpb24odGhpcy5sYW1iZGFGdW5jdGlvbik7XG4gICAgdGhpcy5yZXN0QXBpLnJvb3QuYWRkUHJveHkoe1xuICAgICAgZGVmYXVsdEludGVncmF0aW9uOiBpbnRlZ3JhdGlvbixcbiAgICAgIGFueU1ldGhvZDogdHJ1ZSxcbiAgICAgIGRlZmF1bHRNZXRob2RPcHRpb25zOiB7XG4gICAgICAgIGF1dGhvcml6ZXI6IHRoaXMuYXV0aG9yaXplcixcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZUNsZXJrQXV0aFNlY3JldCgpIHtcbiAgICB0aGlzLmNsZXJrQXV0aFNlY3JldCA9IG5ldyBTZWNyZXQodGhpcywgJ0NsZXJrQXV0aFNlY3JldCcsIHtcbiAgICAgIGdlbmVyYXRlU2VjcmV0U3RyaW5nOiB7XG4gICAgICAgIHNlY3JldFN0cmluZ1RlbXBsYXRlOiBKU09OLnN0cmluZ2lmeSh7XG4gICAgICAgICAgY2xlcmtQdWJsaXNoYWJsZUtleTogJycsXG4gICAgICAgICAgY2xlcmtKd2tzVXJsOiAnJyxcbiAgICAgICAgfSksXG4gICAgICAgIGdlbmVyYXRlU3RyaW5nS2V5OiAnY2xlcmtQdWJsaXNoYWJsZUtleScsXG4gICAgICB9LFxuICAgIH0pO1xuICB9XG59XG5gLFxuICAgIH0pO1xuICB9XG59XG4iXX0=
|
package/lib/Application.js
CHANGED
|
@@ -15,6 +15,8 @@ const PrDeployWorkflow_1 = require("./PrDeployWorkflow");
|
|
|
15
15
|
const ProductionDeployWorkflow_1 = require("./ProductionDeployWorkflow");
|
|
16
16
|
const ProjenWorkflowHardening_1 = require("./ProjenWorkflowHardening");
|
|
17
17
|
const PrStackReaperWorkflow_1 = require("./PrStackReaperWorkflow");
|
|
18
|
+
const SecretConstructFile_1 = require("./SecretConstructFile");
|
|
19
|
+
const SecretHandlerFiles_1 = require("./SecretHandlerFiles");
|
|
18
20
|
const StagingDeployWorkflow_1 = require("./StagingDeployWorkflow");
|
|
19
21
|
const StaticWebsiteConstructFile_1 = require("./StaticWebsiteConstructFile");
|
|
20
22
|
const WorkflowAutoDiscover_1 = require("./WorkflowAutoDiscover");
|
|
@@ -44,6 +46,8 @@ class Application {
|
|
|
44
46
|
new ApplicationStackFile_1.ApplicationStackFile(project);
|
|
45
47
|
// Create construct files
|
|
46
48
|
new ApiConstructFile_1.ApiConstructFile(project, { authorizerObjectVersion: options.authorizerObjectVersion });
|
|
49
|
+
new SecretConstructFile_1.SecretConstructFile(project);
|
|
50
|
+
new SecretHandlerFiles_1.SecretHandlerFiles(project);
|
|
47
51
|
new StaticWebsiteConstructFile_1.StaticWebsiteConstructFile(project);
|
|
48
52
|
// n8n workflow files
|
|
49
53
|
if (options.n8nWorkflows === undefined || options.n8nWorkflows) {
|
|
@@ -97,4 +101,4 @@ class Application {
|
|
|
97
101
|
}
|
|
98
102
|
}
|
|
99
103
|
exports.Application = Application;
|
|
100
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXBwbGljYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvQXBwbGljYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsNkNBQTBDO0FBQzFDLHlEQUFzRDtBQUN0RCxpRUFBOEQ7QUFDOUQseUVBQXNFO0FBQ3RFLHFEQUFrRDtBQUNsRCxpRUFBOEQ7QUFDOUQsbURBQWdEO0FBQ2hELHlDQUF5RDtBQUN6RCxpREFBOEM7QUFDOUMsMkRBQXdEO0FBQ3hELHlEQUFzRDtBQUN0RCx5RUFBc0U7QUFDdEUsdUVBQTJFO0FBQzNFLG1FQUFnRTtBQUNoRSxtRUFBZ0U7QUFDaEUsNkVBQTBFO0FBRTFFLGlFQUE4RDtBQUM5RCx5REFBMEQ7QUFpQzFEOztHQUVHO0FBQ0gsTUFBYSxXQUFXO0lBQ3RCLFlBQVksT0FBNEIsRUFBRSxPQUEyQjtRQUNuRSxnQ0FBZ0M7UUFFaEMsSUFBSSxtQkFBUSxDQUFDLE9BQU8sRUFBRTtZQUNwQixXQUFXLEVBQUUsT0FBTyxDQUFDLElBQUk7WUFDekIsR0FBRyxFQUFFLE9BQU8sQ0FBQyxHQUFHO1lBQ2hCLE9BQU8sRUFBRSxPQUFPLENBQUMsT0FBTztZQUN4QixJQUFJLEVBQUUsT0FBTyxDQUFDLElBQUk7WUFDbEIsY0FBYyxFQUFFLE9BQU8sQ0FBQyxjQUFjO1NBQ3ZDLENBQUMsQ0FBQztRQUVILElBQUksNkJBQWEsQ0FBQyxPQUFPLEVBQUU7WUFDekIsV0FBVyxFQUFFLE9BQU8sQ0FBQyxJQUFJO1lBQ3pCLEdBQUcsRUFBRSxPQUFPLENBQUMsR0FBRztTQUNqQixDQUFDLENBQUM7UUFFSCxxQkFBcUI7UUFDckIsSUFBSSwyQ0FBb0IsQ0FBQyxPQUFPLEVBQUU7WUFDaEMsZ0JBQWdCLEVBQUUsT0FBTyxDQUFDLGdCQUFnQjtTQUMzQyxDQUFDLENBQUM7UUFFSCxJQUFJLG1EQUF3QixDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3RDLElBQUksMkNBQW9CLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFbEMseUJBQXlCO1FBQ3pCLElBQUksbUNBQWdCLENBQUMsT0FBTyxFQUFFLEVBQUUsdUJBQXVCLEVBQUUsT0FBTyxDQUFDLHVCQUF1QixFQUFFLENBQUMsQ0FBQztRQUM1RixJQUFJLHVEQUEwQixDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRXhDLHFCQUFxQjtRQUNyQixJQUFJLE9BQU8sQ0FBQyxZQUFZLEtBQUssU0FBUyxJQUFJLE9BQU8sQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUMvRCxJQUFJLHVDQUFvQixDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQ2xDLElBQUksMkNBQW9CLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDcEMsQ0FBQztRQUVELG1EQUFtRDtRQUNuRCxJQUFJLG1CQUFRLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFdEIsb0JBQW9CO1FBQ3BCLElBQUksMkJBQVksQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUUxQixzQkFBc0I7UUFDdEIsSUFBSSwrQkFBYyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRTVCLGtDQUFrQztRQUNsQyxJQUFJLG1DQUFnQixDQUFDLE9BQU8sRUFBRTtZQUM1QixPQUFPLEVBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxtQkFBbUI7WUFDeEMsU0FBUyxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTTtZQUM3QixtQkFBbUIsRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLG1CQUFtQjtZQUNwRCxjQUFjLEVBQUUsT0FBTyxDQUFDLGNBQWM7WUFDdEMsVUFBVSxFQUFFLE9BQU8sQ0FBQyxVQUFVO1NBQy9CLENBQUMsQ0FBQztRQUVILElBQUkscUNBQWlCLENBQUMsT0FBTyxFQUFFO1lBQzdCLE9BQU8sRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLG1CQUFtQjtZQUN4QyxTQUFTLEVBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNO1lBQzdCLFdBQVcsRUFBRSxPQUFPLENBQUMsSUFBSTtZQUN6QixjQUFjLEVBQUUsT0FBTyxDQUFDLGNBQWM7U0FDdkMsQ0FBQyxDQUFDO1FBRUgsSUFBSSw2Q0FBcUIsQ0FBQyxPQUFPLEVBQUU7WUFDakMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsbUJBQW1CO1lBQ3hDLFNBQVMsRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU07WUFDN0IsV0FBVyxFQUFFLE9BQU8sQ0FBQyxJQUFJO1lBQ3pCLGNBQWMsRUFBRSxPQUFPLENBQUMsY0FBYztTQUN2QyxDQUFDLENBQUM7UUFFSCxJQUFJLDZDQUFxQixDQUFDLE9BQU8sRUFBRTtZQUNqQyxPQUFPLEVBQUUsT0FBTyxDQUFDLE9BQU8sQ0FBQyxtQkFBbUI7WUFDNUMsU0FBUyxFQUFFLE9BQU8sQ0FBQyxPQUFPLENBQUMsTUFBTTtZQUNqQyxXQUFXLEVBQUUsT0FBTyxDQUFDLElBQUk7WUFDekIsbUJBQW1CLEVBQUUsT0FBTyxDQUFDLE9BQU8sQ0FBQyxtQkFBbUI7WUFDeEQsY0FBYyxFQUFFLE9BQU8sQ0FBQyxjQUFjO1NBQ3ZDLENBQUMsQ0FBQztRQUVILElBQUksbURBQXdCLENBQUMsT0FBTyxFQUFFO1lBQ3BDLE9BQU8sRUFBRSxPQUFPLENBQUMsSUFBSSxDQUFDLG1CQUFtQjtZQUN6QyxTQUFTLEVBQUUsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNO1lBQzlCLFdBQVcsRUFBRSxPQUFPLENBQUMsSUFBSTtZQUN6QixtQkFBbUIsRUFBRSxPQUFPLENBQUMsSUFBSSxDQUFDLG1CQUFtQjtZQUNyRCxjQUFjLEVBQUUsT0FBTyxDQUFDLGNBQWM7U0FDdkMsQ0FBQyxDQUFDO1FBRUgsOEVBQThFO1FBQzlFLDJFQUEyRTtRQUMzRSxnRkFBZ0Y7UUFDaEYsSUFBQSx3REFBOEIsRUFBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLGNBQWMsQ0FBQyxDQUFDO0lBQ2xFLENBQUM7Q0FDRjtBQXhGRCxrQ0F3RkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBd3NDZGtUeXBlU2NyaXB0QXBwIH0gZnJvbSAncHJvamVuL2xpYi9hd3NjZGsnO1xuaW1wb3J0IHsgQXBpRmlsZXMgfSBmcm9tICcuL0FwaS9BcGlGaWxlcyc7XG5pbXBvcnQgeyBBcGlDb25zdHJ1Y3RGaWxlIH0gZnJvbSAnLi9BcGlDb25zdHJ1Y3RGaWxlJztcbmltcG9ydCB7IEFwcGxpY2F0aW9uU3RhY2tGaWxlIH0gZnJvbSAnLi9BcHBsaWNhdGlvblN0YWNrRmlsZSc7XG5pbXBvcnQgeyBCYXNlQXBwbGljYXRpb25TdGFja0ZpbGUgfSBmcm9tICcuL0Jhc2VBcHBsaWNhdGlvblN0YWNrRmlsZSc7XG5pbXBvcnQgeyBDb2RlUmFiYml0RmlsZSB9IGZyb20gJy4vQ29kZVJhYmJpdEZpbGUnO1xuaW1wb3J0IHsgR2l0SHViUm9sZXNTdGFja0ZpbGUgfSBmcm9tICcuL0dpdEh1YlJvbGVzU3RhY2tGaWxlJztcbmltcG9ydCB7IExvY2FsRGV2RmlsZXMgfSBmcm9tICcuL0xvY2FsRGV2RmlsZXMnO1xuaW1wb3J0IHsgRW52aXJvbm1lbnRDb25maWcsIE1haW5GaWxlIH0gZnJvbSAnLi9NYWluRmlsZSc7XG5pbXBvcnQgeyBNYWluVGVzdEZpbGUgfSBmcm9tICcuL01haW5UZXN0RmlsZSc7XG5pbXBvcnQgeyBQckNsZWFudXBXb3JrZmxvdyB9IGZyb20gJy4vUHJDbGVhbnVwV29ya2Zsb3cnO1xuaW1wb3J0IHsgUHJEZXBsb3lXb3JrZmxvdyB9IGZyb20gJy4vUHJEZXBsb3lXb3JrZmxvdyc7XG5pbXBvcnQgeyBQcm9kdWN0aW9uRGVwbG95V29ya2Zsb3cgfSBmcm9tICcuL1Byb2R1Y3Rpb25EZXBsb3lXb3JrZmxvdyc7XG5pbXBvcnQgeyBoYXJkZW5Qcm9qZW5HZW5lcmF0ZWRXb3JrZmxvd3MgfSBmcm9tICcuL1Byb2plbldvcmtmbG93SGFyZGVuaW5nJztcbmltcG9ydCB7IFByU3RhY2tSZWFwZXJXb3JrZmxvdyB9IGZyb20gJy4vUHJTdGFja1JlYXBlcldvcmtmbG93JztcbmltcG9ydCB7IFN0YWdpbmdEZXBsb3lXb3JrZmxvdyB9IGZyb20gJy4vU3RhZ2luZ0RlcGxveVdvcmtmbG93JztcbmltcG9ydCB7IFN0YXRpY1dlYnNpdGVDb25zdHJ1Y3RGaWxlIH0gZnJvbSAnLi9TdGF0aWNXZWJzaXRlQ29uc3RydWN0RmlsZSc7XG5pbXBvcnQgeyBXb3JrZmxvd0FjdGlvblZlcnNpb25zIH0gZnJvbSAnLi9Xb3JrZmxvd0FjdGlvblZlcnNpb25zJztcbmltcG9ydCB7IFdvcmtmbG93QXV0b0Rpc2NvdmVyIH0gZnJvbSAnLi9Xb3JrZmxvd0F1dG9EaXNjb3Zlcic7XG5pbXBvcnQgeyBXb3JrZmxvd1Byb3ZpZGVyRmlsZSB9IGZyb20gJy4vV29ya2Zsb3dQcm92aWRlcic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXBwbGljYXRpb25FbnZpcm9ubWVudENvbmZpZyBleHRlbmRzIEVudmlyb25tZW50Q29uZmlnIHtcbiAgcmVhZG9ubHkgZ2l0aHViQWN0aW9uUm9sZUFybjogYGFybjphd3M6aWFtOjoke3N0cmluZ306cm9sZS8ke3N0cmluZ31gO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFwcGxpY2F0aW9uT3B0aW9ucyB7XG4gIHJlYWRvbmx5IGdpdGh1YlJlcG9zaXRvcnk6IHN0cmluZztcbiAgcmVhZG9ubHkgZGV2OiBBcHBsaWNhdGlvbkVudmlyb25tZW50Q29uZmlnO1xuICByZWFkb25seSBzdGFnaW5nOiBBcHBsaWNhdGlvbkVudmlyb25tZW50Q29uZmlnO1xuICByZWFkb25seSBwcm9kOiBBcHBsaWNhdGlvbkVudmlyb25tZW50Q29uZmlnO1xuICByZWFkb25seSBhZGRpdGlvbmFsVGFncz86IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH07XG4gIHJlYWRvbmx5IG44bldvcmtmbG93cz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIE92ZXJyaWRlcyBmb3IgdGhlIHBpbm5lZCBhY3Rpb24gdmVyc2lvbnMgdXNlZCBieSB0aGUgZ2VuZXJhdGVkIEdpdEh1YiBBY3Rpb25zIHdvcmtmbG93cy5cbiAgICovXG4gIHJlYWRvbmx5IGFjdGlvblZlcnNpb25zPzogV29ya2Zsb3dBY3Rpb25WZXJzaW9ucztcblxuICAvKipcbiAgICogT3ZlcnJpZGVzIHRoZSBwaW5uZWQgUzMgb2JqZWN0IHZlcnNpb24gb2YgdGhlIGNsZXJrLWF1dGhvcml6ZXIgTGFtYmRhIGRlcGxveW1lbnQgcGFja2FnZS5cbiAgICpcbiAgICogQGRlZmF1bHQgLSB0aGUgZGVmYXVsdCBwaW5uZWQgaW4gQXBpQ29uc3RydWN0RmlsZVxuICAgKi9cbiAgcmVhZG9ubHkgYXV0aG9yaXplck9iamVjdFZlcnNpb24/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgYFByRGVwbG95V29ya2Zsb3dgIHJ1bnMgdGhlIFBsYXl3cmlnaHQgZTJlIHN1aXRlIGFnYWluc3QgdGhlIGRlcGxveWVkIFBSIHN0YWNrLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBlMmVUZXN0aW5nPzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBBcHBsaWNhdGlvbiBjb25zdHJ1Y3QgdGhhdCBjcmVhdGVzIGFsbCBzdGFuZGFyZCBwcm9qZWN0IGZpbGVzXG4gKi9cbmV4cG9ydCBjbGFzcyBBcHBsaWNhdGlvbiB7XG4gIGNvbnN0cnVjdG9yKHByb2plY3Q6IEF3c0Nka1R5cGVTY3JpcHRBcHAsIG9wdGlvbnM6IEFwcGxpY2F0aW9uT3B0aW9ucykge1xuICAgIC8vIENyZWF0ZSBtYWluIGVudHJ5IHBvaW50IGZpbGVzXG5cbiAgICBuZXcgTWFpbkZpbGUocHJvamVjdCwge1xuICAgICAgcHJvamVjdE5hbWU6IHByb2plY3QubmFtZSxcbiAgICAgIGRldjogb3B0aW9ucy5kZXYsXG4gICAgICBzdGFnaW5nOiBvcHRpb25zLnN0YWdpbmcsXG4gICAgICBwcm9kOiBvcHRpb25zLnByb2QsXG4gICAgICBhZGRpdGlvbmFsVGFnczogb3B0aW9ucy5hZGRpdGlvbmFsVGFncyxcbiAgICB9KTtcblxuICAgIG5ldyBMb2NhbERldkZpbGVzKHByb2plY3QsIHtcbiAgICAgIHByb2plY3ROYW1lOiBwcm9qZWN0Lm5hbWUsXG4gICAgICBkZXY6IG9wdGlvbnMuZGV2LFxuICAgIH0pO1xuXG4gICAgLy8gQ3JlYXRlIHN0YWNrIGZpbGVzXG4gICAgbmV3IEdpdEh1YlJvbGVzU3RhY2tGaWxlKHByb2plY3QsIHtcbiAgICAgIGdpdGh1YlJlcG9zaXRvcnk6IG9wdGlvbnMuZ2l0aHViUmVwb3NpdG9yeSxcbiAgICB9KTtcblxuICAgIG5ldyBCYXNlQXBwbGljYXRpb25TdGFja0ZpbGUocHJvamVjdCk7XG4gICAgbmV3IEFwcGxpY2F0aW9uU3RhY2tGaWxlKHByb2plY3QpO1xuXG4gICAgLy8gQ3JlYXRlIGNvbnN0cnVjdCBmaWxlc1xuICAgIG5ldyBBcGlDb25zdHJ1Y3RGaWxlKHByb2plY3QsIHsgYXV0aG9yaXplck9iamVjdFZlcnNpb246IG9wdGlvbnMuYXV0aG9yaXplck9iamVjdFZlcnNpb24gfSk7XG4gICAgbmV3IFN0YXRpY1dlYnNpdGVDb25zdHJ1Y3RGaWxlKHByb2plY3QpO1xuXG4gICAgLy8gbjhuIHdvcmtmbG93IGZpbGVzXG4gICAgaWYgKG9wdGlvbnMubjhuV29ya2Zsb3dzID09PSB1bmRlZmluZWQgfHwgb3B0aW9ucy5uOG5Xb3JrZmxvd3MpIHtcbiAgICAgIG5ldyBXb3JrZmxvd1Byb3ZpZGVyRmlsZShwcm9qZWN0KTtcbiAgICAgIG5ldyBXb3JrZmxvd0F1dG9EaXNjb3Zlcihwcm9qZWN0KTtcbiAgICB9XG5cbiAgICAvLyBDcmVhdGUgaGFuZGxlciBmaWxlcyBhbmQgQVBJIGJhY2tlbmQgbG9naWMgZmlsZXNcbiAgICBuZXcgQXBpRmlsZXMocHJvamVjdCk7XG5cbiAgICAvLyBDcmVhdGUgdGVzdCBmaWxlc1xuICAgIG5ldyBNYWluVGVzdEZpbGUocHJvamVjdCk7XG5cbiAgICAvLyBDcmVhdGUgY29uZmlnIGZpbGVzXG4gICAgbmV3IENvZGVSYWJiaXRGaWxlKHByb2plY3QpO1xuXG4gICAgLy8gQ3JlYXRlIEdpdEh1YiBBY3Rpb25zIHdvcmtmbG93c1xuICAgIG5ldyBQckRlcGxveVdvcmtmbG93KHByb2plY3QsIHtcbiAgICAgIHJvbGVBcm46IG9wdGlvbnMuZGV2LmdpdGh1YkFjdGlvblJvbGVBcm4sXG4gICAgICBhd3NSZWdpb246IG9wdGlvbnMuZGV2LnJlZ2lvbixcbiAgICAgIGNsZXJrUHVibGlzaGFibGVLZXk6IG9wdGlvbnMuZGV2LmNsZXJrUHVibGlzaGFibGVLZXksXG4gICAgICBhY3Rpb25WZXJzaW9uczogb3B0aW9ucy5hY3Rpb25WZXJzaW9ucyxcbiAgICAgIGUyZVRlc3Rpbmc6IG9wdGlvbnMuZTJlVGVzdGluZyxcbiAgICB9KTtcblxuICAgIG5ldyBQckNsZWFudXBXb3JrZmxvdyhwcm9qZWN0LCB7XG4gICAgICByb2xlQXJuOiBvcHRpb25zLmRldi5naXRodWJBY3Rpb25Sb2xlQXJuLFxuICAgICAgYXdzUmVnaW9uOiBvcHRpb25zLmRldi5yZWdpb24sXG4gICAgICBwcm9qZWN0TmFtZTogcHJvamVjdC5uYW1lLFxuICAgICAgYWN0aW9uVmVyc2lvbnM6IG9wdGlvbnMuYWN0aW9uVmVyc2lvbnMsXG4gICAgfSk7XG5cbiAgICBuZXcgUHJTdGFja1JlYXBlcldvcmtmbG93KHByb2plY3QsIHtcbiAgICAgIHJvbGVBcm46IG9wdGlvbnMuZGV2LmdpdGh1YkFjdGlvblJvbGVBcm4sXG4gICAgICBhd3NSZWdpb246IG9wdGlvbnMuZGV2LnJlZ2lvbixcbiAgICAgIHByb2plY3ROYW1lOiBwcm9qZWN0Lm5hbWUsXG4gICAgICBhY3Rpb25WZXJzaW9uczogb3B0aW9ucy5hY3Rpb25WZXJzaW9ucyxcbiAgICB9KTtcblxuICAgIG5ldyBTdGFnaW5nRGVwbG95V29ya2Zsb3cocHJvamVjdCwge1xuICAgICAgcm9sZUFybjogb3B0aW9ucy5zdGFnaW5nLmdpdGh1YkFjdGlvblJvbGVBcm4sXG4gICAgICBhd3NSZWdpb246IG9wdGlvbnMuc3RhZ2luZy5yZWdpb24sXG4gICAgICBwcm9qZWN0TmFtZTogcHJvamVjdC5uYW1lLFxuICAgICAgY2xlcmtQdWJsaXNoYWJsZUtleTogb3B0aW9ucy5zdGFnaW5nLmNsZXJrUHVibGlzaGFibGVLZXksXG4gICAgICBhY3Rpb25WZXJzaW9uczogb3B0aW9ucy5hY3Rpb25WZXJzaW9ucyxcbiAgICB9KTtcblxuICAgIG5ldyBQcm9kdWN0aW9uRGVwbG95V29ya2Zsb3cocHJvamVjdCwge1xuICAgICAgcm9sZUFybjogb3B0aW9ucy5wcm9kLmdpdGh1YkFjdGlvblJvbGVBcm4sXG4gICAgICBhd3NSZWdpb246IG9wdGlvbnMucHJvZC5yZWdpb24sXG4gICAgICBwcm9qZWN0TmFtZTogcHJvamVjdC5uYW1lLFxuICAgICAgY2xlcmtQdWJsaXNoYWJsZUtleTogb3B0aW9ucy5wcm9kLmNsZXJrUHVibGlzaGFibGVLZXksXG4gICAgICBhY3Rpb25WZXJzaW9uczogb3B0aW9ucy5hY3Rpb25WZXJzaW9ucyxcbiAgICB9KTtcblxuICAgIC8vIEhhcmRlbiB0aGUgd29ya2Zsb3dzIEF3c0Nka1R5cGVTY3JpcHRBcHAgZ2VuZXJhdGVzIG9uIGl0cyBvd24gKHVwZ3JhZGUueW1sLFxuICAgIC8vIHB1bGwtcmVxdWVzdC1saW50LnltbCksIHdoaWNoIG90aGVyd2lzZSBzaGlwIHdpdGggdW5waW5uZWQgYWN0aW9ucyBhbmQgYVxuICAgIC8vIHB1bGxfcmVxdWVzdF90YXJnZXQgdHJpZ2dlciB6aXptb3IgZmxhZ3Mgb24gZXZlcnkgY29uc3VtZXIgb2YgdGhpcyBjb25zdHJ1Y3QuXG4gICAgaGFyZGVuUHJvamVuR2VuZXJhdGVkV29ya2Zsb3dzKHByb2plY3QsIG9wdGlvbnMuYWN0aW9uVmVyc2lvbnMpO1xuICB9XG59XG4iXX0=
|
|
104
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXBwbGljYXRpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvQXBwbGljYXRpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsNkNBQTBDO0FBQzFDLHlEQUFzRDtBQUN0RCxpRUFBOEQ7QUFDOUQseUVBQXNFO0FBQ3RFLHFEQUFrRDtBQUNsRCxpRUFBOEQ7QUFDOUQsbURBQWdEO0FBQ2hELHlDQUF5RDtBQUN6RCxpREFBOEM7QUFDOUMsMkRBQXdEO0FBQ3hELHlEQUFzRDtBQUN0RCx5RUFBc0U7QUFDdEUsdUVBQTJFO0FBQzNFLG1FQUFnRTtBQUNoRSwrREFBNEQ7QUFDNUQsNkRBQTBEO0FBQzFELG1FQUFnRTtBQUNoRSw2RUFBMEU7QUFFMUUsaUVBQThEO0FBQzlELHlEQUEwRDtBQWlDMUQ7O0dBRUc7QUFDSCxNQUFhLFdBQVc7SUFDdEIsWUFBWSxPQUE0QixFQUFFLE9BQTJCO1FBQ25FLGdDQUFnQztRQUVoQyxJQUFJLG1CQUFRLENBQUMsT0FBTyxFQUFFO1lBQ3BCLFdBQVcsRUFBRSxPQUFPLENBQUMsSUFBSTtZQUN6QixHQUFHLEVBQUUsT0FBTyxDQUFDLEdBQUc7WUFDaEIsT0FBTyxFQUFFLE9BQU8sQ0FBQyxPQUFPO1lBQ3hCLElBQUksRUFBRSxPQUFPLENBQUMsSUFBSTtZQUNsQixjQUFjLEVBQUUsT0FBTyxDQUFDLGNBQWM7U0FDdkMsQ0FBQyxDQUFDO1FBRUgsSUFBSSw2QkFBYSxDQUFDLE9BQU8sRUFBRTtZQUN6QixXQUFXLEVBQUUsT0FBTyxDQUFDLElBQUk7WUFDekIsR0FBRyxFQUFFLE9BQU8sQ0FBQyxHQUFHO1NBQ2pCLENBQUMsQ0FBQztRQUVILHFCQUFxQjtRQUNyQixJQUFJLDJDQUFvQixDQUFDLE9BQU8sRUFBRTtZQUNoQyxnQkFBZ0IsRUFBRSxPQUFPLENBQUMsZ0JBQWdCO1NBQzNDLENBQUMsQ0FBQztRQUVILElBQUksbURBQXdCLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDdEMsSUFBSSwy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Y2VzQ29udGVudCI6WyJpbXBvcnQgeyBBd3NDZGtUeXBlU2NyaXB0QXBwIH0gZnJvbSAncHJvamVuL2xpYi9hd3NjZGsnO1xuaW1wb3J0IHsgQXBpRmlsZXMgfSBmcm9tICcuL0FwaS9BcGlGaWxlcyc7XG5pbXBvcnQgeyBBcGlDb25zdHJ1Y3RGaWxlIH0gZnJvbSAnLi9BcGlDb25zdHJ1Y3RGaWxlJztcbmltcG9ydCB7IEFwcGxpY2F0aW9uU3RhY2tGaWxlIH0gZnJvbSAnLi9BcHBsaWNhdGlvblN0YWNrRmlsZSc7XG5pbXBvcnQgeyBCYXNlQXBwbGljYXRpb25TdGFja0ZpbGUgfSBmcm9tICcuL0Jhc2VBcHBsaWNhdGlvblN0YWNrRmlsZSc7XG5pbXBvcnQgeyBDb2RlUmFiYml0RmlsZSB9IGZyb20gJy4vQ29kZVJhYmJpdEZpbGUnO1xuaW1wb3J0IHsgR2l0SHViUm9sZXNTdGFja0ZpbGUgfSBmcm9tICcuL0dpdEh1YlJvbGVzU3RhY2tGaWxlJztcbmltcG9ydCB7IExvY2FsRGV2RmlsZXMgfSBmcm9tICcuL0xvY2FsRGV2RmlsZXMnO1xuaW1wb3J0IHsgRW52aXJvbm1lbnRDb25maWcsIE1haW5GaWxlIH0gZnJvbSAnLi9NYWluRmlsZSc7XG5pbXBvcnQgeyBNYWluVGVzdEZpbGUgfSBmcm9tICcuL01haW5UZXN0RmlsZSc7XG5pbXBvcnQgeyBQckNsZWFudXBXb3JrZmxvdyB9IGZyb20gJy4vUHJDbGVhbnVwV29ya2Zsb3cnO1xuaW1wb3J0IHsgUHJEZXBsb3lXb3JrZmxvdyB9IGZyb20gJy4vUHJEZXBsb3lXb3JrZmxvdyc7XG5pbXBvcnQgeyBQcm9kdWN0aW9uRGVwbG95V29ya2Zsb3cgfSBmcm9tICcuL1Byb2R1Y3Rpb25EZXBsb3lXb3JrZmxvdyc7XG5pbXBvcnQgeyBoYXJkZW5Qcm9qZW5HZW5lcmF0ZWRXb3JrZmxvd3MgfSBmcm9tICcuL1Byb2plbldvcmtmbG93SGFyZGVuaW5nJztcbmltcG9ydCB7IFByU3RhY2tSZWFwZXJXb3JrZmxvdyB9IGZyb20gJy4vUHJTdGFja1JlYXBlcldvcmtmbG93JztcbmltcG9ydCB7IFNlY3JldENvbnN0cnVjdEZpbGUgfSBmcm9tICcuL1NlY3JldENvbnN0cnVjdEZpbGUnO1xuaW1wb3J0IHsgU2VjcmV0SGFuZGxlckZpbGVzIH0gZnJvbSAnLi9TZWNyZXRIYW5kbGVyRmlsZXMnO1xuaW1wb3J0IHsgU3RhZ2luZ0RlcGxveVdvcmtmbG93IH0gZnJvbSAnLi9TdGFnaW5nRGVwbG95V29ya2Zsb3cnO1xuaW1wb3J0IHsgU3RhdGljV2Vic2l0ZUNvbnN0cnVjdEZpbGUgfSBmcm9tICcuL1N0YXRpY1dlYnNpdGVDb25zdHJ1Y3RGaWxlJztcbmltcG9ydCB7IFdvcmtmbG93QWN0aW9uVmVyc2lvbnMgfSBmcm9tICcuL1dvcmtmbG93QWN0aW9uVmVyc2lvbnMnO1xuaW1wb3J0IHsgV29ya2Zsb3dBdXRvRGlzY292ZXIgfSBmcm9tICcuL1dvcmtmbG93QXV0b0Rpc2NvdmVyJztcbmltcG9ydCB7IFdvcmtmbG93UHJvdmlkZXJGaWxlIH0gZnJvbSAnLi9Xb3JrZmxvd1Byb3ZpZGVyJztcblxuZXhwb3J0IGludGVyZmFjZSBBcHBsaWNhdGlvbkVudmlyb25tZW50Q29uZmlnIGV4dGVuZHMgRW52aXJvbm1lbnRDb25maWcge1xuICByZWFkb25seSBnaXRodWJBY3Rpb25Sb2xlQXJuOiBgYXJuOmF3czppYW06OiR7c3RyaW5nfTpyb2xlLyR7c3RyaW5nfWA7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXBwbGljYXRpb25PcHRpb25zIHtcbiAgcmVhZG9ubHkgZ2l0aHViUmVwb3NpdG9yeTogc3RyaW5nO1xuICByZWFkb25seSBkZXY6IEFwcGxpY2F0aW9uRW52aXJvbm1lbnRDb25maWc7XG4gIHJlYWRvbmx5IHN0YWdpbmc6IEFwcGxpY2F0aW9uRW52aXJvbm1lbnRDb25maWc7XG4gIHJlYWRvbmx5IHByb2Q6IEFwcGxpY2F0aW9uRW52aXJvbm1lbnRDb25maWc7XG4gIHJlYWRvbmx5IGFkZGl0aW9uYWxUYWdzPzogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfTtcbiAgcmVhZG9ubHkgbjhuV29ya2Zsb3dzPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogT3ZlcnJpZGVzIGZvciB0aGUgcGlubmVkIGFjdGlvbiB2ZXJzaW9ucyB1c2VkIGJ5IHRoZSBnZW5lcmF0ZWQgR2l0SHViIEFjdGlvbnMgd29ya2Zsb3dzLlxuICAgKi9cbiAgcmVhZG9ubHkgYWN0aW9uVmVyc2lvbnM/OiBXb3JrZmxvd0FjdGlvblZlcnNpb25zO1xuXG4gIC8qKlxuICAgKiBPdmVycmlkZXMgdGhlIHBpbm5lZCBTMyBvYmplY3QgdmVyc2lvbiBvZiB0aGUgY2xlcmstYXV0aG9yaXplciBMYW1iZGEgZGVwbG95bWVudCBwYWNrYWdlLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIHRoZSBkZWZhdWx0IHBpbm5lZCBpbiBBcGlDb25zdHJ1Y3RGaWxlXG4gICAqL1xuICByZWFkb25seSBhdXRob3JpemVyT2JqZWN0VmVyc2lvbj86IHN0cmluZztcblxuICAvKipcbiAgICogV2hldGhlciBgUHJEZXBsb3lXb3JrZmxvd2AgcnVucyB0aGUgUGxheXdyaWdodCBlMmUgc3VpdGUgYWdhaW5zdCB0aGUgZGVwbG95ZWQgUFIgc3RhY2suXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIHJlYWRvbmx5IGUyZVRlc3Rpbmc/OiBib29sZWFuO1xufVxuXG4vKipcbiAqIEFwcGxpY2F0aW9uIGNvbnN0cnVjdCB0aGF0IGNyZWF0ZXMgYWxsIHN0YW5kYXJkIHByb2plY3QgZmlsZXNcbiAqL1xuZXhwb3J0IGNsYXNzIEFwcGxpY2F0aW9uIHtcbiAgY29uc3RydWN0b3IocHJvamVjdDogQXdzQ2RrVHlwZVNjcmlwdEFwcCwgb3B0aW9uczogQXBwbGljYXRpb25PcHRpb25zKSB7XG4gICAgLy8gQ3JlYXRlIG1haW4gZW50cnkgcG9pbnQgZmlsZXNcblxuICAgIG5ldyBNYWluRmlsZShwcm9qZWN0LCB7XG4gICAgICBwcm9qZWN0TmFtZTogcHJvamVjdC5uYW1lLFxuICAgICAgZGV2OiBvcHRpb25zLmRldixcbiAgICAgIHN0YWdpbmc6IG9wdGlvbnMuc3RhZ2luZyxcbiAgICAgIHByb2Q6IG9wdGlvbnMucHJvZCxcbiAgICAgIGFkZGl0aW9uYWxUYWdzOiBvcHRpb25zLmFkZGl0aW9uYWxUYWdzLFxuICAgIH0pO1xuXG4gICAgbmV3IExvY2FsRGV2RmlsZXMocHJvamVjdCwge1xuICAgICAgcHJvamVjdE5hbWU6IHByb2plY3QubmFtZSxcbiAgICAgIGRldjogb3B0aW9ucy5kZXYsXG4gICAgfSk7XG5cbiAgICAvLyBDcmVhdGUgc3RhY2sgZmlsZXNcbiAgICBuZXcgR2l0SHViUm9sZXNTdGFja0ZpbGUocHJvamVjdCwge1xuICAgICAgZ2l0aHViUmVwb3NpdG9yeTogb3B0aW9ucy5naXRodWJSZXBvc2l0b3J5LFxuICAgIH0pO1xuXG4gICAgbmV3IEJhc2VBcHBsaWNhdGlvblN0YWNrRmlsZShwcm9qZWN0KTtcbiAgICBuZXcgQXBwbGljYXRpb25TdGFja0ZpbGUocHJvamVjdCk7XG5cbiAgICAvLyBDcmVhdGUgY29uc3RydWN0IGZpbGVzXG4gICAgbmV3IEFwaUNvbnN0cnVjdEZpbGUocHJvamVjdCwgeyBhdXRob3JpemVyT2JqZWN0VmVyc2lvbjogb3B0aW9ucy5hdXRob3JpemVyT2JqZWN0VmVyc2lvbiB9KTtcbiAgICBuZXcgU2VjcmV0Q29uc3RydWN0RmlsZShwcm9qZWN0KTtcbiAgICBuZXcgU2VjcmV0SGFuZGxlckZpbGVzKHByb2plY3QpO1xuICAgIG5ldyBTdGF0aWNXZWJzaXRlQ29uc3RydWN0RmlsZShwcm9qZWN0KTtcblxuICAgIC8vIG44biB3b3JrZmxvdyBmaWxlc1xuICAgIGlmIChvcHRpb25zLm44bldvcmtmbG93cyA9PT0gdW5kZWZpbmVkIHx8IG9wdGlvbnMubjhuV29ya2Zsb3dzKSB7XG4gICAgICBuZXcgV29ya2Zsb3dQcm92aWRlckZpbGUocHJvamVjdCk7XG4gICAgICBuZXcgV29ya2Zsb3dBdXRvRGlzY292ZXIocHJvamVjdCk7XG4gICAgfVxuXG4gICAgLy8gQ3JlYXRlIGhhbmRsZXIgZmlsZXMgYW5kIEFQSSBiYWNrZW5kIGxvZ2ljIGZpbGVzXG4gICAgbmV3IEFwaUZpbGVzKHByb2plY3QpO1xuXG4gICAgLy8gQ3JlYXRlIHRlc3QgZmlsZXNcbiAgICBuZXcgTWFpblRlc3RGaWxlKHByb2plY3QpO1xuXG4gICAgLy8gQ3JlYXRlIGNvbmZpZyBmaWxlc1xuICAgIG5ldyBDb2RlUmFiYml0RmlsZShwcm9qZWN0KTtcblxuICAgIC8vIENyZWF0ZSBHaXRIdWIgQWN0aW9ucyB3b3JrZmxvd3NcbiAgICBuZXcgUHJEZXBsb3lXb3JrZmxvdyhwcm9qZWN0LCB7XG4gICAgICByb2xlQXJuOiBvcHRpb25zLmRldi5naXRodWJBY3Rpb25Sb2xlQXJuLFxuICAgICAgYXdzUmVnaW9uOiBvcHRpb25zLmRldi5yZWdpb24sXG4gICAgICBjbGVya1B1Ymxpc2hhYmxlS2V5OiBvcHRpb25zLmRldi5jbGVya1B1Ymxpc2hhYmxlS2V5LFxuICAgICAgYWN0aW9uVmVyc2lvbnM6IG9wdGlvbnMuYWN0aW9uVmVyc2lvbnMsXG4gICAgICBlMmVUZXN0aW5nOiBvcHRpb25zLmUyZVRlc3RpbmcsXG4gICAgfSk7XG5cbiAgICBuZXcgUHJDbGVhbnVwV29ya2Zsb3cocHJvamVjdCwge1xuICAgICAgcm9sZUFybjogb3B0aW9ucy5kZXYuZ2l0aHViQWN0aW9uUm9sZUFybixcbiAgICAgIGF3c1JlZ2lvbjogb3B0aW9ucy5kZXYucmVnaW9uLFxuICAgICAgcHJvamVjdE5hbWU6IHByb2plY3QubmFtZSxcbiAgICAgIGFjdGlvblZlcnNpb25zOiBvcHRpb25zLmFjdGlvblZlcnNpb25zLFxuICAgIH0pO1xuXG4gICAgbmV3IFByU3RhY2tSZWFwZXJXb3JrZmxvdyhwcm9qZWN0LCB7XG4gICAgICByb2xlQXJuOiBvcHRpb25zLmRldi5naXRodWJBY3Rpb25Sb2xlQXJuLFxuICAgICAgYXdzUmVnaW9uOiBvcHRpb25zLmRldi5yZWdpb24sXG4gICAgICBwcm9qZWN0TmFtZTogcHJvamVjdC5uYW1lLFxuICAgICAgYWN0aW9uVmVyc2lvbnM6IG9wdGlvbnMuYWN0aW9uVmVyc2lvbnMsXG4gICAgfSk7XG5cbiAgICBuZXcgU3RhZ2luZ0RlcGxveVdvcmtmbG93KHByb2plY3QsIHtcbiAgICAgIHJvbGVBcm46IG9wdGlvbnMuc3RhZ2luZy5naXRodWJBY3Rpb25Sb2xlQXJuLFxuICAgICAgYXdzUmVnaW9uOiBvcHRpb25zLnN0YWdpbmcucmVnaW9uLFxuICAgICAgcHJvamVjdE5hbWU6IHByb2plY3QubmFtZSxcbiAgICAgIGNsZXJrUHVibGlzaGFibGVLZXk6IG9wdGlvbnMuc3RhZ2luZy5jbGVya1B1Ymxpc2hhYmxlS2V5LFxuICAgICAgYWN0aW9uVmVyc2lvbnM6IG9wdGlvbnMuYWN0aW9uVmVyc2lvbnMsXG4gICAgfSk7XG5cbiAgICBuZXcgUHJvZHVjdGlvbkRlcGxveVdvcmtmbG93KHByb2plY3QsIHtcbiAgICAgIHJvbGVBcm46IG9wdGlvbnMucHJvZC5naXRodWJBY3Rpb25Sb2xlQXJuLFxuICAgICAgYXdzUmVnaW9uOiBvcHRpb25zLnByb2QucmVnaW9uLFxuICAgICAgcHJvamVjdE5hbWU6IHByb2plY3QubmFtZSxcbiAgICAgIGNsZXJrUHVibGlzaGFibGVLZXk6IG9wdGlvbnMucHJvZC5jbGVya1B1Ymxpc2hhYmxlS2V5LFxuICAgICAgYWN0aW9uVmVyc2lvbnM6IG9wdGlvbnMuYWN0aW9uVmVyc2lvbnMsXG4gICAgfSk7XG5cbiAgICAvLyBIYXJkZW4gdGhlIHdvcmtmbG93cyBBd3NDZGtUeXBlU2NyaXB0QXBwIGdlbmVyYXRlcyBvbiBpdHMgb3duICh1cGdyYWRlLnltbCxcbiAgICAvLyBwdWxsLXJlcXVlc3QtbGludC55bWwpLCB3aGljaCBvdGhlcndpc2Ugc2hpcCB3aXRoIHVucGlubmVkIGFjdGlvbnMgYW5kIGFcbiAgICAvLyBwdWxsX3JlcXVlc3RfdGFyZ2V0IHRyaWdnZXIgeml6bW9yIGZsYWdzIG9uIGV2ZXJ5IGNvbnN1bWVyIG9mIHRoaXMgY29uc3RydWN0LlxuICAgIGhhcmRlblByb2plbkdlbmVyYXRlZFdvcmtmbG93cyhwcm9qZWN0LCBvcHRpb25zLmFjdGlvblZlcnNpb25zKTtcbiAgfVxufVxuIl19
|
package/lib/BatmanProject.js
CHANGED
|
@@ -12,7 +12,7 @@ const SoftwareFactoryFiles_1 = require("./SoftwareFactoryFiles");
|
|
|
12
12
|
const utils_1 = require("./utils");
|
|
13
13
|
const ViteReactProject_1 = require("./ViteReactProject");
|
|
14
14
|
class BatmanProject extends awscdk_1.AwsCdkTypeScriptApp {
|
|
15
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.BatmanProject", version: "1.
|
|
15
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.BatmanProject", version: "1.27.0" };
|
|
16
16
|
constructor(options) {
|
|
17
17
|
super({
|
|
18
18
|
...options,
|
|
@@ -27,7 +27,6 @@ class BatmanProject extends awscdk_1.AwsCdkTypeScriptApp {
|
|
|
27
27
|
'@types/pg',
|
|
28
28
|
'pg',
|
|
29
29
|
'@aws-sdk/rds-signer',
|
|
30
|
-
'@matthewbonig/secret',
|
|
31
30
|
'datadog-cdk-constructs-v2',
|
|
32
31
|
'@cdklabs/aws-lambda-rust',
|
|
33
32
|
'@aws-lambda-powertools/parameters',
|
|
@@ -141,4 +140,4 @@ class BatmanProject extends awscdk_1.AwsCdkTypeScriptApp {
|
|
|
141
140
|
}
|
|
142
141
|
}
|
|
143
142
|
exports.BatmanProject = BatmanProject;
|
|
144
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQmF0bWFuUHJvamVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9CYXRtYW5Qcm9qZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSw4Q0FBb0Y7QUFDcEYsOENBQXNEO0FBQ3RELCtDQUEwRTtBQUMxRSxxREFBa0Q7QUFDbEQsMkRBQXdEO0FBQ3hELHVEQUFvRDtBQUNwRCxpRUFBOEQ7QUFDOUQsbUNBQXlDO0FBQ3pDLHlEQUFzRDtBQTZEdEQsTUFBYSxhQUFjLFNBQVEsNEJBQW1COztJQUNwRCxZQUFZLE9BQTZCO1FBQ3ZDLEtBQUssQ0FBQztZQUNKLEdBQUcsT0FBTztZQUNWLFVBQVUsRUFBRSxPQUFPLENBQUMsVUFBVSxJQUFJLFNBQVM7WUFDM0Msb0JBQW9CLEVBQUUsT0FBTyxDQUFDLG9CQUFvQixJQUFJLE1BQU07WUFDNUQsSUFBSSxFQUFFLE9BQU8sQ0FBQyxJQUFJO1lBQ2xCLFVBQVUsRUFBRSxJQUFJO1lBQ2hCLGFBQWEsRUFBRSxLQUFLO1lBQ3BCLElBQUksRUFBRTtnQkFDSixtQkFBbUI7Z0JBQ25CLGdCQUFnQjtnQkFDaEIsV0FBVztnQkFDWCxJQUFJO2dCQUNKLHFCQUFxQjtnQkFDckIsc0JBQXNCO2dCQUN0QiwyQkFBMkI7Z0JBQzNCLDBCQUEwQjtnQkFDMUIsbUNBQW1DO2dCQUNuQyxjQUFjO2dCQUNkLGlDQUFpQztnQkFDakMsU0FBUztnQkFDVCxpQkFBaUI7Z0JBQ2pCLEdBQUcsT0FBTyxDQUFDLElBQUksSUFBSSxFQUFFO2FBQ3RCO1lBQ0QsT0FBTyxFQUFFO2dCQUNQLHFCQUFxQjtnQkFDckIsU0FBUztnQkFDVCxjQUFjO2dCQUNkLHFDQUFxQztnQkFDckMsR0FBRyxPQUFPLENBQUMsT0FBTyxJQUFJLEVBQUU7YUFDekI7WUFDRCxTQUFTLEVBQUU7Z0JBQ1QsbURBQW1EO2dCQUNuRCxjQUFjO2dCQUNkLEdBQUcsT0FBTyxDQUFDLFNBQVMsSUFBSSxFQUFFO2FBQzNCO1lBQ0QsUUFBUSxFQUFFO2dCQUNSLEdBQUcsT0FBTyxDQUFDLFFBQVE7Z0JBQ25CLGVBQWUsRUFBRTtvQkFDZixHQUFHLE9BQU8sQ0FBQyxRQUFRLEVBQUUsZUFBZTtvQkFDcEMsZUFBZSxFQUFFLElBQUk7b0JBQ3JCLDBCQUEwQixFQUFFLElBQUk7aUJBQ2pDO2FBQ0Y7WUFDRCxVQUFVLEVBQUUsS0FBSztZQUNqQixjQUFjLEVBQUUsT0FBTyxDQUFDLGNBQWMsSUFBSSxJQUFJO1lBQzlDLGtCQUFrQixFQUFFO2dCQUNsQixlQUFlLEVBQUU7b0JBQ2YsaUJBQWlCLEVBQUUsMEJBQWlCLENBQUMsdUJBQXVCLENBQUM7d0JBQzNELE1BQU0sRUFBRSxjQUFjO3FCQUN2QixDQUFDO2lCQUNIO2FBQ0Y7WUFDRCxNQUFNLEVBQUU7Z0JBQ04sUUFBUSxFQUFFLElBQUEsc0JBQWMsRUFBQyxPQUFPLENBQUMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxVQUFVLElBQUksSUFBSSxFQUFFLE9BQU8sQ0FBQyxjQUFjLENBQUM7YUFDM0Y7U0FDRixDQUFDLENBQUM7UUFHSCxnQ0FBZ0M7UUFDaEMsTUFBTSxlQUFlLEdBQUcsY0FBYyxDQUFDO1FBQ3ZDLE1BQU0sY0FBYyxHQUFHLFdBQVcsQ0FBQztRQUVuQyxJQUFJLHlCQUFXLENBQUMsSUFBSSxFQUFFO1lBQ3BCLGdCQUFnQixFQUFFLHdCQUF3QixPQUFPLENBQUMsSUFBSSxFQUFFO1lBQ3hELEdBQUcsRUFBRTtnQkFDSCxHQUFHLE9BQU8sQ0FBQyxHQUFHO2FBQ2Y7WUFDRCxPQUFPLEVBQUU7Z0JBQ1AsR0FBRyxPQUFPLENBQUMsT0FBTzthQUNuQjtZQUNELElBQUksRUFBRTtnQkFDSixHQUFHLE9BQU8sQ0FBQyxHQUFHO2FBQ2Y7WUFDRCxjQUFjLEVBQUUsT0FBTyxDQUFDLGNBQWM7WUFDdEMsWUFBWSxFQUFFLE9BQU8sQ0FBQyxZQUFZO1lBQ2xDLGNBQWMsRUFBRSxPQUFPLENBQUMsY0FBYztZQUN0Qyx1QkFBdUIsRUFBRSxPQUFPLENBQUMsdUJBQXVCO1lBQ3hELFVBQVUsRUFBRSxPQUFPLENBQUMsVUFBVTtTQUMvQixDQUFDLENBQUM7UUFFSCxJQUFJLGlDQUFlLENBQUMsSUFBSSxFQUFFO1lBQ3hCLE9BQU8sRUFBRSxlQUFlO1lBQ3hCLGFBQWEsRUFBRSxjQUFjO1NBQzlCLENBQUMsQ0FBQztRQUVILElBQUksK0JBQWMsQ0FBQyxJQUFJLEVBQUU7WUFDdkIsZ0JBQWdCLEVBQUUsT0FBTyxDQUFDLG9CQUFvQjtTQUMvQyxDQUFDLENBQUM7UUFFSCxJQUFJLHFDQUFpQixDQUFDLElBQUksQ0FBQyxDQUFDO1FBRTVCLElBQUksMkNBQW9CLENBQUMsSUFBSSxFQUFFO1lBQzdCLFFBQVEsRUFBRSxPQUFPLENBQUMsSUFBSTtZQUN0QixVQUFVLEVBQUUsT0FBTyxDQUFDLG9CQUFvQjtZQUN4QyxjQUFjLEVBQUUsT0FBTyxDQUFDLGNBQWM7U0FDdkMsQ0FBQyxDQUFDO1FBRUgsTUFBTSxTQUFTLEdBQUcsSUFBSSxtQ0FBZ0IsQ0FBQztZQUNyQyxJQUFJLEVBQUUsT0FBTyxDQUFDLElBQUk7WUFDbEIsb0JBQW9CLEVBQUUsTUFBTTtZQUM1QixNQUFNLEVBQUUsSUFBSTtZQUNaLE1BQU0sRUFBRSxLQUFLO1lBQ2IsSUFBSSxFQUFFLE9BQU8sQ0FBQyxXQUFXO1lBQ3pCLFVBQVUsRUFBRSxPQUFPLENBQUMsVUFBVTtTQUMvQixDQUFDLENBQUM7UUFDSCxTQUFTLENBQUMsY0FBYyxDQUFDLFdBQVcsRUFBRSxRQUFRLENBQUMsQ0FBQztRQUNoRCxTQUFTLENBQUMsY0FBYyxDQUFDLGVBQWUsRUFBRSxRQUFRLENBQUMsQ0FBQztRQUVwRCxNQUFNLFlBQVksR0FBRyxDQUFDLEdBQUcsSUFBYyxFQUFFLEVBQUU7WUFDekMsT0FBTyxnQkFBZ0IsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztRQUM3RCxDQUFDLENBQUM7UUFFRixJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRTtZQUNsQixJQUFJLEVBQUUsWUFBWSxDQUNoQixrR0FBa0csRUFDbEcsU0FBUyxDQUFDLFVBQVUsQ0FDckI7U0FDRixDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRTtZQUN0QixJQUFJLEVBQUUsMkVBQTJFO1lBQ2pGLFdBQVcsRUFBRSxJQUFJO1NBQ2xCLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxPQUFPLENBQUMsaUJBQWlCLEVBQUU7WUFDOUIsV0FBVyxFQUFFLDRFQUE0RTtZQUN6RixJQUFJLEVBQUUscUdBQXFHO1lBQzNHLFdBQVcsRUFBRSxJQUFJO1NBQ2xCLENBQUMsQ0FBQztRQUVILDJFQUEyRTtRQUMzRSx1RUFBdUU7UUFDdkUsaUVBQWlFO1FBQ2pFLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzFDLElBQUksS0FBSyxFQUFFLENBQUM7WUFDVixLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDZCxLQUFLLENBQUMsV0FBVyxHQUFHLHFGQUFxRixDQUFDO1lBQzFHLEtBQUssQ0FBQyxJQUFJLENBQUMsK0JBQStCLENBQUMsQ0FBQztZQUM1QyxLQUFLLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQzFCLENBQUM7SUFFSCxDQUFDOztBQS9JSCxzQ0FnSkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBd3NDZGtUeXBlU2NyaXB0QXBwLCBBd3NDZGtUeXBlU2NyaXB0QXBwT3B0aW9ucyB9IGZyb20gJ3Byb2plbi9saWIvYXdzY2RrJztcbmltcG9ydCB7IEdpdGh1YkNyZWRlbnRpYWxzIH0gZnJvbSAncHJvamVuL2xpYi9naXRodWInO1xuaW1wb3J0IHsgQXBwbGljYXRpb24sIEFwcGxpY2F0aW9uRW52aXJvbm1lbnRDb25maWcgfSBmcm9tICcuL0FwcGxpY2F0aW9uJztcbmltcG9ydCB7IENvZGVPd25lcnNGaWxlIH0gZnJvbSAnLi9Db2RlT3duZXJzRmlsZSc7XG5pbXBvcnQgeyBEYXRhRG9nQXNwZWN0RmlsZSB9IGZyb20gJy4vRGF0YURvZ0FzcGVjdEZpbGUnO1xuaW1wb3J0IHsgR2l0SHViUm9sZXNGaWxlIH0gZnJvbSAnLi9HaXRIdWJSb2xlc0ZpbGUnO1xuaW1wb3J0IHsgU29mdHdhcmVGYWN0b3J5RmlsZXMgfSBmcm9tICcuL1NvZnR3YXJlRmFjdG9yeUZpbGVzJztcbmltcG9ydCB7IHJlYWRtZUNvbnRlbnRzIH0gZnJvbSAnLi91dGlscyc7XG5pbXBvcnQgeyBWaXRlUmVhY3RQcm9qZWN0IH0gZnJvbSAnLi9WaXRlUmVhY3RQcm9qZWN0JztcbmltcG9ydCB7IFdvcmtmbG93QWN0aW9uVmVyc2lvbnMgfSBmcm9tICcuL1dvcmtmbG93QWN0aW9uVmVyc2lvbnMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEJhdG1hblByb2plY3RPcHRpb25zIGV4dGVuZHMgQXdzQ2RrVHlwZVNjcmlwdEFwcE9wdGlvbnMge1xuXG4gIC8qKlxuICAgKiBEZXZlbG9wbWVudCBlbnZpcm9ubWVudCBjb25maWd1cmF0aW9uXG4gICAqL1xuICByZWFkb25seSBkZXY6IEFwcGxpY2F0aW9uRW52aXJvbm1lbnRDb25maWc7XG5cbiAgLyoqXG4gICAqIERldmVsb3BtZW50IGVudmlyb25tZW50IGNvbmZpZ3VyYXRpb25cbiAgICovXG4gIHJlYWRvbmx5IHN0YWdpbmc6IEFwcGxpY2F0aW9uRW52aXJvbm1lbnRDb25maWc7XG5cbiAgLyoqXG4gICAqIFByb2R1Y3Rpb24gZW52aXJvbm1lbnQgY29uZmlndXJhdGlvblxuICAgKi9cbiAgcmVhZG9ubHkgcHJvZDogQXBwbGljYXRpb25FbnZpcm9ubWVudENvbmZpZztcblxuICAvKipcbiAgICogQWRkaXRpb25hbCB0YWdzIHRvIGFwcGx5IHRvIGFsbCBzdGFja3NcbiAgICovXG4gIHJlYWRvbmx5IGFkZGl0aW9uYWxUYWdzPzogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfTtcblxuICAvKipcbiAgICogRW5hYmxlIG44biB3b3JrZmxvdyBhdXRvLWRpc2NvdmVyeSBhbmQgV29ya2Zsb3dQcm92aWRlciBnZW5lcmF0aW9uXG4gICAqL1xuICByZWFkb25seSBuOG5Xb3JrZmxvd3M/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBBZGRpdGlvbmFsIGNvZGUgb3duZXJzIHRvIGFkZCB0byB0aGUgQ09ERU9XTkVSUyBmaWxlXG4gICAqL1xuICByZWFkb25seSBhZGRpdGlvbmFsQ29kZU93bmVycz86IHN0cmluZ1tdO1xuXG4gIC8qKlxuICAgKiBXZWJzaXRlIGRlcGVuZGVuY2llc1xuICAgKi9cbiAgcmVhZG9ubHkgd2Vic2l0ZURlcHM/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogT3ZlcnJpZGVzIGZvciB0aGUgcGlubmVkIGFjdGlvbiB2ZXJzaW9ucyB1c2VkIGJ5IHRoZSBnZW5lcmF0ZWQgR2l0SHViIEFjdGlvbnMgd29ya2Zsb3dzLlxuICAgKi9cbiAgcmVhZG9ubHkgYWN0aW9uVmVyc2lvbnM/OiBXb3JrZmxvd0FjdGlvblZlcnNpb25zO1xuXG4gIC8qKlxuICAgKiBPdmVycmlkZXMgdGhlIHBpbm5lZCBTMyBvYmplY3QgdmVyc2lvbiBvZiB0aGUgY2xlcmstYXV0aG9yaXplciBMYW1iZGEgZGVwbG95bWVudCBwYWNrYWdlLlxuICAgKlxuICAgKiBAZGVmYXVsdCAtIHRoZSBkZWZhdWx0IHBpbm5lZCBpbiBBcGlDb25zdHJ1Y3RGaWxlXG4gICAqL1xuICByZWFkb25seSBhdXRob3JpemVyT2JqZWN0VmVyc2lvbj86IHN0cmluZztcblxuICAvKipcbiAgICogV2hldGhlciB0aGUgZ2VuZXJhdGVkIGB3ZWJgIGFwcCBhbmQgaXRzIGBQckRlcGxveVdvcmtmbG93YCBDSSBzdGVwIGluY2x1ZGVcbiAgICogUGxheXdyaWdodCBlMmUgdGVzdGluZyBzdXBwb3J0LlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBlMmVUZXN0aW5nPzogYm9vbGVhbjtcbn1cblxuXG5leHBvcnQgY2xhc3MgQmF0bWFuUHJvamVjdCBleHRlbmRzIEF3c0Nka1R5cGVTY3JpcHRBcHAge1xuICBjb25zdHJ1Y3RvcihvcHRpb25zOiBCYXRtYW5Qcm9qZWN0T3B0aW9ucykge1xuICAgIHN1cGVyKHtcbiAgICAgIC4uLm9wdGlvbnMsXG4gICAgICBjZGtWZXJzaW9uOiBvcHRpb25zLmNka1ZlcnNpb24gfHwgJzIuMjI0LjAnLFxuICAgICAgZGVmYXVsdFJlbGVhc2VCcmFuY2g6IG9wdGlvbnMuZGVmYXVsdFJlbGVhc2VCcmFuY2ggfHwgJ21haW4nLFxuICAgICAgbmFtZTogb3B0aW9ucy5uYW1lLFxuICAgICAgcHJvamVucmNUczogdHJ1ZSxcbiAgICAgIGJ1aWxkV29ya2Zsb3c6IGZhbHNlLFxuICAgICAgZGVwczogW1xuICAgICAgICAnQHR5cGVzL2F3cy1sYW1iZGEnLFxuICAgICAgICAnQHR5cGVzL2V4cHJlc3MnLFxuICAgICAgICAnQHR5cGVzL3BnJyxcbiAgICAgICAgJ3BnJyxcbiAgICAgICAgJ0Bhd3Mtc2RrL3Jkcy1zaWduZXInLFxuICAgICAgICAnQG1hdHRoZXdib25pZy9zZWNyZXQnLFxuICAgICAgICAnZGF0YWRvZy1jZGstY29uc3RydWN0cy12MicsXG4gICAgICAgICdAY2RrbGFicy9hd3MtbGFtYmRhLXJ1c3QnLFxuICAgICAgICAnQGF3cy1sYW1iZGEtcG93ZXJ0b29scy9wYXJhbWV0ZXJzJyxcbiAgICAgICAgJ2pzb253ZWJ0b2tlbicsXG4gICAgICAgICdAYXdzLXNkay9jbGllbnQtc2VjcmV0cy1tYW5hZ2VyJyxcbiAgICAgICAgJ2V4cHJlc3MnLFxuICAgICAgICAnc2VydmVybGVzcy1odHRwJyxcbiAgICAgICAgLi4ub3B0aW9ucy5kZXBzIHx8IFtdLFxuICAgICAgXSxcbiAgICAgIGRldkRlcHM6IFtcbiAgICAgICAgJ0B0eXBlcy9qc29ud2VidG9rZW4nLFxuICAgICAgICAnbm9kZW1vbicsXG4gICAgICAgICdjb25jdXJyZW50bHknLFxuICAgICAgICAnQG1hY2Vkb24tdGVjaG5vbG9naWVzL2JhdG1hbkBeMS4wLjAnLFxuICAgICAgICAuLi5vcHRpb25zLmRldkRlcHMgfHwgW10sXG4gICAgICBdLFxuICAgICAgZ2l0aWdub3JlOiBbXG4gICAgICAgICdzcmMvY29uc3RydWN0cy9oYW5kbGVyL2NsZXJrLWF1dGhvcml6ZXIvdGFyZ2V0LyoqJyxcbiAgICAgICAgJyoqLy5EU19TdG9yZScsXG4gICAgICAgIC4uLm9wdGlvbnMuZ2l0aWdub3JlIHx8IFtdLFxuICAgICAgXSxcbiAgICAgIHRzY29uZmlnOiB7XG4gICAgICAgIC4uLm9wdGlvbnMudHNjb25maWcsXG4gICAgICAgIGNvbXBpbGVyT3B0aW9uczoge1xuICAgICAgICAgIC4uLm9wdGlvbnMudHNjb25maWc/LmNvbXBpbGVyT3B0aW9ucyxcbiAgICAgICAgICBpc29sYXRlZE1vZHVsZXM6IHRydWUsXG4gICAgICAgICAgYWxsb3dJbXBvcnRpbmdUc0V4dGVuc2lvbnM6IHRydWUsXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgICAgc2FtcGxlQ29kZTogZmFsc2UsXG4gICAgICBtaW5Ob2RlVmVyc2lvbjogb3B0aW9ucy5taW5Ob2RlVmVyc2lvbiB8fCAnMjInLFxuICAgICAgZGVwc1VwZ3JhZGVPcHRpb25zOiB7XG4gICAgICAgIHdvcmtmbG93T3B0aW9uczoge1xuICAgICAgICAgIHByb2plbkNyZWRlbnRpYWxzOiBHaXRodWJDcmVkZW50aWFscy5mcm9tUGVyc29uYWxBY2Nlc3NUb2tlbih7XG4gICAgICAgICAgICBzZWNyZXQ6ICdHSVRIVUJfVE9LRU4nLFxuICAgICAgICAgIH0pLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHJlYWRtZToge1xuICAgICAgICBjb250ZW50czogcmVhZG1lQ29udGVudHMob3B0aW9ucy5uYW1lLCBvcHRpb25zLmUyZVRlc3RpbmcgPz8gdHJ1ZSwgb3B0aW9ucy5wYWNrYWdlTWFuYWdlciksXG4gICAgICB9LFxuICAgIH0pO1xuXG5cbiAgICAvLyBDcmVhdGUgc3RhbmRhcmQgcHJvamVjdCBmaWxlc1xuICAgIGNvbnN0IFBSSU1BUllfQUNDT1VOVCA9ICcwMTU5NTU4MTcyNjMnO1xuICAgIGNvbnN0IFBSSU1BUllfUkVHSU9OID0gJ3VzLWVhc3QtMSc7XG5cbiAgICBuZXcgQXBwbGljYXRpb24odGhpcywge1xuICAgICAgZ2l0aHViUmVwb3NpdG9yeTogYG1hY2Vkb24tdGVjaG5vbG9naWVzLyR7b3B0aW9ucy5uYW1lfWAsXG4gICAgICBkZXY6IHtcbiAgICAgICAgLi4ub3B0aW9ucy5kZXYsXG4gICAgICB9LFxuICAgICAgc3RhZ2luZzoge1xuICAgICAgICAuLi5vcHRpb25zLnN0YWdpbmcsXG4gICAgICB9LFxuICAgICAgcHJvZDoge1xuICAgICAgICAuLi5vcHRpb25zLmRldixcbiAgICAgIH0sXG4gICAgICBhZGRpdGlvbmFsVGFnczogb3B0aW9ucy5hZGRpdGlvbmFsVGFncyxcbiAgICAgIG44bldvcmtmbG93czogb3B0aW9ucy5uOG5Xb3JrZmxvd3MsXG4gICAgICBhY3Rpb25WZXJzaW9uczogb3B0aW9ucy5hY3Rpb25WZXJzaW9ucyxcbiAgICAgIGF1dGhvcml6ZXJPYmplY3RWZXJzaW9uOiBvcHRpb25zLmF1dGhvcml6ZXJPYmplY3RWZXJzaW9uLFxuICAgICAgZTJlVGVzdGluZzogb3B0aW9ucy5lMmVUZXN0aW5nLFxuICAgIH0pO1xuXG4gICAgbmV3IEdpdEh1YlJvbGVzRmlsZSh0aGlzLCB7XG4gICAgICBhY2NvdW50OiBQUklNQVJZX0FDQ09VTlQsXG4gICAgICBwcmltYXJ5UmVnaW9uOiBQUklNQVJZX1JFR0lPTixcbiAgICB9KTtcblxuICAgIG5ldyBDb2RlT3duZXJzRmlsZSh0aGlzLCB7XG4gICAgICBhZGRpdGlvbmFsT3duZXJzOiBvcHRpb25zLmFkZGl0aW9uYWxDb2RlT3duZXJzLFxuICAgIH0pO1xuXG4gICAgbmV3IERhdGFEb2dBc3BlY3RGaWxlKHRoaXMpO1xuXG4gICAgbmV3IFNvZnR3YXJlRmFjdG9yeUZpbGVzKHRoaXMsIHtcbiAgICAgIHJlcG9OYW1lOiBvcHRpb25zLm5hbWUsXG4gICAgICBiYXNlQnJhbmNoOiBvcHRpb25zLmRlZmF1bHRSZWxlYXNlQnJhbmNoLFxuICAgICAgYWN0aW9uVmVyc2lvbnM6IG9wdGlvbnMuYWN0aW9uVmVyc2lvbnMsXG4gICAgfSk7XG5cbiAgICBjb25zdCB2aXRlUmVhY3QgPSBuZXcgVml0ZVJlYWN0UHJvamVjdCh7XG4gICAgICBuYW1lOiBvcHRpb25zLm5hbWUsXG4gICAgICBkZWZhdWx0UmVsZWFzZUJyYW5jaDogJ21haW4nLFxuICAgICAgcGFyZW50OiB0aGlzLFxuICAgICAgb3V0ZGlyOiAnd2ViJyxcbiAgICAgIGRlcHM6IG9wdGlvbnMud2Vic2l0ZURlcHMsXG4gICAgICBlMmVUZXN0aW5nOiBvcHRpb25zLmUyZVRlc3RpbmcsXG4gICAgfSk7XG4gICAgdml0ZVJlYWN0LmFkZENvbmZpZ0ZpZWxkKCdzb21ldGhpbmcnLCAnbnVtYmVyJyk7XG4gICAgdml0ZVJlYWN0LmFkZENvbmZpZ0ZpZWxkKCdzb21ldGhpbmdFbHNlJywgJ3N0cmluZycpO1xuXG4gICAgY29uc3QgY29uY3VycmVudGx5ID0gKC4uLmFyZ3M6IHN0cmluZ1tdKSA9PiB7XG4gICAgICByZXR1cm4gYGNvbmN1cnJlbnRseSAke2FyZ3MubWFwKGEgPT4gYFwiJHthfVwiYCkuam9pbignICcpfWA7XG4gICAgfTtcblxuICAgIHRoaXMuYWRkVGFzaygnZGV2Jywge1xuICAgICAgZXhlYzogY29uY3VycmVudGx5KFxuICAgICAgICAnbm9kZW1vbiAtLXdhdGNoIC4vc3JjL2NvbnN0cnVjdHMvaGFuZGxlciAtLXdhdGNoIC4vc3JjL2FwaSAtLXdhdGNoIC4vbG9jYWwvZGV2LnRzIC4vbG9jYWwvZGV2LnRzJyxcbiAgICAgICAgdml0ZVJlYWN0LmRldkNvbW1hbmQsXG4gICAgICApLFxuICAgIH0pO1xuXG4gICAgdGhpcy5hZGRUYXNrKCdjZGs6ZGV2Jywge1xuICAgICAgZXhlYzogJ2NkayAtYSBcIm5weCB0cy1ub2RlIC1QIHRzY29uZmlnLmpzb24gLS1wcmVmZXItdHMtZXh0cyBzcmMvTG9jYWxEZXZBcHAudHNcIicsXG4gICAgICByZWNlaXZlQXJnczogdHJ1ZSxcbiAgICB9KTtcblxuICAgIHRoaXMuYWRkVGFzaygnY2RrOmRldjpob3Rzd2FwJywge1xuICAgICAgZGVzY3JpcHRpb246ICdEZXBsb3lzIHlvdXIgcGVyc29uYWwgZGV2IHN0YWNrIChzcmMvTG9jYWxEZXZBcHAudHMpIHdpdGggaG90c3dhcC1mYWxsYmFjaycsXG4gICAgICBleGVjOiAnY2RrIC1hIFwibnB4IHRzLW5vZGUgLVAgdHNjb25maWcuanNvbiAtLXByZWZlci10cy1leHRzIHNyYy9Mb2NhbERldkFwcC50c1wiIGRlcGxveSAtLWhvdHN3YXAtZmFsbGJhY2snLFxuICAgICAgcmVjZWl2ZUFyZ3M6IHRydWUsXG4gICAgfSk7XG5cbiAgICAvLyBwcm9qZW4ncyBBd3NDZGtUeXBlU2NyaXB0QXBwIGRlZmF1bHQgYHdhdGNoYCB0YXNrIHVzZXMgYmFyZSBgLS1ob3Rzd2FwYCxcbiAgICAvLyB3aGljaCBzaWxlbnRseSBpZ25vcmVzIG5vbi1ob3Rzd2FwcGFibGUgY2hhbmdlcyAoZS5nLiB0aGUgTWlncmF0aW9uc1xuICAgIC8vIGN1c3RvbSByZXNvdXJjZSkgaW5zdGVhZCBvZiBmYWxsaW5nIGJhY2sgdG8gYSBmdWxsIGRlcGxveW1lbnQuXG4gICAgY29uc3Qgd2F0Y2ggPSB0aGlzLnRhc2tzLnRyeUZpbmQoJ3dhdGNoJyk7XG4gICAgaWYgKHdhdGNoKSB7XG4gICAgICB3YXRjaC5yZXNldCgpO1xuICAgICAgd2F0Y2guZGVzY3JpcHRpb24gPSAnV2F0Y2hlcyBjaGFuZ2VzIGluIHlvdXIgc291cmNlIGNvZGUgYW5kIHJlYnVpbGRzIGFuZCBkZXBsb3lzIHRvIHRoZSBjdXJyZW50IGFjY291bnQnO1xuICAgICAgd2F0Y2guZXhlYygnY2RrIGRlcGxveSAtLWhvdHN3YXAtZmFsbGJhY2snKTtcbiAgICAgIHdhdGNoLmV4ZWMoJ2NkayB3YXRjaCcpO1xuICAgIH1cblxuICB9XG59XG4iXX0=
|
|
143
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQmF0bWFuUHJvamVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9CYXRtYW5Qcm9qZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSw4Q0FBb0Y7QUFDcEYsOENBQXNEO0FBQ3RELCtDQUEwRTtBQUMxRSxxREFBa0Q7QUFDbEQsMkRBQXdEO0FBQ3hELHVEQUFvRDtBQUNwRCxpRUFBOEQ7QUFDOUQsbUNBQXlDO0FBQ3pDLHlEQUFzRDtBQTZEdEQsTUFBYSxhQUFjLFNBQVEsNEJBQW1COztJQUNwRCxZQUFZLE9BQTZCO1FBQ3ZDLEtBQUssQ0FBQztZQUNKLEdBQUcsT0FBTztZQUNWLFVBQVUsRUFBRSxPQUFPLENBQUMsVUFBVSxJQUFJLFNBQVM7WUFDM0Msb0JBQW9CLEVBQUUsT0FBTyxDQUFDLG9CQUFvQixJQUFJLE1BQU07WUFDNUQsSUFBSSxFQUFFLE9BQU8sQ0FBQyxJQUFJO1lBQ2xCLFVBQVUsRUFBRSxJQUFJO1lBQ2hCLGFBQWEsRUFBRSxLQUFLO1lBQ3BCLElBQUksRUFBRTtnQkFDSixtQkFBbUI7Z0JBQ25CLGdCQUFnQjtnQkFDaEIsV0FBVztnQkFDWCxJQUFJO2dCQUNKLHFCQUFxQjtnQkFDckIsMkJBQTJCO2dCQUMzQiwwQkFBMEI7Z0JBQzFCLG1DQUFtQztnQkFDbkMsY0FBYztnQkFDZCxpQ0FBaUM7Z0JBQ2pDLFNBQVM7Z0JBQ1QsaUJBQWlCO2dCQUNqQixHQUFHLE9BQU8sQ0FBQyxJQUFJLElBQUksRUFBRTthQUN0QjtZQUNELE9BQU8sRUFBRTtnQkFDUCxxQkFBcUI7Z0JBQ3JCLFNBQVM7Z0JBQ1QsY0FBYztnQkFDZCxxQ0FBcUM7Z0JBQ3JDLEdBQUcsT0FBTyxDQUFDLE9BQU8sSUFBSSxFQUFFO2FBQ3pCO1lBQ0QsU0FBUyxFQUFFO2dCQUNULG1EQUFtRDtnQkFDbkQsY0FBYztnQkFDZCxHQUFHLE9BQU8sQ0FBQyxTQUFTLElBQUksRUFBRTthQUMzQjtZQUNELFFBQVEsRUFBRTtnQkFDUixHQUFH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LFlBQVksQ0FDaEIsa0dBQWtHLEVBQ2xHLFNBQVMsQ0FBQyxVQUFVLENBQ3JCO1NBQ0YsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUU7WUFDdEIsSUFBSSxFQUFFLDJFQUEyRTtZQUNqRixXQUFXLEVBQUUsSUFBSTtTQUNsQixDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsT0FBTyxDQUFDLGlCQUFpQixFQUFFO1lBQzlCLFdBQVcsRUFBRSw0RUFBNEU7WUFDekYsSUFBSSxFQUFFLHFHQUFxRztZQUMzRyxXQUFXLEVBQUUsSUFBSTtTQUNsQixDQUFDLENBQUM7UUFFSCwyRUFBMkU7UUFDM0UsdUVBQXVFO1FBQ3ZFLGlFQUFpRTtRQUNqRSxNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUMxQyxJQUFJLEtBQUssRUFBRSxDQUFDO1lBQ1YsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ2QsS0FBSyxDQUFDLFdBQVcsR0FBRyxxRkFBcUYsQ0FBQztZQUMxRyxLQUFLLENBQUMsSUFBSSxDQUFDLCtCQUErQixDQUFDLENBQUM7WUFDNUMsS0FBSyxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUMxQixDQUFDO0lBRUgsQ0FBQzs7QUE5SUgsc0NBK0lDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXdzQ2RrVHlwZVNjcmlwdEFwcCwgQXdzQ2RrVHlwZVNjcmlwdEFwcE9wdGlvbnMgfSBmcm9tICdwcm9qZW4vbGliL2F3c2Nkayc7XG5pbXBvcnQgeyBHaXRodWJDcmVkZW50aWFscyB9IGZyb20gJ3Byb2plbi9saWIvZ2l0aHViJztcbmltcG9ydCB7IEFwcGxpY2F0aW9uLCBBcHBsaWNhdGlvbkVudmlyb25tZW50Q29uZmlnIH0gZnJvbSAnLi9BcHBsaWNhdGlvbic7XG5pbXBvcnQgeyBDb2RlT3duZXJzRmlsZSB9IGZyb20gJy4vQ29kZU93bmVyc0ZpbGUnO1xuaW1wb3J0IHsgRGF0YURvZ0FzcGVjdEZpbGUgfSBmcm9tICcuL0RhdGFEb2dBc3BlY3RGaWxlJztcbmltcG9ydCB7IEdpdEh1YlJvbGVzRmlsZSB9IGZyb20gJy4vR2l0SHViUm9sZXNGaWxlJztcbmltcG9ydCB7IFNvZnR3YXJlRmFjdG9yeUZpbGVzIH0gZnJvbSAnLi9Tb2Z0d2FyZUZhY3RvcnlGaWxlcyc7XG5pbXBvcnQgeyByZWFkbWVDb250ZW50cyB9IGZyb20gJy4vdXRpbHMnO1xuaW1wb3J0IHsgVml0ZVJlYWN0UHJvamVjdCB9IGZyb20gJy4vVml0ZVJlYWN0UHJvamVjdCc7XG5pbXBvcnQgeyBXb3JrZmxvd0FjdGlvblZlcnNpb25zIH0gZnJvbSAnLi9Xb3JrZmxvd0FjdGlvblZlcnNpb25zJztcblxuZXhwb3J0IGludGVyZmFjZSBCYXRtYW5Qcm9qZWN0T3B0aW9ucyBleHRlbmRzIEF3c0Nka1R5cGVTY3JpcHRBcHBPcHRpb25zIHtcblxuICAvKipcbiAgICogRGV2ZWxvcG1lbnQgZW52aXJvbm1lbnQgY29uZmlndXJhdGlvblxuICAgKi9cbiAgcmVhZG9ubHkgZGV2OiBBcHBsaWNhdGlvbkVudmlyb25tZW50Q29uZmlnO1xuXG4gIC8qKlxuICAgKiBEZXZlbG9wbWVudCBlbnZpcm9ubWVudCBjb25maWd1cmF0aW9uXG4gICAqL1xuICByZWFkb25seSBzdGFnaW5nOiBBcHBsaWNhdGlvbkVudmlyb25tZW50Q29uZmlnO1xuXG4gIC8qKlxuICAgKiBQcm9kdWN0aW9uIGVudmlyb25tZW50IGNvbmZpZ3VyYXRpb25cbiAgICovXG4gIHJlYWRvbmx5IHByb2Q6IEFwcGxpY2F0aW9uRW52aXJvbm1lbnRDb25maWc7XG5cbiAgLyoqXG4gICAqIEFkZGl0aW9uYWwgdGFncyB0byBhcHBseSB0byBhbGwgc3RhY2tzXG4gICAqL1xuICByZWFkb25seSBhZGRpdGlvbmFsVGFncz86IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH07XG5cbiAgLyoqXG4gICAqIEVuYWJsZSBuOG4gd29ya2Zsb3cgYXV0by1kaXNjb3ZlcnkgYW5kIFdvcmtmbG93UHJvdmlkZXIgZ2VuZXJhdGlvblxuICAgKi9cbiAgcmVhZG9ubHkgbjhuV29ya2Zsb3dzPzogYm9vbGVhbjtcblxuICAvKipcbiAgICogQWRkaXRpb25hbCBjb2RlIG93bmVycyB0byBhZGQgdG8gdGhlIENPREVPV05FUlMgZmlsZVxuICAgKi9cbiAgcmVhZG9ubHkgYWRkaXRpb25hbENvZGVPd25lcnM/OiBzdHJpbmdbXTtcblxuICAvKipcbiAgICogV2Vic2l0ZSBkZXBlbmRlbmNpZXNcbiAgICovXG4gIHJlYWRvbmx5IHdlYnNpdGVEZXBzPzogc3RyaW5nW107XG5cbiAgLyoqXG4gICAqIE92ZXJyaWRlcyBmb3IgdGhlIHBpbm5lZCBhY3Rpb24gdmVyc2lvbnMgdXNlZCBieSB0aGUgZ2VuZXJhdGVkIEdpdEh1YiBBY3Rpb25zIHdvcmtmbG93cy5cbiAgICovXG4gIHJlYWRvbmx5IGFjdGlvblZlcnNpb25zPzogV29ya2Zsb3dBY3Rpb25WZXJzaW9ucztcblxuICAvKipcbiAgICogT3ZlcnJpZGVzIHRoZSBwaW5uZWQgUzMgb2JqZWN0IHZlcnNpb24gb2YgdGhlIGNsZXJrLWF1dGhvcml6ZXIgTGFtYmRhIGRlcGxveW1lbnQgcGFja2FnZS5cbiAgICpcbiAgICogQGRlZmF1bHQgLSB0aGUgZGVmYXVsdCBwaW5uZWQgaW4gQXBpQ29uc3RydWN0RmlsZVxuICAgKi9cbiAgcmVhZG9ubHkgYXV0aG9yaXplck9iamVjdFZlcnNpb24/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgdGhlIGdlbmVyYXRlZCBgd2ViYCBhcHAgYW5kIGl0cyBgUHJEZXBsb3lXb3JrZmxvd2AgQ0kgc3RlcCBpbmNsdWRlXG4gICAqIFBsYXl3cmlnaHQgZTJlIHRlc3Rpbmcgc3VwcG9ydC5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgZTJlVGVzdGluZz86IGJvb2xlYW47XG59XG5cblxuZXhwb3J0IGNsYXNzIEJhdG1hblByb2plY3QgZXh0ZW5kcyBBd3NDZGtUeXBlU2NyaXB0QXBwIHtcbiAgY29uc3RydWN0b3Iob3B0aW9uczogQmF0bWFuUHJvamVjdE9wdGlvbnMpIHtcbiAgICBzdXBlcih7XG4gICAgICAuLi5vcHRpb25zLFxuICAgICAgY2RrVmVyc2lvbjogb3B0aW9ucy5jZGtWZXJzaW9uIHx8ICcyLjIyNC4wJyxcbiAgICAgIGRlZmF1bHRSZWxlYXNlQnJhbmNoOiBvcHRpb25zLmRlZmF1bHRSZWxlYXNlQnJhbmNoIHx8ICdtYWluJyxcbiAgICAgIG5hbWU6IG9wdGlvbnMubmFtZSxcbiAgICAgIHByb2plbnJjVHM6IHRydWUsXG4gICAgICBidWlsZFdvcmtmbG93OiBmYWxzZSxcbiAgICAgIGRlcHM6IFtcbiAgICAgICAgJ0B0eXBlcy9hd3MtbGFtYmRhJyxcbiAgICAgICAgJ0B0eXBlcy9leHByZXNzJyxcbiAgICAgICAgJ0B0eXBlcy9wZycsXG4gICAgICAgICdwZycsXG4gICAgICAgICdAYXdzLXNkay9yZHMtc2lnbmVyJyxcbiAgICAgICAgJ2RhdGFkb2ctY2RrLWNvbnN0cnVjdHMtdjInLFxuICAgICAgICAnQGNka2xhYnMvYXdzLWxhbWJkYS1ydXN0JyxcbiAgICAgICAgJ0Bhd3MtbGFtYmRhLXBvd2VydG9vbHMvcGFyYW1ldGVycycsXG4gICAgICAgICdqc29ud2VidG9rZW4nLFxuICAgICAgICAnQGF3cy1zZGsvY2xpZW50LXNlY3JldHMtbWFuYWdlcicsXG4gICAgICAgICdleHByZXNzJyxcbiAgICAgICAgJ3NlcnZlcmxlc3MtaHR0cCcsXG4gICAgICAgIC4uLm9wdGlvbnMuZGVwcyB8fCBbXSxcbiAgICAgIF0sXG4gICAgICBkZXZEZXBzOiBbXG4gICAgICAgICdAdHlwZXMvanNvbndlYnRva2VuJyxcbiAgICAgICAgJ25vZGVtb24nLFxuICAgICAgICAnY29uY3VycmVudGx5JyxcbiAgICAgICAgJ0BtYWNlZG9uLXRlY2hub2xvZ2llcy9iYXRtYW5AXjEuMC4wJyxcbiAgICAgICAgLi4ub3B0aW9ucy5kZXZEZXBzIHx8IFtdLFxuICAgICAgXSxcbiAgICAgIGdpdGlnbm9yZTogW1xuICAgICAgICAnc3JjL2NvbnN0cnVjdHMvaGFuZGxlci9jbGVyay1hdXRob3JpemVyL3RhcmdldC8qKicsXG4gICAgICAgICcqKi8uRFNfU3RvcmUnLFxuICAgICAgICAuLi5vcHRpb25zLmdpdGlnbm9yZSB8fCBbXSxcbiAgICAgIF0sXG4gICAgICB0c2NvbmZpZzoge1xuICAgICAgICAuLi5vcHRpb25zLnRzY29uZmlnLFxuICAgICAgICBjb21waWxlck9wdGlvbnM6IHtcbiAgICAgICAgICAuLi5vcHRpb25zLnRzY29uZmlnPy5jb21waWxlck9wdGlvbnMsXG4gICAgICAgICAgaXNvbGF0ZWRNb2R1bGVzOiB0cnVlLFxuICAgICAgICAgIGFsbG93SW1wb3J0aW5nVHNFeHRlbnNpb25zOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHNhbXBsZUNvZGU6IGZhbHNlLFxuICAgICAgbWluTm9kZVZlcnNpb246IG9wdGlvbnMubWluTm9kZVZlcnNpb24gfHwgJzIyJyxcbiAgICAgIGRlcHNVcGdyYWRlT3B0aW9uczoge1xuICAgICAgICB3b3JrZmxvd09wdGlvbnM6IHtcbiAgICAgICAgICBwcm9qZW5DcmVkZW50aWFsczogR2l0aHViQ3JlZGVudGlhbHMuZnJvbVBlcnNvbmFsQWNjZXNzVG9rZW4oe1xuICAgICAgICAgICAgc2VjcmV0OiAnR0lUSFVCX1RPS0VOJyxcbiAgICAgICAgICB9KSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICByZWFkbWU6IHtcbiAgICAgICAgY29udGVudHM6IHJlYWRtZUNvbnRlbnRzKG9wdGlvbnMubmFtZSwgb3B0aW9ucy5lMmVUZXN0aW5nID8/IHRydWUsIG9wdGlvbnMucGFja2FnZU1hbmFnZXIpLFxuICAgICAgfSxcbiAgICB9KTtcblxuXG4gICAgLy8gQ3JlYXRlIHN0YW5kYXJkIHByb2plY3QgZmlsZXNcbiAgICBjb25zdCBQUklNQVJZX0FDQ09VTlQgPSAnMDE1OTU1ODE3MjYzJztcbiAgICBjb25zdCBQUklNQVJZX1JFR0lPTiA9ICd1cy1lYXN0LTEnO1xuXG4gICAgbmV3IEFwcGxpY2F0aW9uKHRoaXMsIHtcbiAgICAgIGdpdGh1YlJlcG9zaXRvcnk6IGBtYWNlZG9uLXRlY2hub2xvZ2llcy8ke29wdGlvbnMubmFtZX1gLFxuICAgICAgZGV2OiB7XG4gICAgICAgIC4uLm9wdGlvbnMuZGV2LFxuICAgICAgfSxcbiAgICAgIHN0YWdpbmc6IHtcbiAgICAgICAgLi4ub3B0aW9ucy5zdGFnaW5nLFxuICAgICAgfSxcbiAgICAgIHByb2Q6IHtcbiAgICAgICAgLi4ub3B0aW9ucy5kZXYsXG4gICAgICB9LFxuICAgICAgYWRkaXRpb25hbFRhZ3M6IG9wdGlvbnMuYWRkaXRpb25hbFRhZ3MsXG4gICAgICBuOG5Xb3JrZmxvd3M6IG9wdGlvbnMubjhuV29ya2Zsb3dzLFxuICAgICAgYWN0aW9uVmVyc2lvbnM6IG9wdGlvbnMuYWN0aW9uVmVyc2lvbnMsXG4gICAgICBhdXRob3JpemVyT2JqZWN0VmVyc2lvbjogb3B0aW9ucy5hdXRob3JpemVyT2JqZWN0VmVyc2lvbixcbiAgICAgIGUyZVRlc3Rpbmc6IG9wdGlvbnMuZTJlVGVzdGluZyxcbiAgICB9KTtcblxuICAgIG5ldyBHaXRIdWJSb2xlc0ZpbGUodGhpcywge1xuICAgICAgYWNjb3VudDogUFJJTUFSWV9BQ0NPVU5ULFxuICAgICAgcHJpbWFyeVJlZ2lvbjogUFJJTUFSWV9SRUdJT04sXG4gICAgfSk7XG5cbiAgICBuZXcgQ29kZU93bmVyc0ZpbGUodGhpcywge1xuICAgICAgYWRkaXRpb25hbE93bmVyczogb3B0aW9ucy5hZGRpdGlvbmFsQ29kZU93bmVycyxcbiAgICB9KTtcblxuICAgIG5ldyBEYXRhRG9nQXNwZWN0RmlsZSh0aGlzKTtcblxuICAgIG5ldyBTb2Z0d2FyZUZhY3RvcnlGaWxlcyh0aGlzLCB7XG4gICAgICByZXBvTmFtZTogb3B0aW9ucy5uYW1lLFxuICAgICAgYmFzZUJyYW5jaDogb3B0aW9ucy5kZWZhdWx0UmVsZWFzZUJyYW5jaCxcbiAgICAgIGFjdGlvblZlcnNpb25zOiBvcHRpb25zLmFjdGlvblZlcnNpb25zLFxuICAgIH0pO1xuXG4gICAgY29uc3Qgdml0ZVJlYWN0ID0gbmV3IFZpdGVSZWFjdFByb2plY3Qoe1xuICAgICAgbmFtZTogb3B0aW9ucy5uYW1lLFxuICAgICAgZGVmYXVsdFJlbGVhc2VCcmFuY2g6ICdtYWluJyxcbiAgICAgIHBhcmVudDogdGhpcyxcbiAgICAgIG91dGRpcjogJ3dlYicsXG4gICAgICBkZXBzOiBvcHRpb25zLndlYnNpdGVEZXBzLFxuICAgICAgZTJlVGVzdGluZzogb3B0aW9ucy5lMmVUZXN0aW5nLFxuICAgIH0pO1xuICAgIHZpdGVSZWFjdC5hZGRDb25maWdGaWVsZCgnc29tZXRoaW5nJywgJ251bWJlcicpO1xuICAgIHZpdGVSZWFjdC5hZGRDb25maWdGaWVsZCgnc29tZXRoaW5nRWxzZScsICdzdHJpbmcnKTtcblxuICAgIGNvbnN0IGNvbmN1cnJlbnRseSA9ICguLi5hcmdzOiBzdHJpbmdbXSkgPT4ge1xuICAgICAgcmV0dXJuIGBjb25jdXJyZW50bHkgJHthcmdzLm1hcChhID0+IGBcIiR7YX1cImApLmpvaW4oJyAnKX1gO1xuICAgIH07XG5cbiAgICB0aGlzLmFkZFRhc2soJ2RldicsIHtcbiAgICAgIGV4ZWM6IGNvbmN1cnJlbnRseShcbiAgICAgICAgJ25vZGVtb24gLS13YXRjaCAuL3NyYy9jb25zdHJ1Y3RzL2hhbmRsZXIgLS13YXRjaCAuL3NyYy9hcGkgLS13YXRjaCAuL2xvY2FsL2Rldi50cyAuL2xvY2FsL2Rldi50cycsXG4gICAgICAgIHZpdGVSZWFjdC5kZXZDb21tYW5kLFxuICAgICAgKSxcbiAgICB9KTtcblxuICAgIHRoaXMuYWRkVGFzaygnY2RrOmRldicsIHtcbiAgICAgIGV4ZWM6ICdjZGsgLWEgXCJucHggdHMtbm9kZSAtUCB0c2NvbmZpZy5qc29uIC0tcHJlZmVyLXRzLWV4dHMgc3JjL0xvY2FsRGV2QXBwLnRzXCInLFxuICAgICAgcmVjZWl2ZUFyZ3M6IHRydWUsXG4gICAgfSk7XG5cbiAgICB0aGlzLmFkZFRhc2soJ2NkazpkZXY6aG90c3dhcCcsIHtcbiAgICAgIGRlc2NyaXB0aW9uOiAnRGVwbG95cyB5b3VyIHBlcnNvbmFsIGRldiBzdGFjayAoc3JjL0xvY2FsRGV2QXBwLnRzKSB3aXRoIGhvdHN3YXAtZmFsbGJhY2snLFxuICAgICAgZXhlYzogJ2NkayAtYSBcIm5weCB0cy1ub2RlIC1QIHRzY29uZmlnLmpzb24gLS1wcmVmZXItdHMtZXh0cyBzcmMvTG9jYWxEZXZBcHAudHNcIiBkZXBsb3kgLS1ob3Rzd2FwLWZhbGxiYWNrJyxcbiAgICAgIHJlY2VpdmVBcmdzOiB0cnVlLFxuICAgIH0pO1xuXG4gICAgLy8gcHJvamVuJ3MgQXdzQ2RrVHlwZVNjcmlwdEFwcCBkZWZhdWx0IGB3YXRjaGAgdGFzayB1c2VzIGJhcmUgYC0taG90c3dhcGAsXG4gICAgLy8gd2hpY2ggc2lsZW50bHkgaWdub3JlcyBub24taG90c3dhcHBhYmxlIGNoYW5nZXMgKGUuZy4gdGhlIE1pZ3JhdGlvbnNcbiAgICAvLyBjdXN0b20gcmVzb3VyY2UpIGluc3RlYWQgb2YgZmFsbGluZyBiYWNrIHRvIGEgZnVsbCBkZXBsb3ltZW50LlxuICAgIGNvbnN0IHdhdGNoID0gdGhpcy50YXNrcy50cnlGaW5kKCd3YXRjaCcpO1xuICAgIGlmICh3YXRjaCkge1xuICAgICAgd2F0Y2gucmVzZXQoKTtcbiAgICAgIHdhdGNoLmRlc2NyaXB0aW9uID0gJ1dhdGNoZXMgY2hhbmdlcyBpbiB5b3VyIHNvdXJjZSBjb2RlIGFuZCByZWJ1aWxkcyBhbmQgZGVwbG95cyB0byB0aGUgY3VycmVudCBhY2NvdW50JztcbiAgICAgIHdhdGNoLmV4ZWMoJ2NkayBkZXBsb3kgLS1ob3Rzd2FwLWZhbGxiYWNrJyk7XG4gICAgICB3YXRjaC5leGVjKCdjZGsgd2F0Y2gnKTtcbiAgICB9XG5cbiAgfVxufVxuIl19
|
|
@@ -14,6 +14,8 @@ const PrCleanupWorkflow_1 = require("./PrCleanupWorkflow");
|
|
|
14
14
|
const PrDeployWorkflow_1 = require("./PrDeployWorkflow");
|
|
15
15
|
const ProductionDeployWorkflow_1 = require("./ProductionDeployWorkflow");
|
|
16
16
|
const PrStackReaperWorkflow_1 = require("./PrStackReaperWorkflow");
|
|
17
|
+
const SecretConstructFile_1 = require("./SecretConstructFile");
|
|
18
|
+
const SecretHandlerFiles_1 = require("./SecretHandlerFiles");
|
|
17
19
|
const StagingDeployWorkflow_1 = require("./StagingDeployWorkflow");
|
|
18
20
|
const StaticWebsiteConstructFile_1 = require("./StaticWebsiteConstructFile");
|
|
19
21
|
const WorkflowAutoDiscover_1 = require("./WorkflowAutoDiscover");
|
|
@@ -43,6 +45,8 @@ class BootcampApplication {
|
|
|
43
45
|
new BootcampApplicationStackFile_1.BootcampApplicationStackFile(project);
|
|
44
46
|
// Create construct files
|
|
45
47
|
new ApiConstructFile_1.ApiConstructFile(project, { authorizerObjectVersion: options.authorizerObjectVersion });
|
|
48
|
+
new SecretConstructFile_1.SecretConstructFile(project);
|
|
49
|
+
new SecretHandlerFiles_1.SecretHandlerFiles(project);
|
|
46
50
|
new StaticWebsiteConstructFile_1.StaticWebsiteConstructFile(project);
|
|
47
51
|
// n8n workflow files
|
|
48
52
|
if (options.n8nWorkflows === undefined || options.n8nWorkflows) {
|
|
@@ -92,4 +96,4 @@ class BootcampApplication {
|
|
|
92
96
|
}
|
|
93
97
|
}
|
|
94
98
|
exports.BootcampApplication = BootcampApplication;
|
|
95
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQm9vdGNhbXBBcHBsaWNhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9Cb290Y2FtcEFwcGxpY2F0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLDJEQUF3RDtBQUN4RCx5REFBc0Q7QUFDdEQsaUZBQThFO0FBQzlFLHlGQUFzRjtBQUN0RixxREFBa0Q7QUFDbEQsaUVBQThEO0FBQzlELG1EQUFnRDtBQUNoRCx5Q0FBeUQ7QUFDekQsaURBQThDO0FBQzlDLDJEQUF3RDtBQUN4RCx5REFBc0Q7QUFDdEQseUVBQXNFO0FBQ3RFLG1FQUFnRTtBQUNoRSxtRUFBZ0U7QUFDaEUsNkVBQTBFO0FBRTFFLGlFQUE4RDtBQUM5RCx5REFBMEQ7QUF1QzFEOztHQUVHO0FBQ0gsTUFBYSxtQkFBbUI7SUFDOUIsWUFBWSxPQUE0QixFQUFFLE9BQTJCO1FBQ25FLGdDQUFnQztRQUVoQyxJQUFJLG1CQUFRLENBQUMsT0FBTyxFQUFFO1lBQ3BCLFdBQVcsRUFBRSxPQUFPLENBQUMsSUFBSTtZQUN6QixHQUFHLEVBQUUsT0FBTyxDQUFDLEdBQUc7WUFDaEIsT0FBTyxFQUFFLE9BQU8sQ0FBQyxPQUFPO1lBQ3hCLElBQUksRUFBRSxPQUFPLENBQUMsSUFBSTtZQUNsQixjQUFjLEVBQUUsT0FBTyxDQUFDLGNBQWM7U0FDdkMsQ0FBQyxDQUFDO1FBRUgsSUFBSSw2QkFBYSxDQUFDLE9BQU8sRUFBRTtZQUN6QixXQUFXLEVBQUUsT0FBTyxDQUFDLElBQUk7WUFDekIsR0FBRyxFQUFFLE9BQU8sQ0FBQyxHQUFHO1NBQ2pCLENBQUMsQ0FBQztRQUVILHFCQUFxQjtRQUNyQixJQUFJLDJDQUFvQixDQUFDLE9BQU8sRUFBRTtZQUNoQyxnQkFBZ0IsRUFBRSxPQUFPLENBQUMsZ0JBQWdCO1NBQzNDLENBQUMsQ0FBQztRQUVILElBQUksbUVBQWdDLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDOUMsSUFBSSwyREFBNEIsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUUxQyx5QkFBeUI7UUFDekIsSUFBSSxtQ0FBZ0IsQ0FBQyxPQUFPLEVBQUUsRUFBRSx1QkFBdUIsRUFBRSxPQUFPLENBQUMsdUJBQXVCLEVBQUUsQ0FBQyxDQUFDO1FBQzVGLElBQUksdURBQTBCLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFeEMscUJBQXFCO1FBQ3JCLElBQUksT0FBTyxDQUFDLFlBQVksS0FBSyxTQUFTLElBQUksT0FBTyxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQy9ELElBQUksdUNBQW9CLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDbEMsSUFBSSwyQ0FBb0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNwQyxDQUFDO1FBRUQsdUJBQXVCO1FBQ3ZCLElBQUksaUNBQWUsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUU3QixvQkFBb0I7UUFDcEIsSUFBSSwyQkFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRTFCLHNCQUFzQjtRQUN0QixJQUFJLCtCQUFjLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFNUIsa0NBQWtDO1FBQ2xDLElBQUksbUNBQWdCLENBQUMsT0FBTyxFQUFFO1lBQzVCLE9BQU8sRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLG1CQUFtQjtZQUN4QyxTQUFTLEVBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNO1lBQzdCLG1CQUFtQixFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsbUJBQW1CO1lBQ3BELGNBQWMsRUFBRSxPQUFPLENBQUMsY0FBYztZQUN0QyxVQUFVLEVBQUUsT0FBTyxDQUFDLFVBQVU7U0FDL0IsQ0FBQyxDQUFDO1FBRUgsSUFBSSxxQ0FBaUIsQ0FBQyxPQUFPLEVBQUU7WUFDN0IsT0FBTyxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsbUJBQW1CO1lBQ3hDLFNBQVMsRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU07WUFDN0IsV0FBVyxFQUFFLE9BQU8sQ0FBQyxJQUFJO1lBQ3pCLGNBQWMsRUFBRSxPQUFPLENBQUMsY0FBYztTQUN2QyxDQUFDLENBQUM7UUFFSCxJQUFJLDZDQUFxQixDQUFDLE9BQU8sRUFBRTtZQUNqQyxPQUFPLEVBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxtQkFBbUI7WUFDeEMsU0FBUyxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTTtZQUM3QixXQUFXLEVBQUUsT0FBTyxDQUFDLElBQUk7WUFDekIsY0FBYyxFQUFFLE9BQU8sQ0FBQyxjQUFjO1NBQ3ZDLENBQUMsQ0FBQztRQUVILElBQUksNkNBQXFCLENBQUMsT0FBTyxFQUFFO1lBQ2pDLE9BQU8sRUFBRSxPQUFPLENBQUMsT0FBTyxDQUFDLG1CQUFtQjtZQUM1QyxTQUFTLEVBQUUsT0FBTyxDQUFDLE9BQU8sQ0FBQyxNQUFNO1lBQ2pDLFdBQVcsRUFBRSxPQUFPLENBQUMsSUFBSTtZQUN6QixtQkFBbUIsRUFBRSxPQUFPLENBQUMsT0FBTyxDQUFDLG1CQUFtQjtZQUN4RCxjQUFjLEVBQUUsT0FBTyxDQUFDLGNBQWM7U0FDdkMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxtREFBd0IsQ0FBQyxPQUFPLEVBQUU7WUFDcEMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsbUJBQW1CO1lBQ3pDLFNBQVMsRUFBRSxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU07WUFDOUIsV0FBVyxFQUFFLE9BQU8sQ0FBQyxJQUFJO1lBQ3pCLG1CQUFtQixFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsbUJBQW1CO1lBQ3JELGNBQWMsRUFBRSxPQUFPLENBQUMsY0FBYztTQUN2QyxDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0Y7QUFuRkQsa0RBbUZDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXdzQ2RrVHlwZVNjcmlwdEFwcCB9IGZyb20gJ3Byb2plbi9saWIvYXdzY2RrJztcbmltcG9ydCB7IEFwaUZ1bmN0aW9uRmlsZSB9IGZyb20gJy4vQXBpL0FwaUZ1bmN0aW9uRmlsZSc7XG5pbXBvcnQgeyBBcGlDb25zdHJ1Y3RGaWxlIH0gZnJvbSAnLi9BcGlDb25zdHJ1Y3RGaWxlJztcbmltcG9ydCB7IEJvb3RjYW1wQXBwbGljYXRpb25TdGFja0ZpbGUgfSBmcm9tICcuL0Jvb3RjYW1wQXBwbGljYXRpb25TdGFja0ZpbGUnO1xuaW1wb3J0IHsgQm9vdGNhbXBCYXNlQXBwbGljYXRpb25TdGFja0ZpbGUgfSBmcm9tICcuL0Jvb3RjYW1wQmFzZUFwcGxpY2F0aW9uU3RhY2tGaWxlJztcbmltcG9ydCB7IENvZGVSYWJiaXRGaWxlIH0gZnJvbSAnLi9Db2RlUmFiYml0RmlsZSc7XG5pbXBvcnQgeyBHaXRIdWJSb2xlc1N0YWNrRmlsZSB9IGZyb20gJy4vR2l0SHViUm9sZXNTdGFja0ZpbGUnO1xuaW1wb3J0IHsgTG9jYWxEZXZGaWxlcyB9IGZyb20gJy4vTG9jYWxEZXZGaWxlcyc7XG5pbXBvcnQgeyBFbnZpcm9ubWVudENvbmZpZywgTWFpbkZpbGUgfSBmcm9tICcuL01haW5GaWxlJztcbmltcG9ydCB7IE1haW5UZXN0RmlsZSB9IGZyb20gJy4vTWFpblRlc3RGaWxlJztcbmltcG9ydCB7IFByQ2xlYW51cFdvcmtmbG93IH0gZnJvbSAnLi9QckNsZWFudXBXb3JrZmxvdyc7XG5pbXBvcnQgeyBQckRlcGxveVdvcmtmbG93IH0gZnJvbSAnLi9QckRlcGxveVdvcmtmbG93JztcbmltcG9ydCB7IFByb2R1Y3Rpb25EZXBsb3lXb3JrZmxvdyB9IGZyb20gJy4vUHJvZHVjdGlvbkRlcGxveVdvcmtmbG93JztcbmltcG9ydCB7IFByU3RhY2tSZWFwZXJXb3JrZmxvdyB9IGZyb20gJy4vUHJTdGFja1JlYXBlcldvcmtmbG93JztcbmltcG9ydCB7IFN0YWdpbmdEZXBsb3lXb3JrZmxvdyB9IGZyb20gJy4vU3RhZ2luZ0RlcGxveVdvcmtmbG93JztcbmltcG9ydCB7IFN0YXRpY1dlYnNpdGVDb25zdHJ1Y3RGaWxlIH0gZnJvbSAnLi9TdGF0aWNXZWJzaXRlQ29uc3RydWN0RmlsZSc7XG5pbXBvcnQgeyBXb3JrZmxvd0FjdGlvblZlcnNpb25zIH0gZnJvbSAnLi9Xb3JrZmxvd0FjdGlvblZlcnNpb25zJztcbmltcG9ydCB7IFdvcmtmbG93QXV0b0Rpc2NvdmVyIH0gZnJvbSAnLi9Xb3JrZmxvd0F1dG9EaXNjb3Zlcic7XG5pbXBvcnQgeyBXb3JrZmxvd1Byb3ZpZGVyRmlsZSB9IGZyb20gJy4vV29ya2Zsb3dQcm92aWRlcic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXBwbGljYXRpb25FbnZpcm9ubWVudENvbmZpZyBleHRlbmRzIEVudmlyb25tZW50Q29uZmlnIHtcbiAgcmVhZG9ubHkgZ2l0aHViQWN0aW9uUm9sZUFybjogYGFybjphd3M6aWFtOjoke3N0cmluZ306cm9sZS8ke3N0cmluZ31gO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFwcGxpY2F0aW9uT3B0aW9ucyB7XG4gIHJlYWRvbmx5IGdpdGh1YlJlcG9zaXRvcnk6IHN0cmluZztcbiAgcmVhZG9ubHkgZGV2OiBBcHBsaWNhdGlvbkVudmlyb25tZW50Q29uZmlnO1xuICByZWFkb25seSBzdGFnaW5nOiBBcHBsaWNhdGlvbkVudmlyb25tZW50Q29uZmlnO1xuICByZWFkb25seSBwcm9kOiBBcHBsaWNhdGlvbkVudmlyb25tZW50Q29uZmlnO1xuICByZWFkb25seSBhZGRpdGlvbmFsVGFncz86IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH07XG5cbiAgLyoqXG4gICAqIElmIHRydWUsIGNyZWF0ZXMgV29ya2Zsb3dQcm92aWRlciBmaWxlcyBmb3IgZWFjaCBuOG4gd29ya2Zsb3cgZmlsZSBmb3VuZCBpbiBzcmMvd29ya2Zsb3dzLyouanNvblxuICAgKlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBuOG5Xb3JrZmxvd3M/OiBib29sZWFuO1xuXG4gIC8qKlxuICAgKiBPdmVycmlkZXMgZm9yIHRoZSBwaW5uZWQgYWN0aW9uIHZlcnNpb25zIHVzZWQgYnkgdGhlIGdlbmVyYXRlZCBHaXRIdWIgQWN0aW9ucyB3b3JrZmxvd3MuXG4gICAqL1xuICByZWFkb25seSBhY3Rpb25WZXJzaW9ucz86IFdvcmtmbG93QWN0aW9uVmVyc2lvbnM7XG5cbiAgLyoqXG4gICAqIE92ZXJyaWRlcyB0aGUgcGlubmVkIFMzIG9iamVjdCB2ZXJzaW9uIG9mIHRoZSBjbGVyay1hdXRob3JpemVyIExhbWJkYSBkZXBsb3ltZW50IHBhY2thZ2UuXG4gICAqXG4gICAqIEBkZWZhdWx0IC0gdGhlIGRlZmF1bHQgcGlubmVkIGluIEFwaUNvbnN0cnVjdEZpbGVcbiAgICovXG4gIHJlYWRvbmx5IGF1dGhvcml6ZXJPYmplY3RWZXJzaW9uPzogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBXaGV0aGVyIGBQckRlcGxveVdvcmtmbG93YCBydW5zIHRoZSBQbGF5d3JpZ2h0IGUyZSBzdWl0ZSBhZ2FpbnN0IHRoZSBkZXBsb3llZCBQUiBzdGFjay5cbiAgICogQGRlZmF1bHQgdHJ1ZVxuICAgKi9cbiAgcmVhZG9ubHkgZTJlVGVzdGluZz86IGJvb2xlYW47XG59XG5cbi8qKlxuICogQXBwbGljYXRpb24gY29uc3RydWN0IHRoYXQgY3JlYXRlcyBhbGwgc3RhbmRhcmQgcHJvamVjdCBmaWxlc1xuICovXG5leHBvcnQgY2xhc3MgQm9vdGNhbXBBcHBsaWNhdGlvbiB7XG4gIGNvbnN0cnVjdG9yKHByb2plY3Q6IEF3c0Nka1R5cGVTY3JpcHRBcHAsIG9wdGlvbnM6IEFwcGxpY2F0aW9uT3B0aW9ucykge1xuICAgIC8vIENyZWF0ZSBtYWluIGVudHJ5IHBvaW50IGZpbGVzXG5cbiAgICBuZXcgTWFpbkZpbGUocHJvamVjdCwge1xuICAgICAgcHJvamVjdE5hbWU6IHByb2plY3QubmFtZSxcbiAgICAgIGRldjogb3B0aW9ucy5kZXYsXG4gICAgICBzdGFnaW5nOiBvcHRpb25zLnN0YWdpbmcsXG4gICAgICBwcm9kOiBvcHRpb25zLnByb2QsXG4gICAgICBhZGRpdGlvbmFsVGFnczogb3B0aW9ucy5hZGRpdGlvbmFsVGFncyxcbiAgICB9KTtcblxuICAgIG5ldyBMb2NhbERldkZpbGVzKHByb2plY3QsIHtcbiAgICAgIHByb2plY3ROYW1lOiBwcm9qZWN0Lm5hbWUsXG4gICAgICBkZXY6IG9wdGlvbnMuZGV2LFxuICAgIH0pO1xuXG4gICAgLy8gQ3JlYXRlIHN0YWNrIGZpbGVzXG4gICAgbmV3IEdpdEh1YlJvbGVzU3RhY2tGaWxlKHByb2plY3QsIHtcbiAgICAgIGdpdGh1YlJlcG9zaXRvcnk6IG9wdGlvbnMuZ2l0aHViUmVwb3NpdG9yeSxcbiAgICB9KTtcblxuICAgIG5ldyBCb290Y2FtcEJhc2VBcHBsaWNhdGlvblN0YWNrRmlsZShwcm9qZWN0KTtcbiAgICBuZXcgQm9vdGNhbXBBcHBsaWNhdGlvblN0YWNrRmlsZShwcm9qZWN0KTtcblxuICAgIC8vIENyZWF0ZSBjb25zdHJ1Y3QgZmlsZXNcbiAgICBuZXcgQXBpQ29uc3RydWN0RmlsZShwcm9qZWN0LCB7IGF1dGhvcml6ZXJPYmplY3RWZXJzaW9uOiBvcHRpb25zLmF1dGhvcml6ZXJPYmplY3RWZXJzaW9uIH0pO1xuICAgIG5ldyBTdGF0aWNXZWJzaXRlQ29uc3RydWN0RmlsZShwcm9qZWN0KTtcblxuICAgIC8vIG44biB3b3JrZmxvdyBmaWxlc1xuICAgIGlmIChvcHRpb25zLm44bldvcmtmbG93cyA9PT0gdW5kZWZpbmVkIHx8IG9wdGlvbnMubjhuV29ya2Zsb3dzKSB7XG4gICAgICBuZXcgV29ya2Zsb3dQcm92aWRlckZpbGUocHJvamVjdCk7XG4gICAgICBuZXcgV29ya2Zsb3dBdXRvRGlzY292ZXIocHJvamVjdCk7XG4gICAgfVxuXG4gICAgLy8gQ3JlYXRlIGhhbmRsZXIgZmlsZXNcbiAgICBuZXcgQXBpRnVuY3Rpb25GaWxlKHByb2plY3QpO1xuXG4gICAgLy8gQ3JlYXRlIHRlc3QgZmlsZXNcbiAgICBuZXcgTWFpblRlc3RGaWxlKHByb2plY3QpO1xuXG4gICAgLy8gQ3JlYXRlIGNvbmZpZyBmaWxlc1xuICAgIG5ldyBDb2RlUmFiYml0RmlsZShwcm9qZWN0KTtcblxuICAgIC8vIENyZWF0ZSBHaXRIdWIgQWN0aW9ucyB3b3JrZmxvd3NcbiAgICBuZXcgUHJEZXBsb3lXb3JrZmxvdyhwcm9qZWN0LCB7XG4gICAgICByb2xlQXJuOiBvcHRpb25zLmRldi5naXRodWJBY3Rpb25Sb2xlQXJuLFxuICAgICAgYXdzUmVnaW9uOiBvcHRpb25zLmRldi5yZWdpb24sXG4gICAgICBjbGVya1B1Ymxpc2hhYmxlS2V5OiBvcHRpb25zLmRldi5jbGVya1B1Ymxpc2hhYmxlS2V5LFxuICAgICAgYWN0aW9uVmVyc2lvbnM6IG9wdGlvbnMuYWN0aW9uVmVyc2lvbnMsXG4gICAgICBlMmVUZXN0aW5nOiBvcHRpb25zLmUyZVRlc3RpbmcsXG4gICAgfSk7XG5cbiAgICBuZXcgUHJDbGVhbnVwV29ya2Zsb3cocHJvamVjdCwge1xuICAgICAgcm9sZUFybjogb3B0aW9ucy5kZXYuZ2l0aHViQWN0aW9uUm9sZUFybixcbiAgICAgIGF3c1JlZ2lvbjogb3B0aW9ucy5kZXYucmVnaW9uLFxuICAgICAgcHJvamVjdE5hbWU6IHByb2plY3QubmFtZSxcbiAgICAgIGFjdGlvblZlcnNpb25zOiBvcHRpb25zLmFjdGlvblZlcnNpb25zLFxuICAgIH0pO1xuXG4gICAgbmV3IFByU3RhY2tSZWFwZXJXb3JrZmxvdyhwcm9qZWN0LCB7XG4gICAgICByb2xlQXJuOiBvcHRpb25zLmRldi5naXRodWJBY3Rpb25Sb2xlQXJuLFxuICAgICAgYXdzUmVnaW9uOiBvcHRpb25zLmRldi5yZWdpb24sXG4gICAgICBwcm9qZWN0TmFtZTogcHJvamVjdC5uYW1lLFxuICAgICAgYWN0aW9uVmVyc2lvbnM6IG9wdGlvbnMuYWN0aW9uVmVyc2lvbnMsXG4gICAgfSk7XG5cbiAgICBuZXcgU3RhZ2luZ0RlcGxveVdvcmtmbG93KHByb2plY3QsIHtcbiAgICAgIHJvbGVBcm46IG9wdGlvbnMuc3RhZ2luZy5naXRodWJBY3Rpb25Sb2xlQXJuLFxuICAgICAgYXdzUmVnaW9uOiBvcHRpb25zLnN0YWdpbmcucmVnaW9uLFxuICAgICAgcHJvamVjdE5hbWU6IHByb2plY3QubmFtZSxcbiAgICAgIGNsZXJrUHVibGlzaGFibGVLZXk6IG9wdGlvbnMuc3RhZ2luZy5jbGVya1B1Ymxpc2hhYmxlS2V5LFxuICAgICAgYWN0aW9uVmVyc2lvbnM6IG9wdGlvbnMuYWN0aW9uVmVyc2lvbnMsXG4gICAgfSk7XG5cbiAgICBuZXcgUHJvZHVjdGlvbkRlcGxveVdvcmtmbG93KHByb2plY3QsIHtcbiAgICAgIHJvbGVBcm46IG9wdGlvbnMucHJvZC5naXRodWJBY3Rpb25Sb2xlQXJuLFxuICAgICAgYXdzUmVnaW9uOiBvcHRpb25zLnByb2QucmVnaW9uLFxuICAgICAgcHJvamVjdE5hbWU6IHByb2plY3QubmFtZSxcbiAgICAgIGNsZXJrUHVibGlzaGFibGVLZXk6IG9wdGlvbnMucHJvZC5jbGVya1B1Ymxpc2hhYmxlS2V5LFxuICAgICAgYWN0aW9uVmVyc2lvbnM6IG9wdGlvbnMuYWN0aW9uVmVyc2lvbnMsXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
|
99
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQm9vdGNhbXBBcHBsaWNhdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9Cb290Y2FtcEFwcGxpY2F0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLDJEQUF3RDtBQUN4RCx5REFBc0Q7QUFDdEQsaUZBQThFO0FBQzlFLHlGQUFzRjtBQUN0RixxREFBa0Q7QUFDbEQsaUVBQThEO0FBQzlELG1EQUFnRDtBQUNoRCx5Q0FBeUQ7QUFDekQsaURBQThDO0FBQzlDLDJEQUF3RDtBQUN4RCx5REFBc0Q7QUFDdEQseUVBQXNFO0FBQ3RFLG1FQUFnRTtBQUNoRSwrREFBNEQ7QUFDNUQsNkRBQTBEO0FBQzFELG1FQUFnRTtBQUNoRSw2RUFBMEU7QUFFMUUsaUVBQThEO0FBQzlELHlEQUEwRDtBQXVDMUQ7O0dBRUc7QUFDSCxNQUFhLG1CQUFtQjtJQUM5QixZQUFZLE9BQTRCLEVBQUUsT0FBMkI7UUFDbkUsZ0NBQWdDO1FBRWhDLElBQUksbUJBQVEsQ0FBQyxPQUFPLEVBQUU7WUFDcEIsV0FBVyxFQUFFLE9BQU8sQ0FBQyxJQUFJO1lBQ3pCLEdBQUcsRUFBRSxPQUFPLENBQUMsR0FBRztZQUNoQixPQUFPLEVBQUUsT0FBTyxDQUFDLE9BQU87WUFDeEIsSUFBSSxFQUFFLE9BQU8sQ0FBQyxJQUFJO1lBQ2xCLGNBQWMsRUFBRSxPQUFPLENBQUMsY0FBYztTQUN2QyxDQUFDLENBQUM7UUFFSCxJQUFJLDZCQUFhLENBQUMsT0FBTyxFQUFFO1lBQ3pCLFdBQVcsRUFBRSxPQUFPLENBQUMsSUFBSTtZQUN6QixHQUFHLEVBQUUsT0FBTyxDQUFDLEdBQUc7U0FDakIsQ0FBQyxDQUFDO1FBRUgscUJBQXFCO1FBQ3JCLElBQUksMkNBQW9CLENBQUMsT0FBTyxFQUFFO1lBQ2hDLGdCQUFnQixFQUFFLE9BQU8sQ0FBQyxnQkFBZ0I7U0FDM0MsQ0FBQyxDQUFDO1FBRUgsSUFBSSxtRUFBZ0MsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUM5QyxJQUFJLDJEQUE0QixDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRTFDLHlCQUF5QjtRQUN6QixJQUFJLG1DQUFnQixDQUFDLE9BQU8sRUFBRSxFQUFFLHVCQUF1QixFQUFFLE9BQU8sQ0FBQyx1QkFBdUIsRUFBRSxDQUFDLENBQUM7UUFDNUYsSUFBSSx5Q0FBbUIsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNqQyxJQUFJLHVDQUFrQixDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ2hDLElBQUksdURBQTBCLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFeEMscUJBQXFCO1FBQ3JCLElBQUksT0FBTyxDQUFDLFlBQVksS0FBSyxTQUFTLElBQUksT0FBTyxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQy9ELElBQUksdUNBQW9CLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDbEMsSUFBSSwyQ0FBb0IsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNwQyxDQUFDO1FBRUQsdUJBQXVCO1FBQ3ZCLElBQUksaUNBQWUsQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUU3QixvQkFBb0I7UUFDcEIsSUFBSSwyQkFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRTFCLHNCQUFzQjtRQUN0QixJQUFJLCtCQUFjLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFNUIsa0NBQWtDO1FBQ2xDLElBQUksbUNBQWdCLENBQUMsT0FBTyxFQUFFO1lBQzVCLE9BQU8sRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLG1CQUFtQjtZQUN4QyxTQUFTLEVBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxNQUFNO1lBQzdCLG1CQUFtQixFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsbUJBQW1CO1lBQ3BELGNBQWMsRUFBRSxPQUFPLENBQUMsY0FBYztZQUN0QyxVQUFVLEVBQUUsT0FBTyxDQUFDLFVBQVU7U0FDL0IsQ0FBQyxDQUFDO1FBRUgsSUFBSSxxQ0FBaUIsQ0FBQyxPQUFPLEVBQUU7WUFDN0IsT0FBTyxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsbUJBQW1CO1lBQ3hDLFNBQVMsRUFBRSxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU07WUFDN0IsV0FBVyxFQUFFLE9BQU8sQ0FBQyxJQUFJO1lBQ3pCLGNBQWMsRUFBRSxPQUFPLENBQUMsY0FBYztTQUN2QyxDQUFDLENBQUM7UUFFSCxJQUFJLDZDQUFxQixDQUFDLE9BQU8sRUFBRTtZQUNqQyxPQUFPLEVBQUUsT0FBTyxDQUFDLEdBQUcsQ0FBQyxtQkFBbUI7WUFDeEMsU0FBUyxFQUFFLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTTtZQUM3QixXQUFXLEVBQUUsT0FBTyxDQUFDLElBQUk7WUFDekIsY0FBYyxFQUFFLE9BQU8sQ0FBQyxjQUFjO1NBQ3ZDLENBQUMsQ0FBQztRQUVILElBQUksNkNBQXFCLENBQUMsT0FBTyxFQUFFO1lBQ2pDLE9BQU8sRUFBRSxPQUFPLENBQUMsT0FBTyxDQUFDLG1CQUFtQjtZQUM1QyxTQUFTLEVBQUUsT0FBTyxDQUFDLE9BQU8sQ0FBQyxNQUFNO1lBQ2pDLFdBQVcsRUFBRSxPQUFPLENBQUMsSUFBSTtZQUN6QixtQkFBbUIsRUFBRSxPQUFPLENBQUMsT0FBTyxDQUFDLG1CQUFtQjtZQUN4RCxjQUFjLEVBQUUsT0FBTyxDQUFDLGNBQWM7U0FDdkMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxtREFBd0IsQ0FBQyxPQUFPLEVBQUU7WUFDcEMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsbUJBQW1CO1lBQ3pDLFNBQVMsRUFBRSxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU07WUFDOUIsV0FBVyxFQUFFLE9BQU8sQ0FBQyxJQUFJO1lBQ3pCLG1CQUFtQixFQUFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsbUJBQW1CO1lBQ3JELGNBQWMsRUFBRSxPQUFPLENBQUMsY0FBYztTQUN2QyxDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0Y7QUFyRkQsa0RBcUZDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXdzQ2RrVHlwZVNjcmlwdEFwcCB9IGZyb20gJ3Byb2plbi9saWIvYXdzY2RrJztcbmltcG9ydCB7IEFwaUZ1bmN0aW9uRmlsZSB9IGZyb20gJy4vQXBpL0FwaUZ1bmN0aW9uRmlsZSc7XG5pbXBvcnQgeyBBcGlDb25zdHJ1Y3RGaWxlIH0gZnJvbSAnLi9BcGlDb25zdHJ1Y3RGaWxlJztcbmltcG9ydCB7IEJvb3RjYW1wQXBwbGljYXRpb25TdGFja0ZpbGUgfSBmcm9tICcuL0Jvb3RjYW1wQXBwbGljYXRpb25TdGFja0ZpbGUnO1xuaW1wb3J0IHsgQm9vdGNhbXBCYXNlQXBwbGljYXRpb25TdGFja0ZpbGUgfSBmcm9tICcuL0Jvb3RjYW1wQmFzZUFwcGxpY2F0aW9uU3RhY2tGaWxlJztcbmltcG9ydCB7IENvZGVSYWJiaXRGaWxlIH0gZnJvbSAnLi9Db2RlUmFiYml0RmlsZSc7XG5pbXBvcnQgeyBHaXRIdWJSb2xlc1N0YWNrRmlsZSB9IGZyb20gJy4vR2l0SHViUm9sZXNTdGFja0ZpbGUnO1xuaW1wb3J0IHsgTG9jYWxEZXZGaWxlcyB9IGZyb20gJy4vTG9jYWxEZXZGaWxlcyc7XG5pbXBvcnQgeyBFbnZpcm9ubWVudENvbmZpZywgTWFpbkZpbGUgfSBmcm9tICcuL01haW5GaWxlJztcbmltcG9ydCB7IE1haW5UZXN0RmlsZSB9IGZyb20gJy4vTWFpblRlc3RGaWxlJztcbmltcG9ydCB7IFByQ2xlYW51cFdvcmtmbG93IH0gZnJvbSAnLi9QckNsZWFudXBXb3JrZmxvdyc7XG5pbXBvcnQgeyBQckRlcGxveVdvcmtmbG93IH0gZnJvbSAnLi9QckRlcGxveVdvcmtmbG93JztcbmltcG9ydCB7IFByb2R1Y3Rpb25EZXBsb3lXb3JrZmxvdyB9IGZyb20gJy4vUHJvZHVjdGlvbkRlcGxveVdvcmtmbG93JztcbmltcG9ydCB7IFByU3RhY2tSZWFwZXJXb3JrZmxvdyB9IGZyb20gJy4vUHJTdGFja1JlYXBlcldvcmtmbG93JztcbmltcG9ydCB7IFNlY3JldENvbnN0cnVjdEZpbGUgfSBmcm9tICcuL1NlY3JldENvbnN0cnVjdEZpbGUnO1xuaW1wb3J0IHsgU2VjcmV0SGFuZGxlckZpbGVzIH0gZnJvbSAnLi9TZWNyZXRIYW5kbGVyRmlsZXMnO1xuaW1wb3J0IHsgU3RhZ2luZ0RlcGxveVdvcmtmbG93IH0gZnJvbSAnLi9TdGFnaW5nRGVwbG95V29ya2Zsb3cnO1xuaW1wb3J0IHsgU3RhdGljV2Vic2l0ZUNvbnN0cnVjdEZpbGUgfSBmcm9tICcuL1N0YXRpY1dlYnNpdGVDb25zdHJ1Y3RGaWxlJztcbmltcG9ydCB7IFdvcmtmbG93QWN0aW9uVmVyc2lvbnMgfSBmcm9tICcuL1dvcmtmbG93QWN0aW9uVmVyc2lvbnMnO1xuaW1wb3J0IHsgV29ya2Zsb3dBdXRvRGlzY292ZXIgfSBmcm9tICcuL1dvcmtmbG93QXV0b0Rpc2NvdmVyJztcbmltcG9ydCB7IFdvcmtmbG93UHJvdmlkZXJGaWxlIH0gZnJvbSAnLi9Xb3JrZmxvd1Byb3ZpZGVyJztcblxuZXhwb3J0IGludGVyZmFjZSBBcHBsaWNhdGlvbkVudmlyb25tZW50Q29uZmlnIGV4dGVuZHMgRW52aXJvbm1lbnRDb25maWcge1xuICByZWFkb25seSBnaXRodWJBY3Rpb25Sb2xlQXJuOiBgYXJuOmF3czppYW06OiR7c3RyaW5nfTpyb2xlLyR7c3RyaW5nfWA7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQXBwbGljYXRpb25PcHRpb25zIHtcbiAgcmVhZG9ubHkgZ2l0aHViUmVwb3NpdG9yeTogc3RyaW5nO1xuICByZWFkb25seSBkZXY6IEFwcGxpY2F0aW9uRW52aXJvbm1lbnRDb25maWc7XG4gIHJlYWRvbmx5IHN0YWdpbmc6IEFwcGxpY2F0aW9uRW52aXJvbm1lbnRDb25maWc7XG4gIHJlYWRvbmx5IHByb2Q6IEFwcGxpY2F0aW9uRW52aXJvbm1lbnRDb25maWc7XG4gIHJlYWRvbmx5IGFkZGl0aW9uYWxUYWdzPzogeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfTtcblxuICAvKipcbiAgICogSWYgdHJ1ZSwgY3JlYXRlcyBXb3JrZmxvd1Byb3ZpZGVyIGZpbGVzIGZvciBlYWNoIG44biB3b3JrZmxvdyBmaWxlIGZvdW5kIGluIHNyYy93b3JrZmxvd3MvKi5qc29uXG4gICAqXG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIHJlYWRvbmx5IG44bldvcmtmbG93cz86IGJvb2xlYW47XG5cbiAgLyoqXG4gICAqIE92ZXJyaWRlcyBmb3IgdGhlIHBpbm5lZCBhY3Rpb24gdmVyc2lvbnMgdXNlZCBieSB0aGUgZ2VuZXJhdGVkIEdpdEh1YiBBY3Rpb25zIHdvcmtmbG93cy5cbiAgICovXG4gIHJlYWRvbmx5IGFjdGlvblZlcnNpb25zPzogV29ya2Zsb3dBY3Rpb25WZXJzaW9ucztcblxuICAvKipcbiAgICogT3ZlcnJpZGVzIHRoZSBwaW5uZWQgUzMgb2JqZWN0IHZlcnNpb24gb2YgdGhlIGNsZXJrLWF1dGhvcml6ZXIgTGFtYmRhIGRlcGxveW1lbnQgcGFja2FnZS5cbiAgICpcbiAgICogQGRlZmF1bHQgLSB0aGUgZGVmYXVsdCBwaW5uZWQgaW4gQXBpQ29uc3RydWN0RmlsZVxuICAgKi9cbiAgcmVhZG9ubHkgYXV0aG9yaXplck9iamVjdFZlcnNpb24/OiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFdoZXRoZXIgYFByRGVwbG95V29ya2Zsb3dgIHJ1bnMgdGhlIFBsYXl3cmlnaHQgZTJlIHN1aXRlIGFnYWluc3QgdGhlIGRlcGxveWVkIFBSIHN0YWNrLlxuICAgKiBAZGVmYXVsdCB0cnVlXG4gICAqL1xuICByZWFkb25seSBlMmVUZXN0aW5nPzogYm9vbGVhbjtcbn1cblxuLyoqXG4gKiBBcHBsaWNhdGlvbiBjb25zdHJ1Y3QgdGhhdCBjcmVhdGVzIGFsbCBzdGFuZGFyZCBwcm9qZWN0IGZpbGVzXG4gKi9cbmV4cG9ydCBjbGFzcyBCb290Y2FtcEFwcGxpY2F0aW9uIHtcbiAgY29uc3RydWN0b3IocHJvamVjdDogQXdzQ2RrVHlwZVNjcmlwdEFwcCwgb3B0aW9uczogQXBwbGljYXRpb25PcHRpb25zKSB7XG4gICAgLy8gQ3JlYXRlIG1haW4gZW50cnkgcG9pbnQgZmlsZXNcblxuICAgIG5ldyBNYWluRmlsZShwcm9qZWN0LCB7XG4gICAgICBwcm9qZWN0TmFtZTogcHJvamVjdC5uYW1lLFxuICAgICAgZGV2OiBvcHRpb25zLmRldixcbiAgICAgIHN0YWdpbmc6IG9wdGlvbnMuc3RhZ2luZyxcbiAgICAgIHByb2Q6IG9wdGlvbnMucHJvZCxcbiAgICAgIGFkZGl0aW9uYWxUYWdzOiBvcHRpb25zLmFkZGl0aW9uYWxUYWdzLFxuICAgIH0pO1xuXG4gICAgbmV3IExvY2FsRGV2RmlsZXMocHJvamVjdCwge1xuICAgICAgcHJvamVjdE5hbWU6IHByb2plY3QubmFtZSxcbiAgICAgIGRldjogb3B0aW9ucy5kZXYsXG4gICAgfSk7XG5cbiAgICAvLyBDcmVhdGUgc3RhY2sgZmlsZXNcbiAgICBuZXcgR2l0SHViUm9sZXNTdGFja0ZpbGUocHJvamVjdCwge1xuICAgICAgZ2l0aHViUmVwb3NpdG9yeTogb3B0aW9ucy5naXRodWJSZXBvc2l0b3J5LFxuICAgIH0pO1xuXG4gICAgbmV3IEJvb3RjYW1wQmFzZUFwcGxpY2F0aW9uU3RhY2tGaWxlKHByb2plY3QpO1xuICAgIG5ldyBCb290Y2FtcEFwcGxpY2F0aW9uU3RhY2tGaWxlKHByb2plY3QpO1xuXG4gICAgLy8gQ3JlYXRlIGNvbnN0cnVjdCBmaWxlc1xuICAgIG5ldyBBcGlDb25zdHJ1Y3RGaWxlKHByb2plY3QsIHsgYXV0aG9yaXplck9iamVjdFZlcnNpb246IG9wdGlvbnMuYXV0aG9yaXplck9iamVjdFZlcnNpb24gfSk7XG4gICAgbmV3IFNlY3JldENvbnN0cnVjdEZpbGUocHJvamVjdCk7XG4gICAgbmV3IFNlY3JldEhhbmRsZXJGaWxlcyhwcm9qZWN0KTtcbiAgICBuZXcgU3RhdGljV2Vic2l0ZUNvbnN0cnVjdEZpbGUocHJvamVjdCk7XG5cbiAgICAvLyBuOG4gd29ya2Zsb3cgZmlsZXNcbiAgICBpZiAob3B0aW9ucy5uOG5Xb3JrZmxvd3MgPT09IHVuZGVmaW5lZCB8fCBvcHRpb25zLm44bldvcmtmbG93cykge1xuICAgICAgbmV3IFdvcmtmbG93UHJvdmlkZXJGaWxlKHByb2plY3QpO1xuICAgICAgbmV3IFdvcmtmbG93QXV0b0Rpc2NvdmVyKHByb2plY3QpO1xuICAgIH1cblxuICAgIC8vIENyZWF0ZSBoYW5kbGVyIGZpbGVzXG4gICAgbmV3IEFwaUZ1bmN0aW9uRmlsZShwcm9qZWN0KTtcblxuICAgIC8vIENyZWF0ZSB0ZXN0IGZpbGVzXG4gICAgbmV3IE1haW5UZXN0RmlsZShwcm9qZWN0KTtcblxuICAgIC8vIENyZWF0ZSBjb25maWcgZmlsZXNcbiAgICBuZXcgQ29kZVJhYmJpdEZpbGUocHJvamVjdCk7XG5cbiAgICAvLyBDcmVhdGUgR2l0SHViIEFjdGlvbnMgd29ya2Zsb3dzXG4gICAgbmV3IFByRGVwbG95V29ya2Zsb3cocHJvamVjdCwge1xuICAgICAgcm9sZUFybjogb3B0aW9ucy5kZXYuZ2l0aHViQWN0aW9uUm9sZUFybixcbiAgICAgIGF3c1JlZ2lvbjogb3B0aW9ucy5kZXYucmVnaW9uLFxuICAgICAgY2xlcmtQdWJsaXNoYWJsZUtleTogb3B0aW9ucy5kZXYuY2xlcmtQdWJsaXNoYWJsZUtleSxcbiAgICAgIGFjdGlvblZlcnNpb25zOiBvcHRpb25zLmFjdGlvblZlcnNpb25zLFxuICAgICAgZTJlVGVzdGluZzogb3B0aW9ucy5lMmVUZXN0aW5nLFxuICAgIH0pO1xuXG4gICAgbmV3IFByQ2xlYW51cFdvcmtmbG93KHByb2plY3QsIHtcbiAgICAgIHJvbGVBcm46IG9wdGlvbnMuZGV2LmdpdGh1YkFjdGlvblJvbGVBcm4sXG4gICAgICBhd3NSZWdpb246IG9wdGlvbnMuZGV2LnJlZ2lvbixcbiAgICAgIHByb2plY3ROYW1lOiBwcm9qZWN0Lm5hbWUsXG4gICAgICBhY3Rpb25WZXJzaW9uczogb3B0aW9ucy5hY3Rpb25WZXJzaW9ucyxcbiAgICB9KTtcblxuICAgIG5ldyBQclN0YWNrUmVhcGVyV29ya2Zsb3cocHJvamVjdCwge1xuICAgICAgcm9sZUFybjogb3B0aW9ucy5kZXYuZ2l0aHViQWN0aW9uUm9sZUFybixcbiAgICAgIGF3c1JlZ2lvbjogb3B0aW9ucy5kZXYucmVnaW9uLFxuICAgICAgcHJvamVjdE5hbWU6IHByb2plY3QubmFtZSxcbiAgICAgIGFjdGlvblZlcnNpb25zOiBvcHRpb25zLmFjdGlvblZlcnNpb25zLFxuICAgIH0pO1xuXG4gICAgbmV3IFN0YWdpbmdEZXBsb3lXb3JrZmxvdyhwcm9qZWN0LCB7XG4gICAgICByb2xlQXJuOiBvcHRpb25zLnN0YWdpbmcuZ2l0aHViQWN0aW9uUm9sZUFybixcbiAgICAgIGF3c1JlZ2lvbjogb3B0aW9ucy5zdGFnaW5nLnJlZ2lvbixcbiAgICAgIHByb2plY3ROYW1lOiBwcm9qZWN0Lm5hbWUsXG4gICAgICBjbGVya1B1Ymxpc2hhYmxlS2V5OiBvcHRpb25zLnN0YWdpbmcuY2xlcmtQdWJsaXNoYWJsZUtleSxcbiAgICAgIGFjdGlvblZlcnNpb25zOiBvcHRpb25zLmFjdGlvblZlcnNpb25zLFxuICAgIH0pO1xuXG4gICAgbmV3IFByb2R1Y3Rpb25EZXBsb3lXb3JrZmxvdyhwcm9qZWN0LCB7XG4gICAgICByb2xlQXJuOiBvcHRpb25zLnByb2QuZ2l0aHViQWN0aW9uUm9sZUFybixcbiAgICAgIGF3c1JlZ2lvbjogb3B0aW9ucy5wcm9kLnJlZ2lvbixcbiAgICAgIHByb2plY3ROYW1lOiBwcm9qZWN0Lm5hbWUsXG4gICAgICBjbGVya1B1Ymxpc2hhYmxlS2V5OiBvcHRpb25zLnByb2QuY2xlcmtQdWJsaXNoYWJsZUtleSxcbiAgICAgIGFjdGlvblZlcnNpb25zOiBvcHRpb25zLmFjdGlvblZlcnNpb25zLFxuICAgIH0pO1xuICB9XG59XG4iXX0=
|
package/lib/BootcampProject.js
CHANGED
|
@@ -12,7 +12,7 @@ const SoftwareFactoryFiles_1 = require("./SoftwareFactoryFiles");
|
|
|
12
12
|
const utils_1 = require("./utils");
|
|
13
13
|
const ViteReactProject_1 = require("./ViteReactProject");
|
|
14
14
|
class BootcampProject extends awscdk_1.AwsCdkTypeScriptApp {
|
|
15
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.BootcampProject", version: "1.
|
|
15
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.BootcampProject", version: "1.27.0" };
|
|
16
16
|
constructor(options) {
|
|
17
17
|
super({
|
|
18
18
|
...options,
|
|
@@ -27,7 +27,6 @@ class BootcampProject extends awscdk_1.AwsCdkTypeScriptApp {
|
|
|
27
27
|
'@types/pg',
|
|
28
28
|
'pg',
|
|
29
29
|
'@aws-sdk/rds-signer',
|
|
30
|
-
'@matthewbonig/secret',
|
|
31
30
|
'datadog-cdk-constructs-v2',
|
|
32
31
|
'@cdklabs/aws-lambda-rust',
|
|
33
32
|
'@aws-lambda-powertools/parameters',
|
|
@@ -126,4 +125,4 @@ class BootcampProject extends awscdk_1.AwsCdkTypeScriptApp {
|
|
|
126
125
|
}
|
|
127
126
|
}
|
|
128
127
|
exports.BootcampProject = BootcampProject;
|
|
129
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
128
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQm9vdGNhbXBQcm9qZWN0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL0Jvb3RjYW1wUHJvamVjdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsOENBQXdEO0FBQ3hELDhDQUFzRDtBQUV0RCwrREFBNEQ7QUFDNUQscURBQWtEO0FBQ2xELDJEQUF3RDtBQUN4RCx1REFBb0Q7QUFDcEQsaUVBQThEO0FBQzlELG1DQUF5QztBQUN6Qyx5REFBc0Q7QUFPdEQsTUFBYSxlQUFnQixTQUFRLDRCQUFtQjs7SUFDdEQsWUFBWSxPQUErQjtRQUN6QyxLQUFLLENBQUM7WUFDSixHQUFHLE9BQU87WUFDVixVQUFVLEVBQUUsT0FBTyxDQUFDLFVBQVUsSUFBSSxTQUFTO1lBQzNDLG9CQUFvQixFQUFFLE9BQU8sQ0FBQyxvQkFBb0IsSUFBSSxNQUFNO1lBQzVELElBQUksRUFBRSxPQUFPLENBQUMsSUFBSTtZQUNsQixVQUFVLEVBQUUsSUFBSTtZQUNoQixhQUFhLEVBQUUsS0FBSztZQUNwQixJQUFJLEVBQUU7Z0JBQ0osbUJBQW1CO2dCQUNuQixnQkFBZ0I7Z0JBQ2hCLFdBQVc7Z0JBQ1gsSUFBSTtnQkFDSixxQkFBcUI7Z0JBQ3JCLDJCQUEyQjtnQkFDM0IsMEJBQTBCO2dCQUMxQixtQ0FBbUM7Z0JBQ25DLGNBQWM7Z0JBQ2QsaUNBQWlDO2dCQUNqQyxTQUFTO2dCQUNULGlCQUFpQjtnQkFDakIsYUFBYTtnQkFDYixHQUFHLE9BQU8sQ0FBQyxJQUFJLElBQUksRUFBRTthQUN0QjtZQUNELE9BQU8sRUFBRTtnQkFDUCxxQkFBcUI7Z0JBQ3JCLFNBQVM7Z0JBQ1QsY0FBYztnQkFDZCxxQ0FBcUM7Z0JBQ3JDLEdBQUcsT0FBTyxDQUFDLE9BQU8sSUFBSSxFQUFFO2FBQ3pCO1lBQ0QsU0FBUyxFQUFFO2dCQUNULG1EQUFtRDtnQkFDbkQsY0FBYztnQkFDZCxHQUFHLE9BQU8sQ0FBQyxTQUFTLElBQUksRUFBRTthQUMzQjtZQUNELFFBQVEs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RUFDbEcsU0FBUyxDQUFDLFVBQVUsQ0FDckI7U0FDRixDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRTtZQUN0QixJQUFJLEVBQUUsMkVBQTJFO1lBQ2pGLFdBQVcsRUFBRSxJQUFJO1NBQ2xCLENBQUMsQ0FBQztJQUdMLENBQUM7O0FBOUhILDBDQStIQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEF3c0Nka1R5cGVTY3JpcHRBcHAgfSBmcm9tICdwcm9qZW4vbGliL2F3c2Nkayc7XG5pbXBvcnQgeyBHaXRodWJDcmVkZW50aWFscyB9IGZyb20gJ3Byb2plbi9saWIvZ2l0aHViJztcbmltcG9ydCB7IEJhdG1hblByb2plY3RPcHRpb25zIH0gZnJvbSAnLi9CYXRtYW5Qcm9qZWN0JztcbmltcG9ydCB7IEJvb3RjYW1wQXBwbGljYXRpb24gfSBmcm9tICcuL0Jvb3RjYW1wQXBwbGljYXRpb24nO1xuaW1wb3J0IHsgQ29kZU93bmVyc0ZpbGUgfSBmcm9tICcuL0NvZGVPd25lcnNGaWxlJztcbmltcG9ydCB7IERhdGFEb2dBc3BlY3RGaWxlIH0gZnJvbSAnLi9EYXRhRG9nQXNwZWN0RmlsZSc7XG5pbXBvcnQgeyBHaXRIdWJSb2xlc0ZpbGUgfSBmcm9tICcuL0dpdEh1YlJvbGVzRmlsZSc7XG5pbXBvcnQgeyBTb2Z0d2FyZUZhY3RvcnlGaWxlcyB9IGZyb20gJy4vU29mdHdhcmVGYWN0b3J5RmlsZXMnO1xuaW1wb3J0IHsgcmVhZG1lQ29udGVudHMgfSBmcm9tICcuL3V0aWxzJztcbmltcG9ydCB7IFZpdGVSZWFjdFByb2plY3QgfSBmcm9tICcuL1ZpdGVSZWFjdFByb2plY3QnO1xuXG5cbmV4cG9ydCBpbnRlcmZhY2UgQm9vdGNhbXBQcm9qZWN0T3B0aW9ucyBleHRlbmRzIEJhdG1hblByb2plY3RPcHRpb25zIHtcblxufVxuXG5leHBvcnQgY2xhc3MgQm9vdGNhbXBQcm9qZWN0IGV4dGVuZHMgQXdzQ2RrVHlwZVNjcmlwdEFwcCB7XG4gIGNvbnN0cnVjdG9yKG9wdGlvbnM6IEJvb3RjYW1wUHJvamVjdE9wdGlvbnMpIHtcbiAgICBzdXBlcih7XG4gICAgICAuLi5vcHRpb25zLFxuICAgICAgY2RrVmVyc2lvbjogb3B0aW9ucy5jZGtWZXJzaW9uIHx8ICcyLjIyNC4wJyxcbiAgICAgIGRlZmF1bHRSZWxlYXNlQnJhbmNoOiBvcHRpb25zLmRlZmF1bHRSZWxlYXNlQnJhbmNoIHx8ICdtYWluJyxcbiAgICAgIG5hbWU6IG9wdGlvbnMubmFtZSxcbiAgICAgIHByb2plbnJjVHM6IHRydWUsXG4gICAgICBidWlsZFdvcmtmbG93OiBmYWxzZSxcbiAgICAgIGRlcHM6IFtcbiAgICAgICAgJ0B0eXBlcy9hd3MtbGFtYmRhJyxcbiAgICAgICAgJ0B0eXBlcy9leHByZXNzJyxcbiAgICAgICAgJ0B0eXBlcy9wZycsXG4gICAgICAgICdwZycsXG4gICAgICAgICdAYXdzLXNkay9yZHMtc2lnbmVyJyxcbiAgICAgICAgJ2RhdGFkb2ctY2RrLWNvbnN0cnVjdHMtdjInLFxuICAgICAgICAnQGNka2xhYnMvYXdzLWxhbWJkYS1ydXN0JyxcbiAgICAgICAgJ0Bhd3MtbGFtYmRhLXBvd2VydG9vbHMvcGFyYW1ldGVycycsXG4gICAgICAgICdqc29ud2VidG9rZW4nLFxuICAgICAgICAnQGF3cy1zZGsvY2xpZW50LXNlY3JldHMtbWFuYWdlcicsXG4gICAgICAgICdleHByZXNzJyxcbiAgICAgICAgJ3NlcnZlcmxlc3MtaHR0cCcsXG4gICAgICAgICdjZGstcmRzLXNxbCcsXG4gICAgICAgIC4uLm9wdGlvbnMuZGVwcyB8fCBbXSxcbiAgICAgIF0sXG4gICAgICBkZXZEZXBzOiBbXG4gICAgICAgICdAdHlwZXMvanNvbndlYnRva2VuJyxcbiAgICAgICAgJ25vZGVtb24nLFxuICAgICAgICAnY29uY3VycmVudGx5JyxcbiAgICAgICAgJ0BtYWNlZG9uLXRlY2hub2xvZ2llcy9iYXRtYW5AXjEuMC4wJyxcbiAgICAgICAgLi4ub3B0aW9ucy5kZXZEZXBzIHx8IFtdLFxuICAgICAgXSxcbiAgICAgIGdpdGlnbm9yZTogW1xuICAgICAgICAnc3JjL2NvbnN0cnVjdHMvaGFuZGxlci9jbGVyay1hdXRob3JpemVyL3RhcmdldC8qKicsXG4gICAgICAgICcqKi8uRFNfU3RvcmUnLFxuICAgICAgICAuLi5vcHRpb25zLmdpdGlnbm9yZSB8fCBbXSxcbiAgICAgIF0sXG4gICAgICB0c2NvbmZpZzoge1xuICAgICAgICAuLi5vcHRpb25zLnRzY29uZmlnLFxuICAgICAgICBjb21waWxlck9wdGlvbnM6IHtcbiAgICAgICAgICAuLi5vcHRpb25zLnRzY29uZmlnPy5jb21waWxlck9wdGlvbnMsXG4gICAgICAgICAgaXNvbGF0ZWRNb2R1bGVzOiB0cnVlLFxuICAgICAgICAgIGFsbG93SW1wb3J0aW5nVHNFeHRlbnNpb25zOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICAgIHNhbXBsZUNvZGU6IGZhbHNlLFxuICAgICAgbWluTm9kZVZlcnNpb246IG9wdGlvbnMubWluTm9kZVZlcnNpb24gfHwgJzIyJyxcbiAgICAgIGRlcHNVcGdyYWRlT3B0aW9uczoge1xuICAgICAgICB3b3JrZmxvd09wdGlvbnM6IHtcbiAgICAgICAgICBwcm9qZW5DcmVkZW50aWFsczogR2l0aHViQ3JlZGVudGlhbHMuZnJvbVBlcnNvbmFsQWNjZXNzVG9rZW4oe1xuICAgICAgICAgICAgc2VjcmV0OiAnR0lUSFVCX1RPS0VOJyxcbiAgICAgICAgICB9KSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgICByZWFkbWU6IHtcbiAgICAgICAgY29udGVudHM6IHJlYWRtZUNvbnRlbnRzKG9wdGlvbnMubmFtZSwgb3B0aW9ucy5lMmVUZXN0aW5nID8/IHRydWUsIG9wdGlvbnMucGFja2FnZU1hbmFnZXIpLFxuICAgICAgfSxcbiAgICB9KTtcblxuXG4gICAgLy8gQ3JlYXRlIHN0YW5kYXJkIHByb2plY3QgZmlsZXNcbiAgICBjb25zdCBQUklNQVJZX0FDQ09VTlQgPSAnMDE1OTU1ODE3MjYzJztcbiAgICBjb25zdCBQUklNQVJZX1JFR0lPTiA9ICd1cy1lYXN0LTEnO1xuXG4gICAgbmV3IEJvb3RjYW1wQXBwbGljYXRpb24odGhpcywge1xuICAgICAgZ2l0aHViUmVwb3NpdG9yeTogYG1hY2Vkb24tdGVjaG5vbG9naWVzLyR7b3B0aW9ucy5uYW1lfWAsXG4gICAgICBkZXY6IHtcbiAgICAgICAgLi4ub3B0aW9ucy5kZXYsXG4gICAgICB9LFxuICAgICAgc3RhZ2luZzoge1xuICAgICAgICAuLi5vcHRpb25zLnN0YWdpbmcsXG4gICAgICB9LFxuICAgICAgcHJvZDoge1xuICAgICAgICAuLi5vcHRpb25zLmRldixcbiAgICAgIH0sXG4gICAgICBhZGRpdGlvbmFsVGFnczogb3B0aW9ucy5hZGRpdGlvbmFsVGFncyxcbiAgICAgIG44bldvcmtmbG93czogb3B0aW9ucy5uOG5Xb3JrZmxvd3MsXG4gICAgICBhY3Rpb25WZXJzaW9uczogb3B0aW9ucy5hY3Rpb25WZXJzaW9ucyxcbiAgICAgIGUyZVRlc3Rpbmc6IG9wdGlvbnMuZTJlVGVzdGluZyxcbiAgICB9KTtcblxuICAgIG5ldyBHaXRIdWJSb2xlc0ZpbGUodGhpcywge1xuICAgICAgYWNjb3VudDogUFJJTUFSWV9BQ0NPVU5ULFxuICAgICAgcHJpbWFyeVJlZ2lvbjogUFJJTUFSWV9SRUdJT04sXG4gICAgfSk7XG5cbiAgICBuZXcgQ29kZU93bmVyc0ZpbGUodGhpcywge1xuICAgICAgYWRkaXRpb25hbE93bmVyczogb3B0aW9ucy5hZGRpdGlvbmFsQ29kZU93bmVycyxcbiAgICB9KTtcblxuICAgIG5ldyBEYXRhRG9nQXNwZWN0RmlsZSh0aGlzKTtcblxuICAgIG5ldyBTb2Z0d2FyZUZhY3RvcnlGaWxlcyh0aGlzLCB7XG4gICAgICByZXBvTmFtZTogb3B0aW9ucy5uYW1lLFxuICAgICAgYmFzZUJyYW5jaDogb3B0aW9ucy5kZWZhdWx0UmVsZWFzZUJyYW5jaCxcbiAgICAgIGFjdGlvblZlcnNpb25zOiBvcHRpb25zLmFjdGlvblZlcnNpb25zLFxuICAgIH0pO1xuXG4gICAgY29uc3Qgdml0ZVJlYWN0ID0gbmV3IFZpdGVSZWFjdFByb2plY3Qoe1xuICAgICAgbmFtZTogb3B0aW9ucy5uYW1lLFxuICAgICAgZGVmYXVsdFJlbGVhc2VCcmFuY2g6ICdtYWluJyxcbiAgICAgIHBhcmVudDogdGhpcyxcbiAgICAgIG91dGRpcjogJ3dlYicsXG4gICAgICBkZXBzOiBvcHRpb25zLndlYnNpdGVEZXBzLFxuICAgICAgZTJlVGVzdGluZzogb3B0aW9ucy5lMmVUZXN0aW5nLFxuICAgIH0pO1xuICAgIHZpdGVSZWFjdC5hZGRDb25maWdGaWVsZCgnc29tZXRoaW5nJywgJ251bWJlcicpO1xuICAgIHZpdGVSZWFjdC5hZGRDb25maWdGaWVsZCgnc29tZXRoaW5nRWxzZScsICdzdHJpbmcnKTtcblxuICAgIGNvbnN0IGNvbmN1cnJlbnRseSA9ICguLi5hcmdzOiBzdHJpbmdbXSkgPT4ge1xuICAgICAgcmV0dXJuIGBjb25jdXJyZW50bHkgJHthcmdzLm1hcChhID0+IGBcIiR7YX1cImApLmpvaW4oJyAnKX1gO1xuICAgIH07XG5cbiAgICB0aGlzLmFkZFRhc2soJ2RldicsIHtcbiAgICAgIGV4ZWM6IGNvbmN1cnJlbnRseShcbiAgICAgICAgJ25vZGVtb24gLS13YXRjaCAuL3NyYy9jb25zdHJ1Y3RzL2hhbmRsZXIgLS13YXRjaCAuL3NyYy9hcGkgLS13YXRjaCAuL2xvY2FsL2Rldi50cyAuL2xvY2FsL2Rldi50cycsXG4gICAgICAgIHZpdGVSZWFjdC5kZXZDb21tYW5kLFxuICAgICAgKSxcbiAgICB9KTtcblxuICAgIHRoaXMuYWRkVGFzaygnY2RrOmRldicsIHtcbiAgICAgIGV4ZWM6ICdjZGsgLWEgXCJucHggdHMtbm9kZSAtUCB0c2NvbmZpZy5qc29uIC0tcHJlZmVyLXRzLWV4dHMgc3JjL0xvY2FsRGV2QXBwLnRzXCInLFxuICAgICAgcmVjZWl2ZUFyZ3M6IHRydWUsXG4gICAgfSk7XG5cblxuICB9XG59XG4iXX0=
|
package/lib/CodeOwnersFile.js
CHANGED
|
@@ -4,7 +4,7 @@ exports.CodeOwnersFile = void 0;
|
|
|
4
4
|
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
|
|
5
5
|
const projen_1 = require("projen");
|
|
6
6
|
class CodeOwnersFile extends projen_1.TextFile {
|
|
7
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.CodeOwnersFile", version: "1.
|
|
7
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.CodeOwnersFile", version: "1.27.0" };
|
|
8
8
|
constructor(project, options = {}) {
|
|
9
9
|
const defaultOwners = ['* @macedon-technologies/platform', '* @macedon-technologies/ai-development-team'];
|
|
10
10
|
const allOwners = [...defaultOwners, ...(options.additionalOwners || [])];
|
|
@@ -7,7 +7,7 @@ const javascript_1 = require("projen/lib/javascript");
|
|
|
7
7
|
const utils_1 = require("./utils");
|
|
8
8
|
const WorkflowActionVersions_1 = require("./WorkflowActionVersions");
|
|
9
9
|
class ProductionDeployWorkflow extends projen_1.YamlFile {
|
|
10
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.ProductionDeployWorkflow", version: "1.
|
|
10
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.ProductionDeployWorkflow", version: "1.27.0" };
|
|
11
11
|
constructor(project, options) {
|
|
12
12
|
const packageManager = project.package.packageManager;
|
|
13
13
|
const actionVersions = (0, WorkflowActionVersions_1.resolveActionVersions)(options.actionVersions);
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { SampleFile } from 'projen';
|
|
2
|
+
import { AwsCdkTypeScriptApp } from 'projen/lib/awscdk';
|
|
3
|
+
/**
|
|
4
|
+
* Scaffolds src/constructs/Secret.ts: a Secrets Manager secret that keeps
|
|
5
|
+
* manually changed values across deploys. Copied from @matthewbonig/secret (MIT),
|
|
6
|
+
* with the handler Lambda on Node.js 24.
|
|
7
|
+
*/
|
|
8
|
+
export declare class SecretConstructFile extends SampleFile {
|
|
9
|
+
constructor(project: AwsCdkTypeScriptApp);
|
|
10
|
+
}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SecretConstructFile = void 0;
|
|
4
|
+
const projen_1 = require("projen");
|
|
5
|
+
/**
|
|
6
|
+
* Scaffolds src/constructs/Secret.ts: a Secrets Manager secret that keeps
|
|
7
|
+
* manually changed values across deploys. Copied from @matthewbonig/secret (MIT),
|
|
8
|
+
* with the handler Lambda on Node.js 24.
|
|
9
|
+
*/
|
|
10
|
+
class SecretConstructFile extends projen_1.SampleFile {
|
|
11
|
+
constructor(project) {
|
|
12
|
+
super(project, 'src/constructs/Secret.ts', {
|
|
13
|
+
contents: `// Copied from @matthewbonig/secret (MIT, https://github.com/mbonig/secret).
|
|
14
|
+
// This file is generated by Batman and is yours to modify.
|
|
15
|
+
import { join } from 'path';
|
|
16
|
+
import { CustomResource } from 'aws-cdk-lib';
|
|
17
|
+
import { Effect, PolicyStatement } from 'aws-cdk-lib/aws-iam';
|
|
18
|
+
import { Runtime } from 'aws-cdk-lib/aws-lambda';
|
|
19
|
+
import { NodejsFunction } from 'aws-cdk-lib/aws-lambda-nodejs';
|
|
20
|
+
import { Secret as AWSSecret, SecretProps, SecretStringGenerator } from 'aws-cdk-lib/aws-secretsmanager';
|
|
21
|
+
import { Provider } from 'aws-cdk-lib/custom-resources';
|
|
22
|
+
import { Construct } from 'constructs';
|
|
23
|
+
|
|
24
|
+
export class Secret extends AWSSecret {
|
|
25
|
+
constructor(scope: Construct, id: string, props: SecretProps) {
|
|
26
|
+
super(scope, id, {
|
|
27
|
+
...props,
|
|
28
|
+
generateSecretString: undefined, // explicitly set this to undefined so that we never use the built-in functionality
|
|
29
|
+
});
|
|
30
|
+
|
|
31
|
+
if (props.generateSecretString?.secretStringTemplate) {
|
|
32
|
+
// now we're going to use a custom resource for this instead
|
|
33
|
+
this.createCustomResource(props.generateSecretString);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
private createCustomResource(generateSecretString: SecretStringGenerator) {
|
|
38
|
+
const eventHandler = new NodejsFunction(this, 'EventHandlerFunction', {
|
|
39
|
+
runtime: Runtime.NODEJS_24_X,
|
|
40
|
+
entry: join(__dirname, 'handler/Secret.Function.ts'),
|
|
41
|
+
});
|
|
42
|
+
this.grantWrite(eventHandler);
|
|
43
|
+
this.grantRead(eventHandler);
|
|
44
|
+
eventHandler.addToRolePolicy(new PolicyStatement({
|
|
45
|
+
effect: Effect.ALLOW,
|
|
46
|
+
resources: ['*'],
|
|
47
|
+
actions: ['secretsmanager:GetRandomPassword'],
|
|
48
|
+
}));
|
|
49
|
+
const provider = new Provider(this, 'CustomResourceProvider', {
|
|
50
|
+
onEventHandler: eventHandler,
|
|
51
|
+
});
|
|
52
|
+
const customResource = new CustomResource(this, 'GenerateSecretStringCR', {
|
|
53
|
+
resourceType: 'Custom::GenerateSecretString',
|
|
54
|
+
serviceToken: provider.serviceToken,
|
|
55
|
+
properties: {
|
|
56
|
+
Secret: this.secretArn,
|
|
57
|
+
GenerateSecretString: generateSecretString,
|
|
58
|
+
},
|
|
59
|
+
});
|
|
60
|
+
customResource.node.addDependency(this);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
`,
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
exports.SecretConstructFile = SecretConstructFile;
|
|
68
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2VjcmV0Q29uc3RydWN0RmlsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9TZWNyZXRDb25zdHJ1Y3RGaWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLG1DQUFvQztBQUdwQzs7OztHQUlHO0FBQ0gsTUFBYSxtQkFBb0IsU0FBUSxtQkFBVTtJQUNqRCxZQUFZLE9BQTRCO1FBQ3RDLEtBQUssQ0FBQyxPQUFPLEVBQUUsMEJBQTBCLEVBQUU7WUFDekMsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQWtEZjtTQUNJLENBQUMsQ0FBQztJQUNMLENBQUM7Q0FDRjtBQXhERCxrREF3REMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBTYW1wbGVGaWxlIH0gZnJvbSAncHJvamVuJztcbmltcG9ydCB7IEF3c0Nka1R5cGVTY3JpcHRBcHAgfSBmcm9tICdwcm9qZW4vbGliL2F3c2Nkayc7XG5cbi8qKlxuICogU2NhZmZvbGRzIHNyYy9jb25zdHJ1Y3RzL1NlY3JldC50czogYSBTZWNyZXRzIE1hbmFnZXIgc2VjcmV0IHRoYXQga2VlcHNcbiAqIG1hbnVhbGx5IGNoYW5nZWQgdmFsdWVzIGFjcm9zcyBkZXBsb3lzLiBDb3BpZWQgZnJvbSBAbWF0dGhld2JvbmlnL3NlY3JldCAoTUlUKSxcbiAqIHdpdGggdGhlIGhhbmRsZXIgTGFtYmRhIG9uIE5vZGUuanMgMjQuXG4gKi9cbmV4cG9ydCBjbGFzcyBTZWNyZXRDb25zdHJ1Y3RGaWxlIGV4dGVuZHMgU2FtcGxlRmlsZSB7XG4gIGNvbnN0cnVjdG9yKHByb2plY3Q6IEF3c0Nka1R5cGVTY3JpcHRBcHApIHtcbiAgICBzdXBlcihwcm9qZWN0LCAnc3JjL2NvbnN0cnVjdHMvU2VjcmV0LnRzJywge1xuICAgICAgY29udGVudHM6IGAvLyBDb3BpZWQgZnJvbSBAbWF0dGhld2JvbmlnL3NlY3JldCAoTUlULCBodHRwczovL2dpdGh1Yi5jb20vbWJvbmlnL3NlY3JldCkuXG4vLyBUaGlzIGZpbGUgaXMgZ2VuZXJhdGVkIGJ5IEJhdG1hbiBhbmQgaXMgeW91cnMgdG8gbW9kaWZ5LlxuaW1wb3J0IHsgam9pbiB9IGZyb20gJ3BhdGgnO1xuaW1wb3J0IHsgQ3VzdG9tUmVzb3VyY2UgfSBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgeyBFZmZlY3QsIFBvbGljeVN0YXRlbWVudCB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1pYW0nO1xuaW1wb3J0IHsgUnVudGltZSB9IGZyb20gJ2F3cy1jZGstbGliL2F3cy1sYW1iZGEnO1xuaW1wb3J0IHsgTm9kZWpzRnVuY3Rpb24gfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtbGFtYmRhLW5vZGVqcyc7XG5pbXBvcnQgeyBTZWNyZXQgYXMgQVdTU2VjcmV0LCBTZWNyZXRQcm9wcywgU2VjcmV0U3RyaW5nR2VuZXJhdG9yIH0gZnJvbSAnYXdzLWNkay1saWIvYXdzLXNlY3JldHNtYW5hZ2VyJztcbmltcG9ydCB7IFByb3ZpZGVyIH0gZnJvbSAnYXdzLWNkay1saWIvY3VzdG9tLXJlc291cmNlcyc7XG5pbXBvcnQgeyBDb25zdHJ1Y3QgfSBmcm9tICdjb25zdHJ1Y3RzJztcblxuZXhwb3J0IGNsYXNzIFNlY3JldCBleHRlbmRzIEFXU1NlY3JldCB7XG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBTZWNyZXRQcm9wcykge1xuICAgIHN1cGVyKHNjb3BlLCBpZCwge1xuICAgICAgLi4ucHJvcHMsXG4gICAgICBnZW5lcmF0ZVNlY3JldFN0cmluZzogdW5kZWZpbmVkLCAvLyBleHBsaWNpdGx5IHNldCB0aGlzIHRvIHVuZGVmaW5lZCBzbyB0aGF0IHdlIG5ldmVyIHVzZSB0aGUgYnVpbHQtaW4gZnVuY3Rpb25hbGl0eVxuICAgIH0pO1xuXG4gICAgaWYgKHByb3BzLmdlbmVyYXRlU2VjcmV0U3RyaW5nPy5zZWNyZXRTdHJpbmdUZW1wbGF0ZSkge1xuICAgICAgLy8gbm93IHdlJ3JlIGdvaW5nIHRvIHVzZSBhIGN1c3RvbSByZXNvdXJjZSBmb3IgdGhpcyBpbnN0ZWFkXG4gICAgICB0aGlzLmNyZWF0ZUN1c3RvbVJlc291cmNlKHByb3BzLmdlbmVyYXRlU2VjcmV0U3RyaW5nKTtcbiAgICB9XG4gIH1cblxuICBwcml2YXRlIGNyZWF0ZUN1c3RvbVJlc291cmNlKGdlbmVyYXRlU2VjcmV0U3RyaW5nOiBTZWNyZXRTdHJpbmdHZW5lcmF0b3IpIHtcbiAgICBjb25zdCBldmVudEhhbmRsZXIgPSBuZXcgTm9kZWpzRnVuY3Rpb24odGhpcywgJ0V2ZW50SGFuZGxlckZ1bmN0aW9uJywge1xuICAgICAgcnVudGltZTogUnVudGltZS5OT0RFSlNfMjRfWCxcbiAgICAgIGVudHJ5OiBqb2luKF9fZGlybmFtZSwgJ2hhbmRsZXIvU2VjcmV0LkZ1bmN0aW9uLnRzJyksXG4gICAgfSk7XG4gICAgdGhpcy5ncmFudFdyaXRlKGV2ZW50SGFuZGxlcik7XG4gICAgdGhpcy5ncmFudFJlYWQoZXZlbnRIYW5kbGVyKTtcbiAgICBldmVudEhhbmRsZXIuYWRkVG9Sb2xlUG9saWN5KG5ldyBQb2xpY3lTdGF0ZW1lbnQoe1xuICAgICAgZWZmZWN0OiBFZmZlY3QuQUxMT1csXG4gICAgICByZXNvdXJjZXM6IFsnKiddLFxuICAgICAgYWN0aW9uczogWydzZWNyZXRzbWFuYWdlcjpHZXRSYW5kb21QYXNzd29yZCddLFxuICAgIH0pKTtcbiAgICBjb25zdCBwcm92aWRlciA9IG5ldyBQcm92aWRlcih0aGlzLCAnQ3VzdG9tUmVzb3VyY2VQcm92aWRlcicsIHtcbiAgICAgIG9uRXZlbnRIYW5kbGVyOiBldmVudEhhbmRsZXIsXG4gICAgfSk7XG4gICAgY29uc3QgY3VzdG9tUmVzb3VyY2UgPSBuZXcgQ3VzdG9tUmVzb3VyY2UodGhpcywgJ0dlbmVyYXRlU2VjcmV0U3RyaW5nQ1InLCB7XG4gICAgICByZXNvdXJjZVR5cGU6ICdDdXN0b206OkdlbmVyYXRlU2VjcmV0U3RyaW5nJyxcbiAgICAgIHNlcnZpY2VUb2tlbjogcHJvdmlkZXIuc2VydmljZVRva2VuLFxuICAgICAgcHJvcGVydGllczoge1xuICAgICAgICBTZWNyZXQ6IHRoaXMuc2VjcmV0QXJuLFxuICAgICAgICBHZW5lcmF0ZVNlY3JldFN0cmluZzogZ2VuZXJhdGVTZWNyZXRTdHJpbmcsXG4gICAgICB9LFxuICAgIH0pO1xuICAgIGN1c3RvbVJlc291cmNlLm5vZGUuYWRkRGVwZW5kZW5jeSh0aGlzKTtcbiAgfVxufVxuYCxcbiAgICB9KTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { AwsCdkTypeScriptApp } from 'projen/lib/awscdk';
|
|
2
|
+
/**
|
|
3
|
+
* Scaffolds the Lambda handler sources used by the generated Secret construct
|
|
4
|
+
* (src/constructs/Secret.ts). Copied from @matthewbonig/secret (MIT).
|
|
5
|
+
*
|
|
6
|
+
* The entry file is deliberately not named *.lambda.ts, so projen's lambda
|
|
7
|
+
* auto-discovery does not generate a second function class for it.
|
|
8
|
+
*/
|
|
9
|
+
export declare class SecretHandlerFiles {
|
|
10
|
+
constructor(project: AwsCdkTypeScriptApp);
|
|
11
|
+
}
|
|
@@ -0,0 +1,189 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SecretHandlerFiles = void 0;
|
|
4
|
+
const projen_1 = require("projen");
|
|
5
|
+
/**
|
|
6
|
+
* Scaffolds the Lambda handler sources used by the generated Secret construct
|
|
7
|
+
* (src/constructs/Secret.ts). Copied from @matthewbonig/secret (MIT).
|
|
8
|
+
*
|
|
9
|
+
* The entry file is deliberately not named *.lambda.ts, so projen's lambda
|
|
10
|
+
* auto-discovery does not generate a second function class for it.
|
|
11
|
+
*/
|
|
12
|
+
class SecretHandlerFiles {
|
|
13
|
+
constructor(project) {
|
|
14
|
+
new projen_1.SampleFile(project, 'src/constructs/handler/Secret.Function.ts', {
|
|
15
|
+
contents: `// Copied from @matthewbonig/secret (MIT, https://github.com/mbonig/secret).
|
|
16
|
+
// This file is generated by Batman and is yours to modify.
|
|
17
|
+
import { createSecretValue } from './secret/createSecretValue';
|
|
18
|
+
import { updateSecretValue } from './secret/updateSecretValue';
|
|
19
|
+
|
|
20
|
+
interface CustomResource {
|
|
21
|
+
RequestType: 'Create' | 'Update' | 'Delete';
|
|
22
|
+
LogicalResourceId: string;
|
|
23
|
+
ResourceProperties: any;
|
|
24
|
+
OldResourceProperties?: any;
|
|
25
|
+
PhysicalResourceId?: string;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
export const handler = async (event: CustomResource) => {
|
|
29
|
+
console.log('Received event:', JSON.stringify(event, null, 2));
|
|
30
|
+
|
|
31
|
+
switch (event.RequestType) {
|
|
32
|
+
case 'Create':
|
|
33
|
+
console.log(\`Create secret value for secret \${event.LogicalResourceId};\`);
|
|
34
|
+
await createSecretValue({
|
|
35
|
+
secretArn: event.ResourceProperties.Secret,
|
|
36
|
+
generateSecretString: event.ResourceProperties.GenerateSecretString,
|
|
37
|
+
});
|
|
38
|
+
break;
|
|
39
|
+
case 'Update':
|
|
40
|
+
console.log('Updating secret with physical id:', event.PhysicalResourceId);
|
|
41
|
+
await updateSecretValue({
|
|
42
|
+
secretArn: event.ResourceProperties.Secret,
|
|
43
|
+
generateSecretString: event.ResourceProperties.GenerateSecretString,
|
|
44
|
+
oldGenerateSecretString: event.OldResourceProperties.GenerateSecretString,
|
|
45
|
+
});
|
|
46
|
+
break;
|
|
47
|
+
case 'Delete':
|
|
48
|
+
console.log('Deleting secret with physical id:', event.PhysicalResourceId);
|
|
49
|
+
console.log('Doing nothing. deleting secrets requires no work at all.');
|
|
50
|
+
break;
|
|
51
|
+
}
|
|
52
|
+
};
|
|
53
|
+
`,
|
|
54
|
+
});
|
|
55
|
+
new projen_1.SampleFile(project, 'src/constructs/handler/secret/client.ts', {
|
|
56
|
+
contents: `// Copied from @matthewbonig/secret (MIT, https://github.com/mbonig/secret).
|
|
57
|
+
// This file is generated by Batman and is yours to modify.
|
|
58
|
+
import { SecretsManager } from '@aws-sdk/client-secrets-manager';
|
|
59
|
+
|
|
60
|
+
export const client = new SecretsManager({});
|
|
61
|
+
`,
|
|
62
|
+
});
|
|
63
|
+
new projen_1.SampleFile(project, 'src/constructs/handler/secret/createSecretValue.ts', {
|
|
64
|
+
contents: `// Copied from @matthewbonig/secret (MIT, https://github.com/mbonig/secret).
|
|
65
|
+
// This file is generated by Batman and is yours to modify.
|
|
66
|
+
import { GetRandomPasswordCommand, PutSecretValueCommand } from '@aws-sdk/client-secrets-manager';
|
|
67
|
+
import { client } from './client';
|
|
68
|
+
|
|
69
|
+
export async function createSecretValue({ generateSecretString, secretArn }: {
|
|
70
|
+
secretArn: any;
|
|
71
|
+
generateSecretString: any;
|
|
72
|
+
}) {
|
|
73
|
+
// since this is a create, we can just write the value as-is...
|
|
74
|
+
const secretValue = JSON.parse(generateSecretString.secretStringTemplate);
|
|
75
|
+
if (generateSecretString.generateStringKey) {
|
|
76
|
+
const randomValue = await client.send(new GetRandomPasswordCommand({
|
|
77
|
+
ExcludeCharacters: generateSecretString.excludeCharacters,
|
|
78
|
+
ExcludeLowercase: generateSecretString.excludeLowercase,
|
|
79
|
+
ExcludeNumbers: generateSecretString.excludeNumbers,
|
|
80
|
+
ExcludePunctuation: generateSecretString.excludePunctuation,
|
|
81
|
+
ExcludeUppercase: generateSecretString.excludeUppercase,
|
|
82
|
+
IncludeSpace: generateSecretString.includeSpace,
|
|
83
|
+
PasswordLength: generateSecretString.passwordLength,
|
|
84
|
+
RequireEachIncludedType: generateSecretString.requireEachIncludedType,
|
|
85
|
+
}));
|
|
86
|
+
secretValue[generateSecretString.generateStringKey] = randomValue.RandomPassword;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
await client.send(new PutSecretValueCommand({
|
|
90
|
+
SecretId: secretArn,
|
|
91
|
+
SecretString: JSON.stringify(secretValue),
|
|
92
|
+
}));
|
|
93
|
+
}
|
|
94
|
+
`,
|
|
95
|
+
});
|
|
96
|
+
new projen_1.SampleFile(project, 'src/constructs/handler/secret/didRandomPropertiesChange.ts', {
|
|
97
|
+
contents: `// Copied from @matthewbonig/secret (MIT, https://github.com/mbonig/secret).
|
|
98
|
+
// This file is generated by Batman and is yours to modify.
|
|
99
|
+
export function didRandomPropertiesChange(oldGenerateSecretString: any, generateSecretString: any) {
|
|
100
|
+
return oldGenerateSecretString.excludeCharacters !== generateSecretString.excludeCharacters ||
|
|
101
|
+
oldGenerateSecretString.excludeLowercase !== generateSecretString.excludeLowercase ||
|
|
102
|
+
oldGenerateSecretString.excludeNumbers !== generateSecretString.excludeNumbers ||
|
|
103
|
+
oldGenerateSecretString.excludePunctuation !== generateSecretString.excludePunctuation ||
|
|
104
|
+
oldGenerateSecretString.excludeUppercase !== generateSecretString.excludeUppercase ||
|
|
105
|
+
oldGenerateSecretString.includeSpace !== generateSecretString.includeSpace ||
|
|
106
|
+
oldGenerateSecretString.passwordLength !== generateSecretString.passwordLength ||
|
|
107
|
+
oldGenerateSecretString.requireEachIncludedType !== generateSecretString.requireEachIncludedType;
|
|
108
|
+
|
|
109
|
+
}
|
|
110
|
+
`,
|
|
111
|
+
});
|
|
112
|
+
new projen_1.SampleFile(project, 'src/constructs/handler/secret/updateSecretValue.ts', {
|
|
113
|
+
contents: `// Copied from @matthewbonig/secret (MIT, https://github.com/mbonig/secret).
|
|
114
|
+
// This file is generated by Batman and is yours to modify.
|
|
115
|
+
import {
|
|
116
|
+
GetRandomPasswordCommand,
|
|
117
|
+
GetSecretValueCommand,
|
|
118
|
+
PutSecretValueCommand,
|
|
119
|
+
} from '@aws-sdk/client-secrets-manager';
|
|
120
|
+
import { client } from './client';
|
|
121
|
+
import { didRandomPropertiesChange } from './didRandomPropertiesChange';
|
|
122
|
+
|
|
123
|
+
export async function updateSecretValue({ oldGenerateSecretString, generateSecretString, secretArn }: {
|
|
124
|
+
secretArn: any;
|
|
125
|
+
generateSecretString: any;
|
|
126
|
+
oldGenerateSecretString: any;
|
|
127
|
+
}) {
|
|
128
|
+
// let's get the existing value
|
|
129
|
+
const existingSecretValue = await client.send(new GetSecretValueCommand({
|
|
130
|
+
SecretId: secretArn,
|
|
131
|
+
}));
|
|
132
|
+
// and parse the existing value
|
|
133
|
+
let parsedValue: any = {};
|
|
134
|
+
|
|
135
|
+
try {
|
|
136
|
+
parsedValue = JSON.parse(existingSecretValue.SecretString!);
|
|
137
|
+
} catch (err) {
|
|
138
|
+
// the existing value couldn't be parsed, it was probably a random string.
|
|
139
|
+
// let's go ahead and just start fresh then,
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
// now let's check what properties have changed
|
|
143
|
+
const newSecretStringTemplate = JSON.parse(generateSecretString.secretStringTemplate);
|
|
144
|
+
const oldSecretStringTemplate = JSON.parse(oldGenerateSecretString.secretStringTemplate);
|
|
145
|
+
for (const key in newSecretStringTemplate) {
|
|
146
|
+
if (oldSecretStringTemplate[key] === undefined) {
|
|
147
|
+
// ok, so here's something to add...
|
|
148
|
+
parsedValue[key] = newSecretStringTemplate[key];
|
|
149
|
+
}
|
|
150
|
+
if (oldSecretStringTemplate[key] !== newSecretStringTemplate[key]) {
|
|
151
|
+
// ok, so here's something to update...
|
|
152
|
+
parsedValue[key] = newSecretStringTemplate[key];
|
|
153
|
+
}
|
|
154
|
+
}
|
|
155
|
+
for (const key in oldSecretStringTemplate) {
|
|
156
|
+
if (newSecretStringTemplate[key] === undefined) {
|
|
157
|
+
// ok, so here's something to remove...
|
|
158
|
+
delete parsedValue[key];
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
// did anything around the GenerateStringKey change?
|
|
163
|
+
if (didRandomPropertiesChange(oldGenerateSecretString, generateSecretString)
|
|
164
|
+
|| generateSecretString.generateStringKey !== oldGenerateSecretString.generateStringKey) {
|
|
165
|
+
const { RandomPassword: newRandomValue } = await client.send(new GetRandomPasswordCommand({
|
|
166
|
+
ExcludeLowercase: generateSecretString.excludeLowercase === 'true',
|
|
167
|
+
ExcludeNumbers: generateSecretString.excludeNumbers === 'true',
|
|
168
|
+
ExcludePunctuation: generateSecretString.excludePunctuation === 'true',
|
|
169
|
+
ExcludeUppercase: generateSecretString.excludeUppercase === 'true',
|
|
170
|
+
IncludeSpace: generateSecretString.includeSpace === 'true',
|
|
171
|
+
PasswordLength: +generateSecretString.passwordLength,
|
|
172
|
+
RequireEachIncludedType: generateSecretString.requireEachIncludedType === 'true',
|
|
173
|
+
}));
|
|
174
|
+
parsedValue[generateSecretString.generateStringKey] = newRandomValue;
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
// update the secret in AWS
|
|
178
|
+
await client.send(new PutSecretValueCommand({
|
|
179
|
+
SecretId: secretArn,
|
|
180
|
+
SecretString: JSON.stringify(parsedValue),
|
|
181
|
+
}));
|
|
182
|
+
|
|
183
|
+
}
|
|
184
|
+
`,
|
|
185
|
+
});
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
exports.SecretHandlerFiles = SecretHandlerFiles;
|
|
189
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU2VjcmV0SGFuZGxlckZpbGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL1NlY3JldEhhbmRsZXJGaWxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtQ0FBb0M7QUFHcEM7Ozs7OztHQU1HO0FBQ0gsTUFBYSxrQkFBa0I7SUFDN0IsWUFBWSxPQUE0QjtRQUN0QyxJQUFJLG1CQUFVLENBQUMsT0FBTyxFQUFFLDJDQUEyQyxFQUFFO1lBQ25FLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0FzQ2Y7U0FDSSxDQUFDLENBQUM7UUFFSCxJQUFJLG1CQUFVLENBQUMsT0FBTyxFQUFFLHlDQUF5QyxFQUFFO1lBQ2pFLFFBQVEsRUFBRTs7Ozs7Q0FLZjtTQUNJLENBQUMsQ0FBQztRQUVILElBQUksbUJBQVUsQ0FBQyxPQUFPLEVBQUUsb0RBQW9ELEVBQUU7WUFDNUUsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0E4QmY7U0FDSSxDQUFDLENBQUM7UUFFSCxJQUFJLG1CQUFVLENBQUMsT0FBTyxFQUFFLDREQUE0RCxFQUFFO1lBQ3BGLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7OztDQWFmO1NBQ0ksQ0FBQyxDQUFDO1FBRUgsSUFBSSxtQkFBVSxDQUFDLE9BQU8sRUFBRSxvREFBb0QsRUFBRTtZQUM1RSxRQUFRLEVBQUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBdUVmO1NBQ0ksQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGO0FBbkxELGdEQW1MQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFNhbXBsZUZpbGUgfSBmcm9tICdwcm9qZW4nO1xuaW1wb3J0IHsgQXdzQ2RrVHlwZVNjcmlwdEFwcCB9IGZyb20gJ3Byb2plbi9saWIvYXdzY2RrJztcblxuLyoqXG4gKiBTY2FmZm9sZHMgdGhlIExhbWJkYSBoYW5kbGVyIHNvdXJjZXMgdXNlZCBieSB0aGUgZ2VuZXJhdGVkIFNlY3JldCBjb25zdHJ1Y3RcbiAqIChzcmMvY29uc3RydWN0cy9TZWNyZXQudHMpLiBDb3BpZWQgZnJvbSBAbWF0dGhld2JvbmlnL3NlY3JldCAoTUlUKS5cbiAqXG4gKiBUaGUgZW50cnkgZmlsZSBpcyBkZWxpYmVyYXRlbHkgbm90IG5hbWVkICoubGFtYmRhLnRzLCBzbyBwcm9qZW4ncyBsYW1iZGFcbiAqIGF1dG8tZGlzY292ZXJ5IGRvZXMgbm90IGdlbmVyYXRlIGEgc2Vjb25kIGZ1bmN0aW9uIGNsYXNzIGZvciBpdC5cbiAqL1xuZXhwb3J0IGNsYXNzIFNlY3JldEhhbmRsZXJGaWxlcyB7XG4gIGNvbnN0cnVjdG9yKHByb2plY3Q6IEF3c0Nka1R5cGVTY3JpcHRBcHApIHtcbiAgICBuZXcgU2FtcGxlRmlsZShwcm9qZWN0LCAnc3JjL2NvbnN0cnVjdHMvaGFuZGxlci9TZWNyZXQuRnVuY3Rpb24udHMnLCB7XG4gICAgICBjb250ZW50czogYC8vIENvcGllZCBmcm9tIEBtYXR0aGV3Ym9uaWcvc2VjcmV0IChNSVQsIGh0dHBzOi8vZ2l0aHViLmNvbS9tYm9uaWcvc2VjcmV0KS5cbi8vIFRoaXMgZmlsZSBpcyBnZW5lcmF0ZWQgYnkgQmF0bWFuIGFuZCBpcyB5b3VycyB0byBtb2RpZnkuXG5pbXBvcnQgeyBjcmVhdGVTZWNyZXRWYWx1ZSB9IGZyb20gJy4vc2VjcmV0L2NyZWF0ZVNlY3JldFZhbHVlJztcbmltcG9ydCB7IHVwZGF0ZVNlY3JldFZhbHVlIH0gZnJvbSAnLi9zZWNyZXQvdXBkYXRlU2VjcmV0VmFsdWUnO1xuXG5pbnRlcmZhY2UgQ3VzdG9tUmVzb3VyY2Uge1xuICBSZXF1ZXN0VHlwZTogJ0NyZWF0ZScgfCAnVXBkYXRlJyB8ICdEZWxldGUnO1xuICBMb2dpY2FsUmVzb3VyY2VJZDogc3RyaW5nO1xuICBSZXNvdXJjZVByb3BlcnRpZXM6IGFueTtcbiAgT2xkUmVzb3VyY2VQcm9wZXJ0aWVzPzogYW55O1xuICBQaHlzaWNhbFJlc291cmNlSWQ/OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBjb25zdCBoYW5kbGVyID0gYXN5bmMgKGV2ZW50OiBDdXN0b21SZXNvdXJjZSkgPT4ge1xuICBjb25zb2xlLmxvZygnUmVjZWl2ZWQgZXZlbnQ6JywgSlNPTi5zdHJpbmdpZnkoZXZlbnQsIG51bGwsIDIpKTtcblxuICBzd2l0Y2ggKGV2ZW50LlJlcXVlc3RUeXBlKSB7XG4gICAgY2FzZSAnQ3JlYXRlJzpcbiAgICAgIGNvbnNvbGUubG9nKFxcYENyZWF0ZSBzZWNyZXQgdmFsdWUgZm9yIHNlY3JldCBcXCR7ZXZlbnQuTG9naWNhbFJlc291cmNlSWR9O1xcYCk7XG4gICAgICBhd2FpdCBjcmVhdGVTZWNyZXRWYWx1ZSh7XG4gICAgICAgIHNlY3JldEFybjogZXZlbnQuUmVzb3VyY2VQcm9wZXJ0aWVzLlNlY3JldCxcbiAgICAgICAgZ2VuZXJhdGVTZWNyZXRTdHJpbmc6IGV2ZW50LlJlc291cmNlUHJvcGVydGllcy5HZW5lcmF0ZVNlY3JldFN0cmluZyxcbiAgICAgIH0pO1xuICAgICAgYnJlYWs7XG4gICAgY2FzZSAnVXBkYXRlJzpcbiAgICAgIGNvbnNvbGUubG9nKCdVcGRhdGluZyBzZWNyZXQgd2l0aCBwaHlzaWNhbCBpZDonLCBldmVudC5QaHlzaWNhbFJlc291cmNlSWQpO1xuICAgICAgYXdhaXQgdXBkYXRlU2VjcmV0VmFsdWUoe1xuICAgICAgICBzZWNyZXRBcm46IGV2ZW50LlJlc291cmNlUHJvcGVydGllcy5TZWNyZXQsXG4gICAgICAgIGdlbmVyYXRlU2VjcmV0U3RyaW5nOiBldmVudC5SZXNvdXJjZVByb3BlcnRpZXMuR2VuZXJhdGVTZWNyZXRTdHJpbmcsXG4gICAgICAgIG9sZEdlbmVyYXRlU2VjcmV0U3RyaW5nOiBldmVudC5PbGRSZXNvdXJjZVByb3BlcnRpZXMuR2VuZXJhdGVTZWNyZXRTdHJpbmcsXG4gICAgICB9KTtcbiAgICAgIGJyZWFrO1xuICAgIGNhc2UgJ0RlbGV0ZSc6XG4gICAgICBjb25zb2xlLmxvZygnRGVsZXRpbmcgc2VjcmV0IHdpdGggcGh5c2ljYWwgaWQ6JywgZXZlbnQuUGh5c2ljYWxSZXNvdXJjZUlkKTtcbiAgICAgIGNvbnNvbGUubG9nKCdEb2luZyBub3RoaW5nLiBkZWxldGluZyBzZWNyZXRzIHJlcXVpcmVzIG5vIHdvcmsgYXQgYWxsLicpO1xuICAgICAgYnJlYWs7XG4gIH1cbn07XG5gLFxuICAgIH0pO1xuXG4gICAgbmV3IFNhbXBsZUZpbGUocHJvamVjdCwgJ3NyYy9jb25zdHJ1Y3RzL2hhbmRsZXIvc2VjcmV0L2NsaWVudC50cycsIHtcbiAgICAgIGNvbnRlbnRzOiBgLy8gQ29waWVkIGZyb20gQG1hdHRoZXdib25pZy9zZWNyZXQgKE1JVCwgaHR0cHM6Ly9naXRodWIuY29tL21ib25pZy9zZWNyZXQpLlxuLy8gVGhpcyBmaWxlIGlzIGdlbmVyYXRlZCBieSBCYXRtYW4gYW5kIGlzIHlvdXJzIHRvIG1vZGlmeS5cbmltcG9ydCB7IFNlY3JldHNNYW5hZ2VyIH0gZnJvbSAnQGF3cy1zZGsvY2xpZW50LXNlY3JldHMtbWFuYWdlcic7XG5cbmV4cG9ydCBjb25zdCBjbGllbnQgPSBuZXcgU2VjcmV0c01hbmFnZXIoe30pO1xuYCxcbiAgICB9KTtcblxuICAgIG5ldyBTYW1wbGVGaWxlKHByb2plY3QsICdzcmMvY29uc3RydWN0cy9oYW5kbGVyL3NlY3JldC9jcmVhdGVTZWNyZXRWYWx1ZS50cycsIHtcbiAgICAgIGNvbnRlbnRzOiBgLy8gQ29waWVkIGZyb20gQG1hdHRoZXdib25pZy9zZWNyZXQgKE1JVCwgaHR0cHM6Ly9naXRodWIuY29tL21ib25pZy9zZWNyZXQpLlxuLy8gVGhpcyBmaWxlIGlzIGdlbmVyYXRlZCBieSBCYXRtYW4gYW5kIGlzIHlvdXJzIHRvIG1vZGlmeS5cbmltcG9ydCB7IEdldFJhbmRvbVBhc3N3b3JkQ29tbWFuZCwgUHV0U2VjcmV0VmFsdWVDb21tYW5kIH0gZnJvbSAnQGF3cy1zZGsvY2xpZW50LXNlY3JldHMtbWFuYWdlcic7XG5pbXBvcnQgeyBjbGllbnQgfSBmcm9tICcuL2NsaWVudCc7XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBjcmVhdGVTZWNyZXRWYWx1ZSh7IGdlbmVyYXRlU2VjcmV0U3RyaW5nLCBzZWNyZXRBcm4gfToge1xuICBzZWNyZXRBcm46IGFueTtcbiAgZ2VuZXJhdGVTZWNyZXRTdHJpbmc6IGFueTtcbn0pIHtcbiAgLy8gc2luY2UgdGhpcyBpcyBhIGNyZWF0ZSwgd2UgY2FuIGp1c3Qgd3JpdGUgdGhlIHZhbHVlIGFzLWlzLi4uXG4gIGNvbnN0IHNlY3JldFZhbHVlID0gSlNPTi5wYXJzZShnZW5lcmF0ZVNlY3JldFN0cmluZy5zZWNyZXRTdHJpbmdUZW1wbGF0ZSk7XG4gIGlmIChnZW5lcmF0ZVNlY3JldFN0cmluZy5nZW5lcmF0ZVN0cmluZ0tleSkge1xuICAgIGNvbnN0IHJhbmRvbVZhbHVlID0gYXdhaXQgY2xpZW50LnNlbmQobmV3IEdldFJhbmRvbVBhc3N3b3JkQ29tbWFuZCh7XG4gICAgICBFeGNsdWRlQ2hhcmFjdGVyczogZ2VuZXJhdGVTZWNyZXRTdHJpbmcuZXhjbHVkZUNoYXJhY3RlcnMsXG4gICAgICBFeGNsdWRlTG93ZXJjYXNlOiBnZW5lcmF0ZVNlY3JldFN0cmluZy5leGNsdWRlTG93ZXJjYXNlLFxuICAgICAgRXhjbHVkZU51bWJlcnM6IGdlbmVyYXRlU2VjcmV0U3RyaW5nLmV4Y2x1ZGVOdW1iZXJzLFxuICAgICAgRXhjbHVkZVB1bmN0dWF0aW9uOiBnZW5lcmF0ZVNlY3JldFN0cmluZy5leGNsdWRlUHVuY3R1YXRpb24sXG4gICAgICBFeGNsdWRlVXBwZXJjYXNlOiBnZW5lcmF0ZVNlY3JldFN0cmluZy5leGNsdWRlVXBwZXJjYXNlLFxuICAgICAgSW5jbHVkZVNwYWNlOiBnZW5lcmF0ZVNlY3JldFN0cmluZy5pbmNsdWRlU3BhY2UsXG4gICAgICBQYXNzd29yZExlbmd0aDogZ2VuZXJhdGVTZWNyZXRTdHJpbmcucGFzc3dvcmRMZW5ndGgsXG4gICAgICBSZXF1aXJlRWFjaEluY2x1ZGVkVHlwZTogZ2VuZXJhdGVTZWNyZXRTdHJpbmcucmVxdWlyZUVhY2hJbmNsdWRlZFR5cGUsXG4gICAgfSkpO1xuICAgIHNlY3JldFZhbHVlW2dlbmVyYXRlU2VjcmV0U3RyaW5nLmdlbmVyYXRlU3RyaW5nS2V5XSA9IHJhbmRvbVZhbHVlLlJhbmRvbVBhc3N3b3JkO1xuICB9XG5cbiAgYXdhaXQgY2xpZW50LnNlbmQobmV3IFB1dFNlY3JldFZhbHVlQ29tbWFuZCh7XG4gICAgU2VjcmV0SWQ6IHNlY3JldEFybixcbiAgICBTZWNyZXRTdHJpbmc6IEpTT04uc3RyaW5naWZ5KHNlY3JldFZhbHVlKSxcbiAgfSkpO1xufVxuYCxcbiAgICB9KTtcblxuICAgIG5ldyBTYW1wbGVGaWxlKHByb2plY3QsICdzcmMvY29uc3RydWN0cy9oYW5kbGVyL3NlY3JldC9kaWRSYW5kb21Qcm9wZXJ0aWVzQ2hhbmdlLnRzJywge1xuICAgICAgY29udGVudHM6IGAvLyBDb3BpZWQgZnJvbSBAbWF0dGhld2JvbmlnL3NlY3JldCAoTUlULCBodHRwczovL2dpdGh1Yi5jb20vbWJvbmlnL3NlY3JldCkuXG4vLyBUaGlzIGZpbGUgaXMgZ2VuZXJhdGVkIGJ5IEJhdG1hbiBhbmQgaXMgeW91cnMgdG8gbW9kaWZ5LlxuZXhwb3J0IGZ1bmN0aW9uIGRpZFJhbmRvbVByb3BlcnRpZXNDaGFuZ2Uob2xkR2VuZXJhdGVTZWNyZXRTdHJpbmc6IGFueSwgZ2VuZXJhdGVTZWNyZXRTdHJpbmc6IGFueSkge1xuICByZXR1cm4gb2xkR2VuZXJhdGVTZWNyZXRTdHJpbmcuZXhjbHVkZUNoYXJhY3RlcnMgIT09IGdlbmVyYXRlU2VjcmV0U3RyaW5nLmV4Y2x1ZGVDaGFyYWN0ZXJzIHx8XG4gICAgb2xkR2VuZXJhdGVTZWNyZXRTdHJpbmcuZXhjbHVkZUxvd2VyY2FzZSAhPT0gZ2VuZXJhdGVTZWNyZXRTdHJpbmcuZXhjbHVkZUxvd2VyY2FzZSB8fFxuICAgIG9sZEdlbmVyYXRlU2VjcmV0U3RyaW5nLmV4Y2x1ZGVOdW1iZXJzICE9PSBnZW5lcmF0ZVNlY3JldFN0cmluZy5leGNsdWRlTnVtYmVycyB8fFxuICAgIG9sZEdlbmVyYXRlU2VjcmV0U3RyaW5nLmV4Y2x1ZGVQdW5jdHVhdGlvbiAhPT0gZ2VuZXJhdGVTZWNyZXRTdHJpbmcuZXhjbHVkZVB1bmN0dWF0aW9uIHx8XG4gICAgb2xkR2VuZXJhdGVTZWNyZXRTdHJpbmcuZXhjbHVkZVVwcGVyY2FzZSAhPT0gZ2VuZXJhdGVTZWNyZXRTdHJpbmcuZXhjbHVkZVVwcGVyY2FzZSB8fFxuICAgIG9sZEdlbmVyYXRlU2VjcmV0U3RyaW5nLmluY2x1ZGVTcGFjZSAhPT0gZ2VuZXJhdGVTZWNyZXRTdHJpbmcuaW5jbHVkZVNwYWNlIHx8XG4gICAgb2xkR2VuZXJhdGVTZWNyZXRTdHJpbmcucGFzc3dvcmRMZW5ndGggIT09IGdlbmVyYXRlU2VjcmV0U3RyaW5nLnBhc3N3b3JkTGVuZ3RoIHx8XG4gICAgb2xkR2VuZXJhdGVTZWNyZXRTdHJpbmcucmVxdWlyZUVhY2hJbmNsdWRlZFR5cGUgIT09IGdlbmVyYXRlU2VjcmV0U3RyaW5nLnJlcXVpcmVFYWNoSW5jbHVkZWRUeXBlO1xuXG59XG5gLFxuICAgIH0pO1xuXG4gICAgbmV3IFNhbXBsZUZpbGUocHJvamVjdCwgJ3NyYy9jb25zdHJ1Y3RzL2hhbmRsZXIvc2VjcmV0L3VwZGF0ZVNlY3JldFZhbHVlLnRzJywge1xuICAgICAgY29udGVudHM6IGAvLyBDb3BpZWQgZnJvbSBAbWF0dGhld2JvbmlnL3NlY3JldCAoTUlULCBodHRwczovL2dpdGh1Yi5jb20vbWJvbmlnL3NlY3JldCkuXG4vLyBUaGlzIGZpbGUgaXMgZ2VuZXJhdGVkIGJ5IEJhdG1hbiBhbmQgaXMgeW91cnMgdG8gbW9kaWZ5LlxuaW1wb3J0IHtcbiAgR2V0UmFuZG9tUGFzc3dvcmRDb21tYW5kLFxuICBHZXRTZWNyZXRWYWx1ZUNvbW1hbmQsXG4gIFB1dFNlY3JldFZhbHVlQ29tbWFuZCxcbn0gZnJvbSAnQGF3cy1zZGsvY2xpZW50LXNlY3JldHMtbWFuYWdlcic7XG5pbXBvcnQgeyBjbGllbnQgfSBmcm9tICcuL2NsaWVudCc7XG5pbXBvcnQgeyBkaWRSYW5kb21Qcm9wZXJ0aWVzQ2hhbmdlIH0gZnJvbSAnLi9kaWRSYW5kb21Qcm9wZXJ0aWVzQ2hhbmdlJztcblxuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHVwZGF0ZVNlY3JldFZhbHVlKHsgb2xkR2VuZXJhdGVTZWNyZXRTdHJpbmcsIGdlbmVyYXRlU2VjcmV0U3RyaW5nLCBzZWNyZXRBcm4gfToge1xuICBzZWNyZXRBcm46IGFueTtcbiAgZ2VuZXJhdGVTZWNyZXRTdHJpbmc6IGFueTtcbiAgb2xkR2VuZXJhdGVTZWNyZXRTdHJpbmc6IGFueTtcbn0pIHtcbiAgLy8gbGV0J3MgZ2V0IHRoZSBleGlzdGluZyB2YWx1ZVxuICBjb25zdCBleGlzdGluZ1NlY3JldFZhbHVlID0gYXdhaXQgY2xpZW50LnNlbmQobmV3IEdldFNlY3JldFZhbHVlQ29tbWFuZCh7XG4gICAgU2VjcmV0SWQ6IHNlY3JldEFybixcbiAgfSkpO1xuICAvLyBhbmQgcGFyc2UgdGhlIGV4aXN0aW5nIHZhbHVlXG4gIGxldCBwYXJzZWRWYWx1ZTogYW55ID0ge307XG5cbiAgdHJ5IHtcbiAgICBwYXJzZWRWYWx1ZSA9IEpTT04ucGFyc2UoZXhpc3RpbmdTZWNyZXRWYWx1ZS5TZWNyZXRTdHJpbmchKTtcbiAgfSBjYXRjaCAoZXJyKSB7XG4gICAgLy8gdGhlIGV4aXN0aW5nIHZhbHVlIGNvdWxkbid0IGJlIHBhcnNlZCwgaXQgd2FzIHByb2JhYmx5IGEgcmFuZG9tIHN0cmluZy5cbiAgICAvLyBsZXQncyBnbyBhaGVhZCBhbmQganVzdCBzdGFydCBmcmVzaCB0aGVuLFxuICB9XG5cbiAgLy8gbm93IGxldCdzIGNoZWNrIHdoYXQgcHJvcGVydGllcyBoYXZlIGNoYW5nZWRcbiAgY29uc3QgbmV3U2VjcmV0U3RyaW5nVGVtcGxhdGUgPSBKU09OLnBhcnNlKGdlbmVyYXRlU2VjcmV0U3RyaW5nLnNlY3JldFN0cmluZ1RlbXBsYXRlKTtcbiAgY29uc3Qgb2xkU2VjcmV0U3RyaW5nVGVtcGxhdGUgPSBKU09OLnBhcnNlKG9sZEdlbmVyYXRlU2VjcmV0U3RyaW5nLnNlY3JldFN0cmluZ1RlbXBsYXRlKTtcbiAgZm9yIChjb25zdCBrZXkgaW4gbmV3U2VjcmV0U3RyaW5nVGVtcGxhdGUpIHtcbiAgICBpZiAob2xkU2VjcmV0U3RyaW5nVGVtcGxhdGVba2V5XSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAvLyBvaywgc28gaGVyZSdzIHNvbWV0aGluZyB0byBhZGQuLi5cbiAgICAgIHBhcnNlZFZhbHVlW2tleV0gPSBuZXdTZWNyZXRTdHJpbmdUZW1wbGF0ZVtrZXldO1xuICAgIH1cbiAgICBpZiAob2xkU2VjcmV0U3RyaW5nVGVtcGxhdGVba2V5XSAhPT0gbmV3U2VjcmV0U3RyaW5nVGVtcGxhdGVba2V5XSkge1xuICAgICAgLy8gb2ssIHNvIGhlcmUncyBzb21ldGhpbmcgdG8gdXBkYXRlLi4uXG4gICAgICBwYXJzZWRWYWx1ZVtrZXldID0gbmV3U2VjcmV0U3RyaW5nVGVtcGxhdGVba2V5XTtcbiAgICB9XG4gIH1cbiAgZm9yIChjb25zdCBrZXkgaW4gb2xkU2VjcmV0U3RyaW5nVGVtcGxhdGUpIHtcbiAgICBpZiAobmV3U2VjcmV0U3RyaW5nVGVtcGxhdGVba2V5XSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAvLyBvaywgc28gaGVyZSdzIHNvbWV0aGluZyB0byByZW1vdmUuLi5cbiAgICAgIGRlbGV0ZSBwYXJzZWRWYWx1ZVtrZXldO1xuICAgIH1cbiAgfVxuXG4gIC8vIGRpZCBhbnl0aGluZyBhcm91bmQgdGhlIEdlbmVyYXRlU3RyaW5nS2V5IGNoYW5nZT9cbiAgaWYgKGRpZFJhbmRvbVByb3BlcnRpZXNDaGFuZ2Uob2xkR2VuZXJhdGVTZWNyZXRTdHJpbmcsIGdlbmVyYXRlU2VjcmV0U3RyaW5nKVxuICAgIHx8IGdlbmVyYXRlU2VjcmV0U3RyaW5nLmdlbmVyYXRlU3RyaW5nS2V5ICE9PSBvbGRHZW5lcmF0ZVNlY3JldFN0cmluZy5nZW5lcmF0ZVN0cmluZ0tleSkge1xuICAgIGNvbnN0IHsgUmFuZG9tUGFzc3dvcmQ6IG5ld1JhbmRvbVZhbHVlIH0gPSBhd2FpdCBjbGllbnQuc2VuZChuZXcgR2V0UmFuZG9tUGFzc3dvcmRDb21tYW5kKHtcbiAgICAgIEV4Y2x1ZGVMb3dlcmNhc2U6IGdlbmVyYXRlU2VjcmV0U3RyaW5nLmV4Y2x1ZGVMb3dlcmNhc2UgPT09ICd0cnVlJyxcbiAgICAgIEV4Y2x1ZGVOdW1iZXJzOiBnZW5lcmF0ZVNlY3JldFN0cmluZy5leGNsdWRlTnVtYmVycyA9PT0gJ3RydWUnLFxuICAgICAgRXhjbHVkZVB1bmN0dWF0aW9uOiBnZW5lcmF0ZVNlY3JldFN0cmluZy5leGNsdWRlUHVuY3R1YXRpb24gPT09ICd0cnVlJyxcbiAgICAgIEV4Y2x1ZGVVcHBlcmNhc2U6IGdlbmVyYXRlU2VjcmV0U3RyaW5nLmV4Y2x1ZGVVcHBlcmNhc2UgPT09ICd0cnVlJyxcbiAgICAgIEluY2x1ZGVTcGFjZTogZ2VuZXJhdGVTZWNyZXRTdHJpbmcuaW5jbHVkZVNwYWNlID09PSAndHJ1ZScsXG4gICAgICBQYXNzd29yZExlbmd0aDogK2dlbmVyYXRlU2VjcmV0U3RyaW5nLnBhc3N3b3JkTGVuZ3RoLFxuICAgICAgUmVxdWlyZUVhY2hJbmNsdWRlZFR5cGU6IGdlbmVyYXRlU2VjcmV0U3RyaW5nLnJlcXVpcmVFYWNoSW5jbHVkZWRUeXBlID09PSAndHJ1ZScsXG4gICAgfSkpO1xuICAgIHBhcnNlZFZhbHVlW2dlbmVyYXRlU2VjcmV0U3RyaW5nLmdlbmVyYXRlU3RyaW5nS2V5XSA9IG5ld1JhbmRvbVZhbHVlO1xuICB9XG5cbiAgLy8gdXBkYXRlIHRoZSBzZWNyZXQgaW4gQVdTXG4gIGF3YWl0IGNsaWVudC5zZW5kKG5ldyBQdXRTZWNyZXRWYWx1ZUNvbW1hbmQoe1xuICAgIFNlY3JldElkOiBzZWNyZXRBcm4sXG4gICAgU2VjcmV0U3RyaW5nOiBKU09OLnN0cmluZ2lmeShwYXJzZWRWYWx1ZSksXG4gIH0pKTtcblxufVxuYCxcbiAgICB9KTtcbiAgfVxufVxuIl19
|
|
@@ -31,7 +31,7 @@ const DEFAULT_GITHUB_OWNER = 'macedon-technologies';
|
|
|
31
31
|
* workflows that wire them together) is templated.
|
|
32
32
|
*/
|
|
33
33
|
class SoftwareFactoryFiles {
|
|
34
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.SoftwareFactoryFiles", version: "1.
|
|
34
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.SoftwareFactoryFiles", version: "1.27.0" };
|
|
35
35
|
constructor(project, options) {
|
|
36
36
|
const { repoName, actionVersions } = options;
|
|
37
37
|
const githubOwner = options.githubOwner || DEFAULT_GITHUB_OWNER;
|
|
@@ -263,12 +263,17 @@ globalArguments:
|
|
|
263
263
|
work:
|
|
264
264
|
mode: interactive
|
|
265
265
|
systemPrompt: >-
|
|
266
|
-
Before opening the PR, fetch the real pre-pr-verify
|
|
267
|
-
with \`swamp data
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
266
|
+
Before opening the PR, fetch the real pre-pr-verify verification
|
|
267
|
+
report with \`swamp data query 'modelType == "workflow" &&
|
|
268
|
+
modelName == "pre-pr-verify" && name ==
|
|
269
|
+
"report-swamp-verification-summary"' --select content --json\`,
|
|
270
|
+
take the entry that names this run's head sha (an error report is
|
|
271
|
+
stored under the same name if the report could not run — never
|
|
272
|
+
embed one). If no entry names the head sha, stop and report that
|
|
273
|
+
— do not open the PR. Otherwise include the entry's content
|
|
274
|
+
verbatim (as a markdown block, e.g. under a "Pre-PR verification"
|
|
275
|
+
heading) in the PR body — never just assert in prose that checks
|
|
276
|
+
passed. Also fetch this same run's manifest step
|
|
272
277
|
output (\`swamp data query 'modelName == "${shellManifestModel}" &&
|
|
273
278
|
name == "result"' --select attributes.stdout --json\`, take the
|
|
274
279
|
latest) and append it to the PR body as
|
|
@@ -352,4 +357,4 @@ methods: {}
|
|
|
352
357
|
}
|
|
353
358
|
}
|
|
354
359
|
exports.SoftwareFactoryModels = SoftwareFactoryModels;
|
|
355
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU29mdHdhcmVGYWN0b3J5TW9kZWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL1NvZnR3YXJlRmFjdG9yeU1vZGVscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtQ0FBb0M7QUFDcEMsbUNBQW9DO0FBcUJwQzs7Ozs7R0FLRztBQUNILE1BQWEscUJBQXFCO0lBQ2hDLFlBQVksT0FBb0IsRUFBRSxPQUFxQztRQUNyRSxNQUFNLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQUUsR0FBRyxPQUFPLENBQUM7UUFDdEQsTUFBTSxJQUFJLEdBQUcsR0FBRyxXQUFXLElBQUksUUFBUSxFQUFFLENBQUM7UUFDMUMsTUFBTSxXQUFXLEdBQUcsR0FBRyxRQUFRLFNBQVMsQ0FBQztRQUN6QyxNQUFNLE9BQU8sR0FBRyxHQUFHLFFBQVEsS0FBSyxDQUFDO1FBQ2pDLE1BQU0sVUFBVSxHQUFHLEdBQUcsUUFBUSxRQUFRLENBQUM7UUFDdkMsTUFBTSxzQkFBc0IsR0FBRyxHQUFHLFFBQVEscUJBQXFCLENBQUM7UUFDaEUsTUFBTSxrQkFBa0IsR0FBRyxHQUFHLFFBQVEsaUJBQWlCLENBQUM7UUFDeEQsTUFBTSxZQUFZLEdBQUcsR0FBRyxRQUFRLFVBQVUsQ0FBQztRQUMzQyxNQUFNLFlBQVksR0FBRyxHQUFHLFFBQVEsVUFBVSxDQUFDO1FBRTNDLElBQUksbUJBQVUsQ0FBQyxPQUFPLEVBQUUsNEJBQTRCLE9BQU8sT0FBTyxFQUFFO1lBQ2xFLFFBQVEsRUFBRTs7TUFFVixJQUFBLG1CQUFVLEdBQUU7UUFDVixPQUFPOzs7OzJCQUlZLFlBQVk7V0FDNUIsV0FBVzs7Q0FFckI7U0FDSSxDQUFDLENBQUM7UUFFSCxJQUFJLG1CQUFVLENBQUMsT0FBTyxFQUFFLDJCQUEyQixXQUFXLE9BQU8sRUFBRTtZQUNyRSxRQUFRLEVBQUU7O01BRVYsSUFBQSxtQkFBVSxHQUFFO1FBQ1YsV0FBVzs7Ozs7Q0FLbEI7U0FDSSxDQUFDLENBQUM7UUFFSCxLQUFLLE1BQU0sSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLHNCQUFzQixFQUFFLGtCQUFrQixDQUFDLEVBQUUsQ0FBQztZQUM1RSxJQUFJLG1CQUFVLENBQUMsT0FBTyxFQUFFLHdCQUF3QixJQUFJLE9BQU8sRUFBRTtnQkFDM0QsUUFBUSxFQUFFOztNQUVaLElBQUEsbUJBQVUsR0FBRTtRQUNWLElBQUk7Ozs7O0NBS1g7YUFDTSxDQUFDLENBQUM7UUFDTCxDQUFDO1FBRUQsSUFBSSxtQkFBVSxDQUFDLE9BQU8sRUFBRSxrQ0FBa0MsWUFBWSxPQUFPLEVBQUU7WUFDN0UsUUFBUSxFQUFFOztNQUVWLElBQUEsbUJBQVUsR0FBRTtRQUNWLFlBQVk7Ozs7Ozs7Ozs7Ozs7Ozs7OztZQWtCUixJQUFJLGNBQWMsV0FBVzs7WUFFN0IsV0FBVzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7c0RBNEwrQixrQkFBa0I7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztzQkF3QmxELE9BQU87a0JBQ1gsSUFBSTsyQ0FDcUIsVUFBVTs7Ozs7Ozs7Ozs7Z0RBV0wsVUFBVTtZQUM5QyxJQUFJOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBd0NmO1NBQ0ksQ0FBQyxDQUFDO0lBQ0wsQ0FBQztDQUNGO0FBelZELHNEQXlWQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHJhbmRvbVVVSUQgfSBmcm9tICdjcnlwdG8nO1xuaW1wb3J0IHsgU2FtcGxlRmlsZSB9IGZyb20gJ3Byb2plbic7XG5pbXBvcnQgeyBOb2RlUHJvamVjdCB9IGZyb20gJ3Byb2plbi9saWIvamF2YXNjcmlwdCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgU29mdHdhcmVGYWN0b3J5TW9kZWxzT3B0aW9ucyB7XG4gIC8qKlxuICAgKiBUaGUgYmFyZSByZXBvIG5hbWUgKGUuZy4gYGV4cGVuc2UtdHJhY2tlcmApLCB1c2VkIHRvIGRlcml2ZSBtb2RlbCBuYW1lc1xuICAgKiBsaWtlIGA8cmVwb05hbWU+LWZhY3RvcnlgLCBgPHJlcG9OYW1lPi1zaGVsbGAsIGA8cmVwb05hbWU+LXNlY3JldHNgLlxuICAgKi9cbiAgcmVhZG9ubHkgcmVwb05hbWU6IHN0cmluZztcblxuICAvKipcbiAgICogVGhlIEdpdEh1YiBvcmcgdGhlIHJlcG8gbGl2ZXMgaW4uXG4gICAqL1xuICByZWFkb25seSBnaXRodWJPd25lcjogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgYnJhbmNoIHRoZSBmYWN0b3J5IG9wZW5zIHB1bGwgcmVxdWVzdHMgYWdhaW5zdC5cbiAgICovXG4gIHJlYWRvbmx5IGJhc2VCcmFuY2g6IHN0cmluZztcbn1cblxuLyoqXG4gKiBTZWVkIHN3YW1wIG1vZGVsIGluc3RhbmNlcyB3aXJpbmcgdGhlIGBAc3dhbXAvc29mdHdhcmUtZmFjdG9yeWAgc3RhdGVcbiAqIG1hY2hpbmUgdG8gdGhpcyByZXBvJ3MgR2l0SHViIGlzc3Vlcy9QUnMgYW5kIHNoZWxsIHN0ZXBzLiBUaGVzZSBhcmVcbiAqIGBTYW1wbGVGaWxlYHMgKHdyaXR0ZW4gb25jZSwgdGhlbiBvd25lZCBieSB0aGUgdGVhbSkgc2luY2UgdGhlIGZhY3Rvcnknc1xuICogc3RhZ2VzL2dhdGVzIGFyZSB0aGUga2luZCBvZiB0aGluZyBhIHRlYW0gdHVuZXMgZm9yIGl0cyBvd24gd29ya2Zsb3cuXG4gKi9cbmV4cG9ydCBjbGFzcyBTb2Z0d2FyZUZhY3RvcnlNb2RlbHMge1xuICBjb25zdHJ1Y3Rvcihwcm9qZWN0OiBOb2RlUHJvamVjdCwgb3B0aW9uczogU29mdHdhcmVGYWN0b3J5TW9kZWxzT3B0aW9ucykge1xuICAgIGNvbnN0IHsgcmVwb05hbWUsIGdpdGh1Yk93bmVyLCBiYXNlQnJhbmNoIH0gPSBvcHRpb25zO1xuICAgIGNvbnN0IHJlcG8gPSBgJHtnaXRodWJPd25lcn0vJHtyZXBvTmFtZX1gO1xuICAgIGNvbnN0IGlzc3Vlc01vZGVsID0gYCR7cmVwb05hbWV9LWlzc3Vlc2A7XG4gICAgY29uc3QgcHJNb2RlbCA9IGAke3JlcG9OYW1lfS1wcmA7XG4gICAgY29uc3Qgc2hlbGxNb2RlbCA9IGAke3JlcG9OYW1lfS1zaGVsbGA7XG4gICAgY29uc3Qgc2hlbGxBcmNoaXRlY3R1cmVNb2RlbCA9IGAke3JlcG9OYW1lfS1zaGVsbC1hcmNoaXRlY3R1cmVgO1xuICAgIGNvbnN0IHNoZWxsTWFuaWZlc3RNb2RlbCA9IGAke3JlcG9OYW1lfS1zaGVsbC1tYW5pZmVzdGA7XG4gICAgY29uc3Qgc2VjcmV0c1ZhdWx0ID0gYCR7cmVwb05hbWV9LXNlY3JldHNgO1xuICAgIGNvbnN0IGZhY3RvcnlNb2RlbCA9IGAke3JlcG9OYW1lfS1mYWN0b3J5YDtcblxuICAgIG5ldyBTYW1wbGVGaWxlKHByb2plY3QsIGBtb2RlbHMvQGdvb2RjcmFmdC9naXRodWIvJHtwck1vZGVsfS55YW1sYCwge1xuICAgICAgY29udGVudHM6IGB0eXBlOiAnQGdvb2RjcmFmdC9naXRodWInXG50eXBlVmVyc2lvbjogMjAyNi4wNi4xNC4xXG5pZDogJHtyYW5kb21VVUlEKCl9XG5uYW1lOiAke3ByTW9kZWx9XG52ZXJzaW9uOiAxXG50YWdzOiB7fVxuZ2xvYmFsQXJndW1lbnRzOlxuICB0b2tlbjogJ1xcJHt7IHZhdWx0LmdldCgke3NlY3JldHNWYXVsdH0sIEdJVEhVQl9UT0tFTikgfX0nXG4gIG93bmVyOiAke2dpdGh1Yk93bmVyfVxubWV0aG9kczoge31cbmAsXG4gICAgfSk7XG5cbiAgICBuZXcgU2FtcGxlRmlsZShwcm9qZWN0LCBgbW9kZWxzL0B3ZWJmcmFtcC9naXRodWIvJHtpc3N1ZXNNb2RlbH0ueWFtbGAsIHtcbiAgICAgIGNvbnRlbnRzOiBgdHlwZTogJ0B3ZWJmcmFtcC9naXRodWInXG50eXBlVmVyc2lvbjogMjAyNi4wOC4yOC4xXG5pZDogJHtyYW5kb21VVUlEKCl9XG5uYW1lOiAke2lzc3Vlc01vZGVsfVxudmVyc2lvbjogMVxudGFnczoge31cbmdsb2JhbEFyZ3VtZW50czoge31cbm1ldGhvZHM6IHt9XG5gLFxuICAgIH0pO1xuXG4gICAgZm9yIChjb25zdCBuYW1lIG9mIFtzaGVsbE1vZGVsLCBzaGVsbEFyY2hpdGVjdHVyZU1vZGVsLCBzaGVsbE1hbmlmZXN0TW9kZWxdKSB7XG4gICAgICBuZXcgU2FtcGxlRmlsZShwcm9qZWN0LCBgbW9kZWxzL2NvbW1hbmQvc2hlbGwvJHtuYW1lfS55YW1sYCwge1xuICAgICAgICBjb250ZW50czogYHR5cGU6IGNvbW1hbmQvc2hlbGxcbnR5cGVWZXJzaW9uOiAyMDI2LjAyLjA5LjFcbmlkOiAke3JhbmRvbVVVSUQoKX1cbm5hbWU6ICR7bmFtZX1cbnZlcnNpb246IDFcbnRhZ3M6IHt9XG5nbG9iYWxBcmd1bWVudHM6IHt9XG5tZXRob2RzOiB7fVxuYCxcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIG5ldyBTYW1wbGVGaWxlKHByb2plY3QsIGBtb2RlbHMvQHN3YW1wL3NvZnR3YXJlLWZhY3RvcnkvJHtmYWN0b3J5TW9kZWx9LnlhbWxgLCB7XG4gICAgICBjb250ZW50czogYHR5cGU6ICdAc3dhbXAvc29mdHdhcmUtZmFjdG9yeSdcbnR5cGVWZXJzaW9uOiAyMDI2LjA2LjI0LjFcbmlkOiAke3JhbmRvbVVVSUQoKX1cbm5hbWU6ICR7ZmFjdG9yeU1vZGVsfVxudmVyc2lvbjogMVxudGFnczoge31cbnJlcG9ydHM6XG4gIHJlcXVpcmU6XG4gICAgLSBuYW1lOiBcIkBzd2FtcC9zb2Z0d2FyZS1mYWN0b3J5L3dvcmstaXRlbS1zdW1tYXJ5XCJcbiAgICAgIG1ldGhvZHM6IFtzdW1tYXJ5XVxuZ2xvYmFsQXJndW1lbnRzOlxuICBzdGFnZXM6XG4gICAgLSBpZDogaW50YWtlXG4gICAgICBpbml0aWFsOiB0cnVlXG4gICAgICBkZXNjcmlwdGlvbjogPi1cbiAgICAgICAgRmV0Y2ggdGhlIEdpdEh1YiBpc3N1ZSBmb3IgdGhpcyB3b3JrIGl0ZW0gKHdvcmtJdGVtIGlzIHRoZSBiYXJlXG4gICAgICAgIGlzc3VlIG51bWJlcikgYW5kIHJlY29yZCBpdHMgY29udGV4dC5cbiAgICAgIHdvcms6XG4gICAgICAgIG1vZGU6IGludGVyYWN0aXZlXG4gICAgICAgIHN5c3RlbVByb21wdDogPi1cbiAgICAgICAgICBGZXRjaCB0aGUgR2l0SHViIGlzc3VlIG51bWJlcmVkIFxcJHt7IHNlbGYud29ya0l0ZW0gfX0gZm9yXG4gICAgICAgICAgJHtyZXBvfSB1c2luZyB0aGUgJHtpc3N1ZXNNb2RlbH0gbW9kZWxcbiAgICAgICAgICAobGlzdF9pc3N1ZXMsIHRoZW4gc3dhbXAgZGF0YSBxdWVyeSBmaWx0ZXJlZCBieSBudW1iZXIg4oCUIHNlZSB0aGVcbiAgICAgICAgICAke2lzc3Vlc01vZGVsfSBkYXRhKSwgYW5kIHJlY29yZCB0aGUgaXNzdWUtY29udGV4dCBhcnRpZmFjdC5cbiAgICAgIGFydGlmYWN0czpcbiAgICAgICAgLSBuYW1lOiBpc3N1ZS1jb250ZXh0XG4gICAgICAgICAgc2NoZW1hOlxuICAgICAgICAgICAgdHlwZTogb2JqZWN0XG4gICAgICAgICAgICByZXF1aXJlZDogW251bWJlciwgdGl0bGUsIHVybF1cbiAgICAgICAgICAgIHByb3BlcnRpZXM6XG4gICAgICAgICAgICAgIG51bWJlcjogeyB0eXBlOiBpbnRlZ2VyIH1cbiAgICAgICAgICAgICAgdGl0bGU6IHsgdHlwZTogc3RyaW5nLCBtaW5MZW5ndGg6IDEgfVxuICAgICAgICAgICAgICBib2R5OiB7IHR5cGU6IHN0cmluZyB9XG4gICAgICAgICAgICAgIHVybDogeyB0eXBlOiBzdHJpbmcsIG1pbkxlbmd0aDogMSB9XG4gICAgICAgICAgICAgIGxhYmVsczogeyB0eXBlOiBhcnJheSwgaXRlbXM6IHsgdHlwZTogc3RyaW5nIH0gfVxuICAgICAgdHJhbnNpdGlvbnM6XG4gICAgICAgIC0gbmFtZTogc3VibWl0XG4gICAgICAgICAgdG86IHBsYW5uaW5nXG4gICAgICAgICAgZ2F0ZXM6XG4gICAgICAgICAgICAtIHR5cGU6IGFydGlmYWN0LWV4aXN0c1xuICAgICAgICAgICAgICBjb25maWc6IHsgYXJ0aWZhY3Q6IGlzc3VlLWNvbnRleHQgfVxuXG4gICAgLSBpZDogcGxhbm5pbmdcbiAgICAgIGRlc2NyaXB0aW9uOiA+LVxuICAgICAgICBUdXJuIHRoZSBpc3N1ZSBpbnRvIGEgcmVhbCBPcGVuU3BlYyBjaGFuZ2UgKHByb3Bvc2FsLCBkZXNpZ24sXG4gICAgICAgIHNwZWNzLCB0YXNrcykg4oCUIE9wZW5TcGVjJ3MgdGFzayBsaXN0IGlzIHRoZSBwbGFuLCBub3QgYVxuICAgICAgICBmcmVlZm9ybSBhcnRpZmFjdC5cbiAgICAgIHdvcms6XG4gICAgICAgIG1vZGU6IGludGVyYWN0aXZlXG4gICAgICAgIHN5c3RlbVByb21wdDogPi1cbiAgICAgICAgICBVc2luZyB0aGUgcmVjb3JkZWQgaXNzdWUtY29udGV4dCBhcnRpZmFjdCwgdXNlIHRoZVxuICAgICAgICAgIG9wZW5zcGVjLXByb3Bvc2Ugc2tpbGwgdG8gY3JlYXRlIGEgY29tcGxldGUgT3BlblNwZWMgY2hhbmdlXG4gICAgICAgICAgKHByb3Bvc2FsLm1kLCBkZXNpZ24ubWQsIHNwZWNzIHdpdGggZGVsdGFzLCB0YXNrcy5tZCkgZm9yIHRoaXNcbiAgICAgICAgICB3b3JrIGl0ZW0gdW5kZXIgb3BlbnNwZWMvY2hhbmdlcy88Y2hhbmdlU2x1Zz4vIOKAlCBkbyBub3Qgd3JpdGUgYVxuICAgICAgICAgIGZyZWVmb3JtIHBsYW4gaW5zdGVhZCBvZiB0aGlzLiBUaGVuIHJlY29yZCB0aGUgcGxhbiBhcnRpZmFjdFxuICAgICAgICAgIHdpdGggdGhlIGNoYW5nZSdzIHNsdWcgYW5kIGEgb25lLWxpbmUgc3VtbWFyeS5cbiAgICAgIGFydGlmYWN0czpcbiAgICAgICAgLSBuYW1lOiBwbGFuXG4gICAgICAgICAgc2NoZW1hOlxuICAgICAgICAgICAgdHlwZTogb2JqZWN0XG4gICAgICAgICAgICByZXF1aXJlZDogW2NoYW5nZVNsdWcsIHN1bW1hcnldXG4gICAgICAgICAgICBwcm9wZXJ0aWVzOlxuICAgICAgICAgICAgICBjaGFuZ2VTbHVnOiB7IHR5cGU6IHN0cmluZywgbWluTGVuZ3RoOiAxIH1cbiAgICAgICAgICAgICAgc3VtbWFyeTogeyB0eXBlOiBzdHJpbmcsIG1pbkxlbmd0aDogMSB9XG4gICAgICB0cmFuc2l0aW9uczpcbiAgICAgICAgLSBuYW1lOiBzdWJtaXRcbiAgICAgICAgICB0bzogb3BlbnNwZWMtcGxhbi12ZXJpZnlcbiAgICAgICAgICBnYXRlczpcbiAgICAgICAgICAgIC0gdHlwZTogYXJ0aWZhY3QtZXhpc3RzXG4gICAgICAgICAgICAgIGNvbmZpZzogeyBhcnRpZmFjdDogcGxhbiB9XG5cbiAgICAtIGlkOiBvcGVuc3BlYy1wbGFuLXZlcmlmeVxuICAgICAgZGVzY3JpcHRpb246ID4tXG4gICAgICAgIFZlcmlmeSB0aGUgT3BlblNwZWMgY2hhbmdlIGlzIHJlYWwgYW5kIHdlbGwtZm9ybWVkIChub3QganVzdCBhblxuICAgICAgICBhcnRpZmFjdCBjbGFpbWluZyBvbmUgZXhpc3RzKSBiZWZvcmUgaW1wbGVtZW50YXRpb24gc3RhcnRzLiBSZXF1aXJlc1xuICAgICAgICBhIGh1bWFuIHRvIGFwcHJvdmUgdGhlICdpbXBsZW1lbnRhdGlvbi1hcHByb3ZhbCcgZ2F0ZSBiZWZvcmVcbiAgICAgICAgYWR2YW5jaW5nIHRvIGltcGxlbWVudGluZy4gQSByZWplY3Qgb24gdGhhdCBnYXRlIGRvZXNuJ3QgZGVhZC1lbmRcbiAgICAgICAgdGhlIHJ1biDigJQgdGFrZSB0aGUgdW5nYXRlZCAncmV3b3JrJyB0cmFuc2l0aW9uIGJhY2sgdG8gcGxhbm5pbmcgdG9cbiAgICAgICAgcHJvZHVjZSBhIHJldmlzZWQgcGxhbiBhbmQgYXNrIGFnYWluLlxuICAgICAgd29yazpcbiAgICAgICAgbW9kZTogd29ya2Zsb3dcbiAgICAgICAgd29ya2Zsb3c6XG4gICAgICAgICAgbmFtZTogb3BlbnNwZWMtcGxhbi12ZXJpZnlcbiAgICAgICAgICBpbnB1dHM6XG4gICAgICAgICAgICBjaGFuZ2VTbHVnOiAnXFwke3sgZGF0YS5sYXRlc3Qoc2VsZi5uYW1lLCBcImFydGlmYWN0LXBsYW5cIikucGF5bG9hZC5jaGFuZ2VTbHVnIH19J1xuICAgICAgICByZXN1bHRFdmlkZW5jZTogcGxhbi12ZXJpZnktcnVuXG4gICAgICB0cmFuc2l0aW9uczpcbiAgICAgICAgLSBuYW1lOiBwYXNzXG4gICAgICAgICAgdG86IGltcGxlbWVudGluZ1xuICAgICAgICAgIGdhdGVzOlxuICAgICAgICAgICAgLSB0eXBlOiB3b3JrZmxvdy1zdWNjZWVkZWRcbiAgICAgICAgICAgICAgY29uZmlnOiB7IHdvcmtmbG93OiBvcGVuc3BlYy1wbGFuLXZlcmlmeSB9XG4gICAgICAgICAgICAtIHR5cGU6IGh1bWFuLWFwcHJvdmFsXG4gICAgICAgICAgICAgIGNvbmZpZzogeyBpZDogaW1wbGVtZW50YXRpb24tYXBwcm92YWwgfVxuICAgICAgICAtIG5hbWU6IGZhaWxcbiAgICAgICAgICB0bzogcGxhbm5pbmdcbiAgICAgICAgICBnYXRlczpcbiAgICAgICAgICAgIC0gdHlwZTogZXZpZGVuY2UtcmVjb3JkZWRcbiAgICAgICAgICAgICAgY29uZmlnOiB7IG5hbWU6IHBsYW4tdmVyaWZ5LXJ1biwgcmVxdWlyZUZpZWxkOiB7IHN0YXR1czogZmFpbGVkIH0gfVxuICAgICAgICAtIG5hbWU6IHJld29ya1xuICAgICAgICAgIHRvOiBwbGFubmluZ1xuICAgICAgICAgIGdhdGVzOiBbXVxuXG4gICAgLSBpZDogaW1wbGVtZW50aW5nXG4gICAgICBkZXNjcmlwdGlvbjogSW1wbGVtZW50IHRoZSBPcGVuU3BlYyBjaGFuZ2UncyB0YXNrcyBvbiBhIGJyYW5jaC5cbiAgICAgIHdvcms6XG4gICAgICAgIG1vZGU6IGludGVyYWN0aXZlXG4gICAgICAgIHN5c3RlbVByb21wdDogPi1cbiAgICAgICAgICBVc2UgdGhlIG9wZW5zcGVjLWFwcGx5LWNoYW5nZSBza2lsbCBhZ2FpbnN0IHRoZSBjaGFuZ2UgcmVjb3JkZWRcbiAgICAgICAgICBpbiB0aGUgcGxhbiBhcnRpZmFjdCdzIGNoYW5nZVNsdWcg4oCUIHdvcmsgdGhyb3VnaCBpdHMgdGFza3MubWRcbiAgICAgICAgICBvbmUgdGFzayBhdCBhIHRpbWUsIGNoZWNraW5nIGVhY2ggb2ZmIChcXGAtIFsgXVxcYCAtPiBcXGAtIFt4XVxcYCkgYXNcbiAgICAgICAgICB5b3UgY29tcGxldGUgaXQsIHVudGlsIGV2ZXJ5IHRhc2sgaXMgZG9uZS4gQ29tbWl0IHRoZSB3b3JrIG9uIGFcbiAgICAgICAgICBmZWF0dXJlIGJyYW5jaC4gUmVjb3JkIHRoZSBjaGFuZ2Utc3VtbWFyeSBhcnRpZmFjdCBhbmQgdGhlXG4gICAgICAgICAgY2hhbmdlLXJlcXVlc3QgZXZpZGVuY2UgKGJyYW5jaCBuYW1lIGFuZCBoZWFkIGNvbW1pdCBzaGEg4oCUIG5vXG4gICAgICAgICAgUFIgeWV0LCB0aGF0IGhhcHBlbnMgYWZ0ZXIgcHJlLVBSIHZlcmlmaWNhdGlvbiBwYXNzZXMpLlxuICAgICAgYXJ0aWZhY3RzOlxuICAgICAgICAtIG5hbWU6IGNoYW5nZS1zdW1tYXJ5XG4gICAgICAgICAgc2NoZW1hOlxuICAgICAgICAgICAgdHlwZTogb2JqZWN0XG4gICAgICAgICAgICByZXF1aXJlZDogW3N1bW1hcnksIGhlYWRTaGFdXG4gICAgICAgICAgICBwcm9wZXJ0aWVzOlxuICAgICAgICAgICAgICBzdW1tYXJ5OiB7IHR5cGU6IHN0cmluZywgbWluTGVuZ3RoOiAxIH1cbiAgICAgICAgICAgICAgaGVhZFNoYTogeyB0eXBlOiBzdHJpbmcsIG1pbkxlbmd0aDogNyB9XG4gICAgICBldmlkZW5jZTpcbiAgICAgICAgLSBuYW1lOiBjaGFuZ2UtcmVxdWVzdFxuICAgICAgICAgIHNjaGVtYTpcbiAgICAgICAgICAgIHR5cGU6IG9iamVjdFxuICAgICAgICAgICAgcmVxdWlyZWQ6IFticmFuY2gsIGhlYWRTaGFdXG4gICAgICAgICAgICBwcm9wZXJ0aWVzOlxuICAgICAgICAgICAgICBicmFuY2g6IHsgdHlwZTogc3RyaW5nLCBtaW5MZW5ndGg6IDEgfVxuICAgICAgICAgICAgICBoZWFkU2hhOiB7IHR5cGU6IHN0cmluZywgbWluTGVuZ3RoOiA3IH1cbiAgICAgICAgICAgICAgdXJsOiB7IHR5cGU6IHN0cmluZyB9XG4gICAgICB0cmFuc2l0aW9uczpcbiAgICAgICAgLSBuYW1lOiBzdWJtaXRcbiAgICAgICAgICB0bzogb3BlbnNwZWMtdGFza3MtdmVyaWZ5XG4gICAgICAgICAgZ2F0ZXM6XG4gICAgICAgICAgICAtIHR5cGU6IGFydGlmYWN0LWV4aXN0c1xuICAgICAgICAgICAgICBjb25maWc6IHsgYXJ0aWZhY3Q6IGNoYW5nZS1zdW1tYXJ5IH1cbiAgICAgICAgICAgIC0gdHlwZTogZXZpZGVuY2UtcmVjb3JkZWRcbiAgICAgICAgICAgICAgY29uZmlnOiB7IG5hbWU6IGNoYW5nZS1yZXF1ZXN0IH1cblxuICAgIC0gaWQ6IG9wZW5zcGVjLXRhc2tzLXZlcmlmeVxuICAgICAgZGVzY3JpcHRpb246ID4tXG4gICAgICAgIFZlcmlmeSBldmVyeSB0YXNrIGluIHRoZSBPcGVuU3BlYyBjaGFuZ2UgaXMgYWN0dWFsbHkgY2hlY2tlZCBvZmZcbiAgICAgICAgYmVmb3JlIHByZS1QUiB2ZXJpZmljYXRpb24gcnVucy5cbiAgICAgIHdvcms6XG4gICAgICAgIG1vZGU6IHdvcmtmbG93XG4gICAgICAgIHdvcmtmbG93OlxuICAgICAgICAgIG5hbWU6IG9wZW5zcGVjLXRhc2tzLXZlcmlmeVxuICAgICAgICAgIGlucHV0czpcbiAgICAgICAgICAgIGNoYW5nZVNsdWc6ICdcXCR7eyBkYXRhLmxhdGVzdChzZWxmLm5hbWUsIFwiYXJ0aWZhY3QtcGxhblwiKS5wYXlsb2FkLmNoYW5nZVNsdWcgfX0nXG4gICAgICAgIHJlc3VsdEV2aWRlbmNlOiB0YXNrcy12ZXJpZnktcnVuXG4gICAgICB0cmFuc2l0aW9uczpcbiAgICAgICAgLSBuYW1lOiBwYXNzXG4gICAgICAgICAgdG86IHByZS1wci12ZXJpZnlcbiAgICAgICAgICBnYXRlczpcbiAgICAgICAgICAgIC0gdHlwZTogd29ya2Zsb3ctc3VjY2VlZGVkXG4gICAgICAgICAgICAgIGNvbmZpZzogeyB3b3JrZmxvdzogb3BlbnNwZWMtdGFza3MtdmVyaWZ5IH1cbiAgICAgICAgLSBuYW1lOiBmYWlsXG4gICAgICAgICAgdG86IGltcGxlbWVudGluZ1xuICAgICAgICAgIGdhdGVzOlxuICAgICAgICAgICAgLSB0eXBlOiBldmlkZW5jZS1yZWNvcmRlZFxuICAgICAgICAgICAgICBjb25maWc6IHsgbmFtZTogdGFza3MtdmVyaWZ5LXJ1biwgcmVxdWlyZUZpZWxkOiB7IHN0YXR1czogZmFpbGVkIH0gfVxuXG4gICAgLSBpZDogcHJlLXByLXZlcmlmeVxuICAgICAgZGVzY3JpcHRpb246ID4tXG4gICAgICAgIFByZS1QUiB2ZXJpZmljYXRpb246IGJ1aWxkL3N5bnRoL3Rlc3QvbGludCBwbHVzIHRoZSBhcmNoaXRlY3R1cmVcbiAgICAgICAgcnVsZSByZWdpc3RyeSwgcnVuIGJlZm9yZSB0aGUgUFIgaXMgb3BlbmVkIHJhdGhlciB0aGFuIHJlbHlpbmcgb25cbiAgICAgICAgQ0kgYWZ0ZXIgdGhlIGZhY3QuIElmIHRoZSBib3VuZCBjb21taXQgbmVlZHMgdG8gY2hhbmdlIChyZWJhc2UsXG4gICAgICAgIGZpeHVwLCBodW1hbi1yZXF1ZXN0ZWQgZWRpdCkgd2l0aG91dCBhIHJlYWwgdmVyaWZpY2F0aW9uIGZhaWx1cmUsXG4gICAgICAgIHRha2UgdGhlIHVuZ2F0ZWQgJ3Jld29yaycgdHJhbnNpdGlvbiBiYWNrIHRvIGltcGxlbWVudGluZyBpbnN0ZWFkXG4gICAgICAgIG9mIHJlY29yZGluZyBhIGZhYnJpY2F0ZWQgJ2ZhaWwnLlxuICAgICAgd29yazpcbiAgICAgICAgbW9kZTogd29ya2Zsb3dcbiAgICAgICAgd29ya2Zsb3c6XG4gICAgICAgICAgbmFtZTogcHJlLXByLXZlcmlmeVxuICAgICAgICAgIGlucHV0czpcbiAgICAgICAgICAgIGNvbW1pdDogJ1xcJHt7IGRhdGEubGF0ZXN0KHNlbGYubmFtZSwgXCJldmlkZW5jZS1jaGFuZ2UtcmVxdWVzdFwiKS5wYXlsb2FkLmhlYWRTaGEgfX0nXG4gICAgICAgICAgICBicmFuY2g6ICdcXCR7eyBkYXRhLmxhdGVzdChzZWxmLm5hbWUsIFwiZXZpZGVuY2UtY2hhbmdlLXJlcXVlc3RcIikucGF5bG9hZC5icmFuY2ggfX0nXG4gICAgICAgIHJlc3VsdEV2aWRlbmNlOiB2ZXJpZnktcnVuXG4gICAgICB0cmFuc2l0aW9uczpcbiAgICAgICAgLSBuYW1lOiBwYXNzXG4gICAgICAgICAgdG86IG9wZW4tcHJcbiAgICAgICAgICBnYXRlczpcbiAgICAgICAgICAgIC0gdHlwZTogd29ya2Zsb3ctc3VjY2VlZGVkXG4gICAgICAgICAgICAgIGNvbmZpZzogeyB3b3JrZmxvdzogcHJlLXByLXZlcmlmeSB9XG4gICAgICAgIC0gbmFtZTogZmFpbFxuICAgICAgICAgIHRvOiBpbXBsZW1lbnRpbmdcbiAgICAgICAgICBnYXRlczpcbiAgICAgICAgICAgIC0gdHlwZTogZXZpZGVuY2UtcmVjb3JkZWRcbiAgICAgICAgICAgICAgY29uZmlnOiB7IG5hbWU6IHZlcmlmeS1ydW4sIHJlcXVpcmVGaWVsZDogeyBzdGF0dXM6IGZhaWxlZCB9IH1cbiAgICAgICAgLSBuYW1lOiByZXdvcmtcbiAgICAgICAgICB0bzogaW1wbGVtZW50aW5nXG4gICAgICAgICAgZ2F0ZXM6IFtdXG5cbiAgICAtIGlkOiBvcGVuLXByXG4gICAgICBkZXNjcmlwdGlvbjogPi1cbiAgICAgICAgT3BlbiB0aGUgcHVsbCByZXF1ZXN0IG5vdyB0aGF0IHByZS1QUiB2ZXJpZmljYXRpb24gaGFzIHBhc3NlZC4gSWZcbiAgICAgICAgdGhlIGJvdW5kIGNvbW1pdCBuZWVkcyB0byBjaGFuZ2UgYWZ0ZXIgZW50ZXJpbmcgdGhpcyBzdGFnZSAoZS5nLlxuICAgICAgICBtYWluIG1vdmVkIGFuZCB0aGUgYnJhbmNoIG5lZWRzIGEgcmViYXNlKSwgYSBodW1hbiBjYW4gYXBwcm92ZSB0aGVcbiAgICAgICAgJ3Jld29yay1hcHByb3ZhbCcgZ2F0ZSB0byB0YWtlIHRoZSAncmV3b3JrJyB0cmFuc2l0aW9uIGJhY2sgdG9cbiAgICAgICAgaW1wbGVtZW50aW5nIHJhdGhlciB0aGFuIGFib3J0aW5nIHRoZSBydW4uXG4gICAgICB3b3JrOlxuICAgICAgICBtb2RlOiBpbnRlcmFjdGl2ZVxuICAgICAgICBzeXN0ZW1Qcm9tcHQ6ID4tXG4gICAgICAgICAgQmVmb3JlIG9wZW5pbmcgdGhlIFBSLCBmZXRjaCB0aGUgcmVhbCBwcmUtcHItdmVyaWZ5IGF0dGVzdGF0aW9uXG4gICAgICAgICAgd2l0aCBcXGBzd2FtcCBkYXRhIGdldCAtLXdvcmtmbG93IHByZS1wci12ZXJpZnlcbiAgICAgICAgICByZXBvcnQtc3dhbXAtdmVyaWZpY2F0aW9uLWF0dGVzdGF0aW9uIC0tanNvblxcYCBhbmQgaW5jbHVkZSBpdHNcbiAgICAgICAgICBcXGBjb250ZW50XFxgIHZlcmJhdGltIChhcyBhIG1hcmtkb3duIGJsb2NrLCBlLmcuIHVuZGVyIGEgXCJQcmUtUFJcbiAgICAgICAgICB2ZXJpZmljYXRpb25cIiBoZWFkaW5nKSBpbiB0aGUgUFIgYm9keSDigJQgbmV2ZXIganVzdCBhc3NlcnQgaW5cbiAgICAgICAgICBwcm9zZSB0aGF0IGNoZWNrcyBwYXNzZWQuIEFsc28gZmV0Y2ggdGhpcyBzYW1lIHJ1bidzIG1hbmlmZXN0IHN0ZXBcbiAgICAgICAgICBvdXRwdXQgKFxcYHN3YW1wIGRhdGEgcXVlcnkgJ21vZGVsTmFtZSA9PSBcIiR7c2hlbGxNYW5pZmVzdE1vZGVsfVwiICYmXG4gICAgICAgICAgbmFtZSA9PSBcInJlc3VsdFwiJyAtLXNlbGVjdCBhdHRyaWJ1dGVzLnN0ZG91dCAtLWpzb25cXGAsIHRha2UgdGhlXG4gICAgICAgICAgbGF0ZXN0KSBhbmQgYXBwZW5kIGl0IHRvIHRoZSBQUiBib2R5IGFzXG4gICAgICAgICAgXFxgPCEtLSBhdHRlc3RhdGlvbi1tYW5pZmVzdCB7XCJjb21taXRcIjogXCI8aGVhZFNoYT5cIiwgXCJzdGF0dXNcIjpcbiAgICAgICAgICBcInN1Y2NlZWRlZFwiLCAuLi50aGUgbWFuaWZlc3Qgc3RlcCdzIEpTT04sIHNwcmVhZCBpbi4uLn0gLS0+XFxgIOKAlCBhblxuICAgICAgICAgIEhUTUwgY29tbWVudCBzbyBpdCdzIGludmlzaWJsZSB3aGVuIHJlbmRlcmVkIGJ1dCBzdGlsbCBwcmVzZW50IGluXG4gICAgICAgICAgdGhlIHJhdyBib2R5IHRleHQgdmVyaWZ5LWF0dGVzdGF0aW9uLnltbCByZWFkcyB2aWEgdGhlIEdpdEh1YiBBUEkuXG4gICAgICAgICAgQWxzbyBmZXRjaCB0aGUgcGxhbiBhcnRpZmFjdCdzIGNoYW5nZVNsdWcgYW5kIGluY2x1ZGUgYW4gZXhwbGljaXRcbiAgICAgICAgICBcIk9wZW5TcGVjIGNoYW5nZVwiIGxpbmUgaW4gdGhlIFBSIGJvZHkgbmFtaW5nIGl0IGFuZCBpdHMgcGF0aFxuICAgICAgICAgIChcXGBvcGVuc3BlYy9jaGFuZ2VzLzxjaGFuZ2VTbHVnPi9cXGApIOKAlCBldmVyeSBQUiB0aGUgZmFjdG9yeSBvcGVuc1xuICAgICAgICAgIG11c3QgY2FsbCBvdXQgd2hpY2ggT3BlblNwZWMgY2hhbmdlKHMpIGRyb3ZlIHRoZSBzZXNzaW9uLCBub3RcbiAgICAgICAgICBqdXN0IGltcGx5IGl0LiBJZiBwbGFubmluZyBjeWNsZWQgdGhyb3VnaCBtb3JlIHRoYW4gb25lIGNoYW5nZVxuICAgICAgICAgIChhIHJld29yayBsb29wIHByb2R1Y2VkIGEgbmV3IGNoYW5nZVNsdWcpLCBsaXN0IGV2ZXJ5IGRpc3RpbmN0XG4gICAgICAgICAgY2hhbmdlU2x1ZyByZWNvcmRlZCBhY3Jvc3MgdGhlIHJ1bidzIHBsYW4gYXJ0aWZhY3QgdmVyc2lvbnMsIG5vdFxuICAgICAgICAgIG9ubHkgdGhlIGxhdGVzdC4gVGhlIFBSIHRpdGxlIE1VU1Qgc3RhcnQgd2l0aCBhIENvbnZlbnRpb25hbFxuICAgICAgICAgIENvbW1pdHMgcHJlZml4IGluIHRoZSBmb3JtIFxcYHR5cGUoc2NvcGUpOiBzdW1tYXJ5XFxgIOKAlCBcXGB0eXBlXFxgIGlzXG4gICAgICAgICAgXFxgZmVhdFxcYCBmb3IgbmV3IGNhcGFiaWxpdGllcywgXFxgZml4XFxgIGZvciBidWcgZml4ZXMsIG9yIFxcYGNob3JlXFxgXG4gICAgICAgICAgZm9yIHRvb2xpbmcvbWFpbnRlbmFuY2Ugd2l0aCBubyBiZWhhdmlvciBjaGFuZ2UgKGZhbGwgYmFjayB0b1xuICAgICAgICAgIFxcYHJlZmFjdG9yXFxgL1xcYGRvY3NcXGAvXFxgdGVzdFxcYCBvbmx5IGlmIG5vbmUgb2YgdGhvc2UgZml0KSwgY2hvc2VuXG4gICAgICAgICAgZnJvbSB0aGUgaW50YWtlIGlzc3VlIGFuZCBPcGVuU3BlYyBjaGFuZ2Uocyk7IFxcYHNjb3BlXFxgIG5hbWVzIHRoZVxuICAgICAgICAgIGFmZmVjdGVkIHBhY2thZ2UgKGUuZy4gXFxgcHJvamVuXFxgLCBcXGBjbGVyay1hdXRob3JpemVyXFxgKS4gVGhpc1xuICAgICAgICAgIHJlcG8ncyBQUi1kZXBsb3kgYW5kIFBSLWNsZWFudXAgYXV0b21hdGlvbiBvbmx5IHRyaWdnZXIgZm9yXG4gICAgICAgICAgdGl0bGVzIHN0YXJ0aW5nIHdpdGggXFxgZml4XFxgIG9yIFxcYGZlYXRcXGAsIGFuZCBldmVyeSBtZXJnZWQgUFIgaW5cbiAgICAgICAgICB0aGlzIHJlcG8gZm9sbG93cyB0aGlzIGNvbnZlbnRpb24g4oCUIGFuIHVudHlwZWQgdGl0bGUgYnJlYWtzIGJvdGguXG4gICAgICAgICAgVGhlbiBjYWxsICR7cHJNb2RlbH0ncyBvcGVuUHIgbWV0aG9kXG4gICAgICAgICAgKHJlcG89JHtyZXBvfSwgaGVhZD08dGhlIGJyYW5jaCByZWNvcmRlZCBpblxuICAgICAgICAgIGNoYW5nZS1yZXF1ZXN0IGV2aWRlbmNlPiwgYmFzZT0ke2Jhc2VCcmFuY2h9LCBkcnlSdW49ZmFsc2UpLCB3aXRoXG4gICAgICAgICAgdGl0bGUvYm9keSByZWZlcmVuY2luZyB0aGUgaW50YWtlIHN0YWdlJ3MgaXNzdWUgbnVtYmVyLCB0aGVcbiAgICAgICAgICBPcGVuU3BlYyBjaGFuZ2UocyksIHRoZSBhdHRlc3RhdGlvbiBibG9jaywgYW5kIHRoZSBtYW5pZmVzdFxuICAgICAgICAgIGNvbW1lbnQuIElmIG9wZW5QciBmYWlscyBzcGVjaWZpY2FsbHkgYmVjYXVzZSB0aGUgdmF1bHQgY2FuJ3RcbiAgICAgICAgICByZXNvbHZlIEdJVEhVQl9UT0tFTiAoYW4gZXJyb3IgbmFtaW5nIFxcYEdJVEhVQl9UT0tFTlxcYCBhcyBub3RcbiAgICAgICAgICBmb3VuZCksIGRvbid0IHRyZWF0IHRoYXQgYXMgdGVybWluYWwg4oCUIGZhbGwgYmFjayB0byBvcGVuaW5nIHRoZVxuICAgICAgICAgIFBSIHZpYSB0aGUgXFxgZ2hcXGAgQ0xJIGluc3RlYWQ6IHB1c2ggdGhlIGJyYW5jaCByZWNvcmRlZCBpblxuICAgICAgICAgIGNoYW5nZS1yZXF1ZXN0IGV2aWRlbmNlIHdpdGggXFxgZ2l0IHB1c2ggLXUgb3JpZ2luIDxicmFuY2g+XFxgIGlmIGl0XG4gICAgICAgICAgaXNuJ3QgYWxyZWFkeSBwdXNoZWQsIHdyaXRlIHRoZSBleGFjdCBzYW1lIHRpdGxlIGFuZCBib2R5XG4gICAgICAgICAgKGF0dGVzdGF0aW9uIGJsb2NrLCBtYW5pZmVzdCBjb21tZW50LCBhbmQgT3BlblNwZWMgY2hhbmdlXG4gICAgICAgICAgbGluZShzKSBpbmNsdWRlZCkgdG8gYSB0ZW1wIGZpbGUsIGFuZCBydW4gXFxgZ2ggcHIgY3JlYXRlIC0tdGl0bGVcbiAgICAgICAgICBcIjx0aXRsZT5cIiAtLWJvZHktZmlsZSA8cGF0aD4gLS1iYXNlICR7YmFzZUJyYW5jaH0gLS1oZWFkIDxicmFuY2g+IC0tcmVwb1xuICAgICAgICAgICR7cmVwb31cXGAuIEFueSBvdGhlciBvcGVuUHIgZmFpbHVyZVxuICAgICAgICAgIChiYWQgYXJndW1lbnRzLCBuZXR3b3JrLCBwZXJtaXNzaW9ucykgTVVTVCBzdGlsbCBiZSBzdXJmYWNlZCBhc1xuICAgICAgICAgIGEgcmVhbCBmYWlsdXJlLCBub3QgcGFwZXJlZCBvdmVyIHdpdGggdGhpcyBmYWxsYmFjay4gVGhlbiByZWNvcmRcbiAgICAgICAgICB0aGUgcHItb3BlbmVkIGV2aWRlbmNlIHdpdGggdGhlIHJldHVybmVkIFBSIHVybCBhbmQgbnVtYmVyIOKAlFxuICAgICAgICAgIGZyb20gb3BlblByJ3MgcmVzcG9uc2Ugb24gdGhlIHByaW1hcnkgcGF0aCwgb3IgYnkgcGFyc2luZyBcXGBnaCBwclxuICAgICAgICAgIGNyZWF0ZVxcYCdzIG91dHB1dCAob3IgYSBmb2xsb3ctdXAgXFxgZ2ggcHIgdmlldyA8YnJhbmNoPiAtLWpzb25cbiAgICAgICAgICBudW1iZXIsdXJsXFxgKSBvbiB0aGUgZmFsbGJhY2sgcGF0aC5cbiAgICAgIGV2aWRlbmNlOlxuICAgICAgICAtIG5hbWU6IHByLW9wZW5lZFxuICAgICAgICAgIHNjaGVtYTpcbiAgICAgICAgICAgIHR5cGU6IG9iamVjdFxuICAgICAgICAgICAgcmVxdWlyZWQ6IFt1cmwsIG51bWJlcl1cbiAgICAgICAgICAgIHByb3BlcnRpZXM6XG4gICAgICAgICAgICAgIHVybDogeyB0eXBlOiBzdHJpbmcsIG1pbkxlbmd0aDogMSB9XG4gICAgICAgICAgICAgIG51bWJlcjogeyB0eXBlOiBpbnRlZ2VyIH1cbiAgICAgIHRyYW5zaXRpb25zOlxuICAgICAgICAtIG5hbWU6IHN1Ym1pdFxuICAgICAgICAgIHRvOiBkb25lXG4gICAgICAgICAgZ2F0ZXM6XG4gICAgICAgICAgICAtIHR5cGU6IGV2aWRlbmNlLXJlY29yZGVkXG4gICAgICAgICAgICAgIGNvbmZpZzogeyBuYW1lOiBwci1vcGVuZWQgfVxuICAgICAgICAtIG5hbWU6IHJld29ya1xuICAgICAgICAgIHRvOiBpbXBsZW1lbnRpbmdcbiAgICAgICAgICBnYXRlczpcbiAgICAgICAgICAgIC0gdHlwZTogaHVtYW4tYXBwcm92YWxcbiAgICAgICAgICAgICAgY29uZmlnOiB7IGlkOiByZXdvcmstYXBwcm92YWwgfVxuXG4gICAgLSBpZDogZG9uZVxuICAgICAgdGVybWluYWw6IHRydWVcblxuICAgIC0gaWQ6IGFib3J0ZWRcbiAgICAgIHRlcm1pbmFsOiB0cnVlXG5cbiAgZ2xvYmFsVHJhbnNpdGlvbnM6XG4gICAgLSBuYW1lOiBhYm9ydFxuICAgICAgdG86IGFib3J0ZWRcbiAgICAgIGdhdGVzOlxuICAgICAgICAtIHR5cGU6IGh1bWFuLWFwcHJvdmFsXG4gICAgICAgICAgY29uZmlnOiB7IGlkOiBhYm9ydC1jb25maXJtYXRpb24gfVxubWV0aG9kczoge31cbmAsXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
|
360
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU29mdHdhcmVGYWN0b3J5TW9kZWxzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL1NvZnR3YXJlRmFjdG9yeU1vZGVscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtQ0FBb0M7QUFDcEMsbUNBQW9DO0FBcUJwQzs7Ozs7R0FLRztBQUNILE1BQWEscUJBQXFCO0lBQ2hDLFlBQVksT0FBb0IsRUFBRSxPQUFxQztRQUNyRSxNQUFNLEVBQUUsUUFBUSxFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQUUsR0FBRyxPQUFPLENBQUM7UUFDdEQsTUFBTSxJQUFJLEdBQUcsR0FBRyxXQUFXLElBQUksUUFBUSxFQUFFLENBQUM7UUFDMUMsTUFBTSxXQUFXLEdBQUcsR0FBRyxRQUFRLFNBQVMsQ0FBQztRQUN6QyxNQUFNLE9BQU8sR0FBRyxHQUFHLFFBQVEsS0FBSyxDQUFDO1FBQ2pDLE1BQU0sVUFBVSxHQUFHLEdBQUcsUUFBUSxRQUFRLENBQUM7UUFDdkMsTUFBTSxzQkFBc0IsR0FBRyxHQUFHLFFBQVEscUJBQXFCLENBQUM7UUFDaEUsTUFBTSxrQkFBa0IsR0FBRyxHQUFHLFFBQVEsaUJBQWlCLENBQUM7UUFDeEQsTUFBTSxZQUFZLEdBQUcsR0FBRyxRQUFRLFVBQVUsQ0FBQztRQUMzQyxNQUFNLFlBQVksR0FBRyxHQUFHLFFBQVEsVUFBVSxDQUFDO1FBRTNDLElBQUksbUJBQVUsQ0FBQyxPQUFPLEVBQUUsNEJBQTRCLE9BQU8sT0FBTyxFQUFFO1lBQ2xFLFFBQVEsRUFBRTs7TUFFVixJQUFBLG1CQUFVLEdBQUU7UUFDVixPQUFPOzs7OzJCQUlZLFlBQVk7V0FDNUIsV0FBVzs7Q0FFckI7U0FDSSxDQUFDLENBQUM7UUFFSCxJQUFJLG1CQUFVLENBQUMsT0FBTyxFQUFFLDJCQUEyQixXQUFXLE9BQU8sRUFBRTtZQUNyRSxRQUFRLEVBQUU7O01BRVYsSUFBQSxtQkFBVSxHQUFFO1FBQ1YsV0FBVzs7Ozs7Q0FLbEI7U0FDSSxDQUFDLENBQUM7UUFFSCxLQUFLLE1BQU0sSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFLHNCQUFzQixFQUFFLGtCQUFrQixDQUFDLEVBQUUsQ0FBQztZQUM1RSxJQUFJLG1CQUFVLENBQUMsT0FBTyxFQUFFLHdCQUF3QixJQUFJLE9BQU8sRUFBRTtnQkFDM0QsUUFBUSxFQUFFOztNQUVaLElBQUEsbUJBQVUsR0FBRTtRQUNWLElBQUk7Ozs7O0NBS1g7YUFDTSxDQUFDLENBQUM7UUFDTCxDQUFDO1FBRUQsSUFBSSxtQkFBVSxDQUFDLE9BQU8sRUFBRSxrQ0FBa0MsWUFBWSxPQUFPLEVBQUU7WUFDN0UsUUFBUSxFQUFFOztNQUVWLElBQUEsbUJBQVUsR0FBRTtRQUNWLFlBQVk7Ozs7Ozs7Ozs7Ozs7Ozs7OztZQWtCUixJQUFJLGNBQWMsV0FBVzs7WUFFN0IsV0FBVzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztzREFpTStCLGtCQUFrQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O3NCQXdCbEQsT0FBTztrQkFDWCxJQUFJOzJDQUNxQixVQUFVOzs7Ozs7Ozs7OztnREFXTCxVQUFVO1lBQzlDLElBQUk7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Q0F3Q2Y7U0FDSSxDQUFDLENBQUM7SUFDTCxDQUFDO0NBQ0Y7QUE5VkQsc0RBOFZDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcmFuZG9tVVVJRCB9IGZyb20gJ2NyeXB0byc7XG5pbXBvcnQgeyBTYW1wbGVGaWxlIH0gZnJvbSAncHJvamVuJztcbmltcG9ydCB7IE5vZGVQcm9qZWN0IH0gZnJvbSAncHJvamVuL2xpYi9qYXZhc2NyaXB0JztcblxuZXhwb3J0IGludGVyZmFjZSBTb2Z0d2FyZUZhY3RvcnlNb2RlbHNPcHRpb25zIHtcbiAgLyoqXG4gICAqIFRoZSBiYXJlIHJlcG8gbmFtZSAoZS5nLiBgZXhwZW5zZS10cmFja2VyYCksIHVzZWQgdG8gZGVyaXZlIG1vZGVsIG5hbWVzXG4gICAqIGxpa2UgYDxyZXBvTmFtZT4tZmFjdG9yeWAsIGA8cmVwb05hbWU+LXNoZWxsYCwgYDxyZXBvTmFtZT4tc2VjcmV0c2AuXG4gICAqL1xuICByZWFkb25seSByZXBvTmFtZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgR2l0SHViIG9yZyB0aGUgcmVwbyBsaXZlcyBpbi5cbiAgICovXG4gIHJlYWRvbmx5IGdpdGh1Yk93bmVyOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBicmFuY2ggdGhlIGZhY3Rvcnkgb3BlbnMgcHVsbCByZXF1ZXN0cyBhZ2FpbnN0LlxuICAgKi9cbiAgcmVhZG9ubHkgYmFzZUJyYW5jaDogc3RyaW5nO1xufVxuXG4vKipcbiAqIFNlZWQgc3dhbXAgbW9kZWwgaW5zdGFuY2VzIHdpcmluZyB0aGUgYEBzd2FtcC9zb2Z0d2FyZS1mYWN0b3J5YCBzdGF0ZVxuICogbWFjaGluZSB0byB0aGlzIHJlcG8ncyBHaXRIdWIgaXNzdWVzL1BScyBhbmQgc2hlbGwgc3RlcHMuIFRoZXNlIGFyZVxuICogYFNhbXBsZUZpbGVgcyAod3JpdHRlbiBvbmNlLCB0aGVuIG93bmVkIGJ5IHRoZSB0ZWFtKSBzaW5jZSB0aGUgZmFjdG9yeSdzXG4gKiBzdGFnZXMvZ2F0ZXMgYXJlIHRoZSBraW5kIG9mIHRoaW5nIGEgdGVhbSB0dW5lcyBmb3IgaXRzIG93biB3b3JrZmxvdy5cbiAqL1xuZXhwb3J0IGNsYXNzIFNvZnR3YXJlRmFjdG9yeU1vZGVscyB7XG4gIGNvbnN0cnVjdG9yKHByb2plY3Q6IE5vZGVQcm9qZWN0LCBvcHRpb25zOiBTb2Z0d2FyZUZhY3RvcnlNb2RlbHNPcHRpb25zKSB7XG4gICAgY29uc3QgeyByZXBvTmFtZSwgZ2l0aHViT3duZXIsIGJhc2VCcmFuY2ggfSA9IG9wdGlvbnM7XG4gICAgY29uc3QgcmVwbyA9IGAke2dpdGh1Yk93bmVyfS8ke3JlcG9OYW1lfWA7XG4gICAgY29uc3QgaXNzdWVzTW9kZWwgPSBgJHtyZXBvTmFtZX0taXNzdWVzYDtcbiAgICBjb25zdCBwck1vZGVsID0gYCR7cmVwb05hbWV9LXByYDtcbiAgICBjb25zdCBzaGVsbE1vZGVsID0gYCR7cmVwb05hbWV9LXNoZWxsYDtcbiAgICBjb25zdCBzaGVsbEFyY2hpdGVjdHVyZU1vZGVsID0gYCR7cmVwb05hbWV9LXNoZWxsLWFyY2hpdGVjdHVyZWA7XG4gICAgY29uc3Qgc2hlbGxNYW5pZmVzdE1vZGVsID0gYCR7cmVwb05hbWV9LXNoZWxsLW1hbmlmZXN0YDtcbiAgICBjb25zdCBzZWNyZXRzVmF1bHQgPSBgJHtyZXBvTmFtZX0tc2VjcmV0c2A7XG4gICAgY29uc3QgZmFjdG9yeU1vZGVsID0gYCR7cmVwb05hbWV9LWZhY3RvcnlgO1xuXG4gICAgbmV3IFNhbXBsZUZpbGUocHJvamVjdCwgYG1vZGVscy9AZ29vZGNyYWZ0L2dpdGh1Yi8ke3ByTW9kZWx9LnlhbWxgLCB7XG4gICAgICBjb250ZW50czogYHR5cGU6ICdAZ29vZGNyYWZ0L2dpdGh1YidcbnR5cGVWZXJzaW9uOiAyMDI2LjA2LjE0LjFcbmlkOiAke3JhbmRvbVVVSUQoKX1cbm5hbWU6ICR7cHJNb2RlbH1cbnZlcnNpb246IDFcbnRhZ3M6IHt9XG5nbG9iYWxBcmd1bWVudHM6XG4gIHRva2VuOiAnXFwke3sgdmF1bHQuZ2V0KCR7c2VjcmV0c1ZhdWx0fSwgR0lUSFVCX1RPS0VOKSB9fSdcbiAgb3duZXI6ICR7Z2l0aHViT3duZXJ9XG5tZXRob2RzOiB7fVxuYCxcbiAgICB9KTtcblxuICAgIG5ldyBTYW1wbGVGaWxlKHByb2plY3QsIGBtb2RlbHMvQHdlYmZyYW1wL2dpdGh1Yi8ke2lzc3Vlc01vZGVsfS55YW1sYCwge1xuICAgICAgY29udGVudHM6IGB0eXBlOiAnQHdlYmZyYW1wL2dpdGh1YidcbnR5cGVWZXJzaW9uOiAyMDI2LjA4LjI4LjFcbmlkOiAke3JhbmRvbVVVSUQoKX1cbm5hbWU6ICR7aXNzdWVzTW9kZWx9XG52ZXJzaW9uOiAxXG50YWdzOiB7fVxuZ2xvYmFsQXJndW1lbnRzOiB7fVxubWV0aG9kczoge31cbmAsXG4gICAgfSk7XG5cbiAgICBmb3IgKGNvbnN0IG5hbWUgb2YgW3NoZWxsTW9kZWwsIHNoZWxsQXJjaGl0ZWN0dXJlTW9kZWwsIHNoZWxsTWFuaWZlc3RNb2RlbF0pIHtcbiAgICAgIG5ldyBTYW1wbGVGaWxlKHByb2plY3QsIGBtb2RlbHMvY29tbWFuZC9zaGVsbC8ke25hbWV9LnlhbWxgLCB7XG4gICAgICAgIGNvbnRlbnRzOiBgdHlwZTogY29tbWFuZC9zaGVsbFxudHlwZVZlcnNpb246IDIwMjYuMDIuMDkuMVxuaWQ6ICR7cmFuZG9tVVVJRCgpfVxubmFtZTogJHtuYW1lfVxudmVyc2lvbjogMVxudGFnczoge31cbmdsb2JhbEFyZ3VtZW50czoge31cbm1ldGhvZHM6IHt9XG5gLFxuICAgICAgfSk7XG4gICAgfVxuXG4gICAgbmV3IFNhbXBsZUZpbGUocHJvamVjdCwgYG1vZGVscy9Ac3dhbXAvc29mdHdhcmUtZmFjdG9yeS8ke2ZhY3RvcnlNb2RlbH0ueWFtbGAsIHtcbiAgICAgIGNvbnRlbnRzOiBgdHlwZTogJ0Bzd2FtcC9zb2Z0d2FyZS1mYWN0b3J5J1xudHlwZVZlcnNpb246IDIwMjYuMDYuMjQuMVxuaWQ6ICR7cmFuZG9tVVVJRCgpfVxubmFtZTogJHtmYWN0b3J5TW9kZWx9XG52ZXJzaW9uOiAxXG50YWdzOiB7fVxucmVwb3J0czpcbiAgcmVxdWlyZTpcbiAgICAtIG5hbWU6IFwiQHN3YW1wL3NvZnR3YXJlLWZhY3Rvcnkvd29yay1pdGVtLXN1bW1hcnlcIlxuICAgICAgbWV0aG9kczogW3N1bW1hcnldXG5nbG9iYWxBcmd1bWVudHM6XG4gIHN0YWdlczpcbiAgICAtIGlkOiBpbnRha2VcbiAgICAgIGluaXRpYWw6IHRydWVcbiAgICAgIGRlc2NyaXB0aW9uOiA+LVxuICAgICAgICBGZXRjaCB0aGUgR2l0SHViIGlzc3VlIGZvciB0aGlzIHdvcmsgaXRlbSAod29ya0l0ZW0gaXMgdGhlIGJhcmVcbiAgICAgICAgaXNzdWUgbnVtYmVyKSBhbmQgcmVjb3JkIGl0cyBjb250ZXh0LlxuICAgICAgd29yazpcbiAgICAgICAgbW9kZTogaW50ZXJhY3RpdmVcbiAgICAgICAgc3lzdGVtUHJvbXB0OiA+LVxuICAgICAgICAgIEZldGNoIHRoZSBHaXRIdWIgaXNzdWUgbnVtYmVyZWQgXFwke3sgc2VsZi53b3JrSXRlbSB9fSBmb3JcbiAgICAgICAgICAke3JlcG99IHVzaW5nIHRoZSAke2lzc3Vlc01vZGVsfSBtb2RlbFxuICAgICAgICAgIChsaXN0X2lzc3VlcywgdGhlbiBzd2FtcCBkYXRhIHF1ZXJ5IGZpbHRlcmVkIGJ5IG51bWJlciDigJQgc2VlIHRoZVxuICAgICAgICAgICR7aXNzdWVzTW9kZWx9IGRhdGEpLCBhbmQgcmVjb3JkIHRoZSBpc3N1ZS1jb250ZXh0IGFydGlmYWN0LlxuICAgICAgYXJ0aWZhY3RzOlxuICAgICAgICAtIG5hbWU6IGlzc3VlLWNvbnRleHRcbiAgICAgICAgICBzY2hlbWE6XG4gICAgICAgICAgICB0eXBlOiBvYmplY3RcbiAgICAgICAgICAgIHJlcXVpcmVkOiBbbnVtYmVyLCB0aXRsZSwgdXJsXVxuICAgICAgICAgICAgcHJvcGVydGllczpcbiAgICAgICAgICAgICAgbnVtYmVyOiB7IHR5cGU6IGludGVnZXIgfVxuICAgICAgICAgICAgICB0aXRsZTogeyB0eXBlOiBzdHJpbmcsIG1pbkxlbmd0aDogMSB9XG4gICAgICAgICAgICAgIGJvZHk6IHsgdHlwZTogc3RyaW5nIH1cbiAgICAgICAgICAgICAgdXJsOiB7IHR5cGU6IHN0cmluZywgbWluTGVuZ3RoOiAxIH1cbiAgICAgICAgICAgICAgbGFiZWxzOiB7IHR5cGU6IGFycmF5LCBpdGVtczogeyB0eXBlOiBzdHJpbmcgfSB9XG4gICAgICB0cmFuc2l0aW9uczpcbiAgICAgICAgLSBuYW1lOiBzdWJtaXRcbiAgICAgICAgICB0bzogcGxhbm5pbmdcbiAgICAgICAgICBnYXRlczpcbiAgICAgICAgICAgIC0gdHlwZTogYXJ0aWZhY3QtZXhpc3RzXG4gICAgICAgICAgICAgIGNvbmZpZzogeyBhcnRpZmFjdDogaXNzdWUtY29udGV4dCB9XG5cbiAgICAtIGlkOiBwbGFubmluZ1xuICAgICAgZGVzY3JpcHRpb246ID4tXG4gICAgICAgIFR1cm4gdGhlIGlzc3VlIGludG8gYSByZWFsIE9wZW5TcGVjIGNoYW5nZSAocHJvcG9zYWwsIGRlc2lnbixcbiAgICAgICAgc3BlY3MsIHRhc2tzKSDigJQgT3BlblNwZWMncyB0YXNrIGxpc3QgaXMgdGhlIHBsYW4sIG5vdCBhXG4gICAgICAgIGZyZWVmb3JtIGFydGlmYWN0LlxuICAgICAgd29yazpcbiAgICAgICAgbW9kZTogaW50ZXJhY3RpdmVcbiAgICAgICAgc3lzdGVtUHJvbXB0OiA+LVxuICAgICAgICAgIFVzaW5nIHRoZSByZWNvcmRlZCBpc3N1ZS1jb250ZXh0IGFydGlmYWN0LCB1c2UgdGhlXG4gICAgICAgICAgb3BlbnNwZWMtcHJvcG9zZSBza2lsbCB0byBjcmVhdGUgYSBjb21wbGV0ZSBPcGVuU3BlYyBjaGFuZ2VcbiAgICAgICAgICAocHJvcG9zYWwubWQsIGRlc2lnbi5tZCwgc3BlY3Mgd2l0aCBkZWx0YXMsIHRhc2tzLm1kKSBmb3IgdGhpc1xuICAgICAgICAgIHdvcmsgaXRlbSB1bmRlciBvcGVuc3BlYy9jaGFuZ2VzLzxjaGFuZ2VTbHVnPi8g4oCUIGRvIG5vdCB3cml0ZSBhXG4gICAgICAgICAgZnJlZWZvcm0gcGxhbiBpbnN0ZWFkIG9mIHRoaXMuIFRoZW4gcmVjb3JkIHRoZSBwbGFuIGFydGlmYWN0XG4gICAgICAgICAgd2l0aCB0aGUgY2hhbmdlJ3Mgc2x1ZyBhbmQgYSBvbmUtbGluZSBzdW1tYXJ5LlxuICAgICAgYXJ0aWZhY3RzOlxuICAgICAgICAtIG5hbWU6IHBsYW5cbiAgICAgICAgICBzY2hlbWE6XG4gICAgICAgICAgICB0eXBlOiBvYmplY3RcbiAgICAgICAgICAgIHJlcXVpcmVkOiBbY2hhbmdlU2x1Zywgc3VtbWFyeV1cbiAgICAgICAgICAgIHByb3BlcnRpZXM6XG4gICAgICAgICAgICAgIGNoYW5nZVNsdWc6IHsgdHlwZTogc3RyaW5nLCBtaW5MZW5ndGg6IDEgfVxuICAgICAgICAgICAgICBzdW1tYXJ5OiB7IHR5cGU6IHN0cmluZywgbWluTGVuZ3RoOiAxIH1cbiAgICAgIHRyYW5zaXRpb25zOlxuICAgICAgICAtIG5hbWU6IHN1Ym1pdFxuICAgICAgICAgIHRvOiBvcGVuc3BlYy1wbGFuLXZlcmlmeVxuICAgICAgICAgIGdhdGVzOlxuICAgICAgICAgICAgLSB0eXBlOiBhcnRpZmFjdC1leGlzdHNcbiAgICAgICAgICAgICAgY29uZmlnOiB7IGFydGlmYWN0OiBwbGFuIH1cblxuICAgIC0gaWQ6IG9wZW5zcGVjLXBsYW4tdmVyaWZ5XG4gICAgICBkZXNjcmlwdGlvbjogPi1cbiAgICAgICAgVmVyaWZ5IHRoZSBPcGVuU3BlYyBjaGFuZ2UgaXMgcmVhbCBhbmQgd2VsbC1mb3JtZWQgKG5vdCBqdXN0IGFuXG4gICAgICAgIGFydGlmYWN0IGNsYWltaW5nIG9uZSBleGlzdHMpIGJlZm9yZSBpbXBsZW1lbnRhdGlvbiBzdGFydHMuIFJlcXVpcmVzXG4gICAgICAgIGEgaHVtYW4gdG8gYXBwcm92ZSB0aGUgJ2ltcGxlbWVudGF0aW9uLWFwcHJvdmFsJyBnYXRlIGJlZm9yZVxuICAgICAgICBhZHZhbmNpbmcgdG8gaW1wbGVtZW50aW5nLiBBIHJlamVjdCBvbiB0aGF0IGdhdGUgZG9lc24ndCBkZWFkLWVuZFxuICAgICAgICB0aGUgcnVuIOKAlCB0YWtlIHRoZSB1bmdhdGVkICdyZXdvcmsnIHRyYW5zaXRpb24gYmFjayB0byBwbGFubmluZyB0b1xuICAgICAgICBwcm9kdWNlIGEgcmV2aXNlZCBwbGFuIGFuZCBhc2sgYWdhaW4uXG4gICAgICB3b3JrOlxuICAgICAgICBtb2RlOiB3b3JrZmxvd1xuICAgICAgICB3b3JrZmxvdzpcbiAgICAgICAgICBuYW1lOiBvcGVuc3BlYy1wbGFuLXZlcmlmeVxuICAgICAgICAgIGlucHV0czpcbiAgICAgICAgICAgIGNoYW5nZVNsdWc6ICdcXCR7eyBkYXRhLmxhdGVzdChzZWxmLm5hbWUsIFwiYXJ0aWZhY3QtcGxhblwiKS5wYXlsb2FkLmNoYW5nZVNsdWcgfX0nXG4gICAgICAgIHJlc3VsdEV2aWRlbmNlOiBwbGFuLXZlcmlmeS1ydW5cbiAgICAgIHRyYW5zaXRpb25zOlxuICAgICAgICAtIG5hbWU6IHBhc3NcbiAgICAgICAgICB0bzogaW1wbGVtZW50aW5nXG4gICAgICAgICAgZ2F0ZXM6XG4gICAgICAgICAgICAtIHR5cGU6IHdvcmtmbG93LXN1Y2NlZWRlZFxuICAgICAgICAgICAgICBjb25maWc6IHsgd29ya2Zsb3c6IG9wZW5zcGVjLXBsYW4tdmVyaWZ5IH1cbiAgICAgICAgICAgIC0gdHlwZTogaHVtYW4tYXBwcm92YWxcbiAgICAgICAgICAgICAgY29uZmlnOiB7IGlkOiBpbXBsZW1lbnRhdGlvbi1hcHByb3ZhbCB9XG4gICAgICAgIC0gbmFtZTogZmFpbFxuICAgICAgICAgIHRvOiBwbGFubmluZ1xuICAgICAgICAgIGdhdGVzOlxuICAgICAgICAgICAgLSB0eXBlOiBldmlkZW5jZS1yZWNvcmRlZFxuICAgICAgICAgICAgICBjb25maWc6IHsgbmFtZTogcGxhbi12ZXJpZnktcnVuLCByZXF1aXJlRmllbGQ6IHsgc3RhdHVzOiBmYWlsZWQgfSB9XG4gICAgICAgIC0gbmFtZTogcmV3b3JrXG4gICAgICAgICAgdG86IHBsYW5uaW5nXG4gICAgICAgICAgZ2F0ZXM6IFtdXG5cbiAgICAtIGlkOiBpbXBsZW1lbnRpbmdcbiAgICAgIGRlc2NyaXB0aW9uOiBJbXBsZW1lbnQgdGhlIE9wZW5TcGVjIGNoYW5nZSdzIHRhc2tzIG9uIGEgYnJhbmNoLlxuICAgICAgd29yazpcbiAgICAgICAgbW9kZTogaW50ZXJhY3RpdmVcbiAgICAgICAgc3lzdGVtUHJvbXB0OiA+LVxuICAgICAgICAgIFVzZSB0aGUgb3BlbnNwZWMtYXBwbHktY2hhbmdlIHNraWxsIGFnYWluc3QgdGhlIGNoYW5nZSByZWNvcmRlZFxuICAgICAgICAgIGluIHRoZSBwbGFuIGFydGlmYWN0J3MgY2hhbmdlU2x1ZyDigJQgd29yayB0aHJvdWdoIGl0cyB0YXNrcy5tZFxuICAgICAgICAgIG9uZSB0YXNrIGF0IGEgdGltZSwgY2hlY2tpbmcgZWFjaCBvZmYgKFxcYC0gWyBdXFxgIC0+IFxcYC0gW3hdXFxgKSBhc1xuICAgICAgICAgIHlvdSBjb21wbGV0ZSBpdCwgdW50aWwgZXZlcnkgdGFzayBpcyBkb25lLiBDb21taXQgdGhlIHdvcmsgb24gYVxuICAgICAgICAgIGZlYXR1cmUgYnJhbmNoLiBSZWNvcmQgdGhlIGNoYW5nZS1zdW1tYXJ5IGFydGlmYWN0IGFuZCB0aGVcbiAgICAgICAgICBjaGFuZ2UtcmVxdWVzdCBldmlkZW5jZSAoYnJhbmNoIG5hbWUgYW5kIGhlYWQgY29tbWl0IHNoYSDigJQgbm9cbiAgICAgICAgICBQUiB5ZXQsIHRoYXQgaGFwcGVucyBhZnRlciBwcmUtUFIgdmVyaWZpY2F0aW9uIHBhc3NlcykuXG4gICAgICBhcnRpZmFjdHM6XG4gICAgICAgIC0gbmFtZTogY2hhbmdlLXN1bW1hcnlcbiAgICAgICAgICBzY2hlbWE6XG4gICAgICAgICAgICB0eXBlOiBvYmplY3RcbiAgICAgICAgICAgIHJlcXVpcmVkOiBbc3VtbWFyeSwgaGVhZFNoYV1cbiAgICAgICAgICAgIHByb3BlcnRpZXM6XG4gICAgICAgICAgICAgIHN1bW1hcnk6IHsgdHlwZTogc3RyaW5nLCBtaW5MZW5ndGg6IDEgfVxuICAgICAgICAgICAgICBoZWFkU2hhOiB7IHR5cGU6IHN0cmluZywgbWluTGVuZ3RoOiA3IH1cbiAgICAgIGV2aWRlbmNlOlxuICAgICAgICAtIG5hbWU6IGNoYW5nZS1yZXF1ZXN0XG4gICAgICAgICAgc2NoZW1hOlxuICAgICAgICAgICAgdHlwZTogb2JqZWN0XG4gICAgICAgICAgICByZXF1aXJlZDogW2JyYW5jaCwgaGVhZFNoYV1cbiAgICAgICAgICAgIHByb3BlcnRpZXM6XG4gICAgICAgICAgICAgIGJyYW5jaDogeyB0eXBlOiBzdHJpbmcsIG1pbkxlbmd0aDogMSB9XG4gICAgICAgICAgICAgIGhlYWRTaGE6IHsgdHlwZTogc3RyaW5nLCBtaW5MZW5ndGg6IDcgfVxuICAgICAgICAgICAgICB1cmw6IHsgdHlwZTogc3RyaW5nIH1cbiAgICAgIHRyYW5zaXRpb25zOlxuICAgICAgICAtIG5hbWU6IHN1Ym1pdFxuICAgICAgICAgIHRvOiBvcGVuc3BlYy10YXNrcy12ZXJpZnlcbiAgICAgICAgICBnYXRlczpcbiAgICAgICAgICAgIC0gdHlwZTogYXJ0aWZhY3QtZXhpc3RzXG4gICAgICAgICAgICAgIGNvbmZpZzogeyBhcnRpZmFjdDogY2hhbmdlLXN1bW1hcnkgfVxuICAgICAgICAgICAgLSB0eXBlOiBldmlkZW5jZS1yZWNvcmRlZFxuICAgICAgICAgICAgICBjb25maWc6IHsgbmFtZTogY2hhbmdlLXJlcXVlc3QgfVxuXG4gICAgLSBpZDogb3BlbnNwZWMtdGFza3MtdmVyaWZ5XG4gICAgICBkZXNjcmlwdGlvbjogPi1cbiAgICAgICAgVmVyaWZ5IGV2ZXJ5IHRhc2sgaW4gdGhlIE9wZW5TcGVjIGNoYW5nZSBpcyBhY3R1YWxseSBjaGVja2VkIG9mZlxuICAgICAgICBiZWZvcmUgcHJlLVBSIHZlcmlmaWNhdGlvbiBydW5zLlxuICAgICAgd29yazpcbiAgICAgICAgbW9kZTogd29ya2Zsb3dcbiAgICAgICAgd29ya2Zsb3c6XG4gICAgICAgICAgbmFtZTogb3BlbnNwZWMtdGFza3MtdmVyaWZ5XG4gICAgICAgICAgaW5wdXRzOlxuICAgICAgICAgICAgY2hhbmdlU2x1ZzogJ1xcJHt7IGRhdGEubGF0ZXN0KHNlbGYubmFtZSwgXCJhcnRpZmFjdC1wbGFuXCIpLnBheWxvYWQuY2hhbmdlU2x1ZyB9fSdcbiAgICAgICAgcmVzdWx0RXZpZGVuY2U6IHRhc2tzLXZlcmlmeS1ydW5cbiAgICAgIHRyYW5zaXRpb25zOlxuICAgICAgICAtIG5hbWU6IHBhc3NcbiAgICAgICAgICB0bzogcHJlLXByLXZlcmlmeVxuICAgICAgICAgIGdhdGVzOlxuICAgICAgICAgICAgLSB0eXBlOiB3b3JrZmxvdy1zdWNjZWVkZWRcbiAgICAgICAgICAgICAgY29uZmlnOiB7IHdvcmtmbG93OiBvcGVuc3BlYy10YXNrcy12ZXJpZnkgfVxuICAgICAgICAtIG5hbWU6IGZhaWxcbiAgICAgICAgICB0bzogaW1wbGVtZW50aW5nXG4gICAgICAgICAgZ2F0ZXM6XG4gICAgICAgICAgICAtIHR5cGU6IGV2aWRlbmNlLXJlY29yZGVkXG4gICAgICAgICAgICAgIGNvbmZpZzogeyBuYW1lOiB0YXNrcy12ZXJpZnktcnVuLCByZXF1aXJlRmllbGQ6IHsgc3RhdHVzOiBmYWlsZWQgfSB9XG5cbiAgICAtIGlkOiBwcmUtcHItdmVyaWZ5XG4gICAgICBkZXNjcmlwdGlvbjogPi1cbiAgICAgICAgUHJlLVBSIHZlcmlmaWNhdGlvbjogYnVpbGQvc3ludGgvdGVzdC9saW50IHBsdXMgdGhlIGFyY2hpdGVjdHVyZVxuICAgICAgICBydWxlIHJlZ2lzdHJ5LCBydW4gYmVmb3JlIHRoZSBQUiBpcyBvcGVuZWQgcmF0aGVyIHRoYW4gcmVseWluZyBvblxuICAgICAgICBDSSBhZnRlciB0aGUgZmFjdC4gSWYgdGhlIGJvdW5kIGNvbW1pdCBuZWVkcyB0byBjaGFuZ2UgKHJlYmFzZSxcbiAgICAgICAgZml4dXAsIGh1bWFuLXJlcXVlc3RlZCBlZGl0KSB3aXRob3V0IGEgcmVhbCB2ZXJpZmljYXRpb24gZmFpbHVyZSxcbiAgICAgICAgdGFrZSB0aGUgdW5nYXRlZCAncmV3b3JrJyB0cmFuc2l0aW9uIGJhY2sgdG8gaW1wbGVtZW50aW5nIGluc3RlYWRcbiAgICAgICAgb2YgcmVjb3JkaW5nIGEgZmFicmljYXRlZCAnZmFpbCcuXG4gICAgICB3b3JrOlxuICAgICAgICBtb2RlOiB3b3JrZmxvd1xuICAgICAgICB3b3JrZmxvdzpcbiAgICAgICAgICBuYW1lOiBwcmUtcHItdmVyaWZ5XG4gICAgICAgICAgaW5wdXRzOlxuICAgICAgICAgICAgY29tbWl0OiAnXFwke3sgZGF0YS5sYXRlc3Qoc2VsZi5uYW1lLCBcImV2aWRlbmNlLWNoYW5nZS1yZXF1ZXN0XCIpLnBheWxvYWQuaGVhZFNoYSB9fSdcbiAgICAgICAgICAgIGJyYW5jaDogJ1xcJHt7IGRhdGEubGF0ZXN0KHNlbGYubmFtZSwgXCJldmlkZW5jZS1jaGFuZ2UtcmVxdWVzdFwiKS5wYXlsb2FkLmJyYW5jaCB9fSdcbiAgICAgICAgcmVzdWx0RXZpZGVuY2U6IHZlcmlmeS1ydW5cbiAgICAgIHRyYW5zaXRpb25zOlxuICAgICAgICAtIG5hbWU6IHBhc3NcbiAgICAgICAgICB0bzogb3Blbi1wclxuICAgICAgICAgIGdhdGVzOlxuICAgICAgICAgICAgLSB0eXBlOiB3b3JrZmxvdy1zdWNjZWVkZWRcbiAgICAgICAgICAgICAgY29uZmlnOiB7IHdvcmtmbG93OiBwcmUtcHItdmVyaWZ5IH1cbiAgICAgICAgLSBuYW1lOiBmYWlsXG4gICAgICAgICAgdG86IGltcGxlbWVudGluZ1xuICAgICAgICAgIGdhdGVzOlxuICAgICAgICAgICAgLSB0eXBlOiBldmlkZW5jZS1yZWNvcmRlZFxuICAgICAgICAgICAgICBjb25maWc6IHsgbmFtZTogdmVyaWZ5LXJ1biwgcmVxdWlyZUZpZWxkOiB7IHN0YXR1czogZmFpbGVkIH0gfVxuICAgICAgICAtIG5hbWU6IHJld29ya1xuICAgICAgICAgIHRvOiBpbXBsZW1lbnRpbmdcbiAgICAgICAgICBnYXRlczogW11cblxuICAgIC0gaWQ6IG9wZW4tcHJcbiAgICAgIGRlc2NyaXB0aW9uOiA+LVxuICAgICAgICBPcGVuIHRoZSBwdWxsIHJlcXVlc3Qgbm93IHRoYXQgcHJlLVBSIHZlcmlmaWNhdGlvbiBoYXMgcGFzc2VkLiBJZlxuICAgICAgICB0aGUgYm91bmQgY29tbWl0IG5lZWRzIHRvIGNoYW5nZSBhZnRlciBlbnRlcmluZyB0aGlzIHN0YWdlIChlLmcuXG4gICAgICAgIG1haW4gbW92ZWQgYW5kIHRoZSBicmFuY2ggbmVlZHMgYSByZWJhc2UpLCBhIGh1bWFuIGNhbiBhcHByb3ZlIHRoZVxuICAgICAgICAncmV3b3JrLWFwcHJvdmFsJyBnYXRlIHRvIHRha2UgdGhlICdyZXdvcmsnIHRyYW5zaXRpb24gYmFjayB0b1xuICAgICAgICBpbXBsZW1lbnRpbmcgcmF0aGVyIHRoYW4gYWJvcnRpbmcgdGhlIHJ1bi5cbiAgICAgIHdvcms6XG4gICAgICAgIG1vZGU6IGludGVyYWN0aXZlXG4gICAgICAgIHN5c3RlbVByb21wdDogPi1cbiAgICAgICAgICBCZWZvcmUgb3BlbmluZyB0aGUgUFIsIGZldGNoIHRoZSByZWFsIHByZS1wci12ZXJpZnkgdmVyaWZpY2F0aW9uXG4gICAgICAgICAgcmVwb3J0IHdpdGggXFxgc3dhbXAgZGF0YSBxdWVyeSAnbW9kZWxUeXBlID09IFwid29ya2Zsb3dcIiAmJlxuICAgICAgICAgIG1vZGVsTmFtZSA9PSBcInByZS1wci12ZXJpZnlcIiAmJiBuYW1lID09XG4gICAgICAgICAgXCJyZXBvcnQtc3dhbXAtdmVyaWZpY2F0aW9uLXN1bW1hcnlcIicgLS1zZWxlY3QgY29udGVudCAtLWpzb25cXGAsXG4gICAgICAgICAgdGFrZSB0aGUgZW50cnkgdGhhdCBuYW1lcyB0aGlzIHJ1bidzIGhlYWQgc2hhIChhbiBlcnJvciByZXBvcnQgaXNcbiAgICAgICAgICBzdG9yZWQgdW5kZXIgdGhlIHNhbWUgbmFtZSBpZiB0aGUgcmVwb3J0IGNvdWxkIG5vdCBydW4g4oCUIG5ldmVyXG4gICAgICAgICAgZW1iZWQgb25lKS4gSWYgbm8gZW50cnkgbmFtZXMgdGhlIGhlYWQgc2hhLCBzdG9wIGFuZCByZXBvcnQgdGhhdFxuICAgICAgICAgIOKAlCBkbyBub3Qgb3BlbiB0aGUgUFIuIE90aGVyd2lzZSBpbmNsdWRlIHRoZSBlbnRyeSdzIGNvbnRlbnRcbiAgICAgICAgICB2ZXJiYXRpbSAoYXMgYSBtYXJrZG93biBibG9jaywgZS5nLiB1bmRlciBhIFwiUHJlLVBSIHZlcmlmaWNhdGlvblwiXG4gICAgICAgICAgaGVhZGluZykgaW4gdGhlIFBSIGJvZHkg4oCUIG5ldmVyIGp1c3QgYXNzZXJ0IGluIHByb3NlIHRoYXQgY2hlY2tzXG4gICAgICAgICAgcGFzc2VkLiBBbHNvIGZldGNoIHRoaXMgc2FtZSBydW4ncyBtYW5pZmVzdCBzdGVwXG4gICAgICAgICAgb3V0cHV0IChcXGBzd2FtcCBkYXRhIHF1ZXJ5ICdtb2RlbE5hbWUgPT0gXCIke3NoZWxsTWFuaWZlc3RNb2RlbH1cIiAmJlxuICAgICAgICAgIG5hbWUgPT0gXCJyZXN1bHRcIicgLS1zZWxlY3QgYXR0cmlidXRlcy5zdGRvdXQgLS1qc29uXFxgLCB0YWtlIHRoZVxuICAgICAgICAgIGxhdGVzdCkgYW5kIGFwcGVuZCBpdCB0byB0aGUgUFIgYm9keSBhc1xuICAgICAgICAgIFxcYDwhLS0gYXR0ZXN0YXRpb24tbWFuaWZlc3Qge1wiY29tbWl0XCI6IFwiPGhlYWRTaGE+XCIsIFwic3RhdHVzXCI6XG4gICAgICAgICAgXCJzdWNjZWVkZWRcIiwgLi4udGhlIG1hbmlmZXN0IHN0ZXAncyBKU09OLCBzcHJlYWQgaW4uLi59IC0tPlxcYCDigJQgYW5cbiAgICAgICAgICBIVE1MIGNvbW1lbnQgc28gaXQncyBpbnZpc2libGUgd2hlbiByZW5kZXJlZCBidXQgc3RpbGwgcHJlc2VudCBpblxuICAgICAgICAgIHRoZSByYXcgYm9keSB0ZXh0IHZlcmlmeS1hdHRlc3RhdGlvbi55bWwgcmVhZHMgdmlhIHRoZSBHaXRIdWIgQVBJLlxuICAgICAgICAgIEFsc28gZmV0Y2ggdGhlIHBsYW4gYXJ0aWZhY3QncyBjaGFuZ2VTbHVnIGFuZCBpbmNsdWRlIGFuIGV4cGxpY2l0XG4gICAgICAgICAgXCJPcGVuU3BlYyBjaGFuZ2VcIiBsaW5lIGluIHRoZSBQUiBib2R5IG5hbWluZyBpdCBhbmQgaXRzIHBhdGhcbiAgICAgICAgICAoXFxgb3BlbnNwZWMvY2hhbmdlcy88Y2hhbmdlU2x1Zz4vXFxgKSDigJQgZXZlcnkgUFIgdGhlIGZhY3Rvcnkgb3BlbnNcbiAgICAgICAgICBtdXN0IGNhbGwgb3V0IHdoaWNoIE9wZW5TcGVjIGNoYW5nZShzKSBkcm92ZSB0aGUgc2Vzc2lvbiwgbm90XG4gICAgICAgICAganVzdCBpbXBseSBpdC4gSWYgcGxhbm5pbmcgY3ljbGVkIHRocm91Z2ggbW9yZSB0aGFuIG9uZSBjaGFuZ2VcbiAgICAgICAgICAoYSByZXdvcmsgbG9vcCBwcm9kdWNlZCBhIG5ldyBjaGFuZ2VTbHVnKSwgbGlzdCBldmVyeSBkaXN0aW5jdFxuICAgICAgICAgIGNoYW5nZVNsdWcgcmVjb3JkZWQgYWNyb3NzIHRoZSBydW4ncyBwbGFuIGFydGlmYWN0IHZlcnNpb25zLCBub3RcbiAgICAgICAgICBvbmx5IHRoZSBsYXRlc3QuIFRoZSBQUiB0aXRsZSBNVVNUIHN0YXJ0IHdpdGggYSBDb252ZW50aW9uYWxcbiAgICAgICAgICBDb21taXRzIHByZWZpeCBpbiB0aGUgZm9ybSBcXGB0eXBlKHNjb3BlKTogc3VtbWFyeVxcYCDigJQgXFxgdHlwZVxcYCBpc1xuICAgICAgICAgIFxcYGZlYXRcXGAgZm9yIG5ldyBjYXBhYmlsaXRpZXMsIFxcYGZpeFxcYCBmb3IgYnVnIGZpeGVzLCBvciBcXGBjaG9yZVxcYFxuICAgICAgICAgIGZvciB0b29saW5nL21haW50ZW5hbmNlIHdpdGggbm8gYmVoYXZpb3IgY2hhbmdlIChmYWxsIGJhY2sgdG9cbiAgICAgICAgICBcXGByZWZhY3RvclxcYC9cXGBkb2NzXFxgL1xcYHRlc3RcXGAgb25seSBpZiBub25lIG9mIHRob3NlIGZpdCksIGNob3NlblxuICAgICAgICAgIGZyb20gdGhlIGludGFrZSBpc3N1ZSBhbmQgT3BlblNwZWMgY2hhbmdlKHMpOyBcXGBzY29wZVxcYCBuYW1lcyB0aGVcbiAgICAgICAgICBhZmZlY3RlZCBwYWNrYWdlIChlLmcuIFxcYHByb2plblxcYCwgXFxgY2xlcmstYXV0aG9yaXplclxcYCkuIFRoaXNcbiAgICAgICAgICByZXBvJ3MgUFItZGVwbG95IGFuZCBQUi1jbGVhbnVwIGF1dG9tYXRpb24gb25seSB0cmlnZ2VyIGZvclxuICAgICAgICAgIHRpdGxlcyBzdGFydGluZyB3aXRoIFxcYGZpeFxcYCBvciBcXGBmZWF0XFxgLCBhbmQgZXZlcnkgbWVyZ2VkIFBSIGluXG4gICAgICAgICAgdGhpcyByZXBvIGZvbGxvd3MgdGhpcyBjb252ZW50aW9uIOKAlCBhbiB1bnR5cGVkIHRpdGxlIGJyZWFrcyBib3RoLlxuICAgICAgICAgIFRoZW4gY2FsbCAke3ByTW9kZWx9J3Mgb3BlblByIG1ldGhvZFxuICAgICAgICAgIChyZXBvPSR7cmVwb30sIGhlYWQ9PHRoZSBicmFuY2ggcmVjb3JkZWQgaW5cbiAgICAgICAgICBjaGFuZ2UtcmVxdWVzdCBldmlkZW5jZT4sIGJhc2U9JHtiYXNlQnJhbmNofSwgZHJ5UnVuPWZhbHNlKSwgd2l0aFxuICAgICAgICAgIHRpdGxlL2JvZHkgcmVmZXJlbmNpbmcgdGhlIGludGFrZSBzdGFnZSdzIGlzc3VlIG51bWJlciwgdGhlXG4gICAgICAgICAgT3BlblNwZWMgY2hhbmdlKHMpLCB0aGUgYXR0ZXN0YXRpb24gYmxvY2ssIGFuZCB0aGUgbWFuaWZlc3RcbiAgICAgICAgICBjb21tZW50LiBJZiBvcGVuUHIgZmFpbHMgc3BlY2lmaWNhbGx5IGJlY2F1c2UgdGhlIHZhdWx0IGNhbid0XG4gICAgICAgICAgcmVzb2x2ZSBHSVRIVUJfVE9LRU4gKGFuIGVycm9yIG5hbWluZyBcXGBHSVRIVUJfVE9LRU5cXGAgYXMgbm90XG4gICAgICAgICAgZm91bmQpLCBkb24ndCB0cmVhdCB0aGF0IGFzIHRlcm1pbmFsIOKAlCBmYWxsIGJhY2sgdG8gb3BlbmluZyB0aGVcbiAgICAgICAgICBQUiB2aWEgdGhlIFxcYGdoXFxgIENMSSBpbnN0ZWFkOiBwdXNoIHRoZSBicmFuY2ggcmVjb3JkZWQgaW5cbiAgICAgICAgICBjaGFuZ2UtcmVxdWVzdCBldmlkZW5jZSB3aXRoIFxcYGdpdCBwdXNoIC11IG9yaWdpbiA8YnJhbmNoPlxcYCBpZiBpdFxuICAgICAgICAgIGlzbid0IGFscmVhZHkgcHVzaGVkLCB3cml0ZSB0aGUgZXhhY3Qgc2FtZSB0aXRsZSBhbmQgYm9keVxuICAgICAgICAgIChhdHRlc3RhdGlvbiBibG9jaywgbWFuaWZlc3QgY29tbWVudCwgYW5kIE9wZW5TcGVjIGNoYW5nZVxuICAgICAgICAgIGxpbmUocykgaW5jbHVkZWQpIHRvIGEgdGVtcCBmaWxlLCBhbmQgcnVuIFxcYGdoIHByIGNyZWF0ZSAtLXRpdGxlXG4gICAgICAgICAgXCI8dGl0bGU+XCIgLS1ib2R5LWZpbGUgPHBhdGg+IC0tYmFzZSAke2Jhc2VCcmFuY2h9IC0taGVhZCA8YnJhbmNoPiAtLXJlcG9cbiAgICAgICAgICAke3JlcG99XFxgLiBBbnkgb3RoZXIgb3BlblByIGZhaWx1cmVcbiAgICAgICAgICAoYmFkIGFyZ3VtZW50cywgbmV0d29yaywgcGVybWlzc2lvbnMpIE1VU1Qgc3RpbGwgYmUgc3VyZmFjZWQgYXNcbiAgICAgICAgICBhIHJlYWwgZmFpbHVyZSwgbm90IHBhcGVyZWQgb3ZlciB3aXRoIHRoaXMgZmFsbGJhY2suIFRoZW4gcmVjb3JkXG4gICAgICAgICAgdGhlIHByLW9wZW5lZCBldmlkZW5jZSB3aXRoIHRoZSByZXR1cm5lZCBQUiB1cmwgYW5kIG51bWJlciDigJRcbiAgICAgICAgICBmcm9tIG9wZW5QcidzIHJlc3BvbnNlIG9uIHRoZSBwcmltYXJ5IHBhdGgsIG9yIGJ5IHBhcnNpbmcgXFxgZ2ggcHJcbiAgICAgICAgICBjcmVhdGVcXGAncyBvdXRwdXQgKG9yIGEgZm9sbG93LXVwIFxcYGdoIHByIHZpZXcgPGJyYW5jaD4gLS1qc29uXG4gICAgICAgICAgbnVtYmVyLHVybFxcYCkgb24gdGhlIGZhbGxiYWNrIHBhdGguXG4gICAgICBldmlkZW5jZTpcbiAgICAgICAgLSBuYW1lOiBwci1vcGVuZWRcbiAgICAgICAgICBzY2hlbWE6XG4gICAgICAgICAgICB0eXBlOiBvYmplY3RcbiAgICAgICAgICAgIHJlcXVpcmVkOiBbdXJsLCBudW1iZXJdXG4gICAgICAgICAgICBwcm9wZXJ0aWVzOlxuICAgICAgICAgICAgICB1cmw6IHsgdHlwZTogc3RyaW5nLCBtaW5MZW5ndGg6IDEgfVxuICAgICAgICAgICAgICBudW1iZXI6IHsgdHlwZTogaW50ZWdlciB9XG4gICAgICB0cmFuc2l0aW9uczpcbiAgICAgICAgLSBuYW1lOiBzdWJtaXRcbiAgICAgICAgICB0bzogZG9uZVxuICAgICAgICAgIGdhdGVzOlxuICAgICAgICAgICAgLSB0eXBlOiBldmlkZW5jZS1yZWNvcmRlZFxuICAgICAgICAgICAgICBjb25maWc6IHsgbmFtZTogcHItb3BlbmVkIH1cbiAgICAgICAgLSBuYW1lOiByZXdvcmtcbiAgICAgICAgICB0bzogaW1wbGVtZW50aW5nXG4gICAgICAgICAgZ2F0ZXM6XG4gICAgICAgICAgICAtIHR5cGU6IGh1bWFuLWFwcHJvdmFsXG4gICAgICAgICAgICAgIGNvbmZpZzogeyBpZDogcmV3b3JrLWFwcHJvdmFsIH1cblxuICAgIC0gaWQ6IGRvbmVcbiAgICAgIHRlcm1pbmFsOiB0cnVlXG5cbiAgICAtIGlkOiBhYm9ydGVkXG4gICAgICB0ZXJtaW5hbDogdHJ1ZVxuXG4gIGdsb2JhbFRyYW5zaXRpb25zOlxuICAgIC0gbmFtZTogYWJvcnRcbiAgICAgIHRvOiBhYm9ydGVkXG4gICAgICBnYXRlczpcbiAgICAgICAgLSB0eXBlOiBodW1hbi1hcHByb3ZhbFxuICAgICAgICAgIGNvbmZpZzogeyBpZDogYWJvcnQtY29uZmlybWF0aW9uIH1cbm1ldGhvZHM6IHt9XG5gLFxuICAgIH0pO1xuICB9XG59XG4iXX0=
|
|
@@ -161,6 +161,15 @@ description: >-
|
|
|
161
161
|
opens a PR rather than after — build/synth/test/lint (pnpm build) and the
|
|
162
162
|
architecture rule registry (pnpm validate:architecture). Both must pass.
|
|
163
163
|
tags: {}
|
|
164
|
+
# Required explicitly rather than relied on as a default. swamp stopped running
|
|
165
|
+
# @swamp/verification-attestation by default in v20260831.202137.0 (swamp-club#1918)
|
|
166
|
+
# and stopped providing it in 20261005.190003.0. @swamp/verification-summary replaces
|
|
167
|
+
# it, with the same content under the data name report-swamp-verification-summary.
|
|
168
|
+
# A workflow that requires a report the installed swamp does not provide still exits 0
|
|
169
|
+
# and stores an error report in its place, so the open-pr stage would embed that.
|
|
170
|
+
reports:
|
|
171
|
+
require:
|
|
172
|
+
- "@swamp/verification-summary"
|
|
164
173
|
inputs:
|
|
165
174
|
type: object
|
|
166
175
|
properties:
|
|
@@ -168,11 +177,11 @@ inputs:
|
|
|
168
177
|
type: string
|
|
169
178
|
description: >-
|
|
170
179
|
The commit sha being verified. Read by the built-in
|
|
171
|
-
@swamp/verification-
|
|
172
|
-
real HEAD sha or the
|
|
180
|
+
@swamp/verification-summary report's subject.commit — pass the
|
|
181
|
+
real HEAD sha or the report renders "unknown".
|
|
173
182
|
branch:
|
|
174
183
|
type: string
|
|
175
|
-
description: Same as commit, but for @swamp/verification-
|
|
184
|
+
description: Same as commit, but for @swamp/verification-summary's subject.branch.
|
|
176
185
|
${shellPortabilityNote}
|
|
177
186
|
jobs:
|
|
178
187
|
- name: verify
|
|
@@ -346,4 +355,4 @@ version: 1
|
|
|
346
355
|
}
|
|
347
356
|
}
|
|
348
357
|
exports.SoftwareFactoryWorkflows = SoftwareFactoryWorkflows;
|
|
349
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU29mdHdhcmVGYWN0b3J5V29ya2Zsb3dzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL1NvZnR3YXJlRmFjdG9yeVdvcmtmbG93cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtQ0FBb0M7QUFDcEMsbUNBQThDO0FBQzlDLHNEQUF3RTtBQUN4RSxtQ0FBMkQ7QUFDM0QscUVBQXlGO0FBZXpGOzs7Ozs7Ozs7OztHQVdHO0FBQ0gsTUFBYSx3QkFBd0I7SUFDbkMsWUFBWSxPQUFvQixFQUFFLE9BQXdDO1FBQ3hFLE1BQU0sRUFBRSxRQUFRLEVBQUUsR0FBRyxPQUFPLENBQUM7UUFDN0IsTUFBTSxVQUFVLEdBQUcsR0FBRyxRQUFRLFFBQVEsQ0FBQztRQUN2QyxNQUFNLHNCQUFzQixHQUFHLEdBQUcsUUFBUSxxQkFBcUIsQ0FBQztRQUNoRSxNQUFNLGtCQUFrQixHQUFHLEdBQUcsUUFBUSxpQkFBaUIsQ0FBQztRQUV4RCx3RkFBd0Y7UUFDeEYsbUZBQW1GO1FBQ25GLDJGQUEyRjtRQUMzRix3RkFBd0Y7UUFDeEYsc0ZBQXNGO1FBQ3RGLDJGQUEyRjtRQUMzRixrRkFBa0Y7UUFDbEYscUZBQXFGO1FBQ3JGLHlGQUF5RjtRQUN6RixnQkFBZ0I7UUFDaEIsTUFBTSxvQkFBb0IsR0FBRzs7Ozs7Ozs7K0JBUUYsQ0FBQztRQUU1QixJQUFJLG1CQUFVLENBQUMsT0FBTyxFQUFFLDhDQUE4QyxFQUFFO1lBQ3RFLFFBQVEsRUFBRSxPQUFPLElBQUEsbUJBQVUsR0FBRTs7Ozs7Ozs7Ozs7Ozs7O0VBZWpDLG9CQUFvQjs7Ozs7Ozs7OzJCQVNLLFVBQVU7Ozs7Ozs7Ozs7Ozt3Q0FZRyxVQUFVOzs7O3FEQUlHLFVBQVU7Ozs7Ozs7Ozs7OztDQVk5RDtTQUNJLENBQUMsQ0FBQztRQUVILElBQUksbUJBQVUsQ0FBQyxPQUFPLEVBQUUsK0NBQStDLEVBQUU7WUFDdkUsUUFBUSxFQUFFLE9BQU8sSUFBQSxtQkFBVSxHQUFFOzs7Ozs7Ozs7Ozs7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QUE1VUQsNERBNFVDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcmFuZG9tVVVJRCB9IGZyb20gJ2NyeXB0byc7XG5pbXBvcnQgeyBTYW1wbGVGaWxlLCBZYW1sRmlsZSB9IGZyb20gJ3Byb2plbic7XG5pbXBvcnQgeyBOb2RlUGFja2FnZU1hbmFnZXIsIE5vZGVQcm9qZWN0IH0gZnJvbSAncHJvamVuL2xpYi9qYXZhc2NyaXB0JztcbmltcG9ydCB7IGluc3RhbGxDb21tYW5kLCBydW5TY3JpcHRDb21tYW5kIH0gZnJvbSAnLi91dGlscyc7XG5pbXBvcnQgeyByZXNvbHZlQWN0aW9uVmVyc2lvbnMsIFdvcmtmbG93QWN0aW9uVmVyc2lvbnMgfSBmcm9tICcuL1dvcmtmbG93QWN0aW9uVmVyc2lvbnMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFNvZnR3YXJlRmFjdG9yeVdvcmtmbG93c09wdGlvbnMge1xuICAvKipcbiAgICogVGhlIGJhcmUgcmVwbyBuYW1lLCB1c2VkIHRvIGRlcml2ZSB0aGUgYDxyZXBvTmFtZT4tc2hlbGxbLWFyY2hpdGVjdHVyZXwtbWFuaWZlc3RdYFxuICAgKiBtb2RlbCBuYW1lcyB0aGVzZSB3b3JrZmxvd3MgZGlzcGF0Y2ggc2hlbGwgY29tbWFuZHMgdGhyb3VnaC5cbiAgICovXG4gIHJlYWRvbmx5IHJlcG9OYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE92ZXJyaWRlcyBmb3IgdGhlIHBpbm5lZCBhY3Rpb24gdmVyc2lvbnMgdXNlZCBieSBgdmVyaWZ5LWF0dGVzdGF0aW9uLnltbGAuXG4gICAqL1xuICByZWFkb25seSBhY3Rpb25WZXJzaW9ucz86IFdvcmtmbG93QWN0aW9uVmVyc2lvbnM7XG59XG5cbi8qKlxuICogVGhlIDMgc3dhbXAgd29ya2Zsb3dzIHRoZSBmYWN0b3J5J3MgZ2F0ZSBzdGFnZXMgcnVuIChvcGVuc3BlYy1wbGFuLXZlcmlmeSxcbiAqIG9wZW5zcGVjLXRhc2tzLXZlcmlmeSwgcHJlLXByLXZlcmlmeSksIHBsdXMgdGhlIEdpdEh1YiBBY3Rpb24gdGhhdFxuICogcmUtdmVyaWZpZXMgYSBQUidzIGVtYmVkZGVkIGF0dGVzdGF0aW9uIGF0IG1lcmdlIHRpbWUuXG4gKlxuICogVGhlIHN3YW1wIHdvcmtmbG93IFlBTUxzIGNhcnJ5IGEgc3dhbXAtYXNzaWduZWQgYGlkYCB0aGF0IG11c3Qgc3RheSBzdGFibGVcbiAqIGFjcm9zcyBzeW50aHMgKHN3YW1wIHVzZXMgaXQgYXMgdGhlIHdvcmtmbG93J3MgaWRlbnRpdHkpLCBzbyDigJQgbGlrZSB0aGVcbiAqIG1vZGVsIGluc3RhbmNlcyBpbiBgU29mdHdhcmVGYWN0b3J5TW9kZWxzYCDigJQgdGhleSdyZSBgU2FtcGxlRmlsZWBzLCB3cml0dGVuXG4gKiBvbmNlIGFuZCB0aGVuIG93bmVkIGJ5IHRoZSB0ZWFtLiBgdmVyaWZ5LWF0dGVzdGF0aW9uLnltbGAgaGFzIG5vIHN1Y2hcbiAqIGlkZW50aXR5IGNvbnN0cmFpbnQgYW5kIGlzIGEgcGxhaW4gR2l0SHViIEFjdGlvbnMgd29ya2Zsb3csIHNvIGl0J3MgYnVpbHRcbiAqIHRoZSBzYW1lIG1hbmFnZWQgd2F5IGBQckRlcGxveVdvcmtmbG93YCBpcy5cbiAqL1xuZXhwb3J0IGNsYXNzIFNvZnR3YXJlRmFjdG9yeVdvcmtmbG93cyB7XG4gIGNvbnN0cnVjdG9yKHByb2plY3Q6IE5vZGVQcm9qZWN0LCBvcHRpb25zOiBTb2Z0d2FyZUZhY3RvcnlXb3JrZmxvd3NPcHRpb25zKSB7XG4gICAgY29uc3QgeyByZXBvTmFtZSB9ID0gb3B0aW9ucztcbiAgICBjb25zdCBzaGVsbE1vZGVsID0gYCR7cmVwb05hbWV9LXNoZWxsYDtcbiAgICBjb25zdCBzaGVsbEFyY2hpdGVjdHVyZU1vZGVsID0gYCR7cmVwb05hbWV9LXNoZWxsLWFyY2hpdGVjdHVyZWA7XG4gICAgY29uc3Qgc2hlbGxNYW5pZmVzdE1vZGVsID0gYCR7cmVwb05hbWV9LXNoZWxsLW1hbmlmZXN0YDtcblxuICAgIC8vIEVhY2ggam9iIHN0ZXAncyBgcnVuOmAgYmVsb3cgZXhlY3V0ZXMgdGhyb3VnaCBzd2FtcCdzIGNvbW1hbmQvc2hlbGwgbW9kZWwsIHdoaWNoIHJ1bnNcbiAgICAvLyB0aGUgc3RyaW5nIHRocm91Z2ggdGhlIGhvc3QncyBuYXRpdmUgc2hlbGwg4oCUIGJhc2gvc2ggb24gbWFjT1MvTGludXgsIGJ1dCBXaW5kb3dzXG4gICAgLy8gUG93ZXJTaGVsbCA1LjEgb24gYSBXaW5kb3dzIGRldiBtYWNoaW5lLiBQb3dlclNoZWxsIDUuMSBoYXMgbm8gYCYmYC9gfHxgIGNoYWluIG9wZXJhdG9yc1xuICAgIC8vIGFuZCBhbGlhc2VzIGBybWAgdG8gYFJlbW92ZS1JdGVtYCAod2hvc2UgYC1mYCBpcyBhbWJpZ3VvdXMgd2l0aCBgLUZpbHRlcmApLiBJZiBhIHN0ZXBcbiAgICAvLyBoZXJlIG5lZWRzIG1vcmUgdGhhbiBvbmUgY29tbWFuZCwgcHJlZmVyIGEgc2luZ2xlIHBhY2thZ2UuanNvbiBzY3JpcHQgdGhhdCBkb2VzIHRoZVxuICAgIC8vIHNlcXVlbmNpbmcsIG9yIHVzZSBgO2AgdG8gc2VwYXJhdGUgY29tbWFuZHMgKGFjY2VwdGVkIGJ5IGJvdGggc2hlbGxzLCB0aG91Z2ggaXQgZG9lcyBub3RcbiAgICAvLyBzaG9ydC1jaXJjdWl0IG9uIGZhaWx1cmUg4oCUIHJlbHkgb24gdGhlIHdvcmtmbG93J3Mgb3duIGFzc2VydCBzdGVwIGZvciB0aGF0KS4gVG9cbiAgICAvLyBmb3JjZS1kZWxldGUgYSBmaWxlIHBvcnRhYmx5LCB1c2UgYG5vZGUgLWUgXCJyZXF1aXJlKCdmcycpLnJtU3luYygnPHBhdGg+Jywge2ZvcmNlOlxuICAgIC8vIHRydWV9KVwiYCBpbnN0ZWFkIG9mIGBybSAtZiA8cGF0aD5gIChzZWUgc2hlbGxQb3J0YWJsZVNlcXVlbmNlL3NoZWxsUG9ydGFibGVGb3JjZURlbGV0ZVxuICAgIC8vIGluIHV0aWxzLnRzKS5cbiAgICBjb25zdCBzaGVsbFBvcnRhYmlsaXR5Tm90ZSA9IGAjIFBvcnRhYmlsaXR5IG5vdGU6IFxcYHJ1bjpcXGAgYmVsb3cgZXhlY3V0ZXMgdGhyb3VnaCBzd2FtcCdzIGNvbW1hbmQvc2hlbGwgbW9kZWwsIHdoaWNoIHJ1bnNcbiMgdGhlIHN0cmluZyB0aHJvdWdoIHRoZSBob3N0J3MgbmF0aXZlIHNoZWxsIOKAlCBiYXNoL3NoIG9uIG1hY09TL0xpbnV4LCBidXQgV2luZG93c1xuIyBQb3dlclNoZWxsIDUuMSBvbiBhIFdpbmRvd3MgZGV2IG1hY2hpbmUuIFBvd2VyU2hlbGwgNS4xIGhhcyBubyBcXGAmJlxcYC9cXGB8fFxcYCBjaGFpbiBvcGVyYXRvcnNcbiMgYW5kIGFsaWFzZXMgXFxgcm1cXGAgdG8gXFxgUmVtb3ZlLUl0ZW1cXGAgKHdob3NlIFxcYC1mXFxgIGlzIGFtYmlndW91cyB3aXRoIFxcYC1GaWx0ZXJcXGApLiBJZiBhIHN0ZXAgaGVyZVxuIyBuZWVkcyBtb3JlIHRoYW4gb25lIGNvbW1hbmQsIHByZWZlciBhIHNpbmdsZSBwYWNrYWdlLmpzb24gc2NyaXB0IHRoYXQgZG9lcyB0aGVcbiMgc2VxdWVuY2luZywgb3IgdXNlIFxcYDtcXGAgdG8gc2VwYXJhdGUgY29tbWFuZHMgKGFjY2VwdGVkIGJ5IGJvdGggc2hlbGxzLCB0aG91Z2ggaXQgZG9lcyBub3RcbiMgc2hvcnQtY2lyY3VpdCBvbiBmYWlsdXJlIOKAlCByZWx5IG9uIHRoZSB3b3JrZmxvdydzIG93biBhc3NlcnQgc3RlcCBmb3IgdGhhdCkuIFRvXG4jIGZvcmNlLWRlbGV0ZSBhIGZpbGUgcG9ydGFibHksIHVzZSBcXGBub2RlIC1lIFwicmVxdWlyZSgnZnMnKS5ybVN5bmMoJzxwYXRoPicsIHtmb3JjZTogdHJ1ZX0pXCJcXGBcbiMgaW5zdGVhZCBvZiBcXGBybSAtZiA8cGF0aD5cXGAuYDtcblxuICAgIG5ldyBTYW1wbGVGaWxlKHByb2plY3QsICd3b3JrZmxvd3Mvd29ya2Zsb3ctb3BlbnNwZWMtcGxhbi12ZXJpZnkueWFtbCcsIHtcbiAgICAgIGNvbnRlbnRzOiBgaWQ6ICR7cmFuZG9tVVVJRCgpfVxubmFtZTogb3BlbnNwZWMtcGxhbi12ZXJpZnlcbmRlc2NyaXB0aW9uOiA+LVxuICBGYWlscyB1bmxlc3MgdGhlIG5hbWVkIE9wZW5TcGVjIGNoYW5nZSBpcyB3ZWxsLWZvcm1lZCAocHJvcG9zYWwsIGRlc2lnbixcbiAgc3BlY3Mgd2l0aCBkZWx0YXMsIHRhc2tzIGFsbCBwcmVzZW50KSB2aWEgXFxgb3BlbnNwZWMgdmFsaWRhdGVcXGAuIEdhdGVzIHRoZVxuICBmYWN0b3J5J3MgcGxhbm5pbmcgc3RhZ2U6IGEgcmVxdWVzdCBjYW4ndCBwcm9jZWVkIHRvIGltcGxlbWVudGF0aW9uIHVudGlsXG4gIGl0J3MgYSByZWFsIE9wZW5TcGVjIGNoYW5nZSwgbm90IGp1c3QgcHJvc2UgaW4gYSBzd2FtcCBhcnRpZmFjdC5cbnRhZ3M6IHt9XG5pbnB1dHM6XG4gIHR5cGU6IG9iamVjdFxuICByZXF1aXJlZDogW2NoYW5nZVNsdWddXG4gIHByb3BlcnRpZXM6XG4gICAgY2hhbmdlU2x1ZzpcbiAgICAgIHR5cGU6IHN0cmluZ1xuICAgICAgZGVzY3JpcHRpb246IFRoZSBvcGVuc3BlYyBjaGFuZ2UgbmFtZSAob3BlbnNwZWMvY2hhbmdlcy88Y2hhbmdlU2x1Zz4vKS5cbiR7c2hlbGxQb3J0YWJpbGl0eU5vdGV9XG5qb2JzOlxuICAtIG5hbWU6IHZlcmlmeVxuICAgIGRlc2NyaXB0aW9uOiBWYWxpZGF0ZSB0aGUgT3BlblNwZWMgY2hhbmdlIGlzIGNvbXBsZXRlIGFuZCB3ZWxsLWZvcm1lZFxuICAgIHN0ZXBzOlxuICAgICAgLSBuYW1lOiB2YWxpZGF0ZVxuICAgICAgICBkZXNjcmlwdGlvbjogb3BlbnNwZWMgdmFsaWRhdGUgPGNoYW5nZVNsdWc+IC0tdHlwZSBjaGFuZ2VcbiAgICAgICAgdGFzazpcbiAgICAgICAgICB0eXBlOiBtb2RlbF9tZXRob2RcbiAgICAgICAgICBtb2RlbElkT3JOYW1lOiAke3NoZWxsTW9kZWx9XG4gICAgICAgICAgbWV0aG9kTmFtZTogZXhlY3V0ZVxuICAgICAgICAgIGlucHV0czpcbiAgICAgICAgICAgIHJ1bjogJ29wZW5zcGVjIHZhbGlkYXRlIFxcJHt7IGlucHV0cy5jaGFuZ2VTbHVnIH19IC0tdHlwZSBjaGFuZ2UnXG4gICAgICAgIGRlcGVuZHNPbjogW11cbiAgICAgICAgd2VpZ2h0OiAwXG4gICAgICAgIGFsbG93RmFpbHVyZTogZmFsc2VcbiAgICAgIC0gbmFtZTogYXNzZXJ0LXZhbGlkXG4gICAgICAgIGRlc2NyaXB0aW9uOiBvcGVuc3BlYyB2YWxpZGF0ZSBtdXN0IGV4aXQgMFxuICAgICAgICB0YXNrOlxuICAgICAgICAgIHR5cGU6IGFzc2VydFxuICAgICAgICAgIGV4cHI6ID4tXG4gICAgICAgICAgICBkYXRhLnF1ZXJ5KCdtb2RlbE5hbWUgPT0gXCIke3NoZWxsTW9kZWx9XCIgJiYgbmFtZSA9PSBcInJlc3VsdFwiICYmXG4gICAgICAgICAgICB3b3JrZmxvd1J1bklkID09IFwiJyArIHJ1bi5pZCArICdcIicpWzBdLmF0dHJpYnV0ZXMuZXhpdENvZGUgPT0gMFxuICAgICAgICAgIG1lc3NhZ2U6ID4tXG4gICAgICAgICAgICBPcGVuU3BlYyBjaGFuZ2UgaXMgbm90IHZhbGlkL2NvbXBsZXRlIChtaXNzaW5nIHByb3Bvc2FsLCBkZXNpZ24sXG4gICAgICAgICAgICBzcGVjcyB3aXRoIGRlbHRhcywgb3IgdGFza3MpIOKAlCBzZWUgdGhlICR7c2hlbGxNb2RlbH0gcmVzdWx0IGRhdGFcbiAgICAgICAgICAgIGZvciBvcGVuc3BlYydzIG93biByZW1lZGlhdGlvbiBvdXRwdXRcbiAgICAgICAgICBzZXZlcml0eTogaGlnaFxuICAgICAgICBkZXBlbmRzT246XG4gICAgICAgICAgLSBzdGVwOiB2YWxpZGF0ZVxuICAgICAgICAgICAgY29uZGl0aW9uOlxuICAgICAgICAgICAgICB0eXBlOiBzdWNjZWVkZWRcbiAgICAgICAgd2VpZ2h0OiAwXG4gICAgICAgIGFsbG93RmFpbHVyZTogZmFsc2VcbiAgICBkZXBlbmRzT246IFtdXG4gICAgd2VpZ2h0OiAwXG52ZXJzaW9uOiAxXG5gLFxuICAgIH0pO1xuXG4gICAgbmV3IFNhbXBsZUZpbGUocHJvamVjdCwgJ3dvcmtmbG93cy93b3JrZmxvdy1vcGVuc3BlYy10YXNrcy12ZXJpZnkueWFtbCcsIHtcbiAgICAgIGNvbnRlbnRzOiBgaWQ6ICR7cmFuZG9tVVVJRCgpfVxubmFtZTogb3BlbnNwZWMtdGFza3MtdmVyaWZ5XG5kZXNjcmlwdGlvbjogPi1cbiAgRmFpbHMgdW5sZXNzIGV2ZXJ5IHRhc2sgaW4gdGhlIG5hbWVkIE9wZW5TcGVjIGNoYW5nZSdzIHRhc2tzLm1kIGlzIGNoZWNrZWRcbiAgb2ZmIChvcGVuc3BlYy1nYXRlcy9jaGVjay10YXNrcy1jb21wbGV0ZS50cywgdmlhIFxcYHBucG0gcnVuXG4gIG9wZW5zcGVjOmNoZWNrLXRhc2tzLWNvbXBsZXRlXFxgKS4gR2F0ZXMgdGhlIGZhY3RvcnkncyBpbXBsZW1lbnRpbmcgc3RhZ2U6XG4gIHdvcmsgaXNuJ3QgZG9uZSB1bnRpbCB0aGUgY2hhbmdlJ3Mgb3duIHRhc2sgbGlzdCBzYXlzIGl0J3MgZG9uZSwgbm90IGp1c3RcbiAgYmVjYXVzZSBhbiBhcnRpZmFjdCB3YXMgcmVjb3JkZWQuXG50YWdzOiB7fVxuaW5wdXRzOlxuICB0eXBlOiBvYmplY3RcbiAgcmVxdWlyZWQ6IFtjaGFuZ2VTbHVnXVxuICBwcm9wZXJ0aWVzOlxuICAgIGNoYW5nZVNsdWc6XG4gICAgICB0eXBlOiBzdHJpbmdcbiAgICAgIGRlc2NyaXB0aW9uOiBUaGUgb3BlbnNwZWMgY2hhbmdlIG5hbWUgKG9wZW5zcGVjL2NoYW5nZXMvPGNoYW5nZVNsdWc+LykuXG4ke3NoZWxsUG9ydGFiaWxpdHlOb3RlfVxuam9iczpcbiAgLSBuYW1lOiB2ZXJpZnlcbiAgICBkZXNjcmlwdGlvbjogQ2hlY2sgZXZlcnkgdGFzayBpbiB0aGUgY2hhbmdlJ3MgdGFza3MubWQgaXMgY29tcGxldGVcbiAgICBzdGVwczpcbiAgICAgIC0gbmFtZTogY2hlY2stdGFza3NcbiAgICAgICAgZGVzY3JpcHRpb246IHBucG0gcnVuIG9wZW5zcGVjOmNoZWNrLXRhc2tzLWNvbXBsZXRlIC0tIDxjaGFuZ2VTbHVnPlxuICAgICAgICB0YXNrOlxuICAgICAgICAgIHR5cGU6IG1vZGVsX21ldGhvZFxuICAgICAgICAgIG1vZGVsSWRPck5hbWU6ICR7c2hlbGxNb2RlbH1cbiAgICAgICAgICBtZXRob2ROYW1lOiBleGVjdXRlXG4gICAgICAgICAgaW5wdXRzOlxuICAgICAgICAgICAgcnVuOiAncG5wbSBydW4gb3BlbnNwZWM6Y2hlY2stdGFza3MtY29tcGxldGUgLS0gXFwke3sgaW5wdXRzLmNoYW5nZVNsdWcgfX0nXG4gICAgICAgIGRlcGVuZHNPbjogW11cbiAgICAgICAgd2VpZ2h0OiAwXG4gICAgICAgIGFsbG93RmFpbHVyZTogZmFsc2VcbiAgICAgIC0gbmFtZTogYXNzZXJ0LXRhc2tzLWNvbXBsZXRlXG4gICAgICAgIGRlc2NyaXB0aW9uOiBvcGVuc3BlYzpjaGVjay10YXNrcy1jb21wbGV0ZSBtdXN0IGV4aXQgMFxuICAgICAgICB0YXNrOlxuICAgICAgICAgIHR5cGU6IGFzc2VydFxuICAgICAgICAgIGV4cHI6ID4tXG4gICAgICAgICAgICBkYXRhLnF1ZXJ5KCdtb2RlbE5hbWUgPT0gXCIke3NoZWxsTW9kZWx9XCIgJiYgbmFtZSA9PSBcInJlc3VsdFwiICYmXG4gICAgICAgICAgICB3b3JrZmxvd1J1bklkID09IFwiJyArIHJ1bi5pZCArICdcIicpWzBdLmF0dHJpYnV0ZXMuZXhpdENvZGUgPT0gMFxuICAgICAgICAgIG1lc3NhZ2U6ID4tXG4gICAgICAgICAgICBPcGVuU3BlYyBjaGFuZ2UgaGFzIGluY29tcGxldGUgdGFza3Mg4oCUIHNlZSB0aGUgJHtzaGVsbE1vZGVsfVxuICAgICAgICAgICAgcmVzdWx0IGRhdGEgZm9yIHRoZSBjb21wbGV0ZWRUYXNrcy90b3RhbFRhc2tzIGJyZWFrZG93blxuICAgICAgICAgIHNldmVyaXR5OiBoaWdoXG4gICAgICAgIGRlcGVuZHNPbjpcbiAgICAgICAgICAtIHN0ZXA6IGNoZWNrLXRhc2tzXG4gICAgICAgICAgICBjb25kaXRpb246XG4gICAgICAgICAgICAgIHR5cGU6IHN1Y2NlZWRlZFxuICAgICAgICB3ZWlnaHQ6IDBcbiAgICAgICAgYWxsb3dGYWlsdXJlOiBmYWxzZVxuICAgIGRlcGVuZHNPbjogW11cbiAgICB3ZWlnaHQ6IDBcbnZlcnNpb246IDFcbmAsXG4gICAgfSk7XG5cbiAgICBuZXcgU2FtcGxlRmlsZShwcm9qZWN0LCAnd29ya2Zsb3dzL3dvcmtmbG93LXByZS1wci12ZXJpZnkueWFtbCcsIHtcbiAgICAgIGNvbnRlbnRzOiBgaWQ6ICR7cmFuZG9tVVVJRCgpfVxubmFtZTogcHJlLXByLXZlcmlmeVxuZGVzY3JpcHRpb246ID4tXG4gIFByZS1QUiB2ZXJpZmljYXRpb246IHJ1biB0aGUgc2FtZSBjaGVja3MgQ0kgd291bGQgcnVuLCBiZWZvcmUgdGhlIGZhY3RvcnlcbiAgb3BlbnMgYSBQUiByYXRoZXIgdGhhbiBhZnRlciDigJQgYnVpbGQvc3ludGgvdGVzdC9saW50IChwbnBtIGJ1aWxkKSBhbmQgdGhlXG4gIGFyY2hpdGVjdHVyZSBydWxlIHJlZ2lzdHJ5IChwbnBtIHZhbGlkYXRlOmFyY2hpdGVjdHVyZSkuIEJvdGggbXVzdCBwYXNzLlxudGFnczoge31cbmlucHV0czpcbiAgdHlwZTogb2JqZWN0XG4gIHByb3BlcnRpZXM6XG4gICAgY29tbWl0OlxuICAgICAgdHlwZTogc3RyaW5nXG4gICAgICBkZXNjcmlwdGlvbjogPi1cbiAgICAgICAgVGhlIGNvbW1pdCBzaGEgYmVpbmcgdmVyaWZpZWQuIFJlYWQgYnkgdGhlIGJ1aWx0LWluXG4gICAgICAgIEBzd2FtcC92ZXJpZmljYXRpb24tYXR0ZXN0YXRpb24gcmVwb3J0J3Mgc3ViamVjdC5jb21taXQg4oCUIHBhc3MgdGhlXG4gICAgICAgIHJlYWwgSEVBRCBzaGEgb3IgdGhlIGF0dGVzdGF0aW9uIHJlbmRlcnMgXCJ1bmtub3duXCIuXG4gICAgYnJhbmNoOlxuICAgICAgdHlwZTogc3RyaW5nXG4gICAgICBkZXNjcmlwdGlvbjogU2FtZSBhcyBjb21taXQsIGJ1dCBmb3IgQHN3YW1wL3ZlcmlmaWNhdGlvbi1hdHRlc3RhdGlvbidzIHN1YmplY3QuYnJhbmNoLlxuJHtzaGVsbFBvcnRhYmlsaXR5Tm90ZX1cbmpvYnM6XG4gIC0gbmFtZTogdmVyaWZ5XG4gICAgZGVzY3JpcHRpb246IEJ1aWxkL3Rlc3QvbGludCBwbHVzIGFyY2hpdGVjdHVyZS1ydWxlIGNoZWNrcywgZ2F0aW5nIFBSIGNyZWF0aW9uXG4gICAgc3RlcHM6XG4gICAgICAtIG5hbWU6IGJ1aWxkXG4gICAgICAgIGRlc2NyaXB0aW9uOiBjb21waWxlIC0+IGNkayBzeW50aCAtPiBqZXN0IC0+IGVzbGludCAoZXhpc3RpbmcgcHJvamVuIGJ1aWxkIHRhc2spXG4gICAgICAgIHRhc2s6XG4gICAgICAgICAgdHlwZTogbW9kZWxfbWV0aG9kXG4gICAgICAgICAgbW9kZWxJZE9yTmFtZTogJHtzaGVsbE1vZGVsfVxuICAgICAgICAgIG1ldGhvZE5hbWU6IGV4ZWN1dGVcbiAgICAgICAgICBpbnB1dHM6XG4gICAgICAgICAgICBydW46IHBucG0gYnVpbGRcbiAgICAgICAgZGVwZW5kc09uOiBbXVxuICAgICAgICB3ZWlnaHQ6IDBcbiAgICAgICAgYWxsb3dGYWlsdXJlOiBmYWxzZVxuICAgICAgLSBuYW1lOiBhc3NlcnQtYnVpbGRcbiAgICAgICAgZGVzY3JpcHRpb246IHBucG0gYnVpbGQgbXVzdCBleGl0IDBcbiAgICAgICAgdGFzazpcbiAgICAgICAgICB0eXBlOiBhc3NlcnRcbiAgICAgICAgICBleHByOiA+LVxuICAgICAgICAgICAgZGF0YS5xdWVyeSgnbW9kZWxOYW1lID09IFwiJHtzaGVsbE1vZGVsfVwiICYmIG5hbWUgPT0gXCJyZXN1bHRcIiAmJlxuICAgICAgICAgICAgd29ya2Zsb3dSdW5JZCA9PSBcIicgKyBydW4uaWQgKyAnXCInKVswXS5hdHRyaWJ1dGVzLmV4aXRDb2RlID09IDBcbiAgICAgICAgICBtZXNzYWdlOiA+LVxuICAgICAgICAgICAgcG5wbSBidWlsZCBmYWlsZWQgKGNvbXBpbGUvc3ludGgvdGVzdC9saW50KSDigJQgc2VlIHRoZSAke3NoZWxsTW9kZWx9XG4gICAgICAgICAgICByZXN1bHQgZGF0YSBmb3Igc3Rkb3V0L3N0ZGVyclxuICAgICAgICAgIHNldmVyaXR5OiBoaWdoXG4gICAgICAgIGRlcGVuZHNPbjpcbiAgICAgICAgICAtIHN0ZXA6IGJ1aWxkXG4gICAgICAgICAgICBjb25kaXRpb246XG4gICAgICAgICAgICAgIHR5cGU6IHN1Y2NlZWRlZFxuICAgICAgICB3ZWlnaHQ6IDBcbiAgICAgICAgYWxsb3dGYWlsdXJlOiBmYWxzZVxuICAgICAgLSBuYW1lOiBhcmNoaXRlY3R1cmVcbiAgICAgICAgZGVzY3JpcHRpb246IHJ1biB0aGUgYXJjaGl0ZWN0dXJlIHJ1bGUgcmVnaXN0cnkgKGFyY2hpdGVjdHVyZS1ydWxlcy9ydWxlcy5qc29uKVxuICAgICAgICB0YXNrOlxuICAgICAgICAgIHR5cGU6IG1vZGVsX21ldGhvZFxuICAgICAgICAgIG1vZGVsSWRPck5hbWU6ICR7c2hlbGxBcmNoaXRlY3R1cmVNb2RlbH1cbiAgICAgICAgICBtZXRob2ROYW1lOiBleGVjdXRlXG4gICAgICAgICAgaW5wdXRzOlxuICAgICAgICAgICAgcnVuOiBwbnBtIHJ1biB2YWxpZGF0ZTphcmNoaXRlY3R1cmVcbiAgICAgICAgZGVwZW5kc09uOlxuICAgICAgICAgIC0gc3RlcDogYXNzZXJ0LWJ1aWxkXG4gICAgICAgICAgICBjb25kaXRpb246XG4gICAgICAgICAgICAgIHR5cGU6IHN1Y2NlZWRlZFxuICAgICAgICB3ZWlnaHQ6IDBcbiAgICAgICAgYWxsb3dGYWlsdXJlOiBmYWxzZVxuICAgICAgLSBuYW1lOiBhc3NlcnQtYXJjaGl0ZWN0dXJlXG4gICAgICAgIGRlc2NyaXB0aW9uOiBhcmNoaXRlY3R1cmUgcnVsZSByZWdpc3RyeSBtdXN0IGV4aXQgMCAobm8gZW5hYmxlZC1ydWxlIHZpb2xhdGlvbnMpXG4gICAgICAgIHRhc2s6XG4gICAgICAgICAgdHlwZTogYXNzZXJ0XG4gICAgICAgICAgZXhwcjogPi1cbiAgICAgICAgICAgIGRhdGEucXVlcnkoJ21vZGVsTmFtZSA9PSBcIiR7c2hlbGxBcmNoaXRlY3R1cmVNb2RlbH1cIiAmJiBuYW1lID09IFwicmVzdWx0XCIgJiZcbiAgICAgICAgICAgIHdvcmtmbG93UnVuSWQgPT0gXCInICsgcnVuLmlkICsgJ1wiJylbMF0uYXR0cmlidXRlcy5leGl0Q29kZSA9PSAwXG4gICAgICAgICAgbWVzc2FnZTogPi1cbiAgICAgICAgICAgIGFyY2hpdGVjdHVyZSBydWxlIHZpb2xhdGlvbihzKSBmb3VuZCDigJQgc2VlIHRoZSAke3NoZWxsTW9kZWx9IHJlc3VsdFxuICAgICAgICAgICAgZGF0YSBmb3IgZGV0YWlsc1xuICAgICAgICAgIHNldmVyaXR5OiBoaWdoXG4gICAgICAgIGRlcGVuZHNPbjpcbiAgICAgICAgICAtIHN0ZXA6IGFyY2hpdGVjdHVyZVxuICAgICAgICAgICAgY29uZGl0aW9uOlxuICAgICAgICAgICAgICB0eXBlOiBzdWNjZWVkZWRcbiAgICAgICAgd2VpZ2h0OiAwXG4gICAgICAgIGFsbG93RmFpbHVyZTogZmFsc2VcbiAgICAgIC0gbmFtZTogbWFuaWZlc3RcbiAgICAgICAgZGVzY3JpcHRpb246ID4tXG4gICAgICAgICAgY29tcHV0ZSB0aGUgYXR0ZXN0YXRpb24tbWFuaWZlc3QgY2hlY2tzdW1zIChhdHRlc3RhdGlvbi9tYW5pZmVzdC50cylcbiAgICAgICAgICB0aGF0IHZlcmlmeS1hdHRlc3RhdGlvbi55bWwgcmUtY2hlY2tzIGF0IG1lcmdlIHRpbWVcbiAgICAgICAgdGFzazpcbiAgICAgICAgICB0eXBlOiBtb2RlbF9tZXRob2RcbiAgICAgICAgICBtb2RlbElkT3JOYW1lOiAke3NoZWxsTWFuaWZlc3RNb2RlbH1cbiAgICAgICAgICBtZXRob2ROYW1lOiBleGVjdXRlXG4gICAgICAgICAgaW5wdXRzOlxuICAgICAgICAgICAgcnVuOiBwbnBtIHJ1biBhdHRlc3RhdGlvbjptYW5pZmVzdFxuICAgICAgICBkZXBlbmRzT246XG4gICAgICAgICAgLSBzdGVwOiBhc3NlcnQtYXJjaGl0ZWN0dXJlXG4gICAgICAgICAgICBjb25kaXRpb246XG4gICAgICAgICAgICAgIHR5cGU6IHN1Y2NlZWRlZFxuICAgICAgICB3ZWlnaHQ6IDBcbiAgICAgICAgYWxsb3dGYWlsdXJlOiBmYWxzZVxuICAgICAgLSBuYW1lOiBhc3NlcnQtbWFuaWZlc3RcbiAgICAgICAgZGVzY3JpcHRpb246IGF0dGVzdGF0aW9uOm1hbmlmZXN0IG11c3QgZXhpdCAwXG4gICAgICAgIHRhc2s6XG4gICAgICAgICAgdHlwZTogYXNzZXJ0XG4gICAgICAgICAgZXhwcjogPi1cbiAgICAgICAgICAgIGRhdGEucXVlcnkoJ21vZGVsTmFtZSA9PSBcIiR7c2hlbGxNYW5pZmVzdE1vZGVsfVwiICYmIG5hbWUgPT0gXCJyZXN1bHRcIiAmJlxuICAgICAgICAgICAgd29ya2Zsb3dSdW5JZCA9PSBcIicgKyBydW4uaWQgKyAnXCInKVswXS5hdHRyaWJ1dGVzLmV4aXRDb2RlID09IDBcbiAgICAgICAgICBtZXNzYWdlOiA+LVxuICAgICAgICAgICAgZmFpbGVkIHRvIGNvbXB1dGUgdGhlIGF0dGVzdGF0aW9uIG1hbmlmZXN0IOKAlCBzZWUgdGhlXG4gICAgICAgICAgICAke3NoZWxsTWFuaWZlc3RNb2RlbH0gcmVzdWx0IGRhdGEgZm9yIHN0ZG91dC9zdGRlcnJcbiAgICAgICAgICBzZXZlcml0eTogaGlnaFxuICAgICAgICBkZXBlbmRzT246XG4gICAgICAgICAgLSBzdGVwOiBtYW5pZmVzdFxuICAgICAgICAgICAgY29uZGl0aW9uOlxuICAgICAgICAgICAgICB0eXBlOiBzdWNjZWVkZWRcbiAgICAgICAgd2VpZ2h0OiAwXG4gICAgICAgIGFsbG93RmFpbHVyZTogZmFsc2VcbiAgICBkZXBlbmRzT246IFtdXG4gICAgd2VpZ2h0OiAwXG52ZXJzaW9uOiAxXG5gLFxuICAgIH0pO1xuXG4gICAgY29uc3QgcGFja2FnZU1hbmFnZXIgPSBwcm9qZWN0LnBhY2thZ2UucGFja2FnZU1hbmFnZXI7XG4gICAgY29uc3QgYWN0aW9uVmVyc2lvbnMgPSByZXNvbHZlQWN0aW9uVmVyc2lvbnMob3B0aW9ucy5hY3Rpb25WZXJzaW9ucyk7XG5cbiAgICBuZXcgWWFtbEZpbGUocHJvamVjdCwgJy5naXRodWIvd29ya2Zsb3dzL3ZlcmlmeS1hdHRlc3RhdGlvbi55bWwnLCB7XG4gICAgICBtYXJrZXI6IHRydWUsXG4gICAgICByZWFkb25seTogdHJ1ZSxcbiAgICAgIG9iajoge1xuICAgICAgICBuYW1lOiAnVmVyaWZ5IEF0dGVzdGF0aW9uJyxcbiAgICAgICAgb246IHtcbiAgICAgICAgICBwdWxsX3JlcXVlc3Q6IHtcbiAgICAgICAgICAgIHR5cGVzOiBbJ29wZW5lZCcsICdzeW5jaHJvbml6ZScsICdyZW9wZW5lZCddLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHBlcm1pc3Npb25zOiB7XG4gICAgICAgICAgJ2NvbnRlbnRzJzogJ3JlYWQnLFxuICAgICAgICAgICdwdWxsLXJlcXVlc3RzJzogJ3JlYWQnLFxuICAgICAgICB9LFxuICAgICAgICBqb2JzOiB7XG4gICAgICAgICAgdmVyaWZ5OiB7XG4gICAgICAgICAgICAncnVucy1vbic6ICd1YnVudHUtbGF0ZXN0JyxcbiAgICAgICAgICAgICdzdGVwcyc6IFtcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdDaGVja291dCcsXG4gICAgICAgICAgICAgICAgdXNlczogYWN0aW9uVmVyc2lvbnMuY2hlY2tvdXQsXG4gICAgICAgICAgICAgICAgd2l0aDoge1xuICAgICAgICAgICAgICAgICAgJ3JlZic6ICcke3sgZ2l0aHViLmV2ZW50LnB1bGxfcmVxdWVzdC5oZWFkLnNoYSB9fScsXG4gICAgICAgICAgICAgICAgICAncGVyc2lzdC1jcmVkZW50aWFscyc6IGZhbHNlLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIC4uLihwYWNrYWdlTWFuYWdlciA9PT0gTm9kZVBhY2thZ2VNYW5hZ2VyLlBOUE0gPyBbe1xuICAgICAgICAgICAgICAgIG5hbWU6ICdTZXR1cCBwbnBtJyxcbiAgICAgICAgICAgICAgICB1c2VzOiBhY3Rpb25WZXJzaW9ucy5wbnBtQWN0aW9uU2V0dXAsXG4gICAgICAgICAgICAgIH1dIDogW10pLFxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ1NldHVwIE5vZGUuanMnLFxuICAgICAgICAgICAgICAgIHVzZXM6IGFjdGlvblZlcnNpb25zLnNldHVwTm9kZSxcbiAgICAgICAgICAgICAgICB3aXRoOiB7XG4gICAgICAgICAgICAgICAgICAnbm9kZS12ZXJzaW9uJzogJzI0JyxcbiAgICAgICAgICAgICAgICAgICdwYWNrYWdlLW1hbmFnZXItY2FjaGUnOiBmYWxzZSxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ0luc3RhbGwgZGVwZW5kZW5jaWVzJyxcbiAgICAgICAgICAgICAgICBydW46IGluc3RhbGxDb21tYW5kKHBhY2thZ2VNYW5hZ2VyKSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAge1xuICAgICAgICAgICAgICAgIG5hbWU6ICdGZXRjaCBQUiBib2R5JyxcbiAgICAgICAgICAgICAgICBlbnY6IHtcbiAgICAgICAgICAgICAgICAgIEdIX1RPS0VOOiAnJHt7IHNlY3JldHMuR0lUSFVCX1RPS0VOIH19JyxcbiAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgIHJ1bjogW1xuICAgICAgICAgICAgICAgICAgJ2doIHByIHZpZXcgJHt7IGdpdGh1Yi5ldmVudC5wdWxsX3JlcXVlc3QubnVtYmVyIH19IFxcXFwnLFxuICAgICAgICAgICAgICAgICAgJyAgLS1yZXBvICR7eyBnaXRodWIucmVwb3NpdG9yeSB9fSBcXFxcJyxcbiAgICAgICAgICAgICAgICAgICcgIC0tanNvbiBib2R5IC1xIC5ib2R5ID4gL3RtcC9wci1ib2R5Lm1kJyxcbiAgICAgICAgICAgICAgICBdLmpvaW4oJ1xcbicpLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ1ZlcmlmeSBhdHRlc3RhdGlvbicsXG4gICAgICAgICAgICAgICAgcnVuOiBbXG4gICAgICAgICAgICAgICAgICBgJHtydW5TY3JpcHRDb21tYW5kKHBhY2thZ2VNYW5hZ2VyLCAnYXR0ZXN0YXRpb246dmVyaWZ5Jyl9IC0tIFxcXFxgLFxuICAgICAgICAgICAgICAgICAgJyAgLS1ib2R5LWZpbGUgL3RtcC9wci1ib2R5Lm1kIFxcXFwnLFxuICAgICAgICAgICAgICAgICAgJyAgLS1jb21taXQgJHt7IGdpdGh1Yi5ldmVudC5wdWxsX3JlcXVlc3QuaGVhZC5zaGEgfX0nLFxuICAgICAgICAgICAgICAgIF0uam9pbignXFxuJyksXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBdLFxuICAgICAgICAgIH0sXG4gICAgICAgIH0sXG4gICAgICB9LFxuICAgIH0pO1xuICB9XG59XG4iXX0=
|
|
358
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU29mdHdhcmVGYWN0b3J5V29ya2Zsb3dzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL1NvZnR3YXJlRmFjdG9yeVdvcmtmbG93cy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxtQ0FBb0M7QUFDcEMsbUNBQThDO0FBQzlDLHNEQUF3RTtBQUN4RSxtQ0FBMkQ7QUFDM0QscUVBQXlGO0FBZXpGOzs7Ozs7Ozs7OztHQVdHO0FBQ0gsTUFBYSx3QkFBd0I7SUFDbkMsWUFBWSxPQUFvQixFQUFFLE9BQXdDO1FBQ3hFLE1BQU0sRUFBRSxRQUFRLEVBQUUsR0FBRyxPQUFPLENBQUM7UUFDN0IsTUFBTSxVQUFVLEdBQUcsR0FBRyxRQUFRLFFBQVEsQ0FBQztRQUN2QyxNQUFNLHNCQUFzQixHQUFHLEdBQUcsUUFBUSxxQkFBcUIsQ0FBQztRQUNoRSxNQUFNLGtCQUFrQixHQUFHLEdBQUcsUUFBUSxpQkFBaUIsQ0FBQztRQUV4RCx3RkFBd0Y7UUFDeEYsbUZBQW1GO1FBQ25GLDJGQUEyRjtRQUMzRix3RkFBd0Y7UUFDeEYsc0ZBQXNGO1FBQ3RGLDJGQUEyRjtRQUMzRixrRkFBa0Y7UUFDbEYscUZBQXFGO1FBQ3JGLHlGQUF5RjtRQUN6RixnQkFBZ0I7UUFDaEIsTUFBTSxvQkFBb0IsR0FBRzs7Ozs7Ozs7K0JBUUYsQ0FBQztRQUU1QixJQUFJLG1CQUFVLENBQUMsT0FBTyxFQUFFLDhDQUE4QyxFQUFFO1lBQ3RFLFFBQVEsRUFBRSxPQUFPLElBQUEsbUJBQVUsR0FBRTs7Ozs7Ozs7Ozs7Ozs7O0VBZWpDLG9CQUFvQjs7Ozs7Ozs7OzJCQVNLLFVBQVU7Ozs7Ozs7Ozs7Ozt3Q0FZRyxVQUFVOzs7O3FEQUlHLFVBQVU7Ozs7Ozs7Ozs7OztDQVk5RDtTQUNJLENBQUMsQ0FBQztRQUVILElBQUksbUJBQVUsQ0FBQyxPQUFPLEVBQUUsK0NBQStDLEVBQUU7WUFDdkUsUUFBUSxFQUFFLE9BQU8sSUFBQSxtQkFBVSxHQUFFOzs7Ozs7Ozs7Ozs7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QUFDO0NBQ0Y7QUFyVkQsNERBcVZDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgcmFuZG9tVVVJRCB9IGZyb20gJ2NyeXB0byc7XG5pbXBvcnQgeyBTYW1wbGVGaWxlLCBZYW1sRmlsZSB9IGZyb20gJ3Byb2plbic7XG5pbXBvcnQgeyBOb2RlUGFja2FnZU1hbmFnZXIsIE5vZGVQcm9qZWN0IH0gZnJvbSAncHJvamVuL2xpYi9qYXZhc2NyaXB0JztcbmltcG9ydCB7IGluc3RhbGxDb21tYW5kLCBydW5TY3JpcHRDb21tYW5kIH0gZnJvbSAnLi91dGlscyc7XG5pbXBvcnQgeyByZXNvbHZlQWN0aW9uVmVyc2lvbnMsIFdvcmtmbG93QWN0aW9uVmVyc2lvbnMgfSBmcm9tICcuL1dvcmtmbG93QWN0aW9uVmVyc2lvbnMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFNvZnR3YXJlRmFjdG9yeVdvcmtmbG93c09wdGlvbnMge1xuICAvKipcbiAgICogVGhlIGJhcmUgcmVwbyBuYW1lLCB1c2VkIHRvIGRlcml2ZSB0aGUgYDxyZXBvTmFtZT4tc2hlbGxbLWFyY2hpdGVjdHVyZXwtbWFuaWZlc3RdYFxuICAgKiBtb2RlbCBuYW1lcyB0aGVzZSB3b3JrZmxvd3MgZGlzcGF0Y2ggc2hlbGwgY29tbWFuZHMgdGhyb3VnaC5cbiAgICovXG4gIHJlYWRvbmx5IHJlcG9OYW1lOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIE92ZXJyaWRlcyBmb3IgdGhlIHBpbm5lZCBhY3Rpb24gdmVyc2lvbnMgdXNlZCBieSBgdmVyaWZ5LWF0dGVzdGF0aW9uLnltbGAuXG4gICAqL1xuICByZWFkb25seSBhY3Rpb25WZXJzaW9ucz86IFdvcmtmbG93QWN0aW9uVmVyc2lvbnM7XG59XG5cbi8qKlxuICogVGhlIDMgc3dhbXAgd29ya2Zsb3dzIHRoZSBmYWN0b3J5J3MgZ2F0ZSBzdGFnZXMgcnVuIChvcGVuc3BlYy1wbGFuLXZlcmlmeSxcbiAqIG9wZW5zcGVjLXRhc2tzLXZlcmlmeSwgcHJlLXByLXZlcmlmeSksIHBsdXMgdGhlIEdpdEh1YiBBY3Rpb24gdGhhdFxuICogcmUtdmVyaWZpZXMgYSBQUidzIGVtYmVkZGVkIGF0dGVzdGF0aW9uIGF0IG1lcmdlIHRpbWUuXG4gKlxuICogVGhlIHN3YW1wIHdvcmtmbG93IFlBTUxzIGNhcnJ5IGEgc3dhbXAtYXNzaWduZWQgYGlkYCB0aGF0IG11c3Qgc3RheSBzdGFibGVcbiAqIGFjcm9zcyBzeW50aHMgKHN3YW1wIHVzZXMgaXQgYXMgdGhlIHdvcmtmbG93J3MgaWRlbnRpdHkpLCBzbyDigJQgbGlrZSB0aGVcbiAqIG1vZGVsIGluc3RhbmNlcyBpbiBgU29mdHdhcmVGYWN0b3J5TW9kZWxzYCDigJQgdGhleSdyZSBgU2FtcGxlRmlsZWBzLCB3cml0dGVuXG4gKiBvbmNlIGFuZCB0aGVuIG93bmVkIGJ5IHRoZSB0ZWFtLiBgdmVyaWZ5LWF0dGVzdGF0aW9uLnltbGAgaGFzIG5vIHN1Y2hcbiAqIGlkZW50aXR5IGNvbnN0cmFpbnQgYW5kIGlzIGEgcGxhaW4gR2l0SHViIEFjdGlvbnMgd29ya2Zsb3csIHNvIGl0J3MgYnVpbHRcbiAqIHRoZSBzYW1lIG1hbmFnZWQgd2F5IGBQckRlcGxveVdvcmtmbG93YCBpcy5cbiAqL1xuZXhwb3J0IGNsYXNzIFNvZnR3YXJlRmFjdG9yeVdvcmtmbG93cyB7XG4gIGNvbnN0cnVjdG9yKHByb2plY3Q6IE5vZGVQcm9qZWN0LCBvcHRpb25zOiBTb2Z0d2FyZUZhY3RvcnlXb3JrZmxvd3NPcHRpb25zKSB7XG4gICAgY29uc3QgeyByZXBvTmFtZSB9ID0gb3B0aW9ucztcbiAgICBjb25zdCBzaGVsbE1vZGVsID0gYCR7cmVwb05hbWV9LXNoZWxsYDtcbiAgICBjb25zdCBzaGVsbEFyY2hpdGVjdHVyZU1vZGVsID0gYCR7cmVwb05hbWV9LXNoZWxsLWFyY2hpdGVjdHVyZWA7XG4gICAgY29uc3Qgc2hlbGxNYW5pZmVzdE1vZGVsID0gYCR7cmVwb05hbWV9LXNoZWxsLW1hbmlmZXN0YDtcblxuICAgIC8vIEVhY2ggam9iIHN0ZXAncyBgcnVuOmAgYmVsb3cgZXhlY3V0ZXMgdGhyb3VnaCBzd2FtcCdzIGNvbW1hbmQvc2hlbGwgbW9kZWwsIHdoaWNoIHJ1bnNcbiAgICAvLyB0aGUgc3RyaW5nIHRocm91Z2ggdGhlIGhvc3QncyBuYXRpdmUgc2hlbGwg4oCUIGJhc2gvc2ggb24gbWFjT1MvTGludXgsIGJ1dCBXaW5kb3dzXG4gICAgLy8gUG93ZXJTaGVsbCA1LjEgb24gYSBXaW5kb3dzIGRldiBtYWNoaW5lLiBQb3dlclNoZWxsIDUuMSBoYXMgbm8gYCYmYC9gfHxgIGNoYWluIG9wZXJhdG9yc1xuICAgIC8vIGFuZCBhbGlhc2VzIGBybWAgdG8gYFJlbW92ZS1JdGVtYCAod2hvc2UgYC1mYCBpcyBhbWJpZ3VvdXMgd2l0aCBgLUZpbHRlcmApLiBJZiBhIHN0ZXBcbiAgICAvLyBoZXJlIG5lZWRzIG1vcmUgdGhhbiBvbmUgY29tbWFuZCwgcHJlZmVyIGEgc2luZ2xlIHBhY2thZ2UuanNvbiBzY3JpcHQgdGhhdCBkb2VzIHRoZVxuICAgIC8vIHNlcXVlbmNpbmcsIG9yIHVzZSBgO2AgdG8gc2VwYXJhdGUgY29tbWFuZHMgKGFjY2VwdGVkIGJ5IGJvdGggc2hlbGxzLCB0aG91Z2ggaXQgZG9lcyBub3RcbiAgICAvLyBzaG9ydC1jaXJjdWl0IG9uIGZhaWx1cmUg4oCUIHJlbHkgb24gdGhlIHdvcmtmbG93J3Mgb3duIGFzc2VydCBzdGVwIGZvciB0aGF0KS4gVG9cbiAgICAvLyBmb3JjZS1kZWxldGUgYSBmaWxlIHBvcnRhYmx5LCB1c2UgYG5vZGUgLWUgXCJyZXF1aXJlKCdmcycpLnJtU3luYygnPHBhdGg+Jywge2ZvcmNlOlxuICAgIC8vIHRydWV9KVwiYCBpbnN0ZWFkIG9mIGBybSAtZiA8cGF0aD5gIChzZWUgc2hlbGxQb3J0YWJsZVNlcXVlbmNlL3NoZWxsUG9ydGFibGVGb3JjZURlbGV0ZVxuICAgIC8vIGluIHV0aWxzLnRzKS5cbiAgICBjb25zdCBzaGVsbFBvcnRhYmlsaXR5Tm90ZSA9IGAjIFBvcnRhYmlsaXR5IG5vdGU6IFxcYHJ1bjpcXGAgYmVsb3cgZXhlY3V0ZXMgdGhyb3VnaCBzd2FtcCdzIGNvbW1hbmQvc2hlbGwgbW9kZWwsIHdoaWNoIHJ1bnNcbiMgdGhlIHN0cmluZyB0aHJvdWdoIHRoZSBob3N0J3MgbmF0aXZlIHNoZWxsIOKAlCBiYXNoL3NoIG9uIG1hY09TL0xpbnV4LCBidXQgV2luZG93c1xuIyBQb3dlclNoZWxsIDUuMSBvbiBhIFdpbmRvd3MgZGV2IG1hY2hpbmUuIFBvd2VyU2hlbGwgNS4xIGhhcyBubyBcXGAmJlxcYC9cXGB8fFxcYCBjaGFpbiBvcGVyYXRvcnNcbiMgYW5kIGFsaWFzZXMgXFxgcm1cXGAgdG8gXFxgUmVtb3ZlLUl0ZW1cXGAgKHdob3NlIFxcYC1mXFxgIGlzIGFtYmlndW91cyB3aXRoIFxcYC1GaWx0ZXJcXGApLiBJZiBhIHN0ZXAgaGVyZVxuIyBuZWVkcyBtb3JlIHRoYW4gb25lIGNvbW1hbmQsIHByZWZlciBhIHNpbmdsZSBwYWNrYWdlLmpzb24gc2NyaXB0IHRoYXQgZG9lcyB0aGVcbiMgc2VxdWVuY2luZywgb3IgdXNlIFxcYDtcXGAgdG8gc2VwYXJhdGUgY29tbWFuZHMgKGFjY2VwdGVkIGJ5IGJvdGggc2hlbGxzLCB0aG91Z2ggaXQgZG9lcyBub3RcbiMgc2hvcnQtY2lyY3VpdCBvbiBmYWlsdXJlIOKAlCByZWx5IG9uIHRoZSB3b3JrZmxvdydzIG93biBhc3NlcnQgc3RlcCBmb3IgdGhhdCkuIFRvXG4jIGZvcmNlLWRlbGV0ZSBhIGZpbGUgcG9ydGFibHksIHVzZSBcXGBub2RlIC1lIFwicmVxdWlyZSgnZnMnKS5ybVN5bmMoJzxwYXRoPicsIHtmb3JjZTogdHJ1ZX0pXCJcXGBcbiMgaW5zdGVhZCBvZiBcXGBybSAtZiA8cGF0aD5cXGAuYDtcblxuICAgIG5ldyBTYW1wbGVGaWxlKHByb2plY3QsICd3b3JrZmxvd3Mvd29ya2Zsb3ctb3BlbnNwZWMtcGxhbi12ZXJpZnkueWFtbCcsIHtcbiAgICAgIGNvbnRlbnRzOiBgaWQ6ICR7cmFuZG9tVVVJRCgpfVxubmFtZTogb3BlbnNwZWMtcGxhbi12ZXJpZnlcbmRlc2NyaXB0aW9uOiA+LVxuICBGYWlscyB1bmxlc3MgdGhlIG5hbWVkIE9wZW5TcGVjIGNoYW5nZSBpcyB3ZWxsLWZvcm1lZCAocHJvcG9zYWwsIGRlc2lnbixcbiAgc3BlY3Mgd2l0aCBkZWx0YXMsIHRhc2tzIGFsbCBwcmVzZW50KSB2aWEgXFxgb3BlbnNwZWMgdmFsaWRhdGVcXGAuIEdhdGVzIHRoZVxuICBmYWN0b3J5J3MgcGxhbm5pbmcgc3RhZ2U6IGEgcmVxdWVzdCBjYW4ndCBwcm9jZWVkIHRvIGltcGxlbWVudGF0aW9uIHVudGlsXG4gIGl0J3MgYSByZWFsIE9wZW5TcGVjIGNoYW5nZSwgbm90IGp1c3QgcHJvc2UgaW4gYSBzd2FtcCBhcnRpZmFjdC5cbnRhZ3M6IHt9XG5pbnB1dHM6XG4gIHR5cGU6IG9iamVjdFxuICByZXF1aXJlZDogW2NoYW5nZVNsdWddXG4gIHByb3BlcnRpZXM6XG4gICAgY2hhbmdlU2x1ZzpcbiAgICAgIHR5cGU6IHN0cmluZ1xuICAgICAgZGVzY3JpcHRpb246IFRoZSBvcGVuc3BlYyBjaGFuZ2UgbmFtZSAob3BlbnNwZWMvY2hhbmdlcy88Y2hhbmdlU2x1Zz4vKS5cbiR7c2hlbGxQb3J0YWJpbGl0eU5vdGV9XG5qb2JzOlxuICAtIG5hbWU6IHZlcmlmeVxuICAgIGRlc2NyaXB0aW9uOiBWYWxpZGF0ZSB0aGUgT3BlblNwZWMgY2hhbmdlIGlzIGNvbXBsZXRlIGFuZCB3ZWxsLWZvcm1lZFxuICAgIHN0ZXBzOlxuICAgICAgLSBuYW1lOiB2YWxpZGF0ZVxuICAgICAgICBkZXNjcmlwdGlvbjogb3BlbnNwZWMgdmFsaWRhdGUgPGNoYW5nZVNsdWc+IC0tdHlwZSBjaGFuZ2VcbiAgICAgICAgdGFzazpcbiAgICAgICAgICB0eXBlOiBtb2RlbF9tZXRob2RcbiAgICAgICAgICBtb2RlbElkT3JOYW1lOiAke3NoZWxsTW9kZWx9XG4gICAgICAgICAgbWV0aG9kTmFtZTogZXhlY3V0ZVxuICAgICAgICAgIGlucHV0czpcbiAgICAgICAgICAgIHJ1bjogJ29wZW5zcGVjIHZhbGlkYXRlIFxcJHt7IGlucHV0cy5jaGFuZ2VTbHVnIH19IC0tdHlwZSBjaGFuZ2UnXG4gICAgICAgIGRlcGVuZHNPbjogW11cbiAgICAgICAgd2VpZ2h0OiAwXG4gICAgICAgIGFsbG93RmFpbHVyZTogZmFsc2VcbiAgICAgIC0gbmFtZTogYXNzZXJ0LXZhbGlkXG4gICAgICAgIGRlc2NyaXB0aW9uOiBvcGVuc3BlYyB2YWxpZGF0ZSBtdXN0IGV4aXQgMFxuICAgICAgICB0YXNrOlxuICAgICAgICAgIHR5cGU6IGFzc2VydFxuICAgICAgICAgIGV4cHI6ID4tXG4gICAgICAgICAgICBkYXRhLnF1ZXJ5KCdtb2RlbE5hbWUgPT0gXCIke3NoZWxsTW9kZWx9XCIgJiYgbmFtZSA9PSBcInJlc3VsdFwiICYmXG4gICAgICAgICAgICB3b3JrZmxvd1J1bklkID09IFwiJyArIHJ1bi5pZCArICdcIicpWzBdLmF0dHJpYnV0ZXMuZXhpdENvZGUgPT0gMFxuICAgICAgICAgIG1lc3NhZ2U6ID4tXG4gICAgICAgICAgICBPcGVuU3BlYyBjaGFuZ2UgaXMgbm90IHZhbGlkL2NvbXBsZXRlIChtaXNzaW5nIHByb3Bvc2FsLCBkZXNpZ24sXG4gICAgICAgICAgICBzcGVjcyB3aXRoIGRlbHRhcywgb3IgdGFza3MpIOKAlCBzZWUgdGhlICR7c2hlbGxNb2RlbH0gcmVzdWx0IGRhdGFcbiAgICAgICAgICAgIGZvciBvcGVuc3BlYydzIG93biByZW1lZGlhdGlvbiBvdXRwdXRcbiAgICAgICAgICBzZXZlcml0eTogaGlnaFxuICAgICAgICBkZXBlbmRzT246XG4gICAgICAgICAgLSBzdGVwOiB2YWxpZGF0ZVxuICAgICAgICAgICAgY29uZGl0aW9uOlxuICAgICAgICAgICAgICB0eXBlOiBzdWNjZWVkZWRcbiAgICAgICAgd2VpZ2h0OiAwXG4gICAgICAgIGFsbG93RmFpbHVyZTogZmFsc2VcbiAgICBkZXBlbmRzT246IFtdXG4gICAgd2VpZ2h0OiAwXG52ZXJzaW9uOiAxXG5gLFxuICAgIH0pO1xuXG4gICAgbmV3IFNhbXBsZUZpbGUocHJvamVjdCwgJ3dvcmtmbG93cy93b3JrZmxvdy1vcGVuc3BlYy10YXNrcy12ZXJpZnkueWFtbCcsIHtcbiAgICAgIGNvbnRlbnRzOiBgaWQ6ICR7cmFuZG9tVVVJRCgpfVxubmFtZTogb3BlbnNwZWMtdGFza3MtdmVyaWZ5XG5kZXNjcmlwdGlvbjogPi1cbiAgRmFpbHMgdW5sZXNzIGV2ZXJ5IHRhc2sgaW4gdGhlIG5hbWVkIE9wZW5TcGVjIGNoYW5nZSdzIHRhc2tzLm1kIGlzIGNoZWNrZWRcbiAgb2ZmIChvcGVuc3BlYy1nYXRlcy9jaGVjay10YXNrcy1jb21wbGV0ZS50cywgdmlhIFxcYHBucG0gcnVuXG4gIG9wZW5zcGVjOmNoZWNrLXRhc2tzLWNvbXBsZXRlXFxgKS4gR2F0ZXMgdGhlIGZhY3RvcnkncyBpbXBsZW1lbnRpbmcgc3RhZ2U6XG4gIHdvcmsgaXNuJ3QgZG9uZSB1bnRpbCB0aGUgY2hhbmdlJ3Mgb3duIHRhc2sgbGlzdCBzYXlzIGl0J3MgZG9uZSwgbm90IGp1c3RcbiAgYmVjYXVzZSBhbiBhcnRpZmFjdCB3YXMgcmVjb3JkZWQuXG50YWdzOiB7fVxuaW5wdXRzOlxuICB0eXBlOiBvYmplY3RcbiAgcmVxdWlyZWQ6IFtjaGFuZ2VTbHVnXVxuICBwcm9wZXJ0aWVzOlxuICAgIGNoYW5nZVNsdWc6XG4gICAgICB0eXBlOiBzdHJpbmdcbiAgICAgIGRlc2NyaXB0aW9uOiBUaGUgb3BlbnNwZWMgY2hhbmdlIG5hbWUgKG9wZW5zcGVjL2NoYW5nZXMvPGNoYW5nZVNsdWc+LykuXG4ke3NoZWxsUG9ydGFiaWxpdHlOb3RlfVxuam9iczpcbiAgLSBuYW1lOiB2ZXJpZnlcbiAgICBkZXNjcmlwdGlvbjogQ2hlY2sgZXZlcnkgdGFzayBpbiB0aGUgY2hhbmdlJ3MgdGFza3MubWQgaXMgY29tcGxldGVcbiAgICBzdGVwczpcbiAgICAgIC0gbmFtZTogY2hlY2stdGFza3NcbiAgICAgICAgZGVzY3JpcHRpb246IHBucG0gcnVuIG9wZW5zcGVjOmNoZWNrLXRhc2tzLWNvbXBsZXRlIC0tIDxjaGFuZ2VTbHVnPlxuICAgICAgICB0YXNrOlxuICAgICAgICAgIHR5cGU6IG1vZGVsX21ldGhvZFxuICAgICAgICAgIG1vZGVsSWRPck5hbWU6ICR7c2hlbGxNb2RlbH1cbiAgICAgICAgICBtZXRob2ROYW1lOiBleGVjdXRlXG4gICAgICAgICAgaW5wdXRzOlxuICAgICAgICAgICAgcnVuOiAncG5wbSBydW4gb3BlbnNwZWM6Y2hlY2stdGFza3MtY29tcGxldGUgLS0gXFwke3sgaW5wdXRzLmNoYW5nZVNsdWcgfX0nXG4gICAgICAgIGRlcGVuZHNPbjogW11cbiAgICAgICAgd2VpZ2h0OiAwXG4gICAgICAgIGFsbG93RmFpbHVyZTogZmFsc2VcbiAgICAgIC0gbmFtZTogYXNzZXJ0LXRhc2tzLWNvbXBsZXRlXG4gICAgICAgIGRlc2NyaXB0aW9uOiBvcGVuc3BlYzpjaGVjay10YXNrcy1jb21wbGV0ZSBtdXN0IGV4aXQgMFxuICAgICAgICB0YXNrOlxuICAgICAgICAgIHR5cGU6IGFzc2VydFxuICAgICAgICAgIGV4cHI6ID4tXG4gICAgICAgICAgICBkYXRhLnF1ZXJ5KCdtb2RlbE5hbWUgPT0gXCIke3NoZWxsTW9kZWx9XCIgJiYgbmFtZSA9PSBcInJlc3VsdFwiICYmXG4gICAgICAgICAgICB3b3JrZmxvd1J1bklkID09IFwiJyArIHJ1bi5pZCArICdcIicpWzBdLmF0dHJpYnV0ZXMuZXhpdENvZGUgPT0gMFxuICAgICAgICAgIG1lc3NhZ2U6ID4tXG4gICAgICAgICAgICBPcGVuU3BlYyBjaGFuZ2UgaGFzIGluY29tcGxldGUgdGFza3Mg4oCUIHNlZSB0aGUgJHtzaGVsbE1vZGVsfVxuICAgICAgICAgICAgcmVzdWx0IGRhdGEgZm9yIHRoZSBjb21wbGV0ZWRUYXNrcy90b3RhbFRhc2tzIGJyZWFrZG93blxuICAgICAgICAgIHNldmVyaXR5OiBoaWdoXG4gICAgICAgIGRlcGVuZHNPbjpcbiAgICAgICAgICAtIHN0ZXA6IGNoZWNrLXRhc2tzXG4gICAgICAgICAgICBjb25kaXRpb246XG4gICAgICAgICAgICAgIHR5cGU6IHN1Y2NlZWRlZFxuICAgICAgICB3ZWlnaHQ6IDBcbiAgICAgICAgYWxsb3dGYWlsdXJlOiBmYWxzZVxuICAgIGRlcGVuZHNPbjogW11cbiAgICB3ZWlnaHQ6IDBcbnZlcnNpb246IDFcbmAsXG4gICAgfSk7XG5cbiAgICBuZXcgU2FtcGxlRmlsZShwcm9qZWN0LCAnd29ya2Zsb3dzL3dvcmtmbG93LXByZS1wci12ZXJpZnkueWFtbCcsIHtcbiAgICAgIGNvbnRlbnRzOiBgaWQ6ICR7cmFuZG9tVVVJRCgpfVxubmFtZTogcHJlLXByLXZlcmlmeVxuZGVzY3JpcHRpb246ID4tXG4gIFByZS1QUiB2ZXJpZmljYXRpb246IHJ1biB0aGUgc2FtZSBjaGVja3MgQ0kgd291bGQgcnVuLCBiZWZvcmUgdGhlIGZhY3RvcnlcbiAgb3BlbnMgYSBQUiByYXRoZXIgdGhhbiBhZnRlciDigJQgYnVpbGQvc3ludGgvdGVzdC9saW50IChwbnBtIGJ1aWxkKSBhbmQgdGhlXG4gIGFyY2hpdGVjdHVyZSBydWxlIHJlZ2lzdHJ5IChwbnBtIHZhbGlkYXRlOmFyY2hpdGVjdHVyZSkuIEJvdGggbXVzdCBwYXNzLlxudGFnczoge31cbiMgUmVxdWlyZWQgZXhwbGljaXRseSByYXRoZXIgdGhhbiByZWxpZWQgb24gYXMgYSBkZWZhdWx0LiBzd2FtcCBzdG9wcGVkIHJ1bm5pbmdcbiMgQHN3YW1wL3ZlcmlmaWNhdGlvbi1hdHRlc3RhdGlvbiBieSBkZWZhdWx0IGluIHYyMDI2MDgzMS4yMDIxMzcuMCAoc3dhbXAtY2x1YiMxOTE4KVxuIyBhbmQgc3RvcHBlZCBwcm92aWRpbmcgaXQgaW4gMjAyNjEwMDUuMTkwMDAzLjAuIEBzd2FtcC92ZXJpZmljYXRpb24tc3VtbWFyeSByZXBsYWNlc1xuIyBpdCwgd2l0aCB0aGUgc2FtZSBjb250ZW50IHVuZGVyIHRoZSBkYXRhIG5hbWUgcmVwb3J0LXN3YW1wLXZlcmlmaWNhdGlvbi1zdW1tYXJ5LlxuIyBBIHdvcmtmbG93IHRoYXQgcmVxdWlyZXMgYSByZXBvcnQgdGhlIGluc3RhbGxlZCBzd2FtcCBkb2VzIG5vdCBwcm92aWRlIHN0aWxsIGV4aXRzIDBcbiMgYW5kIHN0b3JlcyBhbiBlcnJvciByZXBvcnQgaW4gaXRzIHBsYWNlLCBzbyB0aGUgb3Blbi1wciBzdGFnZSB3b3VsZCBlbWJlZCB0aGF0LlxucmVwb3J0czpcbiAgcmVxdWlyZTpcbiAgICAtIFwiQHN3YW1wL3ZlcmlmaWNhdGlvbi1zdW1tYXJ5XCJcbmlucHV0czpcbiAgdHlwZTogb2JqZWN0XG4gIHByb3BlcnRpZXM6XG4gICAgY29tbWl0OlxuICAgICAgdHlwZTogc3RyaW5nXG4gICAgICBkZXNjcmlwdGlvbjogPi1cbiAgICAgICAgVGhlIGNvbW1pdCBzaGEgYmVpbmcgdmVyaWZpZWQuIFJlYWQgYnkgdGhlIGJ1aWx0LWluXG4gICAgICAgIEBzd2FtcC92ZXJpZmljYXRpb24tc3VtbWFyeSByZXBvcnQncyBzdWJqZWN0LmNvbW1pdCDigJQgcGFzcyB0aGVcbiAgICAgICAgcmVhbCBIRUFEIHNoYSBvciB0aGUgcmVwb3J0IHJlbmRlcnMgXCJ1bmtub3duXCIuXG4gICAgYnJhbmNoOlxuICAgICAgdHlwZTogc3RyaW5nXG4gICAgICBkZXNjcmlwdGlvbjogU2FtZSBhcyBjb21taXQsIGJ1dCBmb3IgQHN3YW1wL3ZlcmlmaWNhdGlvbi1zdW1tYXJ5J3Mgc3ViamVjdC5icmFuY2guXG4ke3NoZWxsUG9ydGFiaWxpdHlOb3RlfVxuam9iczpcbiAgLSBuYW1lOiB2ZXJpZnlcbiAgICBkZXNjcmlwdGlvbjogQnVpbGQvdGVzdC9saW50IHBsdXMgYXJjaGl0ZWN0dXJlLXJ1bGUgY2hlY2tzLCBnYXRpbmcgUFIgY3JlYXRpb25cbiAgICBzdGVwczpcbiAgICAgIC0gbmFtZTogYnVpbGRcbiAgICAgICAgZGVzY3JpcHRpb246IGNvbXBpbGUgLT4gY2RrIHN5bnRoIC0+IGplc3QgLT4gZXNsaW50IChleGlzdGluZyBwcm9qZW4gYnVpbGQgdGFzaylcbiAgICAgICAgdGFzazpcbiAgICAgICAgICB0eXBlOiBtb2RlbF9tZXRob2RcbiAgICAgICAgICBtb2RlbElkT3JOYW1lOiAke3NoZWxsTW9kZWx9XG4gICAgICAgICAgbWV0aG9kTmFtZTogZXhlY3V0ZVxuICAgICAgICAgIGlucHV0czpcbiAgICAgICAgICAgIHJ1bjogcG5wbSBidWlsZFxuICAgICAgICBkZXBlbmRzT246IFtdXG4gICAgICAgIHdlaWdodDogMFxuICAgICAgICBhbGxvd0ZhaWx1cmU6IGZhbHNlXG4gICAgICAtIG5hbWU6IGFzc2VydC1idWlsZFxuICAgICAgICBkZXNjcmlwdGlvbjogcG5wbSBidWlsZCBtdXN0IGV4aXQgMFxuICAgICAgICB0YXNrOlxuICAgICAgICAgIHR5cGU6IGFzc2VydFxuICAgICAgICAgIGV4cHI6ID4tXG4gICAgICAgICAgICBkYXRhLnF1ZXJ5KCdtb2RlbE5hbWUgPT0gXCIke3NoZWxsTW9kZWx9XCIgJiYgbmFtZSA9PSBcInJlc3VsdFwiICYmXG4gICAgICAgICAgICB3b3JrZmxvd1J1bklkID09IFwiJyArIHJ1bi5pZCArICdcIicpWzBdLmF0dHJpYnV0ZXMuZXhpdENvZGUgPT0gMFxuICAgICAgICAgIG1lc3NhZ2U6ID4tXG4gICAgICAgICAgICBwbnBtIGJ1aWxkIGZhaWxlZCAoY29tcGlsZS9zeW50aC90ZXN0L2xpbnQpIOKAlCBzZWUgdGhlICR7c2hlbGxNb2RlbH1cbiAgICAgICAgICAgIHJlc3VsdCBkYXRhIGZvciBzdGRvdXQvc3RkZXJyXG4gICAgICAgICAgc2V2ZXJpdHk6IGhpZ2hcbiAgICAgICAgZGVwZW5kc09uOlxuICAgICAgICAgIC0gc3RlcDogYnVpbGRcbiAgICAgICAgICAgIGNvbmRpdGlvbjpcbiAgICAgICAgICAgICAgdHlwZTogc3VjY2VlZGVkXG4gICAgICAgIHdlaWdodDogMFxuICAgICAgICBhbGxvd0ZhaWx1cmU6IGZhbHNlXG4gICAgICAtIG5hbWU6IGFyY2hpdGVjdHVyZVxuICAgICAgICBkZXNjcmlwdGlvbjogcnVuIHRoZSBhcmNoaXRlY3R1cmUgcnVsZSByZWdpc3RyeSAoYXJjaGl0ZWN0dXJlLXJ1bGVzL3J1bGVzLmpzb24pXG4gICAgICAgIHRhc2s6XG4gICAgICAgICAgdHlwZTogbW9kZWxfbWV0aG9kXG4gICAgICAgICAgbW9kZWxJZE9yTmFtZTogJHtzaGVsbEFyY2hpdGVjdHVyZU1vZGVsfVxuICAgICAgICAgIG1ldGhvZE5hbWU6IGV4ZWN1dGVcbiAgICAgICAgICBpbnB1dHM6XG4gICAgICAgICAgICBydW46IHBucG0gcnVuIHZhbGlkYXRlOmFyY2hpdGVjdHVyZVxuICAgICAgICBkZXBlbmRzT246XG4gICAgICAgICAgLSBzdGVwOiBhc3NlcnQtYnVpbGRcbiAgICAgICAgICAgIGNvbmRpdGlvbjpcbiAgICAgICAgICAgICAgdHlwZTogc3VjY2VlZGVkXG4gICAgICAgIHdlaWdodDogMFxuICAgICAgICBhbGxvd0ZhaWx1cmU6IGZhbHNlXG4gICAgICAtIG5hbWU6IGFzc2VydC1hcmNoaXRlY3R1cmVcbiAgICAgICAgZGVzY3JpcHRpb246IGFyY2hpdGVjdHVyZSBydWxlIHJlZ2lzdHJ5IG11c3QgZXhpdCAwIChubyBlbmFibGVkLXJ1bGUgdmlvbGF0aW9ucylcbiAgICAgICAgdGFzazpcbiAgICAgICAgICB0eXBlOiBhc3NlcnRcbiAgICAgICAgICBleHByOiA+LVxuICAgICAgICAgICAgZGF0YS5xdWVyeSgnbW9kZWxOYW1lID09IFwiJHtzaGVsbEFyY2hpdGVjdHVyZU1vZGVsfVwiICYmIG5hbWUgPT0gXCJyZXN1bHRcIiAmJlxuICAgICAgICAgICAgd29ya2Zsb3dSdW5JZCA9PSBcIicgKyBydW4uaWQgKyAnXCInKVswXS5hdHRyaWJ1dGVzLmV4aXRDb2RlID09IDBcbiAgICAgICAgICBtZXNzYWdlOiA+LVxuICAgICAgICAgICAgYXJjaGl0ZWN0dXJlIHJ1bGUgdmlvbGF0aW9uKHMpIGZvdW5kIOKAlCBzZWUgdGhlICR7c2hlbGxNb2RlbH0gcmVzdWx0XG4gICAgICAgICAgICBkYXRhIGZvciBkZXRhaWxzXG4gICAgICAgICAgc2V2ZXJpdHk6IGhpZ2hcbiAgICAgICAgZGVwZW5kc09uOlxuICAgICAgICAgIC0gc3RlcDogYXJjaGl0ZWN0dXJlXG4gICAgICAgICAgICBjb25kaXRpb246XG4gICAgICAgICAgICAgIHR5cGU6IHN1Y2NlZWRlZFxuICAgICAgICB3ZWlnaHQ6IDBcbiAgICAgICAgYWxsb3dGYWlsdXJlOiBmYWxzZVxuICAgICAgLSBuYW1lOiBtYW5pZmVzdFxuICAgICAgICBkZXNjcmlwdGlvbjogPi1cbiAgICAgICAgICBjb21wdXRlIHRoZSBhdHRlc3RhdGlvbi1tYW5pZmVzdCBjaGVja3N1bXMgKGF0dGVzdGF0aW9uL21hbmlmZXN0LnRzKVxuICAgICAgICAgIHRoYXQgdmVyaWZ5LWF0dGVzdGF0aW9uLnltbCByZS1jaGVja3MgYXQgbWVyZ2UgdGltZVxuICAgICAgICB0YXNrOlxuICAgICAgICAgIHR5cGU6IG1vZGVsX21ldGhvZFxuICAgICAgICAgIG1vZGVsSWRPck5hbWU6ICR7c2hlbGxNYW5pZmVzdE1vZGVsfVxuICAgICAgICAgIG1ldGhvZE5hbWU6IGV4ZWN1dGVcbiAgICAgICAgICBpbnB1dHM6XG4gICAgICAgICAgICBydW46IHBucG0gcnVuIGF0dGVzdGF0aW9uOm1hbmlmZXN0XG4gICAgICAgIGRlcGVuZHNPbjpcbiAgICAgICAgICAtIHN0ZXA6IGFzc2VydC1hcmNoaXRlY3R1cmVcbiAgICAgICAgICAgIGNvbmRpdGlvbjpcbiAgICAgICAgICAgICAgdHlwZTogc3VjY2VlZGVkXG4gICAgICAgIHdlaWdodDogMFxuICAgICAgICBhbGxvd0ZhaWx1cmU6IGZhbHNlXG4gICAgICAtIG5hbWU6IGFzc2VydC1tYW5pZmVzdFxuICAgICAgICBkZXNjcmlwdGlvbjogYXR0ZXN0YXRpb246bWFuaWZlc3QgbXVzdCBleGl0IDBcbiAgICAgICAgdGFzazpcbiAgICAgICAgICB0eXBlOiBhc3NlcnRcbiAgICAgICAgICBleHByOiA+LVxuICAgICAgICAgICAgZGF0YS5xdWVyeSgnbW9kZWxOYW1lID09IFwiJHtzaGVsbE1hbmlmZXN0TW9kZWx9XCIgJiYgbmFtZSA9PSBcInJlc3VsdFwiICYmXG4gICAgICAgICAgICB3b3JrZmxvd1J1bklkID09IFwiJyArIHJ1bi5pZCArICdcIicpWzBdLmF0dHJpYnV0ZXMuZXhpdENvZGUgPT0gMFxuICAgICAgICAgIG1lc3NhZ2U6ID4tXG4gICAgICAgICAgICBmYWlsZWQgdG8gY29tcHV0ZSB0aGUgYXR0ZXN0YXRpb24gbWFuaWZlc3Qg4oCUIHNlZSB0aGVcbiAgICAgICAgICAgICR7c2hlbGxNYW5pZmVzdE1vZGVsfSByZXN1bHQgZGF0YSBmb3Igc3Rkb3V0L3N0ZGVyclxuICAgICAgICAgIHNldmVyaXR5OiBoaWdoXG4gICAgICAgIGRlcGVuZHNPbjpcbiAgICAgICAgICAtIHN0ZXA6IG1hbmlmZXN0XG4gICAgICAgICAgICBjb25kaXRpb246XG4gICAgICAgICAgICAgIHR5cGU6IHN1Y2NlZWRlZFxuICAgICAgICB3ZWlnaHQ6IDBcbiAgICAgICAgYWxsb3dGYWlsdXJlOiBmYWxzZVxuICAgIGRlcGVuZHNPbjogW11cbiAgICB3ZWlnaHQ6IDBcbnZlcnNpb246IDFcbmAsXG4gICAgfSk7XG5cbiAgICBjb25zdCBwYWNrYWdlTWFuYWdlciA9IHByb2plY3QucGFja2FnZS5wYWNrYWdlTWFuYWdlcjtcbiAgICBjb25zdCBhY3Rpb25WZXJzaW9ucyA9IHJlc29sdmVBY3Rpb25WZXJzaW9ucyhvcHRpb25zLmFjdGlvblZlcnNpb25zKTtcblxuICAgIG5ldyBZYW1sRmlsZShwcm9qZWN0LCAnLmdpdGh1Yi93b3JrZmxvd3MvdmVyaWZ5LWF0dGVzdGF0aW9uLnltbCcsIHtcbiAgICAgIG1hcmtlcjogdHJ1ZSxcbiAgICAgIHJlYWRvbmx5OiB0cnVlLFxuICAgICAgb2JqOiB7XG4gICAgICAgIG5hbWU6ICdWZXJpZnkgQXR0ZXN0YXRpb24nLFxuICAgICAgICBvbjoge1xuICAgICAgICAgIHB1bGxfcmVxdWVzdDoge1xuICAgICAgICAgICAgdHlwZXM6IFsnb3BlbmVkJywgJ3N5bmNocm9uaXplJywgJ3Jlb3BlbmVkJ10sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgICAgcGVybWlzc2lvbnM6IHtcbiAgICAgICAgICAnY29udGVudHMnOiAncmVhZCcsXG4gICAgICAgICAgJ3B1bGwtcmVxdWVzdHMnOiAncmVhZCcsXG4gICAgICAgIH0sXG4gICAgICAgIGpvYnM6IHtcbiAgICAgICAgICB2ZXJpZnk6IHtcbiAgICAgICAgICAgICdydW5zLW9uJzogJ3VidW50dS1sYXRlc3QnLFxuICAgICAgICAgICAgJ3N0ZXBzJzogW1xuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ0NoZWNrb3V0JyxcbiAgICAgICAgICAgICAgICB1c2VzOiBhY3Rpb25WZXJzaW9ucy5jaGVja291dCxcbiAgICAgICAgICAgICAgICB3aXRoOiB7XG4gICAgICAgICAgICAgICAgICAncmVmJzogJyR7eyBnaXRodWIuZXZlbnQucHVsbF9yZXF1ZXN0LmhlYWQuc2hhIH19JyxcbiAgICAgICAgICAgICAgICAgICdwZXJzaXN0LWNyZWRlbnRpYWxzJzogZmFsc2UsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgLi4uKHBhY2thZ2VNYW5hZ2VyID09PSBOb2RlUGFja2FnZU1hbmFnZXIuUE5QTSA/IFt7XG4gICAgICAgICAgICAgICAgbmFtZTogJ1NldHVwIHBucG0nLFxuICAgICAgICAgICAgICAgIHVzZXM6IGFjdGlvblZlcnNpb25zLnBucG1BY3Rpb25TZXR1cCxcbiAgICAgICAgICAgICAgfV0gOiBbXSksXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnU2V0dXAgTm9kZS5qcycsXG4gICAgICAgICAgICAgICAgdXNlczogYWN0aW9uVmVyc2lvbnMuc2V0dXBOb2RlLFxuICAgICAgICAgICAgICAgIHdpdGg6IHtcbiAgICAgICAgICAgICAgICAgICdub2RlLXZlcnNpb24nOiAnMjQnLFxuICAgICAgICAgICAgICAgICAgJ3BhY2thZ2UtbWFuYWdlci1jYWNoZSc6IGZhbHNlLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnSW5zdGFsbCBkZXBlbmRlbmNpZXMnLFxuICAgICAgICAgICAgICAgIHJ1bjogaW5zdGFsbENvbW1hbmQocGFja2FnZU1hbmFnZXIpLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgbmFtZTogJ0ZldGNoIFBSIGJvZHknLFxuICAgICAgICAgICAgICAgIGVudjoge1xuICAgICAgICAgICAgICAgICAgR0hfVE9LRU46ICcke3sgc2VjcmV0cy5HSVRIVUJfVE9LRU4gfX0nLFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgcnVuOiBbXG4gICAgICAgICAgICAgICAgICAnZ2ggcHIgdmlldyAke3sgZ2l0aHViLmV2ZW50LnB1bGxfcmVxdWVzdC5udW1iZXIgfX0gXFxcXCcsXG4gICAgICAgICAgICAgICAgICAnICAtLXJlcG8gJHt7IGdpdGh1Yi5yZXBvc2l0b3J5IH19IFxcXFwnLFxuICAgICAgICAgICAgICAgICAgJyAgLS1qc29uIGJvZHkgLXEgLmJvZHkgPiAvdG1wL3ByLWJvZHkubWQnLFxuICAgICAgICAgICAgICAgIF0uam9pbignXFxuJyksXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIHtcbiAgICAgICAgICAgICAgICBuYW1lOiAnVmVyaWZ5IGF0dGVzdGF0aW9uJyxcbiAgICAgICAgICAgICAgICBydW46IFtcbiAgICAgICAgICAgICAgICAgIGAke3J1blNjcmlwdENvbW1hbmQocGFja2FnZU1hbmFnZXIsICdhdHRlc3RhdGlvbjp2ZXJpZnknKX0gLS0gXFxcXGAsXG4gICAgICAgICAgICAgICAgICAnICAtLWJvZHktZmlsZSAvdG1wL3ByLWJvZHkubWQgXFxcXCcsXG4gICAgICAgICAgICAgICAgICAnICAtLWNvbW1pdCAke3sgZ2l0aHViLmV2ZW50LnB1bGxfcmVxdWVzdC5oZWFkLnNoYSB9fScsXG4gICAgICAgICAgICAgICAgXS5qb2luKCdcXG4nKSxcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIF0sXG4gICAgICAgICAgfSxcbiAgICAgICAgfSxcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -7,7 +7,7 @@ const javascript_1 = require("projen/lib/javascript");
|
|
|
7
7
|
const utils_1 = require("./utils");
|
|
8
8
|
const WorkflowActionVersions_1 = require("./WorkflowActionVersions");
|
|
9
9
|
class StagingDeployWorkflow extends projen_1.YamlFile {
|
|
10
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.StagingDeployWorkflow", version: "1.
|
|
10
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.StagingDeployWorkflow", version: "1.27.0" };
|
|
11
11
|
constructor(project, options) {
|
|
12
12
|
const packageManager = project.package.packageManager;
|
|
13
13
|
const actionVersions = (0, WorkflowActionVersions_1.resolveActionVersions)(options.actionVersions);
|
|
@@ -39,7 +39,7 @@ const fs = __importStar(require("fs"));
|
|
|
39
39
|
const path = __importStar(require("path"));
|
|
40
40
|
const projen_1 = require("projen");
|
|
41
41
|
class WorkflowAutoDiscover extends projen_1.Component {
|
|
42
|
-
static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.WorkflowAutoDiscover", version: "1.
|
|
42
|
+
static [JSII_RTTI_SYMBOL_1] = { fqn: "@macedon-technologies/batman.WorkflowAutoDiscover", version: "1.27.0" };
|
|
43
43
|
constructor(project) {
|
|
44
44
|
super(project);
|
|
45
45
|
}
|
|
@@ -203,12 +203,17 @@ globalArguments:
|
|
|
203
203
|
work:
|
|
204
204
|
mode: interactive
|
|
205
205
|
systemPrompt: >-
|
|
206
|
-
Before opening the PR, fetch the real pre-pr-verify
|
|
207
|
-
with `swamp data
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
206
|
+
Before opening the PR, fetch the real pre-pr-verify verification
|
|
207
|
+
report with `swamp data query 'modelType == "workflow" &&
|
|
208
|
+
modelName == "pre-pr-verify" && name ==
|
|
209
|
+
"report-swamp-verification-summary"' --select content --json`,
|
|
210
|
+
take the entry that names this run's head sha (an error report is
|
|
211
|
+
stored under the same name if the report could not run — never
|
|
212
|
+
embed one). If no entry names the head sha, stop and report that
|
|
213
|
+
— do not open the PR. Otherwise include the entry's content
|
|
214
|
+
verbatim (as a markdown block, e.g. under a "Pre-PR verification"
|
|
215
|
+
heading) in the PR body — never just assert in prose that checks
|
|
216
|
+
passed. Also fetch this same run's manifest step
|
|
212
217
|
output (`swamp data query 'modelName == "platform-common-shell-manifest" &&
|
|
213
218
|
name == "result"' --select attributes.stdout --json`, take the
|
|
214
219
|
latest) and append it to the PR body as
|
package/package.json
CHANGED
|
@@ -5,6 +5,15 @@ description: >-
|
|
|
5
5
|
opens a PR rather than after — build/synth/test/lint (pnpm build) and the
|
|
6
6
|
architecture rule registry (pnpm validate:architecture). Both must pass.
|
|
7
7
|
tags: {}
|
|
8
|
+
# Required explicitly rather than relied on as a default. swamp stopped running
|
|
9
|
+
# @swamp/verification-attestation by default in v20260831.202137.0 (swamp-club#1918)
|
|
10
|
+
# and stopped providing it in 20261005.190003.0. @swamp/verification-summary replaces
|
|
11
|
+
# it, with the same content under the data name report-swamp-verification-summary.
|
|
12
|
+
# A workflow that requires a report the installed swamp does not provide still exits 0
|
|
13
|
+
# and stores an error report in its place, so the open-pr stage would embed that.
|
|
14
|
+
reports:
|
|
15
|
+
require:
|
|
16
|
+
- "@swamp/verification-summary"
|
|
8
17
|
inputs:
|
|
9
18
|
type: object
|
|
10
19
|
properties:
|
|
@@ -12,11 +21,11 @@ inputs:
|
|
|
12
21
|
type: string
|
|
13
22
|
description: >-
|
|
14
23
|
The commit sha being verified. Read by the built-in
|
|
15
|
-
@swamp/verification-
|
|
16
|
-
real HEAD sha or the
|
|
24
|
+
@swamp/verification-summary report's subject.commit — pass the
|
|
25
|
+
real HEAD sha or the report renders "unknown".
|
|
17
26
|
branch:
|
|
18
27
|
type: string
|
|
19
|
-
description: Same as commit, but for @swamp/verification-
|
|
28
|
+
description: Same as commit, but for @swamp/verification-summary's subject.branch.
|
|
20
29
|
jobs:
|
|
21
30
|
- name: verify
|
|
22
31
|
description: Build/test/lint plus architecture-rule checks, gating PR creation
|