@catladder/pipeline 0.0.7 → 1.0.2
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/babel-inline.json +11 -0
- package/bin/catladder-gitlab.js +3 -0
- package/dist/build/base/constants.d.ts +7 -0
- package/dist/build/base/constants.js +11 -0
- package/dist/build/base/createBuildJob.d.ts +5 -0
- package/dist/build/base/createBuildJob.js +99 -0
- package/dist/build/docker.d.ts +5 -0
- package/dist/build/docker.js +95 -0
- package/dist/build/index.d.ts +12 -0
- package/dist/build/index.js +63 -0
- package/dist/build/node/buildJob.d.ts +3 -0
- package/dist/build/node/buildJob.js +97 -0
- package/dist/build/node/cache.d.ts +4 -0
- package/dist/build/node/cache.js +67 -0
- package/dist/build/node/constants.d.ts +6 -0
- package/dist/build/node/constants.js +10 -0
- package/dist/build/node/index.d.ts +5 -0
- package/dist/build/node/index.js +63 -0
- package/dist/build/node/meteor.d.ts +3 -0
- package/dist/build/node/meteor.js +103 -0
- package/dist/build/node/testJob.d.ts +3 -0
- package/dist/build/node/testJob.js +112 -0
- package/dist/build/node/yarn.d.ts +2 -0
- package/dist/build/node/yarn.js +12 -0
- package/dist/build/tests/storybook.test.d.ts +1 -0
- package/dist/build/tests/storybook.test.js +221 -0
- package/dist/build/types.d.ts +63 -0
- package/dist/build/types.js +16 -0
- package/dist/catladder-gitlab.d.ts +1 -0
- package/dist/catladder-gitlab.js +44 -0
- package/dist/config/configruedEnvs.d.ts +4 -0
- package/dist/config/configruedEnvs.js +86 -0
- package/dist/config/configruedEnvs.test.d.ts +1 -0
- package/dist/config/configruedEnvs.test.js +103 -0
- package/dist/config/index.d.ts +2 -0
- package/dist/config/index.js +24 -0
- package/dist/config/readConfig.d.ts +2 -0
- package/dist/config/readConfig.js +47 -0
- package/dist/constants.d.ts +2 -0
- package/dist/constants.js +6 -0
- package/dist/context/index.d.ts +5 -0
- package/dist/context/index.js +211 -0
- package/dist/defaults/index.d.ts +2 -0
- package/dist/defaults/index.js +8 -0
- package/dist/deploy/base.d.ts +9 -0
- package/dist/deploy/base.js +94 -0
- package/dist/deploy/index.d.ts +11 -0
- package/dist/deploy/index.js +34 -0
- package/dist/deploy/kubernetes/cloudsql.d.ts +6 -0
- package/dist/deploy/kubernetes/cloudsql.js +16 -0
- package/dist/deploy/kubernetes/deployJob.d.ts +3 -0
- package/dist/deploy/kubernetes/deployJob.js +148 -0
- package/dist/deploy/kubernetes/index.d.ts +1 -0
- package/dist/deploy/kubernetes/index.js +22 -0
- package/dist/deploy/kubernetes/mongodb.d.ts +15 -0
- package/dist/deploy/kubernetes/mongodb.js +23 -0
- package/dist/deploy/types.d.ts +92 -0
- package/dist/deploy/types.js +16 -0
- package/dist/index.d.ts +8 -0
- package/dist/index.js +36 -0
- package/dist/pipeline/createChildPipeline.d.ts +9 -0
- package/dist/pipeline/createChildPipeline.js +266 -0
- package/dist/pipeline/createChildPipeline.test.d.ts +1 -0
- package/dist/pipeline/createChildPipeline.test.js +199 -0
- package/dist/pipeline/createJobs.d.ts +3 -0
- package/dist/pipeline/createJobs.js +331 -0
- package/dist/pipeline/index.d.ts +2 -0
- package/dist/pipeline/index.js +24 -0
- package/dist/pipeline/yarnInfo.d.ts +2 -0
- package/dist/pipeline/yarnInfo.js +296 -0
- package/dist/rules/index.d.ts +3 -0
- package/dist/rules/index.js +27 -0
- package/dist/runner/index.d.ts +3 -0
- package/dist/runner/index.js +12 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/dist/types/config.d.ts +73 -0
- package/dist/types/config.js +80 -0
- package/dist/types/context.d.ts +36 -0
- package/dist/types/context.js +3 -0
- package/dist/types/gitlab-types.d.ts +86 -0
- package/dist/types/gitlab-types.js +5 -0
- package/dist/{scripts/magic/types → types}/index.d.ts +1 -1
- package/dist/types/index.js +26 -0
- package/dist/utils/index.d.ts +2 -0
- package/dist/utils/index.js +18 -0
- package/package.json +30 -9
- package/src/build/base/constants.ts +7 -0
- package/src/build/base/createBuildJob.ts +46 -0
- package/{scripts/magic → src}/build/docker.ts +15 -2
- package/src/build/index.ts +42 -0
- package/src/build/node/buildJob.ts +54 -0
- package/src/build/node/cache.ts +36 -0
- package/src/build/node/constants.ts +6 -0
- package/src/build/node/index.ts +17 -0
- package/src/build/node/meteor.ts +75 -0
- package/src/build/node/testJob.ts +80 -0
- package/src/build/node/yarn.ts +8 -0
- package/src/build/tests/storybook.test.ts +46 -0
- package/src/build/types.ts +75 -0
- package/src/catladder-gitlab.ts +52 -0
- package/src/config/configruedEnvs.test.ts +97 -0
- package/src/config/configruedEnvs.ts +56 -0
- package/src/config/index.ts +2 -0
- package/src/config/readConfig.ts +36 -0
- package/src/constants.ts +2 -0
- package/src/context/index.ts +194 -0
- package/src/defaults/index.ts +6 -0
- package/src/deploy/base.ts +101 -0
- package/src/deploy/index.ts +19 -0
- package/src/deploy/kubernetes/cloudsql.ts +13 -0
- package/src/deploy/kubernetes/deployJob.ts +116 -0
- package/src/deploy/kubernetes/index.ts +1 -0
- package/src/deploy/kubernetes/mongodb.ts +20 -0
- package/src/deploy/types.ts +60 -0
- package/src/index.ts +8 -0
- package/{scripts/magic/tests/createPipeline.test.ts → src/pipeline/createChildPipeline.test.ts} +5 -4
- package/src/pipeline/createChildPipeline.ts +51 -0
- package/src/pipeline/createJobs.ts +158 -0
- package/src/pipeline/index.ts +2 -0
- package/src/pipeline/yarnInfo.ts +54 -0
- package/src/rules/index.ts +37 -0
- package/src/runner/index.ts +10 -0
- package/src/types/config.ts +88 -0
- package/src/types/context.ts +36 -0
- package/src/types/gitlab-types.ts +94 -0
- package/{scripts/magic → src}/types/index.ts +0 -0
- package/src/utils/index.ts +10 -0
- package/tsconfig.json +4 -2
- package/Dockerfile +0 -84
- package/dist/scripts/createSamplePipeline.d.ts +0 -2
- package/dist/scripts/createSamplePipeline.js +0 -14
- package/dist/scripts/magic/build/docker.d.ts +0 -2
- package/dist/scripts/magic/build/docker.js +0 -68
- package/dist/scripts/magic/build/index.d.ts +0 -9
- package/dist/scripts/magic/build/index.js +0 -12
- package/dist/scripts/magic/build/node.d.ts +0 -6
- package/dist/scripts/magic/build/node.js +0 -150
- package/dist/scripts/magic/build/types.d.ts +0 -18
- package/dist/scripts/magic/build/types.js +0 -7
- package/dist/scripts/magic/context/index.d.ts +0 -3
- package/dist/scripts/magic/context/index.js +0 -122
- package/dist/scripts/magic/createChildPipeline/index.d.ts +0 -3
- package/dist/scripts/magic/createChildPipeline/index.js +0 -68
- package/dist/scripts/magic/createPipeline.d.ts +0 -14
- package/dist/scripts/magic/createPipeline.js +0 -80
- package/dist/scripts/magic/deploy/index.d.ts +0 -9
- package/dist/scripts/magic/deploy/index.js +0 -12
- package/dist/scripts/magic/deploy/kubernetes.d.ts +0 -5
- package/dist/scripts/magic/deploy/kubernetes.js +0 -62
- package/dist/scripts/magic/deploy/types.d.ts +0 -41
- package/dist/scripts/magic/deploy/types.js +0 -7
- package/dist/scripts/magic/index.d.ts +0 -2
- package/dist/scripts/magic/index.js +0 -16
- package/dist/scripts/magic/sample-config.d.ts +0 -3
- package/dist/scripts/magic/sample-config.js +0 -77
- package/dist/scripts/magic/tests/createPipeline.test.d.ts +0 -1
- package/dist/scripts/magic/tests/createPipeline.test.js +0 -89
- package/dist/scripts/magic/types/config.d.ts +0 -49
- package/dist/scripts/magic/types/config.js +0 -17
- package/dist/scripts/magic/types/context.d.ts +0 -19
- package/dist/scripts/magic/types/context.js +0 -2
- package/dist/scripts/magic/types/gitlab-types.d.ts +0 -57
- package/dist/scripts/magic/types/gitlab-types.js +0 -2
- package/dist/scripts/magic/types/index.js +0 -15
- package/dist/scripts/magic.d.ts +0 -2
- package/dist/scripts/magic.js +0 -43
- package/dist/scripts/monorepoGenerate.d.ts +0 -2
- package/dist/scripts/monorepoGenerate.js +0 -164
- package/dist/scripts/printAllValues.d.ts +0 -2
- package/dist/scripts/printAllValues.js +0 -58
- package/dist/scripts/printBuildEnv.d.ts +0 -2
- package/dist/scripts/printBuildEnv.js +0 -77
- package/dist/scripts/utils/extractAllValues.d.ts +0 -1
- package/dist/scripts/utils/extractAllValues.js +0 -78
- package/dist/scripts/utils/extractBuildEnv.d.ts +0 -5
- package/dist/scripts/utils/extractBuildEnv.js +0 -152
- package/dist/scripts/utils/extractValuesFromEnvVars.d.ts +0 -2
- package/dist/scripts/utils/extractValuesFromEnvVars.js +0 -63
- package/dist/scripts/utils/extractValuesFromMr.d.ts +0 -2
- package/dist/scripts/utils/extractValuesFromMr.js +0 -86
- package/dist/tests/extractValuesFromMr.test.d.ts +0 -1
- package/dist/tests/extractValuesFromMr.test.js +0 -68
- package/scripts/createSamplePipeline.ts +0 -10
- package/scripts/getCommitInfo +0 -11
- package/scripts/kubernetesCreateSecret +0 -9
- package/scripts/kubernetesDelete +0 -4
- package/scripts/kubernetesDeploy +0 -55
- package/scripts/kubernetesEnsureNamespace +0 -3
- package/scripts/magic/build/index.ts +0 -18
- package/scripts/magic/build/node.ts +0 -143
- package/scripts/magic/build/types.ts +0 -21
- package/scripts/magic/context/index.ts +0 -127
- package/scripts/magic/createChildPipeline/index.ts +0 -60
- package/scripts/magic/createPipeline.ts +0 -52
- package/scripts/magic/deploy/index.ts +0 -19
- package/scripts/magic/deploy/kubernetes.ts +0 -65
- package/scripts/magic/deploy/types.ts +0 -29
- package/scripts/magic/index.ts +0 -2
- package/scripts/magic/sample-config.ts +0 -78
- package/scripts/magic/types/config.ts +0 -54
- package/scripts/magic/types/context.ts +0 -21
- package/scripts/magic/types/gitlab-types.ts +0 -69
- package/scripts/magic.ts +0 -51
- package/scripts/monorepoGenerate.ts +0 -104
- package/scripts/printAllValues.ts +0 -17
- package/scripts/printBuildEnv.ts +0 -22
- package/scripts/utils/extractAllValues.ts +0 -32
- package/scripts/utils/extractBuildEnv.ts +0 -94
- package/scripts/utils/extractValuesFromEnvVars.ts +0 -21
- package/scripts/utils/extractValuesFromMr.ts +0 -39
- package/tests/extractValuesFromMr.test.ts +0 -156
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
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 __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
10
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
11
|
-
};
|
|
12
|
-
exports.__esModule = true;
|
|
13
|
-
__exportStar(require("./config"), exports);
|
|
14
|
-
__exportStar(require("./gitlab-types"), exports);
|
|
15
|
-
__exportStar(require("./context"), exports);
|
package/dist/scripts/magic.d.ts
DELETED
package/dist/scripts/magic.js
DELETED
|
@@ -1,43 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env ts-node
|
|
2
|
-
"use strict";
|
|
3
|
-
exports.__esModule = true;
|
|
4
|
-
var fs_1 = require("fs");
|
|
5
|
-
var yaml_1 = require("yaml");
|
|
6
|
-
var createPipeline_1 = require("./magic/createPipeline");
|
|
7
|
-
var _a = process.env, CI_MERGE_REQUEST_ID = _a.CI_MERGE_REQUEST_ID, CI_COMMIT_TAG = _a.CI_COMMIT_TAG, CI_COMMIT_BRANCH = _a.CI_COMMIT_BRANCH, CI_DEFAULT_BRANCH = _a.CI_DEFAULT_BRANCH;
|
|
8
|
-
var isDefaultBranch = CI_COMMIT_BRANCH == CI_DEFAULT_BRANCH;
|
|
9
|
-
var isHotfixBranch = false; // TODO: $CI_COMMIT_BRANCH =~ /^[0-9]+\.([0-9]+|x)\.x$/
|
|
10
|
-
var isMergeRequest = Boolean(CI_MERGE_REQUEST_ID);
|
|
11
|
-
var isTaggedRelease = Boolean(CI_COMMIT_TAG);
|
|
12
|
-
var fullPath = function (ext) { return process.cwd() + "/catladder." + ext; };
|
|
13
|
-
var readConfig = function () {
|
|
14
|
-
var found = ["ts", "js", "yml", "yaml"].find(function (extension) {
|
|
15
|
-
return fs_1.existsSync(fullPath(extension));
|
|
16
|
-
});
|
|
17
|
-
if (found) {
|
|
18
|
-
if (found === "ts" || found === "js") {
|
|
19
|
-
return require(fullPath(found))["default"];
|
|
20
|
-
}
|
|
21
|
-
else {
|
|
22
|
-
return yaml_1.parse(fullPath(found));
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
};
|
|
26
|
-
var trigger = isMergeRequest || isHotfixBranch
|
|
27
|
-
? "mr"
|
|
28
|
-
: isDefaultBranch
|
|
29
|
-
? "mainBranch"
|
|
30
|
-
: isTaggedRelease
|
|
31
|
-
? "taggedRelease"
|
|
32
|
-
: null;
|
|
33
|
-
if (trigger) {
|
|
34
|
-
var config = readConfig();
|
|
35
|
-
createPipeline_1.createPipeline(trigger, config).then(function (mainPipeline) {
|
|
36
|
-
fs_1.writeFileSync("__pipeline.yml", JSON.stringify(mainPipeline, null, 2), {
|
|
37
|
-
encoding: "utf-8"
|
|
38
|
-
});
|
|
39
|
-
});
|
|
40
|
-
}
|
|
41
|
-
else {
|
|
42
|
-
throw new Error("no matching trigger");
|
|
43
|
-
}
|
|
@@ -1,164 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env ts-node
|
|
2
|
-
"use strict";
|
|
3
|
-
var __assign = (this && this.__assign) || function () {
|
|
4
|
-
__assign = Object.assign || function(t) {
|
|
5
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
6
|
-
s = arguments[i];
|
|
7
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
8
|
-
t[p] = s[p];
|
|
9
|
-
}
|
|
10
|
-
return t;
|
|
11
|
-
};
|
|
12
|
-
return __assign.apply(this, arguments);
|
|
13
|
-
};
|
|
14
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
15
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
16
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
17
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
18
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
19
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
20
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
21
|
-
});
|
|
22
|
-
};
|
|
23
|
-
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
24
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
25
|
-
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
26
|
-
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
27
|
-
function step(op) {
|
|
28
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
29
|
-
while (_) try {
|
|
30
|
-
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
31
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
32
|
-
switch (op[0]) {
|
|
33
|
-
case 0: case 1: t = op; break;
|
|
34
|
-
case 4: _.label++; return { value: op[1], done: false };
|
|
35
|
-
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
36
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
37
|
-
default:
|
|
38
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
39
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
40
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
41
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
42
|
-
if (t[2]) _.ops.pop();
|
|
43
|
-
_.trys.pop(); continue;
|
|
44
|
-
}
|
|
45
|
-
op = body.call(thisArg, _);
|
|
46
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
47
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
48
|
-
}
|
|
49
|
-
};
|
|
50
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
51
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
52
|
-
};
|
|
53
|
-
exports.__esModule = true;
|
|
54
|
-
var fs_1 = require("fs");
|
|
55
|
-
var path_1 = require("path");
|
|
56
|
-
var yaml_1 = require("yaml");
|
|
57
|
-
var yargs_1 = __importDefault(require("yargs"));
|
|
58
|
-
var helpers_1 = require("yargs/helpers");
|
|
59
|
-
var extractBuildEnv_1 = require("./utils/extractBuildEnv");
|
|
60
|
-
var args = yargs_1["default"](helpers_1.hideBin(process.argv)).array("env").argv;
|
|
61
|
-
var thisGitlabCi = yaml_1.parse(fs_1.readFileSync(".gitlab-ci.yml", { encoding: "utf-8" }));
|
|
62
|
-
var subcis = fs_1.readdirSync(".")
|
|
63
|
-
.filter(function (file) { return fs_1.lstatSync(file).isDirectory(); })
|
|
64
|
-
.map(function (dir) { return ({
|
|
65
|
-
dirname: dir,
|
|
66
|
-
ci: path_1.join(dir, ".gitlab-ci.yml")
|
|
67
|
-
}); })
|
|
68
|
-
.filter(function (_a) {
|
|
69
|
-
var ci = _a.ci;
|
|
70
|
-
return fs_1.existsSync(ci);
|
|
71
|
-
});
|
|
72
|
-
var makeConfig = function (_a) {
|
|
73
|
-
var subapp = _a.subapp, type = _a.type, ci = _a.ci, env = _a.env;
|
|
74
|
-
return __awaiter(void 0, void 0, void 0, function () {
|
|
75
|
-
var changes, rules, _b;
|
|
76
|
-
var _c, _d;
|
|
77
|
-
return __generator(this, function (_e) {
|
|
78
|
-
switch (_e.label) {
|
|
79
|
-
case 0:
|
|
80
|
-
changes = [subapp + "/**/*"];
|
|
81
|
-
rules = [
|
|
82
|
-
// same as rules "always", but with `changes` to only trigger changed branches
|
|
83
|
-
{ "if": "$CI_COMMIT_TAG" },
|
|
84
|
-
{
|
|
85
|
-
"if": "$CI_COMMIT_MESSAGE =~ /^chore(release).*/",
|
|
86
|
-
when: "never"
|
|
87
|
-
},
|
|
88
|
-
{ "if": "$CI_COMMIT_BRANCH =~ /^[0-9]+.([0-9]+|x).x$/" },
|
|
89
|
-
{
|
|
90
|
-
"if": "$CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH",
|
|
91
|
-
changes: changes
|
|
92
|
-
},
|
|
93
|
-
// add it manually when no changes
|
|
94
|
-
{
|
|
95
|
-
"if": "$CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH",
|
|
96
|
-
when: "manual"
|
|
97
|
-
},
|
|
98
|
-
{ "if": "$CI_MERGE_REQUEST_ID", changes: changes },
|
|
99
|
-
// add it manually when no changes
|
|
100
|
-
{ "if": "$CI_MERGE_REQUEST_ID", when: "manual" },
|
|
101
|
-
];
|
|
102
|
-
_c = {};
|
|
103
|
-
_b = [__assign(__assign({}, thisGitlabCi.variables), (_d = { APP_DIR: subapp, VALUES_DIR: subapp, COMPONENT_NAME: subapp, PARENT_PIPELINE_ID: "$CI_PIPELINE_ID" }, _d[type.toUpperCase() + "_ONLY"] = "1", _d))];
|
|
104
|
-
return [4 /*yield*/, extractBuildEnv_1.extractBuildEnv(subapp, env)];
|
|
105
|
-
case 1: return [2 /*return*/, (_c.variables = __assign.apply(void 0, _b.concat([(_e.sent())])),
|
|
106
|
-
_c.stage = type,
|
|
107
|
-
_c.rules = rules,
|
|
108
|
-
_c.trigger = {
|
|
109
|
-
include: ci,
|
|
110
|
-
strategy: "depend"
|
|
111
|
-
},
|
|
112
|
-
_c)];
|
|
113
|
-
}
|
|
114
|
-
});
|
|
115
|
-
});
|
|
116
|
-
};
|
|
117
|
-
var generateSubPipeline = function (type, envs) { return __awaiter(void 0, void 0, void 0, function () {
|
|
118
|
-
return __generator(this, function (_a) {
|
|
119
|
-
switch (_a.label) {
|
|
120
|
-
case 0: return [4 /*yield*/, envs.reduce(function (acc, env) { return __awaiter(void 0, void 0, void 0, function () {
|
|
121
|
-
var _a, _b;
|
|
122
|
-
return __generator(this, function (_c) {
|
|
123
|
-
switch (_c.label) {
|
|
124
|
-
case 0:
|
|
125
|
-
_a = [{}];
|
|
126
|
-
return [4 /*yield*/, acc];
|
|
127
|
-
case 1:
|
|
128
|
-
_b = [__assign.apply(void 0, _a.concat([(_c.sent())]))];
|
|
129
|
-
return [4 /*yield*/, subcis.reduce(function (inneracc, _a) {
|
|
130
|
-
var dirname = _a.dirname, ci = _a.ci;
|
|
131
|
-
return __awaiter(void 0, void 0, void 0, function () {
|
|
132
|
-
var _b, _c, _d;
|
|
133
|
-
var _e;
|
|
134
|
-
return __generator(this, function (_f) {
|
|
135
|
-
switch (_f.label) {
|
|
136
|
-
case 0:
|
|
137
|
-
_b = [{}];
|
|
138
|
-
return [4 /*yield*/, inneracc];
|
|
139
|
-
case 1:
|
|
140
|
-
_c = [__assign.apply(void 0, _b.concat([(_f.sent())]))];
|
|
141
|
-
_e = {};
|
|
142
|
-
_d = env + "-" + dirname + " " + type;
|
|
143
|
-
return [4 /*yield*/, makeConfig({
|
|
144
|
-
subapp: dirname,
|
|
145
|
-
ci: ci,
|
|
146
|
-
type: type,
|
|
147
|
-
env: env
|
|
148
|
-
})];
|
|
149
|
-
case 2: return [2 /*return*/, (__assign.apply(void 0, _c.concat([(_e[_d] = _f.sent(), _e)])))];
|
|
150
|
-
}
|
|
151
|
-
});
|
|
152
|
-
});
|
|
153
|
-
}, {})];
|
|
154
|
-
case 2: return [2 /*return*/, __assign.apply(void 0, _b.concat([(_c.sent())]))];
|
|
155
|
-
}
|
|
156
|
-
});
|
|
157
|
-
}); }, {})];
|
|
158
|
-
case 1: return [2 /*return*/, _a.sent()];
|
|
159
|
-
}
|
|
160
|
-
});
|
|
161
|
-
}); };
|
|
162
|
-
generateSubPipeline(args.t, args.env).then(function (p) {
|
|
163
|
-
return console.log(JSON.stringify(p, null, 2));
|
|
164
|
-
});
|
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env ts-node
|
|
2
|
-
"use strict";
|
|
3
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
4
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
5
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
6
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
7
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
8
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
9
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
10
|
-
});
|
|
11
|
-
};
|
|
12
|
-
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
13
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
14
|
-
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
15
|
-
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
16
|
-
function step(op) {
|
|
17
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
18
|
-
while (_) try {
|
|
19
|
-
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
20
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
21
|
-
switch (op[0]) {
|
|
22
|
-
case 0: case 1: t = op; break;
|
|
23
|
-
case 4: _.label++; return { value: op[1], done: false };
|
|
24
|
-
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
25
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
26
|
-
default:
|
|
27
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
28
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
29
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
30
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
31
|
-
if (t[2]) _.ops.pop();
|
|
32
|
-
_.trys.pop(); continue;
|
|
33
|
-
}
|
|
34
|
-
op = body.call(thisArg, _);
|
|
35
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
36
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
37
|
-
}
|
|
38
|
-
};
|
|
39
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
40
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
41
|
-
};
|
|
42
|
-
exports.__esModule = true;
|
|
43
|
-
var yargs_1 = __importDefault(require("yargs"));
|
|
44
|
-
var helpers_1 = require("yargs/helpers");
|
|
45
|
-
var extractAllValues_1 = require("./utils/extractAllValues");
|
|
46
|
-
var args = yargs_1["default"](helpers_1.hideBin(process.argv)).argv;
|
|
47
|
-
extractAllValues_1.extractAllValues(args.d, args.e)
|
|
48
|
-
.then(function (values) { return __awaiter(void 0, void 0, void 0, function () {
|
|
49
|
-
var _a;
|
|
50
|
-
return __generator(this, function (_b) {
|
|
51
|
-
console.log((_a = JSON.stringify(values, null, 2)) !== null && _a !== void 0 ? _a : "");
|
|
52
|
-
return [2 /*return*/];
|
|
53
|
-
});
|
|
54
|
-
}); })["catch"](function (e) {
|
|
55
|
-
console.error("could not extract values", {
|
|
56
|
-
error: e
|
|
57
|
-
});
|
|
58
|
-
});
|
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
#!/usr/bin/env ts-node
|
|
2
|
-
"use strict";
|
|
3
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
4
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
5
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
6
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
7
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
8
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
9
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
10
|
-
});
|
|
11
|
-
};
|
|
12
|
-
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
13
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
14
|
-
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
15
|
-
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
16
|
-
function step(op) {
|
|
17
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
18
|
-
while (_) try {
|
|
19
|
-
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
20
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
21
|
-
switch (op[0]) {
|
|
22
|
-
case 0: case 1: t = op; break;
|
|
23
|
-
case 4: _.label++; return { value: op[1], done: false };
|
|
24
|
-
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
25
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
26
|
-
default:
|
|
27
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
28
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
29
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
30
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
31
|
-
if (t[2]) _.ops.pop();
|
|
32
|
-
_.trys.pop(); continue;
|
|
33
|
-
}
|
|
34
|
-
op = body.call(thisArg, _);
|
|
35
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
36
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
37
|
-
}
|
|
38
|
-
};
|
|
39
|
-
var __read = (this && this.__read) || function (o, n) {
|
|
40
|
-
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
41
|
-
if (!m) return o;
|
|
42
|
-
var i = m.call(o), r, ar = [], e;
|
|
43
|
-
try {
|
|
44
|
-
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
45
|
-
}
|
|
46
|
-
catch (error) { e = { error: error }; }
|
|
47
|
-
finally {
|
|
48
|
-
try {
|
|
49
|
-
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
50
|
-
}
|
|
51
|
-
finally { if (e) throw e.error; }
|
|
52
|
-
}
|
|
53
|
-
return ar;
|
|
54
|
-
};
|
|
55
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
56
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
57
|
-
};
|
|
58
|
-
exports.__esModule = true;
|
|
59
|
-
var lodash_1 = require("lodash");
|
|
60
|
-
var yargs_1 = __importDefault(require("yargs"));
|
|
61
|
-
var helpers_1 = require("yargs/helpers");
|
|
62
|
-
var extractBuildEnv_1 = require("./utils/extractBuildEnv");
|
|
63
|
-
var args = yargs_1["default"](helpers_1.hideBin(process.argv)).argv;
|
|
64
|
-
extractBuildEnv_1.extractBuildEnv(args.d, args.e)
|
|
65
|
-
.then(function (values) { return __awaiter(void 0, void 0, void 0, function () {
|
|
66
|
-
return __generator(this, function (_a) {
|
|
67
|
-
Object.entries(values).forEach(function (_a) {
|
|
68
|
-
var _b = __read(_a, 2), key = _b[0], value = _b[1];
|
|
69
|
-
return console.log(key + ": \"" + (lodash_1.isObject(value) ? JSON.stringify(value) : value) + "\"");
|
|
70
|
-
});
|
|
71
|
-
return [2 /*return*/];
|
|
72
|
-
});
|
|
73
|
-
}); })["catch"](function (e) {
|
|
74
|
-
console.error("could not extract values", {
|
|
75
|
-
error: e
|
|
76
|
-
});
|
|
77
|
-
});
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare const extractAllValues: (appDirectory: string, env: string | null) => Promise<any>;
|
|
@@ -1,78 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
-
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
-
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
-
function step(op) {
|
|
16
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
-
while (_) try {
|
|
18
|
-
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
-
switch (op[0]) {
|
|
21
|
-
case 0: case 1: t = op; break;
|
|
22
|
-
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
-
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
-
default:
|
|
26
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
-
if (t[2]) _.ops.pop();
|
|
31
|
-
_.trys.pop(); continue;
|
|
32
|
-
}
|
|
33
|
-
op = body.call(thisArg, _);
|
|
34
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
-
}
|
|
37
|
-
};
|
|
38
|
-
exports.__esModule = true;
|
|
39
|
-
exports.extractAllValues = void 0;
|
|
40
|
-
var fs_1 = require("fs");
|
|
41
|
-
var lodash_1 = require("lodash");
|
|
42
|
-
var yaml_1 = require("yaml");
|
|
43
|
-
var extractValuesFromEnvVars_1 = require("./extractValuesFromEnvVars");
|
|
44
|
-
var extractValuesFromMr_1 = require("./extractValuesFromMr");
|
|
45
|
-
var _a = process.env, CI_PROJECT_ID = _a.CI_PROJECT_ID, CI_MERGE_REQUEST_IID = _a.CI_MERGE_REQUEST_IID;
|
|
46
|
-
var readYaml = function (path) {
|
|
47
|
-
try {
|
|
48
|
-
return yaml_1.parse(fs_1.readFileSync(path, { encoding: "utf-8" }));
|
|
49
|
-
}
|
|
50
|
-
catch (e) {
|
|
51
|
-
return {};
|
|
52
|
-
}
|
|
53
|
-
};
|
|
54
|
-
var extractAllValues = function (appDirectory, env) { return __awaiter(void 0, void 0, void 0, function () {
|
|
55
|
-
var valuesFromEnvVars, valuesDefault, valuesEnv, valuesFromMR, _a;
|
|
56
|
-
return __generator(this, function (_b) {
|
|
57
|
-
switch (_b.label) {
|
|
58
|
-
case 0:
|
|
59
|
-
valuesFromEnvVars = extractValuesFromEnvVars_1.extractValuesFromEnvVars();
|
|
60
|
-
valuesDefault = readYaml(appDirectory + "/values.yml");
|
|
61
|
-
valuesEnv = env
|
|
62
|
-
? readYaml(appDirectory + "/values-" + env + ".yml")
|
|
63
|
-
: {};
|
|
64
|
-
if (!(CI_PROJECT_ID && CI_MERGE_REQUEST_IID)) return [3 /*break*/, 2];
|
|
65
|
-
return [4 /*yield*/, extractValuesFromMr_1.extractValuesFromMr(CI_PROJECT_ID, Number(CI_MERGE_REQUEST_IID))];
|
|
66
|
-
case 1:
|
|
67
|
-
_a = _b.sent();
|
|
68
|
-
return [3 /*break*/, 3];
|
|
69
|
-
case 2:
|
|
70
|
-
_a = {};
|
|
71
|
-
_b.label = 3;
|
|
72
|
-
case 3:
|
|
73
|
-
valuesFromMR = _a;
|
|
74
|
-
return [2 /*return*/, lodash_1.merge({}, valuesFromEnvVars, valuesDefault, valuesEnv, valuesFromMR)];
|
|
75
|
-
}
|
|
76
|
-
});
|
|
77
|
-
}); };
|
|
78
|
-
exports.extractAllValues = extractAllValues;
|
|
@@ -1,152 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __assign = (this && this.__assign) || function () {
|
|
3
|
-
__assign = Object.assign || function(t) {
|
|
4
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
-
s = arguments[i];
|
|
6
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
-
t[p] = s[p];
|
|
8
|
-
}
|
|
9
|
-
return t;
|
|
10
|
-
};
|
|
11
|
-
return __assign.apply(this, arguments);
|
|
12
|
-
};
|
|
13
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
14
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
15
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
16
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
17
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
18
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
19
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
20
|
-
});
|
|
21
|
-
};
|
|
22
|
-
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
23
|
-
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
24
|
-
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
25
|
-
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
26
|
-
function step(op) {
|
|
27
|
-
if (f) throw new TypeError("Generator is already executing.");
|
|
28
|
-
while (_) try {
|
|
29
|
-
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
30
|
-
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
31
|
-
switch (op[0]) {
|
|
32
|
-
case 0: case 1: t = op; break;
|
|
33
|
-
case 4: _.label++; return { value: op[1], done: false };
|
|
34
|
-
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
35
|
-
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
36
|
-
default:
|
|
37
|
-
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
38
|
-
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
39
|
-
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
40
|
-
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
41
|
-
if (t[2]) _.ops.pop();
|
|
42
|
-
_.trys.pop(); continue;
|
|
43
|
-
}
|
|
44
|
-
op = body.call(thisArg, _);
|
|
45
|
-
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
46
|
-
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
47
|
-
}
|
|
48
|
-
};
|
|
49
|
-
var __read = (this && this.__read) || function (o, n) {
|
|
50
|
-
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
51
|
-
if (!m) return o;
|
|
52
|
-
var i = m.call(o), r, ar = [], e;
|
|
53
|
-
try {
|
|
54
|
-
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
55
|
-
}
|
|
56
|
-
catch (error) { e = { error: error }; }
|
|
57
|
-
finally {
|
|
58
|
-
try {
|
|
59
|
-
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
60
|
-
}
|
|
61
|
-
finally { if (e) throw e.error; }
|
|
62
|
-
}
|
|
63
|
-
return ar;
|
|
64
|
-
};
|
|
65
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
66
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
67
|
-
};
|
|
68
|
-
exports.__esModule = true;
|
|
69
|
-
exports.extractBuildEnv = void 0;
|
|
70
|
-
var extractAllValues_1 = require("./extractAllValues");
|
|
71
|
-
var slugify_1 = __importDefault(require("slugify"));
|
|
72
|
-
var extractBuildEnv = function (componentName, env, visitedReferencedApps // this is just to avoid infinit recursion
|
|
73
|
-
) {
|
|
74
|
-
if (visitedReferencedApps === void 0) { visitedReferencedApps = {}; }
|
|
75
|
-
return __awaiter(void 0, void 0, void 0, function () {
|
|
76
|
-
var values, _a, APP_NAME, CUSTOMER_NAME, CI_COMMIT_REF_SLUG, CI_MERGE_REQUEST_IID, CI_ENVIRONMENT_SLUG, isNotMonorepo, KUBE_APP_NAME, KUBE_APP_SLUG, CANONICAL_URL, defaultBuildEnv, publicBuildEnv, merged, fromComponents, referencedBuildEnv;
|
|
77
|
-
var _b, _c, _d, _e, _f;
|
|
78
|
-
return __generator(this, function (_g) {
|
|
79
|
-
switch (_g.label) {
|
|
80
|
-
case 0: return [4 /*yield*/, extractAllValues_1.extractAllValues(componentName, env)];
|
|
81
|
-
case 1:
|
|
82
|
-
values = _g.sent();
|
|
83
|
-
_a = process.env, APP_NAME = _a.APP_NAME, CUSTOMER_NAME = _a.CUSTOMER_NAME, CI_COMMIT_REF_SLUG = _a.CI_COMMIT_REF_SLUG, CI_MERGE_REQUEST_IID = _a.CI_MERGE_REQUEST_IID, CI_ENVIRONMENT_SLUG = _a.CI_ENVIRONMENT_SLUG;
|
|
84
|
-
isNotMonorepo = componentName === ".";
|
|
85
|
-
KUBE_APP_NAME = CI_MERGE_REQUEST_IID
|
|
86
|
-
? componentName + "-" + CI_COMMIT_REF_SLUG
|
|
87
|
-
: componentName;
|
|
88
|
-
KUBE_APP_SLUG = isNotMonorepo
|
|
89
|
-
? CI_ENVIRONMENT_SLUG
|
|
90
|
-
: slugify_1["default"](KUBE_APP_NAME);
|
|
91
|
-
CANONICAL_URL = "https://" + APP_NAME + "-" + KUBE_APP_SLUG + "." + CUSTOMER_NAME + ".panter.cloud";
|
|
92
|
-
defaultBuildEnv = {
|
|
93
|
-
KUBE_APP_NAME: KUBE_APP_NAME,
|
|
94
|
-
CANONICAL_URL: CANONICAL_URL,
|
|
95
|
-
IMAGE_PULL_SECRET: "gitlab-registry-" + componentName,
|
|
96
|
-
ROOT_URL: ((_b = values === null || values === void 0 ? void 0 : values.application) === null || _b === void 0 ? void 0 : _b.host) || CANONICAL_URL
|
|
97
|
-
};
|
|
98
|
-
publicBuildEnv = (_d = (_c = values === null || values === void 0 ? void 0 : values.buildEnv) === null || _c === void 0 ? void 0 : _c.public) !== null && _d !== void 0 ? _d : {};
|
|
99
|
-
merged = __assign(__assign({}, defaultBuildEnv), publicBuildEnv);
|
|
100
|
-
if (process.env.DEBUG) {
|
|
101
|
-
console.log({ values: values, defaultBuildEnv: defaultBuildEnv, publicBuildEnv: publicBuildEnv });
|
|
102
|
-
}
|
|
103
|
-
fromComponents = (_f = (_e = values === null || values === void 0 ? void 0 : values.buildEnv) === null || _e === void 0 ? void 0 : _e.fromComponents) !== null && _f !== void 0 ? _f : {};
|
|
104
|
-
return [4 /*yield*/, Object.entries(fromComponents).reduce(function (acc, _a) {
|
|
105
|
-
var _b = __read(_a, 2), otherApp = _b[0], mapping = _b[1];
|
|
106
|
-
return __awaiter(void 0, void 0, void 0, function () {
|
|
107
|
-
var otherBuildEnv, _c, _d;
|
|
108
|
-
var _e;
|
|
109
|
-
var _f;
|
|
110
|
-
return __generator(this, function (_g) {
|
|
111
|
-
switch (_g.label) {
|
|
112
|
-
case 0:
|
|
113
|
-
if (process.env.DEBUG) {
|
|
114
|
-
console.log("extract reference build env", otherApp, mapping);
|
|
115
|
-
}
|
|
116
|
-
if (!!mapping) return [3 /*break*/, 2];
|
|
117
|
-
return [4 /*yield*/, acc];
|
|
118
|
-
case 1: return [2 /*return*/, _g.sent()];
|
|
119
|
-
case 2:
|
|
120
|
-
if (!((_f = visitedReferencedApps[otherApp]) !== null && _f !== void 0)) return [3 /*break*/, 3];
|
|
121
|
-
_c = _f;
|
|
122
|
-
return [3 /*break*/, 5];
|
|
123
|
-
case 3: return [4 /*yield*/, exports.extractBuildEnv(otherApp, env, __assign(__assign({}, visitedReferencedApps), (_e = {}, _e[componentName] = merged, _e)))];
|
|
124
|
-
case 4:
|
|
125
|
-
_c = (_g.sent());
|
|
126
|
-
_g.label = 5;
|
|
127
|
-
case 5:
|
|
128
|
-
otherBuildEnv = _c;
|
|
129
|
-
if (process.env.DEBUG) {
|
|
130
|
-
console.log({ otherBuildEnv: otherBuildEnv });
|
|
131
|
-
}
|
|
132
|
-
_d = [{}];
|
|
133
|
-
return [4 /*yield*/, acc];
|
|
134
|
-
case 6:
|
|
135
|
-
// resolve mapping
|
|
136
|
-
return [2 /*return*/, __assign.apply(void 0, [__assign.apply(void 0, _d.concat([(_g.sent())])), Object.entries(mapping).reduce(function (inneracc, _a) {
|
|
137
|
-
var _b;
|
|
138
|
-
var _c = __read(_a, 2), ourKey = _c[0], otherKey = _c[1];
|
|
139
|
-
return (__assign(__assign({}, inneracc), (_b = {}, _b[ourKey] = otherBuildEnv[otherKey], _b)));
|
|
140
|
-
}, {})])];
|
|
141
|
-
}
|
|
142
|
-
});
|
|
143
|
-
});
|
|
144
|
-
}, {})];
|
|
145
|
-
case 2:
|
|
146
|
-
referencedBuildEnv = _g.sent();
|
|
147
|
-
return [2 /*return*/, __assign(__assign({}, merged), referencedBuildEnv)];
|
|
148
|
-
}
|
|
149
|
-
});
|
|
150
|
-
});
|
|
151
|
-
};
|
|
152
|
-
exports.extractBuildEnv = extractBuildEnv;
|