@catladder/cli 0.0.0 → 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (288) hide show
  1. package/.nvmrc +1 -1
  2. package/bin/catenv +3 -0
  3. package/bin/catladder +1 -1
  4. package/dist/apps/catenv/catenv.d.ts +2 -0
  5. package/dist/apps/catenv/catenv.js +135 -0
  6. package/dist/apps/catenv/catenv.js.map +1 -0
  7. package/dist/apps/cli/cli.d.ts +2 -0
  8. package/dist/apps/cli/cli.js +81 -0
  9. package/dist/apps/cli/cli.js.map +1 -0
  10. package/dist/apps/cli/commands/general/index.d.ts +4 -0
  11. package/dist/apps/cli/commands/general/index.js +274 -0
  12. package/dist/apps/cli/commands/general/index.js.map +1 -0
  13. package/dist/apps/cli/commands/general/namespaceAutoCompletion.d.ts +3 -0
  14. package/dist/apps/cli/commands/general/namespaceAutoCompletion.js +56 -0
  15. package/dist/apps/cli/commands/general/namespaceAutoCompletion.js.map +1 -0
  16. package/dist/apps/cli/commands/general/portForward.d.ts +3 -0
  17. package/dist/apps/cli/commands/general/portForward.js +98 -0
  18. package/dist/apps/cli/commands/general/portForward.js.map +1 -0
  19. package/dist/apps/cli/commands/mongodb/index.d.ts +3 -0
  20. package/dist/apps/cli/commands/mongodb/index.js +53 -0
  21. package/dist/apps/cli/commands/mongodb/index.js.map +1 -0
  22. package/dist/apps/cli/commands/mongodb/projectMongoDestroyMember.d.ts +3 -0
  23. package/dist/apps/cli/commands/mongodb/projectMongoDestroyMember.js +190 -0
  24. package/dist/apps/cli/commands/mongodb/projectMongoDestroyMember.js.map +1 -0
  25. package/dist/apps/cli/commands/mongodb/projectMongoGetShell.d.ts +3 -0
  26. package/dist/apps/cli/commands/mongodb/projectMongoGetShell.js +96 -0
  27. package/dist/apps/cli/commands/mongodb/projectMongoGetShell.js.map +1 -0
  28. package/dist/apps/cli/commands/mongodb/projectMongoPortForward.d.ts +3 -0
  29. package/dist/apps/cli/commands/mongodb/projectMongoPortForward.js +105 -0
  30. package/dist/apps/cli/commands/mongodb/projectMongoPortForward.js.map +1 -0
  31. package/dist/apps/cli/commands/mongodb/utils/index.d.ts +13 -0
  32. package/dist/apps/cli/commands/mongodb/utils/index.js +167 -0
  33. package/dist/apps/cli/commands/mongodb/utils/index.js.map +1 -0
  34. package/dist/apps/cli/commands/project/commandCloudSqlProxy.d.ts +3 -0
  35. package/dist/apps/cli/commands/project/commandCloudSqlProxy.js +128 -0
  36. package/dist/apps/cli/commands/project/commandCloudSqlProxy.js.map +1 -0
  37. package/dist/apps/cli/commands/project/commandConfigSecrets.d.ts +3 -0
  38. package/dist/apps/cli/commands/project/commandConfigSecrets.js +254 -0
  39. package/dist/apps/cli/commands/project/commandConfigSecrets.js.map +1 -0
  40. package/dist/apps/cli/commands/project/commandCopyDB.d.ts +3 -0
  41. package/dist/apps/cli/commands/project/commandCopyDB.js +102 -0
  42. package/dist/apps/cli/commands/project/commandCopyDB.js.map +1 -0
  43. package/dist/apps/cli/commands/project/commandDeletePods.d.ts +3 -0
  44. package/dist/apps/cli/commands/project/commandDeletePods.js +119 -0
  45. package/dist/apps/cli/commands/project/commandDeletePods.js.map +1 -0
  46. package/dist/apps/cli/commands/project/commandDeleteProject.d.ts +3 -0
  47. package/dist/apps/cli/commands/project/commandDeleteProject.js +97 -0
  48. package/dist/apps/cli/commands/project/commandDeleteProject.js.map +1 -0
  49. package/dist/apps/cli/commands/project/commandEnvVars.d.ts +3 -0
  50. package/dist/apps/cli/commands/project/commandEnvVars.js +74 -0
  51. package/dist/apps/cli/commands/project/commandEnvVars.js.map +1 -0
  52. package/dist/apps/cli/commands/project/commandGetMyTotalWorktime.d.ts +3 -0
  53. package/dist/apps/cli/commands/project/commandGetMyTotalWorktime.js +58 -0
  54. package/dist/apps/cli/commands/project/commandGetMyTotalWorktime.js.map +1 -0
  55. package/dist/apps/cli/commands/project/commandGetShell.d.ts +3 -0
  56. package/dist/apps/cli/commands/project/commandGetShell.js +92 -0
  57. package/dist/apps/cli/commands/project/commandGetShell.js.map +1 -0
  58. package/dist/apps/cli/commands/project/commandGitlabCi.d.ts +3 -0
  59. package/dist/apps/cli/commands/project/commandGitlabCi.js +185 -0
  60. package/dist/apps/cli/commands/project/commandGitlabCi.js.map +1 -0
  61. package/dist/apps/cli/commands/project/commandInitGitlab.d.ts +3 -0
  62. package/dist/apps/cli/commands/project/commandInitGitlab.js +245 -0
  63. package/dist/apps/cli/commands/project/commandInitGitlab.js.map +1 -0
  64. package/dist/apps/cli/commands/project/commandInitProject.d.ts +3 -0
  65. package/dist/apps/cli/commands/project/commandInitProject.js +345 -0
  66. package/dist/apps/cli/commands/project/commandInitProject.js.map +1 -0
  67. package/dist/apps/cli/commands/project/commandListPods.d.ts +3 -0
  68. package/dist/apps/cli/commands/project/commandListPods.js +78 -0
  69. package/dist/apps/cli/commands/project/commandListPods.js.map +1 -0
  70. package/dist/apps/cli/commands/project/commandMigrateHelm3.d.ts +7 -0
  71. package/dist/apps/cli/commands/project/commandMigrateHelm3.js +113 -0
  72. package/dist/apps/cli/commands/project/commandMigrateHelm3.js.map +1 -0
  73. package/dist/apps/cli/commands/project/commandNamespace.d.ts +3 -0
  74. package/dist/apps/cli/commands/project/commandNamespace.js +70 -0
  75. package/dist/apps/cli/commands/project/commandNamespace.js.map +1 -0
  76. package/dist/apps/cli/commands/project/commandOpenCostDashboard.d.ts +3 -0
  77. package/dist/apps/cli/commands/project/commandOpenCostDashboard.js +83 -0
  78. package/dist/apps/cli/commands/project/commandOpenCostDashboard.js.map +1 -0
  79. package/dist/apps/cli/commands/project/commandOpenDashboard.d.ts +3 -0
  80. package/dist/apps/cli/commands/project/commandOpenDashboard.js +92 -0
  81. package/dist/apps/cli/commands/project/commandOpenDashboard.js.map +1 -0
  82. package/dist/apps/cli/commands/project/commandOpenEnv.d.ts +3 -0
  83. package/dist/apps/cli/commands/project/commandOpenEnv.js +80 -0
  84. package/dist/apps/cli/commands/project/commandOpenEnv.js.map +1 -0
  85. package/dist/apps/cli/commands/project/commandOpenGit.d.ts +3 -0
  86. package/dist/apps/cli/commands/project/commandOpenGit.js +56 -0
  87. package/dist/apps/cli/commands/project/commandOpenGit.js.map +1 -0
  88. package/dist/apps/cli/commands/project/commandOpenGrafana.d.ts +3 -0
  89. package/dist/apps/cli/commands/project/commandOpenGrafana.js +83 -0
  90. package/dist/apps/cli/commands/project/commandOpenGrafana.js.map +1 -0
  91. package/dist/apps/cli/commands/project/commandOpenGrafanaPod.d.ts +3 -0
  92. package/dist/apps/cli/commands/project/commandOpenGrafanaPod.js +99 -0
  93. package/dist/apps/cli/commands/project/commandOpenGrafanaPod.js.map +1 -0
  94. package/dist/apps/cli/commands/project/commandOpenLogs.d.ts +3 -0
  95. package/dist/apps/cli/commands/project/commandOpenLogs.js +87 -0
  96. package/dist/apps/cli/commands/project/commandOpenLogs.js.map +1 -0
  97. package/dist/apps/cli/commands/project/commandPauseProject.d.ts +3 -0
  98. package/dist/apps/cli/commands/project/commandPauseProject.js +97 -0
  99. package/dist/apps/cli/commands/project/commandPauseProject.js.map +1 -0
  100. package/dist/apps/cli/commands/project/commandPortForward.d.ts +3 -0
  101. package/dist/apps/cli/commands/project/commandPortForward.js +106 -0
  102. package/dist/apps/cli/commands/project/commandPortForward.js.map +1 -0
  103. package/dist/apps/cli/commands/project/commandReloadConfig.d.ts +3 -0
  104. package/dist/apps/cli/commands/project/commandReloadConfig.js +62 -0
  105. package/dist/apps/cli/commands/project/commandReloadConfig.js.map +1 -0
  106. package/dist/apps/cli/commands/project/commandTriggerCronjob.d.ts +3 -0
  107. package/dist/apps/cli/commands/project/commandTriggerCronjob.js +144 -0
  108. package/dist/apps/cli/commands/project/commandTriggerCronjob.js.map +1 -0
  109. package/dist/apps/cli/commands/project/index.d.ts +3 -0
  110. package/dist/apps/cli/commands/project/index.js +97 -0
  111. package/dist/apps/cli/commands/project/index.js.map +1 -0
  112. package/dist/apps/cli/commands/project/utils/autocompletions.d.ts +3 -0
  113. package/dist/apps/cli/commands/project/utils/autocompletions.js +96 -0
  114. package/dist/apps/cli/commands/project/utils/autocompletions.js.map +1 -0
  115. package/dist/apps/cli/commands/project/utils/ensureCluster.d.ts +1 -0
  116. package/dist/apps/cli/commands/project/utils/ensureCluster.js +84 -0
  117. package/dist/apps/cli/commands/project/utils/ensureCluster.js.map +1 -0
  118. package/dist/apps/cli/commands/project/utils/ensureNamespace.d.ts +1 -0
  119. package/dist/apps/cli/commands/project/utils/ensureNamespace.js +92 -0
  120. package/dist/apps/cli/commands/project/utils/ensureNamespace.js.map +1 -0
  121. package/dist/apps/cli/commands/project/utils/showProjectBanner.d.ts +2 -0
  122. package/dist/apps/cli/commands/project/utils/showProjectBanner.js +58 -0
  123. package/dist/apps/cli/commands/project/utils/showProjectBanner.js.map +1 -0
  124. package/dist/apps/cli/commands/shared/index.d.ts +2 -0
  125. package/dist/apps/cli/commands/shared/index.js +72 -0
  126. package/dist/apps/cli/commands/shared/index.js.map +1 -0
  127. package/dist/apps/cli/commands/theStuffThatReallyMatters/index.d.ts +3 -0
  128. package/dist/apps/cli/commands/theStuffThatReallyMatters/index.js +131 -0
  129. package/dist/apps/cli/commands/theStuffThatReallyMatters/index.js.map +1 -0
  130. package/dist/apps/cli/config/writeConfig.d.ts +5 -0
  131. package/dist/apps/cli/config/writeConfig.js +104 -0
  132. package/dist/apps/cli/config/writeConfig.js.map +1 -0
  133. package/dist/apps/cli/utils/getGoogleAuthUserNumber.d.ts +1 -0
  134. package/dist/apps/cli/utils/getGoogleAuthUserNumber.js +69 -0
  135. package/dist/apps/cli/utils/getGoogleAuthUserNumber.js.map +1 -0
  136. package/dist/apps/cli/verify/index.d.ts +2 -0
  137. package/dist/apps/cli/verify/index.js +90 -0
  138. package/dist/apps/cli/verify/index.js.map +1 -0
  139. package/dist/apps/cli/verify/migration/fromv2.d.ts +3 -0
  140. package/dist/apps/cli/verify/migration/fromv2.js +322 -0
  141. package/dist/apps/cli/verify/migration/fromv2.js.map +1 -0
  142. package/dist/apps/cli/verify/migration/migrateSecrets.d.ts +4 -0
  143. package/dist/apps/cli/verify/migration/migrateSecrets.js +88 -0
  144. package/dist/apps/cli/verify/migration/migrateSecrets.js.map +1 -0
  145. package/dist/apps/cli/verify/migration/oldGitlabCi.d.ts +17 -0
  146. package/dist/apps/cli/verify/migration/oldGitlabCi.js +26 -0
  147. package/dist/apps/cli/verify/migration/oldGitlabCi.js.map +1 -0
  148. package/dist/catenv.d.ts +1 -0
  149. package/dist/catenv.js +8 -0
  150. package/dist/catenv.js.map +1 -0
  151. package/dist/cli.d.ts +1 -0
  152. package/dist/cli.js +13 -0
  153. package/dist/cli.js.map +1 -0
  154. package/dist/config/clusters.d.ts +14 -0
  155. package/dist/config/clusters.js +72 -0
  156. package/dist/config/clusters.js.map +1 -0
  157. package/dist/config/constants.d.ts +4 -0
  158. package/dist/config/constants.js +8 -0
  159. package/dist/config/constants.js.map +1 -0
  160. package/dist/config/getProjectConfig.d.ts +21 -0
  161. package/dist/config/getProjectConfig.js +212 -0
  162. package/dist/config/getProjectConfig.js.map +1 -0
  163. package/dist/k8sApi/index.d.ts +5 -0
  164. package/dist/k8sApi/index.js +11 -0
  165. package/dist/k8sApi/index.js.map +1 -0
  166. package/dist/packageInfos.d.ts +2 -0
  167. package/dist/packageInfos.js +6 -0
  168. package/dist/packageInfos.js.map +1 -0
  169. package/dist/tsconfig.tsbuildinfo +1 -0
  170. package/dist/types/types.d.ts +18 -0
  171. package/dist/types/types.js +3 -0
  172. package/dist/types/types.js.map +1 -0
  173. package/dist/utils/cluster.d.ts +12 -0
  174. package/dist/utils/cluster.js +100 -0
  175. package/dist/utils/cluster.js.map +1 -0
  176. package/dist/utils/editAsFile.d.ts +1 -0
  177. package/dist/utils/editAsFile.js +85 -0
  178. package/dist/utils/editAsFile.js.map +1 -0
  179. package/dist/utils/files.d.ts +2 -0
  180. package/dist/utils/files.js +83 -0
  181. package/dist/utils/files.js.map +1 -0
  182. package/dist/utils/formatEnvVars.d.ts +2 -0
  183. package/dist/utils/formatEnvVars.js +10 -0
  184. package/dist/utils/formatEnvVars.js.map +1 -0
  185. package/dist/utils/getEditor.d.ts +4 -0
  186. package/dist/utils/getEditor.js +70 -0
  187. package/dist/utils/getEditor.js.map +1 -0
  188. package/dist/utils/gitlab.d.ts +21 -0
  189. package/dist/utils/gitlab.js +258 -0
  190. package/dist/utils/gitlab.js.map +1 -0
  191. package/dist/utils/log.d.ts +1 -0
  192. package/dist/utils/log.js +14 -0
  193. package/dist/utils/log.js.map +1 -0
  194. package/dist/utils/passwordstore/index.d.ts +8 -0
  195. package/dist/utils/passwordstore/index.js +378 -0
  196. package/dist/utils/passwordstore/index.js.map +1 -0
  197. package/dist/utils/portForward.d.ts +4 -0
  198. package/dist/utils/portForward.js +116 -0
  199. package/dist/utils/portForward.js.map +1 -0
  200. package/dist/utils/preferences/index.d.ts +3 -0
  201. package/dist/utils/preferences/index.js +119 -0
  202. package/dist/utils/preferences/index.js.map +1 -0
  203. package/dist/utils/projects/index.d.ts +8 -0
  204. package/dist/utils/projects/index.js +150 -0
  205. package/dist/utils/projects/index.js.map +1 -0
  206. package/dist/utils/promise.d.ts +2 -0
  207. package/dist/utils/promise.js +62 -0
  208. package/dist/utils/promise.js.map +1 -0
  209. package/dist/utils/shell.d.ts +1 -0
  210. package/dist/utils/shell.js +81 -0
  211. package/dist/utils/shell.js.map +1 -0
  212. package/package.json +12 -20
  213. package/src/apps/catenv/catenv.ts +48 -27
  214. package/src/apps/{shell/shell.ts → cli/cli.ts} +10 -2
  215. package/src/apps/{shell → cli}/commands/general/index.ts +1 -1
  216. package/src/apps/{shell → cli}/commands/general/namespaceAutoCompletion.ts +0 -0
  217. package/src/apps/{shell → cli}/commands/general/portForward.ts +1 -1
  218. package/src/apps/{shell → cli}/commands/mongodb/index.ts +1 -1
  219. package/src/apps/{shell → cli}/commands/mongodb/projectMongoDestroyMember.ts +18 -18
  220. package/src/apps/{shell → cli}/commands/mongodb/projectMongoGetShell.ts +12 -10
  221. package/src/apps/{shell → cli}/commands/mongodb/projectMongoPortForward.ts +13 -8
  222. package/src/apps/{shell → cli}/commands/mongodb/utils/index.ts +9 -8
  223. package/src/apps/{shell → cli}/commands/project/commandCloudSqlProxy.ts +23 -17
  224. package/src/apps/cli/commands/project/commandConfigSecrets.ts +204 -0
  225. package/src/apps/{shell → cli}/commands/project/commandCopyDB.ts +22 -23
  226. package/src/apps/{shell → cli}/commands/project/commandDeletePods.ts +8 -9
  227. package/src/apps/{shell → cli}/commands/project/commandDeleteProject.ts +7 -8
  228. package/src/apps/cli/commands/project/commandEnvVars.ts +15 -0
  229. package/src/apps/{shell → cli}/commands/project/commandGetMyTotalWorktime.ts +2 -2
  230. package/src/apps/{shell → cli}/commands/project/commandGetShell.ts +10 -10
  231. package/src/apps/{shell → cli}/commands/project/commandGitlabCi.ts +1 -1
  232. package/src/apps/cli/commands/project/commandInitGitlab.ts +203 -0
  233. package/src/apps/{shell → cli}/commands/project/commandInitProject.ts +14 -6
  234. package/src/apps/cli/commands/project/commandListPods.ts +18 -0
  235. package/src/apps/{shell → cli}/commands/project/commandMigrateHelm3.ts +16 -7
  236. package/src/apps/cli/commands/project/commandNamespace.ts +14 -0
  237. package/src/apps/{shell → cli}/commands/project/commandOpenCostDashboard.ts +10 -7
  238. package/src/apps/cli/commands/project/commandOpenDashboard.ts +45 -0
  239. package/src/apps/cli/commands/project/commandOpenEnv.ts +22 -0
  240. package/src/apps/{shell → cli}/commands/project/commandOpenGit.ts +1 -1
  241. package/src/apps/{shell → cli}/commands/project/commandOpenGrafana.ts +7 -7
  242. package/src/apps/{shell → cli}/commands/project/commandOpenGrafanaPod.ts +9 -10
  243. package/src/apps/{shell → cli}/commands/project/commandOpenLogs.ts +7 -7
  244. package/src/apps/{shell → cli}/commands/project/commandPauseProject.ts +9 -7
  245. package/src/apps/{shell → cli}/commands/project/commandPortForward.ts +8 -8
  246. package/src/apps/cli/commands/project/commandReloadConfig.ts +12 -0
  247. package/src/apps/{shell → cli}/commands/project/commandTriggerCronjob.ts +7 -7
  248. package/src/apps/{shell → cli}/commands/project/index.ts +4 -3
  249. package/src/apps/cli/commands/project/utils/autocompletions.ts +26 -0
  250. package/src/apps/cli/commands/project/utils/ensureCluster.ts +37 -0
  251. package/src/apps/{shell → cli}/commands/project/utils/ensureNamespace.ts +2 -3
  252. package/src/apps/cli/commands/project/utils/showProjectBanner.ts +11 -0
  253. package/src/apps/{shell → cli}/commands/shared/index.ts +0 -0
  254. package/src/apps/{shell → cli}/commands/theStuffThatReallyMatters/index.ts +11 -11
  255. package/src/apps/cli/config/writeConfig.ts +69 -0
  256. package/src/apps/{shell → cli}/utils/getGoogleAuthUserNumber.ts +0 -0
  257. package/src/apps/cli/verify/index.ts +34 -0
  258. package/src/apps/cli/verify/migration/fromv2.ts +241 -0
  259. package/src/apps/cli/verify/migration/migrateSecrets.ts +37 -0
  260. package/src/apps/cli/verify/migration/oldGitlabCi.ts +43 -0
  261. package/src/catenv.ts +3 -0
  262. package/src/cli.ts +8 -0
  263. package/src/config/getProjectConfig.ts +118 -0
  264. package/src/types/types.ts +0 -2
  265. package/src/utils/cluster.ts +15 -2
  266. package/src/utils/editAsFile.ts +31 -0
  267. package/src/utils/files.ts +6 -2
  268. package/src/utils/gitlab.ts +126 -32
  269. package/src/utils/passwordstore/index.ts +19 -21
  270. package/src/utils/preferences/index.ts +6 -3
  271. package/src/utils/projects/index.ts +14 -134
  272. package/tsconfig.json +3 -7
  273. package/bin/catenv.sh +0 -1
  274. package/src/apps/shell/commands/project/commandConfigSecrets.ts +0 -245
  275. package/src/apps/shell/commands/project/commandEnvVars.ts +0 -17
  276. package/src/apps/shell/commands/project/commandInitGitlab.ts +0 -157
  277. package/src/apps/shell/commands/project/commandListPods.ts +0 -21
  278. package/src/apps/shell/commands/project/commandNamespace.ts +0 -12
  279. package/src/apps/shell/commands/project/commandOpenDashboard.ts +0 -27
  280. package/src/apps/shell/commands/project/commandOpenEnv.ts +0 -18
  281. package/src/apps/shell/commands/project/commandVariables.ts +0 -13
  282. package/src/apps/shell/commands/project/utils/autocompletions.ts +0 -7
  283. package/src/apps/shell/commands/project/utils/ensureCluster.ts +0 -31
  284. package/src/apps/shell/commands/project/utils/monorepo.ts +0 -45
  285. package/src/index.ts +0 -17
  286. package/src/types/git-repo-name.d.ts +0 -1
  287. package/src/types/yawn-yaml.d.ts +0 -1
  288. package/src/utils/dashboardToken.ts +0 -20
@@ -0,0 +1,185 @@
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 __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
39
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
40
+ if (ar || !(i in from)) {
41
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
42
+ ar[i] = from[i];
43
+ }
44
+ }
45
+ return to.concat(ar || Array.prototype.slice.call(from));
46
+ };
47
+ var __importDefault = (this && this.__importDefault) || function (mod) {
48
+ return (mod && mod.__esModule) ? mod : { "default": mod };
49
+ };
50
+ exports.__esModule = true;
51
+ var child_process_promise_1 = require("child-process-promise");
52
+ var lodash_1 = require("lodash");
53
+ var open_1 = __importDefault(require("open"));
54
+ var gitlab_1 = require("../../../../utils/gitlab");
55
+ var statusEmojiMap = {
56
+ failed: "🙀",
57
+ warning: "😿",
58
+ pending: "🍺",
59
+ running: "🏃‍",
60
+ manual: "🤚",
61
+ scheduled: "🍺",
62
+ canceled: "😽",
63
+ success: "😻",
64
+ skipped: "🤭",
65
+ created: "🍺"
66
+ };
67
+ var statusTxt = function (status) {
68
+ return statusEmojiMap[status] ? "".concat(statusEmojiMap[status], " ").concat(status) : status;
69
+ };
70
+ var getCurrentCommit = function () { return __awaiter(void 0, void 0, void 0, function () {
71
+ var result;
72
+ return __generator(this, function (_a) {
73
+ switch (_a.label) {
74
+ case 0: return [4 /*yield*/, (0, child_process_promise_1.exec)("git rev-parse HEAD")];
75
+ case 1:
76
+ result = _a.sent();
77
+ return [2 /*return*/, result.stdout && result.stdout.replace(/\n$/, "")];
78
+ }
79
+ });
80
+ }); };
81
+ var delay = function (ms) { return __awaiter(void 0, void 0, void 0, function () { return __generator(this, function (_a) {
82
+ return [2 /*return*/, new Promise(function (resolve) { return setTimeout(resolve, ms); })];
83
+ }); }); };
84
+ var promptJob = function (vorpal, projectId, ctx) { return __awaiter(void 0, void 0, void 0, function () {
85
+ var jobs, commitId, jobsToName, preferredJobs, moreJobs, sortedJobs, jobName, jobId;
86
+ return __generator(this, function (_a) {
87
+ switch (_a.label) {
88
+ case 0: return [4 /*yield*/, (0, gitlab_1.doGitlabRequest)(vorpal, "projects/".concat(projectId, "/jobs"))];
89
+ case 1:
90
+ jobs = _a.sent();
91
+ return [4 /*yield*/, getCurrentCommit()];
92
+ case 2:
93
+ commitId = _a.sent();
94
+ jobsToName = function (jo) {
95
+ return jo.map(function (j) { return "".concat(j.ref, "-").concat(j.name, "-").concat(j.user.username, "-").concat(j.status, "-").concat(j.id); });
96
+ };
97
+ preferredJobs = jobs.filter(function (j) { return j.commit.id === commitId; });
98
+ moreJobs = jobs.filter(function (j) { return !preferredJobs.includes(j.ref); });
99
+ sortedJobs = preferredJobs.length > 1
100
+ ? __spreadArray(__spreadArray(__spreadArray([], jobsToName(preferredJobs), true), [
101
+ "========================================================"
102
+ ], false), jobsToName(moreJobs), true) : jobsToName(__spreadArray(__spreadArray([], preferredJobs, true), moreJobs, true));
103
+ return [4 /*yield*/, ctx.prompt({
104
+ type: "list",
105
+ name: "jobName",
106
+ choices: sortedJobs,
107
+ message: "Which job? 🤔"
108
+ })];
109
+ case 3:
110
+ jobName = (_a.sent()).jobName;
111
+ jobId = Number((0, lodash_1.last)(jobName.split("-")));
112
+ return [2 /*return*/, jobs.find(function (j) { return j.id === jobId; })];
113
+ }
114
+ });
115
+ }); };
116
+ exports["default"] = (function (vorpal) { return __awaiter(void 0, void 0, void 0, function () {
117
+ return __generator(this, function (_a) {
118
+ vorpal.command("project-ci-job-open", "Open a Job").action(function () {
119
+ return __awaiter(this, void 0, void 0, function () {
120
+ var projectId, job;
121
+ return __generator(this, function (_a) {
122
+ switch (_a.label) {
123
+ case 0: return [4 /*yield*/, (0, gitlab_1.getProjectInfo)(this)];
124
+ case 1:
125
+ projectId = (_a.sent()).id;
126
+ return [4 /*yield*/, promptJob(this, projectId, this)];
127
+ case 2:
128
+ job = _a.sent();
129
+ (0, open_1["default"])(job.web_url);
130
+ return [2 /*return*/];
131
+ }
132
+ });
133
+ });
134
+ });
135
+ vorpal
136
+ .command("project-ci-job-log", "Show a job's log")
137
+ .action(function () {
138
+ return __awaiter(this, void 0, void 0, function () {
139
+ var projectId, id, finished, trace, _a, _b, job;
140
+ return __generator(this, function (_c) {
141
+ switch (_c.label) {
142
+ case 0: return [4 /*yield*/, (0, gitlab_1.getProjectInfo)(this)];
143
+ case 1:
144
+ projectId = (_c.sent()).id;
145
+ return [4 /*yield*/, promptJob(this, projectId, this)];
146
+ case 2:
147
+ id = (_c.sent()).id;
148
+ finished = false;
149
+ _c.label = 3;
150
+ case 3:
151
+ if (!!finished) return [3 /*break*/, 10];
152
+ _a = child_process_promise_1.exec;
153
+ _b = "curl -s --header \"PRIVATE-TOKEN: ".concat;
154
+ return [4 /*yield*/, (0, gitlab_1.getGitlabToken)(this)];
155
+ case 4: return [4 /*yield*/, _a.apply(void 0, [_b.apply("curl -s --header \"PRIVATE-TOKEN: ", [_c.sent(), "\" \"https://git.panter.ch/api/v4/projects/"]).concat(projectId, "/jobs/").concat(id, "/trace\"")])];
156
+ case 5:
157
+ trace = _c.sent();
158
+ return [4 /*yield*/, (0, gitlab_1.doGitlabRequest)(this, "projects/".concat(projectId, "/jobs/").concat(id))];
159
+ case 6:
160
+ job = _c.sent();
161
+ if (trace.stdout) {
162
+ vorpal.ui.redraw("".concat(trace.stdout));
163
+ }
164
+ else {
165
+ vorpal.ui.redraw("\n\n ".concat(statusTxt(job.status), "\n ").concat(job.web_url, "\n\n "));
166
+ }
167
+ finished = !!job.finished_at;
168
+ if (!!finished) return [3 /*break*/, 8];
169
+ return [4 /*yield*/, delay(5000)];
170
+ case 7:
171
+ _c.sent();
172
+ return [3 /*break*/, 9];
173
+ case 8:
174
+ vorpal.ui.redraw.done();
175
+ _c.label = 9;
176
+ case 9: return [3 /*break*/, 3];
177
+ case 10: return [2 /*return*/];
178
+ }
179
+ });
180
+ });
181
+ });
182
+ return [2 /*return*/];
183
+ });
184
+ }); });
185
+ //# sourceMappingURL=commandGitlabCi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"commandGitlabCi.js","sourceRoot":"","sources":["../../../../../src/apps/cli/commands/project/commandGitlabCi.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import Vorpal from "vorpal";
2
+ declare const _default: (vorpal: Vorpal) => Promise<Vorpal.Command>;
3
+ export default _default;
@@ -0,0 +1,245 @@
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 __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
39
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
40
+ if (ar || !(i in from)) {
41
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
42
+ ar[i] = from[i];
43
+ }
44
+ }
45
+ return to.concat(ar || Array.prototype.slice.call(from));
46
+ };
47
+ var __importDefault = (this && this.__importDefault) || function (mod) {
48
+ return (mod && mod.__esModule) ? mod : { "default": mod };
49
+ };
50
+ exports.__esModule = true;
51
+ var pipeline_1 = require("@catladder/pipeline");
52
+ var open_1 = __importDefault(require("open"));
53
+ var getProjectConfig_1 = require("../../../../config/getProjectConfig");
54
+ var cluster_1 = require("../../../../utils/cluster");
55
+ var gitlab_1 = require("../../../../utils/gitlab");
56
+ var passwordstore_1 = require("../../../../utils/passwordstore");
57
+ var projects_1 = require("../../../../utils/projects");
58
+ exports["default"] = (function (vorpal) { return __awaiter(void 0, void 0, void 0, function () {
59
+ return __generator(this, function (_a) {
60
+ return [2 /*return*/, vorpal
61
+ .command("project-init-gitlab", "Initializes the gitlab repo, e.g. connects the cluster to it")
62
+ .action(function () {
63
+ return __awaiter(this, void 0, void 0, function () {
64
+ var _a, projectId, projectWebUrl, existingGitlabClusters, existingClusters, allContext, allDeployments, configuredClusterNames, configuredClusters, missingClusters, _i, missingClusters_1, cluster, shouldContinue, _b, api_url, passCredentials, token, ca_cert, postResult, _c, _d, message, variables, understood, GL_TOKEN, deploy_tokens;
65
+ var _e, _f;
66
+ var _this = this;
67
+ return __generator(this, function (_g) {
68
+ switch (_g.label) {
69
+ case 0: return [4 /*yield*/, (0, gitlab_1.getProjectInfo)(this)];
70
+ case 1:
71
+ _a = _g.sent(), projectId = _a.id, projectWebUrl = _a.web_url;
72
+ return [4 /*yield*/, (0, gitlab_1.doGitlabRequest)(this, "projects/".concat(projectId, "/clusters"))];
73
+ case 2:
74
+ existingGitlabClusters = _g.sent();
75
+ existingClusters = existingGitlabClusters.map(function (c) {
76
+ var found = (0, cluster_1.getClusterByFullName)(c.name);
77
+ return {
78
+ name: found ? found.name : null,
79
+ fullName: c.name
80
+ };
81
+ });
82
+ if (existingClusters.length === 0) {
83
+ this.log("");
84
+ this.log("there is no cluster on the current project?");
85
+ }
86
+ else {
87
+ this.log("there are already these clusters on the gitlab: ");
88
+ this.log("");
89
+ existingClusters.forEach(function (cluster) {
90
+ return _this.log(" - ".concat(cluster.name || "unknown", " (").concat(cluster.fullName, ")"));
91
+ });
92
+ }
93
+ this.log("");
94
+ this.log("your project specifies the following clusters:");
95
+ this.log("");
96
+ return [4 /*yield*/, (0, getProjectConfig_1.getAllPipelineContexts)()];
97
+ case 3:
98
+ allContext = _g.sent();
99
+ allDeployments = allContext.map(function (c) { return c.componentConfig.deploy; });
100
+ configuredClusterNames = allDeployments.reduce(function (acc, c) {
101
+ if ((0, pipeline_1.isOfDeployType)(c, "kubernetes") &&
102
+ !acc.includes(c.cluster || "production")) {
103
+ return __spreadArray(__spreadArray([], acc, true), [c.cluster || "production"], false);
104
+ }
105
+ return acc;
106
+ }, []);
107
+ configuredClusters = configuredClusterNames.map(function (c) { return ({
108
+ name: c,
109
+ config: (0, cluster_1.getClusterByName)(c)
110
+ }); });
111
+ configuredClusters.forEach(function (cluster) {
112
+ return _this.log(" - ".concat(cluster.name || "unknown", " (").concat(cluster.config.fullName, ")"));
113
+ });
114
+ this.log("");
115
+ missingClusters = configuredClusters.filter(function (c) { return !existingClusters.some(function (exist) { return exist.name === c.name; }); });
116
+ this.log("");
117
+ this.log("These clusters are not configured yet on gitlab:");
118
+ this.log("");
119
+ missingClusters.forEach(function (cluster) {
120
+ return _this.log(" - ".concat(cluster.name || "unknown", " (").concat(cluster.config.fullName, ")"));
121
+ });
122
+ this.log("");
123
+ _i = 0, missingClusters_1 = missingClusters;
124
+ _g.label = 4;
125
+ case 4:
126
+ if (!(_i < missingClusters_1.length)) return [3 /*break*/, 11];
127
+ cluster = missingClusters_1[_i];
128
+ this.log("".concat(cluster, " (").concat(cluster.config.fullName, ")"));
129
+ this.log("");
130
+ return [4 /*yield*/, this.prompt({
131
+ type: "confirm",
132
+ name: "shouldContinue",
133
+ message: "Should I add the this cluster ? 🤔 "
134
+ })];
135
+ case 5:
136
+ shouldContinue = (_g.sent()).shouldContinue;
137
+ this.log("");
138
+ if (!shouldContinue) return [3 /*break*/, 10];
139
+ _b = cluster.config, api_url = _b.api_url, passCredentials = _b.passCredentials;
140
+ if (!api_url) {
141
+ throw new Error("no api_url on this cluster!");
142
+ }
143
+ if (!passCredentials) {
144
+ throw new Error("no passCredentials on this cluster!");
145
+ }
146
+ return [4 /*yield*/, (0, passwordstore_1.readPass)(passCredentials.token)];
147
+ case 6:
148
+ token = _g.sent();
149
+ return [4 /*yield*/, (0, passwordstore_1.readPass)(passCredentials.ca_cert)];
150
+ case 7:
151
+ ca_cert = _g.sent();
152
+ _c = gitlab_1.doGitlabRequest;
153
+ _d = [this, "projects/".concat(projectId, "/clusters/user")];
154
+ _e = {
155
+ name: cluster.config.fullName,
156
+ managed: false
157
+ };
158
+ _f = {
159
+ api_url: api_url,
160
+ ca_cert: ca_cert,
161
+ token: token
162
+ };
163
+ return [4 /*yield*/, (0, projects_1.getProjectNamespace)("prod")];
164
+ case 8: return [4 /*yield*/, _c.apply(void 0, _d.concat([(_e.platform_kubernetes_attributes = (_f.namespace = _g.sent(),
165
+ _f),
166
+ _e)]))];
167
+ case 9:
168
+ postResult = _g.sent();
169
+ message = postResult.message;
170
+ if (message) {
171
+ this.log("Message from gitlab: ".concat(message));
172
+ }
173
+ _g.label = 10;
174
+ case 10:
175
+ _i++;
176
+ return [3 /*break*/, 4];
177
+ case 11: return [4 /*yield*/, (0, gitlab_1.doGitlabRequest)(this, "projects/".concat(projectId, "/variables"))];
178
+ case 12:
179
+ variables = _g.sent();
180
+ if (!!variables.find(function (v) { return v.key === "GL_TOKEN"; })) return [3 /*break*/, 16];
181
+ this.log("I need add a GL_TOKEN to the project, so that semantic release will work\n");
182
+ this.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");
183
+ this.log("\n");
184
+ return [4 /*yield*/, this.prompt({
185
+ "default": true,
186
+ message: "Understood and open gitlab now? 🤔",
187
+ name: "understood",
188
+ type: "confirm"
189
+ })];
190
+ case 13:
191
+ understood = (_g.sent()).understood;
192
+ if (!understood) {
193
+ this.log("continuing anyway...");
194
+ }
195
+ (0, open_1["default"])("".concat(projectWebUrl, "/-/settings/access_tokens"));
196
+ this.log("\n");
197
+ this.log("Enter your copied token now: ");
198
+ this.log("\n");
199
+ return [4 /*yield*/, this.prompt({
200
+ type: "password",
201
+ name: "GL_TOKEN",
202
+ message: "Access Token: "
203
+ })];
204
+ case 14:
205
+ GL_TOKEN = (_g.sent()).GL_TOKEN;
206
+ return [4 /*yield*/, (0, gitlab_1.doGitlabRequest)(this, "projects/".concat(projectId, "/variables"), {
207
+ key: "GL_TOKEN",
208
+ value: GL_TOKEN
209
+ })];
210
+ case 15:
211
+ _g.sent();
212
+ _g.label = 16;
213
+ case 16: return [4 /*yield*/, (0, gitlab_1.doGitlabRequest)(this, "projects/".concat(projectId, "/deploy_tokens"))];
214
+ case 17:
215
+ deploy_tokens = _g.sent();
216
+ if (!!deploy_tokens.find(function (v) { return v.name === "gitlab-deploy-token"; })) return [3 /*break*/, 19];
217
+ this.log("I will setup the 'GitLab Deploy Token', so Kubernetes can pull images from this project.");
218
+ return [4 /*yield*/, (0, gitlab_1.doGitlabRequest)(this, "projects/".concat(projectId, "/deploy_tokens"), {
219
+ id: projectId,
220
+ name: "gitlab-deploy-token",
221
+ scopes: ["read_registry"]
222
+ })];
223
+ case 18:
224
+ _g.sent();
225
+ _g.label = 19;
226
+ case 19:
227
+ this.log("gitlab is ready! 🥂");
228
+ this.log("\n");
229
+ this.log("do not forget to make sure that:");
230
+ [
231
+ "you have __health route in place",
232
+ "lint and test are defined",
233
+ "eat your vegetables",
234
+ "be awesome 🤩",
235
+ ].forEach(function (tip) { return _this.log(" - ".concat(tip)); });
236
+ this.log("\n");
237
+ this.log("\n");
238
+ return [2 /*return*/];
239
+ }
240
+ });
241
+ });
242
+ })];
243
+ });
244
+ }); });
245
+ //# sourceMappingURL=commandInitGitlab.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"commandInitGitlab.js","sourceRoot":"","sources":["../../../../../src/apps/cli/commands/project/commandInitGitlab.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import Vorpal from "vorpal";
2
+ declare const _default: (vorpal: Vorpal) => Promise<Vorpal.Command>;
3
+ export default _default;