@catladder/pipeline 0.0.0-more-collapse-deeb54d7 → 0.0.0-multiple-gitlab-includes-1a40efc0

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 (597) hide show
  1. package/README.md +17 -0
  2. package/dist/bash/BashExpression.d.ts +36 -0
  3. package/dist/bash/BashExpression.js +114 -0
  4. package/dist/bash/bashEscape.d.ts +34 -0
  5. package/dist/bash/bashEscape.js +114 -0
  6. package/dist/bash/bashExpressionPerPipelineType.d.ts +6 -0
  7. package/dist/bash/bashExpressionPerPipelineType.js +11 -0
  8. package/dist/bash/bashYaml.d.ts +10 -0
  9. package/dist/bash/bashYaml.js +69 -0
  10. package/dist/bash/getInjectVarsScript.d.ts +2 -0
  11. package/dist/bash/getInjectVarsScript.js +47 -0
  12. package/dist/bash/index.d.ts +2 -0
  13. package/dist/bash/index.js +26 -0
  14. package/dist/build/artifacts/createBuildJobArtifact.d.ts +3 -0
  15. package/dist/build/artifacts/createBuildJobArtifact.js +97 -0
  16. package/dist/build/base/__tests__/createArtifactsConfig.test.js +3 -1
  17. package/dist/build/base/constants.d.ts +0 -1
  18. package/dist/build/base/constants.js +4 -3
  19. package/dist/build/base/createAppBuildJob.d.ts +5 -3
  20. package/dist/build/base/createAppBuildJob.js +18 -15
  21. package/dist/build/base/createArtifactsConfig.d.ts +1 -1
  22. package/dist/build/base/createArtifactsConfig.js +3 -1
  23. package/dist/build/base/createBuildJobDefinition.d.ts +6 -0
  24. package/dist/build/base/createBuildJobDefinition.js +58 -0
  25. package/dist/build/base/index.d.ts +7 -4
  26. package/dist/build/base/index.js +17 -6
  27. package/dist/build/base/writeBuildInfo.d.ts +2 -2
  28. package/dist/build/base/writeBuildInfo.js +4 -3
  29. package/dist/build/base/writeDotEnv.d.ts +3 -2
  30. package/dist/build/base/writeDotEnv.js +30 -6
  31. package/dist/build/cache/createJobCache.d.ts +7 -0
  32. package/dist/build/cache/createJobCache.js +115 -0
  33. package/dist/build/cache/getAllCacheConfigsFromConfig.d.ts +3 -0
  34. package/dist/build/cache/getAllCacheConfigsFromConfig.js +64 -0
  35. package/dist/build/cache/transformLegacyJobCache.d.ts +3 -0
  36. package/dist/build/cache/transformLegacyJobCache.js +29 -0
  37. package/dist/build/custom/__tests__/testJob.test.js +15 -16
  38. package/dist/build/custom/buildJob.d.ts +2 -2
  39. package/dist/build/custom/buildJob.js +8 -67
  40. package/dist/build/custom/index.d.ts +2 -2
  41. package/dist/build/custom/index.js +3 -1
  42. package/dist/build/custom/testJob.d.ts +4 -4
  43. package/dist/build/custom/testJob.js +25 -21
  44. package/dist/build/docker.d.ts +48 -39
  45. package/dist/build/docker.js +112 -37
  46. package/dist/build/index.d.ts +14 -7
  47. package/dist/build/index.js +44 -16
  48. package/dist/build/node/buildJob.d.ts +6 -2
  49. package/dist/build/node/buildJob.js +39 -48
  50. package/dist/build/node/cache.d.ts +4 -5
  51. package/dist/build/node/cache.js +18 -23
  52. package/dist/build/node/constants.d.ts +0 -1
  53. package/dist/build/node/constants.js +5 -4
  54. package/dist/build/node/index.d.ts +4 -4
  55. package/dist/build/node/index.js +3 -1
  56. package/dist/build/node/meteor.d.ts +2 -2
  57. package/dist/build/node/meteor.js +10 -12
  58. package/dist/build/node/testJob.d.ts +3 -2
  59. package/dist/build/node/testJob.js +29 -19
  60. package/dist/build/node/yarn.d.ts +3 -2
  61. package/dist/build/node/yarn.js +13 -13
  62. package/dist/build/rails/build.d.ts +2 -2
  63. package/dist/build/rails/build.js +24 -8
  64. package/dist/build/rails/index.d.ts +2 -2
  65. package/dist/build/rails/index.js +3 -1
  66. package/dist/build/rails/test.d.ts +2 -2
  67. package/dist/build/rails/test.js +20 -12
  68. package/dist/build/sbom.d.ts +2 -2
  69. package/dist/build/sbom.js +9 -6
  70. package/dist/build/types.d.ts +152 -47
  71. package/dist/build/types.js +10 -2
  72. package/dist/catladder-gitlab.js +129 -49
  73. package/dist/config/__tests__/configruedEnvs.test.js +3 -1
  74. package/dist/config/__tests__/getAllEnvs.test.js +79 -0
  75. package/dist/config/__tests__/getAllEnvsInAllComponents.test.d.ts +1 -0
  76. package/dist/config/__tests__/getAllEnvsInAllComponents.test.js +73 -0
  77. package/dist/config/configruedEnvs.js +3 -1
  78. package/dist/config/index.js +13 -7
  79. package/dist/config/readConfig.d.ts +2 -2
  80. package/dist/config/readConfig.js +191 -40
  81. package/dist/constants.js +5 -3
  82. package/dist/context/createAllComponentsContext.d.ts +12 -0
  83. package/dist/{pipeline/commitInfo/getCommitInfo.js → context/createAllComponentsContext.js} +35 -19
  84. package/dist/context/createComponentContext.d.ts +11 -0
  85. package/dist/context/createComponentContext.js +255 -0
  86. package/dist/context/createWorkspaceContext.d.ts +16 -0
  87. package/dist/context/createWorkspaceContext.js +173 -0
  88. package/dist/context/getBuildInfoVariables.d.ts +6 -0
  89. package/dist/context/getBuildInfoVariables.js +55 -0
  90. package/dist/context/getEnvConfig.js +5 -2
  91. package/dist/context/getEnvType.js +3 -1
  92. package/dist/context/getEnvironment.d.ts +3 -3
  93. package/dist/context/getEnvironment.js +11 -12
  94. package/dist/context/getEnvironmentContext.d.ts +7 -3
  95. package/dist/context/getEnvironmentContext.js +21 -11
  96. package/dist/context/getEnvironmentVariables.d.ts +22 -5
  97. package/dist/context/getEnvironmentVariables.js +81 -49
  98. package/dist/context/getLabels.d.ts +2 -2
  99. package/dist/context/getLabels.js +9 -7
  100. package/dist/context/getReviewSlug.d.ts +4 -0
  101. package/dist/context/getReviewSlug.js +21 -0
  102. package/dist/context/index.d.ts +2 -4
  103. package/dist/context/index.js +15 -162
  104. package/dist/context/transformJobOnlyVars.d.ts +5 -2
  105. package/dist/context/transformJobOnlyVars.js +4 -2
  106. package/dist/context/utils/envVars.d.ts +1 -1
  107. package/dist/context/utils/envVars.js +5 -2
  108. package/dist/defaults/index.js +3 -1
  109. package/dist/deploy/base/deploy.d.ts +3 -3
  110. package/dist/deploy/base/deploy.js +38 -22
  111. package/dist/deploy/base/index.d.ts +3 -5
  112. package/dist/deploy/base/index.js +3 -1
  113. package/dist/deploy/base/rollback.d.ts +3 -3
  114. package/dist/deploy/base/rollback.js +13 -9
  115. package/dist/deploy/base/stop.d.ts +3 -3
  116. package/dist/deploy/base/stop.js +16 -11
  117. package/dist/deploy/base/types.d.ts +1 -1
  118. package/dist/deploy/base/types.js +3 -1
  119. package/dist/deploy/base/variables.d.ts +0 -1
  120. package/dist/deploy/base/variables.js +4 -3
  121. package/dist/deploy/cloudRun/artifactsRegistry.d.ts +19 -0
  122. package/dist/deploy/cloudRun/artifactsRegistry.js +125 -0
  123. package/dist/deploy/cloudRun/cleanup.d.ts +2 -0
  124. package/dist/deploy/cloudRun/cleanup.js +53 -0
  125. package/dist/deploy/cloudRun/cloudRunRevisions.d.ts +2 -0
  126. package/dist/deploy/cloudRun/cloudRunRevisions.js +62 -0
  127. package/dist/deploy/cloudRun/createJobs/cloudRunJobs.d.ts +7 -0
  128. package/dist/deploy/cloudRun/createJobs/cloudRunJobs.js +207 -0
  129. package/dist/deploy/cloudRun/createJobs/cloudRunServices.d.ts +4 -0
  130. package/dist/deploy/cloudRun/createJobs/cloudRunServices.js +96 -0
  131. package/dist/deploy/cloudRun/createJobs/common.d.ts +18 -0
  132. package/dist/deploy/cloudRun/createJobs/common.js +93 -0
  133. package/dist/deploy/cloudRun/createJobs/constants.d.ts +1 -0
  134. package/dist/deploy/cloudRun/createJobs/constants.js +7 -0
  135. package/dist/deploy/cloudRun/createJobs/getCloudRunDeployScripts.d.ts +2 -0
  136. package/dist/deploy/cloudRun/createJobs/getCloudRunDeployScripts.js +62 -0
  137. package/dist/deploy/cloudRun/createJobs/getCloudRunStopScripts.d.ts +2 -0
  138. package/dist/deploy/cloudRun/createJobs/getCloudRunStopScripts.js +54 -0
  139. package/dist/deploy/cloudRun/createJobs/index.d.ts +3 -0
  140. package/dist/deploy/cloudRun/createJobs/index.js +57 -0
  141. package/dist/deploy/cloudRun/createJobs/volumes.d.ts +3 -0
  142. package/dist/deploy/cloudRun/createJobs/volumes.js +58 -0
  143. package/dist/deploy/cloudRun/index.d.ts +2 -2
  144. package/dist/deploy/cloudRun/index.js +17 -10
  145. package/dist/deploy/cloudRun/utils/createArgsString.d.ts +3 -1
  146. package/dist/deploy/cloudRun/utils/createArgsString.js +25 -17
  147. package/dist/deploy/cloudRun/utils/database.d.ts +6 -4
  148. package/dist/deploy/cloudRun/utils/database.js +28 -15
  149. package/dist/deploy/cloudRun/utils/gcloudServiceAccountLoginCommands.d.ts +2 -2
  150. package/dist/deploy/cloudRun/utils/gcloudServiceAccountLoginCommands.js +4 -2
  151. package/dist/deploy/cloudRun/utils/getServiceName.d.ts +2 -0
  152. package/dist/deploy/cloudRun/utils/getServiceName.js +10 -0
  153. package/dist/deploy/cloudRun/utils/jobName.d.ts +2 -1
  154. package/dist/deploy/cloudRun/utils/jobName.js +4 -2
  155. package/dist/deploy/cloudRun/utils/removeFirstLinesFromCommandOutput.d.ts +9 -0
  156. package/dist/deploy/cloudRun/utils/removeFirstLinesFromCommandOutput.js +18 -0
  157. package/dist/deploy/cloudSql/utils.d.ts +2 -1
  158. package/dist/deploy/cloudSql/utils.js +7 -2
  159. package/dist/deploy/custom/deployJob.d.ts +2 -2
  160. package/dist/deploy/custom/deployJob.js +10 -9
  161. package/dist/deploy/custom/index.d.ts +2 -2
  162. package/dist/deploy/custom/index.js +3 -1
  163. package/dist/deploy/dockerTag/deployJob.d.ts +2 -2
  164. package/dist/deploy/dockerTag/deployJob.js +38 -7
  165. package/dist/deploy/dockerTag/index.d.ts +2 -2
  166. package/dist/deploy/dockerTag/index.js +3 -1
  167. package/dist/deploy/index.d.ts +10 -9
  168. package/dist/deploy/index.js +13 -7
  169. package/dist/deploy/kubernetes/additionalSecretKeys.d.ts +3 -1
  170. package/dist/deploy/kubernetes/additionalSecretKeys.js +3 -1
  171. package/dist/deploy/kubernetes/cloudSql/index.d.ts +6 -5
  172. package/dist/deploy/kubernetes/cloudSql/index.js +14 -21
  173. package/dist/deploy/kubernetes/deployJob.d.ts +2 -2
  174. package/dist/deploy/kubernetes/deployJob.js +23 -22
  175. package/dist/deploy/kubernetes/index.d.ts +2 -2
  176. package/dist/deploy/kubernetes/index.js +52 -15
  177. package/dist/deploy/kubernetes/kubeEnv.d.ts +5 -4
  178. package/dist/deploy/kubernetes/kubeEnv.js +9 -5
  179. package/dist/deploy/kubernetes/kubeValues.d.ts +5 -6
  180. package/dist/deploy/kubernetes/kubeValues.js +16 -18
  181. package/dist/deploy/kubernetes/mongodb.d.ts +2 -2
  182. package/dist/deploy/kubernetes/mongodb.js +14 -12
  183. package/dist/deploy/sbom.d.ts +4 -4
  184. package/dist/deploy/sbom.js +7 -4
  185. package/dist/deploy/types/base.d.ts +5 -5
  186. package/dist/deploy/types/base.js +3 -1
  187. package/dist/deploy/types/custom.d.ts +3 -7
  188. package/dist/deploy/types/custom.js +3 -1
  189. package/dist/deploy/types/dockerTag.d.ts +3 -1
  190. package/dist/deploy/types/dockerTag.js +3 -1
  191. package/dist/deploy/types/googleCloudRun.d.ts +127 -24
  192. package/dist/deploy/types/googleCloudRun.js +3 -1
  193. package/dist/deploy/types/index.d.ts +6 -6
  194. package/dist/deploy/types/index.js +14 -8
  195. package/dist/deploy/types/kubernetes.d.ts +25 -54
  196. package/dist/deploy/types/kubernetes.js +3 -1
  197. package/dist/deploy/utils.d.ts +2 -2
  198. package/dist/deploy/utils.js +5 -2
  199. package/dist/globalScriptFunctions/index.d.ts +14 -0
  200. package/dist/globalScriptFunctions/index.js +37 -0
  201. package/dist/index.d.ts +5 -2
  202. package/dist/index.js +18 -9
  203. package/dist/packageInfos.d.ts +4 -0
  204. package/dist/packageInfos.js +20 -0
  205. package/dist/pipeline/__tests__/getPipelineStages.test.d.ts +1 -0
  206. package/dist/pipeline/__tests__/getPipelineStages.test.js +73 -0
  207. package/dist/pipeline/createAllJobs.d.ts +16 -6
  208. package/dist/pipeline/createAllJobs.js +99 -27
  209. package/dist/pipeline/createJobsForComponent.d.ts +2 -2
  210. package/dist/pipeline/createJobsForComponent.js +9 -149
  211. package/dist/pipeline/createJobsForWorkspace.d.ts +3 -0
  212. package/dist/pipeline/createJobsForWorkspace.js +12 -0
  213. package/dist/pipeline/createMainPipeline.d.ts +3 -0
  214. package/dist/pipeline/createMainPipeline.js +283 -0
  215. package/dist/pipeline/generatePipelineFiles.d.ts +7 -0
  216. package/dist/pipeline/generatePipelineFiles.js +304 -0
  217. package/dist/pipeline/getPipelineStages.d.ts +7 -0
  218. package/dist/pipeline/getPipelineStages.js +56 -0
  219. package/dist/pipeline/gitlab/createGitlabJobs.d.ts +11 -14
  220. package/dist/pipeline/gitlab/createGitlabJobs.js +258 -74
  221. package/dist/pipeline/gitlab/createGitlabPipeline.d.ts +9 -0
  222. package/dist/pipeline/gitlab/createGitlabPipeline.js +77 -0
  223. package/dist/pipeline/gitlab/gitlabReleaseJobs.d.ts +33 -0
  224. package/dist/pipeline/gitlab/gitlabReleaseJobs.js +25 -0
  225. package/dist/pipeline/gitlab/sortGitLabJobDefProps.d.ts +7 -0
  226. package/dist/pipeline/gitlab/sortGitLabJobDefProps.js +27 -0
  227. package/dist/pipeline/index.d.ts +3 -2
  228. package/dist/pipeline/index.js +16 -9
  229. package/dist/pipeline/packageManager.d.ts +3 -2
  230. package/dist/pipeline/packageManager.js +50 -24
  231. package/dist/pipeline/yarn/yarnUtils.d.ts +3 -2
  232. package/dist/pipeline/yarn/yarnUtils.js +65 -17
  233. package/dist/rules/index.d.ts +7 -2
  234. package/dist/rules/index.js +34 -16
  235. package/dist/runner/index.d.ts +1 -1
  236. package/dist/runner/index.js +3 -1
  237. package/dist/tsconfig.tsbuildinfo +1 -1
  238. package/dist/types/config.d.ts +44 -29
  239. package/dist/types/config.js +5 -2
  240. package/dist/types/context.d.ts +124 -40
  241. package/dist/types/context.js +12 -1
  242. package/dist/types/environmentContext.d.ts +15 -12
  243. package/dist/types/environmentContext.js +3 -1
  244. package/dist/types/gitlab-ci-yml.d.ts +30 -30
  245. package/dist/types/gitlab-ci-yml.js +3 -2
  246. package/dist/types/gitlab-types.d.ts +8 -8
  247. package/dist/types/gitlab-types.js +3 -1
  248. package/dist/types/index.d.ts +1 -0
  249. package/dist/types/index.js +14 -7
  250. package/dist/types/jobDefinition.d.ts +11 -0
  251. package/dist/types/jobDefinition.js +5 -0
  252. package/dist/types/jobs.d.ts +30 -15
  253. package/dist/types/jobs.js +3 -1
  254. package/dist/types/pipeline.d.ts +3 -3
  255. package/dist/types/pipeline.js +3 -1
  256. package/dist/types/utils.d.ts +1 -1
  257. package/dist/types/utils.js +3 -1
  258. package/dist/utils/gitlab.js +7 -2
  259. package/dist/utils/index.d.ts +2 -1
  260. package/dist/utils/index.js +10 -3
  261. package/dist/utils/jsonParse.d.ts +1 -0
  262. package/dist/utils/jsonParse.js +14 -0
  263. package/dist/utils/removeUndefined.d.ts +1 -0
  264. package/dist/utils/removeUndefined.js +36 -0
  265. package/dist/utils/writeFiles.d.ts +11 -0
  266. package/dist/{pipeline/commitInfo/getBuildId.js → utils/writeFiles.js} +39 -22
  267. package/dist/variables/VariableValue.d.ts +3 -0
  268. package/dist/variables/VariableValue.js +5 -0
  269. package/dist/variables/VariableValueContainingReferences.d.ts +24 -0
  270. package/dist/variables/VariableValueContainingReferences.js +97 -0
  271. package/dist/variables/__tests__/resolveAllReferences.test.d.ts +1 -0
  272. package/dist/variables/__tests__/resolveAllReferences.test.js +218 -0
  273. package/dist/variables/__tests__/resolveAllReferencesOnce.test.d.ts +1 -0
  274. package/dist/variables/__tests__/resolveAllReferencesOnce.test.js +171 -0
  275. package/dist/variables/__tests__/resolveReferencesOnce.test.d.ts +1 -0
  276. package/dist/variables/__tests__/resolveReferencesOnce.test.js +199 -0
  277. package/dist/variables/__tests__/variableValue.test.d.ts +1 -0
  278. package/dist/variables/__tests__/variableValue.test.js +36 -0
  279. package/dist/variables/resolveAllReferences.d.ts +3 -0
  280. package/dist/{pipeline/createChildPipeline.js → variables/resolveAllReferences.js} +44 -47
  281. package/dist/variables/resolveAllReferencesOnce.d.ts +5 -0
  282. package/dist/variables/resolveAllReferencesOnce.js +191 -0
  283. package/dist/variables/resolveReferencesOnce.d.ts +8 -0
  284. package/dist/variables/resolveReferencesOnce.js +22 -0
  285. package/examples/.test-gen-ignore +1 -0
  286. package/examples/__snapshots__/cloud-run-http2.test.ts.snap +1418 -0
  287. package/examples/__snapshots__/cloud-run-memory-limit.test.ts.snap +1418 -0
  288. package/examples/__snapshots__/cloud-run-meteor-with-worker.test.ts.snap +1418 -0
  289. package/examples/__snapshots__/cloud-run-nextjs.test.ts.snap +1434 -0
  290. package/examples/__snapshots__/cloud-run-no-cpu-throttling.test.ts.snap +1418 -0
  291. package/examples/__snapshots__/cloud-run-no-service.test.ts.snap +1526 -0
  292. package/examples/__snapshots__/cloud-run-non-public.test.ts.snap +1418 -0
  293. package/examples/__snapshots__/cloud-run-post-stop-job.test.ts.snap +1436 -0
  294. package/examples/__snapshots__/cloud-run-service-custom-vpc-connector.test.ts.snap +1418 -0
  295. package/examples/__snapshots__/cloud-run-service-custom-vpc.test.ts.snap +1418 -0
  296. package/examples/__snapshots__/cloud-run-service-gen2.test.ts.snap +1418 -0
  297. package/examples/__snapshots__/cloud-run-service-increase-timout.test.ts.snap +1418 -0
  298. package/examples/__snapshots__/cloud-run-service-with-volumes.test.ts.snap +1490 -0
  299. package/examples/__snapshots__/cloud-run-storybook.test.ts.snap +1302 -0
  300. package/examples/__snapshots__/cloud-run-with-ngnix.test.ts.snap +1418 -0
  301. package/examples/__snapshots__/cloud-run-with-sql-reuse-db.test.ts.snap +2998 -0
  302. package/examples/__snapshots__/cloud-run-with-sql.test.ts.snap +1733 -0
  303. package/examples/__snapshots__/cloud-run-with-worker.test.ts.snap +1426 -0
  304. package/examples/__snapshots__/custom-build-job-with-tests.test.ts.snap +1285 -0
  305. package/examples/__snapshots__/custom-build-job.test.ts.snap +1174 -0
  306. package/examples/__snapshots__/custom-deploy.test.ts.snap +1168 -0
  307. package/examples/__snapshots__/custom-envs.test.ts.snap +798 -0
  308. package/examples/__snapshots__/custom-sbom-java.test.ts.snap +1182 -0
  309. package/examples/__snapshots__/git-submodule.test.ts.snap +1419 -0
  310. package/examples/__snapshots__/kubernetes-application-customization.test.ts.snap +1759 -0
  311. package/examples/__snapshots__/kubernetes-with-cloud-sql.test.ts.snap +1779 -0
  312. package/examples/__snapshots__/kubernetes-with-jobs.test.ts.snap +3357 -0
  313. package/examples/__snapshots__/kubernetes-with-mongodb.test.ts.snap +1883 -0
  314. package/examples/__snapshots__/local-dot-env.test.ts.snap +1342 -0
  315. package/examples/__snapshots__/meteor-kubernetes.test.ts.snap +1836 -0
  316. package/examples/__snapshots__/multiline-var.test.ts.snap +5679 -0
  317. package/examples/__snapshots__/native-app.test.ts.snap +2206 -0
  318. package/examples/__snapshots__/node-build-with-custom-image.test.ts.snap +1418 -0
  319. package/examples/__snapshots__/node-build-with-docker-additions.test.ts.snap +1426 -0
  320. package/examples/__snapshots__/rails-k8s-with-worker-dockerfile.test.ts.snap +1487 -0
  321. package/examples/__snapshots__/rails-k8s-with-worker.test.ts.snap +1471 -0
  322. package/examples/__snapshots__/referencing-other-vars.test.ts.snap +4739 -0
  323. package/examples/__snapshots__/wait-for-other-deploy.test.ts.snap +1368 -0
  324. package/examples/__snapshots__/workspace-api-www-turbo-cache.test.ts.snap +2338 -0
  325. package/examples/__snapshots__/workspace-api-www.test.ts.snap +2330 -0
  326. package/examples/__utils__/helpers.ts +9 -12
  327. package/examples/cloud-run-http2.test.ts +11 -0
  328. package/examples/cloud-run-http2.ts +29 -0
  329. package/examples/cloud-run-memory-limit.test.ts +11 -0
  330. package/examples/cloud-run-memory-limit.ts +10 -5
  331. package/examples/cloud-run-meteor-with-worker.test.ts +11 -0
  332. package/examples/cloud-run-meteor-with-worker.ts +37 -0
  333. package/examples/cloud-run-nextjs.test.ts +11 -0
  334. package/examples/cloud-run-nextjs.ts +28 -0
  335. package/examples/cloud-run-no-cpu-throttling.test.ts +11 -0
  336. package/examples/cloud-run-no-cpu-throttling.ts +6 -4
  337. package/examples/cloud-run-no-service.test.ts +11 -0
  338. package/examples/cloud-run-no-service.ts +33 -0
  339. package/examples/cloud-run-non-public.test.ts +11 -0
  340. package/examples/cloud-run-non-public.ts +5 -4
  341. package/examples/cloud-run-post-stop-job.test.ts +11 -0
  342. package/examples/cloud-run-post-stop-job.ts +42 -0
  343. package/examples/cloud-run-service-custom-vpc-connector.test.ts +11 -0
  344. package/examples/cloud-run-service-custom-vpc-connector.ts +30 -0
  345. package/examples/cloud-run-service-custom-vpc.test.ts +11 -0
  346. package/examples/cloud-run-service-custom-vpc.ts +31 -0
  347. package/examples/cloud-run-service-gen2.test.ts +11 -0
  348. package/examples/cloud-run-service-gen2.ts +29 -0
  349. package/examples/cloud-run-service-increase-timout.test.ts +11 -0
  350. package/examples/cloud-run-service-increase-timout.ts +29 -0
  351. package/examples/cloud-run-service-with-volumes.test.ts +11 -0
  352. package/examples/cloud-run-service-with-volumes.ts +56 -0
  353. package/examples/cloud-run-storybook.test.ts +11 -0
  354. package/examples/cloud-run-storybook.ts +33 -0
  355. package/examples/cloud-run-with-ngnix.test.ts +11 -0
  356. package/examples/cloud-run-with-ngnix.ts +29 -0
  357. package/examples/cloud-run-with-sql-reuse-db.test.ts +11 -0
  358. package/examples/cloud-run-with-sql-reuse-db.ts +5 -4
  359. package/examples/cloud-run-with-sql.test.ts +11 -0
  360. package/examples/cloud-run-with-sql.ts +6 -20
  361. package/examples/cloud-run-with-worker.test.ts +11 -0
  362. package/examples/cloud-run-with-worker.ts +37 -0
  363. package/examples/custom-build-job-with-tests.test.ts +11 -0
  364. package/examples/custom-build-job-with-tests.ts +5 -4
  365. package/examples/custom-build-job.test.ts +11 -0
  366. package/examples/custom-build-job.ts +5 -4
  367. package/examples/custom-deploy.test.ts +11 -0
  368. package/examples/custom-deploy.ts +12 -4
  369. package/examples/custom-envs.test.ts +11 -0
  370. package/examples/custom-envs.ts +5 -4
  371. package/examples/custom-sbom-java.test.ts +11 -0
  372. package/examples/custom-sbom-java.ts +10 -6
  373. package/examples/git-submodule.test.ts +11 -0
  374. package/examples/git-submodule.ts +30 -0
  375. package/examples/kubernetes-application-customization.test.ts +11 -0
  376. package/examples/kubernetes-application-customization.ts +7 -4
  377. package/examples/kubernetes-with-cloud-sql.test.ts +11 -0
  378. package/examples/kubernetes-with-cloud-sql.ts +7 -4
  379. package/examples/kubernetes-with-jobs.test.ts +11 -0
  380. package/examples/kubernetes-with-jobs.ts +7 -4
  381. package/examples/kubernetes-with-mongodb.test.ts +11 -0
  382. package/examples/kubernetes-with-mongodb.ts +7 -4
  383. package/examples/local-dot-env.test.ts +11 -0
  384. package/examples/local-dot-env.ts +27 -0
  385. package/examples/meteor-kubernetes.test.ts +11 -0
  386. package/examples/meteor-kubernetes.ts +4 -5
  387. package/examples/multiline-var.test.ts +11 -0
  388. package/examples/multiline-var.ts +107 -0
  389. package/examples/native-app.test.ts +11 -0
  390. package/examples/native-app.ts +22 -17
  391. package/examples/node-build-with-custom-image.test.ts +11 -0
  392. package/examples/node-build-with-custom-image.ts +5 -4
  393. package/examples/node-build-with-docker-additions.test.ts +11 -0
  394. package/examples/node-build-with-docker-additions.ts +29 -0
  395. package/examples/rails-k8s-with-worker-dockerfile.test.ts +33 -0
  396. package/examples/rails-k8s-with-worker.test.ts +11 -0
  397. package/examples/rails-k8s-with-worker.ts +14 -11
  398. package/examples/referencing-other-vars.test.ts +11 -0
  399. package/examples/referencing-other-vars.ts +83 -0
  400. package/examples/wait-for-other-deploy.test.ts +11 -0
  401. package/examples/wait-for-other-deploy.ts +5 -4
  402. package/examples/workspace-api-www-turbo-cache.test.ts +11 -0
  403. package/examples/workspace-api-www-turbo-cache.ts +52 -0
  404. package/examples/workspace-api-www.test.ts +11 -0
  405. package/examples/workspace-api-www.ts +46 -0
  406. package/package.json +75 -26
  407. package/scripts/generate-examples-test.ts +84 -0
  408. package/scripts/generate-gitlab-ci-types.ts +2 -2
  409. package/scripts/tsconfig.json +7 -0
  410. package/src/bash/BashExpression.ts +78 -0
  411. package/src/bash/bashEscape.ts +158 -0
  412. package/src/bash/bashExpressionPerPipelineType.ts +16 -0
  413. package/src/bash/bashYaml.ts +80 -0
  414. package/src/bash/getInjectVarsScript.ts +21 -0
  415. package/src/bash/index.ts +2 -0
  416. package/src/build/artifacts/createBuildJobArtifact.ts +61 -0
  417. package/src/build/base/__tests__/createArtifactsConfig.test.ts +3 -3
  418. package/src/build/base/constants.ts +2 -2
  419. package/src/build/base/createAppBuildJob.ts +40 -24
  420. package/src/build/base/createArtifactsConfig.ts +2 -2
  421. package/src/build/base/createBuildJobDefinition.ts +37 -0
  422. package/src/build/base/index.ts +37 -8
  423. package/src/build/base/writeBuildInfo.ts +3 -3
  424. package/src/build/base/writeDotEnv.ts +25 -6
  425. package/src/build/cache/createJobCache.ts +83 -0
  426. package/src/build/cache/getAllCacheConfigsFromConfig.ts +28 -0
  427. package/src/build/cache/transformLegacyJobCache.ts +14 -0
  428. package/src/build/custom/__tests__/testJob.test.ts +10 -13
  429. package/src/build/custom/buildJob.ts +11 -37
  430. package/src/build/custom/index.ts +2 -2
  431. package/src/build/custom/testJob.ts +24 -22
  432. package/src/build/docker.ts +145 -49
  433. package/src/build/index.ts +42 -10
  434. package/src/build/node/buildJob.ts +65 -62
  435. package/src/build/node/cache.ts +30 -35
  436. package/src/build/node/constants.ts +2 -3
  437. package/src/build/node/index.ts +8 -4
  438. package/src/build/node/meteor.ts +16 -24
  439. package/src/build/node/testJob.ts +47 -26
  440. package/src/build/node/yarn.ts +32 -16
  441. package/src/build/rails/build.ts +21 -9
  442. package/src/build/rails/index.ts +2 -2
  443. package/src/build/rails/test.ts +22 -12
  444. package/src/build/sbom.ts +15 -10
  445. package/src/build/types.ts +190 -47
  446. package/src/catladder-gitlab.ts +7 -56
  447. package/src/config/__tests__/__snapshots__/getAllEnvs.test.ts.snap +31 -0
  448. package/src/config/__tests__/__snapshots__/getAllEnvsInAllComponents.test.ts.snap +15 -0
  449. package/src/config/__tests__/getAllEnvs.test.ts +71 -0
  450. package/src/config/__tests__/getAllEnvsInAllComponents.test.ts +63 -0
  451. package/src/config/configruedEnvs.ts +6 -6
  452. package/src/config/readConfig.ts +15 -22
  453. package/src/constants.ts +5 -2
  454. package/src/context/createAllComponentsContext.ts +31 -0
  455. package/src/context/createComponentContext.ts +134 -0
  456. package/src/context/createWorkspaceContext.ts +56 -0
  457. package/src/context/getBuildInfoVariables.ts +36 -0
  458. package/src/context/getEnvConfig.ts +3 -3
  459. package/src/context/getEnvType.ts +1 -1
  460. package/src/context/getEnvironment.ts +8 -24
  461. package/src/context/getEnvironmentContext.ts +25 -29
  462. package/src/context/getEnvironmentVariables.ts +104 -76
  463. package/src/context/getLabels.ts +5 -5
  464. package/src/context/getReviewSlug.ts +27 -0
  465. package/src/context/index.ts +1 -65
  466. package/src/context/transformJobOnlyVars.ts +6 -3
  467. package/src/context/utils/envVars.ts +5 -4
  468. package/src/deploy/base/deploy.ts +63 -47
  469. package/src/deploy/base/index.ts +11 -6
  470. package/src/deploy/base/rollback.ts +11 -16
  471. package/src/deploy/base/stop.ts +11 -15
  472. package/src/deploy/base/variables.ts +1 -2
  473. package/src/deploy/cloudRun/artifactsRegistry.ts +126 -0
  474. package/src/deploy/cloudRun/cleanup.ts +30 -0
  475. package/src/deploy/cloudRun/cloudRunRevisions.ts +65 -0
  476. package/src/deploy/cloudRun/createJobs/cloudRunJobs.ts +227 -0
  477. package/src/deploy/cloudRun/createJobs/cloudRunServices.ts +86 -0
  478. package/src/deploy/cloudRun/createJobs/common.ts +59 -0
  479. package/src/deploy/cloudRun/createJobs/constants.ts +1 -0
  480. package/src/deploy/cloudRun/createJobs/getCloudRunDeployScripts.ts +71 -0
  481. package/src/deploy/cloudRun/createJobs/getCloudRunStopScripts.ts +34 -0
  482. package/src/deploy/cloudRun/createJobs/index.ts +51 -0
  483. package/src/deploy/cloudRun/createJobs/volumes.ts +23 -0
  484. package/src/deploy/cloudRun/index.ts +85 -59
  485. package/src/deploy/cloudRun/utils/createArgsString.ts +21 -13
  486. package/src/deploy/cloudRun/utils/database.ts +31 -9
  487. package/src/deploy/cloudRun/utils/gcloudServiceAccountLoginCommands.ts +9 -11
  488. package/src/deploy/cloudRun/utils/getServiceName.ts +3 -0
  489. package/src/deploy/cloudRun/utils/jobName.ts +7 -2
  490. package/src/deploy/cloudRun/utils/removeFirstLinesFromCommandOutput.ts +12 -0
  491. package/src/deploy/cloudSql/utils.ts +13 -10
  492. package/src/deploy/custom/deployJob.ts +15 -10
  493. package/src/deploy/custom/index.ts +2 -2
  494. package/src/deploy/dockerTag/deployJob.ts +7 -8
  495. package/src/deploy/dockerTag/index.ts +8 -7
  496. package/src/deploy/index.ts +15 -12
  497. package/src/deploy/kubernetes/additionalSecretKeys.ts +3 -1
  498. package/src/deploy/kubernetes/cloudSql/index.ts +16 -25
  499. package/src/deploy/kubernetes/deployJob.ts +30 -21
  500. package/src/deploy/kubernetes/index.ts +43 -35
  501. package/src/deploy/kubernetes/kubeEnv.ts +12 -10
  502. package/src/deploy/kubernetes/kubeValues.ts +15 -19
  503. package/src/deploy/kubernetes/mongodb.ts +15 -15
  504. package/src/deploy/sbom.ts +18 -10
  505. package/src/deploy/types/base.ts +3 -3
  506. package/src/deploy/types/custom.ts +3 -7
  507. package/src/deploy/types/dockerTag.ts +2 -0
  508. package/src/deploy/types/googleCloudRun.ts +133 -10
  509. package/src/deploy/types/index.ts +2 -2
  510. package/src/deploy/types/kubernetes.ts +5 -36
  511. package/src/deploy/utils.ts +5 -5
  512. package/src/globalScriptFunctions/index.ts +30 -0
  513. package/src/index.ts +4 -1
  514. package/src/packageInfos.ts +14 -0
  515. package/src/pipeline/__tests__/__snapshots__/getPipelineStages.test.ts.snap +69 -0
  516. package/src/pipeline/__tests__/getPipelineStages.test.ts +63 -0
  517. package/src/pipeline/createAllJobs.ts +67 -33
  518. package/src/pipeline/createJobsForComponent.ts +10 -38
  519. package/src/pipeline/createJobsForWorkspace.ts +12 -0
  520. package/src/pipeline/createMainPipeline.ts +119 -0
  521. package/src/pipeline/generatePipelineFiles.ts +100 -0
  522. package/src/pipeline/getPipelineStages.ts +23 -0
  523. package/src/pipeline/gitlab/createGitlabJobs.ts +388 -108
  524. package/src/pipeline/gitlab/createGitlabPipeline.ts +35 -0
  525. package/src/pipeline/gitlab/gitlabReleaseJobs.ts +23 -0
  526. package/src/pipeline/gitlab/sortGitLabJobDefProps.ts +59 -0
  527. package/src/pipeline/index.ts +2 -1
  528. package/src/pipeline/packageManager.ts +44 -26
  529. package/src/pipeline/yarn/yarnUtils.ts +39 -10
  530. package/src/rules/index.ts +36 -9
  531. package/src/runner/index.ts +0 -1
  532. package/src/types/config.ts +43 -16
  533. package/src/types/context.ts +165 -37
  534. package/src/types/environmentContext.ts +18 -13
  535. package/src/types/gitlab-ci-yml.ts +0 -1
  536. package/src/types/gitlab-types.ts +10 -7
  537. package/src/types/index.ts +1 -0
  538. package/src/types/jobDefinition.ts +34 -0
  539. package/src/types/jobs.ts +31 -15
  540. package/src/types/utils.ts +4 -4
  541. package/src/utils/gitlab.ts +20 -3
  542. package/src/utils/index.ts +6 -3
  543. package/src/utils/jsonParse.ts +7 -0
  544. package/src/utils/removeUndefined.ts +4 -0
  545. package/src/utils/writeFiles.ts +52 -0
  546. package/src/variables/VariableValue.ts +6 -0
  547. package/src/variables/VariableValueContainingReferences.ts +89 -0
  548. package/src/variables/__tests__/resolveAllReferences.test.ts +110 -0
  549. package/src/variables/__tests__/resolveAllReferencesOnce.test.ts +64 -0
  550. package/src/variables/__tests__/resolveReferencesOnce.test.ts +117 -0
  551. package/src/variables/__tests__/variableValue.test.ts +73 -0
  552. package/src/variables/resolveAllReferences.ts +46 -0
  553. package/src/variables/resolveAllReferencesOnce.ts +44 -0
  554. package/src/variables/resolveReferencesOnce.ts +29 -0
  555. package/bin/catladder-gitlab-dev.js +0 -3
  556. package/bin/catladder-gitlab.js +0 -3
  557. package/dist/bundles/catladder-gitlab/index.js +0 -33838
  558. package/dist/context/__tests__/resolveReferences.test.js +0 -336
  559. package/dist/context/resolveReferences.d.ts +0 -4
  560. package/dist/context/resolveReferences.js +0 -254
  561. package/dist/deploy/cloudRun/deployJob.d.ts +0 -3
  562. package/dist/deploy/cloudRun/deployJob.js +0 -248
  563. package/dist/deploy/kubernetes/processSecretsAsFiles.d.ts +0 -84
  564. package/dist/deploy/kubernetes/processSecretsAsFiles.js +0 -31
  565. package/dist/pipeline/commitInfo/getBuildId.d.ts +0 -6
  566. package/dist/pipeline/commitInfo/getCommitInfo.d.ts +0 -2
  567. package/dist/pipeline/createChildPipeline.d.ts +0 -3
  568. package/examples/__snapshots__/cloud-run-memory-limit.ts.snap +0 -1780
  569. package/examples/__snapshots__/cloud-run-no-cpu-throttling.ts.snap +0 -1780
  570. package/examples/__snapshots__/cloud-run-non-public.ts.snap +0 -1780
  571. package/examples/__snapshots__/cloud-run-with-sql-reuse-db.ts.snap +0 -3532
  572. package/examples/__snapshots__/cloud-run-with-sql.ts.snap +0 -3543
  573. package/examples/__snapshots__/custom-build-job-with-tests.ts.snap +0 -1656
  574. package/examples/__snapshots__/custom-build-job.ts.snap +0 -1362
  575. package/examples/__snapshots__/custom-deploy.ts.snap +0 -1556
  576. package/examples/__snapshots__/custom-envs.ts.snap +0 -1050
  577. package/examples/__snapshots__/custom-sbom-java.ts.snap +0 -1370
  578. package/examples/__snapshots__/kubernetes-application-customization.ts.snap +0 -2468
  579. package/examples/__snapshots__/kubernetes-with-cloud-sql-legacy.ts.snap +0 -2428
  580. package/examples/__snapshots__/kubernetes-with-cloud-sql.ts.snap +0 -2440
  581. package/examples/__snapshots__/kubernetes-with-jobs.ts.snap +0 -4453
  582. package/examples/__snapshots__/kubernetes-with-mongodb.ts.snap +0 -2632
  583. package/examples/__snapshots__/meteor-kubernetes.ts.snap +0 -2557
  584. package/examples/__snapshots__/native-app.ts.snap +0 -2878
  585. package/examples/__snapshots__/node-build-with-custom-image.ts.snap +0 -1780
  586. package/examples/__snapshots__/rails-k8s-with-worker.ts.snap +0 -4189
  587. package/examples/__snapshots__/wait-for-other-deploy.ts.snap +0 -1922
  588. package/examples/kubernetes-with-cloud-sql-legacy.ts +0 -33
  589. package/scripts/bundle +0 -2
  590. package/src/context/__tests__/resolveReferences.test.ts +0 -143
  591. package/src/context/resolveReferences.ts +0 -70
  592. package/src/deploy/cloudRun/deployJob.ts +0 -301
  593. package/src/deploy/kubernetes/processSecretsAsFiles.ts +0 -34
  594. package/src/pipeline/commitInfo/getBuildId.ts +0 -17
  595. package/src/pipeline/commitInfo/getCommitInfo.ts +0 -15
  596. package/src/pipeline/createChildPipeline.ts +0 -45
  597. /package/dist/{context/__tests__/resolveReferences.test.d.ts → config/__tests__/getAllEnvs.test.d.ts} +0 -0
@@ -1,6 +1,8 @@
1
+ import type { BuildConfig } from "../../build";
1
2
  import type { EnvironmentContext } from "../../types/environmentContext";
3
+ import type { DeployConfigKubernetes } from "../types";
2
4
  export declare const additionalKubernetesSecretKeys: ({
3
5
  deployConfigRaw
4
- }: EnvironmentContext<any, "kubernetes">) => {
6
+ }: EnvironmentContext<BuildConfig, DeployConfigKubernetes>) => {
5
7
  key: string;
6
8
  }[];
@@ -1,6 +1,8 @@
1
1
  "use strict";
2
2
 
3
- exports.__esModule = true;
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
4
6
  exports.additionalKubernetesSecretKeys = void 0;
5
7
  var additionalKubernetesSecretKeys = function (_a) {
6
8
  var _b, _c, _d, _e;
@@ -1,13 +1,14 @@
1
- import type { Context } from "../../../types";
2
- export declare const hasKubernetesCloudSQL: (context: Context) => boolean | undefined;
3
- declare type CloudSqlValues = {
1
+ import type { ComponentContext } from "../../../types";
2
+ import type { VariableValue } from "../../../variables/VariableValue";
3
+ export declare const hasKubernetesCloudSQL: (context: ComponentContext) => boolean | undefined;
4
+ type CloudSqlValues = {
4
5
  enabled: boolean;
5
6
  proxyCredentials: string;
6
7
  instanceConnectionName: string;
7
- fullDbName: string;
8
+ fullDbName: VariableValue;
8
9
  dbUser: string;
9
10
  };
10
- export declare const createKubernetesCloudsqlBaseValues: (context: Context) => {
11
+ export declare const createKubernetesCloudsqlBaseValues: (context: ComponentContext) => {
11
12
  cloudsql: CloudSqlValues;
12
13
  };
13
14
  export {};
@@ -1,47 +1,40 @@
1
1
  "use strict";
2
2
 
3
- exports.__esModule = true;
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
4
6
  exports.createKubernetesCloudsqlBaseValues = exports.hasKubernetesCloudSQL = void 0;
5
7
  var context_1 = require("../../../context");
6
8
  var utils_1 = require("../../cloudSql/utils");
7
9
  var types_1 = require("../../types");
8
10
  var hasKubernetesCloudSQL = function (context) {
9
- var _a, _b;
10
- if ((0, types_1.isOfDeployType)(context.componentConfig.deploy, "kubernetes")) {
11
- return (_b = (_a = context.componentConfig.deploy.values) === null || _a === void 0 ? void 0 : _a.cloudsql) === null || _b === void 0 ? void 0 : _b.enabled;
11
+ var _a, _b, _c;
12
+ var deployConfig = (_a = context.deploy) === null || _a === void 0 ? void 0 : _a.config;
13
+ if ((0, types_1.isOfDeployType)(deployConfig, "kubernetes")) {
14
+ return (_c = (_b = deployConfig.values) === null || _b === void 0 ? void 0 : _b.cloudsql) === null || _c === void 0 ? void 0 : _c.enabled;
12
15
  }
13
16
  return false;
14
17
  };
15
18
  exports.hasKubernetesCloudSQL = hasKubernetesCloudSQL;
16
19
  var createKubernetesCloudsqlBaseValues = function (context) {
17
- var _a, _b, _c, _d, _e;
18
- if (!(0, types_1.isOfDeployType)(context.componentConfig.deploy, "kubernetes")) {
20
+ var _a, _b, _c;
21
+ var deployConfig = (_a = context.deploy) === null || _a === void 0 ? void 0 : _a.config;
22
+ if (!(0, types_1.isOfDeployType)(deployConfig, "kubernetes")) {
19
23
  throw new Error("cannot get cloud sql config");
20
24
  }
21
- var config = (_a = context.componentConfig.deploy.values) === null || _a === void 0 ? void 0 : _a.cloudsql;
25
+ var config = (_b = deployConfig.values) === null || _b === void 0 ? void 0 : _b.cloudsql;
22
26
  if (!config) {
23
27
  throw new Error("cannot get cloud sql config");
24
28
  }
25
29
  var proxyCredentials = "$".concat((0, context_1.getSecretVarNameForContext)(context, "cloudsqlProxyCredentials"));
26
- if ((config === null || config === void 0 ? void 0 : config.type) !== "unmanaged") {
27
- var instanceConnectionName = "".concat((_b = config.projectId) !== null && _b !== void 0 ? _b : "skynet-164509", ":").concat((_c = config.region) !== null && _c !== void 0 ? _c : "europe-west6", ":").concat((_d = config.instanceId) !== null && _d !== void 0 ? _d : context.environment.envVars.KUBE_NAMESPACE);
30
+ if (config.type === "unmanaged") {
28
31
  return {
29
32
  cloudsql: {
30
33
  enabled: config.enabled,
31
- dbUser: "postgres",
32
- instanceConnectionName: instanceConnectionName,
33
- proxyCredentials: proxyCredentials,
34
- fullDbName: context.environment.envVars.KUBE_APP_NAME
35
- }
36
- };
37
- } else if (config.type === "unmanaged") {
38
- return {
39
- cloudsql: {
40
- enabled: config.enabled,
41
- dbUser: (_e = config.dbUser) !== null && _e !== void 0 ? _e : "postgres",
34
+ dbUser: (_c = config.dbUser) !== null && _c !== void 0 ? _c : "postgres",
42
35
  instanceConnectionName: config.instanceConnectionName,
43
36
  proxyCredentials: proxyCredentials,
44
- fullDbName: (0, utils_1.getFullDbName)(config, context.fullConfig, context.environment.slugPrefix, context.componentName)
37
+ fullDbName: (0, utils_1.getFullDbName)(config, context.fullConfig, context.environment.slugPrefix, context.name)
45
38
  }
46
39
  };
47
40
  } else {
@@ -1,3 +1,3 @@
1
- import type { Context } from "../../types/context";
1
+ import type { ComponentContext } from "../../types/context";
2
2
  import type { CatladderJob } from "../../types/jobs";
3
- export declare const createKubernetesDeployJobs: (context: Context) => CatladderJob[];
3
+ export declare const createKubernetesDeployJobs: (context: ComponentContext) => CatladderJob[];
@@ -41,48 +41,49 @@ var __spreadArray = this && this.__spreadArray || function (to, from, pack) {
41
41
  }
42
42
  return to.concat(ar || Array.prototype.slice.call(from));
43
43
  };
44
- exports.__esModule = true;
44
+ Object.defineProperty(exports, "__esModule", {
45
+ value: true
46
+ });
45
47
  exports.createKubernetesDeployJobs = void 0;
46
- var js_yaml_1 = require("js-yaml");
48
+ var getEnvironmentVariables_1 = require("../../context/getEnvironmentVariables");
47
49
  var runner_1 = require("../../runner");
48
50
  var base_1 = require("../base");
49
51
  var sbom_1 = require("../sbom");
50
52
  var types_1 = require("../types");
51
53
  var kubeValues_1 = require("./kubeValues");
52
- var getEnvironmentVariables_1 = require("../../context/getEnvironmentVariables");
54
+ var bashYaml_1 = require("../../bash/bashYaml");
55
+ var gitlab_1 = require("../../utils/gitlab");
56
+ var ALL_VALUES_FILE = "__all_values.yml";
53
57
  var createKubernetesDeployJobs = function (context) {
54
58
  var _a, _b, _c;
55
- var deployConfig = context.componentConfig.deploy;
56
- if (deployConfig === false) {
57
- return [];
58
- }
59
+ var deployConfig = (_a = context.deploy) === null || _a === void 0 ? void 0 : _a.config;
59
60
  if (!(0, types_1.isOfDeployType)(deployConfig, "kubernetes")) {
60
61
  // should not happen
61
62
  throw new Error("deploy config is not kubernetes");
62
63
  }
63
- var kubeValues = (0, kubeValues_1.createKubeValues)(context);
64
- var shared = {
65
- image: (0, runner_1.getRunnerImage)("kubernetes"),
64
+ var shared = __assign(__assign({
65
+ image: (0, runner_1.getRunnerImage)("kubernetes")
66
+ }, deployConfig.debug ? {
67
+ artifacts: {
68
+ paths: [ALL_VALUES_FILE // debug
69
+ ],
70
+ when: "always"
71
+ }
72
+ } : {}), {
66
73
  variables: __assign(__assign({}, context.environment.envVars), {
67
74
  RELEASE_NAME: context.environment.fullName,
68
75
  HELM_EXPERIMENTAL_OCI: "1",
69
- KUBE_DOCKER_IMAGE_PULL_SECRET: "gitlab-registry-".concat(context.componentName),
70
- KUBE_VALUES: (0, js_yaml_1.dump)(kubeValues, {
71
- lineWidth: -1,
72
- quotingType: "'",
73
- forceQuotes: true
74
- }),
75
- HELM_GITLAB_CHART_NAME: (_a = deployConfig.chartName) !== null && _a !== void 0 ? _a : "/helm-charts/the-panter-chart",
76
- HELM_ARGS: __spreadArray(__spreadArray([], __read(deployConfig.debug ? ["--debug"] : []), false), __read((_b = deployConfig.additionalHelmArgs) !== null && _b !== void 0 ? _b : []), false).join(" "),
77
- COMPONENT_NAME: context.componentName,
78
- BUILD_ID: (_c = context.commitInfo) === null || _c === void 0 ? void 0 : _c.buildId
76
+ KUBE_DOCKER_IMAGE_PULL_SECRET: "gitlab-registry-".concat(context.name),
77
+ HELM_GITLAB_CHART_NAME: (_b = deployConfig.chartName) !== null && _b !== void 0 ? _b : "/helm-charts/the-panter-chart",
78
+ HELM_ARGS: __spreadArray(__spreadArray([], __read(deployConfig.debug ? ["--debug"] : []), false), __read((_c = deployConfig.additionalHelmArgs) !== null && _c !== void 0 ? _c : []), false).join(" "),
79
+ COMPONENT_NAME: context.name
79
80
  })
80
- };
81
+ });
81
82
  var clusterName = "kube-".concat(context.environment.fullName);
82
83
  var connectContext = ["kubectl config set-cluster \"".concat(clusterName, "\" --server=\"$").concat((0, getEnvironmentVariables_1.getSecretVarNameForContext)(context, "KUBE_URL"), "\" --certificate-authority <(echo $").concat((0, getEnvironmentVariables_1.getSecretVarNameForContext)(context, "KUBE_CA_PEM"), " | base64 -d) --embed-certs=true"), "kubectl config set-credentials \"".concat(clusterName, "\" --token=\"$").concat((0, getEnvironmentVariables_1.getSecretVarNameForContext)(context, "KUBE_TOKEN"), "\""), "kubectl config set-context \"".concat(clusterName, "\" --cluster=\"").concat(clusterName, "\" --user=\"").concat(clusterName, "\" --namespace=\"").concat(context.environment.envVars.KUBE_NAMESPACE, "\""), "kubectl config use-context \"".concat(clusterName, "\"")];
83
84
  return (0, base_1.createDeployementJobs)(context, {
84
85
  deploy: __assign(__assign({}, shared), {
85
- script: __spreadArray(__spreadArray(__spreadArray(__spreadArray([], __read(connectContext), false), ["kubernetesCreateSecret", "kubernetesDeploy"], false), __read((0, sbom_1.getDependencyTrackUploadScript)(context)), false), ["echo deployment successful 😻"], false)
86
+ script: __spreadArray(__spreadArray(__spreadArray(__spreadArray(__spreadArray([], __read(connectContext), false), __read((0, gitlab_1.collapseableSection)("writeallvalues", "Write " + ALL_VALUES_FILE + " for helm deployment")((0, bashYaml_1.writeBashYamlToFileScript)((0, kubeValues_1.createKubeValues)(context), ALL_VALUES_FILE))), false), ["kubernetesCreateSecret", "kubernetesDeploy"], false), __read((0, sbom_1.getDependencyTrackUploadScript)(context)), false), ["echo deployment successful 😻"], false)
86
87
  }),
87
88
  stop: __assign(__assign({}, shared), {
88
89
  script: __spreadArray(__spreadArray(__spreadArray([], __read(connectContext), false), ["kubernetesDelete"], false), __read((0, sbom_1.getDependencyTrackDeleteScript)(context)), false)
@@ -1,3 +1,3 @@
1
- import type { DeployTypeDefinition } from "..";
1
+ import type { DeployConfigKubernetes, DeployTypeDefinition } from "..";
2
2
  export * from "./cloudSql";
3
- export declare const KUBERNETES_DEPLOY_TYPE: DeployTypeDefinition<"kubernetes">;
3
+ export declare const KUBERNETES_DEPLOY_TYPE: DeployTypeDefinition<DeployConfigKubernetes>;
@@ -2,12 +2,16 @@
2
2
 
3
3
  var __createBinding = this && this.__createBinding || (Object.create ? function (o, m, k, k2) {
4
4
  if (k2 === undefined) k2 = k;
5
- Object.defineProperty(o, k2, {
6
- enumerable: true,
7
- get: function () {
8
- return m[k];
9
- }
10
- });
5
+ var desc = Object.getOwnPropertyDescriptor(m, k);
6
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
7
+ desc = {
8
+ enumerable: true,
9
+ get: function () {
10
+ return m[k];
11
+ }
12
+ };
13
+ }
14
+ Object.defineProperty(o, k2, desc);
11
15
  } : function (o, m, k, k2) {
12
16
  if (k2 === undefined) k2 = k;
13
17
  o[k2] = m[k];
@@ -15,15 +19,49 @@ var __createBinding = this && this.__createBinding || (Object.create ? function
15
19
  var __exportStar = this && this.__exportStar || function (m, exports) {
16
20
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
17
21
  };
22
+ var __read = this && this.__read || function (o, n) {
23
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
24
+ if (!m) return o;
25
+ var i = m.call(o),
26
+ r,
27
+ ar = [],
28
+ e;
29
+ try {
30
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
31
+ } catch (error) {
32
+ e = {
33
+ error: error
34
+ };
35
+ } finally {
36
+ try {
37
+ if (r && !r.done && (m = i["return"])) m.call(i);
38
+ } finally {
39
+ if (e) throw e.error;
40
+ }
41
+ }
42
+ return ar;
43
+ };
44
+ var __spreadArray = this && this.__spreadArray || function (to, from, pack) {
45
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
46
+ if (ar || !(i in from)) {
47
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
48
+ ar[i] = from[i];
49
+ }
50
+ }
51
+ return to.concat(ar || Array.prototype.slice.call(from));
52
+ };
18
53
  var __importDefault = this && this.__importDefault || function (mod) {
19
54
  return mod && mod.__esModule ? mod : {
20
55
  "default": mod
21
56
  };
22
57
  };
23
- exports.__esModule = true;
58
+ Object.defineProperty(exports, "__esModule", {
59
+ value: true
60
+ });
24
61
  exports.KUBERNETES_DEPLOY_TYPE = void 0;
25
62
  var slugify_1 = __importDefault(require("slugify"));
26
63
  var __1 = require("..");
64
+ var BashExpression_1 = require("../../bash/BashExpression");
27
65
  var additionalSecretKeys_1 = require("./additionalSecretKeys");
28
66
  var deployJob_1 = require("./deployJob");
29
67
  __exportStar(require("./cloudSql"), exports);
@@ -39,22 +77,21 @@ exports.KUBERNETES_DEPLOY_TYPE = {
39
77
  fullConfig = _a.fullConfig,
40
78
  deployConfigRaw = _a.deployConfigRaw,
41
79
  env = _a.env,
42
- envType = _a.envType,
43
- commitInfo = _a.commitInfo;
44
- var KUBE_APP_NAME_PREFIX = envType === "review" && commitInfo ? "".concat(commitInfo.reviewSlug, "-") : "";
45
- var KUBE_APP_NAME = "".concat(KUBE_APP_NAME_PREFIX).concat(componentName);
80
+ reviewSlug = _a.reviewSlug,
81
+ envType = _a.envType;
82
+ var KUBE_APP_NAME_PREFIX = envType === "review" && reviewSlug ? reviewSlug.concat("-") : "";
83
+ var KUBE_APP_NAME = KUBE_APP_NAME_PREFIX.concat(componentName);
46
84
  var KUBE_NAMESPACE = (0, __1.getKubernetesNamespace)(fullConfig, env);
47
- var componentSlug = (0, slugify_1["default"])(componentName);
48
- var envInUrl = envType === "review" && commitInfo ? "".concat(commitInfo.reviewSlug, ".").concat(env) : env;
85
+ var componentSlug = (0, slugify_1.default)(componentName);
49
86
  var domainCanonical = deployConfigRaw && ((_b = deployConfigRaw.cluster) === null || _b === void 0 ? void 0 : _b.domainCanonical) ||
50
87
  // for convenience, we allow clusters to define a canonical domain, because a cluster has a fixed ip and you will usually have a domain pointing to that cluster
51
88
  fullConfig.domainCanonical || "panter.cloud";
52
- var HOST_CANONICAL = "".concat(componentSlug, ".").concat(envInUrl, ".").concat(fullConfig.appName, ".").concat(fullConfig.customerName, ".").concat(domainCanonical); // default for kubernetes and rest
89
+ var HOSTNAME_INTERNAL = (0, BashExpression_1.joinBashExpressions)(__spreadArray(__spreadArray([componentSlug], __read(envType === "review" && reviewSlug ? [reviewSlug] : []), false), [env, fullConfig.appName, fullConfig.customerName, domainCanonical], false), "."); // default for kubernetes and rest
53
90
  return {
54
91
  KUBE_NAMESPACE: KUBE_NAMESPACE,
55
92
  KUBE_APP_NAME: KUBE_APP_NAME,
56
93
  KUBE_APP_NAME_PREFIX: KUBE_APP_NAME_PREFIX,
57
- HOST_CANONICAL: HOST_CANONICAL
94
+ HOSTNAME_INTERNAL: HOSTNAME_INTERNAL
58
95
  };
59
96
  }
60
97
  };
@@ -1,9 +1,10 @@
1
- import type { Context } from "../../types";
1
+ import type { ComponentContext } from "../../types";
2
+ import type { VariableValue } from "../../variables/VariableValue";
2
3
  /**
3
4
  * separate by secrets and public.
4
5
  * we evalulate the actual values later, but want to store the secrets in kubernetes secrets
5
6
  */
6
- export declare const createKubeEnv: (context: Context) => {
7
- secret: Record<string, string>;
8
- public: Record<string, string>;
7
+ export declare const createKubeEnv: (context: ComponentContext) => {
8
+ secret: Record<string, VariableValue>;
9
+ public: Record<string, VariableValue>;
9
10
  };
@@ -32,11 +32,14 @@ var __read = this && this.__read || function (o, n) {
32
32
  }
33
33
  return ar;
34
34
  };
35
- exports.__esModule = true;
35
+ Object.defineProperty(exports, "__esModule", {
36
+ value: true
37
+ });
36
38
  exports.createKubeEnv = void 0;
37
39
  var types_1 = require("../types");
38
40
  var shouldGoIntoSecrets = function (key, value) {
39
41
  var _a;
42
+ if (!value) return false;
40
43
  if ((_a = String(value)) === null || _a === void 0 ? void 0 : _a.includes("$CL_")) {
41
44
  return true;
42
45
  }
@@ -47,7 +50,8 @@ var shouldGoIntoSecrets = function (key, value) {
47
50
  * we evalulate the actual values later, but want to store the secrets in kubernetes secrets
48
51
  */
49
52
  var createKubeEnv = function (context) {
50
- if (!(0, types_1.isOfDeployType)(context.componentConfig.deploy, "kubernetes")) {
53
+ var _a;
54
+ if (!(0, types_1.isOfDeployType)((_a = context.deploy) === null || _a === void 0 ? void 0 : _a.config, "kubernetes")) {
51
55
  // should not happen
52
56
  throw new Error("deploy config is not kubernetes");
53
57
  }
@@ -57,11 +61,11 @@ var createKubeEnv = function (context) {
57
61
  var _d = __read(_a, 2),
58
62
  key = _d[0],
59
63
  value = _d[1];
60
- if (shouldGoIntoSecrets(key, value)) {
61
- acc.secret = __assign(__assign({}, acc.secret), (_b = {}, _b[key] = value, _b));
64
+ if (shouldGoIntoSecrets(key, value === null || value === void 0 ? void 0 : value.toString())) {
65
+ acc.secret = __assign(__assign({}, acc.secret), (_b = {}, _b[key] = value !== null && value !== void 0 ? value : "", _b));
62
66
  return acc;
63
67
  }
64
- acc.public = __assign(__assign({}, acc.public), (_c = {}, _c[key] = value, _c));
68
+ acc.public = __assign(__assign({}, acc.public), (_c = {}, _c[key] = value !== null && value !== void 0 ? value : "", _c));
65
69
  return acc;
66
70
  }, {
67
71
  secret: {},
@@ -1,8 +1,8 @@
1
- import type { Context } from "../../types/context";
2
- export declare const createKubeValues: (context: Context) => never[] | ({
1
+ import type { ComponentContext } from "../../types/context";
2
+ export declare const createKubeValues: (context: ComponentContext) => never[] | ({
3
3
  env: {
4
- secret: Record<string, string>;
5
- public: Record<string, string>;
4
+ secret: Record<string, import("../..").VariableValue>;
5
+ public: Record<string, import("../..").VariableValue>;
6
6
  };
7
7
  application: false | import("../types/base").AllowUnknownProps<{
8
8
  command?: string | undefined;
@@ -62,7 +62,7 @@ export declare const createKubeValues: (context: Context) => never[] | ({
62
62
  } | undefined;
63
63
  }> | undefined;
64
64
  } & {
65
- cloudsql?: import("../types").DeployConfigKubernetesValuesCloudSQL | undefined;
65
+ cloudsql?: import("../types").DeployConfigKubernetesValuesCloudSQLUnmanaged | undefined;
66
66
  mongodb?: import("../types").DeployConfigMongodb | undefined;
67
67
  mailhog?: {
68
68
  enabled: boolean;
@@ -73,7 +73,6 @@ export declare const createKubeValues: (context: Context) => never[] | ({
73
73
  mapServiceUrlToEnv?: {
74
74
  [envVar: string]: string;
75
75
  } | undefined;
76
- secretsAsFile?: string[] | undefined;
77
76
  jobs: {
78
77
  [k: string]: false | import("../types/base").AllowUnknownProps<{
79
78
  command: string;
@@ -40,7 +40,9 @@ var __read = this && this.__read || function (o, n) {
40
40
  }
41
41
  return ar;
42
42
  };
43
- exports.__esModule = true;
43
+ Object.defineProperty(exports, "__esModule", {
44
+ value: true
45
+ });
44
46
  exports.createKubeValues = void 0;
45
47
  var lodash_1 = require("lodash");
46
48
  var utils_1 = require("../../utils");
@@ -48,7 +50,6 @@ var types_1 = require("../types");
48
50
  var cloudSql_1 = require("./cloudSql");
49
51
  var kubeEnv_1 = require("./kubeEnv");
50
52
  var mongodb_1 = require("./mongodb");
51
- var processSecretsAsFiles_1 = require("./processSecretsAsFiles");
52
53
  var createAppConfig = function (context, application) {
53
54
  if (application === false) {
54
55
  return {
@@ -61,7 +62,7 @@ var createAppConfig = function (context, application) {
61
62
  rest = __rest(_a, ["healthRoute", "command"]);
62
63
  return (0, utils_1.mergeWithMergingArrays)({
63
64
  host: context.environment.host,
64
- command: command !== null && command !== void 0 ? command : context.componentConfig.build.startCommand,
65
+ command: command !== null && command !== void 0 ? command : context.build.config.startCommand,
65
66
  livenessProbe: {
66
67
  httpGet: {
67
68
  path: healthRoute !== null && healthRoute !== void 0 ? healthRoute : "__health"
@@ -79,10 +80,8 @@ var createAppConfig = function (context, application) {
79
80
  }
80
81
  },
81
82
  // default
82
- rest // merge rest in
83
- );
83
+ rest);
84
84
  };
85
-
86
85
  var removeFalsy = function (record) {
87
86
  if (!record) return undefined;
88
87
  return Object.fromEntries(Object.entries(record).filter(function (_a) {
@@ -92,9 +91,9 @@ var removeFalsy = function (record) {
92
91
  }));
93
92
  };
94
93
  var createKubeValues = function (context) {
95
- var _a, _b;
96
- var deployConfig = context.componentConfig.deploy;
97
- if (deployConfig === false) {
94
+ var _a, _b, _c;
95
+ var deployConfig = (_a = context.deploy) === null || _a === void 0 ? void 0 : _a.config;
96
+ if (!deployConfig) {
98
97
  return [];
99
98
  }
100
99
  if (!(0, types_1.isOfDeployType)(deployConfig, "kubernetes")) {
@@ -104,21 +103,20 @@ var createKubeValues = function (context) {
104
103
  var values = deployConfig.values;
105
104
  // we remove the application config because it can be just the value `false` which is a convenience feature, but not supported in the helm chart
106
105
  // we only merge the rest of the values in
107
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
108
- var _c = values !== null && values !== void 0 ? values : {},
109
- application = _c.application,
110
- jobs = _c.jobs,
111
- cronjobs = _c.cronjobs,
112
- rest = __rest(_c, ["application", "jobs", "cronjobs"]);
106
+ var _d = values !== null && values !== void 0 ? values : {},
107
+ application = _d.application,
108
+ jobs = _d.jobs,
109
+ cronjobs = _d.cronjobs,
110
+ rest = __rest(_d, ["application", "jobs", "cronjobs"]);
113
111
  var env = (0, kubeEnv_1.createKubeEnv)(context);
114
112
  var defaultKubeValues = (0, lodash_1.merge)({
115
113
  env: env,
116
114
  application: createAppConfig(context, application)
117
- }, (0, cloudSql_1.hasKubernetesCloudSQL)(context) ? (0, cloudSql_1.createKubernetesCloudsqlBaseValues)(context) : {}, ((_b = (_a = deployConfig.values) === null || _a === void 0 ? void 0 : _a.mongodb) === null || _b === void 0 ? void 0 : _b.enabled) ? (0, mongodb_1.createMongodbBaseConfig)(context) : {});
118
- var kubeValues = (0, processSecretsAsFiles_1.processSecretsAsFiles)((0, utils_1.mergeWithMergingArrays)(defaultKubeValues, __assign({
115
+ }, (0, cloudSql_1.hasKubernetesCloudSQL)(context) ? (0, cloudSql_1.createKubernetesCloudsqlBaseValues)(context) : {}, ((_c = (_b = deployConfig.values) === null || _b === void 0 ? void 0 : _b.mongodb) === null || _c === void 0 ? void 0 : _c.enabled) ? (0, mongodb_1.createMongodbBaseConfig)(context) : {});
116
+ var kubeValues = (0, utils_1.mergeWithMergingArrays)(defaultKubeValues, __assign({
119
117
  jobs: removeFalsy(jobs),
120
118
  cronjobs: removeFalsy(cronjobs)
121
- }, rest)));
119
+ }, rest));
122
120
  return kubeValues;
123
121
  };
124
122
  exports.createKubeValues = createKubeValues;
@@ -1,5 +1,5 @@
1
- import type { Context } from "../../types/context";
2
- export declare const createMongodbBaseConfig: (context: Context) => {
1
+ import type { ComponentContext } from "../../types/context";
2
+ export declare const createMongodbBaseConfig: (context: ComponentContext) => {
3
3
  mongodb: {
4
4
  enabled: boolean;
5
5
  auth: {
@@ -10,7 +10,9 @@ var __assign = this && this.__assign || function () {
10
10
  };
11
11
  return __assign.apply(this, arguments);
12
12
  };
13
- exports.__esModule = true;
13
+ Object.defineProperty(exports, "__esModule", {
14
+ value: true
15
+ });
14
16
  exports.createMongodbBaseConfig = void 0;
15
17
  var lodash_1 = require("lodash");
16
18
  var getEnvironmentVariables_1 = require("../../context/getEnvironmentVariables");
@@ -31,15 +33,15 @@ var getMongodbReplicasetHost = function (context, index) {
31
33
  return getMongodbHost(context, "".concat(fullAppname, "-mongodb-").concat(index, ".").concat(fullAppname, "-mongodb-headless"));
32
34
  };
33
35
  var createMongodbUrl = function (context, dbName) {
34
- var _a, _b;
35
- if (!(0, types_1.isOfDeployType)(context.componentConfig.deploy, "kubernetes")) {
36
+ var _a, _b, _c, _d;
37
+ if (!(0, types_1.isOfDeployType)((_a = context.deploy) === null || _a === void 0 ? void 0 : _a.config, "kubernetes")) {
36
38
  throw new Error("can only createMongodbUrl on supported deploys");
37
39
  }
38
- var mongodbConfig = (_a = context.componentConfig.deploy.values) === null || _a === void 0 ? void 0 : _a.mongodb;
40
+ var mongodbConfig = (_c = (_b = context.deploy) === null || _b === void 0 ? void 0 : _b.config.values) === null || _c === void 0 ? void 0 : _c.mongodb;
39
41
  var queryParams = undefined;
40
42
  var hosts = "";
41
43
  if ((mongodbConfig === null || mongodbConfig === void 0 ? void 0 : mongodbConfig.architecture) === "replicaset") {
42
- hosts = (0, lodash_1.range)(0, (_b = mongodbConfig === null || mongodbConfig === void 0 ? void 0 : mongodbConfig.replicaCount) !== null && _b !== void 0 ? _b : 2).map(function (i) {
44
+ hosts = (0, lodash_1.range)(0, (_d = mongodbConfig === null || mongodbConfig === void 0 ? void 0 : mongodbConfig.replicaCount) !== null && _d !== void 0 ? _d : 2).map(function (i) {
43
45
  return getMongodbReplicasetHost(context, i);
44
46
  }).join(",");
45
47
  queryParams = "replicaSet=rs0&authSource=admin";
@@ -50,11 +52,11 @@ var createMongodbUrl = function (context, dbName) {
50
52
  return "mongodb://".concat(getCredentialString(context)).concat(hosts, "/").concat(dbName).concat(queryParams ? "?".concat(queryParams) : "");
51
53
  };
52
54
  var createMongoBackupDefaultConfig = function (context) {
53
- var _a;
54
- if (!(0, types_1.isOfDeployType)(context.componentConfig.deploy, "kubernetes")) {
55
+ var _a, _b, _c;
56
+ if (!(0, types_1.isOfDeployType)((_a = context.deploy) === null || _a === void 0 ? void 0 : _a.config, "kubernetes")) {
55
57
  throw new Error("can only create mongodb base config on supported deploys");
56
58
  }
57
- var mongodbConfig = (_a = context.componentConfig.deploy.values) === null || _a === void 0 ? void 0 : _a.mongodb;
59
+ var mongodbConfig = (_c = (_b = context.deploy) === null || _b === void 0 ? void 0 : _b.config.values) === null || _c === void 0 ? void 0 : _c.mongodb;
58
60
  var fullAppName = context.environment.envVars.KUBE_APP_NAME;
59
61
  var backupEnabled = ["prod", "stage"].includes(context.environment.envType);
60
62
  var hostToBackup;
@@ -79,11 +81,11 @@ var createMongoBackupDefaultConfig = function (context) {
79
81
  };
80
82
  };
81
83
  var createMongodbBaseConfig = function (context) {
82
- var _a, _b;
83
- if (!(0, types_1.isOfDeployType)(context.componentConfig.deploy, "kubernetes")) {
84
+ var _a, _b, _c, _d;
85
+ if (!(0, types_1.isOfDeployType)((_a = context.deploy) === null || _a === void 0 ? void 0 : _a.config, "kubernetes")) {
84
86
  throw new Error("can only create mongodb base config on supported deploys");
85
87
  }
86
- var mongodbConfig = (_a = context.componentConfig.deploy.values) === null || _a === void 0 ? void 0 : _a.mongodb;
88
+ var mongodbConfig = (_c = (_b = context.deploy) === null || _b === void 0 ? void 0 : _b.config.values) === null || _c === void 0 ? void 0 : _c.mongodb;
87
89
  return {
88
90
  mongodb: {
89
91
  enabled: true,
@@ -99,7 +101,7 @@ var createMongodbBaseConfig = function (context) {
99
101
  },
100
102
  env: {
101
103
  secret: __assign({
102
- MONGO_URL: createMongodbUrl(context, (_b = mongodbConfig === null || mongodbConfig === void 0 ? void 0 : mongodbConfig.dbName) !== null && _b !== void 0 ? _b : "app")
104
+ MONGO_URL: createMongodbUrl(context, (_d = mongodbConfig === null || mongodbConfig === void 0 ? void 0 : mongodbConfig.dbName) !== null && _d !== void 0 ? _d : "app")
103
105
  }, (mongodbConfig === null || mongodbConfig === void 0 ? void 0 : mongodbConfig.architecture) === "replicaset" ? {
104
106
  MONGO_OPLOG_URL: createMongodbUrl(context, "local")
105
107
  } // oplog only works with replicasets
@@ -1,4 +1,4 @@
1
- import type { Context } from "../types/context";
2
- export declare const sbomDeactivated: (context: Context) => boolean;
3
- export declare const getDependencyTrackUploadScript: (context: Context) => string[];
4
- export declare const getDependencyTrackDeleteScript: (context: Context) => string[];
1
+ import { type ComponentContext } from "../types/context";
2
+ export declare const sbomDeactivated: (context: ComponentContext) => boolean;
3
+ export declare const getDependencyTrackUploadScript: (context: ComponentContext) => string[];
4
+ export declare const getDependencyTrackDeleteScript: (context: ComponentContext) => string[];
@@ -1,17 +1,20 @@
1
1
  "use strict";
2
2
 
3
- exports.__esModule = true;
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
4
6
  exports.getDependencyTrackDeleteScript = exports.getDependencyTrackUploadScript = exports.sbomDeactivated = void 0;
5
7
  var sbom_1 = require("../build/sbom");
8
+ var context_1 = require("../types/context");
6
9
  var sbomDeactivated = function (context) {
7
- return context.componentConfig.build.type === "custom" && context.componentConfig.build.sbom === false;
10
+ return (0, context_1.componentContextIsStandaloneBuild)(context) && context.build.config.type === "custom" && context.build.config.sbom === false;
8
11
  };
9
12
  exports.sbomDeactivated = sbomDeactivated;
10
13
  var getDependencyTrackUploadScript = function (context) {
11
- return (0, exports.sbomDeactivated)(context) ? [] : ["echo Uploading SBOM to Dependency Track", "/dtrackuploader https://dep.panter.swiss/ \"$DT_KEY_PROD\" upload \"".concat(context.fullConfig.customerName, "-").concat(context.fullConfig.appName, "/").concat(context.componentName, "\" \"").concat(context.environment.url, "\" \"").concat(sbom_1.SBOM_FILE, "\" vex.json || true")];
14
+ return (0, exports.sbomDeactivated)(context) ? [] : ["echo 'Uploading SBOM to Dependency Track'", "/dtrackuploader https://dep.panter.swiss/ \"$DT_KEY_PROD\" upload \"".concat(context.fullConfig.customerName, "-").concat(context.fullConfig.appName, "/").concat(context.name, "\" \"").concat(context.environment.url, "\" \"").concat(sbom_1.SBOM_FILE, "\" vex.json || true")];
12
15
  };
13
16
  exports.getDependencyTrackUploadScript = getDependencyTrackUploadScript;
14
17
  var getDependencyTrackDeleteScript = function (context) {
15
- return (0, exports.sbomDeactivated)(context) ? [] : ["echo Disabling component in Dependency Track", "/dtrackuploader https://dep.panter.swiss/ \"$DT_KEY_PROD\" disable \"".concat(context.fullConfig.customerName, "-").concat(context.fullConfig.appName, "/").concat(context.componentName, "\" \"").concat(context.environment.url, "\" || true")];
18
+ return (0, exports.sbomDeactivated)(context) ? [] : ["echo 'Disabling component in Dependency Track'", "/dtrackuploader https://dep.panter.swiss/ \"$DT_KEY_PROD\" disable \"".concat(context.fullConfig.customerName, "-").concat(context.fullConfig.appName, "/").concat(context.name, "\" \"").concat(context.environment.url, "\" || true")];
16
19
  };
17
20
  exports.getDependencyTrackDeleteScript = getDependencyTrackDeleteScript;
@@ -1,5 +1,5 @@
1
1
  import type { EnvVars } from "../../types/config";
2
- export declare type DeployConfigBase = {
2
+ export type DeployConfigBase = {
3
3
  /**
4
4
  * whether to deploy automatically or manual. If not defined, these rules apply:
5
5
  * - prod: manual
@@ -21,10 +21,10 @@ export declare type DeployConfigBase = {
21
21
  */
22
22
  jobVars?: EnvVars;
23
23
  /**
24
- * additional env vars for the deploy job
24
+ * additional vars only for the runner.
25
+ * Also if you use services: that require env vars, you need to set them here.
25
26
  *
26
- * @deprecated use deploy.jobVars for deploy job specific variables
27
27
  */
28
- extraVars?: Record<string, string>;
28
+ runnerVariables?: Record<string, string>;
29
29
  };
30
- export declare type AllowUnknownProps<T extends Record<string, unknown>> = T & Record<string, unknown>;
30
+ export type AllowUnknownProps<T extends Record<string, unknown>> = T & Record<string, unknown>;
@@ -1,3 +1,5 @@
1
1
  "use strict";
2
2
 
3
- exports.__esModule = true;
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
@@ -1,7 +1,7 @@
1
+ import type { WithCacheConfig } from "../../build";
1
2
  import type { GitlabJobImage } from "../../types";
2
- import type { CatladderJob } from "../../types/jobs";
3
3
  import type { DeployConfigBase } from "./base";
4
- export declare type DeployConfigCustom = {
4
+ export type DeployConfigCustom = {
5
5
  /**
6
6
  * custom deploy types allow you to specify custom commands to deploy your app
7
7
  */
@@ -26,8 +26,4 @@ export declare type DeployConfigCustom = {
26
26
  * image to use
27
27
  */
28
28
  jobImage?: GitlabJobImage;
29
- /**
30
- * customize cache for the job
31
- */
32
- jobCache?: CatladderJob["cache"];
33
- } & DeployConfigBase;
29
+ } & DeployConfigBase & WithCacheConfig;