@catladder/cli 0.0.0-fix-migrate-string-cmd-508a469f → 0.0.0-fix-values-as-files-73f39da5

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.
Files changed (90) hide show
  1. package/README.md +2 -1
  2. package/dist/apps/cli/commands/general/index.js +17 -9
  3. package/dist/apps/cli/commands/general/index.js.map +1 -1
  4. package/dist/apps/cli/commands/general/portForward.js +5 -6
  5. package/dist/apps/cli/commands/general/portForward.js.map +1 -1
  6. package/dist/apps/cli/commands/project/commandCloudSqlProxy.js +27 -19
  7. package/dist/apps/cli/commands/project/commandCloudSqlProxy.js.map +1 -1
  8. package/dist/apps/cli/commands/project/commandConfigSecrets.d.ts +2 -1
  9. package/dist/apps/cli/commands/project/commandConfigSecrets.js +175 -110
  10. package/dist/apps/cli/commands/project/commandConfigSecrets.js.map +1 -1
  11. package/dist/apps/cli/commands/project/commandDeletePods.js +4 -3
  12. package/dist/apps/cli/commands/project/commandDeletePods.js.map +1 -1
  13. package/dist/apps/cli/commands/project/{commandInitGitlab.d.ts → commandInitProject.old.d.ts} +0 -0
  14. package/dist/apps/cli/commands/project/{commandInitProject.js → commandInitProject.old.js} +1 -1
  15. package/dist/apps/cli/commands/project/commandInitProject.old.js.map +1 -0
  16. package/dist/apps/cli/commands/project/{commandInitProject.d.ts → commandSetup.d.ts} +0 -0
  17. package/dist/apps/cli/commands/project/{commandReloadConfig.js → commandSetup.js} +4 -8
  18. package/dist/apps/cli/commands/project/commandSetup.js.map +1 -0
  19. package/dist/apps/cli/commands/project/commandTriggerCronjob.js +2 -2
  20. package/dist/apps/cli/commands/project/commandTriggerCronjob.js.map +1 -1
  21. package/dist/apps/cli/commands/project/index.js +3 -6
  22. package/dist/apps/cli/commands/project/index.js.map +1 -1
  23. package/dist/apps/cli/commands/project/setup/index.d.ts +2 -0
  24. package/dist/apps/cli/commands/project/setup/index.js +103 -0
  25. package/dist/apps/cli/commands/project/setup/index.js.map +1 -0
  26. package/dist/apps/cli/commands/project/setup/setupAccessTokens.d.ts +2 -0
  27. package/dist/apps/cli/commands/project/setup/setupAccessTokens.js +115 -0
  28. package/dist/apps/cli/commands/project/setup/setupAccessTokens.js.map +1 -0
  29. package/dist/apps/cli/commands/project/setup/setupContext.d.ts +3 -0
  30. package/dist/apps/cli/commands/project/setup/setupContext.js +74 -0
  31. package/dist/apps/cli/commands/project/setup/setupContext.js.map +1 -0
  32. package/dist/apps/cli/commands/project/setup/setupKubernetes.d.ts +3 -0
  33. package/dist/apps/cli/commands/project/setup/setupKubernetes.js +132 -0
  34. package/dist/apps/cli/commands/project/setup/setupKubernetes.js.map +1 -0
  35. package/dist/apps/cli/commands/project/utils/autocompletions.js +1 -1
  36. package/dist/apps/cli/commands/project/utils/autocompletions.js.map +1 -1
  37. package/dist/apps/cli/commands/project/utils/ensureNamespace.js +6 -8
  38. package/dist/apps/cli/commands/project/utils/ensureNamespace.js.map +1 -1
  39. package/dist/apps/cli/config/writeConfig.js +1 -1
  40. package/dist/apps/cli/config/writeConfig.js.map +1 -1
  41. package/dist/apps/cli/verify/migration/fromv2.js +8 -6
  42. package/dist/apps/cli/verify/migration/fromv2.js.map +1 -1
  43. package/dist/config/getProjectConfig.d.ts +8 -5
  44. package/dist/config/getProjectConfig.js +81 -36
  45. package/dist/config/getProjectConfig.js.map +1 -1
  46. package/dist/k8sApi/index.d.ts +7 -5
  47. package/dist/k8sApi/index.js +23 -9
  48. package/dist/k8sApi/index.js.map +1 -1
  49. package/dist/tsconfig.tsbuildinfo +1 -1
  50. package/dist/utils/cluster.js +0 -2
  51. package/dist/utils/cluster.js.map +1 -1
  52. package/dist/utils/gitlab.d.ts +1 -0
  53. package/dist/utils/gitlab.js +17 -1
  54. package/dist/utils/gitlab.js.map +1 -1
  55. package/dist/utils/projects/index.js +7 -8
  56. package/dist/utils/projects/index.js.map +1 -1
  57. package/package.json +3 -3
  58. package/src/apps/cli/commands/general/index.ts +6 -7
  59. package/src/apps/cli/commands/general/portForward.ts +2 -1
  60. package/src/apps/cli/commands/project/commandCloudSqlProxy.ts +24 -6
  61. package/src/apps/cli/commands/project/commandConfigSecrets.ts +139 -128
  62. package/src/apps/cli/commands/project/commandDeletePods.ts +2 -1
  63. package/src/apps/cli/commands/project/{commandInitProject.ts → commandInitProject.old.ts} +0 -0
  64. package/src/apps/cli/commands/project/commandSetup.ts +12 -0
  65. package/src/apps/cli/commands/project/commandTriggerCronjob.ts +3 -3
  66. package/src/apps/cli/commands/project/index.ts +4 -6
  67. package/src/apps/cli/commands/project/setup/index.ts +42 -0
  68. package/src/apps/cli/commands/project/setup/setupAccessTokens.ts +72 -0
  69. package/src/apps/cli/commands/project/setup/setupContext.ts +37 -0
  70. package/src/apps/cli/commands/project/setup/setupKubernetes.ts +112 -0
  71. package/src/apps/cli/commands/project/utils/autocompletions.ts +2 -2
  72. package/src/apps/cli/commands/project/utils/ensureNamespace.ts +2 -1
  73. package/src/apps/cli/config/writeConfig.ts +1 -1
  74. package/src/apps/cli/verify/migration/fromv2.ts +4 -2
  75. package/src/config/getProjectConfig.ts +74 -34
  76. package/src/k8sApi/index.ts +20 -8
  77. package/src/utils/cluster.ts +0 -2
  78. package/src/utils/gitlab.ts +11 -0
  79. package/src/utils/projects/index.ts +3 -1
  80. package/dist/apps/cli/commands/project/commandInitGitlab.js +0 -136
  81. package/dist/apps/cli/commands/project/commandInitGitlab.js.map +0 -1
  82. package/dist/apps/cli/commands/project/commandInitProject.js.map +0 -1
  83. package/dist/apps/cli/commands/project/commandReloadConfig.d.ts +0 -3
  84. package/dist/apps/cli/commands/project/commandReloadConfig.js.map +0 -1
  85. package/dist/utils/formatEnvVars.d.ts +0 -2
  86. package/dist/utils/formatEnvVars.js +0 -10
  87. package/dist/utils/formatEnvVars.js.map +0 -1
  88. package/src/apps/cli/commands/project/commandInitGitlab.ts +0 -248
  89. package/src/apps/cli/commands/project/commandReloadConfig.ts +0 -12
  90. package/src/utils/formatEnvVars.ts +0 -7
@@ -0,0 +1,103 @@
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.setupProject = void 0;
40
+ var getProjectConfig_1 = require("../../../../../config/getProjectConfig");
41
+ var commandConfigSecrets_1 = require("../commandConfigSecrets");
42
+ var setupAccessTokens_1 = require("./setupAccessTokens");
43
+ var setupContext_1 = require("./setupContext");
44
+ var setupProject = function (instance) { return __awaiter(void 0, void 0, void 0, function () {
45
+ var allContext, _i, allContext_1, context, configSecrets;
46
+ return __generator(this, function (_a) {
47
+ switch (_a.label) {
48
+ case 0: return [4 /*yield*/, (0, getProjectConfig_1.getAllPipelineContexts)()];
49
+ case 1:
50
+ allContext = _a.sent();
51
+ _i = 0, allContext_1 = allContext;
52
+ _a.label = 2;
53
+ case 2:
54
+ if (!(_i < allContext_1.length)) return [3 /*break*/, 5];
55
+ context = allContext_1[_i];
56
+ return [4 /*yield*/, (0, setupContext_1.setupContext)(instance, context)];
57
+ case 3:
58
+ _a.sent();
59
+ _a.label = 4;
60
+ case 4:
61
+ _i++;
62
+ return [3 /*break*/, 2];
63
+ case 5: return [4 /*yield*/, (0, setupAccessTokens_1.setupAccessTokens)(instance)];
64
+ case 6:
65
+ _a.sent();
66
+ instance.log("");
67
+ return [4 /*yield*/, instance.prompt({
68
+ "default": true,
69
+ message: "Before deployments work, you need to config secrets. Do it now?",
70
+ name: "configSecrets",
71
+ type: "confirm"
72
+ })];
73
+ case 7:
74
+ configSecrets = (_a.sent()).configSecrets;
75
+ instance.log("");
76
+ if (!configSecrets) return [3 /*break*/, 9];
77
+ return [4 /*yield*/, (0, commandConfigSecrets_1.projectConfigSecrets)(instance)];
78
+ case 8:
79
+ _a.sent();
80
+ return [3 /*break*/, 10];
81
+ case 9:
82
+ instance.log("👆 don't forget to config secret using `project-config-secrets`");
83
+ _a.label = 10;
84
+ case 10:
85
+ instance.log("");
86
+ instance.log("gitlab is ready! 🥂");
87
+ instance.log("\n");
88
+ instance.log("do not forget to make sure that:");
89
+ [
90
+ "you have __health route in place",
91
+ "lint and test are defined",
92
+ "secrets are configured (call project-config-secret)",
93
+ "eat your vegetables",
94
+ "be awesome 🤩",
95
+ ].forEach(function (tip) { return instance.log(" - ".concat(tip)); });
96
+ instance.log("\n");
97
+ instance.log("\n");
98
+ return [2 /*return*/];
99
+ }
100
+ });
101
+ }); };
102
+ exports.setupProject = setupProject;
103
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/apps/cli/commands/project/setup/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,2EAAgF;AAChF,gEAA+D;AAC/D,yDAAwD;AACxD,+CAA8C;AAEvC,IAAM,YAAY,GAAG,UAAO,QAAyB;;;;oBACvC,qBAAM,IAAA,yCAAsB,GAAE,EAAA;;gBAA3C,UAAU,GAAG,SAA8B;sBAEjB,EAAV,yBAAU;;;qBAAV,CAAA,wBAAU,CAAA;gBAArB,OAAO;gBAChB,qBAAM,IAAA,2BAAY,EAAC,QAAQ,EAAE,OAAO,CAAC,EAAA;;gBAArC,SAAqC,CAAC;;;gBADlB,IAAU,CAAA;;oBAGhC,qBAAM,IAAA,qCAAiB,EAAC,QAAQ,CAAC,EAAA;;gBAAjC,SAAiC,CAAC;gBAClC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACS,qBAAM,QAAQ,CAAC,MAAM,CAAC;wBAC9C,SAAO,EAAE,IAAI;wBACb,OAAO,EAAE,iEAAiE;wBAC1E,IAAI,EAAE,eAAe;wBACrB,IAAI,EAAE,SAAS;qBAChB,CAAC,EAAA;;gBALM,aAAa,GAAK,CAAA,SAKxB,CAAA,cALmB;gBAMrB,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;qBACb,aAAa,EAAb,wBAAa;gBACf,qBAAM,IAAA,2CAAoB,EAAC,QAAQ,CAAC,EAAA;;gBAApC,SAAoC,CAAC;;;gBAErC,QAAQ,CAAC,GAAG,CACV,iEAAiE,CAClE,CAAC;;;gBAEJ,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACjB,QAAQ,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC;gBACpC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACnB,QAAQ,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;gBACjD;oBACE,kCAAkC;oBAClC,2BAA2B;oBAC3B,qDAAqD;oBACrD,qBAAqB;oBACrB,eAAe;iBAChB,CAAC,OAAO,CAAC,UAAC,GAAG,IAAK,OAAA,QAAQ,CAAC,GAAG,CAAC,aAAM,GAAG,CAAE,CAAC,EAAzB,CAAyB,CAAC,CAAC;gBAC9C,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACnB,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;;;;KACpB,CAAC;AAnCW,QAAA,YAAY,gBAmCvB"}
@@ -0,0 +1,2 @@
1
+ import { CommandInstance } from "vorpal";
2
+ export declare const setupAccessTokens: (instance: CommandInstance) => Promise<void>;
@@ -0,0 +1,115 @@
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
+ var __importDefault = (this && this.__importDefault) || function (mod) {
39
+ return (mod && mod.__esModule) ? mod : { "default": mod };
40
+ };
41
+ exports.__esModule = true;
42
+ exports.setupAccessTokens = void 0;
43
+ var open_1 = __importDefault(require("open"));
44
+ var gitlab_1 = require("../../../../../utils/gitlab");
45
+ var setupAccessTokens = function (instance) { return __awaiter(void 0, void 0, void 0, function () {
46
+ var _a, projectId, projectWebUrl, e_1, understood, GL_TOKEN, deploy_tokens;
47
+ return __generator(this, function (_b) {
48
+ switch (_b.label) {
49
+ case 0: return [4 /*yield*/, (0, gitlab_1.getProjectInfo)(instance)];
50
+ case 1:
51
+ _a = _b.sent(), projectId = _a.id, projectWebUrl = _a.web_url;
52
+ _b.label = 2;
53
+ case 2:
54
+ _b.trys.push([2, 4, , 8]);
55
+ return [4 /*yield*/, (0, gitlab_1.doGitlabRequest)(instance, "projects/".concat(projectId, "/variables/GL_TOKEN"))];
56
+ case 3:
57
+ _b.sent();
58
+ return [3 /*break*/, 8];
59
+ case 4:
60
+ e_1 = _b.sent();
61
+ if (e_1.message !== "not found") {
62
+ throw e_1;
63
+ }
64
+ // not found
65
+ instance.log("I need add a GL_TOKEN to the project, so that semantic release will work\n");
66
+ instance.log("👉 Please please create a project access token in gitlab and copy its value into clipboard\n\n - name: something like 'semantic-release'\n - expires: leave empty\n - scopes: api, read_repository");
67
+ instance.log("\n");
68
+ return [4 /*yield*/, instance.prompt({
69
+ "default": true,
70
+ message: "Understood and open gitlab now? 🤔",
71
+ name: "understood",
72
+ type: "confirm"
73
+ })];
74
+ case 5:
75
+ understood = (_b.sent()).understood;
76
+ if (!understood) {
77
+ instance.log("continuing anyway...");
78
+ }
79
+ (0, open_1["default"])("".concat(projectWebUrl, "/-/settings/access_tokens"));
80
+ instance.log("\n");
81
+ instance.log("Enter your copied token now: ");
82
+ instance.log("\n");
83
+ return [4 /*yield*/, instance.prompt({
84
+ type: "password",
85
+ name: "GL_TOKEN",
86
+ message: "Access Token: "
87
+ })];
88
+ case 6:
89
+ GL_TOKEN = (_b.sent()).GL_TOKEN;
90
+ return [4 /*yield*/, (0, gitlab_1.doGitlabRequest)(instance, "projects/".concat(projectId, "/variables"), {
91
+ key: "GL_TOKEN",
92
+ value: GL_TOKEN
93
+ })];
94
+ case 7:
95
+ _b.sent();
96
+ return [3 /*break*/, 8];
97
+ case 8: return [4 /*yield*/, (0, gitlab_1.doGitlabRequest)(instance, "projects/".concat(projectId, "/deploy_tokens"))];
98
+ case 9:
99
+ deploy_tokens = _b.sent();
100
+ if (!!deploy_tokens.find(function (v) { return v.name === "gitlab-deploy-token"; })) return [3 /*break*/, 11];
101
+ instance.log("I will setup the 'GitLab Deploy Token', so Kubernetes can pull images from this project.");
102
+ return [4 /*yield*/, (0, gitlab_1.doGitlabRequest)(instance, "projects/".concat(projectId, "/deploy_tokens"), {
103
+ id: projectId,
104
+ name: "gitlab-deploy-token",
105
+ scopes: ["read_registry"]
106
+ })];
107
+ case 10:
108
+ _b.sent();
109
+ _b.label = 11;
110
+ case 11: return [2 /*return*/];
111
+ }
112
+ });
113
+ }); };
114
+ exports.setupAccessTokens = setupAccessTokens;
115
+ //# sourceMappingURL=setupAccessTokens.js.map
@@ -0,0 +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,oMAAoM,CACrM,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;qBAChB,CAAC,EAAA;;gBAHF,SAGE,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;AAnEW,QAAA,iBAAiB,qBAmE5B"}
@@ -0,0 +1,3 @@
1
+ import { Context } from "@catladder/pipeline";
2
+ import { CommandInstance } from "vorpal";
3
+ export declare const setupContext: (instance: CommandInstance, context: Context) => Promise<void>;
@@ -0,0 +1,74 @@
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.setupContext = void 0;
40
+ var pipeline_1 = require("@catladder/pipeline");
41
+ var setupKubernetes_1 = require("./setupKubernetes");
42
+ var setupContext = function (instance, context) { return __awaiter(void 0, void 0, void 0, function () {
43
+ var deployConfig;
44
+ return __generator(this, function (_a) {
45
+ switch (_a.label) {
46
+ case 0:
47
+ instance.log("");
48
+ instance.log("==================================================================================");
49
+ instance.log("🐱 🔧 setting up " +
50
+ context.environment.shortName +
51
+ ":" +
52
+ context.componentName +
53
+ "...");
54
+ instance.log("");
55
+ deployConfig = context.componentConfig.deploy;
56
+ if (!(0, pipeline_1.isOfDeployType)(deployConfig, "kubernetes")) return [3 /*break*/, 2];
57
+ return [4 /*yield*/, (0, setupKubernetes_1.setupKubernetes)(instance, context)];
58
+ case 1:
59
+ _a.sent();
60
+ _a.label = 2;
61
+ case 2:
62
+ instance.log("");
63
+ instance.log("✅ " +
64
+ context.environment.shortName +
65
+ ":" +
66
+ context.componentName +
67
+ " done!");
68
+ instance.log("");
69
+ return [2 /*return*/];
70
+ }
71
+ });
72
+ }); };
73
+ exports.setupContext = setupContext;
74
+ //# sourceMappingURL=setupContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setupContext.js","sourceRoot":"","sources":["../../../../../../src/apps/cli/commands/project/setup/setupContext.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAA8D;AAE9D,qDAAoD;AAE7C,IAAM,YAAY,GAAG,UAC1B,QAAyB,EACzB,OAAgB;;;;;gBAEhB,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACjB,QAAQ,CAAC,GAAG,CACV,oFAAoF,CACrF,CAAC;gBAEF,QAAQ,CAAC,GAAG,CACV,mBAAmB;oBACjB,OAAO,CAAC,WAAW,CAAC,SAAS;oBAC7B,GAAG;oBACH,OAAO,CAAC,aAAa;oBACrB,KAAK,CACR,CAAC;gBACF,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACX,YAAY,GAAG,OAAO,CAAC,eAAe,CAAC,MAAM,CAAC;qBAChD,IAAA,yBAAc,EAAC,YAAY,EAAE,YAAY,CAAC,EAA1C,wBAA0C;gBAC5C,qBAAM,IAAA,iCAAe,EAAC,QAAQ,EAAE,OAAO,CAAC,EAAA;;gBAAxC,SAAwC,CAAC;;;gBAG3C,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACjB,QAAQ,CAAC,GAAG,CACV,IAAI;oBACF,OAAO,CAAC,WAAW,CAAC,SAAS;oBAC7B,GAAG;oBACH,OAAO,CAAC,aAAa;oBACrB,QAAQ,CACX,CAAC;gBAEF,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;;;;KAClB,CAAC;AAhCW,QAAA,YAAY,gBAgCvB"}
@@ -0,0 +1,3 @@
1
+ import { Context } from "@catladder/pipeline";
2
+ import { CommandInstance } from "vorpal";
3
+ export declare const setupKubernetes: (instance: CommandInstance, context: Context) => Promise<void>;
@@ -0,0 +1,132 @@
1
+ "use strict";
2
+ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
3
+ if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
4
+ return cooked;
5
+ };
6
+ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
7
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
8
+ return new (P || (P = Promise))(function (resolve, reject) {
9
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
10
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
11
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
12
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
13
+ });
14
+ };
15
+ var __generator = (this && this.__generator) || function (thisArg, body) {
16
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
17
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
18
+ function verb(n) { return function (v) { return step([n, v]); }; }
19
+ function step(op) {
20
+ if (f) throw new TypeError("Generator is already executing.");
21
+ while (_) try {
22
+ 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;
23
+ if (y = 0, t) op = [op[0] & 2, t.value];
24
+ switch (op[0]) {
25
+ case 0: case 1: t = op; break;
26
+ case 4: _.label++; return { value: op[1], done: false };
27
+ case 5: _.label++; y = op[1]; op = [0]; continue;
28
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
29
+ default:
30
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
31
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
32
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
33
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
34
+ if (t[2]) _.ops.pop();
35
+ _.trys.pop(); continue;
36
+ }
37
+ op = body.call(thisArg, _);
38
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
39
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
40
+ }
41
+ };
42
+ var __importDefault = (this && this.__importDefault) || function (mod) {
43
+ return (mod && mod.__esModule) ? mod : { "default": mod };
44
+ };
45
+ exports.__esModule = true;
46
+ exports.setupKubernetes = void 0;
47
+ var pipeline_1 = require("@catladder/pipeline");
48
+ var zx_1 = require("zx");
49
+ var cluster_1 = require("../../../../../utils/cluster");
50
+ var gitlab_1 = require("../../../../../utils/gitlab");
51
+ var ensureNamespace_1 = __importDefault(require("../utils/ensureNamespace"));
52
+ var setupKubernetes = function (instance, context) { return __awaiter(void 0, void 0, void 0, function () {
53
+ var deployConfig, fullName, namespace, serviceAccountName, KUBE_URL, e_1, tokenName, KUBE_CA_PEM, KUBE_TOKEN, vars;
54
+ return __generator(this, function (_a) {
55
+ switch (_a.label) {
56
+ case 0:
57
+ deployConfig = context.componentConfig.deploy;
58
+ if (!(0, pipeline_1.isOfDeployType)(deployConfig, "kubernetes")) {
59
+ throw new Error("cannot run setupKubernetes on non-kubernetes deployments");
60
+ }
61
+ fullName = (0, pipeline_1.getFullKubernetesClusterName)(deployConfig.cluster);
62
+ instance.log("cluster: ".concat(fullName));
63
+ return [4 /*yield*/, (0, cluster_1.connectToCluster)(fullName)];
64
+ case 1:
65
+ _a.sent();
66
+ instance.log("");
67
+ instance.log("ensuring namespace ...");
68
+ return [4 /*yield*/, (0, ensureNamespace_1["default"])(context)];
69
+ case 2:
70
+ namespace = _a.sent();
71
+ instance.log("Namespace " + namespace + " created / updated!");
72
+ instance.log("");
73
+ //$.verbose = true;
74
+ // we name the service account and the role and the role binding with the same name
75
+ // we currently create one per component to better separate them
76
+ instance.log("ensuring service accounts...");
77
+ serviceAccountName = "cl-".concat(context.componentName, "-deploy");
78
+ return [4 /*yield*/, (0, zx_1.$)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["TERM=dumb kubectl cluster-info | grep -E 'Kubernetes master|Kubernetes control plane' | awk '/http/ {print $NF}'"], ["TERM=dumb kubectl cluster-info | grep -E 'Kubernetes master|Kubernetes control plane' | awk '/http/ {print $NF}'"]))).then(function (s) { return s.stdout.trim(); })];
79
+ case 3:
80
+ KUBE_URL = _a.sent();
81
+ _a.label = 4;
82
+ case 4:
83
+ _a.trys.push([4, 8, , 9]);
84
+ return [4 /*yield*/, (0, zx_1.$)(templateObject_2 || (templateObject_2 = __makeTemplateObject(["kubectl delete serviceaccount --namespace ", " ", ""], ["kubectl delete serviceaccount --namespace ", " ", ""])), namespace, serviceAccountName)];
85
+ case 5:
86
+ _a.sent();
87
+ return [4 /*yield*/, (0, zx_1.$)(templateObject_3 || (templateObject_3 = __makeTemplateObject(["kubectl delete rolebinding --namespace ", " ", ""], ["kubectl delete rolebinding --namespace ", " ", ""])), namespace, serviceAccountName)];
88
+ case 6:
89
+ _a.sent();
90
+ return [4 /*yield*/, (0, zx_1.$)(templateObject_4 || (templateObject_4 = __makeTemplateObject(["kubectl delete role --namespace ", " ", ""], ["kubectl delete role --namespace ", " ", ""])), namespace, serviceAccountName)];
91
+ case 7:
92
+ _a.sent();
93
+ return [3 /*break*/, 9];
94
+ case 8:
95
+ e_1 = _a.sent();
96
+ return [3 /*break*/, 9];
97
+ case 9: return [4 /*yield*/, (0, zx_1.$)(templateObject_5 || (templateObject_5 = __makeTemplateObject(["kubectl create serviceaccount --namespace ", " ", ""], ["kubectl create serviceaccount --namespace ", " ", ""])), namespace, serviceAccountName)];
98
+ case 10:
99
+ _a.sent();
100
+ // upsert role in the ns
101
+ return [4 /*yield*/, (0, zx_1.$)(templateObject_6 || (templateObject_6 = __makeTemplateObject(["cat <<EOF | kubectl apply -f -\nkind: Role\napiVersion: rbac.authorization.k8s.io/v1\nmetadata:\n namespace: ", "\n name: ", "\nrules:\n- apiGroups: [\"\", \"extensions\", \"apps\", \"networking.k8s.io\", \"batch\"]\n resources: [\"deployments\", \"replicasets\", \"statefulsets\", \"pods\", \"secrets\", \"configmaps\", \"services\", \"ingresses\", \"serviceaccounts\", \"jobs\", \"cronjobs\"]\n verbs: [\"get\", \"list\", \"watch\", \"create\", \"update\", \"patch\", \"delete\"] # You can also use [\"*\"]\n---\nkind: RoleBinding\napiVersion: rbac.authorization.k8s.io/v1\nmetadata:\n name: ", "\n namespace: ", "\nsubjects:\n - kind: ServiceAccount\n name: ", "\n namespace: ", "\nroleRef:\n kind: Role\n name: ", "\n apiGroup: rbac.authorization.k8s.io\nEOF\n"], ["cat <<EOF | kubectl apply -f -\nkind: Role\napiVersion: rbac.authorization.k8s.io/v1\nmetadata:\n namespace: ", "\n name: ", "\nrules:\n- apiGroups: [\"\", \"extensions\", \"apps\", \"networking.k8s.io\", \"batch\"]\n resources: [\"deployments\", \"replicasets\", \"statefulsets\", \"pods\", \"secrets\", \"configmaps\", \"services\", \"ingresses\", \"serviceaccounts\", \"jobs\", \"cronjobs\"]\n verbs: [\"get\", \"list\", \"watch\", \"create\", \"update\", \"patch\", \"delete\"] # You can also use [\"*\"]\n---\nkind: RoleBinding\napiVersion: rbac.authorization.k8s.io/v1\nmetadata:\n name: ", "\n namespace: ", "\nsubjects:\n - kind: ServiceAccount\n name: ", "\n namespace: ", "\nroleRef:\n kind: Role\n name: ", "\n apiGroup: rbac.authorization.k8s.io\nEOF\n"])), namespace, serviceAccountName, serviceAccountName, namespace, serviceAccountName, namespace, serviceAccountName)];
102
+ case 11:
103
+ // upsert role in the ns
104
+ _a.sent();
105
+ return [4 /*yield*/, (0, zx_1.$)(templateObject_7 || (templateObject_7 = __makeTemplateObject(["kubectl get serviceaccount --namespace ", " ", " -o jsonpath='{.secrets[0].name}'"], ["kubectl get serviceaccount --namespace ", " ", " -o jsonpath='{.secrets[0].name}'"])), namespace, serviceAccountName)];
106
+ case 12:
107
+ tokenName = _a.sent();
108
+ return [4 /*yield*/, (0, zx_1.$)(templateObject_8 || (templateObject_8 = __makeTemplateObject(["kubectl get secret ", " --namespace ", " -o jsonpath=\"{['data']['ca\\.crt']}\""], ["kubectl get secret ", " --namespace ", " -o jsonpath=\"{['data']['ca\\\\.crt']}\""])), tokenName, namespace).then(function (c) { return c.stdout.trim(); })];
109
+ case 13:
110
+ KUBE_CA_PEM = _a.sent();
111
+ return [4 /*yield*/, (0, zx_1.$)(templateObject_9 || (templateObject_9 = __makeTemplateObject(["kubectl get secret ", " --namespace ", " -o jsonpath=\"{['data']['token']}\" | base64 --decode"], ["kubectl get secret ", " --namespace ", " -o jsonpath=\"{['data']['token']}\" | base64 --decode"])), tokenName, namespace).then(function (c) { return c.stdout.trim(); })];
112
+ case 14:
113
+ KUBE_TOKEN = _a.sent();
114
+ vars = {
115
+ KUBE_TOKEN: KUBE_TOKEN,
116
+ KUBE_CA_PEM: KUBE_CA_PEM,
117
+ KUBE_URL: KUBE_URL
118
+ };
119
+ instance.log("service accounts created / updated!");
120
+ instance.log("");
121
+ instance.log("pusing secrets to gitlab...");
122
+ return [4 /*yield*/, (0, gitlab_1.upsertAllVariables)(instance, vars, context.environment.shortName, context.componentName)];
123
+ case 15:
124
+ _a.sent();
125
+ instance.log("done!");
126
+ return [2 /*return*/];
127
+ }
128
+ });
129
+ }); };
130
+ exports.setupKubernetes = setupKubernetes;
131
+ var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6, templateObject_7, templateObject_8, templateObject_9;
132
+ //# sourceMappingURL=setupKubernetes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setupKubernetes.js","sourceRoot":"","sources":["../../../../../../src/apps/cli/commands/project/setup/setupKubernetes.ts"],"names":[],"mappings":"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"}
@@ -67,7 +67,7 @@ var envAndComponents = function () { return __awaiter(void 0, void 0, void 0, fu
67
67
  var allEnvAndcomponents;
68
68
  return __generator(this, function (_a) {
69
69
  switch (_a.label) {
70
- case 0: return [4 /*yield*/, (0, getProjectConfig_1.getAllComponentsWithAllEnvs)()];
70
+ case 0: return [4 /*yield*/, (0, getProjectConfig_1.getAllComponentsWithAllEnvsFlat)()];
71
71
  case 1:
72
72
  allEnvAndcomponents = _a.sent();
73
73
  return [2 /*return*/, allEnvAndcomponents.reduce(function (acc, _a) {
@@ -1 +1 @@
1
- {"version":3,"file":"autocompletions.js","sourceRoot":"","sources":["../../../../../../src/apps/cli/commands/project/utils/autocompletions.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAA4E;AAC5E,2EAGgD;AAEzC,IAAM,OAAO,GAAG;;;;oBACN,qBAAM,IAAA,mCAAgB,GAAE,EAAA;;gBAAjC,MAAM,GAAG,SAAwB;gBACvC,IAAI,CAAC,MAAM,EAAE;oBACX,sBAAO,EAAE,EAAC;iBACX;gBACD,sBAAO,IAAA,oCAAyB,EAAC,MAAM,CAAC,EAAC;;;KAC1C,CAAC;AANW,QAAA,OAAO,WAMlB;AAEK,IAAM,gBAAgB,GAAG;;;;oBACF,qBAAM,IAAA,8CAA2B,GAAE,EAAA;;gBAAzD,mBAAmB,GAAG,SAAmC;gBAE/D,sBAAO,mBAAmB,CAAC,MAAM,CAC/B,UAAC,GAAG,EAAE,EAAsB;4BAApB,GAAG,SAAA,EAAE,aAAa,mBAAA;wBAAO,uCAAI,GAAG,UAAE,GAAG,GAAG,GAAG,GAAG,aAAa;oBAAlC,CAAmC,EACpE,EAAE,CACH,EAAC;;;KACH,CAAC;AAPW,QAAA,gBAAgB,oBAO3B;AAEK,IAAM,uBAAuB,GAAG;;;;;;gBACzB,qBAAM,IAAA,eAAO,GAAE,EAAA;;6DAAhB,CAAC,SAAe,CAAC;gBAAM,qBAAM,IAAA,wBAAgB,GAAE,EAAA;oBAA1D,6DAAiC,CAAC,SAAwB,CAAC,WAAE;;;KAC9D,CAAC;AAFW,QAAA,uBAAuB,2BAElC"}
1
+ {"version":3,"file":"autocompletions.js","sourceRoot":"","sources":["../../../../../../src/apps/cli/commands/project/utils/autocompletions.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAA4E;AAC5E,2EAGgD;AAEzC,IAAM,OAAO,GAAG;;;;oBACN,qBAAM,IAAA,mCAAgB,GAAE,EAAA;;gBAAjC,MAAM,GAAG,SAAwB;gBACvC,IAAI,CAAC,MAAM,EAAE;oBACX,sBAAO,EAAE,EAAC;iBACX;gBACD,sBAAO,IAAA,oCAAyB,EAAC,MAAM,CAAC,EAAC;;;KAC1C,CAAC;AANW,QAAA,OAAO,WAMlB;AAEK,IAAM,gBAAgB,GAAG;;;;oBACF,qBAAM,IAAA,kDAA+B,GAAE,EAAA;;gBAA7D,mBAAmB,GAAG,SAAuC;gBAEnE,sBAAO,mBAAmB,CAAC,MAAM,CAC/B,UAAC,GAAG,EAAE,EAAsB;4BAApB,GAAG,SAAA,EAAE,aAAa,mBAAA;wBAAO,uCAAI,GAAG,UAAE,GAAG,GAAG,GAAG,GAAG,aAAa;oBAAlC,CAAmC,EACpE,EAAE,CACH,EAAC;;;KACH,CAAC;AAPW,QAAA,gBAAgB,oBAO3B;AAEK,IAAM,uBAAuB,GAAG;;;;;;gBACzB,qBAAM,IAAA,eAAO,GAAE,EAAA;;6DAAhB,CAAC,SAAe,CAAC;gBAAM,qBAAM,IAAA,wBAAgB,GAAE,EAAA;oBAA1D,6DAAiC,CAAC,SAAwB,CAAC,WAAE;;;KAC9D,CAAC;AAFW,QAAA,uBAAuB,2BAElC"}
@@ -46,17 +46,14 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
46
46
  if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
47
47
  }
48
48
  };
49
- var __importDefault = (this && this.__importDefault) || function (mod) {
50
- return (mod && mod.__esModule) ? mod : { "default": mod };
51
- };
52
49
  exports.__esModule = true;
53
50
  var pipeline_1 = require("@catladder/pipeline");
54
51
  var client_node_1 = require("@kubernetes/client-node");
55
- var k8sApi_1 = __importDefault(require("../../../../../k8sApi"));
52
+ var k8sApi_1 = require("../../../../../k8sApi");
56
53
  function default_1(context) {
57
54
  var _a, _b, _c, _d, _e;
58
55
  return __awaiter(this, void 0, void 0, function () {
59
- var namespace, namespaceBody, metadata, e_1;
56
+ var namespace, namespaceBody, metadata, k8sApi, e_1;
60
57
  return __generator(this, function (_f) {
61
58
  switch (_f.label) {
62
59
  case 0:
@@ -75,13 +72,14 @@ function default_1(context) {
75
72
  }))), ((_b = (_a = context.fullConfig.meta) === null || _a === void 0 ? void 0 : _a.labels) !== null && _b !== void 0 ? _b : {}))
76
73
  };
77
74
  namespaceBody.metadata = metadata;
75
+ k8sApi = (0, k8sApi_1.getk8sApi)();
78
76
  _f.label = 1;
79
77
  case 1:
80
78
  _f.trys.push([1, 4, , 8]);
81
- return [4 /*yield*/, k8sApi_1["default"].readNamespace(namespace)];
79
+ return [4 /*yield*/, k8sApi.readNamespace(namespace)];
82
80
  case 2:
83
81
  _f.sent();
84
- return [4 /*yield*/, k8sApi_1["default"].patchNamespace(namespace, namespaceBody, undefined, undefined, undefined, undefined, { headers: { "content-type": "application/merge-patch+json" } } // see https://github.com/kubernetes-client/javascript/issues/443
82
+ return [4 /*yield*/, k8sApi.patchNamespace(namespace, namespaceBody, undefined, undefined, undefined, undefined, { headers: { "content-type": "application/merge-patch+json" } } // see https://github.com/kubernetes-client/javascript/issues/443
85
83
  )];
86
84
  case 3:
87
85
  _f.sent(); // update meta data
@@ -89,7 +87,7 @@ function default_1(context) {
89
87
  case 4:
90
88
  e_1 = _f.sent();
91
89
  if (!(((_d = (_c = e_1.response) === null || _c === void 0 ? void 0 : _c.body) === null || _d === void 0 ? void 0 : _d.reason) === "NotFound")) return [3 /*break*/, 6];
92
- return [4 /*yield*/, k8sApi_1["default"].createNamespace(namespaceBody)];
90
+ return [4 /*yield*/, k8sApi.createNamespace(namespaceBody)];
93
91
  case 5:
94
92
  _f.sent();
95
93
  return [3 /*break*/, 7];
@@ -1 +1 @@
1
- {"version":3,"file":"ensureNamespace.js","sourceRoot":"","sources":["../../../../../../src/apps/cli/commands/project/utils/ensureNamespace.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAAsE;AACtE,uDAAoE;AACpE,iEAA2C;AAE3C,mBAA+B,OAAgB;;;;;;;oBACvC,SAAS,GAAG,IAAA,iCAAsB,EACtC,OAAO,CAAC,UAAU,EAClB,OAAO,CAAC,WAAW,CAAC,SAAS,CAC9B,CAAC;oBACI,aAAa,GAAG,IAAI,yBAAW,EAAE,CAAC;oBAClC,QAAQ,GAAiB;wBAC7B,IAAI,EAAE,SAAS;wBACf,MAAM,sBACJ,YAAY,EAAE,OAAO,CAAC,UAAU,CAAC,YAAY,EAC7C,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,EACnC,WAAW,EAAE,OAAO,CAAC,WAAW,CAAC,SAAS,EAC1C,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAChE,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC;iCACrD,GAAG,CAAC,UAAC,MAAM,IAAK,OAAA,MAAM,CAAC,KAAK,CAAC,IAAI,EAAjB,CAAiB,CAAC;iCAClC,IAAI,CAAC,GAAG,CAAC,IACT,MAAM,CAAC,WAAW,CACnB,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,GAAG,CAC/C,UAAC,EAAuB;gCAAtB,aAAa,QAAA,EAAE,MAAM,QAAA;4BAAM,OAAA;gCAC3B,YAAY,GAAG,aAAa;gCAC5B,MAAM,CAAC,KAAK,CAAC,IAAI;6BAClB;wBAH4B,CAG5B,CACF,CACF,GACE,CAAC,MAAA,MAAA,OAAO,CAAC,UAAU,CAAC,IAAI,0CAAE,MAAM,mCAAI,EAAE,CAAC,CAC3C;qBACF,CAAC;oBAEF,aAAa,CAAC,QAAQ,GAAG,QAAQ,CAAC;;;;oBAEhC,qBAAM,mBAAM,CAAC,aAAa,CAAC,SAAS,CAAC,EAAA;;oBAArC,SAAqC,CAAC;oBAEtC,qBAAM,mBAAM,CAAC,cAAc,CACzB,SAAS,EACT,aAAa,EACb,SAAS,EACT,SAAS,EACT,SAAS,EACT,SAAS,EACT,EAAE,OAAO,EAAE,EAAE,cAAc,EAAE,8BAA8B,EAAE,EAAE,CAAC,iEAAiE;yBAClI,EAAA;;oBARD,SAQC,CAAC,CAAC,mBAAmB;;;;yBAElB,CAAA,CAAA,MAAA,MAAA,GAAC,CAAC,QAAQ,0CAAE,IAAI,0CAAE,MAAM,MAAK,UAAU,CAAA,EAAvC,wBAAuC;oBACzC,qBAAM,mBAAM,CAAC,eAAe,CAAC,aAAa,CAAC,EAAA;;oBAA3C,SAA2C,CAAC;;;oBAE5C,OAAO,CAAC,KAAK,CAAC,MAAA,GAAC,CAAC,QAAQ,0CAAE,IAAI,CAAC,CAAC;oBAChC,MAAM,GAAC,CAAC;;wBAGZ,sBAAO,SAAS,EAAC;;;;CAClB;AAlDD,+BAkDC"}
1
+ {"version":3,"file":"ensureNamespace.js","sourceRoot":"","sources":["../../../../../../src/apps/cli/commands/project/utils/ensureNamespace.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAAsE;AACtE,uDAAoE;AACpE,gDAAkD;AAElD,mBAA+B,OAAgB;;;;;;;oBACvC,SAAS,GAAG,IAAA,iCAAsB,EACtC,OAAO,CAAC,UAAU,EAClB,OAAO,CAAC,WAAW,CAAC,SAAS,CAC9B,CAAC;oBACI,aAAa,GAAG,IAAI,yBAAW,EAAE,CAAC;oBAClC,QAAQ,GAAiB;wBAC7B,IAAI,EAAE,SAAS;wBACf,MAAM,sBACJ,YAAY,EAAE,OAAO,CAAC,UAAU,CAAC,YAAY,EAC7C,OAAO,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,EACnC,WAAW,EAAE,OAAO,CAAC,WAAW,CAAC,SAAS,EAC1C,UAAU,EAAE,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAChE,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC;iCACrD,GAAG,CAAC,UAAC,MAAM,IAAK,OAAA,MAAM,CAAC,KAAK,CAAC,IAAI,EAAjB,CAAiB,CAAC;iCAClC,IAAI,CAAC,GAAG,CAAC,IACT,MAAM,CAAC,WAAW,CACnB,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,GAAG,CAC/C,UAAC,EAAuB;gCAAtB,aAAa,QAAA,EAAE,MAAM,QAAA;4BAAM,OAAA;gCAC3B,YAAY,GAAG,aAAa;gCAC5B,MAAM,CAAC,KAAK,CAAC,IAAI;6BAClB;wBAH4B,CAG5B,CACF,CACF,GACE,CAAC,MAAA,MAAA,OAAO,CAAC,UAAU,CAAC,IAAI,0CAAE,MAAM,mCAAI,EAAE,CAAC,CAC3C;qBACF,CAAC;oBAEF,aAAa,CAAC,QAAQ,GAAG,QAAQ,CAAC;oBAC5B,MAAM,GAAG,IAAA,kBAAS,GAAE,CAAC;;;;oBAEzB,qBAAM,MAAM,CAAC,aAAa,CAAC,SAAS,CAAC,EAAA;;oBAArC,SAAqC,CAAC;oBAEtC,qBAAM,MAAM,CAAC,cAAc,CACzB,SAAS,EACT,aAAa,EACb,SAAS,EACT,SAAS,EACT,SAAS,EACT,SAAS,EACT,EAAE,OAAO,EAAE,EAAE,cAAc,EAAE,8BAA8B,EAAE,EAAE,CAAC,iEAAiE;yBAClI,EAAA;;oBARD,SAQC,CAAC,CAAC,mBAAmB;;;;yBAElB,CAAA,CAAA,MAAA,MAAA,GAAC,CAAC,QAAQ,0CAAE,IAAI,0CAAE,MAAM,MAAK,UAAU,CAAA,EAAvC,wBAAuC;oBACzC,qBAAM,MAAM,CAAC,eAAe,CAAC,aAAa,CAAC,EAAA;;oBAA3C,SAA2C,CAAC;;;oBAE5C,OAAO,CAAC,KAAK,CAAC,MAAA,GAAC,CAAC,QAAQ,0CAAE,IAAI,CAAC,CAAC;oBAChC,MAAM,GAAC,CAAC;;wBAGZ,sBAAO,SAAS,EAAC;;;;CAClB;AAnDD,+BAmDC"}
@@ -70,7 +70,7 @@ var writeConfig = function (vorpal, config, options) { return __awaiter(void 0,
70
70
  case 3:
71
71
  _a.sent();
72
72
  vorpal.log("adding type @catladder/pipeline....");
73
- return [4 /*yield*/, (0, child_process_promise_1.spawn)("yarn add @catladder/pipeline -DW", {
73
+ return [4 /*yield*/, (0, child_process_promise_1.spawn)("yarn add --non-interactive @catladder/pipeline -DW", {
74
74
  shell: true
75
75
  })];
76
76
  case 4:
@@ -1 +1 @@
1
- {"version":3,"file":"writeConfig.js","sourceRoot":"","sources":["../../../../src/apps/cli/config/writeConfig.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,+DAAoD;AACpD,qCAAqC;AACrC,mCAA+B;AAC/B,qCAAkC;AAElC,oDAAqD;AAE9C,IAAM,WAAW,GAAG,UACzB,MAAuB,EACvB,MAAc,EACd,OAEC;;;;oBAEe,qBAAM,IAAA,qBAAU,GAAE,EAAA;;gBAA5B,OAAO,GAAG,SAAkB;gBAC5B,EAAE,GAAG,0BAA0B,CAAC;gBACf,qBAAM,MAAM,CAAC,MAAM,CAAC;wBACzC,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,YAAY;wBAClB,OAAO,EAAE,CAAC,EAAE,EAAE,MAAM,CAAC;wBACrB,OAAO,EAAE,4CAA4C;qBACtD,CAAC,EAAA;;gBALM,UAAU,GAAK,CAAA,SAKrB,CAAA,WALgB;gBAMlB,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;qBACX,CAAA,UAAU,KAAK,EAAE,CAAA,EAAjB,wBAAiB;gBACb,IAAI,GAAG,OAAO,GAAG,eAAe,CAAC;gBACjC,OAAO,GAAG,IAAA,iBAAM,EACpB,6GAGyB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,+DAK7C,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,UAAU,EAAC,CAAC,CAAC,YAAK,OAAO,CAAC,UAAU,OAAI,CAAC,CAAC,CAAC,EAAE,qBAEvD,EACD;oBACE,MAAM,EAAE,OAAO;iBAChB,CACF,CAAC;gBAEF,qBAAM,IAAA,oBAAS,EAAC,IAAI,EAAE,OAAO,EAAE;wBAC7B,QAAQ,EAAE,OAAO;qBAClB,CAAC,EAAA;;gBAFF,SAEE,CAAC;gBACH,MAAM,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;gBAClD,qBAAM,IAAA,6BAAK,EAAC,kCAAkC,EAAE;wBAC9C,KAAK,EAAE,IAAI;qBACZ,CAAC,EAAA;;gBAFF,SAEE,CAAC;gBACH,qBAAM,IAAA,4BAAI,EAAC,UAAU,GAAG,IAAI,CAAC,EAAA;;gBAA7B,SAA6B,CAAC;;;gBAExB,IAAI,GAAG,OAAO,GAAG,gBAAgB,CAAC;gBAClC,OAAO,GAAG,IAAA,cAAI,EAAC,MAAM,CAAC,CAAC;gBAE7B,qBAAM,IAAA,oBAAS,EACb,IAAI,EACJ,OAAO;wBACL,MAAM;wBACN,CAAC,OAAO,CAAC,UAAU;4BACjB,CAAC,CAAC,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;4BACpD,CAAC,CAAC,EAAE,CAAC,EACT;wBACE,QAAQ,EAAE,OAAO;qBAClB,CACF,EAAA;;gBAVD,SAUC,CAAC;gBACF,qBAAM,IAAA,4BAAI,EAAC,UAAU,GAAG,IAAI,CAAC,EAAA;;gBAA7B,SAA6B,CAAC;;;gBAEhC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBACpB,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;;;;KAChB,CAAC;AA9DW,QAAA,WAAW,eA8DtB"}
1
+ {"version":3,"file":"writeConfig.js","sourceRoot":"","sources":["../../../../src/apps/cli/config/writeConfig.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,+DAAoD;AACpD,qCAAqC;AACrC,mCAA+B;AAC/B,qCAAkC;AAElC,oDAAqD;AAE9C,IAAM,WAAW,GAAG,UACzB,MAAuB,EACvB,MAAc,EACd,OAEC;;;;oBAEe,qBAAM,IAAA,qBAAU,GAAE,EAAA;;gBAA5B,OAAO,GAAG,SAAkB;gBAC5B,EAAE,GAAG,0BAA0B,CAAC;gBACf,qBAAM,MAAM,CAAC,MAAM,CAAC;wBACzC,IAAI,EAAE,MAAM;wBACZ,IAAI,EAAE,YAAY;wBAClB,OAAO,EAAE,CAAC,EAAE,EAAE,MAAM,CAAC;wBACrB,OAAO,EAAE,4CAA4C;qBACtD,CAAC,EAAA;;gBALM,UAAU,GAAK,CAAA,SAKrB,CAAA,WALgB;gBAMlB,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;qBACX,CAAA,UAAU,KAAK,EAAE,CAAA,EAAjB,wBAAiB;gBACb,IAAI,GAAG,OAAO,GAAG,eAAe,CAAC;gBACjC,OAAO,GAAG,IAAA,iBAAM,EACpB,6GAGyB,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,+DAK7C,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,UAAU,EAAC,CAAC,CAAC,YAAK,OAAO,CAAC,UAAU,OAAI,CAAC,CAAC,CAAC,EAAE,qBAEvD,EACD;oBACE,MAAM,EAAE,OAAO;iBAChB,CACF,CAAC;gBAEF,qBAAM,IAAA,oBAAS,EAAC,IAAI,EAAE,OAAO,EAAE;wBAC7B,QAAQ,EAAE,OAAO;qBAClB,CAAC,EAAA;;gBAFF,SAEE,CAAC;gBACH,MAAM,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;gBAClD,qBAAM,IAAA,6BAAK,EAAC,oDAAoD,EAAE;wBAChE,KAAK,EAAE,IAAI;qBACZ,CAAC,EAAA;;gBAFF,SAEE,CAAC;gBACH,qBAAM,IAAA,4BAAI,EAAC,UAAU,GAAG,IAAI,CAAC,EAAA;;gBAA7B,SAA6B,CAAC;;;gBAExB,IAAI,GAAG,OAAO,GAAG,gBAAgB,CAAC;gBAClC,OAAO,GAAG,IAAA,cAAI,EAAC,MAAM,CAAC,CAAC;gBAE7B,qBAAM,IAAA,oBAAS,EACb,IAAI,EACJ,OAAO;wBACL,MAAM;wBACN,CAAC,OAAO,CAAC,UAAU;4BACjB,CAAC,CAAC,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;4BACpD,CAAC,CAAC,EAAE,CAAC,EACT;wBACE,QAAQ,EAAE,OAAO;qBAClB,CACF,EAAA;;gBAVD,SAUC,CAAC;gBACF,qBAAM,IAAA,4BAAI,EAAC,UAAU,GAAG,IAAI,CAAC,EAAA;;gBAA7B,SAA6B,CAAC;;;gBAEhC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBACpB,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;;;;KAChB,CAAC;AA9DW,QAAA,WAAW,eA8DtB"}
@@ -127,16 +127,16 @@ var isV2 = function () { return __awaiter(void 0, void 0, void 0, function () {
127
127
  }); };
128
128
  exports.isV2 = isV2;
129
129
  var migrateV2 = function (vorpal) { return __awaiter(void 0, void 0, void 0, function () {
130
- var gitlabCi, gitRoot, _a, CUSTOMER_NAME, APP_NAME, COMPONENT_NAME, _b, APP_DIR, STAGING_ENABLED;
131
- return __generator(this, function (_c) {
132
- switch (_c.label) {
130
+ var gitlabCi, gitRoot, _a, CUSTOMER_NAME, APP_NAME, _b, COMPONENT_NAME, _c, APP_DIR, STAGING_ENABLED;
131
+ return __generator(this, function (_d) {
132
+ switch (_d.label) {
133
133
  case 0: return [4 /*yield*/, (0, getProjectConfig_1.getGitlabCi)()];
134
134
  case 1:
135
- gitlabCi = _c.sent();
135
+ gitlabCi = _d.sent();
136
136
  return [4 /*yield*/, (0, projects_1.getGitRoot)()];
137
137
  case 2:
138
- gitRoot = _c.sent();
139
- _a = gitlabCi.variables, CUSTOMER_NAME = _a.CUSTOMER_NAME, APP_NAME = _a.APP_NAME, COMPONENT_NAME = _a.COMPONENT_NAME, _b = _a.APP_DIR, APP_DIR = _b === void 0 ? "." : _b, STAGING_ENABLED = _a.STAGING_ENABLED;
138
+ gitRoot = _d.sent();
139
+ _a = gitlabCi.variables, CUSTOMER_NAME = _a.CUSTOMER_NAME, APP_NAME = _a.APP_NAME, _b = _a.COMPONENT_NAME, COMPONENT_NAME = _b === void 0 ? "web" : _b, _c = _a.APP_DIR, APP_DIR = _c === void 0 ? "." : _c, STAGING_ENABLED = _a.STAGING_ENABLED;
140
140
  vorpal
141
141
  .command("migrate")
142
142
  .action(function () {
@@ -326,6 +326,8 @@ var migrateV2 = function (vorpal) { return __awaiter(void 0, void 0, void 0, fun
326
326
  case 15:
327
327
  this.log("-------------------");
328
328
  this.log("done!");
329
+ this.log("");
330
+ this.log("You can remove the values*.yml files now.");
329
331
  this.log("-------------------");
330
332
  return [3 /*break*/, 17];
331
333
  case 16: