@catladder/cli 0.0.0-node16-ddfae617 → 0.0.0-pipeline-variables-ed2d2565

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 (295) hide show
  1. package/bin/catenv +1 -1
  2. package/bin/catenv-dev +3 -0
  3. package/bin/catladder +1 -1
  4. package/bin/catladder-dev +3 -0
  5. package/dist/apps/catenv/catenv.d.ts +2 -1
  6. package/dist/apps/catenv/catenv.js +13 -82
  7. package/dist/apps/catenv/catenv.js.map +1 -1
  8. package/dist/apps/catenv/printVariables.d.ts +3 -0
  9. package/dist/apps/catenv/printVariables.js +112 -0
  10. package/dist/apps/catenv/printVariables.js.map +1 -0
  11. package/dist/apps/catenv/types.d.ts +5 -0
  12. package/dist/apps/catenv/types.js +3 -0
  13. package/dist/apps/catenv/types.js.map +1 -0
  14. package/dist/apps/catenv/utils.d.ts +12 -0
  15. package/dist/apps/catenv/utils.js +108 -0
  16. package/dist/apps/catenv/utils.js.map +1 -0
  17. package/dist/apps/catenv/writeDotEnvFiles.d.ts +3 -0
  18. package/dist/apps/catenv/writeDotEnvFiles.js +94 -0
  19. package/dist/apps/catenv/writeDotEnvFiles.js.map +1 -0
  20. package/dist/apps/catenv/writeEnvDTs.d.ts +3 -0
  21. package/dist/apps/catenv/writeEnvDTs.js +114 -0
  22. package/dist/apps/catenv/writeEnvDTs.js.map +1 -0
  23. package/dist/apps/cli/cli.js +4 -2
  24. package/dist/apps/cli/cli.js.map +1 -1
  25. package/dist/apps/cli/commands/{project/commandCopyDB.d.ts → cloudSQL/commandRestoreDb.d.ts} +1 -1
  26. package/dist/apps/cli/commands/cloudSQL/commandRestoreDb.js +180 -0
  27. package/dist/apps/cli/commands/cloudSQL/commandRestoreDb.js.map +1 -0
  28. package/dist/apps/cli/commands/cloudSQL/index.d.ts +3 -0
  29. package/dist/apps/cli/commands/cloudSQL/index.js +50 -0
  30. package/dist/apps/cli/commands/cloudSQL/index.js.map +1 -0
  31. package/dist/apps/cli/commands/general/index.d.ts +1 -1
  32. package/dist/apps/cli/commands/general/index.js +11 -11
  33. package/dist/apps/cli/commands/general/index.js.map +1 -1
  34. package/dist/apps/cli/commands/general/portForward.d.ts +1 -1
  35. package/dist/apps/cli/commands/general/portForward.js +3 -3
  36. package/dist/apps/cli/commands/general/portForward.js.map +1 -1
  37. package/dist/apps/cli/commands/mongodb/index.d.ts +1 -1
  38. package/dist/apps/cli/commands/mongodb/projectMongoDestroyMember.d.ts +1 -1
  39. package/dist/apps/cli/commands/mongodb/projectMongoDestroyMember.js +2 -1
  40. package/dist/apps/cli/commands/mongodb/projectMongoDestroyMember.js.map +1 -1
  41. package/dist/apps/cli/commands/mongodb/projectMongoGetShell.d.ts +1 -1
  42. package/dist/apps/cli/commands/mongodb/projectMongoPortForward.d.ts +1 -1
  43. package/dist/apps/cli/commands/mongodb/projectMongoPortForward.js +27 -11
  44. package/dist/apps/cli/commands/mongodb/projectMongoPortForward.js.map +1 -1
  45. package/dist/apps/cli/commands/mongodb/utils/index.js +16 -4
  46. package/dist/apps/cli/commands/mongodb/utils/index.js.map +1 -1
  47. package/dist/apps/cli/commands/project/commandCloudSqlProxy.d.ts +1 -1
  48. package/dist/apps/cli/commands/project/commandCloudSqlProxy.js +89 -62
  49. package/dist/apps/cli/commands/project/commandCloudSqlProxy.js.map +1 -1
  50. package/dist/apps/cli/commands/project/commandConfigSecrets.d.ts +2 -1
  51. package/dist/apps/cli/commands/project/commandConfigSecrets.js +71 -57
  52. package/dist/apps/cli/commands/project/commandConfigSecrets.js.map +1 -1
  53. package/dist/apps/cli/commands/project/commandDeletePods.d.ts +1 -1
  54. package/dist/apps/cli/commands/project/commandDeletePods.js +2 -1
  55. package/dist/apps/cli/commands/project/commandDeletePods.js.map +1 -1
  56. package/dist/apps/cli/commands/project/commandDeleteProject.d.ts +1 -1
  57. package/dist/apps/cli/commands/project/commandEnvVars.d.ts +1 -1
  58. package/dist/apps/cli/commands/project/commandEnvVars.js +1 -1
  59. package/dist/apps/cli/commands/project/commandEnvVars.js.map +1 -1
  60. package/dist/apps/cli/commands/project/commandGetMyTotalWorktime.d.ts +1 -1
  61. package/dist/apps/cli/commands/project/commandGetMyTotalWorktime.js +1 -1
  62. package/dist/apps/cli/commands/project/commandGetMyTotalWorktime.js.map +1 -1
  63. package/dist/apps/cli/commands/project/commandGetShell.d.ts +1 -1
  64. package/dist/apps/cli/commands/project/commandGetShell.js +10 -6
  65. package/dist/apps/cli/commands/project/commandGetShell.js.map +1 -1
  66. package/dist/apps/cli/commands/project/commandGitlabCi.d.ts +1 -1
  67. package/dist/apps/cli/commands/project/commandGitlabCi.js.map +1 -1
  68. package/dist/apps/cli/commands/project/commandInitProject.old.d.ts +1 -1
  69. package/dist/apps/cli/commands/project/commandListPods.d.ts +1 -1
  70. package/dist/apps/cli/commands/project/commandListPods.js +2 -2
  71. package/dist/apps/cli/commands/project/commandListPods.js.map +1 -1
  72. package/dist/apps/cli/commands/project/commandMigrateHelm3.d.ts +1 -1
  73. package/dist/apps/cli/commands/project/commandMigrateHelm3.js +1 -2
  74. package/dist/apps/cli/commands/project/commandMigrateHelm3.js.map +1 -1
  75. package/dist/apps/cli/commands/project/commandNamespace.d.ts +1 -1
  76. package/dist/apps/cli/commands/project/commandOpenCostDashboard.d.ts +1 -1
  77. package/dist/apps/cli/commands/project/commandOpenCostDashboard.js +2 -2
  78. package/dist/apps/cli/commands/project/commandOpenCostDashboard.js.map +1 -1
  79. package/dist/apps/cli/commands/project/commandOpenDashboard.d.ts +1 -1
  80. package/dist/apps/cli/commands/project/commandOpenDashboard.js +19 -20
  81. package/dist/apps/cli/commands/project/commandOpenDashboard.js.map +1 -1
  82. package/dist/apps/cli/commands/project/commandOpenEnv.d.ts +1 -1
  83. package/dist/apps/cli/commands/project/commandOpenGit.d.ts +1 -1
  84. package/dist/apps/cli/commands/project/commandOpenGit.js +2 -7
  85. package/dist/apps/cli/commands/project/commandOpenGit.js.map +1 -1
  86. package/dist/apps/cli/commands/project/commandOpenGrafana.d.ts +1 -1
  87. package/dist/apps/cli/commands/project/commandOpenGrafana.js +2 -2
  88. package/dist/apps/cli/commands/project/commandOpenGrafana.js.map +1 -1
  89. package/dist/apps/cli/commands/project/commandOpenGrafanaPod.d.ts +1 -1
  90. package/dist/apps/cli/commands/project/commandOpenGrafanaPod.js +4 -3
  91. package/dist/apps/cli/commands/project/commandOpenGrafanaPod.js.map +1 -1
  92. package/dist/apps/cli/commands/project/commandOpenLogs.d.ts +1 -1
  93. package/dist/apps/cli/commands/project/commandOpenLogs.js +7 -20
  94. package/dist/apps/cli/commands/project/commandOpenLogs.js.map +1 -1
  95. package/dist/apps/cli/commands/project/commandPauseProject.d.ts +1 -1
  96. package/dist/apps/cli/commands/project/commandPortForward.d.ts +1 -1
  97. package/dist/apps/cli/commands/project/commandPortForward.js +98 -36
  98. package/dist/apps/cli/commands/project/commandPortForward.js.map +1 -1
  99. package/dist/apps/cli/commands/project/commandSecretsClearBackups.d.ts +5 -0
  100. package/dist/apps/cli/commands/project/commandSecretsClearBackups.js +90 -0
  101. package/dist/apps/cli/commands/project/commandSecretsClearBackups.js.map +1 -0
  102. package/dist/apps/cli/commands/project/commandSetup.d.ts +1 -1
  103. package/dist/apps/cli/commands/project/commandTriggerCronjob.d.ts +1 -1
  104. package/dist/apps/cli/commands/project/commandTriggerCronjob.js.map +1 -1
  105. package/dist/apps/cli/commands/project/index.d.ts +1 -1
  106. package/dist/apps/cli/commands/project/index.js +2 -2
  107. package/dist/apps/cli/commands/project/index.js.map +1 -1
  108. package/dist/apps/cli/commands/project/setup/index.d.ts +1 -1
  109. package/dist/apps/cli/commands/project/setup/index.js +11 -7
  110. package/dist/apps/cli/commands/project/setup/index.js.map +1 -1
  111. package/dist/apps/cli/commands/project/setup/setupAccessTokens.d.ts +1 -1
  112. package/dist/apps/cli/commands/project/setup/setupAccessTokens.js +5 -4
  113. package/dist/apps/cli/commands/project/setup/setupAccessTokens.js.map +1 -1
  114. package/dist/apps/cli/commands/project/setup/setupCloudRun.d.ts +3 -0
  115. package/dist/apps/cli/commands/project/setup/setupCloudRun.js +118 -0
  116. package/dist/apps/cli/commands/project/setup/setupCloudRun.js.map +1 -0
  117. package/dist/apps/cli/commands/project/setup/setupContext.d.ts +2 -2
  118. package/dist/apps/cli/commands/project/setup/setupContext.js +10 -3
  119. package/dist/apps/cli/commands/project/setup/setupContext.js.map +1 -1
  120. package/dist/apps/cli/commands/project/setup/setupKubernetes.d.ts +2 -2
  121. package/dist/apps/cli/commands/project/setup/setupKubernetes.js +25 -18
  122. package/dist/apps/cli/commands/project/setup/setupKubernetes.js.map +1 -1
  123. package/dist/apps/cli/commands/project/setup/setupTopic.d.ts +2 -0
  124. package/dist/apps/cli/commands/project/setup/setupTopic.js +69 -0
  125. package/dist/apps/cli/commands/project/setup/setupTopic.js.map +1 -0
  126. package/dist/apps/cli/commands/project/utils/ensureNamespace.d.ts +1 -1
  127. package/dist/apps/cli/commands/project/utils/ensureNamespace.js.map +1 -1
  128. package/dist/apps/cli/commands/project/utils/showProjectBanner.d.ts +1 -1
  129. package/dist/apps/cli/commands/theStuffThatReallyMatters/index.d.ts +1 -1
  130. package/dist/apps/cli/commands/theStuffThatReallyMatters/index.js +1 -1
  131. package/dist/apps/cli/commands/theStuffThatReallyMatters/index.js.map +1 -1
  132. package/dist/apps/cli/config/writeConfig.d.ts +2 -2
  133. package/dist/apps/cli/verify/index.d.ts +1 -1
  134. package/dist/apps/cli/verify/migration/fromv2.d.ts +1 -1
  135. package/dist/apps/cli/verify/migration/fromv2.js +2 -0
  136. package/dist/apps/cli/verify/migration/fromv2.js.map +1 -1
  137. package/dist/apps/cli/verify/migration/migrateSecrets.d.ts +3 -3
  138. package/dist/apps/cli/verify/migration/migrateSecrets.js +6 -3
  139. package/dist/apps/cli/verify/migration/migrateSecrets.js.map +1 -1
  140. package/dist/apps/cli/verify/migration/oldGitlabCi.d.ts +1 -1
  141. package/dist/apps/cli/verify/migration/oldGitlabCi.js +1 -1
  142. package/dist/apps/cli/verify/migration/oldGitlabCi.js.map +1 -1
  143. package/dist/bundles/catenv/index.js +45988 -0
  144. package/dist/bundles/catenv/xdg-open +1066 -0
  145. package/dist/bundles/cli/clipboard_i686.exe +0 -0
  146. package/dist/bundles/cli/clipboard_x86_64.exe +0 -0
  147. package/dist/bundles/cli/exec-child.js +39 -0
  148. package/dist/bundles/cli/index.js +359559 -0
  149. package/dist/bundles/cli/xdg-open +1066 -0
  150. package/dist/bundles/cli/xsel +0 -0
  151. package/dist/catenv.js +3 -3
  152. package/dist/catenv.js.map +1 -1
  153. package/dist/cli.js +0 -7
  154. package/dist/cli.js.map +1 -1
  155. package/dist/config/constants.d.ts +0 -1
  156. package/dist/config/constants.js +1 -2
  157. package/dist/config/constants.js.map +1 -1
  158. package/dist/config/getProjectConfig.d.ts +10 -10
  159. package/dist/config/getProjectConfig.js +77 -23
  160. package/dist/config/getProjectConfig.js.map +1 -1
  161. package/dist/config/parseChoice.d.ts +4 -0
  162. package/dist/config/parseChoice.js +9 -0
  163. package/dist/config/parseChoice.js.map +1 -0
  164. package/dist/gcloud/artifactsRegistry.d.ts +5 -0
  165. package/dist/gcloud/artifactsRegistry.js +59 -0
  166. package/dist/gcloud/artifactsRegistry.js.map +1 -0
  167. package/dist/gcloud/cloudRun/getCloudRunDomainSuffix.d.ts +2 -0
  168. package/dist/gcloud/cloudRun/getCloudRunDomainSuffix.js +67 -0
  169. package/dist/gcloud/cloudRun/getCloudRunDomainSuffix.js.map +1 -0
  170. package/dist/gcloud/cloudRun/openCloudRunDashboards.d.ts +3 -0
  171. package/dist/gcloud/cloudRun/openCloudRunDashboards.js +62 -0
  172. package/dist/gcloud/cloudRun/openCloudRunDashboards.js.map +1 -0
  173. package/dist/gcloud/cloudSql/startProxy.d.ts +10 -0
  174. package/dist/gcloud/cloudSql/startProxy.js +121 -0
  175. package/dist/gcloud/cloudSql/startProxy.js.map +1 -0
  176. package/dist/gcloud/enableServices.d.ts +3 -0
  177. package/dist/gcloud/enableServices.js +63 -0
  178. package/dist/gcloud/enableServices.js.map +1 -0
  179. package/dist/gcloud/openDashboard.d.ts +2 -0
  180. package/dist/{apps/cli/commands/shared/index.js → gcloud/openDashboard.js} +23 -27
  181. package/dist/gcloud/openDashboard.js.map +1 -0
  182. package/dist/gcloud/serviceAccounts.d.ts +12 -0
  183. package/dist/gcloud/serviceAccounts.js +144 -0
  184. package/dist/gcloud/serviceAccounts.js.map +1 -0
  185. package/dist/kubernetes/index.d.ts +3 -0
  186. package/dist/kubernetes/index.js +88 -0
  187. package/dist/kubernetes/index.js.map +1 -0
  188. package/dist/kubernetes/openKubernetesDashboards.d.ts +4 -0
  189. package/dist/kubernetes/openKubernetesDashboards.js +94 -0
  190. package/dist/kubernetes/openKubernetesDashboards.js.map +1 -0
  191. package/dist/kubernetes/portForward.d.ts +1 -0
  192. package/dist/kubernetes/portForward.js +55 -0
  193. package/dist/kubernetes/portForward.js.map +1 -0
  194. package/dist/tsconfig.tsbuildinfo +1 -1
  195. package/dist/utils/cluster.js +3 -8
  196. package/dist/utils/cluster.js.map +1 -1
  197. package/dist/utils/gitlab.d.ts +8 -6
  198. package/dist/utils/gitlab.js +165 -46
  199. package/dist/utils/gitlab.js.map +1 -1
  200. package/dist/utils/passwordstore/index.d.ts +0 -1
  201. package/dist/utils/passwordstore/index.js +1 -64
  202. package/dist/utils/passwordstore/index.js.map +1 -1
  203. package/dist/utils/portForwards.d.ts +12 -0
  204. package/dist/utils/{portForward.js → portForwards.js} +20 -16
  205. package/dist/utils/portForwards.js.map +1 -0
  206. package/dist/utils/projects/index.d.ts +0 -3
  207. package/dist/utils/projects/index.js +3 -53
  208. package/dist/utils/projects/index.js.map +1 -1
  209. package/package.json +24 -22
  210. package/scripts/bundle +4 -0
  211. package/src/apps/catenv/catenv.ts +10 -54
  212. package/src/apps/catenv/printVariables.ts +53 -0
  213. package/src/apps/catenv/types.ts +6 -0
  214. package/src/apps/catenv/utils.ts +49 -0
  215. package/src/apps/catenv/writeDotEnvFiles.ts +46 -0
  216. package/src/apps/catenv/writeEnvDTs.ts +71 -0
  217. package/src/apps/cli/cli.ts +3 -1
  218. package/src/apps/cli/commands/cloudSQL/commandRestoreDb.ts +154 -0
  219. package/src/apps/cli/commands/cloudSQL/index.ts +8 -0
  220. package/src/apps/cli/commands/general/index.ts +11 -8
  221. package/src/apps/cli/commands/general/portForward.ts +4 -4
  222. package/src/apps/cli/commands/mongodb/index.ts +1 -1
  223. package/src/apps/cli/commands/mongodb/projectMongoDestroyMember.ts +3 -5
  224. package/src/apps/cli/commands/mongodb/projectMongoGetShell.ts +1 -1
  225. package/src/apps/cli/commands/mongodb/projectMongoPortForward.ts +21 -3
  226. package/src/apps/cli/commands/mongodb/utils/index.ts +19 -11
  227. package/src/apps/cli/commands/project/commandCloudSqlProxy.ts +106 -55
  228. package/src/apps/cli/commands/project/commandConfigSecrets.ts +49 -35
  229. package/src/apps/cli/commands/project/commandDeletePods.ts +3 -5
  230. package/src/apps/cli/commands/project/commandDeleteProject.ts +1 -1
  231. package/src/apps/cli/commands/project/commandEnvVars.ts +6 -3
  232. package/src/apps/cli/commands/project/commandGetMyTotalWorktime.ts +2 -2
  233. package/src/apps/cli/commands/project/commandGetShell.ts +10 -9
  234. package/src/apps/cli/commands/project/commandGitlabCi.ts +2 -1
  235. package/src/apps/cli/commands/project/commandInitProject.old.ts +1 -1
  236. package/src/apps/cli/commands/project/commandListPods.ts +2 -2
  237. package/src/apps/cli/commands/project/commandMigrateHelm3.ts +4 -3
  238. package/src/apps/cli/commands/project/commandNamespace.ts +1 -1
  239. package/src/apps/cli/commands/project/commandOpenCostDashboard.ts +3 -3
  240. package/src/apps/cli/commands/project/commandOpenDashboard.ts +12 -32
  241. package/src/apps/cli/commands/project/commandOpenEnv.ts +1 -1
  242. package/src/apps/cli/commands/project/commandOpenGit.ts +3 -3
  243. package/src/apps/cli/commands/project/commandOpenGrafana.ts +3 -3
  244. package/src/apps/cli/commands/project/commandOpenGrafanaPod.ts +5 -7
  245. package/src/apps/cli/commands/project/commandOpenLogs.ts +4 -35
  246. package/src/apps/cli/commands/project/commandPauseProject.ts +1 -1
  247. package/src/apps/cli/commands/project/commandPortForward.ts +75 -34
  248. package/src/apps/cli/commands/project/commandSecretsClearBackups.ts +27 -0
  249. package/src/apps/cli/commands/project/commandSetup.ts +1 -1
  250. package/src/apps/cli/commands/project/commandTriggerCronjob.ts +3 -2
  251. package/src/apps/cli/commands/project/index.ts +4 -3
  252. package/src/apps/cli/commands/project/setup/index.ts +3 -1
  253. package/src/apps/cli/commands/project/setup/setupAccessTokens.ts +23 -11
  254. package/src/apps/cli/commands/project/setup/setupCloudRun.ts +84 -0
  255. package/src/apps/cli/commands/project/setup/setupContext.ts +9 -2
  256. package/src/apps/cli/commands/project/setup/setupKubernetes.ts +56 -28
  257. package/src/apps/cli/commands/project/setup/setupTopic.ts +22 -0
  258. package/src/apps/cli/commands/project/utils/ensureNamespace.ts +4 -2
  259. package/src/apps/cli/commands/project/utils/showProjectBanner.ts +1 -1
  260. package/src/apps/cli/commands/theStuffThatReallyMatters/index.ts +2 -2
  261. package/src/apps/cli/config/writeConfig.ts +2 -2
  262. package/src/apps/cli/verify/index.ts +1 -1
  263. package/src/apps/cli/verify/migration/fromv2.ts +5 -7
  264. package/src/apps/cli/verify/migration/migrateSecrets.ts +15 -5
  265. package/src/apps/cli/verify/migration/oldGitlabCi.ts +2 -2
  266. package/src/catenv.ts +6 -3
  267. package/src/cli.ts +1 -7
  268. package/src/config/constants.ts +0 -2
  269. package/src/config/getProjectConfig.ts +70 -30
  270. package/src/config/parseChoice.ts +4 -0
  271. package/src/gcloud/artifactsRegistry.ts +16 -0
  272. package/src/gcloud/cloudRun/getCloudRunDomainSuffix.ts +35 -0
  273. package/src/gcloud/cloudRun/openCloudRunDashboards.ts +22 -0
  274. package/src/gcloud/cloudSql/startProxy.ts +74 -0
  275. package/src/gcloud/enableServices.ts +14 -0
  276. package/src/gcloud/openDashboard.ts +19 -0
  277. package/src/gcloud/serviceAccounts.ts +101 -0
  278. package/src/kubernetes/index.ts +27 -0
  279. package/src/kubernetes/openKubernetesDashboards.ts +52 -0
  280. package/src/kubernetes/portForward.ts +15 -0
  281. package/src/types/child-process-promise.d.ts +37 -1
  282. package/src/utils/cluster.ts +3 -3
  283. package/src/utils/gitlab.ts +141 -30
  284. package/src/utils/passwordstore/index.ts +2 -30
  285. package/src/utils/{portForward.ts → portForwards.ts} +27 -22
  286. package/src/utils/projects/index.ts +3 -24
  287. package/tsconfig.json +1 -1
  288. package/dist/apps/cli/commands/project/commandCopyDB.js +0 -102
  289. package/dist/apps/cli/commands/project/commandCopyDB.js.map +0 -1
  290. package/dist/apps/cli/commands/shared/index.d.ts +0 -3
  291. package/dist/apps/cli/commands/shared/index.js.map +0 -1
  292. package/dist/utils/portForward.d.ts +0 -4
  293. package/dist/utils/portForward.js.map +0 -1
  294. package/src/apps/cli/commands/project/commandCopyDB.ts +0 -91
  295. package/src/apps/cli/commands/shared/index.ts +0 -36
@@ -1,11 +1,11 @@
1
- import { $ } from "zx";
2
1
  import { join } from "path";
3
2
  import { getProjectConfig, parseChoice } from "../../config/getProjectConfig";
4
- import { getk8sApi } from "../../k8sApi";
3
+
5
4
  import { readFileOrError } from "../files";
5
+ import { exec } from "child-process-promise";
6
6
 
7
7
  export const getGitRoot = async (): Promise<string> => {
8
- return (await $`git rev-parse --show-toplevel`).stdout.trim();
8
+ return (await exec(`git rev-parse --show-toplevel`)).stdout.trim();
9
9
  };
10
10
 
11
11
  export const getRootGitlabCiFile = async () => {
@@ -29,24 +29,3 @@ export const getProjectNamespace = async (envComponent: string) => {
29
29
  const config = await getProjectConfig();
30
30
  return `${config.customerName}-${config.appName}-${env}`;
31
31
  };
32
-
33
- export const getProjectPods = async (envComponent: string) => {
34
- const namespace = await getProjectNamespace(envComponent);
35
- const k8sApi = getk8sApi();
36
- const res = await k8sApi.listNamespacedPod(namespace);
37
-
38
- return res.body.items;
39
- };
40
-
41
- export const getProjectPvcs = async (envComponent: string) => {
42
- const namespace = await getProjectNamespace(envComponent);
43
- const k8sApi = getk8sApi();
44
- const res = await k8sApi.listNamespacedPersistentVolumeClaim(namespace);
45
-
46
- return res.body.items;
47
- };
48
-
49
- export const getProjectPodNames = async (envComponent: string) => {
50
- const pods = await getProjectPods(envComponent);
51
- return pods.map((n) => n.metadata.name);
52
- };
package/tsconfig.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "compilerOptions": {
3
- "lib": ["es2020", "DOM"],
3
+ "lib": ["es2021", "DOM"],
4
4
  "module": "CommonJS",
5
5
  "declaration": true,
6
6
  "noImplicitAny": true,
@@ -1,102 +0,0 @@
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
- var child_process_promise_1 = require("child-process-promise");
40
- var constants_1 = require("../../../../config/constants");
41
- var getProjectConfig_1 = require("../../../../config/getProjectConfig");
42
- var passwordstore_1 = require("../../../../utils/passwordstore");
43
- var autocompletions_1 = require("./utils/autocompletions");
44
- exports["default"] = (function (vorpal) { return __awaiter(void 0, void 0, void 0, function () {
45
- var _a, _b;
46
- return __generator(this, function (_c) {
47
- switch (_c.label) {
48
- case 0:
49
- _b = (_a = vorpal
50
- .command("copy-db <envComponent>", "replace local db with the one from an env"))
51
- .autocomplete;
52
- return [4 /*yield*/, (0, autocompletions_1.envAndComponents)()];
53
- case 1: return [2 /*return*/, _b.apply(_a, [_c.sent()])
54
- .action(function copyDB(_a) {
55
- var envComponent = _a.envComponent;
56
- return __awaiter(this, void 0, void 0, function () {
57
- var _b, env, componentName, _c, customerName, appName, shouldContinue, GOOGLE_CLOUD_SQL_REGION, POSTGRESQL_PASSWORD, LOCAL_PORT, instanceName, cloudsqlCredentials, POSTGRESQL_URL, matches, localDBName, copyDBScript;
58
- return __generator(this, function (_d) {
59
- switch (_d.label) {
60
- case 0:
61
- _b = (0, getProjectConfig_1.parseChoice)(envComponent), env = _b.env, componentName = _b.componentName;
62
- return [4 /*yield*/, (0, getProjectConfig_1.getProjectConfig)()];
63
- case 1:
64
- _c = _d.sent(), customerName = _c.customerName, appName = _c.appName;
65
- return [4 /*yield*/, this.prompt({
66
- type: "confirm",
67
- name: "shouldContinue",
68
- message: "This will drop your local database and replace it with the remote one. Continue? šŸ¤” "
69
- })];
70
- case 2:
71
- shouldContinue = (_d.sent()).shouldContinue;
72
- if (!shouldContinue) {
73
- return [2 /*return*/];
74
- }
75
- // TODO: reimpleent with new config
76
- throw new Error("needs reimplementation with new config");
77
- case 3:
78
- POSTGRESQL_PASSWORD = (_d.sent()).POSTGRESQL_PASSWORD;
79
- LOCAL_PORT = 54321;
80
- instanceName = "".concat("xxxxxx reimplement shoulld be project id", ":").concat(GOOGLE_CLOUD_SQL_REGION, ":").concat(customerName, "-").concat(appName, "-").concat(env, "=tcp:").concat(LOCAL_PORT);
81
- return [4 /*yield*/, (0, passwordstore_1.readPass)(constants_1.GOOGLE_CLOUD_SQL_PASS_PATH)];
82
- case 4:
83
- cloudsqlCredentials = _d.sent();
84
- POSTGRESQL_URL = process.env.POSTGRESQL_URL;
85
- matches = new RegExp(/\w+:\/\/.*@.*\/(\w*)()/g).exec(POSTGRESQL_URL);
86
- if (!matches) {
87
- throw new Error("Could not determine db name.");
88
- }
89
- localDBName = matches[1];
90
- copyDBScript = "\n set -e\n credtmp=$(mktemp /tmp/cred.XXXXXX)\n echo '".concat(cloudsqlCredentials, "' > $credtmp\n echo \"Opening connection...\"\n cloud_sql_proxy -instances ").concat(instanceName, " -credential_file $credtmp &> /dev/null &\n PROXY_PID=$!\n\n echo -n \"Waiting for proxy\"\n until echo > /dev/tcp/localhost/").concat(LOCAL_PORT, "; do\n sleep 0.2\n echo -n \".\"\n done 2>/dev/null\n echo\n\n dumptmp=$(mktemp /tmp/dump.XXXXXX)\n\n echo \"Dumping file to $dumptmp\"\n pg_dump --dbname=postgres://postgres:").concat(POSTGRESQL_PASSWORD, "@localhost:").concat(LOCAL_PORT, "/").concat(componentName, " --no-owner --no-privileges > $dumptmp\n psql -q -c \"drop database ").concat(localDBName, "\" 1> /dev/null\n psql -q -c \"create database ").concat(localDBName, "\" 1> /dev/null\n echo \"Restoring dump...\"\n psql -q ").concat(localDBName, " < $dumptmp 1> /dev/null\n\n echo \"Clean up...\"\n set +e\n kill -9 $PROXY_PID\n wait $PROXY_PID 2> /dev/null\n rm $credtmp\n rm $dumptmp\n echo \"\n\uD83D\uDC31 Done!\"\n ");
91
- return [4 /*yield*/, (0, child_process_promise_1.spawn)(copyDBScript, [], { shell: "bash", stdio: "inherit" })];
92
- case 5:
93
- _d.sent();
94
- return [2 /*return*/];
95
- }
96
- });
97
- });
98
- })];
99
- }
100
- });
101
- }); });
102
- //# sourceMappingURL=commandCopyDB.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"commandCopyDB.js","sourceRoot":"","sources":["../../../../../src/apps/cli/commands/project/commandCopyDB.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+DAA8C;AAE9C,0DAA0E;AAC1E,wEAI6C;AAC7C,iEAA2D;AAC3D,2DAA2D;AAE3D,sBAAe,UAAO,MAAc;;;;;gBAClC,KAAA,CAAA,KAAA,MAAM;qBACH,OAAO,CACN,wBAAwB,EACxB,2CAA2C,CAC5C,CAAA;qBACA,YAAY,CAAA;gBAAC,qBAAM,IAAA,kCAAgB,GAAE,EAAA;oBALxC,sBAAA,cAKgB,SAAwB,EAAC;qBACtC,MAAM,CAAC,SAAe,MAAM,CAAC,EAAgB;wBAAd,YAAY,kBAAA;;;;;;oCACpC,KAAyB,IAAA,8BAAW,EAAC,YAAY,CAAC,EAAhD,GAAG,SAAA,EAAE,aAAa,mBAAA,CAA+B;oCACvB,qBAAM,IAAA,mCAAgB,GAAE,EAAA;;oCAApD,KAA4B,SAAwB,EAAlD,YAAY,kBAAA,EAAE,OAAO,aAAA;oCAEF,qBAAM,IAAI,CAAC,MAAM,CAAC;4CAC3C,IAAI,EAAE,SAAS;4CACf,IAAI,EAAE,gBAAgB;4CACtB,OAAO,EACL,sFAAsF;yCACzF,CAAC,EAAA;;oCALM,cAAc,GAAK,CAAA,SAKzB,CAAA,eALoB;oCAOtB,IAAI,CAAC,cAAc,EAAE;wCACnB,sBAAO;qCACR;oCAED,mCAAmC;oCACnC,MAAM,IAAI,KAAK,CAAC,wCAAwC,CAAC,CAAC;;oCAElD,mBAAmB,GAAK,CAAA,SAI/B,CAAA,oBAJ0B;oCAMrB,UAAU,GAAG,KAAK,CAAC;oCAEnB,YAAY,GAAG,UAAG,0CAA0C,cAAI,uBAAuB,cAAI,YAAY,cAAI,OAAO,cAAI,GAAG,kBAAQ,UAAU,CAAE,CAAC;oCACxH,qBAAM,IAAA,wBAAQ,EAAC,sCAA0B,CAAC,EAAA;;oCAAhE,mBAAmB,GAAG,SAA0C;oCAE9D,cAAc,GAAK,OAAO,CAAC,GAAG,eAAhB,CAAiB;oCACjC,OAAO,GAAG,IAAI,MAAM,CAAC,yBAAyB,CAAC,CAAC,IAAI,CACxD,cAAc,CACf,CAAC;oCACF,IAAI,CAAC,OAAO,EAAE;wCACZ,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;qCACjD;oCACK,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;oCAEzB,YAAY,GAAG,gFAGb,mBAAmB,kGAEE,YAAY,yJAIP,UAAU,mOASL,mBAAmB,wBAAc,UAAU,cAAI,aAAa,sFACvE,WAAW,iEACT,WAAW,8EAE/B,WAAW,0NASpB,CAAC;oCAEF,qBAAM,IAAA,6BAAK,EAAC,YAAY,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,EAAA;;oCAAlE,SAAkE,CAAC;;;;;iBACpE,CAAC,EAAA;;;KAAA,EAAC"}
@@ -1,3 +0,0 @@
1
- import { DeployConfigKubernetesCluster } from "@catladder/pipeline";
2
- export declare const openGoogleCloudLogs: (cluster?: DeployConfigKubernetesCluster, namespace?: string, googleAuthUserNumber?: number) => Promise<void>;
3
- export declare const openGoogleCloudKubernetesDashboard: (cluster: DeployConfigKubernetesCluster, namespace: string, googleAuthUserNumber?: number) => Promise<void>;
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/apps/cli/commands/shared/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AACA,8CAAwB;AAEjB,IAAM,mBAAmB,GAAG,UACjC,OAAuC,EACvC,SAAkB,EAClB,oBAAwB;IAAxB,qCAAA,EAAA,wBAAwB;;;;YAElB,QAAQ,GAAG,qCAA8B,OAAO,CAAC,IAAI,SACzD,SAAS,CAAC,CAAC,CAAC,0BAAmB,SAAS,CAAE,CAAC,CAAC,CAAC,EAAE,CAC/C,CAAC;YAEG,GAAG,GAAG,+DACV,OAAO,CAAC,SAAS,SAEjB,QAAQ,CAAC,CAAC,CAAC,oBAAa,kBAAkB,CAAC,QAAQ,CAAC,CAAE,CAAC,CAAC,CAAC,EAAE,uBAChD,oBAAoB,CAAE,CAAC;YACpC,IAAA,iBAAI,EAAC,GAAG,CAAC,CAAC;;;;CACX,CAAC;AAfW,QAAA,mBAAmB,uBAe9B;AAEK,IAAM,kCAAkC,GAAG,UAChD,OAAsC,EACtC,SAAiB,EACjB,oBAAwB;IAAxB,qCAAA,EAAA,wBAAwB;;;;YAMlB,SAAS,GAAG,wCAA4B,OAAO,CAAC,MAAM,cAAI,OAAO,CAAC,IAAI,0BAAY,SAAS,qDAA6C,CAAC;YACzI,GAAG,GAAG,wEAAiE,oBAAoB,sBAC/F,OAAO,CAAC,SAAS,wBACL,kBAAkB,CAAC,SAAS,CAAC,CAAE,CAAC;YAE9C,IAAA,iBAAI,EAAC,GAAG,CAAC,CAAC;;;;CACX,CAAC;AAfW,QAAA,kCAAkC,sCAe7C"}
@@ -1,4 +0,0 @@
1
- export declare const stopPortForward: (name: string) => Promise<void>;
2
- export declare const getAllRunningPortForwards: () => any[];
3
- export declare const startPortForward: (podname: string, localPort: number, remotePort: number, namespace: string) => Promise<void>;
4
- export declare const stopAllPortForwards: () => Promise<void>;
@@ -1 +0,0 @@
1
- {"version":3,"file":"portForward.js","sourceRoot":"","sources":["../../src/utils/portForward.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,+DAA8C;AAE9C,IAAM,YAAY,GAAG,IAAI,GAAG,EAAE,CAAC;AAExB,IAAM,eAAe,GAAG,UAAO,IAAY;;;;;gBAC1C,GAAG,GAAG,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;qBAE/B,GAAG,EAAH,wBAAG;;;;gBAEH,GAAG,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;gBACxB,qBAAM,GAAG,EAAA;;gBAAT,SAAS,CAAC;;;;;;gBAIZ,YAAY,CAAC,QAAM,CAAA,CAAC,IAAI,CAAC,CAAC;;;;;KAE7B,CAAC;AAZW,QAAA,eAAe,mBAY1B;AAEK,IAAM,yBAAyB,GAAG;IACvC,OAAO,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC,CAAC;AACzC,CAAC,CAAC;AAFW,QAAA,yBAAyB,6BAEpC;AACK,IAAM,gBAAgB,GAAG,UAC9B,OAAe,EACf,SAAiB,EACjB,UAAkB,EAClB,SAAiB;;;;;gBAEX,IAAI,GAAG,UAAG,SAAS,cAAI,OAAO,cAAI,SAAS,cAAI,UAAU,CAAE,CAAC;gBAClE,wBAAwB;gBACxB,IAAI,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;oBAC1B,IAAA,uBAAe,EAAC,IAAI,CAAC,CAAC;iBACvB;gBACK,OAAO,GAAG,IAAA,6BAAK,EACnB,SAAS,EACT,CAAC,cAAc,EAAE,OAAO,EAAE,UAAG,SAAS,cAAI,UAAU,CAAE,EAAE,IAAI,EAAE,SAAS,CAAC,EACxE;oBACE,GAAG,wBACE,OAAO,CAAC,GAAG,KACd,KAAK,EAAE,EAAE,GACV;iBACF,CACF,CAAC;gBACF,YAAY,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;gBAChC,2EAA2E;gBAC3E,qBAAM,IAAI,OAAO,CAAC,UAAC,CAAC,IAAK,OAAA,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,EAAnB,CAAmB,CAAC,EAAA;;gBAD7C,2EAA2E;gBAC3E,SAA6C,CAAC;;;;KAC/C,CAAC;AAxBW,QAAA,gBAAgB,oBAwB3B;AAEK,IAAM,mBAAmB,GAAG;;QACjC,IAAA,iCAAyB,GAAE,CAAC,OAAO,CAAC,UAAC,IAAI;YACvC,IAAA,uBAAe,EAAC,IAAI,CAAC,CAAC;QACxB,CAAC,CAAC,CAAC;;;KACJ,CAAC;AAJW,QAAA,mBAAmB,uBAI9B"}
@@ -1,91 +0,0 @@
1
- import { spawn } from "child-process-promise";
2
- import Vorpal from "vorpal";
3
- import { GOOGLE_CLOUD_SQL_PASS_PATH } from "../../../../config/constants";
4
- import {
5
- getEnvVars,
6
- getProjectConfig,
7
- parseChoice,
8
- } from "../../../../config/getProjectConfig";
9
- import { readPass } from "../../../../utils/passwordstore";
10
- import { envAndComponents } from "./utils/autocompletions";
11
-
12
- export default async (vorpal: Vorpal) =>
13
- vorpal
14
- .command(
15
- "copy-db <envComponent>",
16
- "replace local db with the one from an env"
17
- )
18
- .autocomplete(await envAndComponents())
19
- .action(async function copyDB({ envComponent }) {
20
- const { env, componentName } = parseChoice(envComponent);
21
- const { customerName, appName } = await getProjectConfig();
22
-
23
- const { shouldContinue } = await this.prompt({
24
- type: "confirm",
25
- name: "shouldContinue",
26
- message:
27
- "This will drop your local database and replace it with the remote one. Continue? šŸ¤” ",
28
- });
29
-
30
- if (!shouldContinue) {
31
- return;
32
- }
33
-
34
- // TODO: reimpleent with new config
35
- throw new Error("needs reimplementation with new config");
36
- const GOOGLE_CLOUD_SQL_REGION = "europe-west6"; // currently hardcoded
37
- const { POSTGRESQL_PASSWORD } = await getEnvVars(
38
- this,
39
- env,
40
- componentName
41
- );
42
-
43
- const LOCAL_PORT = 54321;
44
-
45
- const instanceName = `${"xxxxxx reimplement shoulld be project id"}:${GOOGLE_CLOUD_SQL_REGION}:${customerName}-${appName}-${env}=tcp:${LOCAL_PORT}`;
46
- const cloudsqlCredentials = await readPass(GOOGLE_CLOUD_SQL_PASS_PATH);
47
-
48
- const { POSTGRESQL_URL } = process.env;
49
- const matches = new RegExp(/\w+:\/\/.*@.*\/(\w*)()/g).exec(
50
- POSTGRESQL_URL
51
- );
52
- if (!matches) {
53
- throw new Error("Could not determine db name.");
54
- }
55
- const localDBName = matches[1];
56
-
57
- const copyDBScript = `
58
- set -e
59
- credtmp=$(mktemp /tmp/cred.XXXXXX)
60
- echo '${cloudsqlCredentials}' > $credtmp
61
- echo "Opening connection..."
62
- cloud_sql_proxy -instances ${instanceName} -credential_file $credtmp &> /dev/null &
63
- PROXY_PID=$!
64
-
65
- echo -n "Waiting for proxy"
66
- until echo > /dev/tcp/localhost/${LOCAL_PORT}; do
67
- sleep 0.2
68
- echo -n "."
69
- done 2>/dev/null
70
- echo
71
-
72
- dumptmp=$(mktemp /tmp/dump.XXXXXX)
73
-
74
- echo "Dumping file to $dumptmp"
75
- pg_dump --dbname=postgres://postgres:${POSTGRESQL_PASSWORD}@localhost:${LOCAL_PORT}/${componentName} --no-owner --no-privileges > $dumptmp
76
- psql -q -c "drop database ${localDBName}" 1> /dev/null
77
- psql -q -c "create database ${localDBName}" 1> /dev/null
78
- echo "Restoring dump..."
79
- psql -q ${localDBName} < $dumptmp 1> /dev/null
80
-
81
- echo "Clean up..."
82
- set +e
83
- kill -9 $PROXY_PID
84
- wait $PROXY_PID 2> /dev/null
85
- rm $credtmp
86
- rm $dumptmp
87
- echo "\n🐱 Done!"
88
- `;
89
-
90
- await spawn(copyDBScript, [], { shell: "bash", stdio: "inherit" });
91
- });
@@ -1,36 +0,0 @@
1
- import { DeployConfigKubernetesCluster } from "@catladder/pipeline";
2
- import open from "open";
3
-
4
- export const openGoogleCloudLogs = async (
5
- cluster?: DeployConfigKubernetesCluster,
6
- namespace?: string,
7
- googleAuthUserNumber = 0
8
- ) => {
9
- const resource = `k8s_container/cluster_name/${cluster.name}${
10
- namespace ? `/namespace_name/${namespace}` : ""
11
- }`;
12
-
13
- const url = `https://console.cloud.google.com/logs/viewer?project=${
14
- cluster.projectId
15
- }${
16
- resource ? `&resource=${encodeURIComponent(resource)}` : ""
17
- }&authuser=${googleAuthUserNumber}`;
18
- open(url);
19
- };
20
-
21
- export const openGoogleCloudKubernetesDashboard = async (
22
- cluster: DeployConfigKubernetesCluster,
23
- namespace: string,
24
- googleAuthUserNumber = 0
25
- ) => {
26
- //gke_skynet-164509_europe-west1-d_production
27
- // ?authuser=1&project=skynet-swiss&pageState=pageState%3D(%22savedViews%22:(%22c%22:%5B%22gke%2Feurope-west6-a%2Fch-production%22%5D,%22n%22:%5B%22pvl-bike2school-review%22%5D,%22i%22:%224e42e0b9cd6147f8a4fba7516752ec48%22))
28
- // ?authuser=1&project=skynet-swiss&pageState=(%22savedViews%22:(%22i%22:%2279802e2b154d46d480dff4e086e87875%22,%22c%22:%5B%22gke%2Feurope-west6-a%2Fch-production%22%5D,%22n%22:%5B%22pvl-bike2school-review%22%5D))
29
-
30
- const pageState = `("savedViews":("c":["gke/${cluster.region}/${cluster.name}"],"n":["${namespace}"],"i":"4e42e0b9cd6147f8a4fba7516752ec48"))`;
31
- const url = `https://console.cloud.google.com/kubernetes/workload?authuser=${googleAuthUserNumber}&project=${
32
- cluster.projectId
33
- }&pageState=${encodeURIComponent(pageState)}`;
34
-
35
- open(url);
36
- };