@catladder/cli 0.0.0-next-95928577 → 0.0.0-next-e7541a00

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 (1033) hide show
  1. package/README.md +23 -5
  2. package/babel-inline.json +11 -0
  3. package/bin/catenv +0 -1
  4. package/bin/catladder +0 -1
  5. package/dist/bundles/catenv/index.js +46486 -34668
  6. package/dist/bundles/cli/index.js +215193 -196746
  7. package/dist/cli/src/adapters/baseContext.d.ts +22 -0
  8. package/dist/cli/src/adapters/baseContext.js +40 -0
  9. package/dist/cli/src/adapters/baseContext.js.map +1 -0
  10. package/dist/cli/src/adapters/programmatic.d.ts +26 -0
  11. package/dist/cli/src/adapters/programmatic.js +67 -0
  12. package/dist/cli/src/adapters/programmatic.js.map +1 -0
  13. package/dist/cli/src/adapters/terminal.d.ts +28 -0
  14. package/dist/cli/src/adapters/terminal.js +205 -0
  15. package/dist/cli/src/adapters/terminal.js.map +1 -0
  16. package/dist/cli/src/apps/catenv/catenv.d.ts +6 -2
  17. package/dist/cli/src/apps/catenv/catenv.js +17 -15
  18. package/dist/cli/src/apps/catenv/catenv.js.map +1 -1
  19. package/dist/cli/src/apps/catenv/printVariables.d.ts +2 -2
  20. package/dist/cli/src/apps/catenv/printVariables.js +34 -38
  21. package/dist/cli/src/apps/catenv/printVariables.js.map +1 -1
  22. package/dist/cli/src/apps/catenv/types.d.ts +3 -3
  23. package/dist/cli/src/apps/catenv/types.js +4 -2
  24. package/dist/cli/src/apps/catenv/utils.d.ts +12 -5
  25. package/dist/cli/src/apps/catenv/utils.js +26 -20
  26. package/dist/cli/src/apps/catenv/utils.js.map +1 -1
  27. package/dist/cli/src/apps/catenv/verboseBanner.d.ts +1 -0
  28. package/dist/cli/src/apps/catenv/verboseBanner.js +26 -0
  29. package/dist/cli/src/apps/catenv/verboseBanner.js.map +1 -0
  30. package/dist/cli/src/apps/catenv/writeDotEnvFiles.d.ts +2 -2
  31. package/dist/cli/src/apps/catenv/writeDotEnvFiles.js +26 -24
  32. package/dist/cli/src/apps/catenv/writeDotEnvFiles.js.map +1 -1
  33. package/dist/cli/src/apps/catenv/writeEnvDTs.d.ts +2 -2
  34. package/dist/cli/src/apps/catenv/writeEnvDTs.js +32 -34
  35. package/dist/cli/src/apps/catenv/writeEnvDTs.js.map +1 -1
  36. package/dist/cli/src/apps/cli/commands/mongodb/utils/index.d.ts +6 -6
  37. package/dist/cli/src/apps/cli/commands/mongodb/utils/index.js +56 -52
  38. package/dist/cli/src/apps/cli/commands/project/commandConfigSecrets.d.ts +2 -5
  39. package/dist/cli/src/apps/cli/commands/project/commandConfigSecrets.js +98 -128
  40. package/dist/cli/src/apps/cli/commands/project/commandConfigSecrets.js.map +1 -1
  41. package/dist/cli/src/apps/cli/commands/project/setup/index.d.ts +2 -2
  42. package/dist/cli/src/apps/cli/commands/project/setup/index.js +26 -36
  43. package/dist/cli/src/apps/cli/commands/project/setup/index.js.map +1 -1
  44. package/dist/cli/src/apps/cli/commands/project/setup/logSection.d.ts +2 -0
  45. package/dist/cli/src/apps/cli/commands/project/setup/logSection.js +19 -0
  46. package/dist/cli/src/apps/cli/commands/project/setup/logSection.js.map +1 -0
  47. package/dist/cli/src/apps/cli/commands/project/setup/setupAccessTokens.d.ts +2 -2
  48. package/dist/cli/src/apps/cli/commands/project/setup/setupAccessTokens.js +41 -38
  49. package/dist/cli/src/apps/cli/commands/project/setup/setupAccessTokens.js.map +1 -1
  50. package/dist/cli/src/apps/cli/commands/project/setup/setupAgents.d.ts +2 -0
  51. package/dist/cli/src/apps/cli/commands/project/setup/setupAgents.js +164 -0
  52. package/dist/cli/src/apps/cli/commands/project/setup/setupAgents.js.map +1 -0
  53. package/dist/cli/src/apps/cli/commands/project/setup/setupCloudRun.d.ts +2 -2
  54. package/dist/cli/src/apps/cli/commands/project/setup/setupCloudRun.js +42 -47
  55. package/dist/cli/src/apps/cli/commands/project/setup/setupCloudRun.js.map +1 -1
  56. package/dist/cli/src/apps/cli/commands/project/setup/setupContext.d.ts +2 -2
  57. package/dist/cli/src/apps/cli/commands/project/setup/setupContext.js +10 -12
  58. package/dist/cli/src/apps/cli/commands/project/setup/setupContext.js.map +1 -1
  59. package/dist/cli/src/apps/cli/commands/project/setup/setupKubernetes.d.ts +2 -2
  60. package/dist/cli/src/apps/cli/commands/project/setup/setupKubernetes.js +70 -69
  61. package/dist/cli/src/apps/cli/commands/project/setup/setupKubernetes.js.map +1 -1
  62. package/dist/cli/src/apps/cli/commands/project/setup/setupTopic.d.ts +2 -2
  63. package/dist/cli/src/apps/cli/commands/project/setup/setupTopic.js +15 -7
  64. package/dist/cli/src/apps/cli/commands/project/setup/setupTopic.js.map +1 -1
  65. package/dist/cli/src/apps/cli/commands/project/utils/autocompletions.d.ts +2 -1
  66. package/dist/cli/src/apps/cli/commands/project/utils/autocompletions.js +25 -12
  67. package/dist/cli/src/apps/cli/commands/project/utils/autocompletions.js.map +1 -1
  68. package/dist/cli/src/apps/cli/commands/project/utils/ensureCluster.d.ts +9 -1
  69. package/dist/cli/src/apps/cli/commands/project/utils/ensureCluster.js +35 -28
  70. package/dist/cli/src/apps/cli/commands/project/utils/ensureCluster.js.map +1 -1
  71. package/dist/cli/src/apps/cli/commands/project/utils/ensureNamespace.d.ts +1 -1
  72. package/dist/cli/src/apps/cli/commands/project/utils/ensureNamespace.js +35 -30
  73. package/dist/cli/src/apps/cli/utils/getGoogleAuthUserNumber.d.ts +2 -1
  74. package/dist/cli/src/apps/cli/utils/getGoogleAuthUserNumber.js +17 -15
  75. package/dist/cli/src/apps/cli/utils/getGoogleAuthUserNumber.js.map +1 -1
  76. package/dist/cli/src/catenv.d.ts +1 -1
  77. package/dist/cli/src/catenv.js +34 -12
  78. package/dist/cli/src/catenv.js.map +1 -1
  79. package/dist/cli/src/cli.d.ts +1 -1
  80. package/dist/cli/src/cli.js +223 -6
  81. package/dist/cli/src/cli.js.map +1 -1
  82. package/dist/cli/src/commands/availability.d.ts +5 -0
  83. package/dist/cli/src/commands/availability.js +26 -0
  84. package/dist/cli/src/commands/availability.js.map +1 -0
  85. package/dist/cli/src/commands/cloudSQL/commandRestoreDb.d.ts +46 -0
  86. package/dist/cli/src/commands/cloudSQL/commandRestoreDb.js +111 -0
  87. package/dist/cli/src/commands/cloudSQL/commandRestoreDb.js.map +1 -0
  88. package/dist/cli/src/commands/fun/commandDadjoke.d.ts +1 -0
  89. package/dist/cli/src/commands/fun/commandDadjoke.js +30 -0
  90. package/dist/cli/src/commands/fun/commandDadjoke.js.map +1 -0
  91. package/dist/cli/src/commands/fun/commandStarwars.d.ts +1 -0
  92. package/dist/cli/src/commands/fun/commandStarwars.js +19 -0
  93. package/dist/cli/src/commands/fun/commandStarwars.js.map +1 -0
  94. package/dist/cli/src/commands/general/commandKubeCurrentContext.d.ts +1 -0
  95. package/dist/cli/src/commands/general/commandKubeCurrentContext.js +17 -0
  96. package/dist/cli/src/commands/general/commandKubeCurrentContext.js.map +1 -0
  97. package/dist/cli/src/commands/general/commandKubeGetShell.d.ts +12 -0
  98. package/dist/cli/src/commands/general/commandKubeGetShell.js +36 -0
  99. package/dist/cli/src/commands/general/commandKubeGetShell.js.map +1 -0
  100. package/dist/cli/src/commands/general/commandKubeListNamespaces.d.ts +1 -0
  101. package/dist/cli/src/commands/general/commandKubeListNamespaces.js +20 -0
  102. package/dist/cli/src/commands/general/commandKubeListNamespaces.js.map +1 -0
  103. package/dist/cli/src/commands/general/commandKubeListPods.d.ts +7 -0
  104. package/dist/cli/src/commands/general/commandKubeListPods.js +26 -0
  105. package/dist/cli/src/commands/general/commandKubeListPods.js.map +1 -0
  106. package/dist/cli/src/commands/general/commandKubeListSecrets.d.ts +7 -0
  107. package/dist/cli/src/commands/general/commandKubeListSecrets.js +26 -0
  108. package/dist/cli/src/commands/general/commandKubeListSecrets.js.map +1 -0
  109. package/dist/cli/src/commands/general/commandKubePortForward.d.ts +20 -0
  110. package/dist/cli/src/commands/general/commandKubePortForward.js +46 -0
  111. package/dist/cli/src/commands/general/commandKubePortForward.js.map +1 -0
  112. package/dist/cli/src/commands/general/commandKubeStopPortforward.d.ts +7 -0
  113. package/dist/cli/src/commands/general/commandKubeStopPortforward.js +24 -0
  114. package/dist/cli/src/commands/general/commandKubeStopPortforward.js.map +1 -0
  115. package/dist/cli/src/commands/index.d.ts +38 -0
  116. package/dist/cli/src/commands/index.js +285 -0
  117. package/dist/cli/src/commands/index.js.map +1 -0
  118. package/dist/cli/src/commands/mongodb/commandMongoDestroyMember.d.ts +16 -0
  119. package/dist/cli/src/commands/mongodb/commandMongoDestroyMember.js +91 -0
  120. package/dist/cli/src/commands/mongodb/commandMongoDestroyMember.js.map +1 -0
  121. package/dist/cli/src/commands/mongodb/commandMongoGetShell.d.ts +16 -0
  122. package/dist/cli/src/commands/mongodb/commandMongoGetShell.js +38 -0
  123. package/dist/cli/src/commands/mongodb/commandMongoGetShell.js.map +1 -0
  124. package/dist/cli/src/commands/mongodb/commandMongoPortForward.d.ts +21 -0
  125. package/dist/cli/src/commands/mongodb/commandMongoPortForward.js +67 -0
  126. package/dist/cli/src/commands/mongodb/commandMongoPortForward.js.map +1 -0
  127. package/dist/cli/src/commands/project/commandCloudSqlProxy.d.ts +13 -0
  128. package/dist/cli/src/commands/project/commandCloudSqlProxy.js +129 -0
  129. package/dist/cli/src/commands/project/commandCloudSqlProxy.js.map +1 -0
  130. package/dist/cli/src/commands/project/commandConfigSecrets.d.ts +9 -0
  131. package/dist/cli/src/commands/project/commandConfigSecrets.js +36 -0
  132. package/dist/cli/src/commands/project/commandConfigSecrets.js.map +1 -0
  133. package/dist/cli/src/commands/project/commandEnvVars.d.ts +8 -0
  134. package/dist/cli/src/commands/project/commandEnvVars.js +32 -0
  135. package/dist/cli/src/commands/project/commandEnvVars.js.map +1 -0
  136. package/dist/cli/src/commands/project/commandGetMyTotalWorktime.d.ts +1 -0
  137. package/dist/cli/src/commands/project/commandGetMyTotalWorktime.js +19 -0
  138. package/dist/cli/src/commands/project/commandGetMyTotalWorktime.js.map +1 -0
  139. package/dist/cli/src/commands/project/commandGitlabCi.d.ts +14 -0
  140. package/dist/cli/src/commands/project/commandGitlabCi.js +109 -0
  141. package/dist/cli/src/commands/project/commandGitlabCi.js.map +1 -0
  142. package/dist/cli/src/commands/project/commandOpenEnv.d.ts +8 -0
  143. package/dist/cli/src/commands/project/commandOpenEnv.js +40 -0
  144. package/dist/cli/src/commands/project/commandOpenEnv.js.map +1 -0
  145. package/dist/cli/src/commands/project/commandOpenGit.d.ts +1 -0
  146. package/dist/cli/src/commands/project/commandOpenGit.js +17 -0
  147. package/dist/cli/src/commands/project/commandOpenGit.js.map +1 -0
  148. package/dist/cli/src/commands/project/commandOpenLogs.d.ts +8 -0
  149. package/dist/cli/src/commands/project/commandOpenLogs.js +47 -0
  150. package/dist/cli/src/commands/project/commandOpenLogs.js.map +1 -0
  151. package/dist/cli/src/commands/project/commandPortForward.d.ts +25 -0
  152. package/dist/cli/src/commands/project/commandPortForward.js +97 -0
  153. package/dist/cli/src/commands/project/commandPortForward.js.map +1 -0
  154. package/dist/cli/src/commands/project/commandProjectRestoreDb.d.ts +19 -0
  155. package/dist/cli/src/commands/project/commandProjectRestoreDb.js +161 -0
  156. package/dist/cli/src/commands/project/commandProjectRestoreDb.js.map +1 -0
  157. package/dist/cli/src/commands/project/commandRenewToken.d.ts +1 -0
  158. package/dist/cli/src/commands/project/commandRenewToken.js +17 -0
  159. package/dist/cli/src/commands/project/commandRenewToken.js.map +1 -0
  160. package/dist/cli/src/commands/project/commandSecretsClearBackups.d.ts +7 -0
  161. package/dist/cli/src/commands/project/commandSecretsClearBackups.js +24 -0
  162. package/dist/cli/src/commands/project/commandSecretsClearBackups.js.map +1 -0
  163. package/dist/cli/src/commands/project/commandSecurityEvaluate.d.ts +1 -0
  164. package/dist/cli/src/commands/project/commandSecurityEvaluate.js +26 -0
  165. package/dist/cli/src/commands/project/commandSecurityEvaluate.js.map +1 -0
  166. package/dist/cli/src/commands/project/commandSetup.d.ts +8 -0
  167. package/dist/cli/src/commands/project/commandSetup.js +25 -0
  168. package/dist/cli/src/commands/project/commandSetup.js.map +1 -0
  169. package/dist/cli/src/commands/project/k8s/commandDeletePods.d.ts +13 -0
  170. package/dist/cli/src/commands/project/k8s/commandDeletePods.js +51 -0
  171. package/dist/cli/src/commands/project/k8s/commandDeletePods.js.map +1 -0
  172. package/dist/cli/src/commands/project/k8s/commandDeleteProject.d.ts +8 -0
  173. package/dist/cli/src/commands/project/k8s/commandDeleteProject.js +43 -0
  174. package/dist/cli/src/commands/project/k8s/commandDeleteProject.js.map +1 -0
  175. package/dist/cli/src/commands/project/k8s/commandGetShell.d.ts +13 -0
  176. package/dist/cli/src/commands/project/k8s/commandGetShell.js +43 -0
  177. package/dist/cli/src/commands/project/k8s/commandGetShell.js.map +1 -0
  178. package/dist/cli/src/commands/project/k8s/commandListPods.d.ts +8 -0
  179. package/dist/cli/src/commands/project/k8s/commandListPods.js +33 -0
  180. package/dist/cli/src/commands/project/k8s/commandListPods.js.map +1 -0
  181. package/dist/cli/src/commands/project/k8s/commandNamespace.d.ts +8 -0
  182. package/dist/cli/src/commands/project/k8s/commandNamespace.js +28 -0
  183. package/dist/cli/src/commands/project/k8s/commandNamespace.js.map +1 -0
  184. package/dist/cli/src/commands/project/k8s/commandPauseProject.d.ts +8 -0
  185. package/dist/cli/src/commands/project/k8s/commandPauseProject.js +43 -0
  186. package/dist/cli/src/commands/project/k8s/commandPauseProject.js.map +1 -0
  187. package/dist/cli/src/commands/project/k8s/commandTriggerCronjob.d.ts +25 -0
  188. package/dist/cli/src/commands/project/k8s/commandTriggerCronjob.js +97 -0
  189. package/dist/cli/src/commands/project/k8s/commandTriggerCronjob.js.map +1 -0
  190. package/dist/cli/src/commands/security/commandSecurityAuditCiJob.d.ts +27 -0
  191. package/dist/cli/src/commands/security/commandSecurityAuditCiJob.js +83 -0
  192. package/dist/cli/src/commands/security/commandSecurityAuditCiJob.js.map +1 -0
  193. package/dist/cli/src/commands/security/commandSecurityAuditCreate.d.ts +22 -0
  194. package/dist/cli/src/commands/security/commandSecurityAuditCreate.js +60 -0
  195. package/dist/cli/src/commands/security/commandSecurityAuditCreate.js.map +1 -0
  196. package/dist/cli/src/commands/security/commandSecurityAuditEvaluate.d.ts +7 -0
  197. package/dist/cli/src/commands/security/commandSecurityAuditEvaluate.js +35 -0
  198. package/dist/cli/src/commands/security/commandSecurityAuditEvaluate.js.map +1 -0
  199. package/dist/cli/src/completion.d.ts +24 -0
  200. package/dist/cli/src/completion.js +240 -0
  201. package/dist/cli/src/completion.js.map +1 -0
  202. package/dist/cli/src/config/getProjectConfig.d.ts +12 -8
  203. package/dist/cli/src/config/getProjectConfig.js +89 -90
  204. package/dist/cli/src/config/getProjectConfig.js.map +1 -1
  205. package/dist/cli/src/config/parseChoice.d.ts +3 -3
  206. package/dist/cli/src/config/parseChoice.js +11 -6
  207. package/dist/cli/src/core/defineCommand.d.ts +27 -0
  208. package/dist/cli/src/core/defineCommand.js +35 -0
  209. package/dist/cli/src/core/defineCommand.js.map +1 -0
  210. package/dist/cli/src/core/index.d.ts +5 -0
  211. package/dist/cli/src/core/index.js +52 -0
  212. package/dist/cli/src/core/index.js.map +1 -0
  213. package/dist/cli/src/core/registry.d.ts +5 -0
  214. package/dist/cli/src/core/registry.js +26 -0
  215. package/dist/cli/src/core/registry.js.map +1 -0
  216. package/dist/cli/src/core/runner.d.ts +19 -0
  217. package/dist/cli/src/core/runner.js +29 -0
  218. package/dist/cli/src/core/runner.js.map +1 -0
  219. package/dist/cli/src/core/types.d.ts +107 -0
  220. package/dist/cli/src/core/types.js +16 -0
  221. package/dist/cli/src/core/types.js.map +1 -0
  222. package/dist/cli/src/gcloud/artifactsRegistry.d.ts +3 -3
  223. package/dist/cli/src/gcloud/artifactsRegistry.js +12 -11
  224. package/dist/cli/src/gcloud/cloudRun/getCloudRunDomainSuffix.d.ts +1 -1
  225. package/dist/cli/src/gcloud/cloudRun/getCloudRunDomainSuffix.js +23 -22
  226. package/dist/cli/src/gcloud/cloudRun/openCloudRunDashboards.d.ts +2 -2
  227. package/dist/cli/src/gcloud/cloudRun/openCloudRunDashboards.js +19 -12
  228. package/dist/cli/src/gcloud/cloudRun/openCloudRunDashboards.js.map +1 -1
  229. package/dist/cli/src/gcloud/cloudSql/copyDb.d.ts +9 -9
  230. package/dist/cli/src/gcloud/cloudSql/copyDb.js +42 -26
  231. package/dist/cli/src/gcloud/cloudSql/copyDb.js.map +1 -1
  232. package/dist/cli/src/gcloud/cloudSql/parseConnectionString.d.ts +9 -0
  233. package/dist/cli/src/gcloud/cloudSql/parseConnectionString.js +24 -0
  234. package/dist/cli/src/gcloud/cloudSql/parseConnectionString.js.map +1 -0
  235. package/dist/cli/src/gcloud/cloudSql/startProxy.d.ts +4 -4
  236. package/dist/cli/src/gcloud/cloudSql/startProxy.js +55 -39
  237. package/dist/cli/src/gcloud/enableServices.d.ts +2 -2
  238. package/dist/cli/src/gcloud/enableServices.js +8 -6
  239. package/dist/cli/src/gcloud/openDashboard.d.ts +2 -2
  240. package/dist/cli/src/gcloud/openDashboard.js +17 -13
  241. package/dist/cli/src/gcloud/openDashboard.js.map +1 -1
  242. package/dist/cli/src/gcloud/serviceAccounts.d.ts +8 -8
  243. package/dist/cli/src/gcloud/serviceAccounts.js +64 -58
  244. package/dist/cli/src/gcloud/serviceAccounts.js.map +1 -1
  245. package/dist/cli/src/git/getGetMainBranch.d.ts +1 -0
  246. package/dist/cli/src/git/getGetMainBranch.js +14 -0
  247. package/dist/cli/src/git/getGetMainBranch.js.map +1 -0
  248. package/dist/cli/src/git/gitConfig.d.ts +14 -0
  249. package/dist/cli/src/git/gitConfig.js +22 -0
  250. package/dist/cli/src/git/gitConfig.js.map +1 -0
  251. package/dist/cli/src/git/gitProjectInformation.d.ts +16 -0
  252. package/dist/cli/src/git/gitProjectInformation.js +48 -0
  253. package/dist/cli/src/git/gitProjectInformation.js.map +1 -0
  254. package/dist/cli/src/git/index.d.ts +3 -0
  255. package/dist/cli/src/git/index.js +27 -0
  256. package/dist/cli/src/git/index.js.map +1 -0
  257. package/dist/cli/src/index.d.ts +1 -1
  258. package/dist/cli/src/index.js +4 -2
  259. package/dist/cli/src/k8sApi/index.d.ts +1 -1
  260. package/dist/cli/src/k8sApi/index.js +14 -12
  261. package/dist/cli/src/kubernetes/index.d.ts +1 -1
  262. package/dist/cli/src/kubernetes/index.js +24 -17
  263. package/dist/cli/src/kubernetes/openKubernetesDashboards.d.ts +3 -3
  264. package/dist/cli/src/kubernetes/openKubernetesDashboards.js +35 -33
  265. package/dist/cli/src/kubernetes/openKubernetesDashboards.js.map +1 -1
  266. package/dist/cli/src/kubernetes/portForward.d.ts +1 -1
  267. package/dist/cli/src/kubernetes/portForward.js +7 -5
  268. package/dist/cli/src/packageInfos.d.ts +1 -1
  269. package/dist/cli/src/packageInfos.js +5 -4
  270. package/dist/cli/src/packageInfos.js.map +1 -1
  271. package/dist/cli/src/security/auditDocument.d.ts +19 -0
  272. package/dist/cli/src/security/auditDocument.js +98 -0
  273. package/dist/cli/src/security/auditDocument.js.map +1 -0
  274. package/dist/cli/src/security/createSecurityAuditMergeRequest.d.ts +14 -0
  275. package/dist/cli/src/security/createSecurityAuditMergeRequest.js +52 -0
  276. package/dist/cli/src/security/createSecurityAuditMergeRequest.js.map +1 -0
  277. package/dist/cli/src/{apps/catci/commands/security → security}/evaluateSecurityAudit.d.ts +5 -3
  278. package/dist/cli/src/security/evaluateSecurityAudit.js +32 -0
  279. package/dist/cli/src/security/evaluateSecurityAudit.js.map +1 -0
  280. package/dist/cli/src/types/types.d.ts +13 -13
  281. package/dist/cli/src/types/types.js +4 -2
  282. package/dist/cli/src/utils/boxWithAscii.d.ts +1 -1
  283. package/dist/cli/src/utils/boxWithAscii.js +12 -10
  284. package/dist/cli/src/utils/cluster.d.ts +1 -1
  285. package/dist/cli/src/utils/cluster.js +8 -6
  286. package/dist/cli/src/utils/editAsFile.d.ts +1 -1
  287. package/dist/cli/src/utils/editAsFile.js +25 -17
  288. package/dist/cli/src/utils/files.d.ts +1 -1
  289. package/dist/cli/src/utils/files.js +16 -16
  290. package/dist/cli/src/utils/files.js.map +1 -1
  291. package/dist/cli/src/utils/getEditor.d.ts +2 -2
  292. package/dist/cli/src/utils/getEditor.js +20 -14
  293. package/dist/cli/src/utils/gitlab.d.ts +18 -18
  294. package/dist/cli/src/utils/gitlab.js +189 -170
  295. package/dist/cli/src/utils/gitlab.js.map +1 -1
  296. package/dist/cli/src/utils/log.d.ts +65 -1
  297. package/dist/cli/src/utils/log.js +67 -11
  298. package/dist/cli/src/utils/log.js.map +1 -1
  299. package/dist/cli/src/utils/portForwards.d.ts +5 -5
  300. package/dist/cli/src/utils/portForwards.js +32 -31
  301. package/dist/cli/src/utils/{preferences/index.d.ts → preferences.d.ts} +2 -1
  302. package/dist/cli/src/utils/preferences.js +65 -0
  303. package/dist/cli/src/utils/preferences.js.map +1 -0
  304. package/dist/cli/src/utils/projects/index.d.ts +1 -1
  305. package/dist/cli/src/utils/projects/index.js +24 -21
  306. package/dist/cli/src/utils/promise.d.ts +1 -1
  307. package/dist/cli/src/utils/promise.js +8 -6
  308. package/dist/cli/src/utils/shell.d.ts +1 -1
  309. package/dist/cli/src/utils/shell.js +20 -19
  310. package/dist/pipeline/src/backends/gitlab/GitlabBackend.d.ts +14 -0
  311. package/dist/pipeline/src/backends/gitlab/GitlabBackend.js +170 -0
  312. package/dist/pipeline/src/backends/gitlab/GitlabBackend.js.map +1 -0
  313. package/dist/pipeline/src/backends/gitlab/cache.d.ts +9 -0
  314. package/dist/pipeline/src/backends/gitlab/cache.js +38 -0
  315. package/dist/pipeline/src/backends/gitlab/cache.js.map +1 -0
  316. package/dist/pipeline/src/backends/gitlab/ciVariables.d.ts +6 -0
  317. package/dist/pipeline/src/backends/gitlab/ciVariables.js +17 -0
  318. package/dist/pipeline/src/backends/gitlab/ciVariables.js.map +1 -0
  319. package/dist/pipeline/src/backends/gitlab/createGitlabJobs.d.ts +13 -0
  320. package/dist/pipeline/src/backends/gitlab/createGitlabJobs.js +244 -0
  321. package/dist/pipeline/src/backends/gitlab/createGitlabJobs.js.map +1 -0
  322. package/dist/pipeline/src/backends/gitlab/createGitlabPipeline.d.ts +9 -0
  323. package/dist/pipeline/src/backends/gitlab/createGitlabPipeline.js +71 -0
  324. package/dist/pipeline/src/backends/gitlab/createGitlabPipeline.js.map +1 -0
  325. package/dist/pipeline/src/{pipeline → backends/gitlab}/getPipelineStages.d.ts +2 -2
  326. package/dist/pipeline/src/backends/gitlab/getPipelineStages.js +19 -0
  327. package/dist/pipeline/src/backends/gitlab/getPipelineStages.js.map +1 -0
  328. package/dist/pipeline/src/backends/gitlab/gitlabReleaseJobs.d.ts +36 -0
  329. package/dist/pipeline/src/backends/gitlab/gitlabReleaseJobs.js +43 -0
  330. package/dist/pipeline/src/backends/gitlab/gitlabReleaseJobs.js.map +1 -0
  331. package/dist/pipeline/src/backends/gitlab/index.d.ts +2 -0
  332. package/dist/pipeline/src/backends/gitlab/index.js +26 -0
  333. package/dist/pipeline/src/backends/gitlab/index.js.map +1 -0
  334. package/dist/pipeline/src/{pipeline → backends}/gitlab/sortGitLabJobDefProps.d.ts +1 -1
  335. package/dist/pipeline/src/backends/gitlab/sortGitLabJobDefProps.js +20 -0
  336. package/dist/pipeline/src/{pipeline → backends}/gitlab/sortGitLabJobDefProps.js.map +1 -1
  337. package/dist/pipeline/src/backends/index.d.ts +5 -0
  338. package/dist/pipeline/src/backends/index.js +39 -0
  339. package/dist/pipeline/src/backends/index.js.map +1 -0
  340. package/dist/pipeline/src/backends/types.d.ts +30 -0
  341. package/dist/pipeline/src/backends/types.js +5 -0
  342. package/dist/pipeline/src/backends/types.js.map +1 -0
  343. package/dist/pipeline/src/bash/BashExpression.d.ts +18 -18
  344. package/dist/pipeline/src/bash/BashExpression.js +44 -45
  345. package/dist/pipeline/src/bash/bashEscape.d.ts +10 -3
  346. package/dist/pipeline/src/bash/bashEscape.js +68 -72
  347. package/dist/pipeline/src/bash/bashEscape.js.map +1 -1
  348. package/dist/pipeline/src/bash/bashExpressionPerPipelineType.d.ts +3 -5
  349. package/dist/pipeline/src/bash/bashExpressionPerPipelineType.js +7 -6
  350. package/dist/pipeline/src/bash/bashYaml.d.ts +1 -1
  351. package/dist/pipeline/src/bash/bashYaml.js +41 -46
  352. package/dist/pipeline/src/bash/ciVariables.d.ts +16 -0
  353. package/dist/pipeline/src/bash/ciVariables.js +23 -0
  354. package/dist/pipeline/src/bash/ciVariables.js.map +1 -0
  355. package/dist/pipeline/src/bash/getInjectVarsScript.d.ts +1 -1
  356. package/dist/pipeline/src/bash/getInjectVarsScript.js +12 -15
  357. package/dist/pipeline/src/bash/getInjectVarsScript.js.map +1 -1
  358. package/dist/pipeline/src/bash/index.d.ts +1 -1
  359. package/dist/pipeline/src/bash/index.js +23 -16
  360. package/dist/pipeline/src/build/artifacts/createBuildJobArtifact.d.ts +1 -1
  361. package/dist/pipeline/src/build/artifacts/createBuildJobArtifact.js +47 -40
  362. package/dist/pipeline/src/build/artifacts/createBuildJobArtifact.js.map +1 -1
  363. package/dist/pipeline/src/build/base/constants.d.ts +4 -4
  364. package/dist/pipeline/src/build/base/constants.js +8 -6
  365. package/dist/pipeline/src/build/base/createAppBuildJob.d.ts +5 -2
  366. package/dist/pipeline/src/build/base/createAppBuildJob.js +52 -46
  367. package/dist/pipeline/src/build/base/createAppBuildJob.js.map +1 -1
  368. package/dist/pipeline/src/build/base/createArtifactsConfig.d.ts +1 -1
  369. package/dist/pipeline/src/build/base/createArtifactsConfig.js +16 -25
  370. package/dist/pipeline/src/build/base/createBuildJobDefinition.d.ts +3 -3
  371. package/dist/pipeline/src/build/base/createBuildJobDefinition.js +16 -22
  372. package/dist/pipeline/src/build/base/createBuildJobDefinition.js.map +1 -1
  373. package/dist/pipeline/src/build/base/index.d.ts +7 -8
  374. package/dist/pipeline/src/build/base/index.js +17 -39
  375. package/dist/pipeline/src/build/base/index.js.map +1 -1
  376. package/dist/pipeline/src/build/base/writeBuildInfo.d.ts +1 -1
  377. package/dist/pipeline/src/build/base/writeBuildInfo.js +7 -7
  378. package/dist/pipeline/src/build/base/writeDotEnv.d.ts +1 -1
  379. package/dist/pipeline/src/build/base/writeDotEnv.js +20 -22
  380. package/dist/pipeline/src/build/base/writeDotEnv.js.map +1 -1
  381. package/dist/pipeline/src/build/cache/createJobCache.d.ts +1 -4
  382. package/dist/pipeline/src/build/cache/createJobCache.js +47 -55
  383. package/dist/pipeline/src/build/cache/createJobCache.js.map +1 -1
  384. package/dist/pipeline/src/build/cache/getAllCacheConfigsFromConfig.d.ts +1 -1
  385. package/dist/pipeline/src/build/cache/getAllCacheConfigsFromConfig.js +16 -21
  386. package/dist/pipeline/src/build/cache/getAllCacheConfigsFromConfig.js.map +1 -1
  387. package/dist/pipeline/src/build/cache/transformLegacyJobCache.d.ts +1 -1
  388. package/dist/pipeline/src/build/cache/transformLegacyJobCache.js +14 -12
  389. package/dist/pipeline/src/build/custom/buildJob.d.ts +2 -2
  390. package/dist/pipeline/src/build/custom/buildJob.js +16 -16
  391. package/dist/pipeline/src/build/custom/buildJob.js.map +1 -1
  392. package/dist/pipeline/src/build/custom/index.d.ts +2 -2
  393. package/dist/pipeline/src/build/custom/index.js +7 -5
  394. package/dist/pipeline/src/build/custom/index.js.map +1 -1
  395. package/dist/pipeline/src/build/custom/testJob.d.ts +5 -5
  396. package/dist/pipeline/src/build/custom/testJob.js +69 -60
  397. package/dist/pipeline/src/build/custom/testJob.js.map +1 -1
  398. package/dist/pipeline/src/build/docker.d.ts +57 -49
  399. package/dist/pipeline/src/build/docker.js +132 -128
  400. package/dist/pipeline/src/build/docker.js.map +1 -1
  401. package/dist/pipeline/src/build/index.d.ts +14 -18
  402. package/dist/pipeline/src/build/index.js +80 -73
  403. package/dist/pipeline/src/build/index.js.map +1 -1
  404. package/dist/pipeline/src/build/node/buildJob.d.ts +6 -4
  405. package/dist/pipeline/src/build/node/buildJob.js +35 -37
  406. package/dist/pipeline/src/build/node/buildJob.js.map +1 -1
  407. package/dist/pipeline/src/build/node/cache.d.ts +3 -3
  408. package/dist/pipeline/src/build/node/cache.js +41 -48
  409. package/dist/pipeline/src/build/node/cache.js.map +1 -1
  410. package/dist/pipeline/src/build/node/constants.d.ts +4 -4
  411. package/dist/pipeline/src/build/node/constants.js +8 -6
  412. package/dist/pipeline/src/build/node/index.d.ts +4 -4
  413. package/dist/pipeline/src/build/node/index.js +13 -9
  414. package/dist/pipeline/src/build/node/index.js.map +1 -1
  415. package/dist/pipeline/src/build/node/meteor.d.ts +2 -2
  416. package/dist/pipeline/src/build/node/meteor.js +53 -45
  417. package/dist/pipeline/src/build/node/meteor.js.map +1 -1
  418. package/dist/pipeline/src/build/node/testJob.d.ts +2 -2
  419. package/dist/pipeline/src/build/node/testJob.js +72 -82
  420. package/dist/pipeline/src/build/node/testJob.js.map +1 -1
  421. package/dist/pipeline/src/build/node/yarn.d.ts +5 -4
  422. package/dist/pipeline/src/build/node/yarn.js +37 -39
  423. package/dist/pipeline/src/build/node/yarn.js.map +1 -1
  424. package/dist/pipeline/src/build/rails/build.d.ts +2 -2
  425. package/dist/pipeline/src/build/rails/build.js +37 -44
  426. package/dist/pipeline/src/build/rails/build.js.map +1 -1
  427. package/dist/pipeline/src/build/rails/index.d.ts +2 -2
  428. package/dist/pipeline/src/build/rails/index.js +8 -6
  429. package/dist/pipeline/src/build/rails/index.js.map +1 -1
  430. package/dist/pipeline/src/build/rails/{test.d.ts → testJob.d.ts} +2 -2
  431. package/dist/pipeline/src/build/rails/testJob.js +78 -0
  432. package/dist/pipeline/src/build/rails/testJob.js.map +1 -0
  433. package/dist/pipeline/src/build/types.d.ts +296 -259
  434. package/dist/pipeline/src/build/types.js +10 -10
  435. package/dist/pipeline/src/build/types.js.map +1 -1
  436. package/dist/pipeline/src/catenv/index.d.ts +7 -0
  437. package/dist/pipeline/src/catenv/index.js +14 -0
  438. package/dist/pipeline/src/catenv/index.js.map +1 -0
  439. package/dist/pipeline/src/config/configruedEnvs.d.ts +1 -1
  440. package/dist/pipeline/src/config/configruedEnvs.js +18 -23
  441. package/dist/pipeline/src/config/index.d.ts +1 -1
  442. package/dist/pipeline/src/config/index.js +23 -16
  443. package/dist/pipeline/src/config/readConfig.d.ts +4 -4
  444. package/dist/pipeline/src/config/readConfig.js +44 -27
  445. package/dist/pipeline/src/config/readConfig.js.map +1 -1
  446. package/dist/pipeline/src/constants.d.ts +1 -1
  447. package/dist/pipeline/src/constants.js +6 -5
  448. package/dist/pipeline/src/context/createAllComponentsContext.d.ts +8 -4
  449. package/dist/pipeline/src/context/createAllComponentsContext.js +22 -16
  450. package/dist/pipeline/src/context/createComponentContext.d.ts +6 -6
  451. package/dist/pipeline/src/context/createComponentContext.js +88 -86
  452. package/dist/pipeline/src/context/createComponentContext.js.map +1 -1
  453. package/dist/pipeline/src/context/createWorkspaceContext.d.ts +15 -8
  454. package/dist/pipeline/src/context/createWorkspaceContext.js +38 -29
  455. package/dist/pipeline/src/context/createWorkspaceContext.js.map +1 -1
  456. package/dist/pipeline/src/context/getBuildInfoVariables.d.ts +2 -2
  457. package/dist/pipeline/src/context/getBuildInfoVariables.js +22 -21
  458. package/dist/pipeline/src/context/getEnvConfig.d.ts +1 -1
  459. package/dist/pipeline/src/context/getEnvConfig.js +30 -14
  460. package/dist/pipeline/src/context/getEnvConfig.js.map +1 -1
  461. package/dist/pipeline/src/context/getEnvType.d.ts +2 -2
  462. package/dist/pipeline/src/context/getEnvType.js +10 -9
  463. package/dist/pipeline/src/context/getEnvironment.d.ts +1 -1
  464. package/dist/pipeline/src/context/getEnvironment.js +20 -16
  465. package/dist/pipeline/src/context/getEnvironmentContext.d.ts +6 -1
  466. package/dist/pipeline/src/context/getEnvironmentContext.js +35 -28
  467. package/dist/pipeline/src/context/getEnvironmentVariables.d.ts +11 -11
  468. package/dist/pipeline/src/context/getEnvironmentVariables.js +102 -101
  469. package/dist/pipeline/src/context/getEnvironmentVariables.js.map +1 -1
  470. package/dist/pipeline/src/context/getLabels.d.ts +7 -7
  471. package/dist/pipeline/src/context/getLabels.js +26 -23
  472. package/dist/pipeline/src/context/getLabels.js.map +1 -1
  473. package/dist/pipeline/src/context/getReviewSlug.d.ts +1 -1
  474. package/dist/pipeline/src/context/getReviewSlug.js +12 -10
  475. package/dist/pipeline/src/context/index.d.ts +1 -1
  476. package/dist/pipeline/src/context/index.js +23 -16
  477. package/dist/pipeline/src/context/transformJobOnlyVars.d.ts +3 -3
  478. package/dist/pipeline/src/context/transformJobOnlyVars.js +21 -21
  479. package/dist/pipeline/src/context/utils/envVars.d.ts +3 -3
  480. package/dist/pipeline/src/context/utils/envVars.js +13 -13
  481. package/dist/pipeline/src/context/utils/envVars.js.map +1 -1
  482. package/dist/pipeline/src/defaults/index.d.ts +1 -1
  483. package/dist/pipeline/src/defaults/index.js +6 -5
  484. package/dist/pipeline/src/defaults/index.js.map +1 -1
  485. package/dist/pipeline/src/deploy/base/deploy.d.ts +4 -2
  486. package/dist/pipeline/src/deploy/base/deploy.js +87 -96
  487. package/dist/pipeline/src/deploy/base/deploy.js.map +1 -1
  488. package/dist/pipeline/src/deploy/base/index.d.ts +4 -4
  489. package/dist/pipeline/src/deploy/base/index.js +6 -10
  490. package/dist/pipeline/src/deploy/base/index.js.map +1 -1
  491. package/dist/pipeline/src/deploy/base/rollback.d.ts +4 -2
  492. package/dist/pipeline/src/deploy/base/rollback.js +34 -28
  493. package/dist/pipeline/src/deploy/base/rollback.js.map +1 -1
  494. package/dist/pipeline/src/deploy/base/stop.d.ts +4 -2
  495. package/dist/pipeline/src/deploy/base/stop.js +35 -34
  496. package/dist/pipeline/src/deploy/base/stop.js.map +1 -1
  497. package/dist/pipeline/src/deploy/base/variables.d.ts +4 -4
  498. package/dist/pipeline/src/deploy/base/variables.js +8 -6
  499. package/dist/pipeline/src/deploy/cloudRun/artifactsRegistry.d.ts +1 -1
  500. package/dist/pipeline/src/deploy/cloudRun/artifactsRegistry.js +55 -67
  501. package/dist/pipeline/src/deploy/cloudRun/cleanup.d.ts +1 -1
  502. package/dist/pipeline/src/deploy/cloudRun/cleanup.js +17 -14
  503. package/dist/pipeline/src/deploy/cloudRun/cleanup.js.map +1 -1
  504. package/dist/pipeline/src/deploy/cloudRun/cloudRunRevisions.d.ts +1 -1
  505. package/dist/pipeline/src/deploy/cloudRun/cloudRunRevisions.js +44 -41
  506. package/dist/pipeline/src/deploy/cloudRun/createJobs/cloudRunJobs.d.ts +5 -3
  507. package/dist/pipeline/src/deploy/cloudRun/createJobs/cloudRunJobs.js +63 -143
  508. package/dist/pipeline/src/deploy/cloudRun/createJobs/cloudRunJobs.js.map +1 -1
  509. package/dist/pipeline/src/deploy/cloudRun/createJobs/cloudRunServices.d.ts +1 -1
  510. package/dist/pipeline/src/deploy/cloudRun/createJobs/cloudRunServices.js +66 -52
  511. package/dist/pipeline/src/deploy/cloudRun/createJobs/cloudRunServices.js.map +1 -1
  512. package/dist/pipeline/src/deploy/cloudRun/createJobs/cloudRunWorkerPools.d.ts +4 -0
  513. package/dist/pipeline/src/deploy/cloudRun/createJobs/cloudRunWorkerPools.js +52 -0
  514. package/dist/pipeline/src/deploy/cloudRun/createJobs/cloudRunWorkerPools.js.map +1 -0
  515. package/dist/pipeline/src/deploy/cloudRun/createJobs/common.d.ts +7 -7
  516. package/dist/pipeline/src/deploy/cloudRun/createJobs/common.js +33 -38
  517. package/dist/pipeline/src/deploy/cloudRun/createJobs/constants.d.ts +1 -1
  518. package/dist/pipeline/src/deploy/cloudRun/createJobs/constants.js +5 -3
  519. package/dist/pipeline/src/deploy/cloudRun/createJobs/execute/onDeploy.d.ts +3 -0
  520. package/dist/pipeline/src/deploy/cloudRun/createJobs/execute/onDeploy.js +71 -0
  521. package/dist/pipeline/src/deploy/cloudRun/createJobs/execute/onDeploy.js.map +1 -0
  522. package/dist/pipeline/src/deploy/cloudRun/createJobs/execute/schedules.d.ts +3 -0
  523. package/dist/pipeline/src/deploy/cloudRun/createJobs/execute/schedules.js +133 -0
  524. package/dist/pipeline/src/deploy/cloudRun/createJobs/execute/schedules.js.map +1 -0
  525. package/dist/pipeline/src/deploy/cloudRun/createJobs/getCloudRunDeployScripts.d.ts +1 -1
  526. package/dist/pipeline/src/deploy/cloudRun/createJobs/getCloudRunDeployScripts.js +14 -30
  527. package/dist/pipeline/src/deploy/cloudRun/createJobs/getCloudRunDeployScripts.js.map +1 -1
  528. package/dist/pipeline/src/deploy/cloudRun/createJobs/getCloudRunStopScripts.d.ts +1 -1
  529. package/dist/pipeline/src/deploy/cloudRun/createJobs/getCloudRunStopScripts.js +12 -20
  530. package/dist/pipeline/src/deploy/cloudRun/createJobs/getCloudRunStopScripts.js.map +1 -1
  531. package/dist/pipeline/src/deploy/cloudRun/createJobs/healthCheck.d.ts +5 -0
  532. package/dist/pipeline/src/deploy/cloudRun/createJobs/healthCheck.js +48 -0
  533. package/dist/pipeline/src/deploy/cloudRun/createJobs/healthCheck.js.map +1 -0
  534. package/dist/pipeline/src/deploy/cloudRun/createJobs/index.d.ts +1 -1
  535. package/dist/pipeline/src/deploy/cloudRun/createJobs/index.js +36 -37
  536. package/dist/pipeline/src/deploy/cloudRun/createJobs/volumes.d.ts +1 -1
  537. package/dist/pipeline/src/deploy/cloudRun/createJobs/volumes.js +19 -13
  538. package/dist/pipeline/src/deploy/cloudRun/createJobs/volumes.js.map +1 -1
  539. package/dist/pipeline/src/deploy/cloudRun/index.d.ts +1 -1
  540. package/dist/pipeline/src/deploy/cloudRun/index.js +75 -68
  541. package/dist/pipeline/src/deploy/cloudRun/index.js.map +1 -1
  542. package/dist/pipeline/src/deploy/cloudRun/utils/cloudRunExecutionUrl.d.ts +10 -0
  543. package/dist/pipeline/src/deploy/cloudRun/utils/cloudRunExecutionUrl.js +17 -0
  544. package/dist/pipeline/src/deploy/cloudRun/utils/cloudRunExecutionUrl.js.map +1 -0
  545. package/dist/pipeline/src/deploy/cloudRun/utils/createArgsString.d.ts +1 -1
  546. package/dist/pipeline/src/deploy/cloudRun/utils/createArgsString.js +14 -18
  547. package/dist/pipeline/src/deploy/cloudRun/utils/createArgsString.js.map +1 -1
  548. package/dist/pipeline/src/deploy/cloudRun/utils/database.d.ts +21 -2
  549. package/dist/pipeline/src/deploy/cloudRun/utils/database.js +61 -45
  550. package/dist/pipeline/src/deploy/cloudRun/utils/database.js.map +1 -1
  551. package/dist/pipeline/src/deploy/cloudRun/utils/gcloudServiceAccountLoginCommands.d.ts +1 -1
  552. package/dist/pipeline/src/deploy/cloudRun/utils/gcloudServiceAccountLoginCommands.js +6 -6
  553. package/dist/pipeline/src/deploy/cloudRun/utils/getJobOrServiceArgs.d.ts +2 -0
  554. package/dist/pipeline/src/deploy/cloudRun/utils/getJobOrServiceArgs.js +10 -0
  555. package/dist/pipeline/src/deploy/cloudRun/utils/getJobOrServiceArgs.js.map +1 -0
  556. package/dist/pipeline/src/deploy/cloudRun/utils/getServiceName.d.ts +4 -0
  557. package/dist/pipeline/src/deploy/cloudRun/utils/getServiceName.js +8 -4
  558. package/dist/pipeline/src/deploy/cloudRun/utils/getServiceName.js.map +1 -1
  559. package/dist/pipeline/src/deploy/cloudRun/utils/jobName.d.ts +5 -1
  560. package/dist/pipeline/src/deploy/cloudRun/utils/jobName.js +11 -3
  561. package/dist/pipeline/src/deploy/cloudRun/utils/jobName.js.map +1 -1
  562. package/dist/pipeline/src/deploy/cloudRun/utils/removeFirstLinesFromCommandOutput.d.ts +1 -1
  563. package/dist/pipeline/src/deploy/cloudRun/utils/removeFirstLinesFromCommandOutput.js +6 -4
  564. package/dist/pipeline/src/deploy/cloudSql/utils.d.ts +1 -1
  565. package/dist/pipeline/src/deploy/cloudSql/utils.js +7 -9
  566. package/dist/pipeline/src/deploy/custom/deployJob.d.ts +1 -1
  567. package/dist/pipeline/src/deploy/custom/deployJob.js +30 -39
  568. package/dist/pipeline/src/deploy/custom/deployJob.js.map +1 -1
  569. package/dist/pipeline/src/deploy/custom/index.d.ts +1 -1
  570. package/dist/pipeline/src/deploy/custom/index.js +9 -7
  571. package/dist/pipeline/src/deploy/dockerTag/deployJob.d.ts +1 -1
  572. package/dist/pipeline/src/deploy/dockerTag/deployJob.js +18 -22
  573. package/dist/pipeline/src/deploy/dockerTag/index.d.ts +1 -1
  574. package/dist/pipeline/src/deploy/dockerTag/index.js +9 -7
  575. package/dist/pipeline/src/deploy/index.d.ts +6 -8
  576. package/dist/pipeline/src/deploy/index.js +27 -20
  577. package/dist/pipeline/src/deploy/kubernetes/additionalSecretKeys.d.ts +5 -3
  578. package/dist/pipeline/src/deploy/kubernetes/additionalSecretKeys.js +25 -19
  579. package/dist/pipeline/src/deploy/kubernetes/cloudSql/index.d.ts +7 -7
  580. package/dist/pipeline/src/deploy/kubernetes/cloudSql/index.js +36 -35
  581. package/dist/pipeline/src/deploy/kubernetes/deployJob.d.ts +1 -1
  582. package/dist/pipeline/src/deploy/kubernetes/deployJob.js +46 -67
  583. package/dist/pipeline/src/deploy/kubernetes/deployJob.js.map +1 -1
  584. package/dist/pipeline/src/deploy/kubernetes/index.d.ts +1 -1
  585. package/dist/pipeline/src/deploy/kubernetes/index.js +54 -45
  586. package/dist/pipeline/src/deploy/kubernetes/kubeEnv.d.ts +3 -3
  587. package/dist/pipeline/src/deploy/kubernetes/kubeEnv.js +35 -34
  588. package/dist/pipeline/src/deploy/kubernetes/kubeValues.d.ts +86 -85
  589. package/dist/pipeline/src/deploy/kubernetes/kubeValues.js +71 -62
  590. package/dist/pipeline/src/deploy/kubernetes/kubeValues.js.map +1 -1
  591. package/dist/pipeline/src/deploy/kubernetes/mongodb.d.ts +28 -24
  592. package/dist/pipeline/src/deploy/kubernetes/mongodb.js +89 -90
  593. package/dist/pipeline/src/deploy/kubernetes/mongodb.js.map +1 -1
  594. package/dist/pipeline/src/deploy/types/base.d.ts +27 -27
  595. package/dist/pipeline/src/deploy/types/base.js +4 -2
  596. package/dist/pipeline/src/deploy/types/custom.d.ts +25 -25
  597. package/dist/pipeline/src/deploy/types/custom.js +4 -2
  598. package/dist/pipeline/src/deploy/types/dockerTag.d.ts +10 -10
  599. package/dist/pipeline/src/deploy/types/dockerTag.js +4 -2
  600. package/dist/pipeline/src/deploy/types/executeBase.d.ts +24 -0
  601. package/dist/pipeline/src/deploy/types/executeBase.js +5 -0
  602. package/dist/pipeline/src/deploy/types/executeBase.js.map +1 -0
  603. package/dist/pipeline/src/deploy/types/googleCloudRun.d.ts +467 -208
  604. package/dist/pipeline/src/deploy/types/googleCloudRun.js +20 -2
  605. package/dist/pipeline/src/deploy/types/googleCloudRun.js.map +1 -1
  606. package/dist/pipeline/src/deploy/types/index.d.ts +9 -8
  607. package/dist/pipeline/src/deploy/types/index.js +29 -17
  608. package/dist/pipeline/src/deploy/types/index.js.map +1 -1
  609. package/dist/pipeline/src/deploy/types/kubernetes.d.ts +255 -254
  610. package/dist/pipeline/src/deploy/types/kubernetes.js +4 -2
  611. package/dist/pipeline/src/deploy/utils.d.ts +1 -1
  612. package/dist/pipeline/src/deploy/utils.js +23 -21
  613. package/dist/pipeline/src/globalScriptFunctions/index.d.ts +6 -6
  614. package/dist/pipeline/src/globalScriptFunctions/index.js +21 -19
  615. package/dist/pipeline/src/index.d.ts +3 -0
  616. package/dist/pipeline/src/index.js +25 -15
  617. package/dist/pipeline/src/index.js.map +1 -1
  618. package/dist/pipeline/src/pipeline/agent/createAgentContext.d.ts +23 -0
  619. package/dist/pipeline/src/pipeline/agent/createAgentContext.js +49 -0
  620. package/dist/pipeline/src/pipeline/agent/createAgentContext.js.map +1 -0
  621. package/dist/pipeline/src/pipeline/agent/createAgentEventJob.d.ts +5 -0
  622. package/dist/pipeline/src/pipeline/agent/createAgentEventJob.js +33 -0
  623. package/dist/pipeline/src/pipeline/agent/createAgentEventJob.js.map +1 -0
  624. package/dist/pipeline/src/pipeline/agent/createAgentReviewJob.d.ts +5 -0
  625. package/dist/pipeline/src/pipeline/agent/createAgentReviewJob.js +43 -0
  626. package/dist/pipeline/src/pipeline/agent/createAgentReviewJob.js.map +1 -0
  627. package/dist/pipeline/src/pipeline/agent/createJobsForAgentContext.d.ts +4 -0
  628. package/dist/pipeline/src/pipeline/agent/createJobsForAgentContext.js +12 -0
  629. package/dist/pipeline/src/pipeline/agent/createJobsForAgentContext.js.map +1 -0
  630. package/dist/pipeline/src/pipeline/agent/prompts.d.ts +6 -0
  631. package/dist/pipeline/src/pipeline/agent/prompts.js +286 -0
  632. package/dist/pipeline/src/pipeline/agent/prompts.js.map +1 -0
  633. package/dist/pipeline/src/pipeline/agent/shared.d.ts +11 -0
  634. package/dist/pipeline/src/pipeline/agent/shared.js +46 -0
  635. package/dist/pipeline/src/pipeline/agent/shared.js.map +1 -0
  636. package/dist/pipeline/src/pipeline/agent/utils.d.ts +3 -0
  637. package/dist/pipeline/src/pipeline/agent/utils.js +16 -0
  638. package/dist/pipeline/src/pipeline/agent/utils.js.map +1 -0
  639. package/dist/pipeline/src/pipeline/createAllJobs.d.ts +18 -10
  640. package/dist/pipeline/src/pipeline/createAllJobs.js +59 -37
  641. package/dist/pipeline/src/pipeline/createAllJobs.js.map +1 -1
  642. package/dist/pipeline/src/pipeline/createJobsForComponent.d.ts +2 -2
  643. package/dist/pipeline/src/pipeline/createJobsForComponent.js +28 -25
  644. package/dist/pipeline/src/pipeline/createJobsForComponent.js.map +1 -1
  645. package/dist/pipeline/src/pipeline/createJobsForWorkspace.d.ts +1 -1
  646. package/dist/pipeline/src/pipeline/createJobsForWorkspace.js +8 -6
  647. package/dist/pipeline/src/pipeline/createJobsForWorkspace.js.map +1 -1
  648. package/dist/pipeline/src/pipeline/generatePipelineFiles.d.ts +8 -40
  649. package/dist/pipeline/src/pipeline/generatePipelineFiles.js +35 -50
  650. package/dist/pipeline/src/pipeline/generatePipelineFiles.js.map +1 -1
  651. package/dist/pipeline/src/pipeline/index.d.ts +1 -2
  652. package/dist/pipeline/src/pipeline/index.js +23 -17
  653. package/dist/pipeline/src/pipeline/index.js.map +1 -1
  654. package/dist/pipeline/src/pipeline/packageManager.d.ts +2 -1
  655. package/dist/pipeline/src/pipeline/packageManager.js +51 -58
  656. package/dist/pipeline/src/pipeline/packageManager.js.map +1 -1
  657. package/dist/pipeline/src/pipeline/resolveRequirements.d.ts +10 -0
  658. package/dist/pipeline/src/pipeline/resolveRequirements.js +98 -0
  659. package/dist/pipeline/src/pipeline/resolveRequirements.js.map +1 -0
  660. package/dist/pipeline/src/rules/index.d.ts +6 -4
  661. package/dist/pipeline/src/rules/index.js +26 -51
  662. package/dist/pipeline/src/rules/index.js.map +1 -1
  663. package/dist/pipeline/src/runner/index.d.ts +2 -2
  664. package/dist/pipeline/src/runner/index.js +6 -4
  665. package/dist/pipeline/src/runner/index.js.map +1 -1
  666. package/dist/pipeline/src/types/agent.d.ts +16 -0
  667. package/dist/pipeline/src/types/agent.js +5 -0
  668. package/dist/pipeline/src/types/agent.js.map +1 -0
  669. package/dist/pipeline/src/types/config.d.ts +161 -142
  670. package/dist/pipeline/src/types/config.js +24 -28
  671. package/dist/pipeline/src/types/config.js.map +1 -1
  672. package/dist/pipeline/src/types/context.d.ts +110 -108
  673. package/dist/pipeline/src/types/context.js +9 -7
  674. package/dist/pipeline/src/types/context.js.map +1 -1
  675. package/dist/pipeline/src/types/environmentContext.d.ts +25 -25
  676. package/dist/pipeline/src/types/environmentContext.js +4 -2
  677. package/dist/pipeline/src/types/gitlab-ci-yml.d.ts +497 -497
  678. package/dist/pipeline/src/types/gitlab-ci-yml.js +4 -2
  679. package/dist/pipeline/src/types/gitlab-types.d.ts +16 -13
  680. package/dist/pipeline/src/types/gitlab-types.js +4 -2
  681. package/dist/pipeline/src/types/hooks.d.ts +35 -0
  682. package/dist/pipeline/src/types/hooks.js +5 -0
  683. package/dist/pipeline/src/types/hooks.js.map +1 -0
  684. package/dist/pipeline/src/types/index.d.ts +2 -0
  685. package/dist/pipeline/src/types/index.js +24 -15
  686. package/dist/pipeline/src/types/index.js.map +1 -1
  687. package/dist/pipeline/src/types/jobDefinition.d.ts +7 -7
  688. package/dist/pipeline/src/types/jobDefinition.js +4 -2
  689. package/dist/pipeline/src/types/jobs.d.ts +200 -93
  690. package/dist/pipeline/src/types/jobs.js +28 -12
  691. package/dist/pipeline/src/types/jobs.js.map +1 -1
  692. package/dist/pipeline/src/types/pipeline.d.ts +1 -2
  693. package/dist/pipeline/src/types/pipeline.js +4 -2
  694. package/dist/pipeline/src/types/release.d.ts +7 -0
  695. package/dist/pipeline/src/types/release.js +5 -0
  696. package/dist/pipeline/src/types/release.js.map +1 -0
  697. package/dist/pipeline/src/types/utils.d.ts +1 -3
  698. package/dist/pipeline/src/types/utils.js +4 -2
  699. package/dist/pipeline/src/utils/gitlab.d.ts +2 -2
  700. package/dist/pipeline/src/utils/gitlab.js +12 -15
  701. package/dist/pipeline/src/utils/index.d.ts +1 -1
  702. package/dist/pipeline/src/utils/index.js +13 -10
  703. package/dist/pipeline/src/utils/index.js.map +1 -1
  704. package/dist/pipeline/src/utils/jsonParse.d.ts +1 -1
  705. package/dist/pipeline/src/utils/jsonParse.js +11 -10
  706. package/dist/pipeline/src/utils/measureTime.d.ts +6 -0
  707. package/dist/pipeline/src/utils/measureTime.js +47 -0
  708. package/dist/pipeline/src/utils/measureTime.js.map +1 -0
  709. package/dist/pipeline/src/utils/removeUndefined.d.ts +1 -1
  710. package/dist/pipeline/src/utils/removeUndefined.js +6 -4
  711. package/dist/pipeline/src/utils/writeFiles.d.ts +16 -6
  712. package/dist/pipeline/src/utils/writeFiles.js +55 -34
  713. package/dist/pipeline/src/utils/writeFiles.js.map +1 -1
  714. package/dist/pipeline/src/variables/VariableValue.d.ts +1 -1
  715. package/dist/pipeline/src/variables/VariableValue.js +4 -2
  716. package/dist/pipeline/src/variables/VariableValueContainingReferences.d.ts +12 -12
  717. package/dist/pipeline/src/variables/VariableValueContainingReferences.js +45 -51
  718. package/dist/pipeline/src/variables/resolveAllReferences.d.ts +1 -1
  719. package/dist/pipeline/src/variables/resolveAllReferences.js +17 -18
  720. package/dist/pipeline/src/variables/resolveAllReferencesOnce.d.ts +2 -2
  721. package/dist/pipeline/src/variables/resolveAllReferencesOnce.js +14 -17
  722. package/dist/pipeline/src/variables/resolveReferencesOnce.d.ts +3 -3
  723. package/dist/pipeline/src/variables/resolveReferencesOnce.js +17 -16
  724. package/dist/tsconfig.tsbuildinfo +1 -1
  725. package/package.json +26 -21
  726. package/scripts/bundle +2 -4
  727. package/src/adapters/baseContext.ts +68 -0
  728. package/src/adapters/programmatic.ts +88 -0
  729. package/src/adapters/terminal.ts +207 -0
  730. package/src/apps/catenv/catenv.ts +21 -7
  731. package/src/apps/catenv/printVariables.ts +10 -12
  732. package/src/apps/catenv/utils.ts +12 -3
  733. package/src/apps/catenv/verboseBanner.ts +33 -0
  734. package/src/apps/catenv/writeDotEnvFiles.ts +21 -8
  735. package/src/apps/catenv/writeEnvDTs.ts +15 -6
  736. package/src/apps/cli/commands/project/commandConfigSecrets.ts +9 -34
  737. package/src/apps/cli/commands/project/setup/index.ts +18 -21
  738. package/src/apps/cli/commands/project/setup/logSection.ts +22 -0
  739. package/src/apps/cli/commands/project/setup/setupAccessTokens.ts +7 -7
  740. package/src/apps/cli/commands/project/setup/setupAgents.ts +323 -0
  741. package/src/apps/cli/commands/project/setup/setupCloudRun.ts +2 -2
  742. package/src/apps/cli/commands/project/setup/setupContext.ts +16 -24
  743. package/src/apps/cli/commands/project/setup/setupKubernetes.ts +2 -2
  744. package/src/apps/cli/commands/project/setup/setupTopic.ts +2 -2
  745. package/src/apps/cli/commands/project/utils/autocompletions.ts +9 -0
  746. package/src/apps/cli/commands/project/utils/ensureCluster.ts +19 -12
  747. package/src/apps/cli/utils/getGoogleAuthUserNumber.ts +5 -4
  748. package/src/catenv.ts +37 -13
  749. package/src/cli.ts +243 -2
  750. package/src/commands/availability.ts +22 -0
  751. package/src/commands/cloudSQL/commandRestoreDb.ts +105 -0
  752. package/src/commands/fun/commandDadjoke.ts +18 -0
  753. package/src/commands/fun/commandStarwars.ts +14 -0
  754. package/src/commands/general/commandKubeCurrentContext.ts +12 -0
  755. package/src/commands/general/commandKubeGetShell.ts +32 -0
  756. package/src/commands/general/commandKubeListNamespaces.ts +15 -0
  757. package/src/commands/general/commandKubeListPods.ts +21 -0
  758. package/src/commands/general/commandKubeListSecrets.ts +21 -0
  759. package/src/commands/general/commandKubePortForward.ts +35 -0
  760. package/src/commands/general/commandKubeStopPortforward.ts +15 -0
  761. package/src/commands/index.ts +51 -0
  762. package/src/commands/mongodb/commandMongoDestroyMember.ts +135 -0
  763. package/src/commands/mongodb/commandMongoGetShell.ts +38 -0
  764. package/src/commands/mongodb/commandMongoPortForward.ts +58 -0
  765. package/src/commands/project/commandCloudSqlProxy.ts +191 -0
  766. package/src/commands/project/commandConfigSecrets.ts +31 -0
  767. package/src/commands/project/commandEnvVars.ts +24 -0
  768. package/src/commands/project/commandGetMyTotalWorktime.ts +14 -0
  769. package/src/commands/project/commandGitlabCi.ts +122 -0
  770. package/src/commands/project/commandOpenEnv.ts +27 -0
  771. package/src/commands/project/commandOpenGit.ts +12 -0
  772. package/src/commands/project/commandOpenLogs.ts +46 -0
  773. package/src/commands/project/commandPortForward.ts +76 -0
  774. package/src/commands/project/commandProjectRestoreDb.ts +203 -0
  775. package/src/commands/project/commandRenewToken.ts +12 -0
  776. package/src/commands/project/commandSecretsClearBackups.ts +19 -0
  777. package/src/commands/project/commandSecurityEvaluate.ts +22 -0
  778. package/src/commands/project/commandSetup.ts +21 -0
  779. package/src/commands/project/k8s/commandDeletePods.ts +55 -0
  780. package/src/commands/project/k8s/commandDeleteProject.ts +35 -0
  781. package/src/commands/project/k8s/commandGetShell.ts +41 -0
  782. package/src/commands/project/k8s/commandListPods.ts +32 -0
  783. package/src/commands/project/k8s/commandNamespace.ts +23 -0
  784. package/src/commands/project/k8s/commandPauseProject.ts +35 -0
  785. package/src/commands/project/k8s/commandTriggerCronjob.ts +101 -0
  786. package/src/commands/security/commandSecurityAuditCiJob.ts +91 -0
  787. package/src/commands/security/commandSecurityAuditCreate.ts +58 -0
  788. package/src/commands/security/commandSecurityAuditEvaluate.ts +30 -0
  789. package/src/completion.ts +272 -0
  790. package/src/config/getProjectConfig.ts +34 -27
  791. package/src/core/defineCommand.ts +32 -0
  792. package/src/core/index.ts +23 -0
  793. package/src/core/registry.ts +22 -0
  794. package/src/core/runner.ts +31 -0
  795. package/src/core/types.ts +145 -0
  796. package/src/gcloud/cloudRun/openCloudRunDashboards.ts +2 -2
  797. package/src/gcloud/cloudSql/copyDb.ts +19 -13
  798. package/src/gcloud/cloudSql/parseConnectionString.ts +28 -0
  799. package/src/gcloud/openDashboard.ts +3 -3
  800. package/src/gcloud/serviceAccounts.ts +3 -3
  801. package/src/git/getGetMainBranch.ts +5 -0
  802. package/src/git/gitConfig.ts +32 -0
  803. package/src/git/gitProjectInformation.ts +40 -0
  804. package/src/git/index.ts +3 -0
  805. package/src/kubernetes/openKubernetesDashboards.ts +3 -3
  806. package/src/packageInfos.ts +0 -1
  807. package/src/utils/files.ts +2 -3
  808. package/src/utils/gitlab.ts +60 -71
  809. package/src/utils/log.ts +108 -8
  810. package/src/utils/preferences.ts +60 -0
  811. package/bin/catci +0 -3
  812. package/bin/catci-dev +0 -3
  813. package/dist/bundles/catci/index.js +0 -71761
  814. package/dist/cli/src/apps/catci/catci.d.ts +0 -1
  815. package/dist/cli/src/apps/catci/catci.js +0 -30
  816. package/dist/cli/src/apps/catci/catci.js.map +0 -1
  817. package/dist/cli/src/apps/catci/commands/security/auditDocument.d.ts +0 -19
  818. package/dist/cli/src/apps/catci/commands/security/auditDocument.js +0 -109
  819. package/dist/cli/src/apps/catci/commands/security/auditDocument.js.map +0 -1
  820. package/dist/cli/src/apps/catci/commands/security/commands.d.ts +0 -2
  821. package/dist/cli/src/apps/catci/commands/security/commands.js +0 -110
  822. package/dist/cli/src/apps/catci/commands/security/commands.js.map +0 -1
  823. package/dist/cli/src/apps/catci/commands/security/createSecurityAuditMergeRequest.d.ts +0 -9
  824. package/dist/cli/src/apps/catci/commands/security/createSecurityAuditMergeRequest.js +0 -52
  825. package/dist/cli/src/apps/catci/commands/security/createSecurityAuditMergeRequest.js.map +0 -1
  826. package/dist/cli/src/apps/catci/commands/security/evaluateSecurityAudit.js +0 -28
  827. package/dist/cli/src/apps/catci/commands/security/evaluateSecurityAudit.js.map +0 -1
  828. package/dist/cli/src/apps/cli/cli.d.ts +0 -2
  829. package/dist/cli/src/apps/cli/cli.js +0 -39
  830. package/dist/cli/src/apps/cli/cli.js.map +0 -1
  831. package/dist/cli/src/apps/cli/commands/cloudSQL/commandRestoreDb.d.ts +0 -3
  832. package/dist/cli/src/apps/cli/commands/cloudSQL/commandRestoreDb.js +0 -111
  833. package/dist/cli/src/apps/cli/commands/cloudSQL/commandRestoreDb.js.map +0 -1
  834. package/dist/cli/src/apps/cli/commands/cloudSQL/index.d.ts +0 -3
  835. package/dist/cli/src/apps/cli/commands/cloudSQL/index.js +0 -10
  836. package/dist/cli/src/apps/cli/commands/cloudSQL/index.js.map +0 -1
  837. package/dist/cli/src/apps/cli/commands/general/index.d.ts +0 -4
  838. package/dist/cli/src/apps/cli/commands/general/index.js +0 -78
  839. package/dist/cli/src/apps/cli/commands/general/index.js.map +0 -1
  840. package/dist/cli/src/apps/cli/commands/general/namespaceAutoCompletion.d.ts +0 -3
  841. package/dist/cli/src/apps/cli/commands/general/namespaceAutoCompletion.js +0 -11
  842. package/dist/cli/src/apps/cli/commands/general/namespaceAutoCompletion.js.map +0 -1
  843. package/dist/cli/src/apps/cli/commands/general/portForward.d.ts +0 -3
  844. package/dist/cli/src/apps/cli/commands/general/portForward.js +0 -40
  845. package/dist/cli/src/apps/cli/commands/general/portForward.js.map +0 -1
  846. package/dist/cli/src/apps/cli/commands/mongodb/index.d.ts +0 -3
  847. package/dist/cli/src/apps/cli/commands/mongodb/index.js +0 -14
  848. package/dist/cli/src/apps/cli/commands/mongodb/index.js.map +0 -1
  849. package/dist/cli/src/apps/cli/commands/mongodb/projectMongoDestroyMember.d.ts +0 -3
  850. package/dist/cli/src/apps/cli/commands/mongodb/projectMongoDestroyMember.js +0 -94
  851. package/dist/cli/src/apps/cli/commands/mongodb/projectMongoDestroyMember.js.map +0 -1
  852. package/dist/cli/src/apps/cli/commands/mongodb/projectMongoGetShell.d.ts +0 -3
  853. package/dist/cli/src/apps/cli/commands/mongodb/projectMongoGetShell.js +0 -36
  854. package/dist/cli/src/apps/cli/commands/mongodb/projectMongoGetShell.js.map +0 -1
  855. package/dist/cli/src/apps/cli/commands/mongodb/projectMongoPortForward.d.ts +0 -3
  856. package/dist/cli/src/apps/cli/commands/mongodb/projectMongoPortForward.js +0 -57
  857. package/dist/cli/src/apps/cli/commands/mongodb/projectMongoPortForward.js.map +0 -1
  858. package/dist/cli/src/apps/cli/commands/project/cloudSql/commandProjectRestoreDb.d.ts +0 -3
  859. package/dist/cli/src/apps/cli/commands/project/cloudSql/commandProjectRestoreDb.js +0 -126
  860. package/dist/cli/src/apps/cli/commands/project/cloudSql/commandProjectRestoreDb.js.map +0 -1
  861. package/dist/cli/src/apps/cli/commands/project/commandCloudSqlProxy.d.ts +0 -3
  862. package/dist/cli/src/apps/cli/commands/project/commandCloudSqlProxy.js +0 -88
  863. package/dist/cli/src/apps/cli/commands/project/commandCloudSqlProxy.js.map +0 -1
  864. package/dist/cli/src/apps/cli/commands/project/commandDeletePods.d.ts +0 -3
  865. package/dist/cli/src/apps/cli/commands/project/commandDeletePods.js +0 -47
  866. package/dist/cli/src/apps/cli/commands/project/commandDeletePods.js.map +0 -1
  867. package/dist/cli/src/apps/cli/commands/project/commandDeleteProject.d.ts +0 -3
  868. package/dist/cli/src/apps/cli/commands/project/commandDeleteProject.js +0 -28
  869. package/dist/cli/src/apps/cli/commands/project/commandDeleteProject.js.map +0 -1
  870. package/dist/cli/src/apps/cli/commands/project/commandEnvVars.d.ts +0 -3
  871. package/dist/cli/src/apps/cli/commands/project/commandEnvVars.js +0 -13
  872. package/dist/cli/src/apps/cli/commands/project/commandEnvVars.js.map +0 -1
  873. package/dist/cli/src/apps/cli/commands/project/commandGetMyTotalWorktime.d.ts +0 -3
  874. package/dist/cli/src/apps/cli/commands/project/commandGetMyTotalWorktime.js +0 -11
  875. package/dist/cli/src/apps/cli/commands/project/commandGetMyTotalWorktime.js.map +0 -1
  876. package/dist/cli/src/apps/cli/commands/project/commandGetShell.d.ts +0 -3
  877. package/dist/cli/src/apps/cli/commands/project/commandGetShell.js +0 -34
  878. package/dist/cli/src/apps/cli/commands/project/commandGetShell.js.map +0 -1
  879. package/dist/cli/src/apps/cli/commands/project/commandGitlabCi.d.ts +0 -3
  880. package/dist/cli/src/apps/cli/commands/project/commandGitlabCi.js +0 -86
  881. package/dist/cli/src/apps/cli/commands/project/commandGitlabCi.js.map +0 -1
  882. package/dist/cli/src/apps/cli/commands/project/commandListPods.d.ts +0 -3
  883. package/dist/cli/src/apps/cli/commands/project/commandListPods.js +0 -19
  884. package/dist/cli/src/apps/cli/commands/project/commandListPods.js.map +0 -1
  885. package/dist/cli/src/apps/cli/commands/project/commandMigrateHelm3.d.ts +0 -7
  886. package/dist/cli/src/apps/cli/commands/project/commandMigrateHelm3.js +0 -46
  887. package/dist/cli/src/apps/cli/commands/project/commandMigrateHelm3.js.map +0 -1
  888. package/dist/cli/src/apps/cli/commands/project/commandNamespace.d.ts +0 -3
  889. package/dist/cli/src/apps/cli/commands/project/commandNamespace.js +0 -11
  890. package/dist/cli/src/apps/cli/commands/project/commandNamespace.js.map +0 -1
  891. package/dist/cli/src/apps/cli/commands/project/commandOpenCostDashboard.d.ts +0 -3
  892. package/dist/cli/src/apps/cli/commands/project/commandOpenCostDashboard.js +0 -22
  893. package/dist/cli/src/apps/cli/commands/project/commandOpenCostDashboard.js.map +0 -1
  894. package/dist/cli/src/apps/cli/commands/project/commandOpenDashboard.d.ts +0 -3
  895. package/dist/cli/src/apps/cli/commands/project/commandOpenDashboard.js +0 -22
  896. package/dist/cli/src/apps/cli/commands/project/commandOpenDashboard.js.map +0 -1
  897. package/dist/cli/src/apps/cli/commands/project/commandOpenEnv.d.ts +0 -3
  898. package/dist/cli/src/apps/cli/commands/project/commandOpenEnv.js +0 -20
  899. package/dist/cli/src/apps/cli/commands/project/commandOpenEnv.js.map +0 -1
  900. package/dist/cli/src/apps/cli/commands/project/commandOpenGit.d.ts +0 -3
  901. package/dist/cli/src/apps/cli/commands/project/commandOpenGit.js +0 -9
  902. package/dist/cli/src/apps/cli/commands/project/commandOpenGit.js.map +0 -1
  903. package/dist/cli/src/apps/cli/commands/project/commandOpenGrafana.d.ts +0 -3
  904. package/dist/cli/src/apps/cli/commands/project/commandOpenGrafana.js +0 -22
  905. package/dist/cli/src/apps/cli/commands/project/commandOpenGrafana.js.map +0 -1
  906. package/dist/cli/src/apps/cli/commands/project/commandOpenGrafanaPod.d.ts +0 -3
  907. package/dist/cli/src/apps/cli/commands/project/commandOpenGrafanaPod.js +0 -35
  908. package/dist/cli/src/apps/cli/commands/project/commandOpenGrafanaPod.js.map +0 -1
  909. package/dist/cli/src/apps/cli/commands/project/commandOpenLogs.d.ts +0 -3
  910. package/dist/cli/src/apps/cli/commands/project/commandOpenLogs.js +0 -14
  911. package/dist/cli/src/apps/cli/commands/project/commandOpenLogs.js.map +0 -1
  912. package/dist/cli/src/apps/cli/commands/project/commandPauseProject.d.ts +0 -3
  913. package/dist/cli/src/apps/cli/commands/project/commandPauseProject.js +0 -28
  914. package/dist/cli/src/apps/cli/commands/project/commandPauseProject.js.map +0 -1
  915. package/dist/cli/src/apps/cli/commands/project/commandPortForward.d.ts +0 -3
  916. package/dist/cli/src/apps/cli/commands/project/commandPortForward.js +0 -80
  917. package/dist/cli/src/apps/cli/commands/project/commandPortForward.js.map +0 -1
  918. package/dist/cli/src/apps/cli/commands/project/commandRenewToken.d.ts +0 -3
  919. package/dist/cli/src/apps/cli/commands/project/commandRenewToken.js +0 -9
  920. package/dist/cli/src/apps/cli/commands/project/commandRenewToken.js.map +0 -1
  921. package/dist/cli/src/apps/cli/commands/project/commandSecretsClearBackups.d.ts +0 -5
  922. package/dist/cli/src/apps/cli/commands/project/commandSecretsClearBackups.js +0 -24
  923. package/dist/cli/src/apps/cli/commands/project/commandSecretsClearBackups.js.map +0 -1
  924. package/dist/cli/src/apps/cli/commands/project/commandSecurityEvaluate.d.ts +0 -3
  925. package/dist/cli/src/apps/cli/commands/project/commandSecurityEvaluate.js +0 -19
  926. package/dist/cli/src/apps/cli/commands/project/commandSecurityEvaluate.js.map +0 -1
  927. package/dist/cli/src/apps/cli/commands/project/commandSetup.d.ts +0 -3
  928. package/dist/cli/src/apps/cli/commands/project/commandSetup.js +0 -9
  929. package/dist/cli/src/apps/cli/commands/project/commandSetup.js.map +0 -1
  930. package/dist/cli/src/apps/cli/commands/project/commandTriggerCronjob.d.ts +0 -3
  931. package/dist/cli/src/apps/cli/commands/project/commandTriggerCronjob.js +0 -56
  932. package/dist/cli/src/apps/cli/commands/project/commandTriggerCronjob.js.map +0 -1
  933. package/dist/cli/src/apps/cli/commands/project/index.d.ts +0 -3
  934. package/dist/cli/src/apps/cli/commands/project/index.js +0 -54
  935. package/dist/cli/src/apps/cli/commands/project/index.js.map +0 -1
  936. package/dist/cli/src/apps/cli/commands/project/utils/showProjectBanner.d.ts +0 -2
  937. package/dist/cli/src/apps/cli/commands/project/utils/showProjectBanner.js +0 -14
  938. package/dist/cli/src/apps/cli/commands/project/utils/showProjectBanner.js.map +0 -1
  939. package/dist/cli/src/apps/cli/commands/theStuffThatReallyMatters/index.d.ts +0 -3
  940. package/dist/cli/src/apps/cli/commands/theStuffThatReallyMatters/index.js +0 -35
  941. package/dist/cli/src/apps/cli/commands/theStuffThatReallyMatters/index.js.map +0 -1
  942. package/dist/cli/src/apps/cli/verify/index.d.ts +0 -2
  943. package/dist/cli/src/apps/cli/verify/index.js +0 -15
  944. package/dist/cli/src/apps/cli/verify/index.js.map +0 -1
  945. package/dist/cli/src/catci.d.ts +0 -1
  946. package/dist/cli/src/catci.js +0 -5
  947. package/dist/cli/src/catci.js.map +0 -1
  948. package/dist/cli/src/config/constants.d.ts +0 -2
  949. package/dist/cli/src/config/constants.js +0 -6
  950. package/dist/cli/src/config/constants.js.map +0 -1
  951. package/dist/cli/src/utils/preferences/index.js +0 -38
  952. package/dist/cli/src/utils/preferences/index.js.map +0 -1
  953. package/dist/pipeline/src/build/rails/test.js +0 -88
  954. package/dist/pipeline/src/build/rails/test.js.map +0 -1
  955. package/dist/pipeline/src/build/sbom.d.ts +0 -5
  956. package/dist/pipeline/src/build/sbom.js +0 -42
  957. package/dist/pipeline/src/build/sbom.js.map +0 -1
  958. package/dist/pipeline/src/deploy/sbom.d.ts +0 -4
  959. package/dist/pipeline/src/deploy/sbom.js +0 -28
  960. package/dist/pipeline/src/deploy/sbom.js.map +0 -1
  961. package/dist/pipeline/src/pipeline/createChildPipeline.d.ts +0 -3
  962. package/dist/pipeline/src/pipeline/createChildPipeline.js +0 -30
  963. package/dist/pipeline/src/pipeline/createChildPipeline.js.map +0 -1
  964. package/dist/pipeline/src/pipeline/createMainPipeline.d.ts +0 -3
  965. package/dist/pipeline/src/pipeline/createMainPipeline.js +0 -76
  966. package/dist/pipeline/src/pipeline/createMainPipeline.js.map +0 -1
  967. package/dist/pipeline/src/pipeline/getPipelineStages.js +0 -21
  968. package/dist/pipeline/src/pipeline/getPipelineStages.js.map +0 -1
  969. package/dist/pipeline/src/pipeline/gitlab/createGitlabJobs.d.ts +0 -11
  970. package/dist/pipeline/src/pipeline/gitlab/createGitlabJobs.js +0 -262
  971. package/dist/pipeline/src/pipeline/gitlab/createGitlabJobs.js.map +0 -1
  972. package/dist/pipeline/src/pipeline/gitlab/createGitlabPipeline.d.ts +0 -4
  973. package/dist/pipeline/src/pipeline/gitlab/createGitlabPipeline.js +0 -25
  974. package/dist/pipeline/src/pipeline/gitlab/createGitlabPipeline.js.map +0 -1
  975. package/dist/pipeline/src/pipeline/gitlab/getPipelineTriggerForGitlabChildPipeline.d.ts +0 -1
  976. package/dist/pipeline/src/pipeline/gitlab/getPipelineTriggerForGitlabChildPipeline.js +0 -32
  977. package/dist/pipeline/src/pipeline/gitlab/getPipelineTriggerForGitlabChildPipeline.js.map +0 -1
  978. package/dist/pipeline/src/pipeline/gitlab/gitlabReleaseJobs.d.ts +0 -35
  979. package/dist/pipeline/src/pipeline/gitlab/gitlabReleaseJobs.js +0 -27
  980. package/dist/pipeline/src/pipeline/gitlab/gitlabReleaseJobs.js.map +0 -1
  981. package/dist/pipeline/src/pipeline/gitlab/sortGitLabJobDefProps.js +0 -50
  982. package/dist/pipeline/src/pipeline/yarn/yarnUtils.d.ts +0 -5
  983. package/dist/pipeline/src/pipeline/yarn/yarnUtils.js +0 -51
  984. package/dist/pipeline/src/pipeline/yarn/yarnUtils.js.map +0 -1
  985. package/src/apps/catci/catci.ts +0 -26
  986. package/src/apps/catci/commands/security/commands.ts +0 -161
  987. package/src/apps/cli/cli.ts +0 -43
  988. package/src/apps/cli/commands/cloudSQL/commandRestoreDb.ts +0 -136
  989. package/src/apps/cli/commands/cloudSQL/index.ts +0 -7
  990. package/src/apps/cli/commands/general/index.ts +0 -90
  991. package/src/apps/cli/commands/general/namespaceAutoCompletion.ts +0 -7
  992. package/src/apps/cli/commands/general/portForward.ts +0 -48
  993. package/src/apps/cli/commands/mongodb/index.ts +0 -10
  994. package/src/apps/cli/commands/mongodb/projectMongoDestroyMember.ts +0 -132
  995. package/src/apps/cli/commands/mongodb/projectMongoGetShell.ts +0 -42
  996. package/src/apps/cli/commands/mongodb/projectMongoPortForward.ts +0 -64
  997. package/src/apps/cli/commands/project/cloudSql/commandProjectRestoreDb.ts +0 -181
  998. package/src/apps/cli/commands/project/commandCloudSqlProxy.ts +0 -130
  999. package/src/apps/cli/commands/project/commandDeletePods.ts +0 -48
  1000. package/src/apps/cli/commands/project/commandDeleteProject.ts +0 -33
  1001. package/src/apps/cli/commands/project/commandEnvVars.ts +0 -18
  1002. package/src/apps/cli/commands/project/commandGetMyTotalWorktime.ts +0 -14
  1003. package/src/apps/cli/commands/project/commandGetShell.ts +0 -36
  1004. package/src/apps/cli/commands/project/commandGitlabCi.ts +0 -115
  1005. package/src/apps/cli/commands/project/commandListPods.ts +0 -20
  1006. package/src/apps/cli/commands/project/commandMigrateHelm3.ts +0 -63
  1007. package/src/apps/cli/commands/project/commandNamespace.ts +0 -14
  1008. package/src/apps/cli/commands/project/commandOpenCostDashboard.ts +0 -32
  1009. package/src/apps/cli/commands/project/commandOpenDashboard.ts +0 -28
  1010. package/src/apps/cli/commands/project/commandOpenEnv.ts +0 -22
  1011. package/src/apps/cli/commands/project/commandOpenGit.ts +0 -12
  1012. package/src/apps/cli/commands/project/commandOpenGrafana.ts +0 -31
  1013. package/src/apps/cli/commands/project/commandOpenGrafanaPod.ts +0 -43
  1014. package/src/apps/cli/commands/project/commandOpenLogs.ts +0 -21
  1015. package/src/apps/cli/commands/project/commandPauseProject.ts +0 -33
  1016. package/src/apps/cli/commands/project/commandPortForward.ts +0 -91
  1017. package/src/apps/cli/commands/project/commandRenewToken.ts +0 -12
  1018. package/src/apps/cli/commands/project/commandSecretsClearBackups.ts +0 -26
  1019. package/src/apps/cli/commands/project/commandSecurityEvaluate.ts +0 -26
  1020. package/src/apps/cli/commands/project/commandSetup.ts +0 -12
  1021. package/src/apps/cli/commands/project/commandTriggerCronjob.ts +0 -62
  1022. package/src/apps/cli/commands/project/index.ts +0 -61
  1023. package/src/apps/cli/commands/project/utils/showProjectBanner.ts +0 -11
  1024. package/src/apps/cli/commands/theStuffThatReallyMatters/index.ts +0 -32
  1025. package/src/apps/cli/verify/index.ts +0 -14
  1026. package/src/catci.ts +0 -3
  1027. package/src/config/constants.ts +0 -2
  1028. package/src/utils/preferences/index.ts +0 -34
  1029. /package/dist/cli/src/{apps/catci/commands/security → security}/topics.json +0 -0
  1030. /package/src/{apps/catci/commands/security → security}/auditDocument.ts +0 -0
  1031. /package/src/{apps/catci/commands/security → security}/createSecurityAuditMergeRequest.ts +0 -0
  1032. /package/src/{apps/catci/commands/security → security}/evaluateSecurityAudit.ts +0 -0
  1033. /package/src/{apps/catci/commands/security → security}/topics.json +0 -0
@@ -0,0 +1,101 @@
1
+ import type { V1ObjectMeta } from "@kubernetes/client-node";
2
+ import { V1Job } from "@kubernetes/client-node";
3
+ import { defineCommand } from "../../../core/defineCommand";
4
+ import { getk8sApiBatch, getk8sApiBatchBeta } from "../../../k8sApi";
5
+ import { logError } from "../../../utils/log";
6
+ import { getProjectNamespace } from "../../../utils/projects";
7
+ import { ensureCluster } from "../../../apps/cli/commands/project/utils/ensureCluster";
8
+ import { envAndComponents } from "../../../apps/cli/commands/project/utils/autocompletions";
9
+ import { hasDeployType } from "../../availability";
10
+
11
+ const getCronjobChoices = async (namespace: string) => {
12
+ const {
13
+ body: { items: jobs },
14
+ } = await getk8sApiBatchBeta().listNamespacedCronJob(namespace);
15
+ return jobs.map((j: any) => j.metadata.name) as string[];
16
+ };
17
+
18
+ const runCronjob = async (
19
+ io: { log: (msg: string) => void },
20
+ namespace: string,
21
+ jobName: string,
22
+ ) => {
23
+ const {
24
+ body: { items: jobs },
25
+ } = await getk8sApiBatchBeta().listNamespacedCronJob(namespace);
26
+
27
+ const cronjob = jobs.find((j: any) => j.metadata.name === jobName);
28
+ const jobSpec = (cronjob as any).spec.jobTemplate.spec;
29
+
30
+ const job = new V1Job();
31
+ const metadata: Partial<V1ObjectMeta> = {
32
+ name: `manual-${Math.round(Date.now() / 1000)}-${(cronjob as any).metadata.name}`,
33
+ };
34
+
35
+ job.metadata = metadata as V1ObjectMeta;
36
+ job.spec = jobSpec;
37
+ try {
38
+ const result = await getk8sApiBatch().createNamespacedJob(namespace, job);
39
+ io.log("");
40
+ io.log(
41
+ `yeah, you got a job, man. 😺 ${(result as any).body.metadata.name}`,
42
+ );
43
+ io.log("");
44
+ } catch (e: any) {
45
+ logError(io, "command failed", e.body);
46
+ }
47
+ };
48
+
49
+ export const commandTriggerCronjobGeneral = defineCommand({
50
+ name: "k8s trigger-cronjob",
51
+ description: "trigger cronjob",
52
+ group: "general",
53
+ inputs: {
54
+ namespace: {
55
+ type: "string",
56
+ message: "kubernetes namespace",
57
+ positional: true,
58
+ },
59
+ jobName: {
60
+ type: "string",
61
+ message: "Which cronjob? 🤔",
62
+ choices: async (ctx) => getCronjobChoices(await ctx.get("namespace")),
63
+ },
64
+ },
65
+ execute: async (ctx) => {
66
+ const namespace = await ctx.get("namespace");
67
+ const jobName = await ctx.get("jobName");
68
+ await runCronjob(ctx, namespace, jobName);
69
+ },
70
+ });
71
+
72
+ export const commandTriggerCronjobProject = defineCommand({
73
+ name: "project k8s trigger-cronjob",
74
+ description: "trigger cronjob",
75
+ group: "project",
76
+ isAvailable: hasDeployType("kubernetes"),
77
+ inputs: {
78
+ envComponent: {
79
+ type: "string",
80
+ message: "environment:component",
81
+ positional: true,
82
+ choices: async () => envAndComponents(),
83
+ },
84
+ jobName: {
85
+ type: "string",
86
+ message: "Which cronjob? 🤔",
87
+ choices: async (ctx) => {
88
+ const envComponent = await ctx.get("envComponent");
89
+ const namespace = await getProjectNamespace(envComponent);
90
+ return getCronjobChoices(namespace);
91
+ },
92
+ },
93
+ },
94
+ execute: async (ctx) => {
95
+ const envComponent = await ctx.get("envComponent");
96
+ await ensureCluster(ctx, envComponent);
97
+ const namespace = await getProjectNamespace(envComponent);
98
+ const jobName = await ctx.get("jobName");
99
+ await runCronjob(ctx, namespace, jobName);
100
+ },
101
+ });
@@ -0,0 +1,91 @@
1
+ import { defineCommand } from "../../core/defineCommand";
2
+ import { Gitlab } from "@gitbeaker/rest";
3
+ import {
4
+ evaluateSecurityAudit,
5
+ makeSecurityAuditOverview,
6
+ } from "../../security/evaluateSecurityAudit";
7
+ import {
8
+ createSecurityAuditMergeRequest,
9
+ SECURITY_AUDIT_FILE_NAME,
10
+ } from "../../security/createSecurityAuditMergeRequest";
11
+
12
+ const GITLAB_HOST = "https://git.panter.ch";
13
+
14
+ export const commandSecurityAuditCiJob = defineCommand({
15
+ name: "security audit ci-job",
16
+ description:
17
+ "Evaluates security audit document. Creates MR with template if missing.",
18
+ group: "security",
19
+ inputs: {
20
+ path: { type: "string", message: "path to project root", positional: true },
21
+ token: {
22
+ type: "string",
23
+ message: "GitLab token (api scope)",
24
+ positional: true,
25
+ },
26
+ mainBranch: {
27
+ type: "string",
28
+ message: "main branch name",
29
+ positional: true,
30
+ },
31
+ projectId: {
32
+ type: "string",
33
+ message: "GitLab project ID",
34
+ positional: true,
35
+ },
36
+ userId: {
37
+ type: "string",
38
+ message: "GitLab user ID (assignee)",
39
+ positional: true,
40
+ },
41
+ },
42
+ execute: async (ctx) => {
43
+ const path = await ctx.get("path");
44
+ const evaluation = await evaluateSecurityAudit({ path });
45
+
46
+ if (evaluation.isErr()) {
47
+ ctx.log("could not evaluate security audit document");
48
+ ctx.log("creating new merge request with security audit template...");
49
+
50
+ const token = await ctx.get("token");
51
+ const mainBranch = await ctx.get("mainBranch");
52
+ const projectId = await ctx.get("projectId");
53
+ const userId = await ctx.get("userId");
54
+
55
+ const api = new Gitlab({ host: GITLAB_HOST, token });
56
+
57
+ const mr = await createSecurityAuditMergeRequest({
58
+ api,
59
+ mainBranch,
60
+ projectId,
61
+ userId: parseInt(userId),
62
+ });
63
+
64
+ if (mr.isErr()) {
65
+ ctx.log(
66
+ `could not create merge request with security audit template: ${mr.error}`,
67
+ );
68
+ process.exitCode = 1;
69
+ return;
70
+ }
71
+
72
+ ctx.log("security audit merge request created successfully");
73
+ ctx.log(
74
+ `please finish the MR by updating SECURITY.md document: ${mr.value.web_url}`,
75
+ );
76
+ process.exitCode = 1;
77
+ return;
78
+ }
79
+
80
+ if (evaluation.value.score.answeredTopics === 0) {
81
+ ctx.log("audit document has no answered topics");
82
+ ctx.log(
83
+ `please answer security topics in ${SECURITY_AUDIT_FILE_NAME} by adding responsible people and check/cross in the table`,
84
+ );
85
+ process.exitCode = 1;
86
+ return;
87
+ }
88
+
89
+ ctx.log(makeSecurityAuditOverview(evaluation.value));
90
+ },
91
+ });
@@ -0,0 +1,58 @@
1
+ import { defineCommand } from "../../core/defineCommand";
2
+ import { Gitlab } from "@gitbeaker/rest";
3
+ import { createSecurityAuditMergeRequest } from "../../security/createSecurityAuditMergeRequest";
4
+
5
+ const GITLAB_HOST = "https://git.panter.ch";
6
+
7
+ export const commandSecurityAuditCreate = defineCommand({
8
+ name: "security audit create",
9
+ description: "Creates a MR with the latest security audit template document",
10
+ group: "security",
11
+ inputs: {
12
+ token: {
13
+ type: "string",
14
+ message: "GitLab token (api scope)",
15
+ positional: true,
16
+ },
17
+ mainBranch: {
18
+ type: "string",
19
+ message: "main branch name",
20
+ positional: true,
21
+ },
22
+ projectId: {
23
+ type: "string",
24
+ message: "GitLab project ID",
25
+ positional: true,
26
+ },
27
+ userId: {
28
+ type: "string",
29
+ message: "GitLab user ID (assignee)",
30
+ positional: true,
31
+ },
32
+ },
33
+ execute: async (ctx) => {
34
+ const token = await ctx.get("token");
35
+ const mainBranch = await ctx.get("mainBranch");
36
+ const projectId = await ctx.get("projectId");
37
+ const userId = await ctx.get("userId");
38
+
39
+ const api = new Gitlab({ host: GITLAB_HOST, token });
40
+
41
+ const result = await createSecurityAuditMergeRequest({
42
+ api,
43
+ mainBranch,
44
+ projectId,
45
+ userId: parseInt(userId),
46
+ });
47
+
48
+ if (result.isErr()) {
49
+ ctx.log(`could not create security audit merge request: ${result.error}`);
50
+ process.exitCode = 1;
51
+ } else {
52
+ ctx.log("security audit merge request created successfully");
53
+ ctx.log(
54
+ `please finish the MR by updating SECURITY.md document: ${result.value.web_url}`,
55
+ );
56
+ }
57
+ },
58
+ });
@@ -0,0 +1,30 @@
1
+ import { defineCommand } from "../../core/defineCommand";
2
+ import {
3
+ evaluateSecurityAudit,
4
+ makeSecurityAuditOverview,
5
+ } from "../../security/evaluateSecurityAudit";
6
+ import { SECURITY_AUDIT_FILE_NAME } from "../../security/createSecurityAuditMergeRequest";
7
+
8
+ export const commandSecurityAuditEvaluate = defineCommand({
9
+ name: "security audit evaluate",
10
+ description: "Evaluates security audit document in given path",
11
+ group: "security",
12
+ inputs: {
13
+ path: { type: "string", message: "path to project root", positional: true },
14
+ },
15
+ execute: async (ctx) => {
16
+ const path = await ctx.get("path");
17
+ ctx.log("evaluating security audit document...");
18
+
19
+ const result = await evaluateSecurityAudit({ path });
20
+ if (result.isErr()) {
21
+ ctx.log(`${result.error}`);
22
+ ctx.log(
23
+ `please make sure the security audit document ${SECURITY_AUDIT_FILE_NAME} is in the repository`,
24
+ );
25
+ process.exitCode = 1;
26
+ } else {
27
+ ctx.log(makeSecurityAuditOverview(result.value));
28
+ }
29
+ },
30
+ });
@@ -0,0 +1,272 @@
1
+ import { readFileSync, writeFileSync, existsSync } from "fs";
2
+ import { join } from "path";
3
+ import { homedir } from "os";
4
+ import type { CommandDef, InputDef } from "./core/types";
5
+
6
+ /**
7
+ * Generate completions for the current command line.
8
+ *
9
+ * @param allCommands - All registered command definitions
10
+ * @param words - The words typed so far (argv without the binary name)
11
+ * @param cursorWord - The word currently being completed (may be empty)
12
+ * @returns Array of completion strings
13
+ */
14
+ export async function getCompletions(
15
+ allCommands: CommandDef[],
16
+ words: string[],
17
+ cursorWord: string,
18
+ ): Promise<string[]> {
19
+ // Try to find a command by matching the longest prefix of words.
20
+ // E.g., for words ["project", "cloudsql", "restore-db", "--source"],
21
+ // we match "project cloudsql restore-db" and treat ["--source"] as args.
22
+ const matched = findCommand(allCommands, words);
23
+
24
+ if (matched) {
25
+ const { command, argsAfterCommand } = matched;
26
+
27
+ // Check if cursor is a --flag name
28
+ if (cursorWord.startsWith("--")) {
29
+ return getFlagCompletions(command, cursorWord);
30
+ }
31
+
32
+ // Check if previous word was a --flag (complete its value)
33
+ const prevWord = argsAfterCommand[argsAfterCommand.length - 1];
34
+ if (prevWord?.startsWith("--")) {
35
+ const flagName = prevWord.replace(/^--/, "");
36
+ const inputName = flagNameToInputName(flagName);
37
+ const inputDef = command.inputs[inputName];
38
+ if (inputDef && "choices" in inputDef && inputDef.choices) {
39
+ return resolveChoicesForCompletion(inputDef, cursorWord);
40
+ }
41
+ return [];
42
+ }
43
+
44
+ // Complete positional inputs
45
+ const positionalInputs = getPositionalInputs(command);
46
+ const positionalArgs = argsAfterCommand.filter((w) => !w.startsWith("--"));
47
+ const positionalIndex = positionalArgs.length;
48
+ const targetInput = positionalInputs[positionalIndex];
49
+
50
+ if (targetInput) {
51
+ const [, inputDef] = targetInput;
52
+ if ("choices" in inputDef && inputDef.choices) {
53
+ return resolveChoicesForCompletion(inputDef, cursorWord);
54
+ }
55
+ }
56
+ return [];
57
+ }
58
+
59
+ // No command matched. Complete subcommand names at the current level.
60
+ const typed = words.join(" ");
61
+ const prefix = typed ? typed + " " : "";
62
+
63
+ const nextParts = new Set<string>();
64
+ for (const cmd of allCommands) {
65
+ if (cmd.name.startsWith(prefix)) {
66
+ const rest = cmd.name.slice(prefix.length);
67
+ const nextPart = rest.split(" ")[0];
68
+ if (nextPart && nextPart.startsWith(cursorWord)) {
69
+ nextParts.add(nextPart);
70
+ }
71
+ }
72
+ }
73
+
74
+ return [...nextParts].sort();
75
+ }
76
+
77
+ /**
78
+ * Find a command by matching the longest prefix of words against command names.
79
+ * Returns the matched command and the remaining words (args/flags after the command name).
80
+ */
81
+ function findCommand(
82
+ allCommands: CommandDef[],
83
+ words: string[],
84
+ ): { command: CommandDef; argsAfterCommand: string[] } | null {
85
+ // Try longest match first
86
+ for (let i = words.length; i >= 1; i--) {
87
+ const candidate = words.slice(0, i).join(" ");
88
+ const command = allCommands.find((c) => c.name === candidate);
89
+ if (command) {
90
+ return { command, argsAfterCommand: words.slice(i) };
91
+ }
92
+ }
93
+ return null;
94
+ }
95
+
96
+ function getPositionalInputs(command: CommandDef): [string, InputDef][] {
97
+ return Object.entries(command.inputs).filter(([, def]) => def.positional);
98
+ }
99
+
100
+ function getFlagCompletions(command: CommandDef, cursorWord: string): string[] {
101
+ const flags: string[] = [];
102
+ for (const [name, inputDef] of Object.entries(command.inputs)) {
103
+ if (inputDef.positional) continue;
104
+ const flagName = `--${name.replace(/([A-Z])/g, "-$1").toLowerCase()}`;
105
+ flags.push(flagName);
106
+ }
107
+ flags.push("--inputs");
108
+ flags.push("--yes");
109
+ return flags.filter((f) => f.startsWith(cursorWord));
110
+ }
111
+
112
+ function flagNameToInputName(flagName: string): string {
113
+ return flagName.replace(/-([a-z])/g, (_, c) => c.toUpperCase());
114
+ }
115
+
116
+ async function resolveChoicesForCompletion(
117
+ inputDef: InputDef,
118
+ cursorWord: string,
119
+ ): Promise<string[]> {
120
+ if (!("choices" in inputDef) || !inputDef.choices) return [];
121
+ try {
122
+ // Create a minimal ctx that returns empty for any get() call.
123
+ // This works for choices functions that don't depend on other inputs
124
+ // (like envAndComponents). For dependent choices, completion won't work
125
+ // but that's acceptable -- those are typically non-positional.
126
+ const noopCtx = {
127
+ get: () => Promise.reject(new Error("not available during completion")),
128
+ log: () => {},
129
+ confirm: () => Promise.resolve(true),
130
+ promptDirect: () =>
131
+ Promise.reject(new Error("not available during completion")),
132
+ };
133
+ const choices = await inputDef.choices(noopCtx);
134
+ return choices
135
+ .map((c) => (typeof c === "string" ? c : c.value))
136
+ .filter((v) => v.startsWith(cursorWord));
137
+ } catch {
138
+ // If choices function fails (e.g., needs other inputs), return nothing
139
+ return [];
140
+ }
141
+ }
142
+
143
+ /**
144
+ * Generate the zsh completion script.
145
+ * The script discovers the local catladder binary at completion time,
146
+ * so it works without a global install.
147
+ */
148
+ export function generateZshCompletionScript(): string {
149
+ return `
150
+ ###-begin-catladder-completions-###
151
+ # Find catladder binary by walking up from cwd
152
+ _catladder_find_binary() {
153
+ local dir="$PWD"
154
+ while [[ "$dir" != "/" ]]; do
155
+ if [[ -x "$dir/node_modules/.bin/catladder" ]]; then
156
+ echo "$dir/node_modules/.bin/catladder"
157
+ return
158
+ fi
159
+ # Also check for catladder-dev (monorepo development)
160
+ if [[ -x "$dir/cli/bin/catladder-dev" ]]; then
161
+ echo "$dir/cli/bin/catladder-dev"
162
+ return
163
+ fi
164
+ dir="\${dir:h}"
165
+ done
166
+ # Fall back to global
167
+ if command -v catladder &>/dev/null; then
168
+ echo "catladder"
169
+ elif command -v catladder-dev &>/dev/null; then
170
+ echo "catladder-dev"
171
+ fi
172
+ }
173
+
174
+ # Run completion with given offset (number of words to skip before CLI args)
175
+ _catladder_do_complete() {
176
+ local skip=$1
177
+ local catladder_bin=$(_catladder_find_binary)
178
+ [[ -z "$catladder_bin" ]] && return
179
+
180
+ local -a completions
181
+ local current_word="\${words[$CURRENT]}"
182
+ local -a cmd_words=(\${words:$skip:$((CURRENT-skip-1))})
183
+
184
+ completions=(\${(f)"$($catladder_bin __complete -- "\${cmd_words[*]}" "$current_word" 2>/dev/null)"})
185
+
186
+ if [[ \${#completions[@]} -gt 0 ]]; then
187
+ compadd -a completions
188
+ fi
189
+ }
190
+
191
+ # catladder <TAB>
192
+ _catladder_completions() { _catladder_do_complete 1; }
193
+
194
+ # yarn catladder <TAB>
195
+ _yarn_catladder_completions() {
196
+ [[ $CURRENT -le 2 || "\${words[2]}" != "catladder" ]] && return
197
+ _catladder_do_complete 2
198
+ }
199
+
200
+ compdef _catladder_completions catladder
201
+ compdef _catladder_completions catladder-dev
202
+ compdef _yarn_catladder_completions yarn
203
+ ###-end-catladder-completions-###
204
+ `.trim();
205
+ }
206
+
207
+ const BEGIN_MARKER = "###-begin-catladder-completions-###";
208
+ const END_MARKER = "###-end-catladder-completions-###";
209
+
210
+ function getZshrcPath(): string {
211
+ return join(homedir(), ".zshrc");
212
+ }
213
+
214
+ /**
215
+ * Install completions by writing the script directly into .zshrc.
216
+ */
217
+ export async function installCompletions(): Promise<void> {
218
+ const zshrcPath = getZshrcPath();
219
+
220
+ let content = "";
221
+ if (existsSync(zshrcPath)) {
222
+ content = readFileSync(zshrcPath, "utf-8");
223
+ }
224
+
225
+ if (content.includes(BEGIN_MARKER)) {
226
+ // Replace existing
227
+ const startIdx = content.indexOf(BEGIN_MARKER);
228
+ const endIdx = content.indexOf(END_MARKER) + END_MARKER.length;
229
+ content =
230
+ content.slice(0, startIdx) +
231
+ generateZshCompletionScript() +
232
+ content.slice(endIdx);
233
+ writeFileSync(zshrcPath, content);
234
+ console.log(`Updated catladder completions in ${zshrcPath}`);
235
+ } else {
236
+ writeFileSync(
237
+ zshrcPath,
238
+ content + "\n" + generateZshCompletionScript() + "\n",
239
+ );
240
+ console.log(`Installed catladder completions in ${zshrcPath}`);
241
+ }
242
+ console.log(`Restart your shell or run: source ${zshrcPath}`);
243
+ }
244
+
245
+ /**
246
+ * Remove completions from .zshrc.
247
+ */
248
+ export async function uninstallCompletions(): Promise<void> {
249
+ const zshrcPath = getZshrcPath();
250
+ if (!existsSync(zshrcPath)) {
251
+ console.log("No .zshrc found");
252
+ return;
253
+ }
254
+
255
+ const content = readFileSync(zshrcPath, "utf-8");
256
+
257
+ if (!content.includes(BEGIN_MARKER)) {
258
+ console.log("No catladder completions found in " + zshrcPath);
259
+ return;
260
+ }
261
+
262
+ const startIdx = content.indexOf(BEGIN_MARKER);
263
+ const endIdx = content.indexOf(END_MARKER) + END_MARKER.length;
264
+ const cleaned = (content.slice(0, startIdx) + content.slice(endIdx)).replace(
265
+ /\n{3,}/g,
266
+ "\n\n",
267
+ );
268
+
269
+ writeFileSync(zshrcPath, cleaned);
270
+ console.log(`Removed catladder completions from ${zshrcPath}`);
271
+ console.log(`Restart your shell or run: source ${zshrcPath}`);
272
+ }
@@ -11,40 +11,30 @@ import {
11
11
  getSecretVarName,
12
12
  } from "@catladder/pipeline";
13
13
 
14
- import type { CommandInstance } from "vorpal";
14
+ import type { IO } from "../core/types";
15
15
  import { getAllVariables, getVariableValueByRawName } from "../utils/gitlab";
16
16
 
17
17
  import { getGitRoot } from "../utils/projects";
18
18
 
19
- import { watch } from "fs";
20
-
21
19
  export { parseChoice } from "./parseChoice";
22
20
 
23
21
  let currentConfig: Config | null = null;
24
22
 
25
- // reload the config on change
26
- const reloadConfigAndObserve = async () => {
23
+ const loadConfig = async () => {
27
24
  const gitRoot = await getGitRoot();
28
25
  if (!gitRoot) {
29
26
  return;
30
27
  }
31
28
  const result = await readConfig(gitRoot);
32
29
  if (!result) {
33
- // can't do anything, there is no config
34
30
  return;
35
31
  }
36
- const { config, path } = result;
37
- const watcher = watch(path, () => {
38
- watcher.close();
39
- reloadConfigAndObserve();
40
- });
41
- currentConfig = config;
32
+ currentConfig = result.config;
42
33
  };
43
34
 
44
35
  export const getProjectConfig = async () => {
45
36
  if (!currentConfig) {
46
- // initially
47
- await reloadConfigAndObserve();
37
+ await loadConfig();
48
38
  }
49
39
  return currentConfig as Config;
50
40
  };
@@ -73,9 +63,7 @@ export const getAllComponentsWithAllEnvsFlat = async (): Promise<
73
63
  if (!config) {
74
64
  return [];
75
65
  }
76
- return Object.keys(config.components).flatMap((componentName) =>
77
- getAllEnvs(config, componentName).map((env) => ({ env, componentName })),
78
- );
66
+ return getAllComponentsWithAllEnvsFlatFromConfig(config);
79
67
  };
80
68
 
81
69
  export const getAllComponentsWithAllEnvsHierarchical = async (): Promise<{
@@ -94,10 +82,22 @@ export const getAllComponentsWithAllEnvsHierarchical = async (): Promise<{
94
82
  );
95
83
  };
96
84
 
97
- export const getAllPipelineContexts = async () => {
85
+ export const getAllPipelineContexts = async (
86
+ onlyComponent?: string | string[],
87
+ { includeLocal = false }: { includeLocal?: boolean } = {},
88
+ ) => {
89
+ const onlyComponentsArray = onlyComponent
90
+ ? Array.isArray(onlyComponent)
91
+ ? onlyComponent
92
+ : [onlyComponent]
93
+ : null;
98
94
  return Promise.all(
99
95
  (await getAllComponentsWithAllEnvsFlat())
100
- .filter((c) => c.env !== "local")
96
+ .filter((c) => includeLocal || c.env !== "local")
97
+ .filter(
98
+ (c) =>
99
+ !onlyComponentsArray || onlyComponentsArray.includes(c.componentName),
100
+ )
101
101
  .map(({ env, componentName }) =>
102
102
  getPipelineContextByChoice(env, componentName),
103
103
  ),
@@ -111,20 +111,20 @@ export const getEnvironment = async (env: string, componentName: string) => {
111
111
  };
112
112
 
113
113
  export const getGitlabVar = async (
114
- vorpal: CommandInstance,
114
+ io: IO,
115
115
  env: string,
116
116
  componentName: string,
117
117
  variableName: string,
118
118
  ) => {
119
119
  const rawVariableName = getSecretVarName(env, componentName, variableName);
120
- return await getVariableValueByRawName(vorpal, rawVariableName);
120
+ return await getVariableValueByRawName(io, rawVariableName);
121
121
  };
122
122
 
123
123
  const resolveSecrets = async (
124
- vorpal: CommandInstance | null,
124
+ io: IO | null,
125
125
  varSets: EnvironmentEnvVars[],
126
126
  ): Promise<Record<string, string>> => {
127
- const allVariablesInGitlab = await getAllVariables(vorpal);
127
+ const allVariablesInGitlab = await getAllVariables(io);
128
128
 
129
129
  return Object.fromEntries(
130
130
  varSets.flatMap(({ envVars, secretEnvVarKeys }) =>
@@ -148,7 +148,7 @@ const resolveSecrets = async (
148
148
  };
149
149
 
150
150
  export const getEnvVarsResolved = async (
151
- vorpal: CommandInstance | null,
151
+ io: IO | null,
152
152
  env: string,
153
153
  componentName: string | null,
154
154
  ) => {
@@ -160,7 +160,7 @@ export const getEnvVarsResolved = async (
160
160
 
161
161
  // in the pipeline the secrets alreadyy exists and bash will expand them
162
162
  // but here we need to manually load them
163
- return resolveSecrets(vorpal, [
163
+ return resolveSecrets(io, [
164
164
  {
165
165
  envVars: envionment.envVars,
166
166
  secretEnvVarKeys: envionment.secretEnvVarKeys,
@@ -173,13 +173,20 @@ export const getEnvVarsResolved = async (
173
173
  * is used to get job only vars that should also be editable locally with catladder.
174
174
  */
175
175
  export const getJobOnlyEnvVarsResolved = async (
176
- vorpal: CommandInstance,
176
+ io: IO,
177
177
  env: string,
178
178
  componentName: string,
179
179
  ) => {
180
180
  const envionment = await getEnvironment(env, componentName);
181
- return resolveSecrets(vorpal, [
181
+ return resolveSecrets(io, [
182
182
  envionment.jobOnlyVars.build,
183
183
  envionment.jobOnlyVars.deploy,
184
184
  ]);
185
185
  };
186
+ function getAllComponentsWithAllEnvsFlatFromConfig(
187
+ config: Config,
188
+ ): { env: string; componentName: string }[] {
189
+ return Object.keys(config.components).flatMap((componentName) =>
190
+ getAllEnvs(config, componentName).map((env) => ({ env, componentName })),
191
+ );
192
+ }