typekro 0.1.0 → 0.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (436) hide show
  1. package/LICENSE +201 -185
  2. package/README.md +581 -563
  3. package/dist/.tsbuildinfo +1 -1
  4. package/dist/alchemy/deployers.d.ts +1 -1
  5. package/dist/alchemy/deployers.d.ts.map +1 -1
  6. package/dist/alchemy/deployers.js +25 -20
  7. package/dist/alchemy/deployers.js.map +1 -1
  8. package/dist/alchemy/deployment.d.ts +3 -3
  9. package/dist/alchemy/deployment.d.ts.map +1 -1
  10. package/dist/alchemy/deployment.js +2 -2
  11. package/dist/alchemy/deployment.js.map +1 -1
  12. package/dist/alchemy/index.d.ts +4 -4
  13. package/dist/alchemy/index.d.ts.map +1 -1
  14. package/dist/alchemy/index.js +6 -6
  15. package/dist/alchemy/index.js.map +1 -1
  16. package/dist/alchemy/resolver.d.ts +3 -3
  17. package/dist/alchemy/resolver.d.ts.map +1 -1
  18. package/dist/alchemy/resolver.js +70 -17
  19. package/dist/alchemy/resolver.js.map +1 -1
  20. package/dist/alchemy/resource-registration.d.ts.map +1 -1
  21. package/dist/alchemy/resource-registration.js +3 -3
  22. package/dist/alchemy/resource-registration.js.map +1 -1
  23. package/dist/alchemy/type-inference.d.ts.map +1 -1
  24. package/dist/alchemy/type-inference.js.map +1 -1
  25. package/dist/alchemy/types.d.ts +2 -2
  26. package/dist/alchemy/types.d.ts.map +1 -1
  27. package/dist/alchemy/utilities.d.ts.map +1 -1
  28. package/dist/alchemy/utilities.js.map +1 -1
  29. package/dist/alchemy/wrapper.d.ts.map +1 -1
  30. package/dist/alchemy/wrapper.js +2 -2
  31. package/dist/alchemy/wrapper.js.map +1 -1
  32. package/dist/core/composition/composition.d.ts +1 -85
  33. package/dist/core/composition/composition.d.ts.map +1 -1
  34. package/dist/core/composition/composition.js +3 -214
  35. package/dist/core/composition/composition.js.map +1 -1
  36. package/dist/core/composition/imperative.d.ts +39 -0
  37. package/dist/core/composition/imperative.d.ts.map +1 -0
  38. package/dist/core/composition/imperative.js +219 -0
  39. package/dist/core/composition/imperative.js.map +1 -0
  40. package/dist/core/composition/index.d.ts +5 -3
  41. package/dist/core/composition/index.d.ts.map +1 -1
  42. package/dist/core/composition/index.js +4 -2
  43. package/dist/core/composition/index.js.map +1 -1
  44. package/dist/core/composition/typekro-runtime/index.d.ts +1 -1
  45. package/dist/core/composition/typekro-runtime/index.d.ts.map +1 -1
  46. package/dist/core/composition/typekro-runtime/typekro-runtime.d.ts.map +1 -1
  47. package/dist/core/composition/typekro-runtime/typekro-runtime.js +3 -3
  48. package/dist/core/composition/typekro-runtime/typekro-runtime.js.map +1 -1
  49. package/dist/core/composition/types.d.ts +0 -237
  50. package/dist/core/composition/types.d.ts.map +1 -1
  51. package/dist/core/composition/types.js +6 -0
  52. package/dist/core/composition/types.js.map +1 -1
  53. package/dist/core/constants/brands.d.ts.map +1 -1
  54. package/dist/core/constants/brands.js +3 -9
  55. package/dist/core/constants/brands.js.map +1 -1
  56. package/dist/core/dependencies/resolver.d.ts.map +1 -1
  57. package/dist/core/dependencies/resolver.js +3 -3
  58. package/dist/core/dependencies/resolver.js.map +1 -1
  59. package/dist/core/dependencies/type-guards.d.ts +3 -3
  60. package/dist/core/dependencies/type-guards.d.ts.map +1 -1
  61. package/dist/core/dependencies/type-guards.js +3 -3
  62. package/dist/core/dependencies/type-guards.js.map +1 -1
  63. package/dist/core/deployment/debug-logger.d.ts +119 -0
  64. package/dist/core/deployment/debug-logger.d.ts.map +1 -0
  65. package/dist/core/deployment/debug-logger.js +372 -0
  66. package/dist/core/deployment/debug-logger.js.map +1 -0
  67. package/dist/core/deployment/deployment-strategies.d.ts +1 -1
  68. package/dist/core/deployment/deployment-strategies.d.ts.map +1 -1
  69. package/dist/core/deployment/deployment-strategies.js +1 -1
  70. package/dist/core/deployment/deployment-strategies.js.map +1 -1
  71. package/dist/core/deployment/direct-factory.d.ts +11 -5
  72. package/dist/core/deployment/direct-factory.d.ts.map +1 -1
  73. package/dist/core/deployment/direct-factory.js +22 -12
  74. package/dist/core/deployment/direct-factory.js.map +1 -1
  75. package/dist/core/deployment/engine.d.ts +9 -6
  76. package/dist/core/deployment/engine.d.ts.map +1 -1
  77. package/dist/core/deployment/engine.js +184 -95
  78. package/dist/core/deployment/engine.js.map +1 -1
  79. package/dist/core/deployment/event-filter.d.ts +142 -0
  80. package/dist/core/deployment/event-filter.d.ts.map +1 -0
  81. package/dist/core/deployment/event-filter.js +420 -0
  82. package/dist/core/deployment/event-filter.js.map +1 -0
  83. package/dist/core/deployment/event-monitor.d.ts +197 -0
  84. package/dist/core/deployment/event-monitor.d.ts.map +1 -0
  85. package/dist/core/deployment/event-monitor.js +738 -0
  86. package/dist/core/deployment/event-monitor.js.map +1 -0
  87. package/dist/core/deployment/event-streamer.d.ts +112 -0
  88. package/dist/core/deployment/event-streamer.d.ts.map +1 -0
  89. package/dist/core/deployment/event-streamer.js +348 -0
  90. package/dist/core/deployment/event-streamer.js.map +1 -0
  91. package/dist/core/deployment/index.d.ts +5 -5
  92. package/dist/core/deployment/index.d.ts.map +1 -1
  93. package/dist/core/deployment/index.js +5 -5
  94. package/dist/core/deployment/index.js.map +1 -1
  95. package/dist/core/deployment/kro-factory.d.ts +2 -8
  96. package/dist/core/deployment/kro-factory.d.ts.map +1 -1
  97. package/dist/core/deployment/kro-factory.js +63 -109
  98. package/dist/core/deployment/kro-factory.js.map +1 -1
  99. package/dist/core/deployment/readiness.d.ts +6 -0
  100. package/dist/core/deployment/readiness.d.ts.map +1 -1
  101. package/dist/core/deployment/readiness.js +45 -1
  102. package/dist/core/deployment/readiness.js.map +1 -1
  103. package/dist/core/deployment/rollback-manager.d.ts.map +1 -1
  104. package/dist/core/deployment/rollback-manager.js +3 -3
  105. package/dist/core/deployment/rollback-manager.js.map +1 -1
  106. package/dist/core/deployment/shared-utilities.d.ts +1 -1
  107. package/dist/core/deployment/shared-utilities.d.ts.map +1 -1
  108. package/dist/core/deployment/shared-utilities.js +2 -0
  109. package/dist/core/deployment/shared-utilities.js.map +1 -1
  110. package/dist/core/deployment/status-hydrator.d.ts.map +1 -1
  111. package/dist/core/deployment/status-hydrator.js +31 -12
  112. package/dist/core/deployment/status-hydrator.js.map +1 -1
  113. package/dist/core/deployment/strategies/alchemy-strategy.d.ts +4 -4
  114. package/dist/core/deployment/strategies/alchemy-strategy.d.ts.map +1 -1
  115. package/dist/core/deployment/strategies/alchemy-strategy.js +9 -9
  116. package/dist/core/deployment/strategies/alchemy-strategy.js.map +1 -1
  117. package/dist/core/deployment/strategies/base-strategy.d.ts +7 -4
  118. package/dist/core/deployment/strategies/base-strategy.d.ts.map +1 -1
  119. package/dist/core/deployment/strategies/base-strategy.js +257 -11
  120. package/dist/core/deployment/strategies/base-strategy.js.map +1 -1
  121. package/dist/core/deployment/strategies/direct-strategy.d.ts +4 -3
  122. package/dist/core/deployment/strategies/direct-strategy.d.ts.map +1 -1
  123. package/dist/core/deployment/strategies/direct-strategy.js +4 -4
  124. package/dist/core/deployment/strategies/direct-strategy.js.map +1 -1
  125. package/dist/core/deployment/strategies/index.d.ts +1 -1
  126. package/dist/core/deployment/strategies/index.d.ts.map +1 -1
  127. package/dist/core/deployment/strategies/index.js +1 -1
  128. package/dist/core/deployment/strategies/index.js.map +1 -1
  129. package/dist/core/deployment/strategies/kro-strategy.d.ts +1 -1
  130. package/dist/core/deployment/strategies/kro-strategy.d.ts.map +1 -1
  131. package/dist/core/deployment/strategies/kro-strategy.js +14 -14
  132. package/dist/core/deployment/strategies/kro-strategy.js.map +1 -1
  133. package/dist/core/errors.d.ts +136 -0
  134. package/dist/core/errors.d.ts.map +1 -1
  135. package/dist/core/errors.js +362 -0
  136. package/dist/core/errors.js.map +1 -1
  137. package/dist/core/evaluation/cel-optimizer.d.ts.map +1 -1
  138. package/dist/core/evaluation/cel-optimizer.js +33 -11
  139. package/dist/core/evaluation/cel-optimizer.js.map +1 -1
  140. package/dist/core/factory.d.ts.map +1 -1
  141. package/dist/core/factory.js.map +1 -1
  142. package/dist/core/kubernetes/api.d.ts +13 -2
  143. package/dist/core/kubernetes/api.d.ts.map +1 -1
  144. package/dist/core/kubernetes/api.js +21 -8
  145. package/dist/core/kubernetes/api.js.map +1 -1
  146. package/dist/core/kubernetes/client-provider.d.ts +192 -0
  147. package/dist/core/kubernetes/client-provider.d.ts.map +1 -1
  148. package/dist/core/kubernetes/client-provider.js +423 -22
  149. package/dist/core/kubernetes/client-provider.js.map +1 -1
  150. package/dist/core/logging/config.d.ts.map +1 -1
  151. package/dist/core/logging/config.js.map +1 -1
  152. package/dist/core/logging/index.d.ts +1 -1
  153. package/dist/core/logging/index.d.ts.map +1 -1
  154. package/dist/core/logging/index.js +1 -1
  155. package/dist/core/logging/index.js.map +1 -1
  156. package/dist/core/logging/logger.d.ts +1 -1
  157. package/dist/core/logging/logger.d.ts.map +1 -1
  158. package/dist/core/logging/logger.js.map +1 -1
  159. package/dist/core/readiness/cluster-state.d.ts.map +1 -1
  160. package/dist/core/readiness/cluster-state.js +12 -6
  161. package/dist/core/readiness/cluster-state.js.map +1 -1
  162. package/dist/core/references/cel-evaluator.js +1 -1
  163. package/dist/core/references/cel-evaluator.js.map +1 -1
  164. package/dist/core/references/cel.d.ts.map +1 -1
  165. package/dist/core/references/cel.js +1 -1
  166. package/dist/core/references/cel.js.map +1 -1
  167. package/dist/core/references/external-refs.d.ts +1 -1
  168. package/dist/core/references/external-refs.js +1 -1
  169. package/dist/core/references/index.d.ts +4 -4
  170. package/dist/core/references/index.d.ts.map +1 -1
  171. package/dist/core/references/index.js +6 -6
  172. package/dist/core/references/index.js.map +1 -1
  173. package/dist/core/references/resolver.d.ts +1 -1
  174. package/dist/core/references/resolver.d.ts.map +1 -1
  175. package/dist/core/references/resolver.js +69 -44
  176. package/dist/core/references/resolver.js.map +1 -1
  177. package/dist/core/references/schema-proxy.d.ts.map +1 -1
  178. package/dist/core/references/schema-proxy.js +2 -4
  179. package/dist/core/references/schema-proxy.js.map +1 -1
  180. package/dist/core/serialization/core.d.ts +1 -1
  181. package/dist/core/serialization/core.d.ts.map +1 -1
  182. package/dist/core/serialization/core.js +122 -16
  183. package/dist/core/serialization/core.js.map +1 -1
  184. package/dist/core/serialization/schema.js +1 -1
  185. package/dist/core/serialization/schema.js.map +1 -1
  186. package/dist/core/serialization/validation.js +1 -1
  187. package/dist/core/serialization/validation.js.map +1 -1
  188. package/dist/core/serialization/yaml.js +1 -1
  189. package/dist/core/serialization/yaml.js.map +1 -1
  190. package/dist/core/types/common.d.ts.map +1 -1
  191. package/dist/core/types/deployment.d.ts +116 -3
  192. package/dist/core/types/deployment.d.ts.map +1 -1
  193. package/dist/core/types/deployment.js.map +1 -1
  194. package/dist/core/types/index.d.ts +1 -1
  195. package/dist/core/types/index.d.ts.map +1 -1
  196. package/dist/core/types/index.js.map +1 -1
  197. package/dist/core/types/kubernetes.d.ts.map +1 -1
  198. package/dist/core/types/serialization.d.ts +14 -3
  199. package/dist/core/types/serialization.d.ts.map +1 -1
  200. package/dist/core/validation/cel-validator.d.ts.map +1 -1
  201. package/dist/core/validation/cel-validator.js +28 -10
  202. package/dist/core/validation/cel-validator.js.map +1 -1
  203. package/dist/core/yaml/index.d.ts +1 -1
  204. package/dist/core/yaml/index.d.ts.map +1 -1
  205. package/dist/core/yaml/index.js +1 -1
  206. package/dist/core/yaml/index.js.map +1 -1
  207. package/dist/core/yaml/path-resolver.d.ts.map +1 -1
  208. package/dist/core/yaml/path-resolver.js +6 -6
  209. package/dist/core/yaml/path-resolver.js.map +1 -1
  210. package/dist/core.d.ts +10 -10
  211. package/dist/core.d.ts.map +1 -1
  212. package/dist/core.js +14 -14
  213. package/dist/core.js.map +1 -1
  214. package/dist/factories/flux/git-repository.d.ts.map +1 -1
  215. package/dist/factories/flux/git-repository.js.map +1 -1
  216. package/dist/factories/flux/index.d.ts +1 -1
  217. package/dist/factories/flux/index.d.ts.map +1 -1
  218. package/dist/factories/flux/index.js.map +1 -1
  219. package/dist/factories/flux/kustomize/index.d.ts +1 -1
  220. package/dist/factories/flux/kustomize/index.d.ts.map +1 -1
  221. package/dist/factories/flux/kustomize/index.js.map +1 -1
  222. package/dist/factories/flux/kustomize/readiness-evaluators.d.ts.map +1 -1
  223. package/dist/factories/flux/kustomize/readiness-evaluators.js +9 -9
  224. package/dist/factories/flux/kustomize/readiness-evaluators.js.map +1 -1
  225. package/dist/factories/flux/kustomize/types.d.ts +1 -1
  226. package/dist/factories/flux/kustomize/types.d.ts.map +1 -1
  227. package/dist/factories/helm/helm-release.d.ts +7 -4
  228. package/dist/factories/helm/helm-release.d.ts.map +1 -1
  229. package/dist/factories/helm/helm-release.js +7 -4
  230. package/dist/factories/helm/helm-release.js.map +1 -1
  231. package/dist/factories/helm/helm-repository.d.ts.map +1 -1
  232. package/dist/factories/helm/helm-repository.js.map +1 -1
  233. package/dist/factories/helm/index.d.ts +1 -1
  234. package/dist/factories/helm/index.d.ts.map +1 -1
  235. package/dist/factories/helm/index.js +1 -1
  236. package/dist/factories/helm/index.js.map +1 -1
  237. package/dist/factories/helm/readiness-evaluators.d.ts.map +1 -1
  238. package/dist/factories/helm/readiness-evaluators.js +4 -2
  239. package/dist/factories/helm/readiness-evaluators.js.map +1 -1
  240. package/dist/factories/index.d.ts +6 -3
  241. package/dist/factories/index.d.ts.map +1 -1
  242. package/dist/factories/index.js +10 -6
  243. package/dist/factories/index.js.map +1 -1
  244. package/dist/factories/kro/index.d.ts +3 -3
  245. package/dist/factories/kro/index.d.ts.map +1 -1
  246. package/dist/factories/kro/index.js +2 -2
  247. package/dist/factories/kro/index.js.map +1 -1
  248. package/dist/factories/kro/kro-crd.d.ts.map +1 -1
  249. package/dist/factories/kro/kro-crd.js +5 -5
  250. package/dist/factories/kro/kro-crd.js.map +1 -1
  251. package/dist/factories/kro/kro-custom-resource.d.ts.map +1 -1
  252. package/dist/factories/kro/kro-custom-resource.js +21 -21
  253. package/dist/factories/kro/kro-custom-resource.js.map +1 -1
  254. package/dist/factories/kro/resource-graph-definition.d.ts.map +1 -1
  255. package/dist/factories/kro/resource-graph-definition.js +7 -7
  256. package/dist/factories/kro/resource-graph-definition.js.map +1 -1
  257. package/dist/factories/kubernetes/autoscaling/horizontal-pod-autoscaler-v1.d.ts.map +1 -1
  258. package/dist/factories/kubernetes/autoscaling/horizontal-pod-autoscaler-v1.js.map +1 -1
  259. package/dist/factories/kubernetes/autoscaling/horizontal-pod-autoscaler.js +2 -2
  260. package/dist/factories/kubernetes/certificates/certificate-signing-request.js +2 -2
  261. package/dist/factories/kubernetes/certificates/certificate-signing-request.js.map +1 -1
  262. package/dist/factories/kubernetes/config/config-map.js +1 -1
  263. package/dist/factories/kubernetes/config/config-map.js.map +1 -1
  264. package/dist/factories/kubernetes/config/secret.js +1 -1
  265. package/dist/factories/kubernetes/config/secret.js.map +1 -1
  266. package/dist/factories/kubernetes/core/component-status.js +1 -1
  267. package/dist/factories/kubernetes/core/component-status.js.map +1 -1
  268. package/dist/factories/kubernetes/core/node.js +1 -1
  269. package/dist/factories/kubernetes/core/node.js.map +1 -1
  270. package/dist/factories/kubernetes/core/pod.js +4 -4
  271. package/dist/factories/kubernetes/core/pod.js.map +1 -1
  272. package/dist/factories/kubernetes/extensions/custom-resource-definition.js +2 -2
  273. package/dist/factories/kubernetes/extensions/custom-resource-definition.js.map +1 -1
  274. package/dist/factories/kubernetes/index.d.ts +2 -2
  275. package/dist/factories/kubernetes/index.d.ts.map +1 -1
  276. package/dist/factories/kubernetes/index.js +8 -8
  277. package/dist/factories/kubernetes/index.js.map +1 -1
  278. package/dist/factories/kubernetes/networking/endpoints.d.ts.map +1 -1
  279. package/dist/factories/kubernetes/networking/endpoints.js +4 -4
  280. package/dist/factories/kubernetes/networking/endpoints.js.map +1 -1
  281. package/dist/factories/kubernetes/networking/ingress.js +2 -2
  282. package/dist/factories/kubernetes/networking/network-policy.js +2 -2
  283. package/dist/factories/kubernetes/networking/network-policy.js.map +1 -1
  284. package/dist/factories/kubernetes/networking/service.d.ts.map +1 -1
  285. package/dist/factories/kubernetes/networking/service.js +8 -7
  286. package/dist/factories/kubernetes/networking/service.js.map +1 -1
  287. package/dist/factories/kubernetes/policy/limit-range.js +2 -2
  288. package/dist/factories/kubernetes/policy/limit-range.js.map +1 -1
  289. package/dist/factories/kubernetes/policy/pod-disruption-budget.js +5 -5
  290. package/dist/factories/kubernetes/policy/resource-quota.js +4 -4
  291. package/dist/factories/kubernetes/rbac/cluster-role-binding.js +2 -2
  292. package/dist/factories/kubernetes/rbac/cluster-role-binding.js.map +1 -1
  293. package/dist/factories/kubernetes/rbac/cluster-role.js +2 -2
  294. package/dist/factories/kubernetes/rbac/cluster-role.js.map +1 -1
  295. package/dist/factories/kubernetes/rbac/role-binding.js +2 -2
  296. package/dist/factories/kubernetes/rbac/role-binding.js.map +1 -1
  297. package/dist/factories/kubernetes/rbac/role.js +2 -2
  298. package/dist/factories/kubernetes/rbac/role.js.map +1 -1
  299. package/dist/factories/kubernetes/rbac/service-account.js +2 -2
  300. package/dist/factories/kubernetes/rbac/service-account.js.map +1 -1
  301. package/dist/factories/kubernetes/storage/persistent-volume-claim.js +2 -2
  302. package/dist/factories/kubernetes/storage/persistent-volume.js +4 -4
  303. package/dist/factories/kubernetes/storage/storage-class.js +2 -2
  304. package/dist/factories/kubernetes/storage/storage-class.js.map +1 -1
  305. package/dist/factories/kubernetes/workloads/cron-job.js +5 -5
  306. package/dist/factories/kubernetes/workloads/daemon-set.js +2 -2
  307. package/dist/factories/kubernetes/workloads/deployment.d.ts.map +1 -1
  308. package/dist/factories/kubernetes/workloads/deployment.js +5 -6
  309. package/dist/factories/kubernetes/workloads/deployment.js.map +1 -1
  310. package/dist/factories/kubernetes/workloads/job.js +10 -10
  311. package/dist/factories/kubernetes/workloads/replica-set.js +2 -2
  312. package/dist/factories/kubernetes/workloads/replication-controller.js +5 -5
  313. package/dist/factories/kubernetes/workloads/stateful-set.d.ts.map +1 -1
  314. package/dist/factories/kubernetes/workloads/stateful-set.js +7 -7
  315. package/dist/factories/kubernetes/workloads/stateful-set.js.map +1 -1
  316. package/dist/factories/kubernetes/yaml/index.d.ts +1 -1
  317. package/dist/factories/kubernetes/yaml/index.d.ts.map +1 -1
  318. package/dist/factories/kubernetes/yaml/index.js +1 -1
  319. package/dist/factories/kubernetes/yaml/index.js.map +1 -1
  320. package/dist/factories/kubernetes/yaml/yaml-directory.d.ts +2 -2
  321. package/dist/factories/kubernetes/yaml/yaml-directory.d.ts.map +1 -1
  322. package/dist/factories/kubernetes/yaml/yaml-directory.js +106 -101
  323. package/dist/factories/kubernetes/yaml/yaml-directory.js.map +1 -1
  324. package/dist/factories/kubernetes/yaml/yaml-file.d.ts +7 -4
  325. package/dist/factories/kubernetes/yaml/yaml-file.d.ts.map +1 -1
  326. package/dist/factories/kubernetes/yaml/yaml-file.js +110 -99
  327. package/dist/factories/kubernetes/yaml/yaml-file.js.map +1 -1
  328. package/dist/factories/shared.d.ts +49 -0
  329. package/dist/factories/shared.d.ts.map +1 -1
  330. package/dist/factories/shared.js +75 -3
  331. package/dist/factories/shared.js.map +1 -1
  332. package/dist/factories/simple/autoscaling/horizontal-pod-autoscaler.d.ts +17 -0
  333. package/dist/factories/simple/autoscaling/horizontal-pod-autoscaler.d.ts.map +1 -0
  334. package/dist/factories/simple/autoscaling/horizontal-pod-autoscaler.js +46 -0
  335. package/dist/factories/simple/autoscaling/horizontal-pod-autoscaler.js.map +1 -0
  336. package/dist/factories/simple/autoscaling/index.d.ts +8 -0
  337. package/dist/factories/simple/autoscaling/index.d.ts.map +1 -0
  338. package/dist/factories/simple/autoscaling/index.js +8 -0
  339. package/dist/factories/simple/autoscaling/index.js.map +1 -0
  340. package/dist/factories/simple/config/config-map.d.ts +17 -0
  341. package/dist/factories/simple/config/config-map.d.ts.map +1 -0
  342. package/dist/factories/simple/config/config-map.js +25 -0
  343. package/dist/factories/simple/config/config-map.js.map +1 -0
  344. package/dist/factories/simple/config/index.d.ts +9 -0
  345. package/dist/factories/simple/config/index.d.ts.map +1 -0
  346. package/dist/factories/simple/config/index.js +9 -0
  347. package/dist/factories/simple/config/index.js.map +1 -0
  348. package/dist/factories/simple/config/secret.d.ts +17 -0
  349. package/dist/factories/simple/config/secret.d.ts.map +1 -0
  350. package/dist/factories/simple/config/secret.js +24 -0
  351. package/dist/factories/simple/config/secret.js.map +1 -0
  352. package/dist/factories/simple/helm/index.d.ts +16 -0
  353. package/dist/factories/simple/helm/index.d.ts.map +1 -0
  354. package/dist/factories/simple/helm/index.js +21 -0
  355. package/dist/factories/simple/helm/index.js.map +1 -0
  356. package/dist/factories/simple/index.d.ts +50 -0
  357. package/dist/factories/simple/index.d.ts.map +1 -0
  358. package/dist/factories/simple/index.js +58 -0
  359. package/dist/factories/simple/index.js.map +1 -0
  360. package/dist/factories/simple/networking/index.d.ts +10 -0
  361. package/dist/factories/simple/networking/index.d.ts.map +1 -0
  362. package/dist/factories/simple/networking/index.js +10 -0
  363. package/dist/factories/simple/networking/index.js.map +1 -0
  364. package/dist/factories/simple/networking/ingress.d.ts +17 -0
  365. package/dist/factories/simple/networking/ingress.d.ts.map +1 -0
  366. package/dist/factories/simple/networking/ingress.js +30 -0
  367. package/dist/factories/simple/networking/ingress.js.map +1 -0
  368. package/dist/factories/simple/networking/network-policy.d.ts +17 -0
  369. package/dist/factories/simple/networking/network-policy.d.ts.map +1 -0
  370. package/dist/factories/simple/networking/network-policy.js +30 -0
  371. package/dist/factories/simple/networking/network-policy.js.map +1 -0
  372. package/dist/factories/simple/networking/service.d.ts +17 -0
  373. package/dist/factories/simple/networking/service.d.ts.map +1 -0
  374. package/dist/factories/simple/networking/service.js +27 -0
  375. package/dist/factories/simple/networking/service.js.map +1 -0
  376. package/dist/factories/simple/storage/index.d.ts +9 -0
  377. package/dist/factories/simple/storage/index.d.ts.map +1 -0
  378. package/dist/factories/simple/storage/index.js +9 -0
  379. package/dist/factories/simple/storage/index.js.map +1 -0
  380. package/dist/factories/simple/storage/persistent-volume-claim.d.ts +17 -0
  381. package/dist/factories/simple/storage/persistent-volume-claim.d.ts.map +1 -0
  382. package/dist/factories/simple/storage/persistent-volume-claim.js +32 -0
  383. package/dist/factories/simple/storage/persistent-volume-claim.js.map +1 -0
  384. package/dist/factories/simple/storage/persistent-volume.d.ts +17 -0
  385. package/dist/factories/simple/storage/persistent-volume.d.ts.map +1 -0
  386. package/dist/factories/simple/storage/persistent-volume.js +44 -0
  387. package/dist/factories/simple/storage/persistent-volume.js.map +1 -0
  388. package/dist/factories/simple/types.d.ts +165 -0
  389. package/dist/factories/simple/types.d.ts.map +1 -0
  390. package/dist/factories/simple/types.js +9 -0
  391. package/dist/factories/simple/types.js.map +1 -0
  392. package/dist/factories/simple/workloads/cron-job.d.ts +17 -0
  393. package/dist/factories/simple/workloads/cron-job.d.ts.map +1 -0
  394. package/dist/factories/simple/workloads/cron-job.js +43 -0
  395. package/dist/factories/simple/workloads/cron-job.js.map +1 -0
  396. package/dist/factories/simple/workloads/daemon-set.d.ts +17 -0
  397. package/dist/factories/simple/workloads/daemon-set.d.ts.map +1 -0
  398. package/dist/factories/simple/workloads/daemon-set.js +46 -0
  399. package/dist/factories/simple/workloads/daemon-set.js.map +1 -0
  400. package/dist/factories/simple/workloads/deployment.d.ts +17 -0
  401. package/dist/factories/simple/workloads/deployment.d.ts.map +1 -0
  402. package/dist/factories/simple/workloads/deployment.js +47 -0
  403. package/dist/factories/simple/workloads/deployment.js.map +1 -0
  404. package/dist/factories/simple/workloads/index.d.ts +12 -0
  405. package/dist/factories/simple/workloads/index.d.ts.map +1 -0
  406. package/dist/factories/simple/workloads/index.js +12 -0
  407. package/dist/factories/simple/workloads/index.js.map +1 -0
  408. package/dist/factories/simple/workloads/job.d.ts +17 -0
  409. package/dist/factories/simple/workloads/job.d.ts.map +1 -0
  410. package/dist/factories/simple/workloads/job.js +40 -0
  411. package/dist/factories/simple/workloads/job.js.map +1 -0
  412. package/dist/factories/simple/workloads/stateful-set.d.ts +17 -0
  413. package/dist/factories/simple/workloads/stateful-set.d.ts.map +1 -0
  414. package/dist/factories/simple/workloads/stateful-set.js +47 -0
  415. package/dist/factories/simple/workloads/stateful-set.js.map +1 -0
  416. package/dist/factories/simple/yaml/index.d.ts +13 -0
  417. package/dist/factories/simple/yaml/index.d.ts.map +1 -0
  418. package/dist/factories/simple/yaml/index.js +23 -0
  419. package/dist/factories/simple/yaml/index.js.map +1 -0
  420. package/dist/index.d.ts +5 -3
  421. package/dist/index.d.ts.map +1 -1
  422. package/dist/index.js +25 -22
  423. package/dist/index.js.map +1 -1
  424. package/dist/utils/helpers.d.ts +1 -1
  425. package/dist/utils/helpers.d.ts.map +1 -1
  426. package/dist/utils/helpers.js +53 -7
  427. package/dist/utils/helpers.js.map +1 -1
  428. package/dist/utils/index.d.ts +2 -2
  429. package/dist/utils/index.d.ts.map +1 -1
  430. package/dist/utils/index.js +2 -2
  431. package/dist/utils/index.js.map +1 -1
  432. package/dist/utils/type-guards.d.ts +1 -1
  433. package/dist/utils/type-guards.d.ts.map +1 -1
  434. package/dist/utils/type-guards.js +3 -9
  435. package/dist/utils/type-guards.js.map +1 -1
  436. package/package.json +12 -6
@@ -1 +1 @@
1
- {"version":3,"file":"yaml-file.d.ts","sourceRoot":"","sources":["../../../../src/factories/kubernetes/yaml/yaml-file.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAqB,eAAe,EAAE,MAAM,mCAAmC,CAAC;AAC/G,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAoBnE,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;IAC3C,kBAAkB,CAAC,EAAE,SAAS,GAAG,cAAc,GAAG,MAAM,CAAC;CAC1D;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,wBAAgB,QAAQ,CAAC,MAAM,EAAE,cAAc,GAAG,iBAAiB,CAAC,eAAe,EAAE,CAAC,CA+GrF;AAED;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,iBAAiB,CAAC,eAAe,EAAE,CAAC,CAOrG"}
1
+ {"version":3,"file":"yaml-file.d.ts","sourceRoot":"","sources":["../../../../src/factories/kubernetes/yaml/yaml-file.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,KAAK,EACV,eAAe,EACf,iBAAiB,EAElB,MAAM,mCAAmC,CAAC;AAqB3C,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;IAC3C,kBAAkB,CAAC,EAAE,SAAS,GAAG,cAAc,GAAG,MAAM,CAAC;CAC1D;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,wBAAgB,QAAQ,CAAC,MAAM,EAAE,cAAc,GAAG,iBAAiB,CAAC,eAAe,EAAE,CAAC,CAuHrF;AAED;;;;;;;GAOG;AACH;;GAEG;AACH,wBAAgB,cAAc,CAC5B,IAAI,EAAE,MAAM,EACZ,SAAS,CAAC,EAAE,MAAM,GACjB,iBAAiB,CAAC,eAAe,EAAE,CAAC,CAWtC"}
@@ -1,6 +1,7 @@
1
1
  import * as yaml from 'js-yaml';
2
- import { PathResolver } from '../../../core/yaml/path-resolver.js';
3
2
  import { isKubernetesRef } from '../../../core/dependencies/type-guards.js';
3
+ import { PathResolver } from '../../../core/yaml/path-resolver.js';
4
+ import { registerDeploymentClosure } from '../../shared.js';
4
5
  /**
5
6
  * Parse YAML content into Kubernetes manifests
6
7
  */
@@ -39,7 +40,7 @@ function parseYamlManifests(yamlContent) {
39
40
  * }),
40
41
  *
41
42
  * // This is a normal Enhanced<> resource
42
- * webapp: simpleDeployment({
43
+ * webapp: simple.Deployment({
43
44
  * name: 'nginx',
44
45
  * image: 'nginx',
45
46
  * replicas: schema.spec.replicas
@@ -50,132 +51,142 @@ function parseYamlManifests(yamlContent) {
50
51
  * ```
51
52
  */
52
53
  export function yamlFile(config) {
53
- // Return a closure that will be executed during deployment when dependencies are ready
54
- return async (deploymentContext) => {
55
- const pathResolver = new PathResolver();
56
- // Resolve any references in the config (e.g., namespace could reference another resource)
57
- const resolvedNamespace = config.namespace && isKubernetesRef(config.namespace)
58
- ? await deploymentContext.resolveReference(config.namespace)
59
- : config.namespace;
60
- const resolvedContent = await pathResolver.resolveContent(config.path, config.name);
61
- const manifests = parseYamlManifests(resolvedContent.content);
62
- const results = [];
63
- const strategy = config.deploymentStrategy || 'replace';
64
- for (const manifest of manifests) {
65
- if (resolvedNamespace && !manifest.metadata?.namespace) {
66
- manifest.metadata = { ...manifest.metadata, namespace: resolvedNamespace };
67
- }
68
- try {
69
- // Apply via alchemy if scope is configured, otherwise direct to Kubernetes
70
- if (deploymentContext.alchemyScope) {
71
- // For now, use the Kubernetes API even when alchemy scope is available
72
- // TODO: Implement proper alchemy integration for YAML resources
73
- if (deploymentContext.kubernetesApi) {
54
+ // Use generic deployment closure registration for composition context support
55
+ return registerDeploymentClosure(() => {
56
+ // Create the deployment closure
57
+ const closure = async (deploymentContext) => {
58
+ const pathResolver = new PathResolver();
59
+ // Resolve any references in the config (e.g., namespace could reference another resource)
60
+ const resolvedNamespace = config.namespace && isKubernetesRef(config.namespace)
61
+ ? await deploymentContext.resolveReference(config.namespace)
62
+ : config.namespace;
63
+ const resolvedContent = await pathResolver.resolveContent(config.path, config.name);
64
+ const manifests = parseYamlManifests(resolvedContent.content);
65
+ const results = [];
66
+ const strategy = config.deploymentStrategy || 'replace';
67
+ for (const manifest of manifests) {
68
+ if (resolvedNamespace && !manifest.metadata?.namespace) {
69
+ manifest.metadata = { ...manifest.metadata, namespace: resolvedNamespace };
70
+ }
71
+ try {
72
+ // Apply via alchemy if scope is configured, otherwise direct to Kubernetes
73
+ if (deploymentContext.alchemyScope) {
74
+ // For now, use the Kubernetes API even when alchemy scope is available
75
+ // TODO: Implement proper alchemy integration for YAML resources
76
+ if (deploymentContext.kubernetesApi) {
77
+ await deploymentContext.kubernetesApi.create(manifest);
78
+ }
79
+ else {
80
+ throw new Error('No Kubernetes API available for YAML deployment');
81
+ }
82
+ }
83
+ else if (deploymentContext.kubernetesApi) {
74
84
  await deploymentContext.kubernetesApi.create(manifest);
75
85
  }
76
86
  else {
77
- throw new Error('No Kubernetes API available for YAML deployment');
87
+ throw new Error('No deployment method available: neither alchemyScope nor kubernetesApi provided');
78
88
  }
89
+ results.push({
90
+ kind: manifest.kind || 'Unknown',
91
+ name: manifest.metadata?.name || 'unknown',
92
+ namespace: manifest.metadata?.namespace || undefined,
93
+ apiVersion: manifest.apiVersion || 'v1',
94
+ });
79
95
  }
80
- else if (deploymentContext.kubernetesApi) {
81
- await deploymentContext.kubernetesApi.create(manifest);
82
- }
83
- else {
84
- throw new Error('No deployment method available: neither alchemyScope nor kubernetesApi provided');
85
- }
86
- results.push({
87
- kind: manifest.kind || 'Unknown',
88
- name: manifest.metadata?.name || 'unknown',
89
- namespace: manifest.metadata?.namespace || undefined,
90
- apiVersion: manifest.apiVersion || 'v1'
91
- });
92
- }
93
- catch (error) {
94
- // Handle conflicts based on deployment strategy
95
- if (error?.response?.statusCode === 409 || error?.statusCode === 409) {
96
- const resourceName = `${manifest.kind}/${manifest.metadata?.name}`;
97
- if (strategy === 'skipIfExists') {
98
- console.log(`⚠️ Skipping existing resource: ${resourceName}`);
99
- results.push({
100
- kind: manifest.kind || 'Unknown',
101
- name: manifest.metadata?.name || 'unknown',
102
- namespace: manifest.metadata?.namespace || undefined,
103
- apiVersion: manifest.apiVersion || 'v1'
104
- });
105
- }
106
- else if (strategy === 'replace') {
107
- console.log(`🔄 Replacing existing resource: ${resourceName}`);
108
- // Try to update/replace the resource
109
- try {
110
- if (deploymentContext.kubernetesApi) {
111
- // Check if resource exists first
112
- let existing;
113
- try {
114
- const readResult = await deploymentContext.kubernetesApi.read({
115
- apiVersion: manifest.apiVersion,
116
- kind: manifest.kind,
117
- metadata: {
118
- name: manifest.metadata?.name || '',
119
- namespace: manifest.metadata?.namespace || 'default',
120
- },
121
- });
122
- existing = readResult.body;
123
- }
124
- catch (error) {
125
- // If it's a 404, the resource doesn't exist
126
- if (error.statusCode !== 404) {
127
- throw error;
128
- }
129
- }
130
- if (existing) {
131
- // Resource exists, use patch for safer updates
132
- await deploymentContext.kubernetesApi.patch(manifest);
133
- }
134
- else {
135
- // Resource does not exist, create it
136
- await deploymentContext.kubernetesApi.create(manifest);
137
- }
138
- }
96
+ catch (error) {
97
+ // Handle conflicts based on deployment strategy
98
+ if (error?.response?.statusCode === 409 || error?.statusCode === 409) {
99
+ const resourceName = `${manifest.kind}/${manifest.metadata?.name}`;
100
+ if (strategy === 'skipIfExists') {
101
+ console.log(`⚠️ Skipping existing resource: ${resourceName}`);
139
102
  results.push({
140
103
  kind: manifest.kind || 'Unknown',
141
104
  name: manifest.metadata?.name || 'unknown',
142
105
  namespace: manifest.metadata?.namespace || undefined,
143
- apiVersion: manifest.apiVersion || 'v1'
106
+ apiVersion: manifest.apiVersion || 'v1',
144
107
  });
145
108
  }
146
- catch (replaceError) {
147
- console.error(`❌ Failed to replace resource ${resourceName}:`, replaceError);
148
- throw replaceError;
109
+ else if (strategy === 'replace') {
110
+ console.log(`🔄 Replacing existing resource: ${resourceName}`);
111
+ // Try to update/replace the resource
112
+ try {
113
+ if (deploymentContext.kubernetesApi) {
114
+ // Check if resource exists first
115
+ let existing;
116
+ try {
117
+ const readResult = await deploymentContext.kubernetesApi.read({
118
+ apiVersion: manifest.apiVersion,
119
+ kind: manifest.kind,
120
+ metadata: {
121
+ name: manifest.metadata?.name || '',
122
+ namespace: manifest.metadata?.namespace || 'default',
123
+ },
124
+ });
125
+ existing = readResult.body;
126
+ }
127
+ catch (error) {
128
+ // If it's a 404, the resource doesn't exist
129
+ if (error.statusCode !== 404) {
130
+ throw error;
131
+ }
132
+ }
133
+ if (existing) {
134
+ // Resource exists, use patch for safer updates
135
+ await deploymentContext.kubernetesApi.patch(manifest);
136
+ }
137
+ else {
138
+ // Resource does not exist, create it
139
+ await deploymentContext.kubernetesApi.create(manifest);
140
+ }
141
+ }
142
+ results.push({
143
+ kind: manifest.kind || 'Unknown',
144
+ name: manifest.metadata?.name || 'unknown',
145
+ namespace: manifest.metadata?.namespace || undefined,
146
+ apiVersion: manifest.apiVersion || 'v1',
147
+ });
148
+ }
149
+ catch (replaceError) {
150
+ console.error(`❌ Failed to replace resource ${resourceName}:`, replaceError);
151
+ throw replaceError;
152
+ }
153
+ }
154
+ else {
155
+ // strategy === 'fail' (default behavior)
156
+ throw error;
149
157
  }
150
158
  }
151
159
  else {
152
- // strategy === 'fail' (default behavior)
160
+ // Non-conflict errors should always be thrown
153
161
  throw error;
154
162
  }
155
163
  }
156
- else {
157
- // Non-conflict errors should always be thrown
158
- throw error;
159
- }
160
164
  }
161
- }
162
- return results;
163
- };
165
+ return results;
166
+ };
167
+ return closure;
168
+ }, config.name);
164
169
  }
165
170
  /**
166
171
  * Simplified YAML file factory for quick usage
167
172
  * @example
168
173
  * ```typescript
169
- * simpleYamlFile('./manifests/configmap.yaml')
170
- * simpleYamlFile('git:github.com/fluxcd/flux2/manifests/install/flux-system.yaml@main', 'flux-system')
174
+ * simple.YamlFile('./manifests/configmap.yaml')
175
+ * simple.YamlFile('git:github.com/fluxcd/flux2/manifests/install/flux-system.yaml@main', 'flux-system')
171
176
  * ```
172
177
  */
178
+ /**
179
+ * @deprecated Use simple.YamlFile() instead - import { simple } from 'typekro'; simple.YamlFile(...)
180
+ */
173
181
  export function simpleYamlFile(path, namespace) {
174
- const name = path.split('/').pop()?.replace(/\.(yaml|yml)$/, '') || 'yaml-file';
182
+ const name = path
183
+ .split('/')
184
+ .pop()
185
+ ?.replace(/\.(yaml|yml)$/, '') || 'yaml-file';
175
186
  return yamlFile({
176
187
  name,
177
188
  path,
178
- ...(namespace && { namespace })
189
+ ...(namespace && { namespace }),
179
190
  });
180
191
  }
181
192
  //# sourceMappingURL=yaml-file.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"yaml-file.js","sourceRoot":"","sources":["../../../../src/factories/kubernetes/yaml/yaml-file.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"yaml-file.js","sourceRoot":"","sources":["../../../../src/factories/kubernetes/yaml/yaml-file.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,55 @@
6
6
  */
7
7
  import type { V1PodSpec } from '@kubernetes/client-node';
8
8
  import type { Enhanced, KubernetesResource } from '../core/types.js';
9
+ /**
10
+ * Context for imperative composition pattern
11
+ * Tracks resources and deployment closures created during composition function execution
12
+ */
13
+ export interface CompositionContext {
14
+ /** Map of resource ID to Enhanced resource */
15
+ resources: Record<string, Enhanced<any, any>>;
16
+ /** Map of closure ID to deployment closure */
17
+ closures: Record<string, any>;
18
+ /** Counter for generating unique resource IDs */
19
+ resourceCounter: number;
20
+ /** Counter for generating unique closure IDs */
21
+ closureCounter: number;
22
+ /** Add a resource to the context */
23
+ addResource(id: string, resource: Enhanced<any, any>): void;
24
+ /** Add a deployment closure to the context */
25
+ addClosure(id: string, closure: any): void;
26
+ /** Generate a unique resource ID */
27
+ generateResourceId(kind: string, name?: string): string;
28
+ /** Generate a unique closure ID */
29
+ generateClosureId(name?: string): string;
30
+ }
31
+ /**
32
+ * Get the current composition context if one is active
33
+ * @returns The active composition context or undefined if not in composition
34
+ */
35
+ export declare function getCurrentCompositionContext(): CompositionContext | undefined;
36
+ /**
37
+ * Run a function with a composition context
38
+ * @param context The composition context to use
39
+ * @param fn The function to run with the context
40
+ * @returns The result of the function
41
+ */
42
+ export declare function runWithCompositionContext<T>(context: CompositionContext, fn: () => T): T;
43
+ /**
44
+ * Generic deployment closure registration wrapper
45
+ * Automatically registers any deployment closure with the active composition context
46
+ *
47
+ * @param closureFactory Function that creates the deployment closure
48
+ * @param name Optional name for the closure (used for ID generation)
49
+ * @returns The deployment closure, registered with context if active
50
+ */
51
+ export declare function registerDeploymentClosure<T>(closureFactory: () => T, name?: string): T;
52
+ /**
53
+ * Create a new composition context with default implementations
54
+ * @param name Optional name for the composition (used in ID generation)
55
+ * @returns A new composition context
56
+ */
57
+ export declare function createCompositionContext(name?: string): CompositionContext;
9
58
  export declare function createResource<TSpec extends object, TStatus extends object>(resource: KubernetesResource<TSpec, TStatus>): Enhanced<TSpec, TStatus>;
10
59
  export declare function processPodSpec(podSpec?: V1PodSpec): V1PodSpec | undefined;
11
60
  //# sourceMappingURL=shared.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/factories/shared.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAY,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAInE,OAAO,KAAK,EACV,QAAQ,EACR,kBAAkB,EAGnB,MAAM,kBAAkB,CAAC;AA6T1B,wBAAgB,cAAc,CAAC,KAAK,SAAS,MAAM,EAAE,OAAO,SAAS,MAAM,EACzE,QAAQ,EAAE,kBAAkB,CAAC,KAAK,EAAE,OAAO,CAAC,GAC3C,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,CAwD1B;AAED,wBAAgB,cAAc,CAAC,OAAO,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,CAoBzE"}
1
+ {"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/factories/shared.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAY,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAInE,OAAO,KAAK,EACV,QAAQ,EACR,kBAAkB,EAGnB,MAAM,kBAAkB,CAAC;AAe1B;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC,8CAA8C;IAC9C,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;IAC9C,8CAA8C;IAC9C,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAC9B,iDAAiD;IACjD,eAAe,EAAE,MAAM,CAAC;IACxB,gDAAgD;IAChD,cAAc,EAAE,MAAM,CAAC;IACvB,oCAAoC;IACpC,WAAW,CAAC,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,IAAI,CAAC;IAC5D,8CAA8C;IAC9C,UAAU,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,IAAI,CAAC;IAC3C,oCAAoC;IACpC,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxD,mCAAmC;IACnC,iBAAiB,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;CAC1C;AAQD;;;GAGG;AACH,wBAAgB,4BAA4B,IAAI,kBAAkB,GAAG,SAAS,CAE7E;AAED;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,CAAC,EAAE,OAAO,EAAE,kBAAkB,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAExF;AAED;;;;;;;GAOG;AACH,wBAAgB,yBAAyB,CAAC,CAAC,EAAE,cAAc,EAAE,MAAM,CAAC,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,CAAC,CAYtF;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,kBAAkB,CAoB1E;AAoTD,wBAAgB,cAAc,CAAC,KAAK,SAAS,MAAM,EAAE,OAAO,SAAS,MAAM,EACzE,QAAQ,EAAE,kBAAkB,CAAC,KAAK,EAAE,OAAO,CAAC,GAC3C,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,CA8D1B;AAED,wBAAgB,cAAc,CAAC,OAAO,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,CAoBzE"}
@@ -4,16 +4,83 @@
4
4
  * This module contains common utilities and helper functions that are used
5
5
  * across all factory modules for creating Kubernetes resources.
6
6
  */
7
- import { getComponentLogger } from '../core/logging/index.js';
7
+ import { AsyncLocalStorage } from 'node:async_hooks';
8
8
  import { KUBERNETES_REF_BRAND } from '../core/constants/brands.js';
9
- import { isCelExpression } from '../utils/type-guards.js';
10
- import { generateDeterministicResourceId, isKubernetesRef } from '../utils/index.js';
9
+ import { getComponentLogger } from '../core/logging/index.js';
11
10
  import { ReadinessEvaluatorRegistry } from '../core/readiness/index.js';
12
11
  import { validateResourceId } from '../core/validation/cel-validator.js';
12
+ import { generateDeterministicResourceId, isKubernetesRef } from '../utils/index';
13
+ import { isCelExpression } from '../utils/type-guards.js';
13
14
  // Check for the debug environment variable
14
15
  const IS_DEBUG_MODE = process.env.TYPEKRO_DEBUG === 'true';
15
16
  // Logger for debug mode
16
17
  const debugLogger = getComponentLogger('factory-proxy');
18
+ /**
19
+ * AsyncLocalStorage for composition context
20
+ * Enables context-aware resource registration across async boundaries
21
+ */
22
+ const COMPOSITION_CONTEXT = new AsyncLocalStorage();
23
+ /**
24
+ * Get the current composition context if one is active
25
+ * @returns The active composition context or undefined if not in composition
26
+ */
27
+ export function getCurrentCompositionContext() {
28
+ return COMPOSITION_CONTEXT.getStore();
29
+ }
30
+ /**
31
+ * Run a function with a composition context
32
+ * @param context The composition context to use
33
+ * @param fn The function to run with the context
34
+ * @returns The result of the function
35
+ */
36
+ export function runWithCompositionContext(context, fn) {
37
+ return COMPOSITION_CONTEXT.run(context, fn);
38
+ }
39
+ /**
40
+ * Generic deployment closure registration wrapper
41
+ * Automatically registers any deployment closure with the active composition context
42
+ *
43
+ * @param closureFactory Function that creates the deployment closure
44
+ * @param name Optional name for the closure (used for ID generation)
45
+ * @returns The deployment closure, registered with context if active
46
+ */
47
+ export function registerDeploymentClosure(closureFactory, name) {
48
+ const context = getCurrentCompositionContext();
49
+ if (context) {
50
+ const closure = closureFactory();
51
+ const closureId = context.generateClosureId(name);
52
+ context.addClosure(closureId, closure);
53
+ return closure;
54
+ }
55
+ // Outside composition context - return closure as-is
56
+ return closureFactory();
57
+ }
58
+ /**
59
+ * Create a new composition context with default implementations
60
+ * @param name Optional name for the composition (used in ID generation)
61
+ * @returns A new composition context
62
+ */
63
+ export function createCompositionContext(name) {
64
+ return {
65
+ resources: {},
66
+ closures: {},
67
+ resourceCounter: 0,
68
+ closureCounter: 0,
69
+ addResource(id, resource) {
70
+ this.resources[id] = resource;
71
+ },
72
+ addClosure(id, closure) {
73
+ this.closures[id] = closure;
74
+ },
75
+ generateResourceId(kind, resourceName) {
76
+ return resourceName || `${kind.toLowerCase()}-${++this.resourceCounter}`;
77
+ },
78
+ generateClosureId(closureName) {
79
+ const prefix = name ? `${name}-` : '';
80
+ return closureName ? `${prefix}${closureName}` : `${prefix}closure-${++this.closureCounter}`;
81
+ },
82
+ };
83
+ }
17
84
  // =============================================================================
18
85
  // PROXY ENGINE & BASE FACTORY
19
86
  // =============================================================================
@@ -310,6 +377,11 @@ export function createResource(resource) {
310
377
  resourceId = generateDeterministicResourceId(resource.kind, name, namespace);
311
378
  }
312
379
  const enhanced = createGenericProxyResource(resourceId, resource);
380
+ // Auto-register with composition context if active (but not for external references)
381
+ const context = getCurrentCompositionContext();
382
+ if (context && !resource.__externalRef) {
383
+ context.addResource(resourceId, enhanced);
384
+ }
313
385
  // Always provide a readiness evaluator for factory-created resources
314
386
  const defaultEvaluator = createDefaultReadinessEvaluator(resource.kind);
315
387
  Object.defineProperty(enhanced, 'readinessEvaluator', {
@@ -1 +1 @@
1
- {"version":3,"file":"shared.js","sourceRoot":"","sources":["../../src/factories/shared.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shared.js","sourceRoot":"","sources":["../../src/factories/shared.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Simple HPA Factory
3
+ *
4
+ * This module provides a simplified factory function for creating
5
+ * Kubernetes HorizontalPodAutoscaler resources with sensible defaults.
6
+ */
7
+ import type { Enhanced } from '../../../core/types.js';
8
+ import type { V2HpaSpec, V2HpaStatus } from '../../kubernetes/types.js';
9
+ import type { HpaConfig } from '../types.js';
10
+ /**
11
+ * Creates a simple HPA with sensible defaults
12
+ *
13
+ * @param config - Configuration for the horizontal pod autoscaler
14
+ * @returns Enhanced HorizontalPodAutoscaler resource
15
+ */
16
+ export declare function Hpa(config: HpaConfig): Enhanced<V2HpaSpec, V2HpaStatus>;
17
+ //# sourceMappingURL=horizontal-pod-autoscaler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"horizontal-pod-autoscaler.d.ts","sourceRoot":"","sources":["../../../../src/factories/simple/autoscaling/horizontal-pod-autoscaler.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAEvD,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C;;;;;GAKG;AACH,wBAAgB,GAAG,CAAC,MAAM,EAAE,SAAS,GAAG,QAAQ,CAAC,SAAS,EAAE,WAAW,CAAC,CAiCvE"}
@@ -0,0 +1,46 @@
1
+ /**
2
+ * Simple HPA Factory
3
+ *
4
+ * This module provides a simplified factory function for creating
5
+ * Kubernetes HorizontalPodAutoscaler resources with sensible defaults.
6
+ */
7
+ import { horizontalPodAutoscaler } from '../../kubernetes/autoscaling/horizontal-pod-autoscaler.js';
8
+ /**
9
+ * Creates a simple HPA with sensible defaults
10
+ *
11
+ * @param config - Configuration for the horizontal pod autoscaler
12
+ * @returns Enhanced HorizontalPodAutoscaler resource
13
+ */
14
+ export function Hpa(config) {
15
+ const metrics = [];
16
+ if (config.cpuUtilization) {
17
+ metrics.push({
18
+ type: 'Resource',
19
+ resource: {
20
+ name: 'cpu',
21
+ target: {
22
+ type: 'Utilization',
23
+ averageUtilization: config.cpuUtilization,
24
+ },
25
+ },
26
+ });
27
+ }
28
+ return horizontalPodAutoscaler({
29
+ metadata: {
30
+ name: config.name,
31
+ ...(config.namespace && { namespace: config.namespace }),
32
+ labels: { app: config.name },
33
+ },
34
+ spec: {
35
+ scaleTargetRef: {
36
+ apiVersion: 'apps/v1',
37
+ kind: config.target.kind,
38
+ name: config.target.name,
39
+ },
40
+ minReplicas: config.minReplicas,
41
+ maxReplicas: config.maxReplicas,
42
+ ...(metrics.length > 0 && { metrics }),
43
+ },
44
+ });
45
+ }
46
+ //# sourceMappingURL=horizontal-pod-autoscaler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"horizontal-pod-autoscaler.js","sourceRoot":"","sources":["../../../../src/factories/simple/autoscaling/horizontal-pod-autoscaler.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,uBAAuB,EAAE,MAAM,2DAA2D,CAAC;AAIpG;;;;;GAKG;AACH,MAAM,UAAU,GAAG,CAAC,MAAiB;IACnC,MAAM,OAAO,GAAG,EAAE,CAAC;IAEnB,IAAI,MAAM,CAAC,cAAc,EAAE,CAAC;QAC1B,OAAO,CAAC,IAAI,CAAC;YACX,IAAI,EAAE,UAAU;YAChB,QAAQ,EAAE;gBACR,IAAI,EAAE,KAAK;gBACX,MAAM,EAAE;oBACN,IAAI,EAAE,aAAa;oBACnB,kBAAkB,EAAE,MAAM,CAAC,cAAc;iBAC1C;aACF;SACF,CAAC,CAAC;IACL,CAAC;IAED,OAAO,uBAAuB,CAAC;QAC7B,QAAQ,EAAE;YACR,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,GAAG,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC;YACxD,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,CAAC,IAAI,EAAE;SAC7B;QACD,IAAI,EAAE;YACJ,cAAc,EAAE;gBACd,UAAU,EAAE,SAAS;gBACrB,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI;gBACxB,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,IAAI;aACzB;YACD,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,GAAG,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC;SACvC;KACF,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Simple Autoscaling Factories
3
+ *
4
+ * This module provides simplified factory functions for creating common
5
+ * Kubernetes autoscaling resources with sensible defaults.
6
+ */
7
+ export { Hpa } from './horizontal-pod-autoscaler.js';
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/factories/simple/autoscaling/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,gCAAgC,CAAC"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Simple Autoscaling Factories
3
+ *
4
+ * This module provides simplified factory functions for creating common
5
+ * Kubernetes autoscaling resources with sensible defaults.
6
+ */
7
+ export { Hpa } from './horizontal-pod-autoscaler.js';
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/factories/simple/autoscaling/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,gCAAgC,CAAC"}
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Simple ConfigMap Factory
3
+ *
4
+ * This module provides a simplified factory function for creating
5
+ * Kubernetes ConfigMap resources with sensible defaults.
6
+ */
7
+ import type { Enhanced } from '../../../core/types.js';
8
+ import type { V1ConfigMapData } from '../../kubernetes/types.js';
9
+ import type { ConfigMapConfig } from '../types.js';
10
+ /**
11
+ * Creates a simple ConfigMap with sensible defaults
12
+ *
13
+ * @param config - Configuration for the config map
14
+ * @returns Enhanced ConfigMap resource
15
+ */
16
+ export declare function ConfigMap(config: ConfigMapConfig): Enhanced<V1ConfigMapData, unknown>;
17
+ //# sourceMappingURL=config-map.d.ts.map