@catladder/cli 0.0.0-main-7b4a3dd5 → 0.0.0-main-e651ab49

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.
@@ -0,0 +1,5 @@
1
+ import type Vorpal from "vorpal";
2
+ import type { CommandInstance } from "vorpal";
3
+ export declare const projectSecretsClearBackups: (vorpal: CommandInstance, keep?: number) => Promise<void>;
4
+ declare const _default: (vorpal: Vorpal) => Promise<void>;
5
+ export default _default;
@@ -0,0 +1,90 @@
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.projectSecretsClearBackups = void 0;
40
+ var gitlab_1 = require("../../../../utils/gitlab");
41
+ var autocompletions_1 = require("./utils/autocompletions");
42
+ var projectSecretsClearBackups = function (vorpal, keep) {
43
+ if (keep === void 0) { keep = 3; }
44
+ return __awaiter(void 0, void 0, void 0, function () {
45
+ return __generator(this, function (_a) {
46
+ switch (_a.label) {
47
+ case 0: return [4 /*yield*/, (0, gitlab_1.clearBackups)(vorpal, keep)];
48
+ case 1:
49
+ _a.sent();
50
+ return [2 /*return*/];
51
+ }
52
+ });
53
+ });
54
+ };
55
+ exports.projectSecretsClearBackups = projectSecretsClearBackups;
56
+ exports["default"] = (function (vorpal) { return __awaiter(void 0, void 0, void 0, function () {
57
+ var _a, _b;
58
+ return __generator(this, function (_c) {
59
+ switch (_c.label) {
60
+ case 0:
61
+ _b = (_a = vorpal
62
+ .command("project-secrets-clear-backups", "clears all backups"))
63
+ .autocomplete;
64
+ return [4 /*yield*/, (0, autocompletions_1.allEnvsAndAllComponents)()];
65
+ case 1:
66
+ _b.apply(_a, [_c.sent()])
67
+ .action(function () {
68
+ return __awaiter(this, void 0, void 0, function () {
69
+ var keep;
70
+ return __generator(this, function (_a) {
71
+ switch (_a.label) {
72
+ case 0: return [4 /*yield*/, this.prompt({
73
+ type: "number",
74
+ name: "keep",
75
+ "default": 1,
76
+ message: "How many backups should we keep? 🤔"
77
+ })];
78
+ case 1:
79
+ keep = (_a.sent()).keep;
80
+ return [4 /*yield*/, (0, exports.projectSecretsClearBackups)(this, keep)];
81
+ case 2: return [2 /*return*/, _a.sent()];
82
+ }
83
+ });
84
+ });
85
+ });
86
+ return [2 /*return*/];
87
+ }
88
+ });
89
+ }); });
90
+ //# sourceMappingURL=commandSecretsClearBackups.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"commandSecretsClearBackups.js","sourceRoot":"","sources":["../../../../../src/apps/cli/commands/project/commandSecretsClearBackups.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,mDAAwD;AACxD,2DAAkE;AAE3D,IAAM,0BAA0B,GAAG,UACxC,MAAuB,EACvB,IAAQ;IAAR,qBAAA,EAAA,QAAQ;;;;wBAER,qBAAM,IAAA,qBAAY,EAAC,MAAM,EAAE,IAAI,CAAC,EAAA;;oBAAhC,SAAgC,CAAC;;;;;CAClC,CAAC;AALW,QAAA,0BAA0B,8BAKrC;AAEF,sBAAe,UAAO,MAAc;;;;;gBAClC,KAAA,CAAA,KAAA,MAAM;qBACH,OAAO,CAAC,+BAA+B,EAAE,oBAAoB,CAAC,CAAA;qBAC9D,YAAY,CAAA;gBAAC,qBAAM,IAAA,yCAAuB,GAAE,EAAA;;gBAF/C,cAEgB,SAA+B,EAAC;qBAC7C,MAAM,CAAC;;;;;wCACW,qBAAM,IAAI,CAAC,MAAM,CAAC;wCACjC,IAAI,EAAE,QAAQ;wCACd,IAAI,EAAE,MAAM;wCACZ,SAAO,EAAE,CAAC;wCACV,OAAO,EAAE,qCAAqC;qCAC/C,CAAC,EAAA;;oCALM,IAAI,GAAK,CAAA,SAKf,CAAA,KALU;oCAML,qBAAM,IAAA,kCAA0B,EAAC,IAAI,EAAE,IAAI,CAAC,EAAA;wCAAnD,sBAAO,SAA4C,EAAC;;;;iBACrD,CAAC,CAAC;;;;KACN,EAAC"}
@@ -63,6 +63,7 @@ var commandOpenGrafana_1 = __importDefault(require("./commandOpenGrafana"));
63
63
  var commandPortForward_1 = __importDefault(require("./commandPortForward"));
64
64
  var commandTriggerCronjob_1 = __importDefault(require("./commandTriggerCronjob"));
65
65
  var commandOpenGrafanaPod_1 = __importDefault(require("./commandOpenGrafanaPod"));
66
+ var commandSecretsClearBackups_1 = __importDefault(require("./commandSecretsClearBackups"));
66
67
  exports["default"] = (function (vorpal) { return __awaiter(void 0, void 0, void 0, function () {
67
68
  return __generator(this, function (_a) {
68
69
  (0, commandSetup_1["default"])(vorpal);
@@ -81,6 +82,7 @@ exports["default"] = (function (vorpal) { return __awaiter(void 0, void 0, void
81
82
  (0, commandOpenEnv_1["default"])(vorpal);
82
83
  (0, commandTriggerCronjob_1["default"])(vorpal);
83
84
  (0, commandConfigSecrets_1["default"])(vorpal);
85
+ (0, commandSecretsClearBackups_1["default"])(vorpal);
84
86
  (0, commandDeletePods_1["default"])(vorpal);
85
87
  (0, commandCopyDB_1["default"])(vorpal);
86
88
  (0, commandGetShell_1["default"])(vorpal);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/apps/cli/commands/project/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,gFAA0D;AAC1D,gFAA0D;AAC1D,kEAA4C;AAC5C,0EAAoD;AACpD,gFAA0D;AAC1D,oEAA8C;AAC9C,0FAAoE;AACpE,sEAAgD;AAChD,sEAAgD;AAChD,gEAA0C;AAC1C,4DAA4D;AAC5D,sEAAgD;AAChD,8EAAwD;AACxD,wEAAkD;AAClD,wFAAkE;AAClE,gFAA0D;AAC1D,oEAA8C;AAC9C,oEAA8C;AAC9C,sEAAgD;AAChD,8EAAwD;AACxD,4EAAsD;AACtD,4EAAsD;AACtD,kFAA4D;AAE5D,kFAA4D;AAE5D,sBAAe,UAAO,MAAc;;QAClC,IAAA,yBAAY,EAAC,MAAM,CAAC,CAAC;QAErB,IAAA,2BAAc,EAAC,MAAM,CAAC,CAAC;QAEvB,IAAA,6BAAgB,EAAC,MAAM,CAAC,CAAC;QACzB,IAAA,4BAAe,EAAC,MAAM,CAAC,CAAC;QACxB,IAAA,gCAAmB,EAAC,MAAM,CAAC,CAAC;QAC5B,IAAA,iCAAoB,EAAC,MAAM,CAAC,CAAC;QAE7B,IAAA,iCAAoB,EAAC,MAAM,CAAC,CAAC;QAE7B,IAAA,4BAAe,EAAC,MAAM,CAAC,CAAC;QAExB,IAAA,qCAAwB,EAAC,MAAM,CAAC,CAAC;QAEjC,IAAA,+BAAkB,EAAC,MAAM,CAAC,CAAC;QAC3B,IAAA,kCAAqB,EAAC,MAAM,CAAC,CAAC;QAC9B,IAAA,iCAAoB,EAAC,MAAM,CAAC,CAAC;QAC7B,IAAA,2BAAc,EAAC,MAAM,CAAC,CAAC;QACvB,IAAA,2BAAc,EAAC,MAAM,CAAC,CAAC;QACvB,IAAA,kCAAqB,EAAC,MAAM,CAAC,CAAC;QAC9B,IAAA,iCAAoB,EAAC,MAAM,CAAC,CAAC;QAC7B,IAAA,8BAAiB,EAAC,MAAM,CAAC,CAAC;QAC1B,IAAA,0BAAa,EAAC,MAAM,CAAC,CAAC;QAEtB,IAAA,4BAAe,EAAC,MAAM,CAAC,CAAC;QACxB,IAAA,+BAAkB,EAAC,MAAM,CAAC,CAAC;QAE3B,IAAA,4BAAe,EAAC,MAAM,CAAC,CAAC;QAExB,IAAA,sCAAyB,EAAC,MAAM,CAAC,CAAC;QAClC,IAAA,gCAAmB,EAAC,MAAM,CAAC,CAAC;;;KAC7B,EAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/apps/cli/commands/project/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,gFAA0D;AAC1D,gFAA0D;AAC1D,kEAA4C;AAC5C,0EAAoD;AACpD,gFAA0D;AAC1D,oEAA8C;AAC9C,0FAAoE;AACpE,sEAAgD;AAChD,sEAAgD;AAChD,gEAA0C;AAC1C,4DAA4D;AAC5D,sEAAgD;AAChD,8EAAwD;AACxD,wEAAkD;AAClD,wFAAkE;AAClE,gFAA0D;AAC1D,oEAA8C;AAC9C,oEAA8C;AAC9C,sEAAgD;AAChD,8EAAwD;AACxD,4EAAsD;AACtD,4EAAsD;AACtD,kFAA4D;AAE5D,kFAA4D;AAC5D,4FAAsE;AAEtE,sBAAe,UAAO,MAAc;;QAClC,IAAA,yBAAY,EAAC,MAAM,CAAC,CAAC;QAErB,IAAA,2BAAc,EAAC,MAAM,CAAC,CAAC;QAEvB,IAAA,6BAAgB,EAAC,MAAM,CAAC,CAAC;QACzB,IAAA,4BAAe,EAAC,MAAM,CAAC,CAAC;QACxB,IAAA,gCAAmB,EAAC,MAAM,CAAC,CAAC;QAC5B,IAAA,iCAAoB,EAAC,MAAM,CAAC,CAAC;QAE7B,IAAA,iCAAoB,EAAC,MAAM,CAAC,CAAC;QAE7B,IAAA,4BAAe,EAAC,MAAM,CAAC,CAAC;QAExB,IAAA,qCAAwB,EAAC,MAAM,CAAC,CAAC;QAEjC,IAAA,+BAAkB,EAAC,MAAM,CAAC,CAAC;QAC3B,IAAA,kCAAqB,EAAC,MAAM,CAAC,CAAC;QAC9B,IAAA,iCAAoB,EAAC,MAAM,CAAC,CAAC;QAC7B,IAAA,2BAAc,EAAC,MAAM,CAAC,CAAC;QACvB,IAAA,2BAAc,EAAC,MAAM,CAAC,CAAC;QACvB,IAAA,kCAAqB,EAAC,MAAM,CAAC,CAAC;QAC9B,IAAA,iCAAoB,EAAC,MAAM,CAAC,CAAC;QAC7B,IAAA,uCAA0B,EAAC,MAAM,CAAC,CAAC;QACnC,IAAA,8BAAiB,EAAC,MAAM,CAAC,CAAC;QAC1B,IAAA,0BAAa,EAAC,MAAM,CAAC,CAAC;QAEtB,IAAA,4BAAe,EAAC,MAAM,CAAC,CAAC;QACxB,IAAA,+BAAkB,EAAC,MAAM,CAAC,CAAC;QAE3B,IAAA,4BAAe,EAAC,MAAM,CAAC,CAAC;QAExB,IAAA,sCAAyB,EAAC,MAAM,CAAC,CAAC;QAClC,IAAA,gCAAmB,EAAC,MAAM,CAAC,CAAC;;;KAC7B,EAAC"}
@@ -91,7 +91,7 @@ var setupAccessTokens = function (instance) { return __awaiter(void 0, void 0, v
91
91
  key: "GL_TOKEN",
92
92
  value: GL_TOKEN,
93
93
  masked: true
94
- })];
94
+ }, "POST")];
95
95
  case 7:
96
96
  _b.sent();
97
97
  return [3 /*break*/, 8];
@@ -104,7 +104,7 @@ var setupAccessTokens = function (instance) { return __awaiter(void 0, void 0, v
104
104
  id: projectId,
105
105
  name: "gitlab-deploy-token",
106
106
  scopes: ["read_registry"]
107
- })];
107
+ }, "POST")];
108
108
  case 10:
109
109
  _b.sent();
110
110
  _b.label = 11;
@@ -1 +1 @@
1
- {"version":3,"file":"setupAccessTokens.js","sourceRoot":"","sources":["../../../../../../src/apps/cli/commands/project/setup/setupAccessTokens.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8CAAwB;AAExB,sDAA8E;AAEvE,IAAM,iBAAiB,GAAG,UAAO,QAAyB;;;;oBACb,qBAAM,IAAA,uBAAc,EACpE,QAAQ,CACT,EAAA;;gBAFK,KAA4C,SAEjD,EAFW,SAAS,QAAA,EAAW,aAAa,aAAA;;;;gBAI3C,qBAAM,IAAA,wBAAe,EAAC,QAAQ,EAAE,mBAAY,SAAS,wBAAqB,CAAC,EAAA;;gBAA3E,SAA2E,CAAC;;;;gBAE5E,IAAI,GAAC,CAAC,OAAO,KAAK,WAAW,EAAE;oBAC7B,MAAM,GAAC,CAAC;iBACT;gBACD,YAAY;gBAEZ,QAAQ,CAAC,GAAG,CACV,4EAA4E,CAC7E,CAAC;gBACF,QAAQ,CAAC,GAAG,CACV,uNAAuN,CACxN,CAAC;gBACF,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAEI,qBAAM,QAAQ,CAAC,MAAM,CAAC;wBAC3C,SAAO,EAAE,IAAI;wBACb,OAAO,EAAE,oCAAoC;wBAC7C,IAAI,EAAE,YAAY;wBAClB,IAAI,EAAE,SAAS;qBAChB,CAAC,EAAA;;gBALM,UAAU,GAAK,CAAA,SAKrB,CAAA,WALgB;gBAMlB,IAAI,CAAC,UAAU,EAAE;oBACf,QAAQ,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;iBACtC;gBACD,IAAA,iBAAI,EAAC,UAAG,aAAa,8BAA2B,CAAC,CAAC;gBAElD,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAEnB,QAAQ,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;gBAE9C,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACE,qBAAM,QAAQ,CAAC,MAAM,CAAC;wBACzC,IAAI,EAAE,UAAU;wBAChB,IAAI,EAAE,UAAU;wBAChB,OAAO,EAAE,gBAAgB;qBAC1B,CAAC,EAAA;;gBAJM,QAAQ,GAAK,CAAA,SAInB,CAAA,SAJc;gBAKhB,qBAAM,IAAA,wBAAe,EAAC,QAAQ,EAAE,mBAAY,SAAS,eAAY,EAAE;wBACjE,GAAG,EAAE,UAAU;wBACf,KAAK,EAAE,QAAQ;wBACf,MAAM,EAAE,IAAI;qBACb,CAAC,EAAA;;gBAJF,SAIE,CAAC;;oBAGiB,qBAAM,IAAA,wBAAe,EACzC,QAAQ,EACR,mBAAY,SAAS,mBAAgB,CACtC,EAAA;;gBAHK,aAAa,GAAG,SAGrB;qBAGC,CAAC,aAAa,CAAC,IAAI,CACjB,UAAC,CAAmB,IAAK,OAAA,CAAC,CAAC,IAAI,KAAK,qBAAqB,EAAhC,CAAgC,CAC1D,EAFD,yBAEC;gBAED,QAAQ,CAAC,GAAG,CACV,0FAA0F,CAC3F,CAAC;gBAEF,qBAAM,IAAA,wBAAe,EAAC,QAAQ,EAAE,mBAAY,SAAS,mBAAgB,EAAE;wBACrE,EAAE,EAAE,SAAS;wBACb,IAAI,EAAE,qBAAqB;wBAC3B,MAAM,EAAE,CAAC,eAAe,CAAC;qBAC1B,CAAC,EAAA;;gBAJF,SAIE,CAAC;;;;;KAEN,CAAC;AApEW,QAAA,iBAAiB,qBAoE5B"}
1
+ {"version":3,"file":"setupAccessTokens.js","sourceRoot":"","sources":["../../../../../../src/apps/cli/commands/project/setup/setupAccessTokens.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8CAAwB;AAExB,sDAA8E;AAEvE,IAAM,iBAAiB,GAAG,UAAO,QAAyB;;;;oBACb,qBAAM,IAAA,uBAAc,EACpE,QAAQ,CACT,EAAA;;gBAFK,KAA4C,SAEjD,EAFW,SAAS,QAAA,EAAW,aAAa,aAAA;;;;gBAI3C,qBAAM,IAAA,wBAAe,EAAC,QAAQ,EAAE,mBAAY,SAAS,wBAAqB,CAAC,EAAA;;gBAA3E,SAA2E,CAAC;;;;gBAE5E,IAAI,GAAC,CAAC,OAAO,KAAK,WAAW,EAAE;oBAC7B,MAAM,GAAC,CAAC;iBACT;gBACD,YAAY;gBAEZ,QAAQ,CAAC,GAAG,CACV,4EAA4E,CAC7E,CAAC;gBACF,QAAQ,CAAC,GAAG,CACV,uNAAuN,CACxN,CAAC;gBACF,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAEI,qBAAM,QAAQ,CAAC,MAAM,CAAC;wBAC3C,SAAO,EAAE,IAAI;wBACb,OAAO,EAAE,oCAAoC;wBAC7C,IAAI,EAAE,YAAY;wBAClB,IAAI,EAAE,SAAS;qBAChB,CAAC,EAAA;;gBALM,UAAU,GAAK,CAAA,SAKrB,CAAA,WALgB;gBAMlB,IAAI,CAAC,UAAU,EAAE;oBACf,QAAQ,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;iBACtC;gBACD,IAAA,iBAAI,EAAC,UAAG,aAAa,8BAA2B,CAAC,CAAC;gBAElD,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBAEnB,QAAQ,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;gBAE9C,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACE,qBAAM,QAAQ,CAAC,MAAM,CAAC;wBACzC,IAAI,EAAE,UAAU;wBAChB,IAAI,EAAE,UAAU;wBAChB,OAAO,EAAE,gBAAgB;qBAC1B,CAAC,EAAA;;gBAJM,QAAQ,GAAK,CAAA,SAInB,CAAA,SAJc;gBAMhB,qBAAM,IAAA,wBAAe,EACnB,QAAQ,EACR,mBAAY,SAAS,eAAY,EACjC;wBACE,GAAG,EAAE,UAAU;wBACf,KAAK,EAAE,QAAQ;wBACf,MAAM,EAAE,IAAI;qBACb,EACD,MAAM,CACP,EAAA;;gBATD,SASC,CAAC;;oBAGkB,qBAAM,IAAA,wBAAe,EACzC,QAAQ,EACR,mBAAY,SAAS,mBAAgB,CACtC,EAAA;;gBAHK,aAAa,GAAG,SAGrB;qBAGC,CAAC,aAAa,CAAC,IAAI,CACjB,UAAC,CAAmB,IAAK,OAAA,CAAC,CAAC,IAAI,KAAK,qBAAqB,EAAhC,CAAgC,CAC1D,EAFD,yBAEC;gBAED,QAAQ,CAAC,GAAG,CACV,0FAA0F,CAC3F,CAAC;gBAEF,qBAAM,IAAA,wBAAe,EACnB,QAAQ,EACR,mBAAY,SAAS,mBAAgB,EACrC;wBACE,EAAE,EAAE,SAAS;wBACb,IAAI,EAAE,qBAAqB;wBAC3B,MAAM,EAAE,CAAC,eAAe,CAAC;qBAC1B,EACD,MAAM,CACP,EAAA;;gBATD,SASC,CAAC;;;;;KAEL,CAAC;AA/EW,QAAA,iBAAiB,qBA+E5B"}
@@ -613,7 +613,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
613
613
  return (mod && mod.__esModule) ? mod : { "default": mod };
614
614
  };
615
615
  exports.__esModule = true;
616
- exports.upsertAllVariables = exports.getVariableValueByRawName = exports.getAllVariables = exports.getProjectInfo = exports.doGitlabRequest = exports.getGitlabToken = exports.setupGitlabToken = exports.hasGitlabToken = void 0;
616
+ exports.upsertAllVariables = exports.clearBackups = exports.getVariableValueByRawName = exports.getAllVariables = exports.getProjectInfo = exports.doGitlabRequest = exports.getGitlabToken = exports.setupGitlabToken = exports.hasGitlabToken = void 0;
617
617
  var pipeline_1 = __nccwpck_require__(5355);
618
618
  var child_process_promise_1 = __nccwpck_require__(5763);
619
619
  var lodash_1 = __nccwpck_require__(3255);
@@ -687,28 +687,31 @@ var getGitlabToken = function (vorpal) { return __awaiter(void 0, void 0, void 0
687
687
  });
688
688
  }); };
689
689
  exports.getGitlabToken = getGitlabToken;
690
- var doGitlabRequest = function (vorpal, path, data, update) {
690
+ var doGitlabRequest = function (vorpal, path, data, method) {
691
691
  if (data === void 0) { data = undefined; }
692
+ if (method === void 0) { method = "GET"; }
692
693
  return __awaiter(void 0, void 0, void 0, function () {
693
- var rootToken, method, result, _a, _b, _c, _d, _e;
694
+ var rootToken, result, _a, _b, _c, _d, _e;
694
695
  return __generator(this, function (_f) {
695
696
  switch (_f.label) {
696
697
  case 0: return [4 /*yield*/, (0, exports.getGitlabToken)(vorpal)];
697
698
  case 1:
698
699
  rootToken = _f.sent();
699
- method = data ? (update ? "PUT" : "POST") : "GET";
700
700
  return [4 /*yield*/, (0, node_fetch_1["default"])("https://git.panter.ch/api/v4/".concat(path), {
701
701
  method: method,
702
702
  headers: {
703
703
  "Content-Type": "application/json",
704
704
  "Private-Token": rootToken
705
705
  },
706
- body: JSON.stringify(data)
706
+ body: data ? JSON.stringify(data) : undefined
707
707
  })];
708
708
  case 2:
709
709
  result = _f.sent();
710
710
  if (result.status >= 200 && result.status < 400) {
711
- return [2 /*return*/, result.json()];
711
+ if (result.headers.get("content-type") === "application/json") {
712
+ return [2 /*return*/, result.json()];
713
+ }
714
+ return [2 /*return*/, null];
712
715
  }
713
716
  if (result.status === 404) {
714
717
  throw new Error("not found");
@@ -790,7 +793,7 @@ var createVariable = function (vorpal, projectId, key, value, masked, environmen
790
793
  value: value,
791
794
  masked: masked && isMaskable(value),
792
795
  environment_scope: environment_scope
793
- })];
796
+ }, "POST")];
794
797
  case 1: return [2 /*return*/, _a.sent()];
795
798
  }
796
799
  });
@@ -804,12 +807,20 @@ var updateVariable = function (vorpal, projectId, key, value, masked) {
804
807
  case 0: return [4 /*yield*/, (0, exports.doGitlabRequest)(vorpal, "projects/".concat(projectId, "/variables/").concat(key), {
805
808
  value: value,
806
809
  masked: masked && isMaskable(value)
807
- }, true)];
810
+ }, "PUT")];
808
811
  case 1: return [2 /*return*/, _a.sent()];
809
812
  }
810
813
  });
811
814
  });
812
815
  };
816
+ var deleteVariable = function (vorpal, projectId, key) { return __awaiter(void 0, void 0, void 0, function () {
817
+ return __generator(this, function (_a) {
818
+ switch (_a.label) {
819
+ case 0: return [4 /*yield*/, (0, exports.doGitlabRequest)(vorpal, "projects/".concat(projectId, "/variables/").concat(key), undefined, "DELETE")];
820
+ case 1: return [2 /*return*/, _a.sent()];
821
+ }
822
+ });
823
+ }); };
813
824
  var getAllCatladderEnvVarsInGitlab = function (vorpal) { return __awaiter(void 0, void 0, void 0, function () {
814
825
  var allVariables;
815
826
  return __generator(this, function (_a) {
@@ -839,6 +850,46 @@ var getAllCatladderEnvVarsInGitlab = function (vorpal) { return __awaiter(void 0
839
850
  }
840
851
  });
841
852
  }); };
853
+ var getBackupKey = function (fullKey, timestamp) {
854
+ return "".concat(fullKey, "_backup_").concat(timestamp);
855
+ };
856
+ var clearBackups = function (vorpal, keep) { return __awaiter(void 0, void 0, void 0, function () {
857
+ var existingVariables, id, _i, _a, _b, key, backups, backupsSorted, toDelete, _c, toDelete_1, timestamp;
858
+ return __generator(this, function (_d) {
859
+ switch (_d.label) {
860
+ case 0: return [4 /*yield*/, getAllCatladderEnvVarsInGitlab(vorpal)];
861
+ case 1:
862
+ existingVariables = _d.sent();
863
+ return [4 /*yield*/, (0, exports.getProjectInfo)(vorpal)];
864
+ case 2:
865
+ id = (_d.sent()).id;
866
+ _i = 0, _a = Object.entries(existingVariables);
867
+ _d.label = 3;
868
+ case 3:
869
+ if (!(_i < _a.length)) return [3 /*break*/, 8];
870
+ _b = _a[_i], key = _b[0], backups = _b[1].backups;
871
+ backupsSorted = backups.sort(function (a, b) { return b - a; });
872
+ toDelete = backupsSorted.slice(keep);
873
+ _c = 0, toDelete_1 = toDelete;
874
+ _d.label = 4;
875
+ case 4:
876
+ if (!(_c < toDelete_1.length)) return [3 /*break*/, 7];
877
+ timestamp = toDelete_1[_c];
878
+ return [4 /*yield*/, deleteVariable(vorpal, id, getBackupKey(key, timestamp))];
879
+ case 5:
880
+ _d.sent();
881
+ _d.label = 6;
882
+ case 6:
883
+ _c++;
884
+ return [3 /*break*/, 4];
885
+ case 7:
886
+ _i++;
887
+ return [3 /*break*/, 3];
888
+ case 8: return [2 /*return*/];
889
+ }
890
+ });
891
+ }); };
892
+ exports.clearBackups = clearBackups;
842
893
  var upsertAllVariables = function (vorpal, variables, env, componentName, backup, masked // FIXME: would be better to have this per variable
843
894
  ) {
844
895
  if (backup === void 0) { backup = true; }
@@ -871,7 +922,7 @@ var upsertAllVariables = function (vorpal, variables, env, componentName, backup
871
922
  case 4:
872
923
  _d.sent();
873
924
  if (!backup) return [3 /*break*/, 6];
874
- return [4 /*yield*/, createVariable(vorpal, id, fullKey + "_backup_" + new Date().getTime(), oldValue, masked, "_backup")];
925
+ return [4 /*yield*/, createVariable(vorpal, id, getBackupKey(fullKey, new Date().getTime()), oldValue, masked, "_backup")];
875
926
  case 5:
876
927
  _d.sent();
877
928
  _d.label = 6;
@@ -39831,7 +39882,7 @@ exports.readConfigSync = readConfigSync;
39831
39882
 
39832
39883
  exports.__esModule = true;
39833
39884
  exports.DOCKER_REGISTRY = exports.PIPELINE_IMAGE_TAG = void 0;
39834
- exports.PIPELINE_IMAGE_TAG = "main-7b4a3dd5" || 0;
39885
+ exports.PIPELINE_IMAGE_TAG = "main-e651ab49" || 0;
39835
39886
  exports.DOCKER_REGISTRY = "git.panter.ch:5001/catladder/catladder" || 0;
39836
39887
 
39837
39888
  /***/ }),
@@ -3468,6 +3468,103 @@ exports["default"] = (function (vorpal) { return __awaiter(void 0, void 0, void
3468
3468
 
3469
3469
  /***/ }),
3470
3470
 
3471
+ /***/ 41863:
3472
+ /***/ (function(__unused_webpack_module, exports, __nccwpck_require__) {
3473
+
3474
+ "use strict";
3475
+
3476
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3477
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
3478
+ return new (P || (P = Promise))(function (resolve, reject) {
3479
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
3480
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
3481
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
3482
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
3483
+ });
3484
+ };
3485
+ var __generator = (this && this.__generator) || function (thisArg, body) {
3486
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
3487
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
3488
+ function verb(n) { return function (v) { return step([n, v]); }; }
3489
+ function step(op) {
3490
+ if (f) throw new TypeError("Generator is already executing.");
3491
+ while (_) try {
3492
+ 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;
3493
+ if (y = 0, t) op = [op[0] & 2, t.value];
3494
+ switch (op[0]) {
3495
+ case 0: case 1: t = op; break;
3496
+ case 4: _.label++; return { value: op[1], done: false };
3497
+ case 5: _.label++; y = op[1]; op = [0]; continue;
3498
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
3499
+ default:
3500
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
3501
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
3502
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
3503
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
3504
+ if (t[2]) _.ops.pop();
3505
+ _.trys.pop(); continue;
3506
+ }
3507
+ op = body.call(thisArg, _);
3508
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
3509
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
3510
+ }
3511
+ };
3512
+ exports.__esModule = true;
3513
+ exports.projectSecretsClearBackups = void 0;
3514
+ var gitlab_1 = __nccwpck_require__(79818);
3515
+ var autocompletions_1 = __nccwpck_require__(41373);
3516
+ var projectSecretsClearBackups = function (vorpal, keep) {
3517
+ if (keep === void 0) { keep = 3; }
3518
+ return __awaiter(void 0, void 0, void 0, function () {
3519
+ return __generator(this, function (_a) {
3520
+ switch (_a.label) {
3521
+ case 0: return [4 /*yield*/, (0, gitlab_1.clearBackups)(vorpal, keep)];
3522
+ case 1:
3523
+ _a.sent();
3524
+ return [2 /*return*/];
3525
+ }
3526
+ });
3527
+ });
3528
+ };
3529
+ exports.projectSecretsClearBackups = projectSecretsClearBackups;
3530
+ exports["default"] = (function (vorpal) { return __awaiter(void 0, void 0, void 0, function () {
3531
+ var _a, _b;
3532
+ return __generator(this, function (_c) {
3533
+ switch (_c.label) {
3534
+ case 0:
3535
+ _b = (_a = vorpal
3536
+ .command("project-secrets-clear-backups", "clears all backups"))
3537
+ .autocomplete;
3538
+ return [4 /*yield*/, (0, autocompletions_1.allEnvsAndAllComponents)()];
3539
+ case 1:
3540
+ _b.apply(_a, [_c.sent()])
3541
+ .action(function () {
3542
+ return __awaiter(this, void 0, void 0, function () {
3543
+ var keep;
3544
+ return __generator(this, function (_a) {
3545
+ switch (_a.label) {
3546
+ case 0: return [4 /*yield*/, this.prompt({
3547
+ type: "number",
3548
+ name: "keep",
3549
+ "default": 1,
3550
+ message: "How many backups should we keep? 🤔"
3551
+ })];
3552
+ case 1:
3553
+ keep = (_a.sent()).keep;
3554
+ return [4 /*yield*/, (0, exports.projectSecretsClearBackups)(this, keep)];
3555
+ case 2: return [2 /*return*/, _a.sent()];
3556
+ }
3557
+ });
3558
+ });
3559
+ });
3560
+ return [2 /*return*/];
3561
+ }
3562
+ });
3563
+ }); });
3564
+ //# sourceMappingURL=commandSecretsClearBackups.js.map
3565
+
3566
+ /***/ }),
3567
+
3471
3568
  /***/ 54108:
3472
3569
  /***/ (function(__unused_webpack_module, exports, __nccwpck_require__) {
3473
3570
 
@@ -3753,6 +3850,7 @@ var commandOpenGrafana_1 = __importDefault(__nccwpck_require__(70414));
3753
3850
  var commandPortForward_1 = __importDefault(__nccwpck_require__(3415));
3754
3851
  var commandTriggerCronjob_1 = __importDefault(__nccwpck_require__(51827));
3755
3852
  var commandOpenGrafanaPod_1 = __importDefault(__nccwpck_require__(55848));
3853
+ var commandSecretsClearBackups_1 = __importDefault(__nccwpck_require__(41863));
3756
3854
  exports["default"] = (function (vorpal) { return __awaiter(void 0, void 0, void 0, function () {
3757
3855
  return __generator(this, function (_a) {
3758
3856
  (0, commandSetup_1["default"])(vorpal);
@@ -3771,6 +3869,7 @@ exports["default"] = (function (vorpal) { return __awaiter(void 0, void 0, void
3771
3869
  (0, commandOpenEnv_1["default"])(vorpal);
3772
3870
  (0, commandTriggerCronjob_1["default"])(vorpal);
3773
3871
  (0, commandConfigSecrets_1["default"])(vorpal);
3872
+ (0, commandSecretsClearBackups_1["default"])(vorpal);
3774
3873
  (0, commandDeletePods_1["default"])(vorpal);
3775
3874
  (0, commandCopyDB_1["default"])(vorpal);
3776
3875
  (0, commandGetShell_1["default"])(vorpal);
@@ -3992,7 +4091,7 @@ var setupAccessTokens = function (instance) { return __awaiter(void 0, void 0, v
3992
4091
  key: "GL_TOKEN",
3993
4092
  value: GL_TOKEN,
3994
4093
  masked: true
3995
- })];
4094
+ }, "POST")];
3996
4095
  case 7:
3997
4096
  _b.sent();
3998
4097
  return [3 /*break*/, 8];
@@ -4005,7 +4104,7 @@ var setupAccessTokens = function (instance) { return __awaiter(void 0, void 0, v
4005
4104
  id: projectId,
4006
4105
  name: "gitlab-deploy-token",
4007
4106
  scopes: ["read_registry"]
4008
- })];
4107
+ }, "POST")];
4009
4108
  case 10:
4010
4109
  _b.sent();
4011
4110
  _b.label = 11;
@@ -7136,7 +7235,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
7136
7235
  return (mod && mod.__esModule) ? mod : { "default": mod };
7137
7236
  };
7138
7237
  exports.__esModule = true;
7139
- exports.upsertAllVariables = exports.getVariableValueByRawName = exports.getAllVariables = exports.getProjectInfo = exports.doGitlabRequest = exports.getGitlabToken = exports.setupGitlabToken = exports.hasGitlabToken = void 0;
7238
+ exports.upsertAllVariables = exports.clearBackups = exports.getVariableValueByRawName = exports.getAllVariables = exports.getProjectInfo = exports.doGitlabRequest = exports.getGitlabToken = exports.setupGitlabToken = exports.hasGitlabToken = void 0;
7140
7239
  var pipeline_1 = __nccwpck_require__(25355);
7141
7240
  var child_process_promise_1 = __nccwpck_require__(75763);
7142
7241
  var lodash_1 = __nccwpck_require__(23255);
@@ -7210,28 +7309,31 @@ var getGitlabToken = function (vorpal) { return __awaiter(void 0, void 0, void 0
7210
7309
  });
7211
7310
  }); };
7212
7311
  exports.getGitlabToken = getGitlabToken;
7213
- var doGitlabRequest = function (vorpal, path, data, update) {
7312
+ var doGitlabRequest = function (vorpal, path, data, method) {
7214
7313
  if (data === void 0) { data = undefined; }
7314
+ if (method === void 0) { method = "GET"; }
7215
7315
  return __awaiter(void 0, void 0, void 0, function () {
7216
- var rootToken, method, result, _a, _b, _c, _d, _e;
7316
+ var rootToken, result, _a, _b, _c, _d, _e;
7217
7317
  return __generator(this, function (_f) {
7218
7318
  switch (_f.label) {
7219
7319
  case 0: return [4 /*yield*/, (0, exports.getGitlabToken)(vorpal)];
7220
7320
  case 1:
7221
7321
  rootToken = _f.sent();
7222
- method = data ? (update ? "PUT" : "POST") : "GET";
7223
7322
  return [4 /*yield*/, (0, node_fetch_1["default"])("https://git.panter.ch/api/v4/".concat(path), {
7224
7323
  method: method,
7225
7324
  headers: {
7226
7325
  "Content-Type": "application/json",
7227
7326
  "Private-Token": rootToken
7228
7327
  },
7229
- body: JSON.stringify(data)
7328
+ body: data ? JSON.stringify(data) : undefined
7230
7329
  })];
7231
7330
  case 2:
7232
7331
  result = _f.sent();
7233
7332
  if (result.status >= 200 && result.status < 400) {
7234
- return [2 /*return*/, result.json()];
7333
+ if (result.headers.get("content-type") === "application/json") {
7334
+ return [2 /*return*/, result.json()];
7335
+ }
7336
+ return [2 /*return*/, null];
7235
7337
  }
7236
7338
  if (result.status === 404) {
7237
7339
  throw new Error("not found");
@@ -7313,7 +7415,7 @@ var createVariable = function (vorpal, projectId, key, value, masked, environmen
7313
7415
  value: value,
7314
7416
  masked: masked && isMaskable(value),
7315
7417
  environment_scope: environment_scope
7316
- })];
7418
+ }, "POST")];
7317
7419
  case 1: return [2 /*return*/, _a.sent()];
7318
7420
  }
7319
7421
  });
@@ -7327,12 +7429,20 @@ var updateVariable = function (vorpal, projectId, key, value, masked) {
7327
7429
  case 0: return [4 /*yield*/, (0, exports.doGitlabRequest)(vorpal, "projects/".concat(projectId, "/variables/").concat(key), {
7328
7430
  value: value,
7329
7431
  masked: masked && isMaskable(value)
7330
- }, true)];
7432
+ }, "PUT")];
7331
7433
  case 1: return [2 /*return*/, _a.sent()];
7332
7434
  }
7333
7435
  });
7334
7436
  });
7335
7437
  };
7438
+ var deleteVariable = function (vorpal, projectId, key) { return __awaiter(void 0, void 0, void 0, function () {
7439
+ return __generator(this, function (_a) {
7440
+ switch (_a.label) {
7441
+ case 0: return [4 /*yield*/, (0, exports.doGitlabRequest)(vorpal, "projects/".concat(projectId, "/variables/").concat(key), undefined, "DELETE")];
7442
+ case 1: return [2 /*return*/, _a.sent()];
7443
+ }
7444
+ });
7445
+ }); };
7336
7446
  var getAllCatladderEnvVarsInGitlab = function (vorpal) { return __awaiter(void 0, void 0, void 0, function () {
7337
7447
  var allVariables;
7338
7448
  return __generator(this, function (_a) {
@@ -7362,6 +7472,46 @@ var getAllCatladderEnvVarsInGitlab = function (vorpal) { return __awaiter(void 0
7362
7472
  }
7363
7473
  });
7364
7474
  }); };
7475
+ var getBackupKey = function (fullKey, timestamp) {
7476
+ return "".concat(fullKey, "_backup_").concat(timestamp);
7477
+ };
7478
+ var clearBackups = function (vorpal, keep) { return __awaiter(void 0, void 0, void 0, function () {
7479
+ var existingVariables, id, _i, _a, _b, key, backups, backupsSorted, toDelete, _c, toDelete_1, timestamp;
7480
+ return __generator(this, function (_d) {
7481
+ switch (_d.label) {
7482
+ case 0: return [4 /*yield*/, getAllCatladderEnvVarsInGitlab(vorpal)];
7483
+ case 1:
7484
+ existingVariables = _d.sent();
7485
+ return [4 /*yield*/, (0, exports.getProjectInfo)(vorpal)];
7486
+ case 2:
7487
+ id = (_d.sent()).id;
7488
+ _i = 0, _a = Object.entries(existingVariables);
7489
+ _d.label = 3;
7490
+ case 3:
7491
+ if (!(_i < _a.length)) return [3 /*break*/, 8];
7492
+ _b = _a[_i], key = _b[0], backups = _b[1].backups;
7493
+ backupsSorted = backups.sort(function (a, b) { return b - a; });
7494
+ toDelete = backupsSorted.slice(keep);
7495
+ _c = 0, toDelete_1 = toDelete;
7496
+ _d.label = 4;
7497
+ case 4:
7498
+ if (!(_c < toDelete_1.length)) return [3 /*break*/, 7];
7499
+ timestamp = toDelete_1[_c];
7500
+ return [4 /*yield*/, deleteVariable(vorpal, id, getBackupKey(key, timestamp))];
7501
+ case 5:
7502
+ _d.sent();
7503
+ _d.label = 6;
7504
+ case 6:
7505
+ _c++;
7506
+ return [3 /*break*/, 4];
7507
+ case 7:
7508
+ _i++;
7509
+ return [3 /*break*/, 3];
7510
+ case 8: return [2 /*return*/];
7511
+ }
7512
+ });
7513
+ }); };
7514
+ exports.clearBackups = clearBackups;
7365
7515
  var upsertAllVariables = function (vorpal, variables, env, componentName, backup, masked // FIXME: would be better to have this per variable
7366
7516
  ) {
7367
7517
  if (backup === void 0) { backup = true; }
@@ -7394,7 +7544,7 @@ var upsertAllVariables = function (vorpal, variables, env, componentName, backup
7394
7544
  case 4:
7395
7545
  _d.sent();
7396
7546
  if (!backup) return [3 /*break*/, 6];
7397
- return [4 /*yield*/, createVariable(vorpal, id, fullKey + "_backup_" + new Date().getTime(), oldValue, masked, "_backup")];
7547
+ return [4 /*yield*/, createVariable(vorpal, id, getBackupKey(fullKey, new Date().getTime()), oldValue, masked, "_backup")];
7398
7548
  case 5:
7399
7549
  _d.sent();
7400
7550
  _d.label = 6;
@@ -350603,7 +350753,7 @@ exports.readConfigSync = readConfigSync;
350603
350753
 
350604
350754
  exports.__esModule = true;
350605
350755
  exports.DOCKER_REGISTRY = exports.PIPELINE_IMAGE_TAG = void 0;
350606
- exports.PIPELINE_IMAGE_TAG = "main-7b4a3dd5" || 0;
350756
+ exports.PIPELINE_IMAGE_TAG = "main-e651ab49" || 0;
350607
350757
  exports.DOCKER_REGISTRY = "git.panter.ch:5001/catladder/catladder" || 0;
350608
350758
 
350609
350759
  /***/ }),