@jjrawlins/cdk-diff-pr-github-action 0.0.3-beta → 0.0.6-beta
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.
|
@@ -14,7 +14,7 @@ const githubActionsDownloadArtifactVersion = 'v5';
|
|
|
14
14
|
const githubActionsGithubScriptVersion = 'v8';
|
|
15
15
|
class CdkDriftDetectionWorkflow {
|
|
16
16
|
constructor(props) {
|
|
17
|
-
const name = props.workflowName ?? '
|
|
17
|
+
const name = props.workflowName ?? 'drift-detection';
|
|
18
18
|
const fileName = toKebabCase(name) + '.yml';
|
|
19
19
|
const nodeVersion = props.nodeVersion ?? '24.x';
|
|
20
20
|
const createIssues = props.createIssues ?? true;
|
|
@@ -51,7 +51,9 @@ class CdkDriftDetectionWorkflow {
|
|
|
51
51
|
const short = stack.stackName ?? stageFromStack(stack.stackName);
|
|
52
52
|
const jobId = `drift-${short}`;
|
|
53
53
|
const resultsFile = `drift-results-${short}.json`;
|
|
54
|
-
const
|
|
54
|
+
const innerCond = "github.event_name == 'schedule' || !github.event.inputs.stage || github.event.inputs.stage == '" + short + "'";
|
|
55
|
+
const condExpr = "${{ " + innerCond + " }}";
|
|
56
|
+
const notCondExpr = "${{ !(" + innerCond + ") }}";
|
|
55
57
|
jobs[jobId] = {
|
|
56
58
|
name: `Drift Detection - ${short}`,
|
|
57
59
|
runsOn: ['ubuntu-latest'],
|
|
@@ -67,17 +69,20 @@ class CdkDriftDetectionWorkflow {
|
|
|
67
69
|
STAGE_NAME: short,
|
|
68
70
|
STACK_NAME: stack.stackName,
|
|
69
71
|
},
|
|
70
|
-
|
|
72
|
+
// No job-level condition; we gate steps so the job always completes and summary can run
|
|
71
73
|
steps: [
|
|
72
|
-
{ name: '
|
|
74
|
+
{ name: 'Skip (stage not selected)', if: notCondExpr, run: 'echo "Stage not selected; skipping drift detection for this job."' },
|
|
75
|
+
{ name: 'Checkout', if: condExpr, uses: `actions/checkout@${githubActionsCheckoutVersion}` },
|
|
73
76
|
{
|
|
74
77
|
name: 'Setup Node.js',
|
|
78
|
+
if: condExpr,
|
|
75
79
|
uses: `actions/setup-node@${githubActionsSetupNodeVersion}`,
|
|
76
80
|
with: { 'node-version': nodeVersion },
|
|
77
81
|
},
|
|
78
|
-
{ name: 'Install dependencies', run: 'yarn install --frozen-lockfile || npm ci' },
|
|
82
|
+
{ name: 'Install dependencies', if: condExpr, run: 'yarn install --frozen-lockfile || npm ci', env: { GITHUB_TOKEN: '${{ secrets.GITHUB_TOKEN }}' } },
|
|
79
83
|
{
|
|
80
84
|
name: 'AWS Credentials',
|
|
85
|
+
if: condExpr,
|
|
81
86
|
id: 'creds',
|
|
82
87
|
uses: `aws-actions/configure-aws-credentials@${githubActionsAwsCredentialsVersion}`,
|
|
83
88
|
with: {
|
|
@@ -88,6 +93,7 @@ class CdkDriftDetectionWorkflow {
|
|
|
88
93
|
},
|
|
89
94
|
{
|
|
90
95
|
name: 'Assume Drift Detection Role',
|
|
96
|
+
if: condExpr,
|
|
91
97
|
uses: `aws-actions/configure-aws-credentials@${githubActionsAwsCredentialsVersion}`,
|
|
92
98
|
with: {
|
|
93
99
|
'role-to-assume': stack.driftDetectionRoleToAssumeArn,
|
|
@@ -101,6 +107,7 @@ class CdkDriftDetectionWorkflow {
|
|
|
101
107
|
},
|
|
102
108
|
{
|
|
103
109
|
name: 'Detect drift',
|
|
110
|
+
if: condExpr,
|
|
104
111
|
id: 'drift',
|
|
105
112
|
continueOnError: true, // allow artifact upload and issue creation even when drift is detected
|
|
106
113
|
run: [
|
|
@@ -117,6 +124,7 @@ class CdkDriftDetectionWorkflow {
|
|
|
117
124
|
},
|
|
118
125
|
{
|
|
119
126
|
name: 'Upload results',
|
|
127
|
+
if: condExpr,
|
|
120
128
|
uses: `actions/upload-artifact@${githubActionsUploadArtifactVersion}`,
|
|
121
129
|
with: { name: `drift-results-${short}`, path: resultsFile, ifNoFilesFound: 'ignore' },
|
|
122
130
|
},
|
|
@@ -124,7 +132,7 @@ class CdkDriftDetectionWorkflow {
|
|
|
124
132
|
? [
|
|
125
133
|
{
|
|
126
134
|
name: 'Create Issue on Drift',
|
|
127
|
-
if: "always() && steps.drift.outcome == 'failure'
|
|
135
|
+
if: "always() && steps.drift.outcome == 'failure'",
|
|
128
136
|
uses: `actions/github-script@${githubActionsGithubScriptVersion}`,
|
|
129
137
|
with: { script: issueScript(short, stack.driftDetectionRoleToAssumeRegion, resultsFile) },
|
|
130
138
|
},
|
|
@@ -239,4 +247,4 @@ function summaryScript() {
|
|
|
239
247
|
function toKebabCase(s) {
|
|
240
248
|
return s.replace(/[^a-zA-Z0-9]+/g, '-').replace(/^-+|-+$/g, '').toLowerCase();
|
|
241
249
|
}
|
|
242
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2RrRHJpZnREZXRlY3Rpb25Xb3JrZmxvdy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9DZGtEcmlmdERldGVjdGlvbldvcmtmbG93LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsOENBQTJEO0FBQzNELHVFQUFrRTtBQUNsRSxpRkFBMkU7QUFFM0UsTUFBTSxrQ0FBa0MsR0FBRyxJQUFJLENBQUM7QUFDaEQsTUFBTSw0QkFBNEIsR0FBRyxJQUFJLENBQUM7QUFDMUMsTUFBTSw2QkFBNkIsR0FBRyxJQUFJLENBQUM7QUFDM0MsTUFBTSxrQ0FBa0MsR0FBRyxJQUFJLENBQUM7QUFDaEQsTUFBTSxvQ0FBb0MsR0FBRyxJQUFJLENBQUM7QUFDbEQsTUFBTSxnQ0FBZ0MsR0FBRyxJQUFJLENBQUM7QUFxQjlDLE1BQWEseUJBQXlCO0lBR3BDLFlBQVksS0FBcUM7UUFDL0MsTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLFlBQVksSUFBSSxxQkFBcUIsQ0FBQztRQUN6RCxNQUFNLFFBQVEsR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDLEdBQUcsTUFBTSxDQUFDO1FBQzVDLE1BQU0sV0FBVyxHQUFHLEtBQUssQ0FBQyxXQUFXLElBQUksTUFBTSxDQUFDO1FBQ2hELE1BQU0sWUFBWSxHQUFHLEtBQUssQ0FBQyxZQUFZLElBQUksSUFBSSxDQUFDO1FBQ2hELE1BQU0sT0FBTyxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUM7UUFDOUIsTUFBTSxnQkFBZ0IsR0FBRSxLQUFLLENBQUMsZ0JBQWdCLElBQUksMkNBQTJDLENBQUM7UUFFOUYsa0VBQWtFO1FBQ2xFLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUM3QyxJQUFJLG9EQUF1QixDQUFDO2dCQUMxQixPQUFPLEVBQUUsS0FBSyxDQUFDLE9BQU87Z0JBQ3RCLFVBQVUsRUFBRSxnQkFBZ0I7YUFDN0IsQ0FBQyxDQUFDO1lBQ0gseUJBQXlCLENBQUMsYUFBYSxH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aUVBQWlFO1FBQ2pFLHFIQUFxSDtRQUNySCwwRkFBMEY7UUFDMUYsTUFBTTtRQUNOLE1BQU07UUFDTixFQUFFO1FBQ0Ysb0RBQW9EO1FBQ3BELHNFQUFzRTtRQUN0RSx1RUFBdUU7UUFDdkUsOERBQThEO1FBQzlELEVBQUU7UUFDRixxQ0FBcUM7UUFDckMsbUNBQW1DO1FBQ25DLGtHQUFrRztRQUNsRyxJQUFJO0tBQ0wsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7QUFDZixDQUFDO0FBRUQsU0FBUyxXQUFXLENBQUMsQ0FBUztJQUM1QixPQUFPLENBQUMsQ0FBQyxPQUFPLENBQUMsZ0JBQWdCLEVBQUUsR0FBRyxDQUFDLENBQUMsT0FBTyxDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztBQUNoRixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgR2l0SHViLCBHaXRodWJXb3JrZmxvdyB9IGZyb20gJ3Byb2plbi9saWIvZ2l0aHViJztcbmltcG9ydCB7IEpvYlBlcm1pc3Npb24gfSBmcm9tICdwcm9qZW4vbGliL2dpdGh1Yi93b3JrZmxvd3MtbW9kZWwnO1xuaW1wb3J0IHsgQ2RrRHJpZnREZXRlY3Rpb25TY3JpcHQgfSBmcm9tICcuL2Jpbi9jZGstZHJpZnQtZGV0ZWN0aW9uLXNjcmlwdCc7XG5cbmNvbnN0IGdpdGh1YkFjdGlvbnNBd3NDcmVkZW50aWFsc1ZlcnNpb24gPSAndjUnO1xuY29uc3QgZ2l0aHViQWN0aW9uc0NoZWNrb3V0VmVyc2lvbiA9ICd2NSc7XG5jb25zdCBnaXRodWJBY3Rpb25zU2V0dXBOb2RlVmVyc2lvbiA9ICd2NSc7XG5jb25zdCBnaXRodWJBY3Rpb25zVXBsb2FkQXJ0aWZhY3RWZXJzaW9uID0gJ3Y0JztcbmNvbnN0IGdpdGh1YkFjdGlvbnNEb3dubG9hZEFydGlmYWN0VmVyc2lvbiA9ICd2NSc7XG5jb25zdCBnaXRodWJBY3Rpb25zR2l0aHViU2NyaXB0VmVyc2lvbiA9ICd2OCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgU3RhY2sge1xuICByZWFkb25seSBzdGFja05hbWU6IHN0cmluZztcbiAgcmVhZG9ubHkgZHJpZnREZXRlY3Rpb25Sb2xlVG9Bc3N1bWVSZWdpb246IHN0cmluZztcbiAgcmVhZG9ubHkgZHJpZnREZXRlY3Rpb25Sb2xlVG9Bc3N1bWVBcm46IHN0cmluZztcbiAgcmVhZG9ubHkgZmFpbE9uRHJpZnQ/OiBib29sZWFuOyAvLyBpZiB0cnVlLCBmYWlsIGpvYiB3aGVuIGRyaWZ0IGRldGVjdGVkIChkZWZhdWx0IHRydWUpXG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgQ2RrRHJpZnREZXRlY3Rpb25Xb3JrZmxvd1Byb3BzIHtcbiAgcmVhZG9ubHkgc2NyaXB0T3V0cHV0UGF0aD86IHN0cmluZztcbiAgcmVhZG9ubHkgcHJvamVjdDogYW55OyAvLyBhdm9pZCBleHBvcnRpbmcgcHJvamVuIHR5cGVzIGluIHB1YmxpYyBBUElcbiAgcmVhZG9ubHkgd29ya2Zsb3dOYW1lPzogc3RyaW5nOyAvLyB3b3JrZmxvdyB3b3JrZmxvd05hbWUgKGFsc28gdXNlZCB0byBkZXJpdmUgZmlsZSB3b3JrZmxvd05hbWUpXG4gIHJlYWRvbmx5IHNjaGVkdWxlPzogc3RyaW5nOyAvLyBjcm9uIGV4cHJlc3Npb24sIGUuZy4gJzAgMCAqICogKidcbiAgcmVhZG9ubHkgY3JlYXRlSXNzdWVzPzogYm9vbGVhbjsgLy8gY3JlYXRlL3VwZGF0ZSBpc3N1ZSB3aGVuIGRyaWZ0IGRldGVjdGVkIG9uIHNjaGVkdWxlIChkZWZhdWx0IHRydWUpXG4gIHJlYWRvbmx5IG9pZGNSb2xlQXJuOiBzdHJpbmc7IC8vIGRlZmF1bHQgT0lEQyByb2xlIEFSTiB0byBhc3N1bWUgZm9yIGFsbCBzdGFja3NcbiAgcmVhZG9ubHkgb2lkY1JlZ2lvbjogc3RyaW5nOyAvLyBkZWZhdWx0IE9JREMgcmVnaW9uIHRvIGFzc3VtZSBmb3IgYWxsIHN0YWNrc1xuICByZWFkb25seSBzdGFja3M6IFN0YWNrW107XG4gIHJlYWRvbmx5IG5vZGVWZXJzaW9uPzogc3RyaW5nOyAvLyBlLmcuLCAnMjQueCdcbn1cblxuZXhwb3J0IGNsYXNzIENka0RyaWZ0RGV0ZWN0aW9uV29ya2Zsb3cge1xuICBwcml2YXRlIHN0YXRpYyBzY3JpcHRDcmVhdGVkID0gZmFsc2U7XG5cbiAgY29uc3RydWN0b3IocHJvcHM6IENka0RyaWZ0RGV0ZWN0aW9uV29ya2Zsb3dQcm9wcykge1xuICAgIGNvbnN0IG5hbWUgPSBwcm9wcy53b3JrZmxvd05hbWUgPz8gJ0NESyBEcmlmdCBEZXRlY3Rpb24nO1xuICAgIGNvbnN0IGZpbGVOYW1lID0gdG9LZWJhYkNhc2UobmFtZSkgKyAnLnltbCc7XG4gICAgY29uc3Qgbm9kZVZlcnNpb24gPSBwcm9wcy5ub2RlVmVyc2lvbiA/PyAnMjQueCc7XG4gICAgY29uc3QgY3JlYXRlSXNzdWVzID0gcHJvcHMuY3JlYXRlSXNzdWVzID8/IHRydWU7XG4gICAgY29uc3QgcHJvamVjdCA9IHByb3BzLnByb2plY3Q7XG4gICAgY29uc3Qgc2NyaXB0T3V0cHV0UGF0aD0gcHJvcHMuc2NyaXB0T3V0cHV0UGF0aCA/PyAnLmdpdGh1Yi93b3JrZmxvd3Mvc2NyaXB0cy9kZXRlY3QtZHJpZnQudHMnO1xuXG4gICAgLy8gT25seSBjcmVhdGUgdGhlIGRyaWZ0IGRldGVjdGlvbiBzY3JpcHQgb25jZSB0byBhdm9pZCBjb2xsaXNpb25zXG4gICAgaWYgKCFDZGtEcmlmdERldGVjdGlvbldvcmtmbG93LnNjcmlwdENyZWF0ZWQpIHtcbiAgICAgIG5ldyBDZGtEcmlmdERldGVjdGlvblNjcmlwdCh7XG4gICAgICAgIHByb2plY3Q6IHByb3BzLnByb2plY3QsXG4gICAgICAgIG91dHB1dFBhdGg6IHNjcmlwdE91dHB1dFBhdGgsXG4gICAgICB9KTtcbiAgICAgIENka0RyaWZ0RGV0ZWN0aW9uV29ya2Zsb3cuc2NyaXB0Q3JlYXRlZCA9IHRydWU7XG4gICAgfVxuXG4gICAgY29uc3QgZ2ggPSAocHJvamVjdCBhcyBhbnkpLmdpdGh1YiA/PyBuZXcgR2l0SHViKHByb2plY3QpO1xuICAgIGNvbnN0IHdvcmtmbG93ID0gbmV3IEdpdGh1YldvcmtmbG93KGdoLCBuYW1lLCB7IGZpbGVOYW1lIH0pO1xuXG4gICAgLy8gdHJpZ2dlcnM6IHNjaGVkdWxlICsgbWFudWFsIGRpc3BhdGNoIHdpdGggc3RhZ2UgY2hvaWNlXG4gICAgY29uc3Qgc3RhZ2VDaG9pY2VzID0gcHJvcHMuc3RhY2tzLm1hcCgocykgPT4gcy5zdGFja05hbWUgPz8gc3RhZ2VGcm9tU3RhY2socy5zdGFja05hbWUpKTtcbiAgICB3b3JrZmxvdy5vbih7XG4gICAgICBzY2hlZHVsZTogcHJvcHMuc2NoZWR1bGUgPyBbeyBjcm9uOiBwcm9wcy5zY2hlZHVsZSB9XSA6IHVuZGVmaW5lZCxcbiAgICAgIHdvcmtmbG93RGlzcGF0Y2g6IHtcbiAgICAgICAgaW5wdXRzOiB7XG4gICAgICAgICAgc3RhZ2U6IHtcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnU3RhZ2UgdG8gY2hlY2sgZm9yIGRyaWZ0IChsZWF2ZSBlbXB0eSBmb3IgYWxsKScsXG4gICAgICAgICAgICByZXF1aXJlZDogZmFsc2UsXG4gICAgICAgICAgICB0eXBlOiAnY2hvaWNlJyxcbiAgICAgICAgICAgIG9wdGlvbnM6IHN0YWdlQ2hvaWNlcyxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9KTtcblxuICAgIC8vIE9uZSBqb2IgcGVyIHN0YWdlXG4gICAgY29uc3Qgam9iczogUmVjb3JkPHN0cmluZywgYW55PiA9IHt9O1xuICAgIGZvciAoY29uc3Qgc3RhY2sgb2YgcHJvcHMuc3RhY2tzKSB7XG4gICAgICBjb25zdCBzaG9ydCA9IHN0YWNrLnN0YWNrTmFtZSA/PyBzdGFnZUZyb21TdGFjayhzdGFjay5zdGFja05hbWUpO1xuICAgICAgY29uc3Qgam9iSWQgPSBgZHJpZnQtJHtzaG9ydH1gO1xuICAgICAgY29uc3QgcmVzdWx0c0ZpbGUgPSBgZHJpZnQtcmVzdWx0cy0ke3Nob3J0fS5qc29uYDtcbiAgICAgIGNvbnN0IGlmQ29uZCA9IFwiJHt7IGdpdGh1Yi5ldmVudF9uYW1lID09ICdzY2hlZHVsZScgfHwgZ2l0aHViLmV2ZW50LmlucHV0cy5zdGFnZSA9PSAnJyB8fCBnaXRodWIuZXZlbnQuaW5wdXRzLnN0YWdlID09ICdcIiArIHNob3J0ICsgXCInIH19XCI7XG5cbiAgICAgIGpvYnNbam9iSWRdID0ge1xuICAgICAgICBuYW1lOiBgRHJpZnQgRGV0ZWN0aW9uIC0gJHtzaG9ydH1gLFxuICAgICAgICBydW5zT246IFsndWJ1bnR1LWxhdGVzdCddLFxuICAgICAgICBwZXJtaXNzaW9uczoge1xuICAgICAgICAgIGNvbnRlbnRzOiBKb2JQZXJtaXNzaW9uLlJFQUQsXG4gICAgICAgICAgaWRUb2tlbjogSm9iUGVybWlzc2lvbi5XUklURSxcbiAgICAgICAgICBpc3N1ZXM6IEpvYlBlcm1pc3Npb24uV1JJVEUsXG4gICAgICAgIH0sXG4gICAgICAgIGVudjoge1xuICAgICAgICAgIEFXU19ERUZBVUxUX1JFR0lPTjogc3RhY2suZHJpZnREZXRlY3Rpb25Sb2xlVG9Bc3N1bWVSZWdpb24sXG4gICAgICAgICAgQVdTX1JFR0lPTjogc3RhY2suZHJpZnREZXRlY3Rpb25Sb2xlVG9Bc3N1bWVSZWdpb24sXG4gICAgICAgICAgRFJJRlRfREVURUNUSU9OX09VVFBVVDogcmVzdWx0c0ZpbGUsXG4gICAgICAgICAgU1RBR0VfTkFNRTogc2hvcnQsXG4gICAgICAgICAgU1RBQ0tfTkFNRTogc3RhY2suc3RhY2tOYW1lLFxuICAgICAgICB9LFxuICAgICAgICBpZjogaWZDb25kLFxuICAgICAgICBzdGVwczogW1xuICAgICAgICAgIHsgbmFtZTogJ0NoZWNrb3V0JywgdXNlczogYGFjdGlvbnMvY2hlY2tvdXRAJHtnaXRodWJBY3Rpb25zQ2hlY2tvdXRWZXJzaW9ufWAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAnU2V0dXAgTm9kZS5qcycsXG4gICAgICAgICAgICB1c2VzOiBgYWN0aW9ucy9zZXR1cC1ub2RlQCR7Z2l0aHViQWN0aW9uc1NldHVwTm9kZVZlcnNpb259YCxcbiAgICAgICAgICAgIHdpdGg6IHsgJ25vZGUtdmVyc2lvbic6IG5vZGVWZXJzaW9uIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7IG5hbWU6ICdJbnN0YWxsIGRlcGVuZGVuY2llcycsIHJ1bjogJ3lhcm4gaW5zdGFsbCAtLWZyb3plbi1sb2NrZmlsZSB8fCBucG0gY2knIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogJ0FXUyBDcmVkZW50aWFscycsXG4gICAgICAgICAgICBpZDogJ2NyZWRzJyxcbiAgICAgICAgICAgIHVzZXM6IGBhd3MtYWN0aW9ucy9jb25maWd1cmUtYXdzLWNyZWRlbnRpYWxzQCR7Z2l0aHViQWN0aW9uc0F3c0NyZWRlbnRpYWxzVmVyc2lvbn1gLFxuICAgICAgICAgICAgd2l0aDoge1xuICAgICAgICAgICAgICAncm9sZS10by1hc3N1bWUnOiBwcm9wcy5vaWRjUm9sZUFybixcbiAgICAgICAgICAgICAgJ3JvbGUtc2Vzc2lvbi1uYW1lJzogJ0dpdEh1YkFjdGlvbicsXG4gICAgICAgICAgICAgICdhd3MtcmVnaW9uJzogcHJvcHMub2lkY1JlZ2lvbixcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAnQXNzdW1lIERyaWZ0IERldGVjdGlvbiBSb2xlJyxcbiAgICAgICAgICAgIHVzZXM6IGBhd3MtYWN0aW9ucy9jb25maWd1cmUtYXdzLWNyZWRlbnRpYWxzQCR7Z2l0aHViQWN0aW9uc0F3c0NyZWRlbnRpYWxzVmVyc2lvbn1gLFxuICAgICAgICAgICAgd2l0aDoge1xuICAgICAgICAgICAgICAncm9sZS10by1hc3N1bWUnOiBzdGFjay5kcmlmdERldGVjdGlvblJvbGVUb0Fzc3VtZUFybixcbiAgICAgICAgICAgICAgJ3JvbGUtY2hhaW5pbmcnOiB0cnVlLFxuICAgICAgICAgICAgICAncm9sZS1za2lwLXNlc3Npb24tdGFnZ2luZyc6IHRydWUsXG4gICAgICAgICAgICAgICdhd3MtcmVnaW9uJzogc3RhY2suZHJpZnREZXRlY3Rpb25Sb2xlVG9Bc3N1bWVSZWdpb24sXG4gICAgICAgICAgICAgICdhd3MtYWNjZXNzLWtleS1pZCc6ICcke3sgc3RlcHMuY3JlZHMub3V0cHV0cy5hd3MtYWNjZXNzLWtleS1pZCB9fScsXG4gICAgICAgICAgICAgICdhd3Mtc2VjcmV0LWFjY2Vzcy1rZXknOiAnJHt7IHN0ZXBzLmNyZWRzLm91dHB1dHMuYXdzLXNlY3JldC1hY2Nlc3Mta2V5IH19JyxcbiAgICAgICAgICAgICAgJ2F3cy1zZXNzaW9uLXRva2VuJzogJyR7eyBzdGVwcy5jcmVkcy5vdXRwdXRzLmF3cy1zZXNzaW9uLXRva2VuIH19JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAnRGV0ZWN0IGRyaWZ0JyxcbiAgICAgICAgICAgIGlkOiAnZHJpZnQnLFxuICAgICAgICAgICAgY29udGludWVPbkVycm9yOiB0cnVlLCAvLyBhbGxvdyBhcnRpZmFjdCB1cGxvYWQgYW5kIGlzc3VlIGNyZWF0aW9uIGV2ZW4gd2hlbiBkcmlmdCBpcyBkZXRlY3RlZFxuICAgICAgICAgICAgcnVuOiBbXG4gICAgICAgICAgICAgICdzZXQgLWUnLFxuICAgICAgICAgICAgICAvLyBVc2UgdGhlIGJ1bmRsZWQgc2NyaXB0IGZyb20gdGhpcyBwYWNrYWdlXG4gICAgICAgICAgICAgICdub2RlIC4vbm9kZV9tb2R1bGVzL0BqanJhd2xpbnMvY2RrLWRpZmYtcHItZ2l0aHViLWFjdGlvbi9saWIvYmluL2RldGVjdC1kcmlmdC5qcycsXG4gICAgICAgICAgICAgICdpZiBbIC1mIFwiJERSSUZUX0RFVEVDVElPTl9PVVRQVVRcIiBdOyB0aGVuIGVjaG8gXCJSZXN1bHRzIGZpbGUgY3JlYXRlZDogJERSSUZUX0RFVEVDVElPTl9PVVRQVVRcIjsgZmknLFxuICAgICAgICAgICAgXS5qb2luKCdcXG4nKSxcbiAgICAgICAgICAgIGVudjoge1xuICAgICAgICAgICAgICBTVEFDS19OQU1FOiBzdGFjay5zdGFja05hbWUsXG4gICAgICAgICAgICAgIEFXU19SRUdJT046IHN0YWNrLmRyaWZ0RGV0ZWN0aW9uUm9sZVRvQXNzdW1lUmVnaW9uLFxuICAgICAgICAgICAgICBEUklGVF9ERVRFQ1RJT05fT1VUUFVUOiByZXN1bHRzRmlsZSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAnVXBsb2FkIHJlc3VsdHMnLFxuICAgICAgICAgICAgdXNlczogYGFjdGlvbnMvdXBsb2FkLWFydGlmYWN0QCR7Z2l0aHViQWN0aW9uc1VwbG9hZEFydGlmYWN0VmVyc2lvbn1gLFxuICAgICAgICAgICAgd2l0aDogeyBuYW1lOiBgZHJpZnQtcmVzdWx0cy0ke3Nob3J0fWAsIHBhdGg6IHJlc3VsdHNGaWxlLCBpZk5vRmlsZXNGb3VuZDogJ2lnbm9yZScgfSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIC4uLihcbiAgICAgICAgICAgIGNyZWF0ZUlzc3Vlc1xuICAgICAgICAgICAgICA/IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICBuYW1lOiAnQ3JlYXRlIElzc3VlIG9uIERyaWZ0JyxcbiAgICAgICAgICAgICAgICAgIGlmOiBcImFsd2F5cygpICYmIHN0ZXBzLmRyaWZ0Lm91dGNvbWUgPT0gJ2ZhaWx1cmUnICYmIGdpdGh1Yi5ldmVudF9uYW1lID09ICdzY2hlZHVsZSdcIixcbiAgICAgICAgICAgICAgICAgIHVzZXM6IGBhY3Rpb25zL2dpdGh1Yi1zY3JpcHRAJHtnaXRodWJBY3Rpb25zR2l0aHViU2NyaXB0VmVyc2lvbn1gLFxuICAgICAgICAgICAgICAgICAgd2l0aDogeyBzY3JpcHQ6IGlzc3VlU2NyaXB0KHNob3J0LCBzdGFjay5kcmlmdERldGVjdGlvblJvbGVUb0Fzc3VtZVJlZ2lvbiwgcmVzdWx0c0ZpbGUpIH0sXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgICAgXVxuICAgICAgICAgICAgICA6IFtdXG4gICAgICAgICAgKSxcbiAgICAgICAgXSxcbiAgICAgIH07XG4gICAgfVxuXG4gICAgLy8gc3VtbWFyeSBhZ2dyZWdhdG9yIGpvYlxuICAgIGpvYnNbJ2RyaWZ0LXN1bW1hcnknXSA9IHtcbiAgICAgIG5hbWU6ICdEcmlmdCBEZXRlY3Rpb24gU3VtbWFyeScsXG4gICAgICBuZWVkczogT2JqZWN0LmtleXMoam9icykuZmlsdGVyKChqKSA9PiBqLnN0YXJ0c1dpdGgoJ2RyaWZ0LScpICYmIGogIT09ICdkcmlmdC1zdW1tYXJ5JyksXG4gICAgICBydW5zT246IFsndWJ1bnR1LWxhdGVzdCddLFxuICAgICAgcGVybWlzc2lvbnM6IHsgY29udGVudHM6IEpvYlBlcm1pc3Npb24uUkVBRCB9LFxuICAgICAgc3RlcHM6IFtcbiAgICAgICAge1xuICAgICAgICAgIG5hbWU6ICdEb3dubG9hZCBhbGwgYXJ0aWZhY3RzJyxcbiAgICAgICAgICB1c2VzOiBgYWN0aW9ucy9kb3dubG9hZC1hcnRpZmFjdEAke2dpdGh1YkFjdGlvbnNEb3dubG9hZEFydGlmYWN0VmVyc2lvbn1gLFxuICAgICAgICAgIHdpdGg6IHsgcGF0aDogJ2RyaWZ0LXJlc3VsdHMnIH0sXG4gICAgICAgIH0sXG4gICAgICAgIHsgbmFtZTogJ0dlbmVyYXRlIHN1bW1hcnknLCBzaGVsbDogJ2Jhc2gnLCBydW46IHN1bW1hcnlTY3JpcHQoKSB9LFxuICAgICAgXSxcbiAgICB9O1xuXG4gICAgd29ya2Zsb3cuYWRkSm9icyhqb2JzKTtcbiAgfVxufVxuXG5mdW5jdGlvbiBzdGFnZUZyb21TdGFjayhzdGFja05hbWU6IHN0cmluZyk6IHN0cmluZyB7XG4gIGNvbnN0IHBhcnRzID0gc3RhY2tOYW1lLnNwbGl0KCctJyk7XG4gIHJldHVybiBwYXJ0c1twYXJ0cy5sZW5ndGggLSAxXSB8fCBzdGFja05hbWU7XG59XG5cbmZ1bmN0aW9uIGlzc3VlU2NyaXB0KHN0YWdlOiBzdHJpbmcsIHJlZ2lvbjogc3RyaW5nLCByZXN1bHRzRmlsZTogc3RyaW5nKTogc3RyaW5nIHtcbiAgLy8gQ29uc3RydWN0IGEgcGxhaW4gSlMgc2NyaXB0IHN0cmluZyAobm8gdGVtcGxhdGUgc3RyaW5nIG5lc3RpbmcgbWlzaGFwcylcbiAgY29uc3QgbGluZXMgPSBbXG4gICAgXCJjb25zdCBmcyA9IHJlcXVpcmUoJ2ZzJyk7XCIsXG4gICAgYGNvbnN0IHJlc3VsdHNGaWxlID0gJyR7cmVzdWx0c0ZpbGV9JztgLFxuICAgIFwiaWYgKCFmcy5leGlzdHNTeW5jKHJlc3VsdHNGaWxlKSkgeyBjb25zb2xlLmxvZygnTm8gcmVzdWx0cyBmaWxlIGZvdW5kJyk7IHJldHVybjsgfVwiLFxuICAgIFwiY29uc3QgcmVzdWx0cyA9IEpTT04ucGFyc2UoZnMucmVhZEZpbGVTeW5jKHJlc3VsdHNGaWxlLCAndXRmOCcpKTtcIixcbiAgICBcImNvbnN0IGRyaWZ0ZWRTdGFja3MgPSByZXN1bHRzLmZpbHRlcihyID0+IHIuZHJpZnRTdGF0dXMgPT09ICdEUklGVEVEJyk7XCIsXG4gICAgXCJpZiAoZHJpZnRlZFN0YWNrcy5sZW5ndGggPT09IDApIHsgY29uc29sZS5sb2coJ05vIGRyaWZ0IGRldGVjdGVkJyk7IHJldHVybjsgfVwiLFxuICAgIGBjb25zdCB0aXRsZSA9ICdEcmlmdCBEZXRlY3RlZCBpbiAke3N0YWdlfSc7YCxcbiAgICBgbGV0IGJvZHkgPSAnIyMgRHJpZnQgRGV0ZWN0aW9uIFJlcG9ydFxcXFxuXFxcXG4nICsgJyoqU3RhZ2U6KiogJHtzdGFnZX1cXFxcbicgKyAnKipSZWdpb246KiogJHtyZWdpb259XFxcXG4nICsgJyoqVGltZToqKiAnICsgbmV3IERhdGUoKS50b0lTT1N0cmluZygpICsgJ1xcXFxuXFxcXG4nO2AsXG4gICAgXCJib2R5ICs9ICcjIyMgU3VtbWFyeVxcXFxuJztcIixcbiAgICBcImJvZHkgKz0gJy0gVG90YWwgc3RhY2tzIGNoZWNrZWQ6ICcgKyByZXN1bHRzLmxlbmd0aCArICdcXFxcbic7XCIsXG4gICAgXCJib2R5ICs9ICctIERyaWZ0ZWQgc3RhY2tzOiAnICsgZHJpZnRlZFN0YWNrcy5sZW5ndGggKyAnXFxcXG5cXFxcbic7XCIsXG4gICAgXCJib2R5ICs9ICcjIyMgRHJpZnRlZCBTdGFja3NcXFxcbic7XCIsXG4gICAgJ2ZvciAoY29uc3QgcyBvZiBkcmlmdGVkU3RhY2tzKSB7JyxcbiAgICAnICBjb25zdCByZXNvdXJjZXMgPSBzLmRyaWZ0ZWRSZXNvdXJjZXMgfHwgW107JyxcbiAgICBcIiAgYm9keSArPSAnIyMjIyAnICsgcy5zdGFja05hbWUgKyAnXFxcXG4nO1wiLFxuICAgIFwiICBib2R5ICs9ICctIERyaWZ0ZWQgcmVzb3VyY2VzOiAnICsgcmVzb3VyY2VzLmxlbmd0aCArICdcXFxcbic7XCIsXG4gICAgXCIgIGZvciAoY29uc3QgciBvZiByZXNvdXJjZXMpIHsgYm9keSArPSAnICAtICcgKyByLmxvZ2ljYWxSZXNvdXJjZUlkICsgJyAoJyArIHIucmVzb3VyY2VUeXBlICsgJylcXFxcbic7IH1cIixcbiAgICBcIiAgYm9keSArPSAnXFxcXG4nO1wiLFxuICAgICd9JyxcbiAgICBcImJvZHkgKz0gJyMjIyBBY3Rpb24gUmVxdWlyZWRcXFxcbicgKyAnUGxlYXNlIHJldmlldyB0aGUgZHJpZnRlZCByZXNvdXJjZXMgYW5kIGVpdGhlcjpcXFxcbjEuIFVwZGF0ZSB0aGUgaW5mcmFzdHJ1Y3R1cmUgY29kZSB0byBtYXRjaCB0aGUgYWN0dWFsIHN0YXRlXFxcXG4yLiBSZXN0b3JlIHRoZSByZXNvdXJjZXMgdG8gbWF0Y2ggdGhlIGV4cGVjdGVkIHN0YXRlXFxcXG5cXFxcbic7XCIsXG4gICAgJ2JvZHkgKz0gYFtWaWV3IHdvcmtmbG93IHJ1bl0oJHtjb250ZXh0LnNlcnZlclVybH0vJHtjb250ZXh0LnJlcG8ub3duZXJ9LyR7Y29udGV4dC5yZXBvLnJlcG99L2FjdGlvbnMvcnVucy8ke2NvbnRleHQucnVuSWR9KWA7JyxcbiAgICAvLyBMaXN0IG9yIHVwZGF0ZSBhbiBpc3N1ZSB3aXRoIGxhYmVsc1xuICAgIGBjb25zdCBpc3N1ZXMgPSBhd2FpdCBnaXRodWIucmVzdC5pc3N1ZXMubGlzdEZvclJlcG8oeyBvd25lcjogY29udGV4dC5yZXBvLm93bmVyLCByZXBvOiBjb250ZXh0LnJlcG8ucmVwbywgc3RhdGU6ICdvcGVuJywgbGFiZWxzOiBbJ2RyaWZ0LWRldGVjdGlvbicsICcke3N0YWdlfSddIH0pO2AsXG4gICAgJ2lmIChpc3N1ZXMuZGF0YS5sZW5ndGggPT09IDApIHsnLFxuICAgIGAgIGF3YWl0IGdpdGh1Yi5yZXN0Lmlzc3Vlcy5jcmVhdGUoeyBvd25lcjogY29udGV4dC5yZXBvLm93bmVyLCByZXBvOiBjb250ZXh0LnJlcG8ucmVwbywgdGl0bGUsIGJvZHksIGxhYmVsczogWydkcmlmdC1kZXRlY3Rpb24nLCAnJHtzdGFnZX0nXSB9KTtgLFxuICAgICd9IGVsc2UgeycsXG4gICAgJyAgY29uc3QgaXNzdWUgPSBpc3N1ZXMuZGF0YVswXTsnLFxuICAgICcgIGF3YWl0IGdpdGh1Yi5yZXN0Lmlzc3Vlcy5jcmVhdGVDb21tZW50KHsgb3duZXI6IGNvbnRleHQucmVwby5vd25lciwgcmVwbzogY29udGV4dC5yZXBvLnJlcG8sIGlzc3VlX251bWJlcjogaXNzdWUubnVtYmVyLCBib2R5IH0pOycsXG4gICAgJ30nLFxuICBdO1xuICByZXR1cm4gbGluZXMuam9pbignXFxuJyk7XG59XG5cbmZ1bmN0aW9uIHN1bW1hcnlTY3JpcHQoKTogc3RyaW5nIHtcbiAgcmV0dXJuIFtcbiAgICAnIyEvYmluL2Jhc2gnLFxuICAgICdzZXQgLWUnLFxuICAgICdlY2hvIFwiIyMgRHJpZnQgRGV0ZWN0aW9uIFN1bW1hcnlcIiA+PiAkR0lUSFVCX1NURVBfU1VNTUFSWScsXG4gICAgJ2VjaG8gXCJcIiA+PiAkR0lUSFVCX1NURVBfU1VNTUFSWScsXG4gICAgJycsXG4gICAgJ3RvdGFsX3N0YWNrcz0wJyxcbiAgICAndG90YWxfZHJpZnRlZD0wJyxcbiAgICAndG90YWxfZXJyb3JzPTAnLFxuICAgICcnLFxuICAgICdzaG9wdCAtcyBudWxsZ2xvYicsXG4gICAgJ2ZvciBmaWxlIGluIGRyaWZ0LXJlc3VsdHMtKi5qc29uIGRyaWZ0LXJlc3VsdHMvKi9kcmlmdC1yZXN1bHRzLSouanNvbjsgZG8nLFxuICAgICcgIGlmIFtbIC1mIFwiJGZpbGVcIiBdXTsgdGhlbicsXG4gICAgJyAgICBzdGFnZT0kKGJhc2VuYW1lIFwiJGZpbGVcIiB8IHNlZCAtRSBcXFwicy9eZHJpZnQtcmVzdWx0cy0oW14uXSspXFxcXC5qc29uJC9cXFxcMS9cXFwiKScsXG4gICAgJyAgICBlY2hvIFwiIyMjIFN0YWdlOiAkc3RhZ2VcIiA+PiAkR0lUSFVCX1NURVBfU1VNTUFSWScsXG4gICAgJyAgICBqcSAtciBcXCcnICtcbiAgICAgICcuIGFzICRyZXN1bHRzIHxcXG4nICtcbiAgICAgICdcIi0gVG90YWwgc3RhY2tzOiBcIiArICgkcmVzdWx0cyB8IGxlbmd0aCB8IHRvc3RyaW5nKSArIFwiXFxcXG5cIiArXFxuJyArXG4gICAgICAnXCItIERyaWZ0ZWQ6IFwiICsgKFsuW10gfCBzZWxlY3QoLmRyaWZ0U3RhdHVzID09IFwiRFJJRlRFRFwiKV0gfCBsZW5ndGggfCB0b3N0cmluZykgKyBcIlxcXFxuXCIgK1xcbicgK1xuICAgICAgJ1wiLSBFcnJvcnM6IFwiICsgKFsuW10gfCBzZWxlY3QoLmVycm9yKV0gfCBsZW5ndGggfCB0b3N0cmluZykgKyBcIlxcXFxuXCIgK1xcbicgK1xuICAgICAgJyhbLltdIHwgc2VsZWN0KC5kcmlmdFN0YXR1cyA9PSBcIkRSSUZURURcIildIHwgaWYgbGVuZ3RoID4gMCB0aGVuIFwiXFxcXG4qKkRyaWZ0ZWQgc3RhY2tzOioqXFxcXG5cIiArIChtYXAoXCIgIC0gXCIgKyAuc3RhY2tOYW1lICsgXCIgKFwiICsgKCguZHJpZnRlZFJlc291cmNlcyAvLyBbXSkgfCBsZW5ndGggfCB0b3N0cmluZykgKyBcIiByZXNvdXJjZXMpXCIpIHwgam9pbihcIlxcXFxuXCIpKSBlbHNlIFwiXCIgZW5kKVxcbicgK1xuICAgICdcXCcnICtcbiAgICAnIFwiJGZpbGVcIiA+PiAkR0lUSFVCX1NURVBfU1VNTUFSWScsXG4gICAgJyAgICBlY2hvIFwiXCIgPj4gJEdJVEhVQl9TVEVQX1NVTU1BUlknLFxuICAgICcgICAgdG90YWxfc3RhY2tzPSQoKHRvdGFsX3N0YWNrcyArICQoanEgXFxcImxlbmd0aFxcXCIgXFxcIiRmaWxlXFxcIikpKScsXG4gICAgJyAgICB0b3RhbF9kcmlmdGVkPSQoKHRvdGFsX2RyaWZ0ZWQgKyAkKGpxIFxcXCJbLltdIHwgc2VsZWN0KC5kcmlmdFN0YXR1cyA9PSBcXFxcXFxcIkRSSUZURURcXFxcXFxcIildIHwgbGVuZ3RoXFxcIiBcXFwiJGZpbGVcXFwiKSkpJyxcbiAgICAnICAgIHRvdGFsX2Vycm9ycz0kKCh0b3RhbF9lcnJvcnMgKyAkKGpxIFxcXCJbLltdIHwgc2VsZWN0KC5lcnJvcildIHwgbGVuZ3RoXFxcIiBcXFwiJGZpbGVcXFwiKSkpJyxcbiAgICAnICBmaScsXG4gICAgJ2RvbmUnLFxuICAgICcnLFxuICAgICdlY2hvIFwiIyMjIE92ZXJhbGwgU3VtbWFyeVwiID4+ICRHSVRIVUJfU1RFUF9TVU1NQVJZJyxcbiAgICAnZWNobyBcIi0gVG90YWwgc3RhY2tzIGNoZWNrZWQ6ICR0b3RhbF9zdGFja3NcIiA+PiAkR0lUSFVCX1NURVBfU1VNTUFSWScsXG4gICAgJ2VjaG8gXCItIFRvdGFsIGRyaWZ0ZWQgc3RhY2tzOiAkdG90YWxfZHJpZnRlZFwiID4+ICRHSVRIVUJfU1RFUF9TVU1NQVJZJyxcbiAgICAnZWNobyBcIi0gVG90YWwgZXJyb3JzOiAkdG90YWxfZXJyb3JzXCIgPj4gJEdJVEhVQl9TVEVQX1NVTU1BUlknLFxuICAgICcnLFxuICAgICdpZiBbWyAkdG90YWxfZHJpZnRlZCAtZ3QgMCBdXTsgdGhlbicsXG4gICAgJyAgZWNobyBcIlwiID4+ICRHSVRIVUJfU1RFUF9TVU1NQVJZJyxcbiAgICAnICBlY2hvIFwi4pqg77iPICoqQWN0aW9uIHJlcXVpcmVkOioqIERyaWZ0IGRldGVjdGVkIGluICR0b3RhbF9kcmlmdGVkIHN0YWNrc1wiID4+ICRHSVRIVUJfU1RFUF9TVU1NQVJZJyxcbiAgICAnZmknLFxuICBdLmpvaW4oJ1xcbicpO1xufVxuXG5mdW5jdGlvbiB0b0tlYmFiQ2FzZShzOiBzdHJpbmcpOiBzdHJpbmcge1xuICByZXR1cm4gcy5yZXBsYWNlKC9bXmEtekEtWjAtOV0rL2csICctJykucmVwbGFjZSgvXi0rfC0rJC9nLCAnJykudG9Mb3dlckNhc2UoKTtcbn1cbiJdfQ==
|
|
250
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2RrRHJpZnREZXRlY3Rpb25Xb3JrZmxvdy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9DZGtEcmlmdERldGVjdGlvbldvcmtmbG93LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsOENBQTJEO0FBQzNELHVFQUFrRTtBQUNsRSxpRkFBMkU7QUFFM0UsTUFBTSxrQ0FBa0MsR0FBRyxJQUFJLENBQUM7QUFDaEQsTUFBTSw0QkFBNEIsR0FBRyxJQUFJLENBQUM7QUFDMUMsTUFBTSw2QkFBNkIsR0FBRyxJQUFJLENBQUM7QUFDM0MsTUFBTSxrQ0FBa0MsR0FBRyxJQUFJLENBQUM7QUFDaEQsTUFBTSxvQ0FBb0MsR0FBRyxJQUFJLENBQUM7QUFDbEQsTUFBTSxnQ0FBZ0MsR0FBRyxJQUFJLENBQUM7QUFxQjlDLE1BQWEseUJBQXlCO0lBR3BDLFlBQVksS0FBcUM7UUFDL0MsTUFBTSxJQUFJLEdBQUcsS0FBSyxDQUFDLFlBQVksSUFBSSxpQkFBaUIsQ0FBQztRQUNyRCxNQUFNLFFBQVEsR0FBRyxXQUFXLENBQUMsSUFBSSxDQUFDLEdBQUcsTUFBTSxDQUFDO1FBQzVDLE1BQU0sV0FBVyxHQUFHLEtBQUssQ0FBQyxXQUFXLElBQUksTUFBTSxDQUFDO1FBQ2hELE1BQU0sWUFBWSxHQUFHLEtBQUssQ0FBQyxZQUFZLElBQUksSUFBSSxDQUFDO1FBQ2hELE1BQU0sT0FBTyxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUM7UUFDOUIsTUFBTSxnQkFBZ0IsR0FBRSxLQUFLLENBQUMsZ0JBQWdCLElBQUksMkNBQTJDLENBQUM7UUFFOUYsa0VBQWtFO1FBQ2xFLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUM3QyxJQUFJLG9EQUF1QixDQUFDO2dCQUMxQixPQUFPLEVBQUUsS0FBSyxDQUFDLE9BQU87Z0JBQ3RCLFVBQVUsRUFBRSxnQkFBZ0I7YUFDN0IsQ0FBQyxDQUFDO1lBQ0gseUJBQXlCLENBQUMsYUFBYSxH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S0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztBQUMxQixDQUFDO0FBRUQsU0FBUyxhQUFhO0lBQ3BCLE9BQU87UUFDTCxhQUFhO1FBQ2IsUUFBUTtRQUNSLDJEQUEyRDtRQUMzRCxpQ0FBaUM7UUFDakMsRUFBRTtRQUNGLGdCQUFnQjtRQUNoQixpQkFBaUI7UUFDakIsZ0JBQWdCO1FBQ2hCLEVBQUU7UUFDRixtQkFBbUI7UUFDbkIsMkVBQTJFO1FBQzNFLDZCQUE2QjtRQUM3QixrRkFBa0Y7UUFDbEYsc0RBQXNEO1FBQ3RELGNBQWM7WUFDWixtQkFBbUI7WUFDbkIsaUVBQWlFO1lBQ2pFLDZGQUE2RjtZQUM3Rix5RUFBeUU7WUFDekUsZ09BQWdPO1lBQ2xPLElBQUk7WUFDSixrQ0FBa0M7UUFDbEMscUNBQXFDO1FBQ3JDLGlFQUFpRTtRQUNqRSxxSEFBcUg7UUFDckgsMEZBQTBGO1FBQzFGLE1BQU07UUFDTixNQUFNO1FBQ04sRUFBRTtRQUNGLG9EQUFvRDtRQUNwRCxzRUFBc0U7UUFDdEUsdUVBQXVFO1FBQ3ZFLDhEQUE4RDtRQUM5RCxFQUFFO1FBQ0YscUNBQXFDO1FBQ3JDLG1DQUFtQztRQUNuQyxrR0FBa0c7UUFDbEcsSUFBSTtLQUNMLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0FBQ2YsQ0FBQztBQUVELFNBQVMsV0FBVyxDQUFDLENBQVM7SUFDNUIsT0FBTyxDQUFDLENBQUMsT0FBTyxDQUFDLGdCQUFnQixFQUFFLEdBQUcsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxVQUFVLEVBQUUsRUFBRSxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUM7QUFDaEYsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEdpdEh1YiwgR2l0aHViV29ya2Zsb3cgfSBmcm9tICdwcm9qZW4vbGliL2dpdGh1Yic7XG5pbXBvcnQgeyBKb2JQZXJtaXNzaW9uIH0gZnJvbSAncHJvamVuL2xpYi9naXRodWIvd29ya2Zsb3dzLW1vZGVsJztcbmltcG9ydCB7IENka0RyaWZ0RGV0ZWN0aW9uU2NyaXB0IH0gZnJvbSAnLi9iaW4vY2RrLWRyaWZ0LWRldGVjdGlvbi1zY3JpcHQnO1xuXG5jb25zdCBnaXRodWJBY3Rpb25zQXdzQ3JlZGVudGlhbHNWZXJzaW9uID0gJ3Y1JztcbmNvbnN0IGdpdGh1YkFjdGlvbnNDaGVja291dFZlcnNpb24gPSAndjUnO1xuY29uc3QgZ2l0aHViQWN0aW9uc1NldHVwTm9kZVZlcnNpb24gPSAndjUnO1xuY29uc3QgZ2l0aHViQWN0aW9uc1VwbG9hZEFydGlmYWN0VmVyc2lvbiA9ICd2NCc7XG5jb25zdCBnaXRodWJBY3Rpb25zRG93bmxvYWRBcnRpZmFjdFZlcnNpb24gPSAndjUnO1xuY29uc3QgZ2l0aHViQWN0aW9uc0dpdGh1YlNjcmlwdFZlcnNpb24gPSAndjgnO1xuXG5leHBvcnQgaW50ZXJmYWNlIFN0YWNrIHtcbiAgcmVhZG9ubHkgc3RhY2tOYW1lOiBzdHJpbmc7XG4gIHJlYWRvbmx5IGRyaWZ0RGV0ZWN0aW9uUm9sZVRvQXNzdW1lUmVnaW9uOiBzdHJpbmc7XG4gIHJlYWRvbmx5IGRyaWZ0RGV0ZWN0aW9uUm9sZVRvQXNzdW1lQXJuOiBzdHJpbmc7XG4gIHJlYWRvbmx5IGZhaWxPbkRyaWZ0PzogYm9vbGVhbjsgLy8gaWYgdHJ1ZSwgZmFpbCBqb2Igd2hlbiBkcmlmdCBkZXRlY3RlZCAoZGVmYXVsdCB0cnVlKVxufVxuXG5leHBvcnQgaW50ZXJmYWNlIENka0RyaWZ0RGV0ZWN0aW9uV29ya2Zsb3dQcm9wcyB7XG4gIHJlYWRvbmx5IHNjcmlwdE91dHB1dFBhdGg/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IHByb2plY3Q6IGFueTsgLy8gYXZvaWQgZXhwb3J0aW5nIHByb2plbiB0eXBlcyBpbiBwdWJsaWMgQVBJXG4gIHJlYWRvbmx5IHdvcmtmbG93TmFtZT86IHN0cmluZzsgLy8gd29ya2Zsb3cgd29ya2Zsb3dOYW1lIChhbHNvIHVzZWQgdG8gZGVyaXZlIGZpbGUgd29ya2Zsb3dOYW1lKVxuICByZWFkb25seSBzY2hlZHVsZT86IHN0cmluZzsgLy8gY3JvbiBleHByZXNzaW9uLCBlLmcuICcwIDAgKiAqIConXG4gIHJlYWRvbmx5IGNyZWF0ZUlzc3Vlcz86IGJvb2xlYW47IC8vIGNyZWF0ZS91cGRhdGUgaXNzdWUgd2hlbiBkcmlmdCBkZXRlY3RlZCBvbiBzY2hlZHVsZSAoZGVmYXVsdCB0cnVlKVxuICByZWFkb25seSBvaWRjUm9sZUFybjogc3RyaW5nOyAvLyBkZWZhdWx0IE9JREMgcm9sZSBBUk4gdG8gYXNzdW1lIGZvciBhbGwgc3RhY2tzXG4gIHJlYWRvbmx5IG9pZGNSZWdpb246IHN0cmluZzsgLy8gZGVmYXVsdCBPSURDIHJlZ2lvbiB0byBhc3N1bWUgZm9yIGFsbCBzdGFja3NcbiAgcmVhZG9ubHkgc3RhY2tzOiBTdGFja1tdO1xuICByZWFkb25seSBub2RlVmVyc2lvbj86IHN0cmluZzsgLy8gZS5nLiwgJzI0LngnXG59XG5cbmV4cG9ydCBjbGFzcyBDZGtEcmlmdERldGVjdGlvbldvcmtmbG93IHtcbiAgcHJpdmF0ZSBzdGF0aWMgc2NyaXB0Q3JlYXRlZCA9IGZhbHNlO1xuXG4gIGNvbnN0cnVjdG9yKHByb3BzOiBDZGtEcmlmdERldGVjdGlvbldvcmtmbG93UHJvcHMpIHtcbiAgICBjb25zdCBuYW1lID0gcHJvcHMud29ya2Zsb3dOYW1lID8/ICdkcmlmdC1kZXRlY3Rpb24nO1xuICAgIGNvbnN0IGZpbGVOYW1lID0gdG9LZWJhYkNhc2UobmFtZSkgKyAnLnltbCc7XG4gICAgY29uc3Qgbm9kZVZlcnNpb24gPSBwcm9wcy5ub2RlVmVyc2lvbiA/PyAnMjQueCc7XG4gICAgY29uc3QgY3JlYXRlSXNzdWVzID0gcHJvcHMuY3JlYXRlSXNzdWVzID8/IHRydWU7XG4gICAgY29uc3QgcHJvamVjdCA9IHByb3BzLnByb2plY3Q7XG4gICAgY29uc3Qgc2NyaXB0T3V0cHV0UGF0aD0gcHJvcHMuc2NyaXB0T3V0cHV0UGF0aCA/PyAnLmdpdGh1Yi93b3JrZmxvd3Mvc2NyaXB0cy9kZXRlY3QtZHJpZnQudHMnO1xuXG4gICAgLy8gT25seSBjcmVhdGUgdGhlIGRyaWZ0IGRldGVjdGlvbiBzY3JpcHQgb25jZSB0byBhdm9pZCBjb2xsaXNpb25zXG4gICAgaWYgKCFDZGtEcmlmdERldGVjdGlvbldvcmtmbG93LnNjcmlwdENyZWF0ZWQpIHtcbiAgICAgIG5ldyBDZGtEcmlmdERldGVjdGlvblNjcmlwdCh7XG4gICAgICAgIHByb2plY3Q6IHByb3BzLnByb2plY3QsXG4gICAgICAgIG91dHB1dFBhdGg6IHNjcmlwdE91dHB1dFBhdGgsXG4gICAgICB9KTtcbiAgICAgIENka0RyaWZ0RGV0ZWN0aW9uV29ya2Zsb3cuc2NyaXB0Q3JlYXRlZCA9IHRydWU7XG4gICAgfVxuXG4gICAgY29uc3QgZ2ggPSAocHJvamVjdCBhcyBhbnkpLmdpdGh1YiA/PyBuZXcgR2l0SHViKHByb2plY3QpO1xuICAgIGNvbnN0IHdvcmtmbG93ID0gbmV3IEdpdGh1YldvcmtmbG93KGdoLCBuYW1lLCB7IGZpbGVOYW1lIH0pO1xuXG4gICAgLy8gdHJpZ2dlcnM6IHNjaGVkdWxlICsgbWFudWFsIGRpc3BhdGNoIHdpdGggc3RhZ2UgY2hvaWNlXG4gICAgY29uc3Qgc3RhZ2VDaG9pY2VzID0gcHJvcHMuc3RhY2tzLm1hcCgocykgPT4gcy5zdGFja05hbWUgPz8gc3RhZ2VGcm9tU3RhY2socy5zdGFja05hbWUpKTtcbiAgICB3b3JrZmxvdy5vbih7XG4gICAgICBzY2hlZHVsZTogcHJvcHMuc2NoZWR1bGUgPyBbeyBjcm9uOiBwcm9wcy5zY2hlZHVsZSB9XSA6IHVuZGVmaW5lZCxcbiAgICAgIHdvcmtmbG93RGlzcGF0Y2g6IHtcbiAgICAgICAgaW5wdXRzOiB7XG4gICAgICAgICAgc3RhZ2U6IHtcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uOiAnU3RhZ2UgdG8gY2hlY2sgZm9yIGRyaWZ0IChsZWF2ZSBlbXB0eSBmb3IgYWxsKScsXG4gICAgICAgICAgICByZXF1aXJlZDogZmFsc2UsXG4gICAgICAgICAgICB0eXBlOiAnY2hvaWNlJyxcbiAgICAgICAgICAgIG9wdGlvbnM6IHN0YWdlQ2hvaWNlcyxcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgfSxcbiAgICB9KTtcblxuICAgIC8vIE9uZSBqb2IgcGVyIHN0YWdlXG4gICAgY29uc3Qgam9iczogUmVjb3JkPHN0cmluZywgYW55PiA9IHt9O1xuICAgIGZvciAoY29uc3Qgc3RhY2sgb2YgcHJvcHMuc3RhY2tzKSB7XG4gICAgICBjb25zdCBzaG9ydCA9IHN0YWNrLnN0YWNrTmFtZSA/PyBzdGFnZUZyb21TdGFjayhzdGFjay5zdGFja05hbWUpO1xuICAgICAgY29uc3Qgam9iSWQgPSBgZHJpZnQtJHtzaG9ydH1gO1xuICAgICAgY29uc3QgcmVzdWx0c0ZpbGUgPSBgZHJpZnQtcmVzdWx0cy0ke3Nob3J0fS5qc29uYDtcbiAgICAgIGNvbnN0IGlubmVyQ29uZCA9IFwiZ2l0aHViLmV2ZW50X25hbWUgPT0gJ3NjaGVkdWxlJyB8fCAhZ2l0aHViLmV2ZW50LmlucHV0cy5zdGFnZSB8fCBnaXRodWIuZXZlbnQuaW5wdXRzLnN0YWdlID09ICdcIiArIHNob3J0ICsgXCInXCI7XG4gICAgICBjb25zdCBjb25kRXhwciA9IFwiJHt7IFwiICsgaW5uZXJDb25kICsgXCIgfX1cIjtcbiAgICAgIGNvbnN0IG5vdENvbmRFeHByID0gXCIke3sgIShcIiArIGlubmVyQ29uZCArIFwiKSB9fVwiO1xuXG4gICAgICBqb2JzW2pvYklkXSA9IHtcbiAgICAgICAgbmFtZTogYERyaWZ0IERldGVjdGlvbiAtICR7c2hvcnR9YCxcbiAgICAgICAgcnVuc09uOiBbJ3VidW50dS1sYXRlc3QnXSxcbiAgICAgICAgcGVybWlzc2lvbnM6IHtcbiAgICAgICAgICBjb250ZW50czogSm9iUGVybWlzc2lvbi5SRUFELFxuICAgICAgICAgIGlkVG9rZW46IEpvYlBlcm1pc3Npb24uV1JJVEUsXG4gICAgICAgICAgaXNzdWVzOiBKb2JQZXJtaXNzaW9uLldSSVRFLFxuICAgICAgICB9LFxuICAgICAgICBlbnY6IHtcbiAgICAgICAgICBBV1NfREVGQVVMVF9SRUdJT046IHN0YWNrLmRyaWZ0RGV0ZWN0aW9uUm9sZVRvQXNzdW1lUmVnaW9uLFxuICAgICAgICAgIEFXU19SRUdJT046IHN0YWNrLmRyaWZ0RGV0ZWN0aW9uUm9sZVRvQXNzdW1lUmVnaW9uLFxuICAgICAgICAgIERSSUZUX0RFVEVDVElPTl9PVVRQVVQ6IHJlc3VsdHNGaWxlLFxuICAgICAgICAgIFNUQUdFX05BTUU6IHNob3J0LFxuICAgICAgICAgIFNUQUNLX05BTUU6IHN0YWNrLnN0YWNrTmFtZSxcbiAgICAgICAgfSxcbiAgICAgICAgLy8gTm8gam9iLWxldmVsIGNvbmRpdGlvbjsgd2UgZ2F0ZSBzdGVwcyBzbyB0aGUgam9iIGFsd2F5cyBjb21wbGV0ZXMgYW5kIHN1bW1hcnkgY2FuIHJ1blxuICAgICAgICBzdGVwczogW1xuICAgICAgICAgIHsgbmFtZTogJ1NraXAgKHN0YWdlIG5vdCBzZWxlY3RlZCknLCBpZjogbm90Q29uZEV4cHIsIHJ1bjogJ2VjaG8gXCJTdGFnZSBub3Qgc2VsZWN0ZWQ7IHNraXBwaW5nIGRyaWZ0IGRldGVjdGlvbiBmb3IgdGhpcyBqb2IuXCInIH0sXG4gICAgICAgICAgeyBuYW1lOiAnQ2hlY2tvdXQnLCBpZjogY29uZEV4cHIsIHVzZXM6IGBhY3Rpb25zL2NoZWNrb3V0QCR7Z2l0aHViQWN0aW9uc0NoZWNrb3V0VmVyc2lvbn1gIH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogJ1NldHVwIE5vZGUuanMnLFxuICAgICAgICAgICAgaWY6IGNvbmRFeHByLFxuICAgICAgICAgICAgdXNlczogYGFjdGlvbnMvc2V0dXAtbm9kZUAke2dpdGh1YkFjdGlvbnNTZXR1cE5vZGVWZXJzaW9ufWAsXG4gICAgICAgICAgICB3aXRoOiB7ICdub2RlLXZlcnNpb24nOiBub2RlVmVyc2lvbiB9LFxuICAgICAgICAgIH0sXG4gICAgICAgICAgeyBuYW1lOiAnSW5zdGFsbCBkZXBlbmRlbmNpZXMnLCBpZjogY29uZEV4cHIsIHJ1bjogJ3lhcm4gaW5zdGFsbCAtLWZyb3plbi1sb2NrZmlsZSB8fCBucG0gY2knLCBlbnY6IHsgR0lUSFVCX1RPS0VOOiAnJHt7IHNlY3JldHMuR0lUSFVCX1RPS0VOIH19JyB9IH0sXG4gICAgICAgICAge1xuICAgICAgICAgICAgbmFtZTogJ0FXUyBDcmVkZW50aWFscycsXG4gICAgICAgICAgICBpZjogY29uZEV4cHIsXG4gICAgICAgICAgICBpZDogJ2NyZWRzJyxcbiAgICAgICAgICAgIHVzZXM6IGBhd3MtYWN0aW9ucy9jb25maWd1cmUtYXdzLWNyZWRlbnRpYWxzQCR7Z2l0aHViQWN0aW9uc0F3c0NyZWRlbnRpYWxzVmVyc2lvbn1gLFxuICAgICAgICAgICAgd2l0aDoge1xuICAgICAgICAgICAgICAncm9sZS10by1hc3N1bWUnOiBwcm9wcy5vaWRjUm9sZUFybixcbiAgICAgICAgICAgICAgJ3JvbGUtc2Vzc2lvbi1uYW1lJzogJ0dpdEh1YkFjdGlvbicsXG4gICAgICAgICAgICAgICdhd3MtcmVnaW9uJzogcHJvcHMub2lkY1JlZ2lvbixcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAnQXNzdW1lIERyaWZ0IERldGVjdGlvbiBSb2xlJyxcbiAgICAgICAgICAgIGlmOiBjb25kRXhwcixcbiAgICAgICAgICAgIHVzZXM6IGBhd3MtYWN0aW9ucy9jb25maWd1cmUtYXdzLWNyZWRlbnRpYWxzQCR7Z2l0aHViQWN0aW9uc0F3c0NyZWRlbnRpYWxzVmVyc2lvbn1gLFxuICAgICAgICAgICAgd2l0aDoge1xuICAgICAgICAgICAgICAncm9sZS10by1hc3N1bWUnOiBzdGFjay5kcmlmdERldGVjdGlvblJvbGVUb0Fzc3VtZUFybixcbiAgICAgICAgICAgICAgJ3JvbGUtY2hhaW5pbmcnOiB0cnVlLFxuICAgICAgICAgICAgICAncm9sZS1za2lwLXNlc3Npb24tdGFnZ2luZyc6IHRydWUsXG4gICAgICAgICAgICAgICdhd3MtcmVnaW9uJzogc3RhY2suZHJpZnREZXRlY3Rpb25Sb2xlVG9Bc3N1bWVSZWdpb24sXG4gICAgICAgICAgICAgICdhd3MtYWNjZXNzLWtleS1pZCc6ICcke3sgc3RlcHMuY3JlZHMub3V0cHV0cy5hd3MtYWNjZXNzLWtleS1pZCB9fScsXG4gICAgICAgICAgICAgICdhd3Mtc2VjcmV0LWFjY2Vzcy1rZXknOiAnJHt7IHN0ZXBzLmNyZWRzLm91dHB1dHMuYXdzLXNlY3JldC1hY2Nlc3Mta2V5IH19JyxcbiAgICAgICAgICAgICAgJ2F3cy1zZXNzaW9uLXRva2VuJzogJyR7eyBzdGVwcy5jcmVkcy5vdXRwdXRzLmF3cy1zZXNzaW9uLXRva2VuIH19JyxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAnRGV0ZWN0IGRyaWZ0JyxcbiAgICAgICAgICAgIGlmOiBjb25kRXhwcixcbiAgICAgICAgICAgIGlkOiAnZHJpZnQnLFxuICAgICAgICAgICAgY29udGludWVPbkVycm9yOiB0cnVlLCAvLyBhbGxvdyBhcnRpZmFjdCB1cGxvYWQgYW5kIGlzc3VlIGNyZWF0aW9uIGV2ZW4gd2hlbiBkcmlmdCBpcyBkZXRlY3RlZFxuICAgICAgICAgICAgcnVuOiBbXG4gICAgICAgICAgICAgICdzZXQgLWUnLFxuICAgICAgICAgICAgICAvLyBVc2UgdGhlIGJ1bmRsZWQgc2NyaXB0IGZyb20gdGhpcyBwYWNrYWdlXG4gICAgICAgICAgICAgICdub2RlIC4vbm9kZV9tb2R1bGVzL0BqanJhd2xpbnMvY2RrLWRpZmYtcHItZ2l0aHViLWFjdGlvbi9saWIvYmluL2RldGVjdC1kcmlmdC5qcycsXG4gICAgICAgICAgICAgICdpZiBbIC1mIFwiJERSSUZUX0RFVEVDVElPTl9PVVRQVVRcIiBdOyB0aGVuIGVjaG8gXCJSZXN1bHRzIGZpbGUgY3JlYXRlZDogJERSSUZUX0RFVEVDVElPTl9PVVRQVVRcIjsgZmknLFxuICAgICAgICAgICAgXS5qb2luKCdcXG4nKSxcbiAgICAgICAgICAgIGVudjoge1xuICAgICAgICAgICAgICBTVEFDS19OQU1FOiBzdGFjay5zdGFja05hbWUsXG4gICAgICAgICAgICAgIEFXU19SRUdJT046IHN0YWNrLmRyaWZ0RGV0ZWN0aW9uUm9sZVRvQXNzdW1lUmVnaW9uLFxuICAgICAgICAgICAgICBEUklGVF9ERVRFQ1RJT05fT1VUUFVUOiByZXN1bHRzRmlsZSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSxcbiAgICAgICAgICB7XG4gICAgICAgICAgICBuYW1lOiAnVXBsb2FkIHJlc3VsdHMnLFxuICAgICAgICAgICAgaWY6IGNvbmRFeHByLFxuICAgICAgICAgICAgdXNlczogYGFjdGlvbnMvdXBsb2FkLWFydGlmYWN0QCR7Z2l0aHViQWN0aW9uc1VwbG9hZEFydGlmYWN0VmVyc2lvbn1gLFxuICAgICAgICAgICAgd2l0aDogeyBuYW1lOiBgZHJpZnQtcmVzdWx0cy0ke3Nob3J0fWAsIHBhdGg6IHJlc3VsdHNGaWxlLCBpZk5vRmlsZXNGb3VuZDogJ2lnbm9yZScgfSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIC4uLihcbiAgICAgICAgICAgIGNyZWF0ZUlzc3Vlc1xuICAgICAgICAgICAgICA/IFtcbiAgICAgICAgICAgICAgICB7XG4gICAgICAgICAgICAgICAgICBuYW1lOiAnQ3JlYXRlIElzc3VlIG9uIERyaWZ0JyxcbiAgICAgICAgICAgICAgICAgIGlmOiBcImFsd2F5cygpICYmIHN0ZXBzLmRyaWZ0Lm91dGNvbWUgPT0gJ2ZhaWx1cmUnXCIsXG4gICAgICAgICAgICAgICAgICB1c2VzOiBgYWN0aW9ucy9naXRodWItc2NyaXB0QCR7Z2l0aHViQWN0aW9uc0dpdGh1YlNjcmlwdFZlcnNpb259YCxcbiAgICAgICAgICAgICAgICAgIHdpdGg6IHsgc2NyaXB0OiBpc3N1ZVNjcmlwdChzaG9ydCwgc3RhY2suZHJpZnREZXRlY3Rpb25Sb2xlVG9Bc3N1bWVSZWdpb24sIHJlc3VsdHNGaWxlKSB9LFxuICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIF1cbiAgICAgICAgICAgICAgOiBbXVxuICAgICAgICAgICksXG4gICAgICAgIF0sXG4gICAgICB9O1xuICAgIH1cblxuICAgIC8vIHN1bW1hcnkgYWdncmVnYXRvciBqb2JcbiAgICBqb2JzWydkcmlmdC1zdW1tYXJ5J10gPSB7XG4gICAgICBuYW1lOiAnRHJpZnQgRGV0ZWN0aW9uIFN1bW1hcnknLFxuICAgICAgbmVlZHM6IE9iamVjdC5rZXlzKGpvYnMpLmZpbHRlcigoaikgPT4gai5zdGFydHNXaXRoKCdkcmlmdC0nKSAmJiBqICE9PSAnZHJpZnQtc3VtbWFyeScpLFxuICAgICAgcnVuc09uOiBbJ3VidW50dS1sYXRlc3QnXSxcbiAgICAgIHBlcm1pc3Npb25zOiB7IGNvbnRlbnRzOiBKb2JQZXJtaXNzaW9uLlJFQUQgfSxcbiAgICAgIHN0ZXBzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBuYW1lOiAnRG93bmxvYWQgYWxsIGFydGlmYWN0cycsXG4gICAgICAgICAgdXNlczogYGFjdGlvbnMvZG93bmxvYWQtYXJ0aWZhY3RAJHtnaXRodWJBY3Rpb25zRG93bmxvYWRBcnRpZmFjdFZlcnNpb259YCxcbiAgICAgICAgICB3aXRoOiB7IHBhdGg6ICdkcmlmdC1yZXN1bHRzJyB9LFxuICAgICAgICB9LFxuICAgICAgICB7IG5hbWU6ICdHZW5lcmF0ZSBzdW1tYXJ5Jywgc2hlbGw6ICdiYXNoJywgcnVuOiBzdW1tYXJ5U2NyaXB0KCkgfSxcbiAgICAgIF0sXG4gICAgfTtcblxuICAgIHdvcmtmbG93LmFkZEpvYnMoam9icyk7XG4gIH1cbn1cblxuZnVuY3Rpb24gc3RhZ2VGcm9tU3RhY2soc3RhY2tOYW1lOiBzdHJpbmcpOiBzdHJpbmcge1xuICBjb25zdCBwYXJ0cyA9IHN0YWNrTmFtZS5zcGxpdCgnLScpO1xuICByZXR1cm4gcGFydHNbcGFydHMubGVuZ3RoIC0gMV0gfHwgc3RhY2tOYW1lO1xufVxuXG5mdW5jdGlvbiBpc3N1ZVNjcmlwdChzdGFnZTogc3RyaW5nLCByZWdpb246IHN0cmluZywgcmVzdWx0c0ZpbGU6IHN0cmluZyk6IHN0cmluZyB7XG4gIC8vIENvbnN0cnVjdCBhIHBsYWluIEpTIHNjcmlwdCBzdHJpbmcgKG5vIHRlbXBsYXRlIHN0cmluZyBuZXN0aW5nIG1pc2hhcHMpXG4gIGNvbnN0IGxpbmVzID0gW1xuICAgIFwiY29uc3QgZnMgPSByZXF1aXJlKCdmcycpO1wiLFxuICAgIGBjb25zdCByZXN1bHRzRmlsZSA9ICcke3Jlc3VsdHNGaWxlfSc7YCxcbiAgICBcImlmICghZnMuZXhpc3RzU3luYyhyZXN1bHRzRmlsZSkpIHsgY29uc29sZS5sb2coJ05vIHJlc3VsdHMgZmlsZSBmb3VuZCcpOyByZXR1cm47IH1cIixcbiAgICBcImNvbnN0IHJlc3VsdHMgPSBKU09OLnBhcnNlKGZzLnJlYWRGaWxlU3luYyhyZXN1bHRzRmlsZSwgJ3V0ZjgnKSk7XCIsXG4gICAgXCJjb25zdCBkcmlmdGVkU3RhY2tzID0gcmVzdWx0cy5maWx0ZXIociA9PiByLmRyaWZ0U3RhdHVzID09PSAnRFJJRlRFRCcpO1wiLFxuICAgIFwiaWYgKGRyaWZ0ZWRTdGFja3MubGVuZ3RoID09PSAwKSB7IGNvbnNvbGUubG9nKCdObyBkcmlmdCBkZXRlY3RlZCcpOyByZXR1cm47IH1cIixcbiAgICBgY29uc3QgdGl0bGUgPSAnRHJpZnQgRGV0ZWN0ZWQgaW4gJHtzdGFnZX0nO2AsXG4gICAgYGxldCBib2R5ID0gJyMjIERyaWZ0IERldGVjdGlvbiBSZXBvcnRcXFxcblxcXFxuJyArICcqKlN0YWdlOioqICR7c3RhZ2V9XFxcXG4nICsgJyoqUmVnaW9uOioqICR7cmVnaW9ufVxcXFxuJyArICcqKlRpbWU6KiogJyArIG5ldyBEYXRlKCkudG9JU09TdHJpbmcoKSArICdcXFxcblxcXFxuJztgLFxuICAgIFwiYm9keSArPSAnIyMjIFN1bW1hcnlcXFxcbic7XCIsXG4gICAgXCJib2R5ICs9ICctIFRvdGFsIHN0YWNrcyBjaGVja2VkOiAnICsgcmVzdWx0cy5sZW5ndGggKyAnXFxcXG4nO1wiLFxuICAgIFwiYm9keSArPSAnLSBEcmlmdGVkIHN0YWNrczogJyArIGRyaWZ0ZWRTdGFja3MubGVuZ3RoICsgJ1xcXFxuXFxcXG4nO1wiLFxuICAgIFwiYm9keSArPSAnIyMjIERyaWZ0ZWQgU3RhY2tzXFxcXG4nO1wiLFxuICAgICdmb3IgKGNvbnN0IHMgb2YgZHJpZnRlZFN0YWNrcykgeycsXG4gICAgJyAgY29uc3QgcmVzb3VyY2VzID0gcy5kcmlmdGVkUmVzb3VyY2VzIHx8IFtdOycsXG4gICAgXCIgIGJvZHkgKz0gJyMjIyMgJyArIHMuc3RhY2tOYW1lICsgJ1xcXFxuJztcIixcbiAgICBcIiAgYm9keSArPSAnLSBEcmlmdGVkIHJlc291cmNlczogJyArIHJlc291cmNlcy5sZW5ndGggKyAnXFxcXG4nO1wiLFxuICAgIFwiICBmb3IgKGNvbnN0IHIgb2YgcmVzb3VyY2VzKSB7IGJvZHkgKz0gJyAgLSAnICsgci5sb2dpY2FsUmVzb3VyY2VJZCArICcgKCcgKyByLnJlc291cmNlVHlwZSArICcpXFxcXG4nOyB9XCIsXG4gICAgXCIgIGJvZHkgKz0gJ1xcXFxuJztcIixcbiAgICAnfScsXG4gICAgXCJib2R5ICs9ICcjIyMgQWN0aW9uIFJlcXVpcmVkXFxcXG4nICsgJ1BsZWFzZSByZXZpZXcgdGhlIGRyaWZ0ZWQgcmVzb3VyY2VzIGFuZCBlaXRoZXI6XFxcXG4xLiBVcGRhdGUgdGhlIGluZnJhc3RydWN0dXJlIGNvZGUgdG8gbWF0Y2ggdGhlIGFjdHVhbCBzdGF0ZVxcXFxuMi4gUmVzdG9yZSB0aGUgcmVzb3VyY2VzIHRvIG1hdGNoIHRoZSBleHBlY3RlZCBzdGF0ZVxcXFxuXFxcXG4nO1wiLFxuICAgICdib2R5ICs9IGBbVmlldyB3b3JrZmxvdyBydW5dKCR7Y29udGV4dC5zZXJ2ZXJVcmx9LyR7Y29udGV4dC5yZXBvLm93bmVyfS8ke2NvbnRleHQucmVwby5yZXBvfS9hY3Rpb25zL3J1bnMvJHtjb250ZXh0LnJ1bklkfSlgOycsXG4gICAgLy8gTGlzdCBvciB1cGRhdGUgYW4gaXNzdWUgd2l0aCBsYWJlbHNcbiAgICBgY29uc3QgaXNzdWVzID0gYXdhaXQgZ2l0aHViLnJlc3QuaXNzdWVzLmxpc3RGb3JSZXBvKHsgb3duZXI6IGNvbnRleHQucmVwby5vd25lciwgcmVwbzogY29udGV4dC5yZXBvLnJlcG8sIHN0YXRlOiAnb3BlbicsIGxhYmVsczogWydkcmlmdC1kZXRlY3Rpb24nLCAnJHtzdGFnZX0nXSB9KTtgLFxuICAgICdpZiAoaXNzdWVzLmRhdGEubGVuZ3RoID09PSAwKSB7JyxcbiAgICBgICBhd2FpdCBnaXRodWIucmVzdC5pc3N1ZXMuY3JlYXRlKHsgb3duZXI6IGNvbnRleHQucmVwby5vd25lciwgcmVwbzogY29udGV4dC5yZXBvLnJlcG8sIHRpdGxlLCBib2R5LCBsYWJlbHM6IFsnZHJpZnQtZGV0ZWN0aW9uJywgJyR7c3RhZ2V9J10gfSk7YCxcbiAgICAnfSBlbHNlIHsnLFxuICAgICcgIGNvbnN0IGlzc3VlID0gaXNzdWVzLmRhdGFbMF07JyxcbiAgICAnICBhd2FpdCBnaXRodWIucmVzdC5pc3N1ZXMuY3JlYXRlQ29tbWVudCh7IG93bmVyOiBjb250ZXh0LnJlcG8ub3duZXIsIHJlcG86IGNvbnRleHQucmVwby5yZXBvLCBpc3N1ZV9udW1iZXI6IGlzc3VlLm51bWJlciwgYm9keSB9KTsnLFxuICAgICd9JyxcbiAgXTtcbiAgcmV0dXJuIGxpbmVzLmpvaW4oJ1xcbicpO1xufVxuXG5mdW5jdGlvbiBzdW1tYXJ5U2NyaXB0KCk6IHN0cmluZyB7XG4gIHJldHVybiBbXG4gICAgJyMhL2Jpbi9iYXNoJyxcbiAgICAnc2V0IC1lJyxcbiAgICAnZWNobyBcIiMjIERyaWZ0IERldGVjdGlvbiBTdW1tYXJ5XCIgPj4gJEdJVEhVQl9TVEVQX1NVTU1BUlknLFxuICAgICdlY2hvIFwiXCIgPj4gJEdJVEhVQl9TVEVQX1NVTU1BUlknLFxuICAgICcnLFxuICAgICd0b3RhbF9zdGFja3M9MCcsXG4gICAgJ3RvdGFsX2RyaWZ0ZWQ9MCcsXG4gICAgJ3RvdGFsX2Vycm9ycz0wJyxcbiAgICAnJyxcbiAgICAnc2hvcHQgLXMgbnVsbGdsb2InLFxuICAgICdmb3IgZmlsZSBpbiBkcmlmdC1yZXN1bHRzLSouanNvbiBkcmlmdC1yZXN1bHRzLyovZHJpZnQtcmVzdWx0cy0qLmpzb247IGRvJyxcbiAgICAnICBpZiBbWyAtZiBcIiRmaWxlXCIgXV07IHRoZW4nLFxuICAgICcgICAgc3RhZ2U9JChiYXNlbmFtZSBcIiRmaWxlXCIgfCBzZWQgLUUgXFxcInMvXmRyaWZ0LXJlc3VsdHMtKFteLl0rKVxcXFwuanNvbiQvXFxcXDEvXFxcIiknLFxuICAgICcgICAgZWNobyBcIiMjIyBTdGFnZTogJHN0YWdlXCIgPj4gJEdJVEhVQl9TVEVQX1NVTU1BUlknLFxuICAgICcgICAganEgLXIgXFwnJyArXG4gICAgICAnLiBhcyAkcmVzdWx0cyB8XFxuJyArXG4gICAgICAnXCItIFRvdGFsIHN0YWNrczogXCIgKyAoJHJlc3VsdHMgfCBsZW5ndGggfCB0b3N0cmluZykgKyBcIlxcXFxuXCIgK1xcbicgK1xuICAgICAgJ1wiLSBEcmlmdGVkOiBcIiArIChbLltdIHwgc2VsZWN0KC5kcmlmdFN0YXR1cyA9PSBcIkRSSUZURURcIildIHwgbGVuZ3RoIHwgdG9zdHJpbmcpICsgXCJcXFxcblwiICtcXG4nICtcbiAgICAgICdcIi0gRXJyb3JzOiBcIiArIChbLltdIHwgc2VsZWN0KC5lcnJvcildIHwgbGVuZ3RoIHwgdG9zdHJpbmcpICsgXCJcXFxcblwiICtcXG4nICtcbiAgICAgICcoWy5bXSB8IHNlbGVjdCguZHJpZnRTdGF0dXMgPT0gXCJEUklGVEVEXCIpXSB8IGlmIGxlbmd0aCA+IDAgdGhlbiBcIlxcXFxuKipEcmlmdGVkIHN0YWNrczoqKlxcXFxuXCIgKyAobWFwKFwiICAtIFwiICsgLnN0YWNrTmFtZSArIFwiIChcIiArICgoLmRyaWZ0ZWRSZXNvdXJjZXMgLy8gW10pIHwgbGVuZ3RoIHwgdG9zdHJpbmcpICsgXCIgcmVzb3VyY2VzKVwiKSB8IGpvaW4oXCJcXFxcblwiKSkgZWxzZSBcIlwiIGVuZClcXG4nICtcbiAgICAnXFwnJyArXG4gICAgJyBcIiRmaWxlXCIgPj4gJEdJVEhVQl9TVEVQX1NVTU1BUlknLFxuICAgICcgICAgZWNobyBcIlwiID4+ICRHSVRIVUJfU1RFUF9TVU1NQVJZJyxcbiAgICAnICAgIHRvdGFsX3N0YWNrcz0kKCh0b3RhbF9zdGFja3MgKyAkKGpxIFxcXCJsZW5ndGhcXFwiIFxcXCIkZmlsZVxcXCIpKSknLFxuICAgICcgICAgdG90YWxfZHJpZnRlZD0kKCh0b3RhbF9kcmlmdGVkICsgJChqcSBcXFwiWy5bXSB8IHNlbGVjdCguZHJpZnRTdGF0dXMgPT0gXFxcXFxcXCJEUklGVEVEXFxcXFxcXCIpXSB8IGxlbmd0aFxcXCIgXFxcIiRmaWxlXFxcIikpKScsXG4gICAgJyAgICB0b3RhbF9lcnJvcnM9JCgodG90YWxfZXJyb3JzICsgJChqcSBcXFwiWy5bXSB8IHNlbGVjdCguZXJyb3IpXSB8IGxlbmd0aFxcXCIgXFxcIiRmaWxlXFxcIikpKScsXG4gICAgJyAgZmknLFxuICAgICdkb25lJyxcbiAgICAnJyxcbiAgICAnZWNobyBcIiMjIyBPdmVyYWxsIFN1bW1hcnlcIiA+PiAkR0lUSFVCX1NURVBfU1VNTUFSWScsXG4gICAgJ2VjaG8gXCItIFRvdGFsIHN0YWNrcyBjaGVja2VkOiAkdG90YWxfc3RhY2tzXCIgPj4gJEdJVEhVQl9TVEVQX1NVTU1BUlknLFxuICAgICdlY2hvIFwiLSBUb3RhbCBkcmlmdGVkIHN0YWNrczogJHRvdGFsX2RyaWZ0ZWRcIiA+PiAkR0lUSFVCX1NURVBfU1VNTUFSWScsXG4gICAgJ2VjaG8gXCItIFRvdGFsIGVycm9yczogJHRvdGFsX2Vycm9yc1wiID4+ICRHSVRIVUJfU1RFUF9TVU1NQVJZJyxcbiAgICAnJyxcbiAgICAnaWYgW1sgJHRvdGFsX2RyaWZ0ZWQgLWd0IDAgXV07IHRoZW4nLFxuICAgICcgIGVjaG8gXCJcIiA+PiAkR0lUSFVCX1NURVBfU1VNTUFSWScsXG4gICAgJyAgZWNobyBcIuKaoO+4jyAqKkFjdGlvbiByZXF1aXJlZDoqKiBEcmlmdCBkZXRlY3RlZCBpbiAkdG90YWxfZHJpZnRlZCBzdGFja3NcIiA+PiAkR0lUSFVCX1NURVBfU1VNTUFSWScsXG4gICAgJ2ZpJyxcbiAgXS5qb2luKCdcXG4nKTtcbn1cblxuZnVuY3Rpb24gdG9LZWJhYkNhc2Uoczogc3RyaW5nKTogc3RyaW5nIHtcbiAgcmV0dXJuIHMucmVwbGFjZSgvW15hLXpBLVowLTldKy9nLCAnLScpLnJlcGxhY2UoL14tK3wtKyQvZywgJycpLnRvTG93ZXJDYXNlKCk7XG59XG4iXX0=
|
|
@@ -52,6 +52,7 @@ class CdkDriftIamTemplate {
|
|
|
52
52
|
' - cloudformation:DescribeStackResourceDrifts',
|
|
53
53
|
' - cloudformation:DescribeStacks',
|
|
54
54
|
' - cloudformation:ListStackResources',
|
|
55
|
+
' - cloudformation:DetectStackResourceDrift',
|
|
55
56
|
" Resource: '*'",
|
|
56
57
|
'',
|
|
57
58
|
'Outputs:',
|
|
@@ -73,4 +74,4 @@ class CdkDriftIamTemplate {
|
|
|
73
74
|
exports.CdkDriftIamTemplate = CdkDriftIamTemplate;
|
|
74
75
|
_a = JSII_RTTI_SYMBOL_1;
|
|
75
76
|
CdkDriftIamTemplate[_a] = { fqn: "@jjrawlins/cdk-diff-pr-github-action.CdkDriftIamTemplate", version: "0.0.0" };
|
|
76
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
77
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2RrRHJpZnRJYW1UZW1wbGF0ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9DZGtEcmlmdElhbVRlbXBsYXRlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsbUNBQWtDO0FBVWxDLE1BQWEsbUJBQW1CO0lBQzlCLFlBQVksS0FBK0I7UUFDekMsTUFBTSxVQUFVLEdBQUcsS0FBSyxDQUFDLFVBQVUsSUFBSSxzQ0FBc0MsQ0FBQztRQUU5RSxLQUFLLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyw4QkFBOEIsRUFBRTtZQUNwRCxXQUFXLEVBQ1QsdUlBQXVJO1lBQ3pJLFdBQVcsRUFBRSxJQUFJO1lBQ2pCLElBQUksRUFDRiw2Q0FBNkMsVUFBVSwrRUFBK0U7U0FDekksQ0FBQyxDQUFDO1FBRUgsSUFBSSxpQkFBUSxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsVUFBVSxFQUFFO1lBQ3RDLEtBQUssRUFBRTtnQkFDTCx3Q0FBd0M7Z0JBQ3hDLDBEQUEwRDtnQkFDMUQsRUFBRTtnQkFDRixhQUFhO2dCQUNiLHNCQUFzQjtnQkFDdEIsa0JBQWtCO2dCQUNsQix5RkFBeUY7Z0JBQ3pGLGlCQUFpQixLQUFLLENBQUMsV0FBVyxHQUFHO2dCQUNyQyxFQUFFO2dCQUNGLFlBQVk7Z0JBQ1osOEZBQThGO2dCQUM5RixpQkFBaUI7Z0JBQ2pCLDBCQUEwQjtnQkFDMUIsaUJBQWlCO2dCQUNqQixtQkFBbUIsR0FBRyxLQUFLLENBQUMsUUFBUSxHQUFHLEdBQUc7Z0JBQzFDLGlDQUFpQztnQkFDakMsK0JBQStCO2dCQUMvQixvQkFBb0I7Z0JBQ3BCLDJCQUEyQjtnQkFDM0Isd0JBQXdCO2dCQUN4QiwyQ0FBMkM7Z0JBQzNDLG9DQUFvQztnQkFDcEMsd0JBQXdCO2dCQUN4Qiw2QkFBNkI7Z0JBQzdCLHdDQUF3QyxHQUFHLEtBQUssQ0FBQyxVQUFVLEdBQUcsR0FBRztnQkFDakUsaUJBQWlCO2dCQUNqQixpREFBaUQ7Z0JBQ2pELDJCQUEyQjtnQkFDM0IsbUNBQW1DO2dCQUNuQyx3QkFBd0I7Z0JBQ3hCLDJEQUEyRDtnQkFDM0QsK0JBQStCO2dCQUMvQix5QkFBeUI7Z0JBQ3pCLHFEQUFxRDtnQkFDckQsc0VBQXNFO2dCQUN0RSxnRUFBZ0U7Z0JBQ2hFLG1EQUFtRDtnQkFDbkQsdURBQXVEO2dCQUN2RCw2REFBNkQ7Z0JBQzdELCtCQUErQjtnQkFDL0IsRUFBRTtnQkFDRixVQUFVO2dCQUNWLG9CQUFvQjtnQkFDcEIsd0RBQXdEO2dCQUN4RCxxQ0FBcUM7Z0JBQ3JDLGFBQWE7Z0JBQ2Isc0RBQXNEO2dCQUN0RCxFQUFFO2dCQUNGLHFCQUFxQjtnQkFDckIseURBQXlEO2dCQUN6RCw4QkFBOEI7Z0JBQzlCLGFBQWE7Z0JBQ2IsdURBQXVEO2FBQ3hEO1NBQ0YsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs7QUFyRUgsa0RBc0VDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVGV4dEZpbGUgfSBmcm9tICdwcm9qZW4nO1xuXG5leHBvcnQgaW50ZXJmYWNlIENka0RyaWZ0SWFtVGVtcGxhdGVQcm9wcyB7XG4gIHJlYWRvbmx5IHByb2plY3Q6IGFueTtcbiAgcmVhZG9ubHkgcm9sZU5hbWU6IHN0cmluZztcbiAgcmVhZG9ubHkgb3V0cHV0UGF0aD86IHN0cmluZztcbiAgcmVhZG9ubHkgb2lkY1JvbGVBcm46IHN0cmluZztcbiAgcmVhZG9ubHkgb2lkY1JlZ2lvbjogc3RyaW5nO1xufVxuXG5leHBvcnQgY2xhc3MgQ2RrRHJpZnRJYW1UZW1wbGF0ZSB7XG4gIGNvbnN0cnVjdG9yKHByb3BzOiBDZGtEcmlmdElhbVRlbXBsYXRlUHJvcHMpIHtcbiAgICBjb25zdCBvdXRwdXRQYXRoID0gcHJvcHMub3V0cHV0UGF0aCA/PyAnY2RrLWRyaWZ0LXdvcmtmbG93LWlhbS10ZW1wbGF0ZS55YW1sJztcblxuICAgIHByb3BzLnByb2plY3QuYWRkVGFzaygnZGVwbG95LWNka2RyaWZ0LWlhbS10ZW1wbGF0ZScsIHtcbiAgICAgIGRlc2NyaXB0aW9uOlxuICAgICAgICAnRGVwbG95IHRoZSBDREsgRHJpZnQgRGV0ZWN0aW9uIElBTSB0ZW1wbGF0ZSB2aWEgQ2xvdWRGb3JtYXRpb24gKGFjY2VwdHMgZXh0cmEgQVdTIENMSSBhcmdzLCBlLmcuLCAtLXBhcmFtZXRlci1vdmVycmlkZXMgS2V5PVZhbHVlLi4uKScsXG4gICAgICByZWNlaXZlQXJnczogdHJ1ZSxcbiAgICAgIGV4ZWM6XG4gICAgICAgIGBhd3MgY2xvdWRmb3JtYXRpb24gZGVwbG95IC0tdGVtcGxhdGUtZmlsZSAke291dHB1dFBhdGh9IC0tc3RhY2stbmFtZSBjZGstZHJpZnQtd29ya2Zsb3ctaWFtLXJvbGUgLS1jYXBhYmlsaXRpZXMgQ0FQQUJJTElUWV9OQU1FRF9JQU1gLFxuICAgIH0pO1xuXG4gICAgbmV3IFRleHRGaWxlKHByb3BzLnByb2plY3QsIG91dHB1dFBhdGgsIHtcbiAgICAgIGxpbmVzOiBbXG4gICAgICAgIFwiQVdTVGVtcGxhdGVGb3JtYXRWZXJzaW9uOiAnMjAxMC0wOS0wOSdcIixcbiAgICAgICAgXCJEZXNjcmlwdGlvbjogJ0lBTSByb2xlIGZvciBDREsgRHJpZnQgRGV0ZWN0aW9uIFdvcmtmbG93J1wiLFxuICAgICAgICAnJyxcbiAgICAgICAgJ1BhcmFtZXRlcnM6JyxcbiAgICAgICAgJyAgR2l0SHViT0lEQ1JvbGVBcm46JyxcbiAgICAgICAgJyAgICBUeXBlOiBTdHJpbmcnLFxuICAgICAgICBcIiAgICBEZXNjcmlwdGlvbjogJ0FSTiBvZiB0aGUgZXhpc3RpbmcgR2l0SHViIE9JREMgcm9sZSB0aGF0IGNhbiBhc3N1bWUgdGhpcyBkcmlmdCByb2xlJ1wiLFxuICAgICAgICBgICAgIERlZmF1bHQ6ICcke3Byb3BzLm9pZGNSb2xlQXJufSdgLFxuICAgICAgICAnJyxcbiAgICAgICAgJ1Jlc291cmNlczonLFxuICAgICAgICAnICAjIENsb3VkRm9ybWF0aW9uIERyaWZ0IERldGVjdGlvbiBSb2xlIC0gbWluaW1hbCBwZXJtaXNzaW9ucyBmb3IgZHJpZnQgZGV0ZWN0aW9uIG9wZXJhdGlvbnMnLFxuICAgICAgICAnICBDZGtEcmlmdFJvbGU6JyxcbiAgICAgICAgJyAgICBUeXBlOiBBV1M6OklBTTo6Um9sZScsXG4gICAgICAgICcgICAgUHJvcGVydGllczonLFxuICAgICAgICBcIiAgICAgIFJvbGVOYW1lOiAnXCIgKyBwcm9wcy5yb2xlTmFtZSArIFwiJ1wiLFxuICAgICAgICAnICAgICAgQXNzdW1lUm9sZVBvbGljeURvY3VtZW50OicsXG4gICAgICAgIFwiICAgICAgICBWZXJzaW9uOiAnMjAxMi0xMC0xNydcIixcbiAgICAgICAgJyAgICAgICAgU3RhdGVtZW50OicsXG4gICAgICAgICcgICAgICAgICAgLSBFZmZlY3Q6IEFsbG93JyxcbiAgICAgICAgJyAgICAgICAgICAgIFByaW5jaXBhbDonLFxuICAgICAgICAnICAgICAgICAgICAgICBBV1M6ICFSZWYgR2l0SHViT0lEQ1JvbGVBcm4nLFxuICAgICAgICAnICAgICAgICAgICAgQWN0aW9uOiBzdHM6QXNzdW1lUm9sZScsXG4gICAgICAgICcgICAgICAgICAgICBDb25kaXRpb246JyxcbiAgICAgICAgJyAgICAgICAgICAgICAgU3RyaW5nRXF1YWxzOicsXG4gICAgICAgIFwiICAgICAgICAgICAgICAgIGF3czpSZXF1ZXN0ZWRSZWdpb246ICdcIiArIHByb3BzLm9pZGNSZWdpb24gKyBcIidcIixcbiAgICAgICAgJyAgICAgIFBvbGljaWVzOicsXG4gICAgICAgICcgICAgICAgIC0gUG9saWN5TmFtZTogQ2xvdWRGb3JtYXRpb25EcmlmdEFjY2VzcycsXG4gICAgICAgICcgICAgICAgICAgUG9saWN5RG9jdW1lbnQ6JyxcbiAgICAgICAgXCIgICAgICAgICAgICBWZXJzaW9uOiAnMjAxMi0xMC0xNydcIixcbiAgICAgICAgJyAgICAgICAgICAgIFN0YXRlbWVudDonLFxuICAgICAgICAnICAgICAgICAgICAgICAjIENsb3VkRm9ybWF0aW9uIGRyaWZ0IGRldGVjdGlvbiBvcGVyYXRpb25zJyxcbiAgICAgICAgJyAgICAgICAgICAgICAgLSBFZmZlY3Q6IEFsbG93JyxcbiAgICAgICAgJyAgICAgICAgICAgICAgICBBY3Rpb246JyxcbiAgICAgICAgJyAgICAgICAgICAgICAgICAgIC0gY2xvdWRmb3JtYXRpb246RGV0ZWN0U3RhY2tEcmlmdCcsXG4gICAgICAgICcgICAgICAgICAgICAgICAgICAtIGNsb3VkZm9ybWF0aW9uOkRlc2NyaWJlU3RhY2tEcmlmdERldGVjdGlvblN0YXR1cycsXG4gICAgICAgICcgICAgICAgICAgICAgICAgICAtIGNsb3VkZm9ybWF0aW9uOkRlc2NyaWJlU3RhY2tSZXNvdXJjZURyaWZ0cycsXG4gICAgICAgICcgICAgICAgICAgICAgICAgICAtIGNsb3VkZm9ybWF0aW9uOkRlc2NyaWJlU3RhY2tzJyxcbiAgICAgICAgJyAgICAgICAgICAgICAgICAgIC0gY2xvdWRmb3JtYXRpb246TGlzdFN0YWNrUmVzb3VyY2VzJyxcbiAgICAgICAgJyAgICAgICAgICAgICAgICAgIC0gY2xvdWRmb3JtYXRpb246RGV0ZWN0U3RhY2tSZXNvdXJjZURyaWZ0JyxcbiAgICAgICAgXCIgICAgICAgICAgICAgICAgUmVzb3VyY2U6ICcqJ1wiLFxuICAgICAgICAnJyxcbiAgICAgICAgJ091dHB1dHM6JyxcbiAgICAgICAgJyAgQ2RrRHJpZnRSb2xlQXJuOicsXG4gICAgICAgIFwiICAgIERlc2NyaXB0aW9uOiAnQVJOIG9mIHRoZSBDREsgZHJpZnQgZGV0ZWN0aW9uIHJvbGUnXCIsXG4gICAgICAgICcgICAgVmFsdWU6ICFHZXRBdHQgQ2RrRHJpZnRSb2xlLkFybicsXG4gICAgICAgICcgICAgRXhwb3J0OicsXG4gICAgICAgIFwiICAgICAgTmFtZTogIVN1YiAnJHtBV1M6OlN0YWNrTmFtZX0tQ2RrRHJpZnRSb2xlQXJuJ1wiLFxuICAgICAgICAnJyxcbiAgICAgICAgJyAgQ2RrRHJpZnRSb2xlTmFtZTonLFxuICAgICAgICBcIiAgICBEZXNjcmlwdGlvbjogJ05hbWUgb2YgdGhlIENESyBkcmlmdCBkZXRlY3Rpb24gcm9sZSdcIixcbiAgICAgICAgJyAgICBWYWx1ZTogIVJlZiBDZGtEcmlmdFJvbGUnLFxuICAgICAgICAnICAgIEV4cG9ydDonLFxuICAgICAgICBcIiAgICAgIE5hbWU6ICFTdWIgJyR7QVdTOjpTdGFja05hbWV9LUNka0RyaWZ0Um9sZU5hbWUnXCIsXG4gICAgICBdLFxuICAgIH0pO1xuICB9XG59XG4iXX0=
|