@catladder/cli 0.0.0-main-d74691dd → 0.0.0-main-b29ca0c2

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 (343) hide show
  1. package/.nvmrc +1 -1
  2. package/bin/catenv +1 -0
  3. package/bin/catladder +1 -1
  4. package/bin/debugCatenv +1 -0
  5. package/dist/apps/catenv/catenv.js +130 -35
  6. package/dist/apps/catenv/catenv.js.map +1 -1
  7. package/dist/apps/cli/cli.d.ts +2 -0
  8. package/dist/apps/cli/cli.js +82 -0
  9. package/dist/apps/cli/cli.js.map +1 -0
  10. package/dist/apps/{shell → cli}/commands/general/index.d.ts +1 -1
  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/{shell → cli}/commands/general/namespaceAutoCompletion.d.ts +0 -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/{shell → cli}/commands/mongodb/utils/index.d.ts +0 -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 +217 -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/{shell → cli}/commands/project/commandMigrateHelm3.d.ts +1 -1
  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/commandTriggerCronjob.d.ts +3 -0
  104. package/dist/apps/cli/commands/project/commandTriggerCronjob.js +144 -0
  105. package/dist/apps/cli/commands/project/commandTriggerCronjob.js.map +1 -0
  106. package/dist/apps/cli/commands/project/index.d.ts +3 -0
  107. package/dist/apps/cli/commands/project/index.js +95 -0
  108. package/dist/apps/cli/commands/project/index.js.map +1 -0
  109. package/dist/apps/cli/commands/project/utils/autocompletions.d.ts +3 -0
  110. package/dist/apps/cli/commands/project/utils/autocompletions.js +96 -0
  111. package/dist/apps/cli/commands/project/utils/autocompletions.js.map +1 -0
  112. package/dist/apps/{shell → cli}/commands/project/utils/ensureCluster.d.ts +0 -0
  113. package/dist/apps/cli/commands/project/utils/ensureCluster.js +84 -0
  114. package/dist/apps/cli/commands/project/utils/ensureCluster.js.map +1 -0
  115. package/dist/apps/{shell → cli}/commands/project/utils/ensureNamespace.d.ts +0 -0
  116. package/dist/apps/cli/commands/project/utils/ensureNamespace.js +92 -0
  117. package/dist/apps/cli/commands/project/utils/ensureNamespace.js.map +1 -0
  118. package/dist/apps/{shell → cli}/commands/shared/index.d.ts +0 -0
  119. package/dist/apps/cli/commands/shared/index.js +72 -0
  120. package/dist/apps/cli/commands/shared/index.js.map +1 -0
  121. package/dist/apps/cli/commands/theStuffThatReallyMatters/index.d.ts +3 -0
  122. package/dist/apps/cli/commands/theStuffThatReallyMatters/index.js +131 -0
  123. package/dist/apps/cli/commands/theStuffThatReallyMatters/index.js.map +1 -0
  124. package/dist/apps/{shell → cli}/utils/getGoogleAuthUserNumber.d.ts +0 -0
  125. package/dist/apps/cli/utils/getGoogleAuthUserNumber.js +69 -0
  126. package/dist/apps/cli/utils/getGoogleAuthUserNumber.js.map +1 -0
  127. package/dist/{index.d.ts → catenv.d.ts} +0 -0
  128. package/dist/catenv.js +8 -0
  129. package/dist/catenv.js.map +1 -0
  130. package/dist/cli.d.ts +1 -0
  131. package/dist/cli.js +13 -0
  132. package/dist/cli.js.map +1 -0
  133. package/dist/config/clusters.js +57 -9
  134. package/dist/config/clusters.js.map +1 -1
  135. package/dist/config/constants.js +1 -1
  136. package/dist/config/getProjectConfig.d.ts +11 -7
  137. package/dist/config/getProjectConfig.js +166 -61
  138. package/dist/config/getProjectConfig.js.map +1 -1
  139. package/dist/k8sApi/index.js +5 -5
  140. package/dist/k8sApi/index.js.map +1 -1
  141. package/dist/packageInfos.js +3 -3
  142. package/dist/packageInfos.js.map +1 -1
  143. package/dist/tsconfig.tsbuildinfo +1 -1
  144. package/dist/types/types.js +1 -1
  145. package/dist/utils/cluster.js +79 -19
  146. package/dist/utils/cluster.js.map +1 -1
  147. package/dist/utils/dashboardToken.js +80 -15
  148. package/dist/utils/dashboardToken.js.map +1 -1
  149. package/dist/utils/editAsFile.d.ts +1 -1
  150. package/dist/utils/editAsFile.js +78 -15
  151. package/dist/utils/editAsFile.js.map +1 -1
  152. package/dist/utils/files.js +70 -16
  153. package/dist/utils/files.js.map +1 -1
  154. package/dist/utils/formatEnvVars.js +8 -5
  155. package/dist/utils/formatEnvVars.js.map +1 -1
  156. package/dist/utils/getEditor.js +64 -14
  157. package/dist/utils/getEditor.js.map +1 -1
  158. package/dist/utils/gitlab.d.ts +2 -1
  159. package/dist/utils/gitlab.js +194 -79
  160. package/dist/utils/gitlab.js.map +1 -1
  161. package/dist/utils/log.js +3 -3
  162. package/dist/utils/log.js.map +1 -1
  163. package/dist/utils/passwordstore/index.js +362 -154
  164. package/dist/utils/passwordstore/index.js.map +1 -1
  165. package/dist/utils/portForward.js +103 -34
  166. package/dist/utils/portForward.js.map +1 -1
  167. package/dist/utils/preferences/index.js +110 -28
  168. package/dist/utils/preferences/index.js.map +1 -1
  169. package/dist/utils/projects/index.js +136 -40
  170. package/dist/utils/projects/index.js.map +1 -1
  171. package/dist/utils/promise.js +56 -5
  172. package/dist/utils/promise.js.map +1 -1
  173. package/dist/utils/shell.js +75 -19
  174. package/dist/utils/shell.js.map +1 -1
  175. package/package.json +9 -10
  176. package/src/apps/catenv/catenv.ts +16 -5
  177. package/src/apps/{shell/shell.ts → cli/cli.ts} +2 -2
  178. package/src/apps/{shell → cli}/commands/general/index.ts +1 -1
  179. package/src/apps/{shell → cli}/commands/general/namespaceAutoCompletion.ts +0 -0
  180. package/src/apps/{shell → cli}/commands/general/portForward.ts +1 -1
  181. package/src/apps/{shell → cli}/commands/mongodb/index.ts +1 -1
  182. package/src/apps/{shell → cli}/commands/mongodb/projectMongoDestroyMember.ts +3 -3
  183. package/src/apps/{shell → cli}/commands/mongodb/projectMongoGetShell.ts +3 -3
  184. package/src/apps/{shell → cli}/commands/mongodb/projectMongoPortForward.ts +3 -3
  185. package/src/apps/{shell → cli}/commands/mongodb/utils/index.ts +0 -0
  186. package/src/apps/{shell → cli}/commands/project/commandCloudSqlProxy.ts +7 -7
  187. package/src/apps/cli/commands/project/commandConfigSecrets.ts +161 -0
  188. package/src/apps/{shell → cli}/commands/project/commandCopyDB.ts +9 -5
  189. package/src/apps/{shell → cli}/commands/project/commandDeletePods.ts +3 -3
  190. package/src/apps/{shell → cli}/commands/project/commandDeleteProject.ts +3 -3
  191. package/src/apps/cli/commands/project/commandEnvVars.ts +15 -0
  192. package/src/apps/{shell → cli}/commands/project/commandGetMyTotalWorktime.ts +2 -2
  193. package/src/apps/{shell → cli}/commands/project/commandGetShell.ts +3 -3
  194. package/src/apps/{shell → cli}/commands/project/commandGitlabCi.ts +1 -1
  195. package/src/apps/{shell → cli}/commands/project/commandInitGitlab.ts +3 -3
  196. package/src/apps/{shell → cli}/commands/project/commandInitProject.ts +2 -2
  197. package/src/apps/{shell → cli}/commands/project/commandListPods.ts +3 -3
  198. package/src/apps/{shell → cli}/commands/project/commandMigrateHelm3.ts +11 -5
  199. package/src/apps/{shell → cli}/commands/project/commandNamespace.ts +3 -3
  200. package/src/apps/{shell → cli}/commands/project/commandOpenCostDashboard.ts +3 -3
  201. package/src/apps/{shell → cli}/commands/project/commandOpenDashboard.ts +12 -6
  202. package/src/apps/cli/commands/project/commandOpenEnv.ts +22 -0
  203. package/src/apps/{shell → cli}/commands/project/commandOpenGit.ts +1 -1
  204. package/src/apps/{shell → cli}/commands/project/commandOpenGrafana.ts +3 -3
  205. package/src/apps/{shell → cli}/commands/project/commandOpenGrafanaPod.ts +4 -5
  206. package/src/apps/{shell → cli}/commands/project/commandOpenLogs.ts +3 -3
  207. package/src/apps/{shell → cli}/commands/project/commandPauseProject.ts +3 -3
  208. package/src/apps/{shell → cli}/commands/project/commandPortForward.ts +3 -3
  209. package/src/apps/{shell → cli}/commands/project/commandTriggerCronjob.ts +3 -3
  210. package/src/apps/{shell → cli}/commands/project/index.ts +1 -1
  211. package/src/apps/cli/commands/project/utils/autocompletions.ts +26 -0
  212. package/src/apps/{shell → cli}/commands/project/utils/ensureCluster.ts +6 -2
  213. package/src/apps/{shell → cli}/commands/project/utils/ensureNamespace.ts +0 -0
  214. package/src/apps/{shell → cli}/commands/shared/index.ts +0 -0
  215. package/src/apps/{shell → cli}/commands/theStuffThatReallyMatters/index.ts +11 -11
  216. package/src/apps/{shell → cli}/utils/getGoogleAuthUserNumber.ts +0 -0
  217. package/src/catenv.ts +3 -0
  218. package/src/cli.ts +8 -0
  219. package/src/config/getProjectConfig.ts +48 -40
  220. package/src/utils/editAsFile.ts +12 -2
  221. package/src/utils/gitlab.ts +14 -10
  222. package/src/utils/projects/index.ts +2 -1
  223. package/tsconfig.json +2 -2
  224. package/bin/catenv.sh +0 -1
  225. package/dist/apps/shell/commands/general/index.js +0 -104
  226. package/dist/apps/shell/commands/general/index.js.map +0 -1
  227. package/dist/apps/shell/commands/general/namespaceAutoCompletion.js +0 -11
  228. package/dist/apps/shell/commands/general/namespaceAutoCompletion.js.map +0 -1
  229. package/dist/apps/shell/commands/general/portForward.d.ts +0 -3
  230. package/dist/apps/shell/commands/general/portForward.js +0 -42
  231. package/dist/apps/shell/commands/general/portForward.js.map +0 -1
  232. package/dist/apps/shell/commands/mongodb/index.d.ts +0 -3
  233. package/dist/apps/shell/commands/mongodb/index.js +0 -14
  234. package/dist/apps/shell/commands/mongodb/index.js.map +0 -1
  235. package/dist/apps/shell/commands/mongodb/projectMongoDestroyMember.d.ts +0 -3
  236. package/dist/apps/shell/commands/mongodb/projectMongoDestroyMember.js +0 -93
  237. package/dist/apps/shell/commands/mongodb/projectMongoDestroyMember.js.map +0 -1
  238. package/dist/apps/shell/commands/mongodb/projectMongoGetShell.d.ts +0 -3
  239. package/dist/apps/shell/commands/mongodb/projectMongoGetShell.js +0 -36
  240. package/dist/apps/shell/commands/mongodb/projectMongoGetShell.js.map +0 -1
  241. package/dist/apps/shell/commands/mongodb/projectMongoPortForward.d.ts +0 -3
  242. package/dist/apps/shell/commands/mongodb/projectMongoPortForward.js +0 -43
  243. package/dist/apps/shell/commands/mongodb/projectMongoPortForward.js.map +0 -1
  244. package/dist/apps/shell/commands/mongodb/utils/index.js +0 -61
  245. package/dist/apps/shell/commands/mongodb/utils/index.js.map +0 -1
  246. package/dist/apps/shell/commands/project/commandCloudSqlProxy.d.ts +0 -3
  247. package/dist/apps/shell/commands/project/commandCloudSqlProxy.js +0 -47
  248. package/dist/apps/shell/commands/project/commandCloudSqlProxy.js.map +0 -1
  249. package/dist/apps/shell/commands/project/commandConfigSecrets.d.ts +0 -3
  250. package/dist/apps/shell/commands/project/commandConfigSecrets.js +0 -96
  251. package/dist/apps/shell/commands/project/commandConfigSecrets.js.map +0 -1
  252. package/dist/apps/shell/commands/project/commandCopyDB.d.ts +0 -3
  253. package/dist/apps/shell/commands/project/commandCopyDB.js +0 -67
  254. package/dist/apps/shell/commands/project/commandCopyDB.js.map +0 -1
  255. package/dist/apps/shell/commands/project/commandDeletePods.d.ts +0 -3
  256. package/dist/apps/shell/commands/project/commandDeletePods.js +0 -45
  257. package/dist/apps/shell/commands/project/commandDeletePods.js.map +0 -1
  258. package/dist/apps/shell/commands/project/commandDeleteProject.d.ts +0 -3
  259. package/dist/apps/shell/commands/project/commandDeleteProject.js +0 -28
  260. package/dist/apps/shell/commands/project/commandDeleteProject.js.map +0 -1
  261. package/dist/apps/shell/commands/project/commandEnvVars.d.ts +0 -3
  262. package/dist/apps/shell/commands/project/commandEnvVars.js +0 -12
  263. package/dist/apps/shell/commands/project/commandEnvVars.js.map +0 -1
  264. package/dist/apps/shell/commands/project/commandGetMyTotalWorktime.d.ts +0 -3
  265. package/dist/apps/shell/commands/project/commandGetMyTotalWorktime.js +0 -11
  266. package/dist/apps/shell/commands/project/commandGetMyTotalWorktime.js.map +0 -1
  267. package/dist/apps/shell/commands/project/commandGetShell.d.ts +0 -3
  268. package/dist/apps/shell/commands/project/commandGetShell.js +0 -30
  269. package/dist/apps/shell/commands/project/commandGetShell.js.map +0 -1
  270. package/dist/apps/shell/commands/project/commandGitlabCi.d.ts +0 -3
  271. package/dist/apps/shell/commands/project/commandGitlabCi.js +0 -86
  272. package/dist/apps/shell/commands/project/commandGitlabCi.js.map +0 -1
  273. package/dist/apps/shell/commands/project/commandInitGitlab.d.ts +0 -3
  274. package/dist/apps/shell/commands/project/commandInitGitlab.js +0 -142
  275. package/dist/apps/shell/commands/project/commandInitGitlab.js.map +0 -1
  276. package/dist/apps/shell/commands/project/commandInitProject.d.ts +0 -3
  277. package/dist/apps/shell/commands/project/commandInitProject.js +0 -253
  278. package/dist/apps/shell/commands/project/commandInitProject.js.map +0 -1
  279. package/dist/apps/shell/commands/project/commandListPods.d.ts +0 -3
  280. package/dist/apps/shell/commands/project/commandListPods.js +0 -19
  281. package/dist/apps/shell/commands/project/commandListPods.js.map +0 -1
  282. package/dist/apps/shell/commands/project/commandMigrateHelm3.js +0 -45
  283. package/dist/apps/shell/commands/project/commandMigrateHelm3.js.map +0 -1
  284. package/dist/apps/shell/commands/project/commandNamespace.d.ts +0 -3
  285. package/dist/apps/shell/commands/project/commandNamespace.js +0 -11
  286. package/dist/apps/shell/commands/project/commandNamespace.js.map +0 -1
  287. package/dist/apps/shell/commands/project/commandOpenCostDashboard.d.ts +0 -3
  288. package/dist/apps/shell/commands/project/commandOpenCostDashboard.js +0 -22
  289. package/dist/apps/shell/commands/project/commandOpenCostDashboard.js.map +0 -1
  290. package/dist/apps/shell/commands/project/commandOpenDashboard.d.ts +0 -3
  291. package/dist/apps/shell/commands/project/commandOpenDashboard.js +0 -28
  292. package/dist/apps/shell/commands/project/commandOpenDashboard.js.map +0 -1
  293. package/dist/apps/shell/commands/project/commandOpenEnv.d.ts +0 -3
  294. package/dist/apps/shell/commands/project/commandOpenEnv.js +0 -19
  295. package/dist/apps/shell/commands/project/commandOpenEnv.js.map +0 -1
  296. package/dist/apps/shell/commands/project/commandOpenGit.d.ts +0 -3
  297. package/dist/apps/shell/commands/project/commandOpenGit.js +0 -9
  298. package/dist/apps/shell/commands/project/commandOpenGit.js.map +0 -1
  299. package/dist/apps/shell/commands/project/commandOpenGrafana.d.ts +0 -3
  300. package/dist/apps/shell/commands/project/commandOpenGrafana.js +0 -22
  301. package/dist/apps/shell/commands/project/commandOpenGrafana.js.map +0 -1
  302. package/dist/apps/shell/commands/project/commandOpenGrafanaPod.d.ts +0 -3
  303. package/dist/apps/shell/commands/project/commandOpenGrafanaPod.js +0 -34
  304. package/dist/apps/shell/commands/project/commandOpenGrafanaPod.js.map +0 -1
  305. package/dist/apps/shell/commands/project/commandOpenLogs.d.ts +0 -3
  306. package/dist/apps/shell/commands/project/commandOpenLogs.js +0 -22
  307. package/dist/apps/shell/commands/project/commandOpenLogs.js.map +0 -1
  308. package/dist/apps/shell/commands/project/commandPauseProject.d.ts +0 -3
  309. package/dist/apps/shell/commands/project/commandPauseProject.js +0 -28
  310. package/dist/apps/shell/commands/project/commandPauseProject.js.map +0 -1
  311. package/dist/apps/shell/commands/project/commandPortForward.d.ts +0 -3
  312. package/dist/apps/shell/commands/project/commandPortForward.js +0 -40
  313. package/dist/apps/shell/commands/project/commandPortForward.js.map +0 -1
  314. package/dist/apps/shell/commands/project/commandTriggerCronjob.d.ts +0 -3
  315. package/dist/apps/shell/commands/project/commandTriggerCronjob.js +0 -56
  316. package/dist/apps/shell/commands/project/commandTriggerCronjob.js.map +0 -1
  317. package/dist/apps/shell/commands/project/index.d.ts +0 -3
  318. package/dist/apps/shell/commands/project/index.js +0 -56
  319. package/dist/apps/shell/commands/project/index.js.map +0 -1
  320. package/dist/apps/shell/commands/project/utils/autocompletions.d.ts +0 -1
  321. package/dist/apps/shell/commands/project/utils/autocompletions.js +0 -6
  322. package/dist/apps/shell/commands/project/utils/autocompletions.js.map +0 -1
  323. package/dist/apps/shell/commands/project/utils/ensureCluster.js +0 -32
  324. package/dist/apps/shell/commands/project/utils/ensureCluster.js.map +0 -1
  325. package/dist/apps/shell/commands/project/utils/ensureNamespace.js +0 -39
  326. package/dist/apps/shell/commands/project/utils/ensureNamespace.js.map +0 -1
  327. package/dist/apps/shell/commands/shared/index.js +0 -22
  328. package/dist/apps/shell/commands/shared/index.js.map +0 -1
  329. package/dist/apps/shell/commands/theStuffThatReallyMatters/index.d.ts +0 -3
  330. package/dist/apps/shell/commands/theStuffThatReallyMatters/index.js +0 -51
  331. package/dist/apps/shell/commands/theStuffThatReallyMatters/index.js.map +0 -1
  332. package/dist/apps/shell/shell.d.ts +0 -2
  333. package/dist/apps/shell/shell.js +0 -38
  334. package/dist/apps/shell/shell.js.map +0 -1
  335. package/dist/apps/shell/utils/getGoogleAuthUserNumber.js +0 -20
  336. package/dist/apps/shell/utils/getGoogleAuthUserNumber.js.map +0 -1
  337. package/dist/index.js +0 -21
  338. package/dist/index.js.map +0 -1
  339. package/src/apps/shell/commands/project/commandConfigSecrets.ts +0 -114
  340. package/src/apps/shell/commands/project/commandEnvVars.ts +0 -14
  341. package/src/apps/shell/commands/project/commandOpenEnv.ts +0 -18
  342. package/src/apps/shell/commands/project/utils/autocompletions.ts +0 -3
  343. package/src/index.ts +0 -17
@@ -1,4 +1,5 @@
1
1
  import { exec } from "child-process-promise";
2
+ import memoizee from "memoizee";
2
3
  import fetch from "node-fetch";
3
4
  import open from "open";
4
5
  import { CommandInstance } from "vorpal";
@@ -62,6 +63,8 @@ export const doGitlabRequest = async <T = any>(
62
63
  return result.json();
63
64
  }
64
65
 
66
+ console.trace(data);
67
+
65
68
  throw new Error(
66
69
  `Could not send request to gitlab api: ${result.status} "${
67
70
  result.statusText
@@ -93,12 +96,13 @@ type GitlabVariable = {
93
96
  masked: boolean;
94
97
  environment_scope: string;
95
98
  };
96
- export const getAllVariables = async (
97
- vorpal: CommandInstance
98
- ): Promise<Array<GitlabVariable>> => {
99
- const { id } = await getProjectInfo(vorpal);
100
- return await doGitlabRequest(this, `projects/${id}/variables`);
101
- };
99
+ export const getAllVariables = memoizee(
100
+ async (vorpal: CommandInstance): Promise<Array<GitlabVariable>> => {
101
+ const { id } = await getProjectInfo(vorpal);
102
+ return await doGitlabRequest(vorpal, `projects/${id}/variables`);
103
+ },
104
+ { promise: true }
105
+ );
102
106
 
103
107
  const createVariable = async (
104
108
  vorpal: CommandInstance,
@@ -106,7 +110,7 @@ const createVariable = async (
106
110
  key: string,
107
111
  value: string
108
112
  ) => {
109
- return await doGitlabRequest(this, `projects/${projectId}/variables`, {
113
+ return await doGitlabRequest(vorpal, `projects/${projectId}/variables`, {
110
114
  key,
111
115
  value,
112
116
  });
@@ -119,7 +123,7 @@ const updateVariable = async (
119
123
  value: string
120
124
  ) => {
121
125
  return await doGitlabRequest(
122
- this,
126
+ vorpal,
123
127
  `projects/${projectId}/variables/${key}`,
124
128
  {
125
129
  value,
@@ -135,8 +139,6 @@ export const upsertAllVariables = async (
135
139
  ): Promise<void> => {
136
140
  const { id } = await getProjectInfo(vorpal);
137
141
 
138
- console.log("upsertAllVariables", variables);
139
-
140
142
  for (const [key, value] of Object.entries(variables ?? {})) {
141
143
  const fullKey = "CL_" + env + "_" + componentName + "_" + key;
142
144
 
@@ -144,6 +146,8 @@ export const upsertAllVariables = async (
144
146
  await updateVariable(vorpal, id, fullKey, value);
145
147
  } catch (e) {
146
148
  await createVariable(vorpal, id, fullKey, value);
149
+ } finally {
150
+ getAllVariables.clear();
147
151
  }
148
152
  }
149
153
  };
@@ -1,4 +1,5 @@
1
1
  import { exec } from "child-process-promise";
2
+
2
3
  import { join } from "path";
3
4
  import { getProjectConfig, parseChoice } from "../../config/getProjectConfig";
4
5
  import k8sApi from "../../k8sApi";
@@ -26,7 +27,7 @@ export const hasGitlabCiFile = async () => {
26
27
 
27
28
  export const getProjectNamespace = async (envComponent: string) => {
28
29
  const { env } = parseChoice(envComponent);
29
- const config = getProjectConfig();
30
+ const config = await getProjectConfig();
30
31
  return `${config.customerName}-${config.appName}-${env}`;
31
32
  };
32
33
 
package/tsconfig.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
- "extends": "@tsconfig/node14/tsconfig.json",
3
2
  "compilerOptions": {
3
+ "lib": ["es2020", "DOM"],
4
4
  "module": "CommonJS",
5
5
  "declaration": true,
6
6
  "noImplicitAny": true,
@@ -12,5 +12,5 @@
12
12
  "incremental": true,
13
13
  "resolveJsonModule": true
14
14
  },
15
- "include": ["src/**/*"]
15
+ "include": ["./src/**/*"]
16
16
  }
package/bin/catenv.sh DELETED
@@ -1 +0,0 @@
1
- eval $(catladder --catenv )
@@ -1,104 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.getAllNamespacesNames = void 0;
7
- const memoizee_1 = __importDefault(require("memoizee"));
8
- const k8sApi_1 = __importDefault(require("../../../../k8sApi"));
9
- const cluster_1 = require("../../../../utils/cluster");
10
- const log_1 = require("../../../../utils/log");
11
- const passwordstore_1 = require("../../../../utils/passwordstore");
12
- const portForward_1 = require("../../../../utils/portForward");
13
- const shell_1 = require("../../../../utils/shell");
14
- const getGoogleAuthUserNumber_1 = require("../../utils/getGoogleAuthUserNumber");
15
- const shared_1 = require("../shared");
16
- const namespaceAutoCompletion_1 = require("./namespaceAutoCompletion");
17
- const portForward_2 = __importDefault(require("./portForward"));
18
- const getAllNamespaces = (0, memoizee_1.default)(async () => {
19
- const res = await k8sApi_1.default.listNamespace();
20
- return res.body.items;
21
- }, { maxAge: 30000, promise: true });
22
- const getAllNamespacesNames = async () => {
23
- const namespaces = await getAllNamespaces();
24
- return namespaces.map((n) => n.metadata.name);
25
- };
26
- exports.getAllNamespacesNames = getAllNamespacesNames;
27
- exports.default = (vorpal) => {
28
- vorpal
29
- .command("connect-cluster <clustername>")
30
- .autocomplete((0, cluster_1.getAllClusterNames)())
31
- .action(async function ({ clustername }) {
32
- this.log(`connecting to ${clustername}`);
33
- await (0, cluster_1.connectToCluster)(clustername);
34
- });
35
- vorpal.command("current-context").action(async function () {
36
- this.log(await (0, cluster_1.getCurrentContext)());
37
- });
38
- vorpal
39
- .command("list-namespaces", "list all namespaces")
40
- .action(async function () {
41
- const namespaces = await (0, exports.getAllNamespacesNames)();
42
- this.log(namespaces.join("\n"));
43
- });
44
- vorpal
45
- .command("list-secrets <namespace>", "show secrets")
46
- .autocomplete(namespaceAutoCompletion_1.namespaceAutoCompletion)
47
- .action(async function ({ namespace }) {
48
- const res = await k8sApi_1.default.listNamespacedSecret(namespace);
49
- this.log(res.body.items.map((n) => n.metadata.name).join("\n"));
50
- });
51
- vorpal.command("bw-sync", "force sync bitwarden").action(async function () {
52
- await (0, passwordstore_1.syncBitwarden)(true);
53
- this.log("done");
54
- });
55
- vorpal
56
- .command("list-pods <namespace>", "list all pods of namespace")
57
- .autocomplete(namespaceAutoCompletion_1.namespaceAutoCompletion)
58
- .action(async function ({ namespace }) {
59
- const res = await k8sApi_1.default.listNamespacedPod(namespace);
60
- this.log(res.body.items.map((n) => n.metadata.name).join("\n"));
61
- });
62
- vorpal
63
- .command("stop-portforward <name>", "stop a running port forward")
64
- .autocomplete({ data: async () => (0, portForward_1.getAllRunningPortForwards)() })
65
- .action(async function ({ name }) {
66
- (0, portForward_1.stopPortForward)(name.trim());
67
- });
68
- vorpal
69
- .command("open-dashboard <namespace>", "open kubernetes dashboard")
70
- .autocomplete(namespaceAutoCompletion_1.namespaceAutoCompletion)
71
- .action(async function ({ namespace }) {
72
- const clustername = await (0, cluster_1.getCurrentConnectedClusterName)();
73
- const authGoogleNumber = await getGoogleAuthUserNumber_1.getGoogleAuthUserNumber.call(this, vorpal);
74
- await (0, shared_1.openGoogleCloudKubernetesDashboard)(authGoogleNumber, clustername, namespace);
75
- });
76
- vorpal
77
- .command("open-logs <namespace>", "open google cloud logs (stackdriver stuff)")
78
- .autocomplete(namespaceAutoCompletion_1.namespaceAutoCompletion)
79
- .action(async function ({ namespace }) {
80
- const clustername = await (0, cluster_1.getCurrentConnectedClusterName)();
81
- const authGoogleNumber = await getGoogleAuthUserNumber_1.getGoogleAuthUserNumber.call(this, vorpal);
82
- await (0, shared_1.openGoogleCloudLogs)(authGoogleNumber, clustername, namespace);
83
- });
84
- vorpal
85
- .command("get-shell <namespace>", "get a shell to a pod in the environment")
86
- .autocomplete(namespaceAutoCompletion_1.namespaceAutoCompletion)
87
- .action(async function ({ namespace }) {
88
- const res = await k8sApi_1.default.listNamespacedPod(namespace);
89
- if (res.body.items.length === 0) {
90
- (0, log_1.logError)(this, "sorry, no pods found");
91
- return;
92
- }
93
- const podNames = res.body.items.map((i) => i.metadata.name);
94
- const { podName } = await this.prompt({
95
- type: "list",
96
- name: "podName",
97
- choices: podNames,
98
- message: "Which pod? 🤔",
99
- });
100
- await (0, shell_1.getShell)(namespace, podName);
101
- });
102
- (0, portForward_2.default)(vorpal);
103
- };
104
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/apps/shell/commands/general/index.ts"],"names":[],"mappings":"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"}
@@ -1,11 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.namespaceAutoCompletion = void 0;
4
- const index_1 = require("./index");
5
- exports.namespaceAutoCompletion = {
6
- async data() {
7
- const namespaces = await (0, index_1.getAllNamespacesNames)();
8
- return namespaces;
9
- }
10
- };
11
- //# sourceMappingURL=namespaceAutoCompletion.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"namespaceAutoCompletion.js","sourceRoot":"","sources":["../../../../../src/apps/shell/commands/general/namespaceAutoCompletion.ts"],"names":[],"mappings":";;;AAAA,mCAAgD;AACnC,QAAA,uBAAuB,GAAG;IACrC,KAAK,CAAC,IAAI;QACR,MAAM,UAAU,GAAG,MAAM,IAAA,6BAAqB,GAAE,CAAC;QACjD,OAAO,UAAU,CAAC;IACpB,CAAC;CACF,CAAC"}
@@ -1,3 +0,0 @@
1
- import Vorpal from "vorpal";
2
- declare const _default: (vorpal: Vorpal) => Vorpal.Command;
3
- export default _default;
@@ -1,42 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const log_1 = require("../../../../utils/log");
7
- const portForward_1 = require("../../../../utils/portForward");
8
- const k8sApi_1 = __importDefault(require("../../../../k8sApi"));
9
- const namespaceAutoCompletion_1 = require("./namespaceAutoCompletion");
10
- exports.default = (vorpal) => vorpal
11
- .command("port-forward <namespace>", "start port-forwarding")
12
- .autocomplete(namespaceAutoCompletion_1.namespaceAutoCompletion)
13
- .action(async function ({ namespace }) {
14
- const res = await k8sApi_1.default.listNamespacedPod(namespace);
15
- if (res.body.items.length === 0) {
16
- (0, log_1.logError)(this, "sorry, no pods found");
17
- return;
18
- }
19
- const podNames = res.body.items.map((i) => i.metadata.name);
20
- if (podNames.length === 0) {
21
- (0, log_1.logError)(this, "sorry, no pods found");
22
- return;
23
- }
24
- const { podName } = await this.prompt({
25
- type: "list",
26
- name: "podName",
27
- choices: podNames,
28
- message: "Which pod? 🤔",
29
- });
30
- const { localPort } = await this.prompt({
31
- type: "number",
32
- name: "localPort",
33
- message: "Local port: ",
34
- });
35
- const { remotePort } = await this.prompt({
36
- type: "number",
37
- name: "remotePort",
38
- message: "Remote port: ",
39
- });
40
- return (0, portForward_1.startPortForward)(podName, localPort, remotePort, namespace);
41
- });
42
- //# sourceMappingURL=portForward.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"portForward.js","sourceRoot":"","sources":["../../../../../src/apps/shell/commands/general/portForward.ts"],"names":[],"mappings":";;;;;AACA,+CAAiD;AAEjD,+DAAiE;AAEjE,gEAAwC;AACxC,uEAAoE;AAEpE,kBAAe,CAAC,MAAc,EAAE,EAAE,CAChC,MAAM;KACH,OAAO,CAAC,0BAA0B,EAAE,uBAAuB,CAAC;KAC5D,YAAY,CAAC,iDAAuB,CAAC;KACrC,MAAM,CAAC,KAAK,WAAW,EAAE,SAAS,EAAE;IACnC,MAAM,GAAG,GAAG,MAAM,gBAAM,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;IACtD,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;QAC/B,IAAA,cAAQ,EAAC,IAAI,EAAE,sBAAsB,CAAC,CAAC;QACvC,OAAO;KACR;IACD,MAAM,QAAQ,GAAG,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;IAE5D,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;QACzB,IAAA,cAAQ,EAAC,IAAI,EAAE,sBAAsB,CAAC,CAAC;QACvC,OAAO;KACR;IACD,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC;QACpC,IAAI,EAAE,MAAM;QACZ,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,QAAQ;QACjB,OAAO,EAAE,eAAe;KACzB,CAAC,CAAC;IAEH,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC;QACtC,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,WAAW;QAEjB,OAAO,EAAE,cAAc;KACxB,CAAC,CAAC;IAEH,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC;QACvC,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,YAAY;QAElB,OAAO,EAAE,eAAe;KACzB,CAAC,CAAC;IAEH,OAAO,IAAA,8BAAgB,EAAC,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;AACrE,CAAC,CAAC,CAAC"}
@@ -1,3 +0,0 @@
1
- import Vorpal from "vorpal";
2
- declare const _default: (vorpal: Vorpal) => void;
3
- export default _default;
@@ -1,14 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const projectMongoDestroyMember_1 = __importDefault(require("./projectMongoDestroyMember"));
7
- const projectMongoGetShell_1 = __importDefault(require("./projectMongoGetShell"));
8
- const projectMongoPortForward_1 = __importDefault(require("./projectMongoPortForward"));
9
- exports.default = (vorpal) => {
10
- (0, projectMongoGetShell_1.default)(vorpal);
11
- (0, projectMongoPortForward_1.default)(vorpal);
12
- (0, projectMongoDestroyMember_1.default)(vorpal);
13
- };
14
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/apps/shell/commands/mongodb/index.ts"],"names":[],"mappings":";;;;;AACA,4FAAoE;AACpE,kFAA0D;AAC1D,wFAAgE;AAEhE,kBAAe,CAAC,MAAc,EAAE,EAAE;IAChC,IAAA,8BAAoB,EAAC,MAAM,CAAC,CAAC;IAC7B,IAAA,iCAAuB,EAAC,MAAM,CAAC,CAAC;IAChC,IAAA,mCAAyB,EAAC,MAAM,CAAC,CAAC;AACpC,CAAC,CAAC"}
@@ -1,3 +0,0 @@
1
- import Vorpal from "vorpal";
2
- declare const _default: (vorpal: Vorpal) => Vorpal.Command;
3
- export default _default;
@@ -1,93 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const child_process_promise_1 = require("child-process-promise");
7
- const log_1 = require("../../../../utils/log");
8
- const projects_1 = require("../../../../utils/projects");
9
- const autocompletions_1 = require("../project/utils/autocompletions");
10
- const ensureCluster_1 = __importDefault(require("../project/utils/ensureCluster"));
11
- const utils_1 = require("./utils");
12
- const removeFinalizer = async (namespace, type, name) => (0, child_process_promise_1.exec)(`kubectl patch --namespace ${namespace} ${type} ${name} -p '{"metadata":{"finalizers":null}}'`);
13
- const deleteResource = async (namespace, type, name) => (0, child_process_promise_1.exec)(`kubectl delete --namespace ${namespace} ${type} ${name}`);
14
- const removeFinalizerAndDelete = async (namespace, type, name) => {
15
- return Promise.all([
16
- removeFinalizer(namespace, type, name),
17
- await deleteResource(namespace, type, name),
18
- ]);
19
- };
20
- exports.default = (vorpal) => vorpal
21
- .command("project-mongo-destroy-member <envComponent>", "DESTROY a member of a replicaset in order to reinitialize it")
22
- .autocomplete(autocompletions_1.envAutocompletion)
23
- .action(async function ({ envComponent }) {
24
- await ensureCluster_1.default.call(this, envComponent);
25
- this.log("this command tries to delete a (secondary) member of the replicaset, it's persistent volume claim (pvc) and the volume");
26
- this.log("");
27
- this.log("this is useful, if you update the stateful set with new volume configuration (different size or storage class)");
28
- this.log("");
29
- this.log("Kubernetes will usually recreate the missing member with the updated config and mongodb will start synchronizing the new member.");
30
- this.log("");
31
- this.log("This works without downtime, but should be done when load on the db is low. Also it has not been tested with large dbs (> 10gi)");
32
- this.log("");
33
- this.log("Deleting the volume and claim often stuck, just wait or cancel and restart.");
34
- this.log("");
35
- const { understood } = await this.prompt({
36
- default: true,
37
- message: "DO YOU UNDERSTAND?",
38
- name: "understood",
39
- type: "confirm",
40
- });
41
- if (!understood) {
42
- throw new Error("abort");
43
- }
44
- const namespace = await (0, projects_1.getProjectNamespace)(envComponent);
45
- const mongodbPods = await (0, utils_1.getMongoDbPodsWithReplInfo)(envComponent);
46
- const pvcs = await (0, projects_1.getProjectPvcs)(envComponent);
47
- const secondaries = mongodbPods.filter((pod) => !pod.isMaster);
48
- if (secondaries.length === 0) {
49
- (0, log_1.logError)(this, "sorry, no pods found");
50
- return;
51
- }
52
- const podName = (await this.prompt({
53
- type: "list",
54
- name: "podName",
55
- choices: secondaries.map((p) => ({
56
- name: `[ secondary ] ${p.podName}`,
57
- value: p.podName,
58
- })),
59
- message: "Which pod? 🤔",
60
- })).podName;
61
- const thePvc = pvcs.find((pvc) => pvc.metadata.name === `datadir-${podName}`);
62
- if (!thePvc) {
63
- (0, log_1.logError)(this, `sorry, no pvc found for ${podName}`);
64
- return;
65
- }
66
- const { shouldContinue } = await this.prompt({
67
- default: true,
68
- message: "THIS WILL DESTROY THE POD, ITS VOLUME AND ALL ITS DATA 🙀🙀🙀!!! continue? 🤔",
69
- name: "shouldContinue",
70
- type: "confirm",
71
- });
72
- if (!shouldContinue) {
73
- throw new Error("abort");
74
- }
75
- // force delete, see https://github.com/kubernetes/kubernetes/issues/77258#issuecomment-502209800
76
- this.log("destroying volume...");
77
- try {
78
- await removeFinalizerAndDelete(namespace, "pv", thePvc.spec.volumeName);
79
- }
80
- catch (e) {
81
- this.log(e.message);
82
- }
83
- this.log("destroying volume claim...");
84
- try {
85
- await removeFinalizerAndDelete(namespace, "pvc", thePvc.metadata.name);
86
- }
87
- catch (e) {
88
- this.log(e.message);
89
- }
90
- this.log("destroying pod...");
91
- await removeFinalizerAndDelete(namespace, "pod", podName);
92
- });
93
- //# sourceMappingURL=projectMongoDestroyMember.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"projectMongoDestroyMember.js","sourceRoot":"","sources":["../../../../../src/apps/shell/commands/mongodb/projectMongoDestroyMember.ts"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- import Vorpal from "vorpal";
2
- declare const _default: (vorpal: Vorpal) => Vorpal.Command;
3
- export default _default;
@@ -1,36 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const log_1 = require("../../../../utils/log");
7
- const projects_1 = require("../../../../utils/projects");
8
- const autocompletions_1 = require("../project/utils/autocompletions");
9
- const ensureCluster_1 = __importDefault(require("../project/utils/ensureCluster"));
10
- const utils_1 = require("./utils");
11
- exports.default = (vorpal) => vorpal
12
- .command("project-mongo-get-shell <envComponent>", "get a shell to a mongodb in the environment")
13
- .autocomplete(autocompletions_1.envAutocompletion)
14
- .action(async function ({ envComponent }) {
15
- await ensureCluster_1.default.call(this, envComponent);
16
- const namespace = await (0, projects_1.getProjectNamespace)(envComponent);
17
- const podNames = await (0, utils_1.getProjectMongodbAllPodsSortedWithLabel)(envComponent);
18
- if (podNames.length === 0) {
19
- (0, log_1.logError)(this, "sorry, no pods found");
20
- return;
21
- }
22
- let podName;
23
- if (podNames.length === 1) {
24
- podName = podNames[0];
25
- }
26
- else {
27
- podName = (await this.prompt({
28
- type: "list",
29
- name: "podName",
30
- choices: podNames,
31
- message: "Which pod? 🤔",
32
- })).podName;
33
- }
34
- return (0, utils_1.getMongodbShell)(namespace, podName);
35
- });
36
- //# sourceMappingURL=projectMongoGetShell.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"projectMongoGetShell.js","sourceRoot":"","sources":["../../../../../src/apps/shell/commands/mongodb/projectMongoGetShell.ts"],"names":[],"mappings":";;;;;AACA,+CAAiD;AACjD,yDAAiE;AACjE,sEAAqE;AACrE,mFAA2D;AAC3D,mCAGiB;AAEjB,kBAAe,CAAC,MAAc,EAAE,EAAE,CAChC,MAAM;KACH,OAAO,CACN,wCAAwC,EACxC,6CAA6C,CAC9C;KACA,YAAY,CAAC,mCAAiB,CAAC;KAC/B,MAAM,CAAC,KAAK,WAAW,EAAE,YAAY,EAAE;IACtC,MAAM,uBAAa,CAAC,IAAI,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;IAC7C,MAAM,SAAS,GAAG,MAAM,IAAA,8BAAmB,EAAC,YAAY,CAAC,CAAC;IAC1D,MAAM,QAAQ,GAAG,MAAM,IAAA,+CAAuC,EAC5D,YAAY,CACb,CAAC;IACF,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;QACzB,IAAA,cAAQ,EAAC,IAAI,EAAE,sBAAsB,CAAC,CAAC;QACvC,OAAO;KACR;IACD,IAAI,OAAO,CAAC;IACZ,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;QACzB,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;KACvB;SAAM;QACL,OAAO,GAAG,CACR,MAAM,IAAI,CAAC,MAAM,CAAC;YAChB,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,QAAQ;YACjB,OAAO,EAAE,eAAe;SACzB,CAAC,CACH,CAAC,OAAO,CAAC;KACX;IAED,OAAO,IAAA,uBAAe,EAAC,SAAS,EAAE,OAAO,CAAC,CAAC;AAC7C,CAAC,CAAC,CAAC"}
@@ -1,3 +0,0 @@
1
- import Vorpal from "vorpal";
2
- declare const _default: (vorpal: Vorpal) => Vorpal.Command;
3
- export default _default;
@@ -1,43 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const log_1 = require("../../../../utils/log");
7
- const portForward_1 = require("../../../../utils/portForward");
8
- const projects_1 = require("../../../../utils/projects");
9
- const autocompletions_1 = require("../project/utils/autocompletions");
10
- const ensureCluster_1 = __importDefault(require("../project/utils/ensureCluster"));
11
- const utils_1 = require("./utils");
12
- exports.default = (vorpal) => vorpal
13
- .command("project-mongo-port-forward <envComponent>", "port foward to a mongodb")
14
- .autocomplete(autocompletions_1.envAutocompletion)
15
- .action(async function ({ envComponent }) {
16
- await ensureCluster_1.default.call(this, envComponent);
17
- const namespace = await (0, projects_1.getProjectNamespace)(envComponent);
18
- const podNames = await (0, utils_1.getProjectMongodbAllPodsSortedWithLabel)(envComponent);
19
- if (podNames.length === 0) {
20
- (0, log_1.logError)(this, "sorry, no pods found");
21
- return;
22
- }
23
- let podName;
24
- if (podNames.length === 1) {
25
- podName = podNames[0].value;
26
- }
27
- else {
28
- podName = (await this.prompt({
29
- type: "list",
30
- name: "podName",
31
- choices: podNames,
32
- message: "Which pod? 🤔",
33
- })).podName;
34
- }
35
- const { localPort } = await this.prompt({
36
- type: "number",
37
- name: "localPort",
38
- default: "30000",
39
- message: "Local port: ",
40
- });
41
- return (0, portForward_1.startPortForward)(podName, localPort, 27017, namespace);
42
- });
43
- //# sourceMappingURL=projectMongoPortForward.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"projectMongoPortForward.js","sourceRoot":"","sources":["../../../../../src/apps/shell/commands/mongodb/projectMongoPortForward.ts"],"names":[],"mappings":";;;;;AACA,+CAAiD;AACjD,+DAAiE;AACjE,yDAAiE;AACjE,sEAAqE;AACrE,mFAA2D;AAC3D,mCAAkE;AAElE,kBAAe,CAAC,MAAc,EAAE,EAAE,CAChC,MAAM;KACH,OAAO,CACN,2CAA2C,EAC3C,0BAA0B,CAC3B;KACA,YAAY,CAAC,mCAAiB,CAAC;KAC/B,MAAM,CAAC,KAAK,WAAW,EAAE,YAAY,EAAE;IACtC,MAAM,uBAAa,CAAC,IAAI,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;IAC7C,MAAM,SAAS,GAAG,MAAM,IAAA,8BAAmB,EAAC,YAAY,CAAC,CAAC;IAC1D,MAAM,QAAQ,GAAG,MAAM,IAAA,+CAAuC,EAC5D,YAAY,CACb,CAAC;IACF,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;QACzB,IAAA,cAAQ,EAAC,IAAI,EAAE,sBAAsB,CAAC,CAAC;QACvC,OAAO;KACR;IACD,IAAI,OAAO,CAAC;IACZ,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE;QACzB,OAAO,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;KAC7B;SAAM;QACL,OAAO,GAAG,CACR,MAAM,IAAI,CAAC,MAAM,CAAC;YAChB,IAAI,EAAE,MAAM;YACZ,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,QAAQ;YACjB,OAAO,EAAE,eAAe;SACzB,CAAC,CACH,CAAC,OAAO,CAAC;KACX;IAED,MAAM,EAAE,SAAS,EAAE,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC;QACtC,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,OAAO;QAChB,OAAO,EAAE,cAAc;KACxB,CAAC,CAAC;IACH,OAAO,IAAA,8BAAgB,EAAC,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;AAChE,CAAC,CAAC,CAAC"}
@@ -1,61 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getProjectMongodbAllPodsSortedWithLabel = exports.getMongoDbPodsWithReplInfo = exports.podIsMaster = exports.executeMongodbCommand = exports.getMongodbShell = exports.getProjectMongodbAllPods = void 0;
4
- const child_process_promise_1 = require("child-process-promise");
5
- const projects_1 = require("../../../../../utils/projects");
6
- const filterMongoDbs = (podNames) => podNames.filter((name) => name.includes("mongodb-replicaset"));
7
- const getProjectMongodbAllPods = async (envComponent) => filterMongoDbs(await (0, projects_1.getProjectPodNames)(envComponent));
8
- exports.getProjectMongodbAllPods = getProjectMongodbAllPods;
9
- const getMongodbShell = async (namespace, podName) => {
10
- const command = `kubectl exec -it ${podName} --namespace ${namespace} mongo`;
11
- try {
12
- await (0, child_process_promise_1.spawn)(command, {
13
- shell: true,
14
- stdio: "inherit",
15
- env: {
16
- ...process.env,
17
- DEBUG: "",
18
- },
19
- });
20
- }
21
- catch (e) {
22
- //
23
- }
24
- };
25
- exports.getMongodbShell = getMongodbShell;
26
- const executeMongodbCommand = async (namespace, podName, mongoCommand) => {
27
- const fullCommand = `kubectl exec -it ${podName} --namespace ${namespace} -- mongo --quiet --eval "JSON.stringify(${mongoCommand})"`;
28
- const { stdout } = await (0, child_process_promise_1.exec)(fullCommand, {
29
- env: {
30
- ...process.env,
31
- DEBUG: "",
32
- },
33
- });
34
- return JSON.parse(stdout);
35
- };
36
- exports.executeMongodbCommand = executeMongodbCommand;
37
- const podIsMaster = async (namespace, podName) => {
38
- const result = await (0, exports.executeMongodbCommand)(namespace, podName, "db.isMaster()");
39
- return result.ismaster;
40
- };
41
- exports.podIsMaster = podIsMaster;
42
- const spaces = (n) => " ".repeat(n);
43
- const getMongoDbPodsWithReplInfo = async (envComponent) => {
44
- const namespace = await (0, projects_1.getProjectNamespace)(envComponent);
45
- return (await Promise.all((await (0, exports.getProjectMongodbAllPods)(envComponent)).map(async (podName) => ({
46
- podName,
47
- componentName: podName.replace(/-mongodb-replicaset-[0-9]+/, ""),
48
- isMaster: await (0, exports.podIsMaster)(namespace, podName),
49
- })))).sort((podA, podB) => (podA.isMaster ? (podB.isMaster ? 0 : -1) : 1));
50
- };
51
- exports.getMongoDbPodsWithReplInfo = getMongoDbPodsWithReplInfo;
52
- const getProjectMongodbAllPodsSortedWithLabel = async (envComponent) => {
53
- const pods = await (0, exports.getMongoDbPodsWithReplInfo)(envComponent);
54
- const maxComponentNameLength = Math.max(...pods.map((c) => c.componentName.length));
55
- return pods.map(({ podName, isMaster, componentName }) => ({
56
- value: podName,
57
- name: `[ ${componentName}${spaces(maxComponentNameLength - componentName.length)} ${isMaster ? " PRIMARY " : " secondary "}] ${podName}`,
58
- }));
59
- };
60
- exports.getProjectMongodbAllPodsSortedWithLabel = getProjectMongodbAllPodsSortedWithLabel;
61
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../src/apps/shell/commands/mongodb/utils/index.ts"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- import Vorpal from "vorpal";
2
- declare const _default: (vorpal: Vorpal) => Vorpal.Command;
3
- export default _default;