@catladder/cli 0.0.0-main-c5de17aa → 0.0.0-main-1e915e24
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/dist/apps/catenv/printVariables.js +1 -0
- package/dist/apps/catenv/printVariables.js.map +1 -1
- package/dist/apps/catenv/writeDotEnvFiles.js +1 -0
- package/dist/apps/catenv/writeDotEnvFiles.js.map +1 -1
- package/dist/bundles/catenv/index.js +37 -29
- package/dist/bundles/cli/index.js +35 -29
- package/dist/config/getProjectConfig.d.ts +2 -6
- package/dist/config/getProjectConfig.js +27 -24
- package/dist/config/getProjectConfig.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +2 -2
- package/src/apps/catenv/printVariables.ts +3 -1
- package/src/apps/catenv/writeDotEnvFiles.ts +1 -0
- package/src/config/getProjectConfig.ts +34 -20
|
@@ -70,6 +70,7 @@ var getAllVariablesToPrint = function (config, choice) { return __awaiter(void 0
|
|
|
70
70
|
case 0: return [4 /*yield*/, (0, getProjectConfig_1.getEnvVarsResolved)(null, env, componentName)];
|
|
71
71
|
case 1:
|
|
72
72
|
subappvars = _b.sent();
|
|
73
|
+
delete subappvars["_ALL_ENV_VAR_KEYS"];
|
|
73
74
|
_a = [{}];
|
|
74
75
|
return [4 /*yield*/, acc];
|
|
75
76
|
case 2: return [2 /*return*/, __assign.apply(void 0, [__assign.apply(void 0, [__assign.apply(void 0, _a.concat([(_b.sent())])), subappvars]), Object.fromEntries(Object.entries(subappvars).map(function (_a) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"printVariables.js","sourceRoot":"","sources":["../../../src/apps/catenv/printVariables.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,kEAAmE;AAEnE,iCAIiB;AAEjB,IAAM,sBAAsB,GAAG,UAAO,MAAc,EAAE,MAAe;;;;oBACjC,qBAAM,IAAA,2CAAmC,EACzE,MAAM,EACN,MAAM,CACP,EAAA;;gBAHK,KAA4B,SAGjC,EAHO,GAAG,SAAA,EAAE,gBAAgB,sBAAA;gBAKzB,SAAS,
|
|
1
|
+
{"version":3,"file":"printVariables.js","sourceRoot":"","sources":["../../../src/apps/catenv/printVariables.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,kEAAmE;AAEnE,iCAIiB;AAEjB,IAAM,sBAAsB,GAAG,UAAO,MAAc,EAAE,MAAe;;;;oBACjC,qBAAM,IAAA,2CAAmC,EACzE,MAAM,EACN,MAAM,CACP,EAAA;;gBAHK,KAA4B,SAGjC,EAHO,GAAG,SAAA,EAAE,gBAAgB,sBAAA;gBAKzB,SAAS,GAA2B,EAAE,CAAC;qBACvC,gBAAgB,EAAhB,wBAAgB;gBACN,qBAAM,IAAA,qCAAkB,EAAC,IAAI,EAAE,GAAG,EAAE,gBAAgB,CAAC,EAAA;;gBAAjE,SAAS,GAAG,SAAqD,CAAC;;oBAKtD,qBAAM,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,MAAM,CACrD,UAAO,GAAG,EAAE,aAAa;;;;oCACJ,qBAAM,IAAA,qCAAkB,EAAC,IAAI,EAAE,GAAG,EAAE,aAAa,CAAC,EAAA;;gCAA/D,UAAU,GAAG,SAAkD;gCACrE,OAAO,UAAU,CAAC,mBAAmB,CAAC,CAAC;;gCAEjC,qBAAM,GAAG,EAAA;oCADf,wGACK,CAAC,SAAS,CAAC,KACX,UAAU,IAEV,MAAM,CAAC,WAAW,CACnB,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,UAAC,EAAY;4CAAX,GAAG,QAAA,EAAE,KAAK,QAAA;wCAAM,OAAA;4CAC/C,UAAG,IAAA,0BAAkB,EAAC,aAAa,CAAC,WAAW,EAAE,CAAC,cAAI,GAAG,CAAE;4CAC3D,KAAK;yCACN;oCAHgD,CAGhD,CAAC,CACH,IACD;;;qBACH,EACD,EAAE,CACH,EAAA;;gBApBD,6DAA6D;gBAC7D,0EAA0E;gBAC1E,mCAAmC;gBACnC,SAAS,GAAG,SAiBX,CAAC;;oBAGJ,sBAAO,SAAS,EAAC;;;KAClB,CAAC;AAEK,IAAM,cAAc,GAAG,UAAO,MAAc,EAAE,MAAe;;;;oBAChD,qBAAM,sBAAsB,CAAC,MAAM,EAAE,MAAM,CAAC,EAAA;;gBAAxD,SAAS,GAAG,SAA4C;gBAE9D,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,SAAS,CAAC,CAAC,CAAC;;;;KAClD,CAAC;AAJW,QAAA,cAAc,kBAIzB;AAEF,IAAM,wBAAwB,GAAG,UAAC,SAAoB;IACpD,OAAA,IAAA,0BAAkB,EAAC,SAAS,EAAE,SAAS,CAAC;AAAxC,CAAwC,CAAC"}
|
|
@@ -74,6 +74,7 @@ var writeDotEnvFiles = function (config, choice) { return __awaiter(void 0, void
|
|
|
74
74
|
return [4 /*yield*/, (0, getProjectConfig_1.getEnvVarsResolved)(null, env, componentName)];
|
|
75
75
|
case 4:
|
|
76
76
|
variables = _b.sent();
|
|
77
|
+
delete variables["_ALL_ENV_VAR_KEYS"];
|
|
77
78
|
componentDir = (0, utils_1.getComponentFullPath)(gitRoot, config, componentName);
|
|
78
79
|
filePath = (0, path_1.join)(componentDir, ".env");
|
|
79
80
|
variablesSanitized = (0, utils_1.sanitizeMultiLine)(variables);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"writeDotEnvFiles.js","sourceRoot":"","sources":["../../../src/apps/catenv/writeDotEnvFiles.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,qCAAqC;AACrC,6BAA4B;AAC5B,kEAAmE;AACnE,iDAAkD;AAElD,iCAKiB;AAEV,IAAM,gBAAgB,GAAG,UAAO,MAAc,EAAE,MAAe;;;;oBAClC,qBAAM,IAAA,2CAAmC,EACzE,MAAM,EACN,MAAM,CACP,EAAA;;gBAHK,KAA4B,SAGjC,EAHO,GAAG,SAAA,EAAE,gBAAgB,sBAAA;gBAOvB,gCAAgC,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC;qBACvE,MAAM,CAAC,UAAC,EAAa;wBAAV,SAAS,QAAA;oBAAM,OAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,MAAM;gBAAjB,CAAiB,CAAC;qBAC5C,GAAG,CAAC,UAAC,EAAe;wBAAd,aAAa,QAAA;oBAAM,OAAA,aAAa;gBAAb,CAAa,CAAC,CAAC;gBAErC,kCAAkC,GAAG,gBAAgB;oBACzD,CAAC,CAAC,gCAAgC,CAAC,QAAQ,CAAC,gBAAgB,CAAC;wBAC3D,CAAC,CAAC,CAAC,gBAAgB,CAAC;wBACpB,CAAC,CAAC,EAAE;oBACN,CAAC,CAAC,gCAAgC,CAAC;gBACrB,qBAAM,IAAA,qBAAU,GAAE,EAAA;;gBAA5B,OAAO,GAAG,SAAkB;sBAE4B,EAAlC,yEAAkC;;;qBAAlC,CAAA,gDAAkC,CAAA;gBAAnD,aAAa;gBACJ,qBAAM,IAAA,qCAAkB,EAAC,IAAI,EAAE,GAAG,EAAE,aAAa,CAAC,EAAA;;gBAA9D,SAAS,GAAG,SAAkD;
|
|
1
|
+
{"version":3,"file":"writeDotEnvFiles.js","sourceRoot":"","sources":["../../../src/apps/catenv/writeDotEnvFiles.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,qCAAqC;AACrC,6BAA4B;AAC5B,kEAAmE;AACnE,iDAAkD;AAElD,iCAKiB;AAEV,IAAM,gBAAgB,GAAG,UAAO,MAAc,EAAE,MAAe;;;;oBAClC,qBAAM,IAAA,2CAAmC,EACzE,MAAM,EACN,MAAM,CACP,EAAA;;gBAHK,KAA4B,SAGjC,EAHO,GAAG,SAAA,EAAE,gBAAgB,sBAAA;gBAOvB,gCAAgC,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC;qBACvE,MAAM,CAAC,UAAC,EAAa;wBAAV,SAAS,QAAA;oBAAM,OAAA,SAAS,aAAT,SAAS,uBAAT,SAAS,CAAE,MAAM;gBAAjB,CAAiB,CAAC;qBAC5C,GAAG,CAAC,UAAC,EAAe;wBAAd,aAAa,QAAA;oBAAM,OAAA,aAAa;gBAAb,CAAa,CAAC,CAAC;gBAErC,kCAAkC,GAAG,gBAAgB;oBACzD,CAAC,CAAC,gCAAgC,CAAC,QAAQ,CAAC,gBAAgB,CAAC;wBAC3D,CAAC,CAAC,CAAC,gBAAgB,CAAC;wBACpB,CAAC,CAAC,EAAE;oBACN,CAAC,CAAC,gCAAgC,CAAC;gBACrB,qBAAM,IAAA,qBAAU,GAAE,EAAA;;gBAA5B,OAAO,GAAG,SAAkB;sBAE4B,EAAlC,yEAAkC;;;qBAAlC,CAAA,gDAAkC,CAAA;gBAAnD,aAAa;gBACJ,qBAAM,IAAA,qCAAkB,EAAC,IAAI,EAAE,GAAG,EAAE,aAAa,CAAC,EAAA;;gBAA9D,SAAS,GAAG,SAAkD;gBACpE,OAAO,SAAS,CAAC,mBAAmB,CAAC,CAAC;gBAChC,YAAY,GAAG,IAAA,4BAAoB,EAAC,OAAO,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC;gBACpE,QAAQ,GAAG,IAAA,WAAI,EAAC,YAAY,EAAE,MAAM,CAAC,CAAC;gBAEtC,kBAAkB,GAAG,IAAA,yBAAiB,EAAC,SAAS,CAAC,CAAC;gBACxD,qBAAM,IAAA,oBAAS,EACb,QAAQ,EACR,0DAA0D;wBACxD,IAAA,0BAAkB,EAAC,kBAAkB,CAAC,CACzC,EAAA;;gBAJD,SAIC,CAAC;;;gBAXwB,IAAkC,CAAA;;;;;KAa/D,CAAC;AAhCW,QAAA,gBAAgB,oBAgC3B"}
|
|
@@ -150,6 +150,7 @@ var getAllVariablesToPrint = function (config, choice) { return __awaiter(void 0
|
|
|
150
150
|
case 0: return [4 /*yield*/, (0, getProjectConfig_1.getEnvVarsResolved)(null, env, componentName)];
|
|
151
151
|
case 1:
|
|
152
152
|
subappvars = _b.sent();
|
|
153
|
+
delete subappvars["_ALL_ENV_VAR_KEYS"];
|
|
153
154
|
_a = [{}];
|
|
154
155
|
return [4 /*yield*/, acc];
|
|
155
156
|
case 2: return [2 /*return*/, __assign.apply(void 0, [__assign.apply(void 0, [__assign.apply(void 0, _a.concat([(_b.sent())])), subappvars]), Object.fromEntries(Object.entries(subappvars).map(function (_a) {
|
|
@@ -387,6 +388,7 @@ var writeDotEnvFiles = function (config, choice) { return __awaiter(void 0, void
|
|
|
387
388
|
return [4 /*yield*/, (0, getProjectConfig_1.getEnvVarsResolved)(null, env, componentName)];
|
|
388
389
|
case 4:
|
|
389
390
|
variables = _b.sent();
|
|
391
|
+
delete variables["_ALL_ENV_VAR_KEYS"];
|
|
390
392
|
componentDir = (0, utils_1.getComponentFullPath)(gitRoot, config, componentName);
|
|
391
393
|
filePath = (0, path_1.join)(componentDir, ".env");
|
|
392
394
|
variablesSanitized = (0, utils_1.sanitizeMultiLine)(variables);
|
|
@@ -553,17 +555,6 @@ var choice = process.argv[2] ? (0, parseChoice_1.parseChoice)(process.argv[2]) :
|
|
|
553
555
|
|
|
554
556
|
"use strict";
|
|
555
557
|
|
|
556
|
-
var __assign = (this && this.__assign) || function () {
|
|
557
|
-
__assign = Object.assign || function(t) {
|
|
558
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
559
|
-
s = arguments[i];
|
|
560
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
561
|
-
t[p] = s[p];
|
|
562
|
-
}
|
|
563
|
-
return t;
|
|
564
|
-
};
|
|
565
|
-
return __assign.apply(this, arguments);
|
|
566
|
-
};
|
|
567
558
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
568
559
|
if (k2 === undefined) k2 = k;
|
|
569
560
|
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
@@ -789,25 +780,31 @@ var getGitlabVar = function (vorpal, env, componentName, variableName) { return
|
|
|
789
780
|
});
|
|
790
781
|
}); };
|
|
791
782
|
exports.getGitlabVar = getGitlabVar;
|
|
792
|
-
var resolveSecrets = function (vorpal,
|
|
783
|
+
var resolveSecrets = function (vorpal, varSets) { return __awaiter(void 0, void 0, void 0, function () {
|
|
793
784
|
var allVariablesInGitlab;
|
|
794
785
|
return __generator(this, function (_a) {
|
|
795
786
|
switch (_a.label) {
|
|
796
787
|
case 0: return [4 /*yield*/, (0, gitlab_1.getAllVariables)(vorpal)];
|
|
797
788
|
case 1:
|
|
798
789
|
allVariablesInGitlab = _a.sent();
|
|
799
|
-
return [2 /*return*/, Object.fromEntries(
|
|
800
|
-
|
|
801
|
-
|
|
802
|
-
|
|
803
|
-
|
|
804
|
-
|
|
805
|
-
|
|
806
|
-
|
|
790
|
+
return [2 /*return*/, Object.fromEntries(varSets.flatMap(function (set) {
|
|
791
|
+
return Object.entries(set.envVars)
|
|
792
|
+
.map(function (_a) {
|
|
793
|
+
var key = _a[0], value = _a[1];
|
|
794
|
+
var secretKey = set.secretEnvVarKeys.find(function (k) { return k.key === key; });
|
|
795
|
+
if (secretKey) {
|
|
796
|
+
if (secretKey.hidden) {
|
|
797
|
+
return null;
|
|
798
|
+
}
|
|
799
|
+
for (var _i = 0, allVariablesInGitlab_1 = allVariablesInGitlab; _i < allVariablesInGitlab_1.length; _i++) {
|
|
800
|
+
var variable = allVariablesInGitlab_1[_i];
|
|
801
|
+
value = value.replace(new RegExp("\\$" + variable.key, "g"), variable.value);
|
|
802
|
+
}
|
|
803
|
+
return [key, value];
|
|
807
804
|
}
|
|
808
805
|
return [key, value];
|
|
809
|
-
}
|
|
810
|
-
|
|
806
|
+
})
|
|
807
|
+
.filter(Boolean);
|
|
811
808
|
}))];
|
|
812
809
|
}
|
|
813
810
|
});
|
|
@@ -828,7 +825,12 @@ var getEnvVarsResolved = function (vorpal, env, componentName) { return __awaite
|
|
|
828
825
|
envionment = _a.sent();
|
|
829
826
|
// in the pipeline the secrets alreadyy exists and bash will expand them
|
|
830
827
|
// but here we need to manually load them
|
|
831
|
-
return [2 /*return*/, resolveSecrets(vorpal,
|
|
828
|
+
return [2 /*return*/, resolveSecrets(vorpal, [
|
|
829
|
+
{
|
|
830
|
+
envVars: envionment.envVars,
|
|
831
|
+
secretEnvVarKeys: envionment.secretEnvVarKeys
|
|
832
|
+
},
|
|
833
|
+
])];
|
|
832
834
|
case 3:
|
|
833
835
|
e_2 = _a.sent();
|
|
834
836
|
// env is disabled
|
|
@@ -851,7 +853,10 @@ var getJobOnlyEnvVarsResolved = function (vorpal, env, componentName) { return _
|
|
|
851
853
|
return [4 /*yield*/, (0, exports.getEnvironment)(env, componentName)];
|
|
852
854
|
case 1:
|
|
853
855
|
envionment = _a.sent();
|
|
854
|
-
return [2 /*return*/, resolveSecrets(vorpal,
|
|
856
|
+
return [2 /*return*/, resolveSecrets(vorpal, [
|
|
857
|
+
envionment.jobOnlyVars.build,
|
|
858
|
+
envionment.jobOnlyVars.deploy,
|
|
859
|
+
])];
|
|
855
860
|
case 2:
|
|
856
861
|
e_3 = _a.sent();
|
|
857
862
|
// env is disabled
|
|
@@ -40278,10 +40283,10 @@ var ensureNodeVersion = function (context) {
|
|
|
40278
40283
|
return ["if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi", "if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi"];
|
|
40279
40284
|
};
|
|
40280
40285
|
exports.ensureNodeVersion = ensureNodeVersion;
|
|
40281
|
-
var getYarnInstall = function (context) {
|
|
40286
|
+
var getYarnInstall = function (context, options) {
|
|
40282
40287
|
var _a;
|
|
40283
|
-
var postInstall = context.componentConfig.build.postInstall;
|
|
40284
|
-
return __spreadArray(__spreadArray(__spreadArray([], __read((0, exports.ensureNodeVersion)(context)), false), [getYarnInstallCommand(context)], false), __read(postInstall ? (_a = (0, utils_1.ensureArray)(postInstall)) !== null && _a !== void 0 ? _a : [] : []), false);
|
|
40288
|
+
var postInstall = "postInstall" in context.componentConfig.build ? context.componentConfig.build.postInstall : null;
|
|
40289
|
+
return __spreadArray(__spreadArray(__spreadArray([], __read((0, exports.ensureNodeVersion)(context)), false), [getYarnInstallCommand(context)], false), __read(postInstall && !(options === null || options === void 0 ? void 0 : options.noCustomPostInstall) ? (_a = (0, utils_1.ensureArray)(postInstall)) !== null && _a !== void 0 ? _a : [] : []), false);
|
|
40285
40290
|
};
|
|
40286
40291
|
exports.getYarnInstall = getYarnInstall;
|
|
40287
40292
|
var DOCKER_COPY_FILES = "COPY --chown=node:node $APP_DIR .";
|
|
@@ -40712,7 +40717,7 @@ exports.readConfigSync = readConfigSync;
|
|
|
40712
40717
|
|
|
40713
40718
|
exports.__esModule = true;
|
|
40714
40719
|
exports.DOCKER_REGISTRY = exports.PIPELINE_IMAGE_TAG = void 0;
|
|
40715
|
-
exports.PIPELINE_IMAGE_TAG = "main-
|
|
40720
|
+
exports.PIPELINE_IMAGE_TAG = "main-1e915e24" || 0;
|
|
40716
40721
|
exports.DOCKER_REGISTRY = "git.panter.ch:5001/catladder/catladder" || 0;
|
|
40717
40722
|
|
|
40718
40723
|
/***/ }),
|
|
@@ -42699,7 +42704,10 @@ var createCustomDeployJobs = function (context) {
|
|
|
42699
42704
|
throw new Error("deploy config is not custom");
|
|
42700
42705
|
}
|
|
42701
42706
|
var baseDeploymentJob = (0, base_1.getBaseDeploymentJob)(context);
|
|
42702
|
-
|
|
42707
|
+
// FIXME: custom deploy currently assumes yarn-based project
|
|
42708
|
+
var yarnInstall = (0, yarn_1.getYarnInstall)(context, {
|
|
42709
|
+
noCustomPostInstall: true
|
|
42710
|
+
});
|
|
42703
42711
|
return __spreadArray([(0, lodash_1.merge)({}, baseDeploymentJob, {
|
|
42704
42712
|
image: (_a = deployConfig.jobImage) !== null && _a !== void 0 ? _a : (0, runner_1.getRunnerImage)("jobs-default"),
|
|
42705
42713
|
cache: (_b = deployConfig.jobCache) !== null && _b !== void 0 ? _b : [],
|
|
@@ -6144,17 +6144,6 @@ exports.GRAFANA_PROXY_TARGET_PORT = 9090;
|
|
|
6144
6144
|
|
|
6145
6145
|
"use strict";
|
|
6146
6146
|
|
|
6147
|
-
var __assign = (this && this.__assign) || function () {
|
|
6148
|
-
__assign = Object.assign || function(t) {
|
|
6149
|
-
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
6150
|
-
s = arguments[i];
|
|
6151
|
-
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
6152
|
-
t[p] = s[p];
|
|
6153
|
-
}
|
|
6154
|
-
return t;
|
|
6155
|
-
};
|
|
6156
|
-
return __assign.apply(this, arguments);
|
|
6157
|
-
};
|
|
6158
6147
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
6159
6148
|
if (k2 === undefined) k2 = k;
|
|
6160
6149
|
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
@@ -6380,25 +6369,31 @@ var getGitlabVar = function (vorpal, env, componentName, variableName) { return
|
|
|
6380
6369
|
});
|
|
6381
6370
|
}); };
|
|
6382
6371
|
exports.getGitlabVar = getGitlabVar;
|
|
6383
|
-
var resolveSecrets = function (vorpal,
|
|
6372
|
+
var resolveSecrets = function (vorpal, varSets) { return __awaiter(void 0, void 0, void 0, function () {
|
|
6384
6373
|
var allVariablesInGitlab;
|
|
6385
6374
|
return __generator(this, function (_a) {
|
|
6386
6375
|
switch (_a.label) {
|
|
6387
6376
|
case 0: return [4 /*yield*/, (0, gitlab_1.getAllVariables)(vorpal)];
|
|
6388
6377
|
case 1:
|
|
6389
6378
|
allVariablesInGitlab = _a.sent();
|
|
6390
|
-
return [2 /*return*/, Object.fromEntries(
|
|
6391
|
-
|
|
6392
|
-
|
|
6393
|
-
|
|
6394
|
-
|
|
6395
|
-
|
|
6396
|
-
|
|
6397
|
-
|
|
6379
|
+
return [2 /*return*/, Object.fromEntries(varSets.flatMap(function (set) {
|
|
6380
|
+
return Object.entries(set.envVars)
|
|
6381
|
+
.map(function (_a) {
|
|
6382
|
+
var key = _a[0], value = _a[1];
|
|
6383
|
+
var secretKey = set.secretEnvVarKeys.find(function (k) { return k.key === key; });
|
|
6384
|
+
if (secretKey) {
|
|
6385
|
+
if (secretKey.hidden) {
|
|
6386
|
+
return null;
|
|
6387
|
+
}
|
|
6388
|
+
for (var _i = 0, allVariablesInGitlab_1 = allVariablesInGitlab; _i < allVariablesInGitlab_1.length; _i++) {
|
|
6389
|
+
var variable = allVariablesInGitlab_1[_i];
|
|
6390
|
+
value = value.replace(new RegExp("\\$" + variable.key, "g"), variable.value);
|
|
6391
|
+
}
|
|
6392
|
+
return [key, value];
|
|
6398
6393
|
}
|
|
6399
6394
|
return [key, value];
|
|
6400
|
-
}
|
|
6401
|
-
|
|
6395
|
+
})
|
|
6396
|
+
.filter(Boolean);
|
|
6402
6397
|
}))];
|
|
6403
6398
|
}
|
|
6404
6399
|
});
|
|
@@ -6419,7 +6414,12 @@ var getEnvVarsResolved = function (vorpal, env, componentName) { return __awaite
|
|
|
6419
6414
|
envionment = _a.sent();
|
|
6420
6415
|
// in the pipeline the secrets alreadyy exists and bash will expand them
|
|
6421
6416
|
// but here we need to manually load them
|
|
6422
|
-
return [2 /*return*/, resolveSecrets(vorpal,
|
|
6417
|
+
return [2 /*return*/, resolveSecrets(vorpal, [
|
|
6418
|
+
{
|
|
6419
|
+
envVars: envionment.envVars,
|
|
6420
|
+
secretEnvVarKeys: envionment.secretEnvVarKeys
|
|
6421
|
+
},
|
|
6422
|
+
])];
|
|
6423
6423
|
case 3:
|
|
6424
6424
|
e_2 = _a.sent();
|
|
6425
6425
|
// env is disabled
|
|
@@ -6442,7 +6442,10 @@ var getJobOnlyEnvVarsResolved = function (vorpal, env, componentName) { return _
|
|
|
6442
6442
|
return [4 /*yield*/, (0, exports.getEnvironment)(env, componentName)];
|
|
6443
6443
|
case 1:
|
|
6444
6444
|
envionment = _a.sent();
|
|
6445
|
-
return [2 /*return*/, resolveSecrets(vorpal,
|
|
6445
|
+
return [2 /*return*/, resolveSecrets(vorpal, [
|
|
6446
|
+
envionment.jobOnlyVars.build,
|
|
6447
|
+
envionment.jobOnlyVars.deploy,
|
|
6448
|
+
])];
|
|
6446
6449
|
case 2:
|
|
6447
6450
|
e_3 = _a.sent();
|
|
6448
6451
|
// env is disabled
|
|
@@ -351232,10 +351235,10 @@ var ensureNodeVersion = function (context) {
|
|
|
351232
351235
|
return ["if [ -f ~/.nvm/nvm.sh ]; then source ~/.nvm/nvm.sh; fi", "if command -v nvm &> /dev/null && [ -f ./.nvmrc ]; then nvm install; fi"];
|
|
351233
351236
|
};
|
|
351234
351237
|
exports.ensureNodeVersion = ensureNodeVersion;
|
|
351235
|
-
var getYarnInstall = function (context) {
|
|
351238
|
+
var getYarnInstall = function (context, options) {
|
|
351236
351239
|
var _a;
|
|
351237
|
-
var postInstall = context.componentConfig.build.postInstall;
|
|
351238
|
-
return __spreadArray(__spreadArray(__spreadArray([], __read((0, exports.ensureNodeVersion)(context)), false), [getYarnInstallCommand(context)], false), __read(postInstall ? (_a = (0, utils_1.ensureArray)(postInstall)) !== null && _a !== void 0 ? _a : [] : []), false);
|
|
351240
|
+
var postInstall = "postInstall" in context.componentConfig.build ? context.componentConfig.build.postInstall : null;
|
|
351241
|
+
return __spreadArray(__spreadArray(__spreadArray([], __read((0, exports.ensureNodeVersion)(context)), false), [getYarnInstallCommand(context)], false), __read(postInstall && !(options === null || options === void 0 ? void 0 : options.noCustomPostInstall) ? (_a = (0, utils_1.ensureArray)(postInstall)) !== null && _a !== void 0 ? _a : [] : []), false);
|
|
351239
351242
|
};
|
|
351240
351243
|
exports.getYarnInstall = getYarnInstall;
|
|
351241
351244
|
var DOCKER_COPY_FILES = "COPY --chown=node:node $APP_DIR .";
|
|
@@ -351666,7 +351669,7 @@ exports.readConfigSync = readConfigSync;
|
|
|
351666
351669
|
|
|
351667
351670
|
exports.__esModule = true;
|
|
351668
351671
|
exports.DOCKER_REGISTRY = exports.PIPELINE_IMAGE_TAG = void 0;
|
|
351669
|
-
exports.PIPELINE_IMAGE_TAG = "main-
|
|
351672
|
+
exports.PIPELINE_IMAGE_TAG = "main-1e915e24" || 0;
|
|
351670
351673
|
exports.DOCKER_REGISTRY = "git.panter.ch:5001/catladder/catladder" || 0;
|
|
351671
351674
|
|
|
351672
351675
|
/***/ }),
|
|
@@ -353653,7 +353656,10 @@ var createCustomDeployJobs = function (context) {
|
|
|
353653
353656
|
throw new Error("deploy config is not custom");
|
|
353654
353657
|
}
|
|
353655
353658
|
var baseDeploymentJob = (0, base_1.getBaseDeploymentJob)(context);
|
|
353656
|
-
|
|
353659
|
+
// FIXME: custom deploy currently assumes yarn-based project
|
|
353660
|
+
var yarnInstall = (0, yarn_1.getYarnInstall)(context, {
|
|
353661
|
+
noCustomPostInstall: true
|
|
353662
|
+
});
|
|
353657
353663
|
return __spreadArray([(0, lodash_1.merge)({}, baseDeploymentJob, {
|
|
353658
353664
|
image: (_a = deployConfig.jobImage) !== null && _a !== void 0 ? _a : (0, runner_1.getRunnerImage)("jobs-default"),
|
|
353659
353665
|
cache: (_b = deployConfig.jobCache) !== null && _b !== void 0 ? _b : [],
|
|
@@ -16,13 +16,9 @@ export declare const getAllComponentsWithAllEnvsHierarchical: () => Promise<{
|
|
|
16
16
|
export declare const getAllPipelineContexts: () => Promise<import("@catladder/pipeline").Context[]>;
|
|
17
17
|
export declare const getEnvironment: (env: string, componentName: string) => Promise<import("@catladder/pipeline").Environment>;
|
|
18
18
|
export declare const getGitlabVar: (vorpal: CommandInstance, env: string, componentName: string, variableName: string) => Promise<string>;
|
|
19
|
-
export declare const getEnvVarsResolved: (vorpal: CommandInstance | null, env: string, componentName: string | null) => Promise<
|
|
20
|
-
[k: string]: string;
|
|
21
|
-
}>;
|
|
19
|
+
export declare const getEnvVarsResolved: (vorpal: CommandInstance | null, env: string, componentName: string | null) => Promise<any>;
|
|
22
20
|
/**
|
|
23
21
|
*
|
|
24
22
|
* is used to get job only vars that should also be editable locally with catladder.
|
|
25
23
|
*/
|
|
26
|
-
export declare const getJobOnlyEnvVarsResolved: (vorpal: CommandInstance, env: string, componentName: string) => Promise<
|
|
27
|
-
[k: string]: string;
|
|
28
|
-
}>;
|
|
24
|
+
export declare const getJobOnlyEnvVarsResolved: (vorpal: CommandInstance, env: string, componentName: string) => Promise<any>;
|
|
@@ -1,15 +1,4 @@
|
|
|
1
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
2
|
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
14
3
|
if (k2 === undefined) k2 = k;
|
|
15
4
|
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
@@ -235,25 +224,31 @@ var getGitlabVar = function (vorpal, env, componentName, variableName) { return
|
|
|
235
224
|
});
|
|
236
225
|
}); };
|
|
237
226
|
exports.getGitlabVar = getGitlabVar;
|
|
238
|
-
var resolveSecrets = function (vorpal,
|
|
227
|
+
var resolveSecrets = function (vorpal, varSets) { return __awaiter(void 0, void 0, void 0, function () {
|
|
239
228
|
var allVariablesInGitlab;
|
|
240
229
|
return __generator(this, function (_a) {
|
|
241
230
|
switch (_a.label) {
|
|
242
231
|
case 0: return [4 /*yield*/, (0, gitlab_1.getAllVariables)(vorpal)];
|
|
243
232
|
case 1:
|
|
244
233
|
allVariablesInGitlab = _a.sent();
|
|
245
|
-
return [2 /*return*/, Object.fromEntries(
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
234
|
+
return [2 /*return*/, Object.fromEntries(varSets.flatMap(function (set) {
|
|
235
|
+
return Object.entries(set.envVars)
|
|
236
|
+
.map(function (_a) {
|
|
237
|
+
var key = _a[0], value = _a[1];
|
|
238
|
+
var secretKey = set.secretEnvVarKeys.find(function (k) { return k.key === key; });
|
|
239
|
+
if (secretKey) {
|
|
240
|
+
if (secretKey.hidden) {
|
|
241
|
+
return null;
|
|
242
|
+
}
|
|
243
|
+
for (var _i = 0, allVariablesInGitlab_1 = allVariablesInGitlab; _i < allVariablesInGitlab_1.length; _i++) {
|
|
244
|
+
var variable = allVariablesInGitlab_1[_i];
|
|
245
|
+
value = value.replace(new RegExp("\\$" + variable.key, "g"), variable.value);
|
|
246
|
+
}
|
|
247
|
+
return [key, value];
|
|
253
248
|
}
|
|
254
249
|
return [key, value];
|
|
255
|
-
}
|
|
256
|
-
|
|
250
|
+
})
|
|
251
|
+
.filter(Boolean);
|
|
257
252
|
}))];
|
|
258
253
|
}
|
|
259
254
|
});
|
|
@@ -274,7 +269,12 @@ var getEnvVarsResolved = function (vorpal, env, componentName) { return __awaite
|
|
|
274
269
|
envionment = _a.sent();
|
|
275
270
|
// in the pipeline the secrets alreadyy exists and bash will expand them
|
|
276
271
|
// but here we need to manually load them
|
|
277
|
-
return [2 /*return*/, resolveSecrets(vorpal,
|
|
272
|
+
return [2 /*return*/, resolveSecrets(vorpal, [
|
|
273
|
+
{
|
|
274
|
+
envVars: envionment.envVars,
|
|
275
|
+
secretEnvVarKeys: envionment.secretEnvVarKeys
|
|
276
|
+
},
|
|
277
|
+
])];
|
|
278
278
|
case 3:
|
|
279
279
|
e_2 = _a.sent();
|
|
280
280
|
// env is disabled
|
|
@@ -297,7 +297,10 @@ var getJobOnlyEnvVarsResolved = function (vorpal, env, componentName) { return _
|
|
|
297
297
|
return [4 /*yield*/, (0, exports.getEnvironment)(env, componentName)];
|
|
298
298
|
case 1:
|
|
299
299
|
envionment = _a.sent();
|
|
300
|
-
return [2 /*return*/, resolveSecrets(vorpal,
|
|
300
|
+
return [2 /*return*/, resolveSecrets(vorpal, [
|
|
301
|
+
envionment.jobOnlyVars.build,
|
|
302
|
+
envionment.jobOnlyVars.deploy,
|
|
303
|
+
])];
|
|
301
304
|
case 2:
|
|
302
305
|
e_3 = _a.sent();
|
|
303
306
|
// env is disabled
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getProjectConfig.js","sourceRoot":"","sources":["../../src/config/getProjectConfig.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"getProjectConfig.js","sourceRoot":"","sources":["../../src/config/getProjectConfig.ts"],"names":[],"mappings":"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"}
|