gitlab-ci-local 4.26.0 → 4.26.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +15 -15
- package/src/git-data.js +83 -72
- package/src/home-variables.js +3 -3
- package/src/job.js +42 -7
- package/src/parser-includes.js +15 -11
- package/src/parser.js +2 -2
- package/src/utils.js +6 -6
- package/src/types/ci-cache.js +0 -3
package/package.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"description": "Tired of pushing to test your .gitlab-ci.yml?",
|
|
4
4
|
"main": "src/index.js",
|
|
5
5
|
"bin": "src/index.js",
|
|
6
|
-
"version": "4.26.
|
|
6
|
+
"version": "4.26.4",
|
|
7
7
|
"scripts": {
|
|
8
8
|
"prepublishOnly": "npm run check-all && chmod +x src/index.js",
|
|
9
9
|
"pkg-linux": "pkg src/index.js --public -t node16-linux-x64 -o bin/linux/gitlab-ci-local && chmod +x bin/linux/gitlab-ci-local && gzip -c bin/linux/gitlab-ci-local > bin/linux.gz",
|
|
@@ -20,39 +20,39 @@
|
|
|
20
20
|
"start": "ts-node --log-error src/index.ts --cwd examples/docker-compose-nodejs"
|
|
21
21
|
},
|
|
22
22
|
"dependencies": {
|
|
23
|
+
"axios": "^0.24.0",
|
|
23
24
|
"base64url": "^3.0.1",
|
|
24
|
-
"camelcase": "^6.2.
|
|
25
|
+
"camelcase": "^6.2.1",
|
|
25
26
|
"chalk": "^4.1.2",
|
|
26
27
|
"checksum": "^1.0.0",
|
|
27
28
|
"deep-extend": "^0.6.0",
|
|
28
29
|
"dotenv": "^10.0.0",
|
|
29
30
|
"fs-extra": "^10.0.0",
|
|
30
31
|
"js-yaml": "^4.1.0",
|
|
31
|
-
"node-fetch": "^2.6.5",
|
|
32
32
|
"pretty-hrtime": "^1.0.3",
|
|
33
|
-
"source-map-support": "^0.5.
|
|
33
|
+
"source-map-support": "^0.5.21",
|
|
34
34
|
"yargs": "^17.2.1"
|
|
35
35
|
},
|
|
36
36
|
"devDependencies": {
|
|
37
|
-
"@types/chalk": "2.2.0",
|
|
38
37
|
"@types/checksum": "0.1.33",
|
|
39
38
|
"@types/deep-extend": "0.4.32",
|
|
40
39
|
"@types/fs-extra": "9.0.13",
|
|
41
|
-
"@types/jest": "27.0.
|
|
42
|
-
"@types/
|
|
43
|
-
"@types/
|
|
40
|
+
"@types/jest": "27.0.3",
|
|
41
|
+
"@types/jest-when": "2.7.3",
|
|
42
|
+
"@types/js-yaml": "4.0.5",
|
|
44
43
|
"@types/pretty-hrtime": "1.0.1",
|
|
45
44
|
"@types/source-map-support": "0.5.4",
|
|
46
|
-
"@types/yargs": "17.0.
|
|
47
|
-
"@typescript-eslint/eslint-plugin": "5.
|
|
48
|
-
"@typescript-eslint/parser": "5.
|
|
45
|
+
"@types/yargs": "17.0.7",
|
|
46
|
+
"@typescript-eslint/eslint-plugin": "5.5.0",
|
|
47
|
+
"@typescript-eslint/parser": "5.5.0",
|
|
49
48
|
"depcheck": "1.4.2",
|
|
50
|
-
"eslint": "8.
|
|
51
|
-
"jest": "27.
|
|
52
|
-
"
|
|
49
|
+
"eslint": "8.3.0",
|
|
50
|
+
"jest": "27.4.2",
|
|
51
|
+
"jest-when": "3.4.2",
|
|
52
|
+
"pkg": "5.5.1",
|
|
53
53
|
"ts-jest": "27.0.7",
|
|
54
54
|
"ts-node": "10.4.0",
|
|
55
|
-
"typescript": "4.
|
|
55
|
+
"typescript": "4.5.2"
|
|
56
56
|
},
|
|
57
57
|
"engines": {
|
|
58
58
|
"node": ">=16.10.0"
|
package/src/git-data.js
CHANGED
|
@@ -1,29 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
var
|
|
3
|
-
|
|
4
|
-
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
-
}) : (function(o, m, k, k2) {
|
|
6
|
-
if (k2 === undefined) k2 = k;
|
|
7
|
-
o[k2] = m[k];
|
|
8
|
-
}));
|
|
9
|
-
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
10
|
-
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
11
|
-
}) : function(o, v) {
|
|
12
|
-
o["default"] = v;
|
|
13
|
-
});
|
|
14
|
-
var __importStar = (this && this.__importStar) || function (mod) {
|
|
15
|
-
if (mod && mod.__esModule) return mod;
|
|
16
|
-
var result = {};
|
|
17
|
-
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
18
|
-
__setModuleDefault(result, mod);
|
|
19
|
-
return result;
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
20
4
|
};
|
|
21
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
22
6
|
exports.GitData = void 0;
|
|
23
7
|
const utils_1 = require("./utils");
|
|
24
|
-
const fs = __importStar(require("fs-extra"));
|
|
25
|
-
const exit_error_1 = require("./types/exit-error");
|
|
26
8
|
const asserts_1 = require("./asserts");
|
|
9
|
+
const chalk_1 = __importDefault(require("chalk"));
|
|
10
|
+
const exit_error_1 = require("./types/exit-error");
|
|
27
11
|
class GitData {
|
|
28
12
|
constructor(data) {
|
|
29
13
|
this.remote = data.remote;
|
|
@@ -34,7 +18,7 @@ class GitData {
|
|
|
34
18
|
return `${this.remote.group}/${this.remote.project}`;
|
|
35
19
|
}
|
|
36
20
|
get CI_REGISTRY() {
|
|
37
|
-
return `local-registry.${this.remote.
|
|
21
|
+
return `local-registry.${this.remote.host}`;
|
|
38
22
|
}
|
|
39
23
|
get CI_REGISTRY_IMAGE() {
|
|
40
24
|
return `${this.CI_REGISTRY}/${this.CI_PROJECT_PATH}`;
|
|
@@ -42,69 +26,96 @@ class GitData {
|
|
|
42
26
|
get CI_PROJECT_PATH_SLUG() {
|
|
43
27
|
return `${this.remote.group.replace(/\//g, "-")}-${this.remote.project}`;
|
|
44
28
|
}
|
|
45
|
-
static async init(cwd) {
|
|
46
|
-
let gitlabUserEmail, gitlabUserName;
|
|
29
|
+
static async init(cwd, writeStreams) {
|
|
47
30
|
try {
|
|
48
|
-
const
|
|
49
|
-
|
|
31
|
+
const gitVersion = (await utils_1.Utils.spawn("git --version", cwd)).stdout.trimEnd();
|
|
32
|
+
(0, asserts_1.assert)(gitVersion != null, "We do not think it is safe to use git without a proper version string!");
|
|
50
33
|
}
|
|
51
34
|
catch (e) {
|
|
52
|
-
|
|
35
|
+
writeStreams.stderr((0, chalk_1.default) `{yellow Git not available using fallback}\n`);
|
|
36
|
+
return this.defaultData;
|
|
53
37
|
}
|
|
54
|
-
|
|
38
|
+
return new GitData({
|
|
39
|
+
user: await GitData.getUserData(cwd, writeStreams),
|
|
40
|
+
remote: await GitData.getRemoteData(cwd, writeStreams),
|
|
41
|
+
commit: await GitData.getCommitData(cwd, writeStreams),
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
static async getCommitData(cwd, writeStreams) {
|
|
55
45
|
try {
|
|
56
|
-
const
|
|
57
|
-
|
|
46
|
+
const gitLogStdout = (await utils_1.Utils.spawn("git log -1 --pretty=format:'%h %H %D'", cwd)).stdout.replace(/\r?\n/g, "");
|
|
47
|
+
const gitLogMatch = gitLogStdout.match(/(?<short_sha>\S*?) (?<sha>\S*) .*HEAD( -> |, tag: |, )(?<ref_name>.*?)(?:,|$)/);
|
|
48
|
+
(0, asserts_1.assert)(gitLogMatch?.groups != null, "git log -1 didn't provide valid matches");
|
|
49
|
+
return {
|
|
50
|
+
REF_NAME: gitLogMatch.groups.ref_name,
|
|
51
|
+
SHA: gitLogMatch.groups.sha,
|
|
52
|
+
SHORT_SHA: gitLogMatch.groups.short_sha,
|
|
53
|
+
};
|
|
58
54
|
}
|
|
59
55
|
catch (e) {
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
56
|
+
if (e instanceof exit_error_1.ExitError) {
|
|
57
|
+
writeStreams.stderr((0, chalk_1.default) `{yellow ${e.message}}\n`);
|
|
58
|
+
return this.defaultData.commit;
|
|
59
|
+
}
|
|
60
|
+
writeStreams.stderr((0, chalk_1.default) `{yellow Using fallback git commit data}\n`);
|
|
61
|
+
return this.defaultData.commit;
|
|
65
62
|
}
|
|
66
|
-
|
|
67
|
-
|
|
63
|
+
}
|
|
64
|
+
static async getRemoteData(cwd, writeStreams) {
|
|
65
|
+
try {
|
|
66
|
+
const { stdout: gitRemote } = await utils_1.Utils.spawn("git remote -v", cwd);
|
|
67
|
+
const gitRemoteMatch = gitRemote.match(/.*(?:\/\/|@)(?<host>[^:/]*)(:(?<port>\d+)\/|:|\/)(?<group>.*)\/(?<project>.*?)(?:\r?\n|\.git)/);
|
|
68
|
+
(0, asserts_1.assert)(gitRemoteMatch?.groups != null, "git remote -v didn't provide valid matches");
|
|
69
|
+
return {
|
|
70
|
+
port: gitRemoteMatch.groups.port ?? "22",
|
|
71
|
+
host: gitRemoteMatch.groups.host,
|
|
72
|
+
group: gitRemoteMatch.groups.group,
|
|
73
|
+
project: gitRemoteMatch.groups.project,
|
|
74
|
+
};
|
|
68
75
|
}
|
|
69
|
-
|
|
70
|
-
|
|
76
|
+
catch (e) {
|
|
77
|
+
if (e instanceof exit_error_1.ExitError) {
|
|
78
|
+
writeStreams.stderr((0, chalk_1.default) `{yellow ${e.message}}\n`);
|
|
79
|
+
return this.defaultData.remote;
|
|
80
|
+
}
|
|
81
|
+
writeStreams.stderr((0, chalk_1.default) `{yellow Using fallback git remote data}\n`);
|
|
82
|
+
return this.defaultData.remote;
|
|
71
83
|
}
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
84
|
+
}
|
|
85
|
+
static async getUserData(cwd, writeStreams) {
|
|
86
|
+
try {
|
|
87
|
+
const email = (await utils_1.Utils.spawn("git config user.email", cwd)).stdout.trimEnd();
|
|
88
|
+
return {
|
|
89
|
+
GITLAB_USER_NAME: (await utils_1.Utils.spawn("git config user.name", cwd)).stdout.trimEnd(),
|
|
90
|
+
GITLAB_USER_ID: (await utils_1.Utils.spawn("id -u", cwd)).stdout.trimEnd(),
|
|
91
|
+
GITLAB_USER_EMAIL: email,
|
|
92
|
+
GITLAB_USER_LOGIN: email.replace(/@.*/, ""),
|
|
93
|
+
};
|
|
82
94
|
}
|
|
83
|
-
|
|
84
|
-
|
|
95
|
+
catch (e) {
|
|
96
|
+
writeStreams.stderr((0, chalk_1.default) `{yellow Using fallback git user data}\n`);
|
|
97
|
+
return this.defaultData.user;
|
|
85
98
|
}
|
|
86
|
-
(0, asserts_1.assert)(gitLogMatch?.groups != null, "git log -1 didn't provide valid matches");
|
|
87
|
-
(0, asserts_1.assert)(gitLogMatch.groups.ref_name != null, "<ref_name> not found in git log -1");
|
|
88
|
-
(0, asserts_1.assert)(gitLogMatch.groups.sha != null, "<sha> not found in git log -1");
|
|
89
|
-
(0, asserts_1.assert)(gitLogMatch.groups.short_sha != null, "<short_sha> not found in git log -1");
|
|
90
|
-
return new GitData({
|
|
91
|
-
user: {
|
|
92
|
-
GITLAB_USER_LOGIN: gitlabUserLogin,
|
|
93
|
-
GITLAB_USER_EMAIL: gitlabUserEmail,
|
|
94
|
-
GITLAB_USER_NAME: gitlabUserName,
|
|
95
|
-
},
|
|
96
|
-
remote: {
|
|
97
|
-
domain: gitRemoteMatch.groups.domain,
|
|
98
|
-
group: gitRemoteMatch.groups.group,
|
|
99
|
-
project: gitRemoteMatch.groups.project,
|
|
100
|
-
},
|
|
101
|
-
commit: {
|
|
102
|
-
REF_NAME: gitLogMatch.groups.ref_name,
|
|
103
|
-
SHA: gitLogMatch.groups.sha,
|
|
104
|
-
SHORT_SHA: gitLogMatch.groups.short_sha,
|
|
105
|
-
},
|
|
106
|
-
});
|
|
107
99
|
}
|
|
108
100
|
}
|
|
109
101
|
exports.GitData = GitData;
|
|
110
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2l0LWRhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJnaXQtZGF0YS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsbUNBQThCO0FBQzlCLDZDQUErQjtBQUMvQixtREFBNkM7QUFDN0MsdUNBQWlDO0FBb0JqQyxNQUFhLE9BQU87SUFNaEIsWUFBWSxJQUEyRDtRQUNuRSxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7UUFDMUIsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBQzFCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztJQUMxQixDQUFDO0lBRUQsSUFBSSxlQUFlO1FBQ2YsT0FBTyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDekQsQ0FBQztJQUVELElBQUksV0FBVztRQUNYLE9BQU8sa0JBQWtCLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUM7SUFDbEQsQ0FBQztJQUVELElBQUksaUJBQWlCO1FBQ2pCLE9BQU8sR0FBRyxJQUFJLENBQUMsV0FBVyxJQUFJLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUN6RCxDQUFDO0lBRUQsSUFBSSxvQkFBb0I7UUFDcEIsT0FBTyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUM3RSxDQUFDO0lBRUQsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBVztRQUN6QixJQUFJLGVBQWUsRUFBRSxjQUFjLENBQUM7UUFFcEMsSUFBSTtZQUNBLE1BQU0sRUFBQyxNQUFNLEVBQUUsY0FBYyxFQUFDLEdBQUcsTUFBTSxh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LElBQUksRUFBRTtnQkFDRixpQkFBaUIsRUFBRSxlQUFlO2dCQUNsQyxpQkFBaUIsRUFBRSxlQUFlO2dCQUNsQyxnQkFBZ0IsRUFBRSxjQUFjO2FBQ25DO1lBQ0QsTUFBTSxFQUFFO2dCQUNKLE1BQU0sRUFBRSxjQUFjLENBQUMsTUFBTSxDQUFDLE1BQU07Z0JBQ3BDLEtBQUssRUFBRSxjQUFjLENBQUMsTUFBTSxDQUFDLEtBQUs7Z0JBQ2xDLE9BQU8sRUFBRSxjQUFjLENBQUMsTUFBTSxDQUFDLE9BQU87YUFDekM7WUFDRCxNQUFNLEVBQUU7Z0JBQ0osUUFBUSxFQUFFLFdBQVcsQ0FBQyxNQUFNLENBQUMsUUFBUTtnQkFDckMsR0FBRyxFQUFFLFdBQVcsQ0FBQyxNQUFNLENBQUMsR0FBRztnQkFDM0IsU0FBUyxFQUFFLFdBQVcsQ0FBQyxNQUFNLENBQUMsU0FBUzthQUMxQztTQUNKLENBQUMsQ0FBQztJQUNQLENBQUM7Q0FDSjtBQTFGRCwwQkEwRkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1V0aWxzfSBmcm9tIFwiLi91dGlsc1wiO1xuaW1wb3J0ICogYXMgZnMgZnJvbSBcImZzLWV4dHJhXCI7XG5pbXBvcnQge0V4aXRFcnJvcn0gZnJvbSBcIi4vdHlwZXMvZXhpdC1lcnJvclwiO1xuaW1wb3J0IHthc3NlcnR9IGZyb20gXCIuL2Fzc2VydHNcIjtcblxuaW50ZXJmYWNlIEdpdFJlbW90ZSB7XG4gICAgZG9tYWluOiBzdHJpbmc7XG4gICAgZ3JvdXA6IHN0cmluZztcbiAgICBwcm9qZWN0OiBzdHJpbmc7XG59XG5cbmludGVyZmFjZSBHaXRDb21taXQge1xuICAgIFNIQTogc3RyaW5nO1xuICAgIFNIT1JUX1NIQTogc3RyaW5nO1xuICAgIFJFRl9OQU1FOiBzdHJpbmc7XG59XG5cbmludGVyZmFjZSBHaXRVc2VyIHtcbiAgICBHSVRMQUJfVVNFUl9FTUFJTDogc3RyaW5nO1xuICAgIEdJVExBQl9VU0VSX0xPR0lOOiBzdHJpbmc7XG4gICAgR0lUTEFCX1VTRVJfTkFNRTogc3RyaW5nO1xufVxuXG5leHBvcnQgY2xhc3MgR2l0RGF0YSB7XG5cbiAgICByZWFkb25seSByZW1vdGU6IEdpdFJlbW90ZTtcbiAgICByZWFkb25seSBjb21taXQ6IEdpdENvbW1pdDtcbiAgICByZWFkb25seSB1c2VyOiBHaXRVc2VyO1xuXG4gICAgY29uc3RydWN0b3IoZGF0YToge3JlbW90ZTogR2l0UmVtb3RlOyBjb21taXQ6IEdpdENvbW1pdDsgdXNlcjogR2l0VXNlcn0pIHtcbiAgICAgICAgdGhpcy5yZW1vdGUgPSBkYXRhLnJlbW90ZTtcbiAgICAgICAgdGhpcy5jb21taXQgPSBkYXRhLmNvbW1pdDtcbiAgICAgICAgdGhpcy51c2VyID0gZGF0YS51c2VyO1xuICAgIH1cblxuICAgIGdldCBDSV9QUk9KRUNUX1BBVEgoKSB7XG4gICAgICAgIHJldHVybiBgJHt0aGlzLnJlbW90ZS5ncm91cH0vJHt0aGlzLnJlbW90ZS5wcm9qZWN0fWA7XG4gICAgfVxuXG4gICAgZ2V0IENJX1JFR0lTVFJZKCkge1xuICAgICAgICByZXR1cm4gYGxvY2FsLXJlZ2lzdHJ5LiR7dGhpcy5yZW1vdGUuZG9tYWlufWA7XG4gICAgfVxuXG4gICAgZ2V0IENJX1JFR0lTVFJZX0lNQUdFKCkge1xuICAgICAgICByZXR1cm4gYCR7dGhpcy5DSV9SRUdJU1RSWX0vJHt0aGlzLkNJX1BST0pFQ1RfUEFUSH1gO1xuICAgIH1cblxuICAgIGdldCBDSV9QUk9KRUNUX1BBVEhfU0xVRygpIHtcbiAgICAgICAgcmV0dXJuIGAke3RoaXMucmVtb3RlLmdyb3VwLnJlcGxhY2UoL1xcLy9nLCBcIi1cIil9LSR7dGhpcy5yZW1vdGUucHJvamVjdH1gO1xuICAgIH1cblxuICAgIHN0YXRpYyBhc3luYyBpbml0KGN3ZDogc3RyaW5nKTogUHJvbWlzZTxHaXREYXRhPiB7XG4gICAgICAgIGxldCBnaXRsYWJVc2VyRW1haWwsIGdpdGxhYlVzZXJOYW1lO1xuXG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBjb25zdCB7c3Rkb3V0OiBnaXRDb25maWdFbWFpbH0gPSBhd2FpdCBVdGlscy5zcGF3bihcImdpdCBjb25maWcgdXNlci5lbWFpbFwiLCBjd2QpO1xuICAgICAgICAgICAgZ2l0bGFiVXNlckVtYWlsID0gZ2l0Q29uZmlnRW1haWwudHJpbUVuZCgpO1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICBnaXRsYWJVc2VyRW1haWwgPSBcImxvY2FsQGdpdGxhYi5jb21cIjtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBnaXRsYWJVc2VyTG9naW4gPSBnaXRsYWJVc2VyRW1haWwucmVwbGFjZSgvQC4qLywgXCJcIik7XG4gICAgICAgIHRyeSB7XG4gICAgICAgICAgICBjb25zdCB7c3Rkb3V0OiBnaXRDb25maWdVc2VyTmFtZX0gPSBhd2FpdCBVdGlscy5zcGF3bihcImdpdCBjb25maWcgdXNlci5uYW1lXCIsIGN3ZCk7XG4gICAgICAgICAgICBnaXRsYWJVc2VyTmFtZSA9IGdpdENvbmZpZ1VzZXJOYW1lLnRyaW1FbmQoKTtcbiAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgZ2l0bGFiVXNlck5hbWUgPSBcIkJvYiBMb2NhbFwiO1xuICAgICAgICB9XG5cbiAgICAgICAgbGV0IGdpdENvbmZpZztcbiAgICAgICAgaWYgKGZzLmV4aXN0c1N5bmMoYCR7Y3dkfS8uZ2l0L2NvbmZpZ2ApKSB7XG4gICAgICAgICAgICBnaXRDb25maWcgPSBmcy5yZWFkRmlsZVN5bmMoYCR7Y3dkfS8uZ2l0L2NvbmZpZ2AsIFwidXRmOFwiKTtcbiAgICAgICAgfSBlbHNlIGlmIChmcy5leGlzdHNTeW5jKGAke2N3ZH0vLmdpdGNvbmZpZ2ApKSB7XG4gICAgICAgICAgICBnaXRDb25maWcgPSBmcy5yZWFkRmlsZVN5bmMoYCR7Y3dkfS8uZ2l0Y29uZmlnYCwgXCJ1dGY4XCIpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhyb3cgbmV3IEV4aXRFcnJvcihcIkNvdWxkIG5vdCBsb2NhdGUuZ2l0Y29uZmlnIG9yIC5naXQvY29uZmlnIGZpbGVcIik7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgZ2l0UmVtb3RlTWF0Y2ggPSBnaXRDb25maWcubWF0Y2goL3VybCA9IC4qKD86aHR0cFtzXT86XFwvXFwvfEApKD88ZG9tYWluPi4qPylbOnwvXSg/PGdyb3VwPi4qKVxcLyg/PHByb2plY3Q+Lio/KSg/Olxccj9cXG58XFwuZ2l0KS8pO1xuICAgICAgICBhc3NlcnQoZ2l0UmVtb3RlTWF0Y2g/Lmdyb3VwcyAhPSBudWxsLCBcImdpdCBjb25maWcgZGlkbid0IHByb3ZpZGUgdmFsaWQgbWF0Y2hlc1wiKTtcbiAgICAgICAgYXNzZXJ0KGdpdFJlbW90ZU1hdGNoLmdyb3Vwcy5kb21haW4gIT0gbnVsbCwgXCI8ZG9tYWluPiBub3QgZm91bmQgaW4gZ2l0IGNvbmZpZ1wiKTtcbiAgICAgICAgYXNzZXJ0KGdpdFJlbW90ZU1hdGNoLmdyb3Vwcy5ncm91cCAhPSBudWxsLCBcIjxncm91cD4gbm90IGZvdW5kIGluIGdpdCBjb25maWdcIik7XG4gICAgICAgIGFzc2VydChnaXRSZW1vdGVNYXRjaC5ncm91cHMucHJvamVjdCAhPSBudWxsLCBcIjxwcm9qZWN0PiBub3QgZm91bmQgaW4gZ2l0IGNvbmZpZ1wiKTtcblxuICAgICAgICBjb25zdCB7c3Rkb3V0OiBnaXRMb2dTdGRvdXR9ID0gYXdhaXQgVXRpbHMuc3Bhd24oXCJnaXQgbG9nIC0xIC0tcHJldHR5PWZvcm1hdDonJWggJUggJUQnXCIsIGN3ZCk7XG4gICAgICAgIGNvbnN0IGdpdExvZ091dHB1dCA9IGdpdExvZ1N0ZG91dC5yZXBsYWNlKC9cXHI/XFxuL2csIFwiXCIpO1xuICAgICAgICBsZXQgZ2l0TG9nTWF0Y2g7XG4gICAgICAgIGlmIChnaXRMb2dPdXRwdXQubWF0Y2goL0hFQUQsIHRhZy8pKSB7XG4gICAgICAgICAgICBnaXRMb2dNYXRjaCA9IGdpdExvZ091dHB1dC5tYXRjaCgvKD88c2hvcnRfc2hhPi4qPykgKD88c2hhPi4qPykgSEVBRCwgdGFnOiAoPzxyZWZfbmFtZT4uKj8pLC8pO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgZ2l0TG9nTWF0Y2ggPSBnaXRMb2dPdXRwdXQubWF0Y2goLyg/PHNob3J0X3NoYT4uKj8pICg/PHNoYT4uKj8pIEhFQUQgLT4gKD88cmVmX25hbWU+Lio/KSg/Oix8JCkvKTtcbiAgICAgICAgfVxuICAgICAgICBhc3NlcnQoZ2l0TG9nTWF0Y2g/Lmdyb3VwcyAhPSBudWxsLCBcImdpdCBsb2cgLTEgZGlkbid0IHByb3ZpZGUgdmFsaWQgbWF0Y2hlc1wiKTtcbiAgICAgICAgYXNzZXJ0KGdpdExvZ01hdGNoLmdyb3Vwcy5yZWZfbmFtZSAhPSBudWxsLCBcIjxyZWZfbmFtZT4gbm90IGZvdW5kIGluIGdpdCBsb2cgLTFcIik7XG4gICAgICAgIGFzc2VydChnaXRMb2dNYXRjaC5ncm91cHMuc2hhICE9IG51bGwsIFwiPHNoYT4gbm90IGZvdW5kIGluIGdpdCBsb2cgLTFcIik7XG4gICAgICAgIGFzc2VydChnaXRMb2dNYXRjaC5ncm91cHMuc2hvcnRfc2hhICE9IG51bGwsIFwiPHNob3J0X3NoYT4gbm90IGZvdW5kIGluIGdpdCBsb2cgLTFcIik7XG5cbiAgICAgICAgcmV0dXJuIG5ldyBHaXREYXRhKHtcbiAgICAgICAgICAgIHVzZXI6IHtcbiAgICAgICAgICAgICAgICBHSVRMQUJfVVNFUl9MT0dJTjogZ2l0bGFiVXNlckxvZ2luLFxuICAgICAgICAgICAgICAgIEdJVExBQl9VU0VSX0VNQUlMOiBnaXRsYWJVc2VyRW1haWwsXG4gICAgICAgICAgICAgICAgR0lUTEFCX1VTRVJfTkFNRTogZ2l0bGFiVXNlck5hbWUsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgcmVtb3RlOiB7XG4gICAgICAgICAgICAgICAgZG9tYWluOiBnaXRSZW1vdGVNYXRjaC5ncm91cHMuZG9tYWluLFxuICAgICAgICAgICAgICAgIGdyb3VwOiBnaXRSZW1vdGVNYXRjaC5ncm91cHMuZ3JvdXAsXG4gICAgICAgICAgICAgICAgcHJvamVjdDogZ2l0UmVtb3RlTWF0Y2guZ3JvdXBzLnByb2plY3QsXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgY29tbWl0OiB7XG4gICAgICAgICAgICAgICAgUkVGX05BTUU6IGdpdExvZ01hdGNoLmdyb3Vwcy5yZWZfbmFtZSxcbiAgICAgICAgICAgICAgICBTSEE6IGdpdExvZ01hdGNoLmdyb3Vwcy5zaGEsXG4gICAgICAgICAgICAgICAgU0hPUlRfU0hBOiBnaXRMb2dNYXRjaC5ncm91cHMuc2hvcnRfc2hhLFxuICAgICAgICAgICAgfSxcbiAgICAgICAgfSk7XG4gICAgfVxufVxuIl19
|
|
102
|
+
GitData.defaultData = new GitData({
|
|
103
|
+
user: {
|
|
104
|
+
GITLAB_USER_LOGIN: "local",
|
|
105
|
+
GITLAB_USER_EMAIL: "local@gitlab.com",
|
|
106
|
+
GITLAB_USER_NAME: "Bob Local",
|
|
107
|
+
GITLAB_USER_ID: "1000",
|
|
108
|
+
},
|
|
109
|
+
remote: {
|
|
110
|
+
port: "22",
|
|
111
|
+
host: "gitlab.com",
|
|
112
|
+
group: "fallback.group",
|
|
113
|
+
project: "fallback.project",
|
|
114
|
+
},
|
|
115
|
+
commit: {
|
|
116
|
+
REF_NAME: "main",
|
|
117
|
+
SHA: "0000000000000000000000000000000000000000",
|
|
118
|
+
SHORT_SHA: "00000000",
|
|
119
|
+
},
|
|
120
|
+
});
|
|
121
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2l0LWRhdGEuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJnaXQtZGF0YS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxtQ0FBZ0M7QUFDaEMsdUNBQW1DO0FBRW5DLGtEQUEwQjtBQUMxQixtREFBNkM7QUFzQjdDLE1BQWEsT0FBTztJQTJCaEIsWUFBWSxJQUE2RDtRQUNyRSxJQUFJLENBQUMsTUFBTSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7UUFDMUIsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDO1FBQzFCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQztJQUMxQixDQUFDO0lBRUQsSUFBSSxlQUFlO1FBQ2YsT0FBTyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDekQsQ0FBQztJQUVELElBQUksV0FBVztRQUNYLE9BQU8sa0JBQWtCLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDaEQsQ0FBQztJQUVELElBQUksaUJBQWlCO1FBQ2pCLE9BQU8sR0FBRyxJQUFJLENBQUMsV0FBVyxJQUFJLElBQUksQ0FBQyxlQUFlLEVBQUUsQ0FBQztJQUN6RCxDQUFDO0lBRUQsSUFBSSxvQkFBb0I7UUFDcEIsT0FBTyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsR0FBRyxDQUFDLElBQUksSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUM3RSxDQUFDO0lBRUQsTUFBTSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBVyxFQUFFLFlBQTBCO1FBQ3JELElBQUk7WUFDQSxNQUFNLFVBQVUsR0FBRyxDQUFDLE1BQU0sYUFBSyxDQUFDLEtBQUssQ0FBQyxlQUFlLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDOUUsSUFBQSxnQkFBTSxFQUFDLFVBQVUsSUFBSSxJQUFJLEVBQUUsd0VBQXdFLENBQUMsQ0FBQztTQUN4RztRQUFDLE9BQU8sQ0FBQyxFQUFFO1lBQ1IsWUFBWSxDQUFDLE1BQU0sQ0FBQyxJQUFBLGVBQUssRUFBQSw2Q0FBNkMsQ0FBQyxDQUFDO1lBQ3hFLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQztTQUMzQjtRQUVELE9BQU8sSUFBSSxPQUFPLENBQUM7WUFDZixJQUFJLEVBQUUsTUFBTSxPQUFPLENBQUMsV0FBVyxDQUFDLEdBQUcsRUFBRSxZQUFZLENBQUM7WUFDbEQsTUFBTSxFQUFFLE1BQU0sT0FBTyxDQUFDLGFBQWEsQ0FBQyxHQUFHLEVBQUUsWUFBWSxDQUFDO1lBQ3RELE1BQU0sRUFBRSxNQUFNLE9BQU8sQ0FBQyxhQUFhLENBQUMsR0FBRyxFQUFFLFlBQVksQ0FBQztTQUN6RCxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRUQsTUFBTSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsR0FBVyxFQUFFLFlBQTBCO1FBQzlELElBQUk7WUFDQSxNQUFNLFlBQVksR0FBRyxDQUFDLE1BQU0sYUFBSyxDQUFDLEtBQUssQ0FBQyx1Q0FBdUMsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1lBQ3BILE1BQU0sV0FBVyxHQUFHLFlBQVksQ0FBQyxLQUFLLENBQUMsK0VBQStFLENBQUMsQ0FBQztZQUV4SCxJQUFBLGdCQUFNLEVBQUMsV0FBVyxFQUFFLE1BQU0sSUFBSSxJQUFJLEVBQUUseUNBQXlDLENBQUMsQ0FBQztZQUUvRSxPQUFPO2dCQUNILFFBQVEsRUFBRSxXQUFXLENBQUMsTUFBTSxDQUFDLFFBQVE7Z0JBQ3JDLEdBQUcsRUFBRSxXQUFXLENBQUMsTUFBTSxDQUFDLEdBQUc7Z0JBQzNCLFNBQVMsRUFBRSxXQUFXLENBQUMsTUFBTSxDQUFDLFNBQVM7YUFDMUMsQ0FBQztTQUNMO1FBQUMsT0FBTyxDQUFDLEVBQUU7WUFDUixJQUFJLENBQUMsWUFBWSxzQkFBUyxFQUFFO2dCQUN4QixZQUFZLENBQUMsTUFBTSxDQUFDLElBQUEsZUFBSyxFQUFBLFdBQVcsQ0FBQyxDQUFDLE9BQU8sS0FBSyxDQUFDLENBQUM7Z0JBQ3BELE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLENBQUM7YUFDbEM7WUFDRCxZQUFZLENBQUMsTUFBTSxDQUFDLElBQUEsZUFBSyxFQUFBLDJDQUEyQyxDQUFDLENBQUM7WUFDdEUsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQztTQUNsQztJQUNMLENBQUM7SUFFRCxNQUFNLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxHQUFXLEVBQUUsWUFBMEI7UUFDOUQsSUFBSTtZQUNBLE1BQU0sRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLEdBQUcsTUFBTSxhQUFLLENBQUMsS0FBSyxDQUFDLGVBQWUsRUFBRSxHQUFHLENBQUMsQ0FBQztZQUN0RSxNQUFNLGNBQWMsR0FBRyxTQUFTLENBQUMsS0FBSyxDQUFDLCtGQUErRixDQUFDLENBQUM7WUFFeEksSUFBQSxnQkFBTSxFQUFDLGNBQWMsRUFBRSxNQUFNLElBQUksSUFBSSxFQUFFLDRDQUE0QyxDQUFDLENBQUM7WUFFckYsT0FBTztnQkFDSCxJQUFJLEVBQUUsY0FBYyxDQUFDLE1BQU0sQ0FBQyxJQUFJLElBQUksSUFBSTtnQkFDeEMsSUFBSSxFQUFFLGNBQWMsQ0FBQyxNQUFNLENBQUMsSUFBSTtnQkFDaEMsS0FBSyxFQUFFLGNBQWMsQ0FBQyxNQUFNLENBQUMsS0FBSztnQkFDbEMsT0FBTyxFQUFFLGNBQWMsQ0FBQyxNQUFNLENBQUMsT0FBTzthQUN6QyxDQUFDO1NBQ0w7UUFBQyxPQUFPLENBQUMsRUFBRTtZQUNSLElBQUksQ0FBQyxZQUFZLHNCQUFTLEVBQUU7Z0JBQ3hCLFlBQVksQ0FBQyxNQUFNLENBQUMsSUFBQSxlQUFLLEVBQUEsV0FBVyxDQUFDLENBQUMsT0FBTyxLQUFLLENBQUMsQ0FBQztnQkFDcEQsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLE1BQU0sQ0FBQzthQUNsQztZQUNELFlBQVksQ0FBQyxNQUFNLENBQUMsSUFBQSxlQUFLLEVBQUEsMkNBQTJDLENBQUMsQ0FBQztZQUN0RSxPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDO1NBQ2xDO0lBQ0wsQ0FBQztJQUVELE1BQU0sQ0FBQyxLQUFLLENBQUMsV0FBVyxDQUFDLEdBQVcsRUFBRSxZQUEwQjtRQUM1RCxJQUFJO1lBQ0EsTUFBTSxLQUFLLEdBQUcsQ0FBQyxNQUFNLGFBQUssQ0FBQyxLQUFLLENBQUMsdUJBQXVCLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLENBQUM7WUFFakYsT0FBTztnQkFDSCxnQkFBZ0IsRUFBRSxDQUFDLE1BQU0sYUFBSyxDQUFDLEtBQUssQ0FBQyxzQkFBc0IsRUFBRSxHQUFHLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxPQUFPLEVBQUU7Z0JBQ25GLGNBQWMsRUFBRSxDQUFDLE1BQU0sYUFBSyxDQUFDLEtBQUssQ0FBQyxPQUFPLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFO2dCQUNsRSxpQkFBaUIsRUFBRSxLQUFLO2dCQUN4QixpQkFBaUIsRUFBRSxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUM7YUFDOUMsQ0FBQztTQUNMO1FBQUMsT0FBTyxDQUFDLEVBQUU7WUFDUixZQUFZLENBQUMsTUFBTSxDQUFDLElBQUEsZUFBSyxFQUFBLHlDQUF5QyxDQUFDLENBQUM7WUFDcEUsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQztTQUNoQztJQUNMLENBQUM7O0FBNUhMLDBCQTZIQztBQTNIbUIsbUJBQVcsR0FDdkIsSUFBSSxPQUFPLENBQUM7SUFDUixJQUFJLEVBQUU7UUFDRixpQkFBaUIsRUFBRSxPQUFPO1FBQzFCLGlCQUFpQixFQUFFLGtCQUFrQjtRQUNyQyxnQkFBZ0IsRUFBRSxXQUFXO1FBQzdCLGNBQWMsRUFBRSxNQUFNO0tBQ3pCO0lBQ0QsTUFBTSxFQUFFO1FBQ0osSUFBSSxFQUFFLElBQUk7UUFDVixJQUFJLEVBQUUsWUFBWTtRQUNsQixLQUFLLEVBQUUsZ0JBQWdCO1FBQ3ZCLE9BQU8sRUFBRSxrQkFBa0I7S0FDOUI7SUFDRCxNQUFNLEVBQUU7UUFDSixRQUFRLEVBQUUsTUFBTTtRQUNoQixHQUFHLEVBQUUsMENBQTBDO1FBQy9DLFNBQVMsRUFBRSxVQUFVO0tBQ3hCO0NBQ0osQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgVXRpbHMgfSBmcm9tIFwiLi91dGlsc1wiO1xuaW1wb3J0IHsgYXNzZXJ0IH0gZnJvbSBcIi4vYXNzZXJ0c1wiO1xuaW1wb3J0IHtXcml0ZVN0cmVhbXN9IGZyb20gXCIuL3R5cGVzL3dyaXRlLXN0cmVhbXNcIjtcbmltcG9ydCBjaGFsayBmcm9tIFwiY2hhbGtcIjtcbmltcG9ydCB7RXhpdEVycm9yfSBmcm9tIFwiLi90eXBlcy9leGl0LWVycm9yXCI7XG5cbmludGVyZmFjZSBHaXRSZW1vdGUge1xuICAgIHBvcnQ6IHN0cmluZztcbiAgICBob3N0OiBzdHJpbmc7XG4gICAgZ3JvdXA6IHN0cmluZztcbiAgICBwcm9qZWN0OiBzdHJpbmc7XG59XG5cbmludGVyZmFjZSBHaXRDb21taXQge1xuICAgIFNIQTogc3RyaW5nO1xuICAgIFNIT1JUX1NIQTogc3RyaW5nO1xuICAgIFJFRl9OQU1FOiBzdHJpbmc7XG59XG5cbmludGVyZmFjZSBHaXRVc2VyIHtcbiAgICBHSVRMQUJfVVNFUl9FTUFJTDogc3RyaW5nO1xuICAgIEdJVExBQl9VU0VSX0xPR0lOOiBzdHJpbmc7XG4gICAgR0lUTEFCX1VTRVJfTkFNRTogc3RyaW5nO1xuICAgIEdJVExBQl9VU0VSX0lEOiBzdHJpbmc7XG59XG5cbmV4cG9ydCBjbGFzcyBHaXREYXRhIHtcblxuICAgIHN0YXRpYyByZWFkb25seSBkZWZhdWx0RGF0YTogR2l0RGF0YSA9XG4gICAgICAgIG5ldyBHaXREYXRhKHtcbiAgICAgICAgICAgIHVzZXI6IHtcbiAgICAgICAgICAgICAgICBHSVRMQUJfVVNFUl9MT0dJTjogXCJsb2NhbFwiLFxuICAgICAgICAgICAgICAgIEdJVExBQl9VU0VSX0VNQUlMOiBcImxvY2FsQGdpdGxhYi5jb21cIixcbiAgICAgICAgICAgICAgICBHSVRMQUJfVVNFUl9OQU1FOiBcIkJvYiBMb2NhbFwiLFxuICAgICAgICAgICAgICAgIEdJVExBQl9VU0VSX0lEOiBcIjEwMDBcIixcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICByZW1vdGU6IHtcbiAgICAgICAgICAgICAgICBwb3J0OiBcIjIyXCIsXG4gICAgICAgICAgICAgICAgaG9zdDogXCJnaXRsYWIuY29tXCIsXG4gICAgICAgICAgICAgICAgZ3JvdXA6IFwiZmFsbGJhY2suZ3JvdXBcIixcbiAgICAgICAgICAgICAgICBwcm9qZWN0OiBcImZhbGxiYWNrLnByb2plY3RcIixcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBjb21taXQ6IHtcbiAgICAgICAgICAgICAgICBSRUZfTkFNRTogXCJtYWluXCIsXG4gICAgICAgICAgICAgICAgU0hBOiBcIjAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDBcIixcbiAgICAgICAgICAgICAgICBTSE9SVF9TSEE6IFwiMDAwMDAwMDBcIixcbiAgICAgICAgICAgIH0sXG4gICAgICAgIH0pO1xuXG4gICAgcmVhZG9ubHkgcmVtb3RlOiBHaXRSZW1vdGU7XG4gICAgcmVhZG9ubHkgY29tbWl0OiBHaXRDb21taXQ7XG4gICAgcmVhZG9ubHkgdXNlcjogR2l0VXNlcjtcblxuICAgIGNvbnN0cnVjdG9yKGRhdGE6IHsgcmVtb3RlOiBHaXRSZW1vdGU7IGNvbW1pdDogR2l0Q29tbWl0OyB1c2VyOiBHaXRVc2VyIH0pIHtcbiAgICAgICAgdGhpcy5yZW1vdGUgPSBkYXRhLnJlbW90ZTtcbiAgICAgICAgdGhpcy5jb21taXQgPSBkYXRhLmNvbW1pdDtcbiAgICAgICAgdGhpcy51c2VyID0gZGF0YS51c2VyO1xuICAgIH1cblxuICAgIGdldCBDSV9QUk9KRUNUX1BBVEgoKSB7XG4gICAgICAgIHJldHVybiBgJHt0aGlzLnJlbW90ZS5ncm91cH0vJHt0aGlzLnJlbW90ZS5wcm9qZWN0fWA7XG4gICAgfVxuXG4gICAgZ2V0IENJX1JFR0lTVFJZKCkge1xuICAgICAgICByZXR1cm4gYGxvY2FsLXJlZ2lzdHJ5LiR7dGhpcy5yZW1vdGUuaG9zdH1gO1xuICAgIH1cblxuICAgIGdldCBDSV9SRUdJU1RSWV9JTUFHRSgpIHtcbiAgICAgICAgcmV0dXJuIGAke3RoaXMuQ0lfUkVHSVNUUll9LyR7dGhpcy5DSV9QUk9KRUNUX1BBVEh9YDtcbiAgICB9XG5cbiAgICBnZXQgQ0lfUFJPSkVDVF9QQVRIX1NMVUcoKSB7XG4gICAgICAgIHJldHVybiBgJHt0aGlzLnJlbW90ZS5ncm91cC5yZXBsYWNlKC9cXC8vZywgXCItXCIpfS0ke3RoaXMucmVtb3RlLnByb2plY3R9YDtcbiAgICB9XG5cbiAgICBzdGF0aWMgYXN5bmMgaW5pdChjd2Q6IHN0cmluZywgd3JpdGVTdHJlYW1zOiBXcml0ZVN0cmVhbXMpOiBQcm9taXNlPEdpdERhdGE+IHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGNvbnN0IGdpdFZlcnNpb24gPSAoYXdhaXQgVXRpbHMuc3Bhd24oXCJnaXQgLS12ZXJzaW9uXCIsIGN3ZCkpLnN0ZG91dC50cmltRW5kKCk7XG4gICAgICAgICAgICBhc3NlcnQoZ2l0VmVyc2lvbiAhPSBudWxsLCBcIldlIGRvIG5vdCB0aGluayBpdCBpcyBzYWZlIHRvIHVzZSBnaXQgd2l0aG91dCBhIHByb3BlciB2ZXJzaW9uIHN0cmluZyFcIik7XG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIHdyaXRlU3RyZWFtcy5zdGRlcnIoY2hhbGtge3llbGxvdyBHaXQgbm90IGF2YWlsYWJsZSB1c2luZyBmYWxsYmFja31cXG5gKTtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmRlZmF1bHREYXRhO1xuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIG5ldyBHaXREYXRhKHtcbiAgICAgICAgICAgIHVzZXI6IGF3YWl0IEdpdERhdGEuZ2V0VXNlckRhdGEoY3dkLCB3cml0ZVN0cmVhbXMpLFxuICAgICAgICAgICAgcmVtb3RlOiBhd2FpdCBHaXREYXRhLmdldFJlbW90ZURhdGEoY3dkLCB3cml0ZVN0cmVhbXMpLFxuICAgICAgICAgICAgY29tbWl0OiBhd2FpdCBHaXREYXRhLmdldENvbW1pdERhdGEoY3dkLCB3cml0ZVN0cmVhbXMpLFxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBzdGF0aWMgYXN5bmMgZ2V0Q29tbWl0RGF0YShjd2Q6IHN0cmluZywgd3JpdGVTdHJlYW1zOiBXcml0ZVN0cmVhbXMpOiBQcm9taXNlPEdpdENvbW1pdD4ge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgY29uc3QgZ2l0TG9nU3Rkb3V0ID0gKGF3YWl0IFV0aWxzLnNwYXduKFwiZ2l0IGxvZyAtMSAtLXByZXR0eT1mb3JtYXQ6JyVoICVIICVEJ1wiLCBjd2QpKS5zdGRvdXQucmVwbGFjZSgvXFxyP1xcbi9nLCBcIlwiKTtcbiAgICAgICAgICAgIGNvbnN0IGdpdExvZ01hdGNoID0gZ2l0TG9nU3Rkb3V0Lm1hdGNoKC8oPzxzaG9ydF9zaGE+XFxTKj8pICg/PHNoYT5cXFMqKSAuKkhFQUQoIC0+IHwsIHRhZzogfCwgKSg/PHJlZl9uYW1lPi4qPykoPzosfCQpLyk7XG5cbiAgICAgICAgICAgIGFzc2VydChnaXRMb2dNYXRjaD8uZ3JvdXBzICE9IG51bGwsIFwiZ2l0IGxvZyAtMSBkaWRuJ3QgcHJvdmlkZSB2YWxpZCBtYXRjaGVzXCIpO1xuXG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIFJFRl9OQU1FOiBnaXRMb2dNYXRjaC5ncm91cHMucmVmX25hbWUsXG4gICAgICAgICAgICAgICAgU0hBOiBnaXRMb2dNYXRjaC5ncm91cHMuc2hhLFxuICAgICAgICAgICAgICAgIFNIT1JUX1NIQTogZ2l0TG9nTWF0Y2guZ3JvdXBzLnNob3J0X3NoYSxcbiAgICAgICAgICAgIH07XG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIGlmIChlIGluc3RhbmNlb2YgRXhpdEVycm9yKSB7XG4gICAgICAgICAgICAgICAgd3JpdGVTdHJlYW1zLnN0ZGVycihjaGFsa2B7eWVsbG93ICR7ZS5tZXNzYWdlfX1cXG5gKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5kZWZhdWx0RGF0YS5jb21taXQ7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB3cml0ZVN0cmVhbXMuc3RkZXJyKGNoYWxrYHt5ZWxsb3cgVXNpbmcgZmFsbGJhY2sgZ2l0IGNvbW1pdCBkYXRhfVxcbmApO1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuZGVmYXVsdERhdGEuY29tbWl0O1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgc3RhdGljIGFzeW5jIGdldFJlbW90ZURhdGEoY3dkOiBzdHJpbmcsIHdyaXRlU3RyZWFtczogV3JpdGVTdHJlYW1zKTogUHJvbWlzZTxHaXRSZW1vdGU+IHtcbiAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgIGNvbnN0IHsgc3Rkb3V0OiBnaXRSZW1vdGUgfSA9IGF3YWl0IFV0aWxzLnNwYXduKFwiZ2l0IHJlbW90ZSAtdlwiLCBjd2QpO1xuICAgICAgICAgICAgY29uc3QgZ2l0UmVtb3RlTWF0Y2ggPSBnaXRSZW1vdGUubWF0Y2goLy4qKD86XFwvXFwvfEApKD88aG9zdD5bXjovXSopKDooPzxwb3J0PlxcZCspXFwvfDp8XFwvKSg/PGdyb3VwPi4qKVxcLyg/PHByb2plY3Q+Lio/KSg/Olxccj9cXG58XFwuZ2l0KS8pO1xuXG4gICAgICAgICAgICBhc3NlcnQoZ2l0UmVtb3RlTWF0Y2g/Lmdyb3VwcyAhPSBudWxsLCBcImdpdCByZW1vdGUgLXYgZGlkbid0IHByb3ZpZGUgdmFsaWQgbWF0Y2hlc1wiKTtcblxuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICBwb3J0OiBnaXRSZW1vdGVNYXRjaC5ncm91cHMucG9ydCA/PyBcIjIyXCIsXG4gICAgICAgICAgICAgICAgaG9zdDogZ2l0UmVtb3RlTWF0Y2guZ3JvdXBzLmhvc3QsXG4gICAgICAgICAgICAgICAgZ3JvdXA6IGdpdFJlbW90ZU1hdGNoLmdyb3Vwcy5ncm91cCxcbiAgICAgICAgICAgICAgICBwcm9qZWN0OiBnaXRSZW1vdGVNYXRjaC5ncm91cHMucHJvamVjdCxcbiAgICAgICAgICAgIH07XG4gICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgIGlmIChlIGluc3RhbmNlb2YgRXhpdEVycm9yKSB7XG4gICAgICAgICAgICAgICAgd3JpdGVTdHJlYW1zLnN0ZGVycihjaGFsa2B7eWVsbG93ICR7ZS5tZXNzYWdlfX1cXG5gKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5kZWZhdWx0RGF0YS5yZW1vdGU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB3cml0ZVN0cmVhbXMuc3RkZXJyKGNoYWxrYHt5ZWxsb3cgVXNpbmcgZmFsbGJhY2sgZ2l0IHJlbW90ZSBkYXRhfVxcbmApO1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuZGVmYXVsdERhdGEucmVtb3RlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgc3RhdGljIGFzeW5jIGdldFVzZXJEYXRhKGN3ZDogc3RyaW5nLCB3cml0ZVN0cmVhbXM6IFdyaXRlU3RyZWFtcyk6IFByb21pc2U8R2l0VXNlcj4ge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgY29uc3QgZW1haWwgPSAoYXdhaXQgVXRpbHMuc3Bhd24oXCJnaXQgY29uZmlnIHVzZXIuZW1haWxcIiwgY3dkKSkuc3Rkb3V0LnRyaW1FbmQoKTtcblxuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICBHSVRMQUJfVVNFUl9OQU1FOiAoYXdhaXQgVXRpbHMuc3Bhd24oXCJnaXQgY29uZmlnIHVzZXIubmFtZVwiLCBjd2QpKS5zdGRvdXQudHJpbUVuZCgpLFxuICAgICAgICAgICAgICAgIEdJVExBQl9VU0VSX0lEOiAoYXdhaXQgVXRpbHMuc3Bhd24oXCJpZCAtdVwiLCBjd2QpKS5zdGRvdXQudHJpbUVuZCgpLFxuICAgICAgICAgICAgICAgIEdJVExBQl9VU0VSX0VNQUlMOiBlbWFpbCxcbiAgICAgICAgICAgICAgICBHSVRMQUJfVVNFUl9MT0dJTjogZW1haWwucmVwbGFjZSgvQC4qLywgXCJcIiksXG4gICAgICAgICAgICB9O1xuICAgICAgICB9IGNhdGNoIChlKSB7XG4gICAgICAgICAgICB3cml0ZVN0cmVhbXMuc3RkZXJyKGNoYWxrYHt5ZWxsb3cgVXNpbmcgZmFsbGJhY2sgZ2l0IHVzZXIgZGF0YX1cXG5gKTtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLmRlZmF1bHREYXRhLnVzZXI7XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
|
package/src/home-variables.js
CHANGED
|
@@ -42,7 +42,7 @@ class HomeVariables {
|
|
|
42
42
|
}
|
|
43
43
|
variables[globalKey] = globalEntry;
|
|
44
44
|
}
|
|
45
|
-
const groupUrl = `${gitData.remote.
|
|
45
|
+
const groupUrl = `${gitData.remote.host}/${gitData.remote.group}/`;
|
|
46
46
|
for (const [groupKey, groupEntries] of Object.entries(data?.group ?? [])) {
|
|
47
47
|
if (!groupUrl.includes(this.normalizeProjectKey(groupKey, writeStreams))) {
|
|
48
48
|
continue;
|
|
@@ -52,7 +52,7 @@ class HomeVariables {
|
|
|
52
52
|
}
|
|
53
53
|
variables = { ...variables, ...groupEntries };
|
|
54
54
|
}
|
|
55
|
-
const projectUrl = `${gitData.remote.
|
|
55
|
+
const projectUrl = `${gitData.remote.host}/${gitData.remote.group}/${gitData.remote.project}.git`;
|
|
56
56
|
for (const [projectKey, projectEntries] of Object.entries(data?.project ?? [])) {
|
|
57
57
|
if (!projectUrl.includes(this.normalizeProjectKey(projectKey, writeStreams))) {
|
|
58
58
|
continue;
|
|
@@ -97,4 +97,4 @@ class HomeVariables {
|
|
|
97
97
|
}
|
|
98
98
|
}
|
|
99
99
|
exports.HomeVariables = HomeVariables;
|
|
100
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
100
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9tZS12YXJpYWJsZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJob21lLXZhcmlhYmxlcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBRUEsNkNBQStCO0FBQy9CLDhDQUFnQztBQUNoQyxnREFBd0I7QUFDeEIsa0RBQTBCO0FBRTFCLE1BQWEsYUFBYTtJQUV0QixNQUFNLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxHQUFXLEVBQUUsWUFBMEIsRUFBRSxPQUFnQixFQUFFLElBQVk7UUFDckYsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDeEMsTUFBTSxhQUFhLEdBQUcsR0FBRyxPQUFPLGlDQUFpQyxDQUFDO1FBQ2xFLElBQUksQ0FBQyxFQUFFLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxFQUFFO1lBQy9CLE9BQU8sRUFBRSxDQUFDO1NBQ2I7UUFFRCxNQUFNLElBQUksR0FBUSxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDLFFBQVEsQ0FBQyxhQUFhLEVBQUUsTUFBTSxDQUFDLEVBQUUsRUFBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLGVBQWUsRUFBQyxDQUFDLENBQUM7UUFDdEcsSUFBSSxTQUFTLEdBQThCLEVBQUUsQ0FBQztRQUU5QyxLQUFLLE1BQU0sQ0FBQyxTQUFTLEVBQUUsV0FBVyxDQUFDLElBQUksTUFBTSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsTUFBTSxJQUFJLEVBQUUsQ0FBQyxFQUFFO1lBQ3ZFLElBQUksT0FBTyxXQUFXLEtBQUssUUFBUSxFQUFFO2dCQUNqQyxTQUFTO2FBQ1o7WUFDRCxTQUFTLENBQUMsU0FBUyxDQUFDLEdBQUcsV0FBVyxDQUFDO1NBQ3RDO1FBRUQsTUFBTSxRQUFRLEdBQUcsR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLElBQUksSUFBSSxPQUFPLENBQUMsTUFBTSxD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Q0FBQzthQUN6SDtTQUNKO1FBRUQsT0FBTyxTQUFTLENBQUM7SUFDckIsQ0FBQztJQUVELE1BQU0sQ0FBQyxtQkFBbUIsQ0FBQyxHQUFXLEVBQUUsWUFBMEI7UUFDOUQsSUFBSSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDO1lBQUUsT0FBTyxHQUFHLENBQUM7UUFDbkMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxJQUFBLGVBQUssRUFBQSxrQ0FBa0MsR0FBRyxTQUFTLEdBQUcsQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUNwRyxPQUFPLEdBQUcsQ0FBQyxPQUFPLENBQUMsR0FBRyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0lBQ2pDLENBQUM7Q0FDSjtBQS9FRCxzQ0ErRUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1dyaXRlU3RyZWFtc30gZnJvbSBcIi4vdHlwZXMvd3JpdGUtc3RyZWFtc1wiO1xuaW1wb3J0IHtHaXREYXRhfSBmcm9tIFwiLi9naXQtZGF0YVwiO1xuaW1wb3J0ICogYXMgZnMgZnJvbSBcImZzLWV4dHJhXCI7XG5pbXBvcnQgKiBhcyB5YW1sIGZyb20gXCJqcy15YW1sXCI7XG5pbXBvcnQgcGF0aCBmcm9tIFwicGF0aFwiO1xuaW1wb3J0IGNoYWxrIGZyb20gXCJjaGFsa1wiO1xuXG5leHBvcnQgY2xhc3MgSG9tZVZhcmlhYmxlcyB7XG5cbiAgICBzdGF0aWMgYXN5bmMgaW5pdChjd2Q6IHN0cmluZywgd3JpdGVTdHJlYW1zOiBXcml0ZVN0cmVhbXMsIGdpdERhdGE6IEdpdERhdGEsIGhvbWU6IHN0cmluZyk6IFByb21pc2U8eyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfT4ge1xuICAgICAgICBjb25zdCBob21lRGlyID0gaG9tZS5yZXBsYWNlKC9cXC8kLywgXCJcIik7XG4gICAgICAgIGNvbnN0IHZhcmlhYmxlc0ZpbGUgPSBgJHtob21lRGlyfS8uZ2l0bGFiLWNpLWxvY2FsL3ZhcmlhYmxlcy55bWxgO1xuICAgICAgICBpZiAoIWZzLmV4aXN0c1N5bmModmFyaWFibGVzRmlsZSkpIHtcbiAgICAgICAgICAgIHJldHVybiB7fTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGRhdGE6IGFueSA9IHlhbWwubG9hZChhd2FpdCBmcy5yZWFkRmlsZSh2YXJpYWJsZXNGaWxlLCBcInV0ZjhcIiksIHtzY2hlbWE6IHlhbWwuRkFJTFNBRkVfU0NIRU1BfSk7XG4gICAgICAgIGxldCB2YXJpYWJsZXM6IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIH0gPSB7fTtcblxuICAgICAgICBmb3IgKGNvbnN0IFtnbG9iYWxLZXksIGdsb2JhbEVudHJ5XSBvZiBPYmplY3QuZW50cmllcyhkYXRhPy5nbG9iYWwgPz8gW10pKSB7XG4gICAgICAgICAgICBpZiAodHlwZW9mIGdsb2JhbEVudHJ5ICE9PSBcInN0cmluZ1wiKSB7XG4gICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB2YXJpYWJsZXNbZ2xvYmFsS2V5XSA9IGdsb2JhbEVudHJ5O1xuICAgICAgICB9XG5cbiAgICAgICAgY29uc3QgZ3JvdXBVcmwgPSBgJHtnaXREYXRhLnJlbW90ZS5ob3N0fS8ke2dpdERhdGEucmVtb3RlLmdyb3VwfS9gO1xuICAgICAgICBmb3IgKGNvbnN0IFtncm91cEtleSwgZ3JvdXBFbnRyaWVzXSBvZiBPYmplY3QuZW50cmllcyhkYXRhPy5ncm91cCA/PyBbXSkpIHtcbiAgICAgICAgICAgIGlmICghZ3JvdXBVcmwuaW5jbHVkZXModGhpcy5ub3JtYWxpemVQcm9qZWN0S2V5KGdyb3VwS2V5LCB3cml0ZVN0cmVhbXMpKSkge1xuICAgICAgICAgICAgICAgIGNvbnRpbnVlO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgaWYgKHR5cGVvZiBncm91cEVudHJpZXMgIT09IFwib2JqZWN0XCIpIHtcbiAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHZhcmlhYmxlcyA9IHsuLi52YXJpYWJsZXMsIC4uLmdyb3VwRW50cmllc307XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBwcm9qZWN0VXJsID0gYCR7Z2l0RGF0YS5yZW1vdGUuaG9zdH0vJHtnaXREYXRhLnJlbW90ZS5ncm91cH0vJHtnaXREYXRhLnJlbW90ZS5wcm9qZWN0fS5naXRgO1xuICAgICAgICBmb3IgKGNvbnN0IFtwcm9qZWN0S2V5LCBwcm9qZWN0RW50cmllc10gb2YgT2JqZWN0LmVudHJpZXMoZGF0YT8ucHJvamVjdCA/PyBbXSkpIHtcbiAgICAgICAgICAgIGlmICghcHJvamVjdFVybC5pbmNsdWRlcyh0aGlzLm5vcm1hbGl6ZVByb2plY3RLZXkocHJvamVjdEtleSwgd3JpdGVTdHJlYW1zKSkpIHtcbiAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICh0eXBlb2YgcHJvamVjdEVudHJpZXMgIT09IFwib2JqZWN0XCIpIHtcbiAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHZhcmlhYmxlcyA9IHsuLi52YXJpYWJsZXMsIC4uLnByb2plY3RFbnRyaWVzfTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHByb2plY3RWYXJpYWJsZXNGaWxlID0gYCR7Y3dkfS8uZ2l0bGFiLWNpLWxvY2FsL3ZhcmlhYmxlcy55bWxgO1xuXG4gICAgICAgIGlmIChmcy5leGlzdHNTeW5jKHByb2plY3RWYXJpYWJsZXNGaWxlKSkge1xuICAgICAgICAgICAgY29uc3QgcHJvamVjdEVudHJpZXM6IGFueSA9IHlhbWwubG9hZChhd2FpdCBmcy5yZWFkRmlsZShwcm9qZWN0VmFyaWFibGVzRmlsZSwgXCJ1dGY4XCIpLCB7c2NoZW1hOiB5YW1sLkZBSUxTQUZFX1NDSEVNQX0pID8/IHt9O1xuICAgICAgICAgICAgaWYgKHR5cGVvZiBwcm9qZWN0RW50cmllcyA9PT0gXCJvYmplY3RcIikge1xuICAgICAgICAgICAgICAgIHZhcmlhYmxlcyA9IHsuLi52YXJpYWJsZXMsIC4uLnByb2plY3RFbnRyaWVzfTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEdlbmVyYXRlIGZpbGVzIGZvciBmaWxlIHR5cGUgdmFyaWFibGVzXG4gICAgICAgIGZvciAoY29uc3QgW2tleSwgdmFsdWVdIG9mIE9iamVjdC5lbnRyaWVzKHZhcmlhYmxlcykpIHtcbiAgICAgICAgICAgIGlmICh0eXBlb2YgdmFsdWUgIT09IFwic3RyaW5nXCIpIHtcbiAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGlmICghdmFsdWUubWF0Y2goL15bL3x+XS8pKSB7XG4gICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGlmICh2YWx1ZS5tYXRjaCgvXFwvJC8pKSB7XG4gICAgICAgICAgICAgICAgY29udGludWU7XG4gICAgICAgICAgICB9XG5cbiAgICAgICAgICAgIGNvbnN0IGZyb21GaWxlUGF0aCA9IHZhbHVlLnJlcGxhY2UoL15+XFwvKC4qKS8sIGAke2hvbWVEaXJ9LyQxYCk7XG4gICAgICAgICAgICBpZiAoZnMuZXhpc3RzU3luYyhmcm9tRmlsZVBhdGgpKSB7XG4gICAgICAgICAgICAgICAgYXdhaXQgZnMuZW5zdXJlRGlyKGAvdG1wL2dpdGxhYi1jaS1sb2NhbC1maWxlLXZhcmlhYmxlcy0ke2dpdERhdGEuQ0lfUFJPSkVDVF9QQVRIX1NMVUd9L2ApO1xuICAgICAgICAgICAgICAgIGF3YWl0IGZzLmNvcHlGaWxlKGZyb21GaWxlUGF0aCwgYC90bXAvZ2l0bGFiLWNpLWxvY2FsLWZpbGUtdmFyaWFibGVzLSR7Z2l0RGF0YS5DSV9QUk9KRUNUX1BBVEhfU0xVR30vJHtwYXRoLmJhc2VuYW1lKGZyb21GaWxlUGF0aCl9YCk7XG4gICAgICAgICAgICAgICAgdmFyaWFibGVzW2tleV0gPSBgL3RtcC9naXRsYWItY2ktbG9jYWwtZmlsZS12YXJpYWJsZXMtJHtnaXREYXRhLkNJX1BST0pFQ1RfUEFUSF9TTFVHfS8ke3BhdGguYmFzZW5hbWUoZnJvbUZpbGVQYXRoKX1gO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgcmV0dXJuIHZhcmlhYmxlcztcbiAgICB9XG5cbiAgICBzdGF0aWMgbm9ybWFsaXplUHJvamVjdEtleShrZXk6IHN0cmluZywgd3JpdGVTdHJlYW1zOiBXcml0ZVN0cmVhbXMpOiBzdHJpbmcge1xuICAgICAgICBpZiAoIWtleS5pbmNsdWRlcyhcIjpcIikpIHJldHVybiBrZXk7XG4gICAgICAgIHdyaXRlU3RyZWFtcy5zdGRlcnIoY2hhbGtge3llbGxvdyBXQVJOSU5HOiBJbnRlcnByZXRpbmcgJyR7a2V5fScgYXMgJyR7a2V5LnJlcGxhY2UoXCI6XCIsIFwiL1wiKX0nfVxcbmApO1xuICAgICAgICByZXR1cm4ga2V5LnJlcGxhY2UoXCI6XCIsIFwiL1wiKTtcbiAgICB9XG59XG4iXX0=
|