@xemahq/xema 0.14.0 → 0.15.0

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 (418) hide show
  1. package/README.md +23 -2
  2. package/dist/assets/appliance-base/distribution.lock.json +5144 -0
  3. package/dist/assets/appliance-base/images.lock.json +1706 -0
  4. package/dist/assets/appliance-lean/distribution.lock.json +2888 -0
  5. package/dist/assets/appliance-lean/images.lock.json +1229 -0
  6. package/dist/assets/boot-graph.json +339 -29
  7. package/dist/assets/cloud/distribution.lock.json +5278 -0
  8. package/dist/assets/cloud/images.lock.json +1713 -0
  9. package/dist/assets/core/distribution.lock.json +1802 -125
  10. package/dist/assets/core/images.lock.json +1175 -235
  11. package/dist/assets/distribution-assets.manifest.json +147 -0
  12. package/dist/assets/keycloak/realm-xema.json +412 -0
  13. package/dist/assets/minimal/distribution.lock.json +2710 -0
  14. package/dist/assets/minimal/images.lock.json +1149 -0
  15. package/dist/assets/oss/distribution.lock.json +2438 -226
  16. package/dist/assets/oss/images.lock.json +1502 -618
  17. package/dist/assets/starter/distribution.lock.json +3422 -0
  18. package/dist/assets/starter/images.lock.json +1404 -0
  19. package/dist/cli.d.ts.map +1 -1
  20. package/dist/cli.js +4 -0
  21. package/dist/cli.js.map +1 -1
  22. package/dist/commands/apply.js +1 -1
  23. package/dist/commands/apply.js.map +1 -1
  24. package/dist/commands/biome.d.ts.map +1 -1
  25. package/dist/commands/biome.js +84 -7
  26. package/dist/commands/biome.js.map +1 -1
  27. package/dist/commands/canopy.js +1 -1
  28. package/dist/commands/canopy.js.map +1 -1
  29. package/dist/commands/dev.d.ts.map +1 -1
  30. package/dist/commands/dev.js +27 -5
  31. package/dist/commands/dev.js.map +1 -1
  32. package/dist/commands/dist.d.ts +13 -0
  33. package/dist/commands/dist.d.ts.map +1 -1
  34. package/dist/commands/dist.js +50 -10
  35. package/dist/commands/dist.js.map +1 -1
  36. package/dist/commands/doctor.d.ts +25 -0
  37. package/dist/commands/doctor.d.ts.map +1 -1
  38. package/dist/commands/doctor.js +422 -18
  39. package/dist/commands/doctor.js.map +1 -1
  40. package/dist/commands/down.d.ts +10 -0
  41. package/dist/commands/down.d.ts.map +1 -1
  42. package/dist/commands/down.js +81 -41
  43. package/dist/commands/down.js.map +1 -1
  44. package/dist/commands/export.js +1 -1
  45. package/dist/commands/export.js.map +1 -1
  46. package/dist/commands/import.js +1 -1
  47. package/dist/commands/import.js.map +1 -1
  48. package/dist/commands/init.d.ts.map +1 -1
  49. package/dist/commands/init.js +56 -3
  50. package/dist/commands/init.js.map +1 -1
  51. package/dist/commands/installation.d.ts.map +1 -1
  52. package/dist/commands/installation.js +169 -12
  53. package/dist/commands/installation.js.map +1 -1
  54. package/dist/commands/license.d.ts +3 -0
  55. package/dist/commands/license.d.ts.map +1 -0
  56. package/dist/commands/license.js +97 -0
  57. package/dist/commands/license.js.map +1 -0
  58. package/dist/commands/login.d.ts +4 -0
  59. package/dist/commands/login.d.ts.map +1 -0
  60. package/dist/commands/login.js +127 -0
  61. package/dist/commands/login.js.map +1 -0
  62. package/dist/commands/logs.d.ts +21 -0
  63. package/dist/commands/logs.d.ts.map +1 -1
  64. package/dist/commands/logs.js +131 -22
  65. package/dist/commands/logs.js.map +1 -1
  66. package/dist/commands/objects.js +2 -2
  67. package/dist/commands/objects.js.map +1 -1
  68. package/dist/commands/plan.js +1 -1
  69. package/dist/commands/plan.js.map +1 -1
  70. package/dist/commands/run.js +1 -1
  71. package/dist/commands/run.js.map +1 -1
  72. package/dist/commands/serve.d.ts.map +1 -1
  73. package/dist/commands/serve.js +39 -6
  74. package/dist/commands/serve.js.map +1 -1
  75. package/dist/commands/shell.js +1 -1
  76. package/dist/commands/shell.js.map +1 -1
  77. package/dist/commands/up.d.ts.map +1 -1
  78. package/dist/commands/up.js +20 -5
  79. package/dist/commands/up.js.map +1 -1
  80. package/dist/dev/env-defaults.d.ts +1 -0
  81. package/dist/dev/env-defaults.d.ts.map +1 -1
  82. package/dist/dev/env-defaults.js +15 -6
  83. package/dist/dev/env-defaults.js.map +1 -1
  84. package/dist/dev/forked-worker-bootstrap-protocol.d.ts +17 -0
  85. package/dist/dev/forked-worker-bootstrap-protocol.d.ts.map +1 -0
  86. package/dist/dev/forked-worker-bootstrap-protocol.js +35 -0
  87. package/dist/dev/forked-worker-bootstrap-protocol.js.map +1 -0
  88. package/dist/dev/forked-worker-bootstrap.d.ts +18 -0
  89. package/dist/dev/forked-worker-bootstrap.d.ts.map +1 -0
  90. package/dist/dev/forked-worker-bootstrap.js +84 -0
  91. package/dist/dev/forked-worker-bootstrap.js.map +1 -0
  92. package/dist/dev/forked-worker.d.ts +14 -0
  93. package/dist/dev/forked-worker.d.ts.map +1 -1
  94. package/dist/dev/forked-worker.js +200 -33
  95. package/dist/dev/forked-worker.js.map +1 -1
  96. package/dist/lib/control-plane.d.ts +5 -1
  97. package/dist/lib/control-plane.d.ts.map +1 -1
  98. package/dist/lib/control-plane.js +56 -6
  99. package/dist/lib/control-plane.js.map +1 -1
  100. package/dist/runtime/asset-provenance.d.ts +17 -0
  101. package/dist/runtime/asset-provenance.d.ts.map +1 -0
  102. package/dist/runtime/asset-provenance.js +29 -0
  103. package/dist/runtime/asset-provenance.js.map +1 -0
  104. package/dist/runtime/auth/client-bootstrap.d.ts +11 -0
  105. package/dist/runtime/auth/client-bootstrap.d.ts.map +1 -0
  106. package/dist/runtime/auth/client-bootstrap.js +60 -0
  107. package/dist/runtime/auth/client-bootstrap.js.map +1 -0
  108. package/dist/runtime/auth/device-flow.d.ts +43 -0
  109. package/dist/runtime/auth/device-flow.d.ts.map +1 -0
  110. package/dist/runtime/auth/device-flow.js +201 -0
  111. package/dist/runtime/auth/device-flow.js.map +1 -0
  112. package/dist/runtime/auth/session-auth.d.ts +8 -0
  113. package/dist/runtime/auth/session-auth.d.ts.map +1 -0
  114. package/dist/runtime/auth/session-auth.js +43 -0
  115. package/dist/runtime/auth/session-auth.js.map +1 -0
  116. package/dist/runtime/auth/session-store.d.ts +19 -0
  117. package/dist/runtime/auth/session-store.d.ts.map +1 -0
  118. package/dist/runtime/auth/session-store.js +83 -0
  119. package/dist/runtime/auth/session-store.js.map +1 -0
  120. package/dist/runtime/auth/token-claims.d.ts +2 -0
  121. package/dist/runtime/auth/token-claims.d.ts.map +1 -0
  122. package/dist/runtime/auth/token-claims.js +45 -0
  123. package/dist/runtime/auth/token-claims.js.map +1 -0
  124. package/dist/runtime/biome-provenance.d.ts +26 -0
  125. package/dist/runtime/biome-provenance.d.ts.map +1 -0
  126. package/dist/runtime/biome-provenance.js +70 -0
  127. package/dist/runtime/biome-provenance.js.map +1 -0
  128. package/dist/runtime/biome-publish.d.ts +14 -0
  129. package/dist/runtime/biome-publish.d.ts.map +1 -1
  130. package/dist/runtime/biome-publish.js +69 -5
  131. package/dist/runtime/biome-publish.js.map +1 -1
  132. package/dist/runtime/biome-scaffold.d.ts.map +1 -1
  133. package/dist/runtime/biome-scaffold.js +0 -2
  134. package/dist/runtime/biome-scaffold.js.map +1 -1
  135. package/dist/runtime/biome-validate.d.ts.map +1 -1
  136. package/dist/runtime/biome-validate.js +4 -2
  137. package/dist/runtime/biome-validate.js.map +1 -1
  138. package/dist/runtime/cleanup.d.ts +10 -0
  139. package/dist/runtime/cleanup.d.ts.map +1 -0
  140. package/dist/runtime/cleanup.js +35 -0
  141. package/dist/runtime/cleanup.js.map +1 -0
  142. package/dist/runtime/config/init-presets.d.ts.map +1 -1
  143. package/dist/runtime/config/init-presets.js +6 -3
  144. package/dist/runtime/config/init-presets.js.map +1 -1
  145. package/dist/runtime/distribution/available-biome.d.ts.map +1 -1
  146. package/dist/runtime/distribution/available-biome.js +2 -0
  147. package/dist/runtime/distribution/available-biome.js.map +1 -1
  148. package/dist/runtime/distribution/compose.d.ts +2 -1
  149. package/dist/runtime/distribution/compose.d.ts.map +1 -1
  150. package/dist/runtime/distribution/compose.js +1 -0
  151. package/dist/runtime/distribution/compose.js.map +1 -1
  152. package/dist/runtime/env-seeder.d.ts.map +1 -1
  153. package/dist/runtime/env-seeder.js +44 -13
  154. package/dist/runtime/env-seeder.js.map +1 -1
  155. package/dist/runtime/foreground.d.ts +6 -1
  156. package/dist/runtime/foreground.d.ts.map +1 -1
  157. package/dist/runtime/foreground.js +30 -7
  158. package/dist/runtime/foreground.js.map +1 -1
  159. package/dist/runtime/infra/infra-catalog.d.ts +33 -1
  160. package/dist/runtime/infra/infra-catalog.d.ts.map +1 -1
  161. package/dist/runtime/infra/infra-catalog.js +201 -10
  162. package/dist/runtime/infra/infra-catalog.js.map +1 -1
  163. package/dist/runtime/infra/infra-environment.d.ts +10 -0
  164. package/dist/runtime/infra/infra-environment.d.ts.map +1 -0
  165. package/dist/runtime/infra/infra-environment.js +76 -0
  166. package/dist/runtime/infra/infra-environment.js.map +1 -0
  167. package/dist/runtime/infra/infra-plan.d.ts +2 -1
  168. package/dist/runtime/infra/infra-plan.d.ts.map +1 -1
  169. package/dist/runtime/infra/infra-plan.js +10 -0
  170. package/dist/runtime/infra/infra-plan.js.map +1 -1
  171. package/dist/runtime/infra/infra-runner.d.ts +12 -2
  172. package/dist/runtime/infra/infra-runner.d.ts.map +1 -1
  173. package/dist/runtime/infra/infra-runner.js +194 -73
  174. package/dist/runtime/infra/infra-runner.js.map +1 -1
  175. package/dist/runtime/infra/keycloak-realm.d.ts +25 -0
  176. package/dist/runtime/infra/keycloak-realm.d.ts.map +1 -0
  177. package/dist/runtime/infra/keycloak-realm.js +116 -0
  178. package/dist/runtime/infra/keycloak-realm.js.map +1 -0
  179. package/dist/runtime/infra/postgres-endpoint.d.ts +8 -0
  180. package/dist/runtime/infra/postgres-endpoint.d.ts.map +1 -0
  181. package/dist/runtime/infra/postgres-endpoint.js +21 -0
  182. package/dist/runtime/infra/postgres-endpoint.js.map +1 -0
  183. package/dist/runtime/installation/compiler.d.ts +104 -27
  184. package/dist/runtime/installation/compiler.d.ts.map +1 -1
  185. package/dist/runtime/installation/compiler.js +361 -95
  186. package/dist/runtime/installation/compiler.js.map +1 -1
  187. package/dist/runtime/installation/contract.d.ts +234 -63
  188. package/dist/runtime/installation/contract.d.ts.map +1 -1
  189. package/dist/runtime/installation/contract.js +396 -74
  190. package/dist/runtime/installation/contract.js.map +1 -1
  191. package/dist/runtime/installation/current-launcher-renderer.d.ts +12 -0
  192. package/dist/runtime/installation/current-launcher-renderer.d.ts.map +1 -0
  193. package/dist/runtime/installation/current-launcher-renderer.js +123 -0
  194. package/dist/runtime/installation/current-launcher-renderer.js.map +1 -0
  195. package/dist/runtime/installation/diff.d.ts +15 -0
  196. package/dist/runtime/installation/diff.d.ts.map +1 -1
  197. package/dist/runtime/installation/diff.js +66 -29
  198. package/dist/runtime/installation/diff.js.map +1 -1
  199. package/dist/runtime/installation/format.js +4 -4
  200. package/dist/runtime/installation/format.js.map +1 -1
  201. package/dist/runtime/installation/from-current-config.d.ts +3 -2
  202. package/dist/runtime/installation/from-current-config.d.ts.map +1 -1
  203. package/dist/runtime/installation/from-current-config.js +214 -44
  204. package/dist/runtime/installation/from-current-config.js.map +1 -1
  205. package/dist/runtime/installation/helm-release-readiness.d.ts +9 -0
  206. package/dist/runtime/installation/helm-release-readiness.d.ts.map +1 -0
  207. package/dist/runtime/installation/helm-release-readiness.js +97 -0
  208. package/dist/runtime/installation/helm-release-readiness.js.map +1 -0
  209. package/dist/runtime/installation/helm-release.d.ts +24 -0
  210. package/dist/runtime/installation/helm-release.d.ts.map +1 -0
  211. package/dist/runtime/installation/helm-release.js +96 -0
  212. package/dist/runtime/installation/helm-release.js.map +1 -0
  213. package/dist/runtime/installation/index.d.ts +9 -0
  214. package/dist/runtime/installation/index.d.ts.map +1 -1
  215. package/dist/runtime/installation/index.js +9 -0
  216. package/dist/runtime/installation/index.js.map +1 -1
  217. package/dist/runtime/installation/json-schema.d.ts +4 -0
  218. package/dist/runtime/installation/json-schema.d.ts.map +1 -0
  219. package/dist/runtime/installation/json-schema.js +16 -0
  220. package/dist/runtime/installation/json-schema.js.map +1 -0
  221. package/dist/runtime/installation/kubernetes-readiness.d.ts +60 -0
  222. package/dist/runtime/installation/kubernetes-readiness.d.ts.map +1 -0
  223. package/dist/runtime/installation/kubernetes-readiness.js +384 -0
  224. package/dist/runtime/installation/kubernetes-readiness.js.map +1 -0
  225. package/dist/runtime/installation/lifecycle.d.ts +6 -4
  226. package/dist/runtime/installation/lifecycle.d.ts.map +1 -1
  227. package/dist/runtime/installation/lifecycle.js +94 -7
  228. package/dist/runtime/installation/lifecycle.js.map +1 -1
  229. package/dist/runtime/installation/readiness-proof.d.ts +72 -0
  230. package/dist/runtime/installation/readiness-proof.d.ts.map +1 -0
  231. package/dist/runtime/installation/readiness-proof.js +142 -0
  232. package/dist/runtime/installation/readiness-proof.js.map +1 -0
  233. package/dist/runtime/installation/readiness.d.ts +21 -0
  234. package/dist/runtime/installation/readiness.d.ts.map +1 -0
  235. package/dist/runtime/installation/readiness.js +418 -0
  236. package/dist/runtime/installation/readiness.js.map +1 -0
  237. package/dist/runtime/installation/setup-profile.d.ts +8 -0
  238. package/dist/runtime/installation/setup-profile.d.ts.map +1 -0
  239. package/dist/runtime/installation/setup-profile.js +41 -0
  240. package/dist/runtime/installation/setup-profile.js.map +1 -0
  241. package/dist/runtime/installation/setup-renderer.d.ts +31 -0
  242. package/dist/runtime/installation/setup-renderer.d.ts.map +1 -0
  243. package/dist/runtime/installation/setup-renderer.js +238 -0
  244. package/dist/runtime/installation/setup-renderer.js.map +1 -0
  245. package/dist/runtime/installation/state-store.d.ts +11 -3
  246. package/dist/runtime/installation/state-store.d.ts.map +1 -1
  247. package/dist/runtime/installation/state-store.js +157 -37
  248. package/dist/runtime/installation/state-store.js.map +1 -1
  249. package/dist/runtime/installation/status.d.ts +6 -12
  250. package/dist/runtime/installation/status.d.ts.map +1 -1
  251. package/dist/runtime/installation/status.js +28 -114
  252. package/dist/runtime/installation/status.js.map +1 -1
  253. package/dist/runtime/installation/support-bundle.d.ts.map +1 -1
  254. package/dist/runtime/installation/support-bundle.js +18 -3
  255. package/dist/runtime/installation/support-bundle.js.map +1 -1
  256. package/dist/runtime/installation/to-current-config.d.ts +4 -0
  257. package/dist/runtime/installation/to-current-config.d.ts.map +1 -0
  258. package/dist/runtime/installation/to-current-config.js +171 -0
  259. package/dist/runtime/installation/to-current-config.js.map +1 -0
  260. package/dist/runtime/installation/validation.d.ts.map +1 -1
  261. package/dist/runtime/installation/validation.js +78 -0
  262. package/dist/runtime/installation/validation.js.map +1 -1
  263. package/dist/runtime/installation/validators/common.d.ts.map +1 -1
  264. package/dist/runtime/installation/validators/common.js +7 -4
  265. package/dist/runtime/installation/validators/common.js.map +1 -1
  266. package/dist/runtime/installation/validators/infrastructure.d.ts.map +1 -1
  267. package/dist/runtime/installation/validators/infrastructure.js +20 -2
  268. package/dist/runtime/installation/validators/infrastructure.js.map +1 -1
  269. package/dist/runtime/installation/validators/operational.d.ts.map +1 -1
  270. package/dist/runtime/installation/validators/operational.js +44 -102
  271. package/dist/runtime/installation/validators/operational.js.map +1 -1
  272. package/dist/runtime/installation/validators/profile.d.ts.map +1 -1
  273. package/dist/runtime/installation/validators/profile.js +53 -51
  274. package/dist/runtime/installation/validators/profile.js.map +1 -1
  275. package/dist/runtime/installation/validators/secrets.d.ts.map +1 -1
  276. package/dist/runtime/installation/validators/secrets.js +44 -27
  277. package/dist/runtime/installation/validators/secrets.js.map +1 -1
  278. package/dist/runtime/launch.d.ts +10 -0
  279. package/dist/runtime/launch.d.ts.map +1 -1
  280. package/dist/runtime/launch.js +123 -18
  281. package/dist/runtime/launch.js.map +1 -1
  282. package/dist/runtime/license/license-clock.d.ts +12 -0
  283. package/dist/runtime/license/license-clock.d.ts.map +1 -0
  284. package/dist/runtime/license/license-clock.js +57 -0
  285. package/dist/runtime/license/license-clock.js.map +1 -0
  286. package/dist/runtime/license/license-report.d.ts +19 -0
  287. package/dist/runtime/license/license-report.d.ts.map +1 -0
  288. package/dist/runtime/license/license-report.js +105 -0
  289. package/dist/runtime/license/license-report.js.map +1 -0
  290. package/dist/runtime/license/license-store.d.ts +5 -0
  291. package/dist/runtime/license/license-store.d.ts.map +1 -0
  292. package/dist/runtime/license/license-store.js +11 -0
  293. package/dist/runtime/license/license-store.js.map +1 -0
  294. package/dist/runtime/license/registry-credential.d.ts +26 -0
  295. package/dist/runtime/license/registry-credential.d.ts.map +1 -0
  296. package/dist/runtime/license/registry-credential.js +94 -0
  297. package/dist/runtime/license/registry-credential.js.map +1 -0
  298. package/dist/runtime/license/resolve-license.d.ts +30 -0
  299. package/dist/runtime/license/resolve-license.d.ts.map +1 -0
  300. package/dist/runtime/license/resolve-license.js +73 -0
  301. package/dist/runtime/license/resolve-license.js.map +1 -0
  302. package/dist/runtime/license/store-license.d.ts +18 -0
  303. package/dist/runtime/license/store-license.d.ts.map +1 -0
  304. package/dist/runtime/license/store-license.js +26 -0
  305. package/dist/runtime/license/store-license.js.map +1 -0
  306. package/dist/runtime/lock-loader.d.ts +3 -6
  307. package/dist/runtime/lock-loader.d.ts.map +1 -1
  308. package/dist/runtime/lock-loader.js +26 -20
  309. package/dist/runtime/lock-loader.js.map +1 -1
  310. package/dist/runtime/native-process-group.d.ts +46 -0
  311. package/dist/runtime/native-process-group.d.ts.map +1 -0
  312. package/dist/runtime/native-process-group.js +390 -0
  313. package/dist/runtime/native-process-group.js.map +1 -0
  314. package/dist/runtime/paths.d.ts +1 -0
  315. package/dist/runtime/paths.d.ts.map +1 -1
  316. package/dist/runtime/paths.js +1 -0
  317. package/dist/runtime/paths.js.map +1 -1
  318. package/dist/runtime/roster.d.ts +4 -3
  319. package/dist/runtime/roster.d.ts.map +1 -1
  320. package/dist/runtime/roster.js +17 -5
  321. package/dist/runtime/roster.js.map +1 -1
  322. package/dist/runtime/run-manifest.d.ts +34 -5
  323. package/dist/runtime/run-manifest.d.ts.map +1 -1
  324. package/dist/runtime/run-manifest.js +434 -120
  325. package/dist/runtime/run-manifest.js.map +1 -1
  326. package/dist/runtime/runner/container-preflight.d.ts +77 -0
  327. package/dist/runtime/runner/container-preflight.d.ts.map +1 -0
  328. package/dist/runtime/runner/container-preflight.js +360 -0
  329. package/dist/runtime/runner/container-preflight.js.map +1 -0
  330. package/dist/runtime/runner/container-runner.d.ts +8 -0
  331. package/dist/runtime/runner/container-runner.d.ts.map +1 -1
  332. package/dist/runtime/runner/container-runner.js +93 -16
  333. package/dist/runtime/runner/container-runner.js.map +1 -1
  334. package/dist/runtime/runner/docker-cli.d.ts +30 -2
  335. package/dist/runtime/runner/docker-cli.d.ts.map +1 -1
  336. package/dist/runtime/runner/docker-cli.js +275 -11
  337. package/dist/runtime/runner/docker-cli.js.map +1 -1
  338. package/dist/runtime/runner/health-probe.d.ts +1 -0
  339. package/dist/runtime/runner/health-probe.d.ts.map +1 -1
  340. package/dist/runtime/runner/health-probe.js +3 -2
  341. package/dist/runtime/runner/health-probe.js.map +1 -1
  342. package/dist/runtime/runner/helm-cli.d.ts +19 -1
  343. package/dist/runtime/runner/helm-cli.d.ts.map +1 -1
  344. package/dist/runtime/runner/helm-cli.js +76 -8
  345. package/dist/runtime/runner/helm-cli.js.map +1 -1
  346. package/dist/runtime/runner/helm-runner.d.ts +3 -0
  347. package/dist/runtime/runner/helm-runner.d.ts.map +1 -1
  348. package/dist/runtime/runner/helm-runner.js +23 -7
  349. package/dist/runtime/runner/helm-runner.js.map +1 -1
  350. package/dist/runtime/runner/host-platform.d.ts +39 -0
  351. package/dist/runtime/runner/host-platform.d.ts.map +1 -0
  352. package/dist/runtime/runner/host-platform.js +136 -0
  353. package/dist/runtime/runner/host-platform.js.map +1 -0
  354. package/dist/runtime/runner/kube-cli.d.ts +23 -0
  355. package/dist/runtime/runner/kube-cli.d.ts.map +1 -0
  356. package/dist/runtime/runner/kube-cli.js +112 -0
  357. package/dist/runtime/runner/kube-cli.js.map +1 -0
  358. package/dist/runtime/runner/native-runner.d.ts.map +1 -1
  359. package/dist/runtime/runner/native-runner.js +27 -3
  360. package/dist/runtime/runner/native-runner.js.map +1 -1
  361. package/dist/runtime/runner/service-runner.d.ts +5 -0
  362. package/dist/runtime/runner/service-runner.d.ts.map +1 -1
  363. package/dist/runtime/runner/service-runner.js.map +1 -1
  364. package/dist/runtime/runner/stream-outcome.d.ts +7 -0
  365. package/dist/runtime/runner/stream-outcome.d.ts.map +1 -0
  366. package/dist/runtime/runner/stream-outcome.js +13 -0
  367. package/dist/runtime/runner/stream-outcome.js.map +1 -0
  368. package/dist/runtime/secrets/managed-local-cipher.d.ts +18 -0
  369. package/dist/runtime/secrets/managed-local-cipher.d.ts.map +1 -0
  370. package/dist/runtime/secrets/managed-local-cipher.js +110 -0
  371. package/dist/runtime/secrets/managed-local-cipher.js.map +1 -0
  372. package/dist/runtime/secrets/managed-local-files.d.ts +4 -0
  373. package/dist/runtime/secrets/managed-local-files.d.ts.map +1 -0
  374. package/dist/runtime/secrets/managed-local-files.js +132 -0
  375. package/dist/runtime/secrets/managed-local-files.js.map +1 -0
  376. package/dist/runtime/secrets/managed-local-key-provider.d.ts +27 -0
  377. package/dist/runtime/secrets/managed-local-key-provider.d.ts.map +1 -0
  378. package/dist/runtime/secrets/managed-local-key-provider.js +144 -0
  379. package/dist/runtime/secrets/managed-local-key-provider.js.map +1 -0
  380. package/dist/runtime/secrets/managed-local-secret-store.d.ts +18 -0
  381. package/dist/runtime/secrets/managed-local-secret-store.d.ts.map +1 -0
  382. package/dist/runtime/secrets/managed-local-secret-store.js +82 -0
  383. package/dist/runtime/secrets/managed-local-secret-store.js.map +1 -0
  384. package/dist/runtime/secrets/managed-local-store.d.ts +7 -0
  385. package/dist/runtime/secrets/managed-local-store.d.ts.map +1 -1
  386. package/dist/runtime/secrets/managed-local-store.js +46 -127
  387. package/dist/runtime/secrets/managed-local-store.js.map +1 -1
  388. package/dist/runtime/sources/credentials.d.ts +2 -0
  389. package/dist/runtime/sources/credentials.d.ts.map +1 -1
  390. package/dist/runtime/sources/credentials.js +49 -0
  391. package/dist/runtime/sources/credentials.js.map +1 -1
  392. package/dist/runtime/sources/kinds/distribution.js +3 -3
  393. package/dist/runtime/sources/kinds/distribution.js.map +1 -1
  394. package/dist/runtime/sources/manifest-walk.d.ts +1 -0
  395. package/dist/runtime/sources/manifest-walk.d.ts.map +1 -1
  396. package/dist/runtime/sources/manifest-walk.js +16 -11
  397. package/dist/runtime/sources/manifest-walk.js.map +1 -1
  398. package/dist/runtime/sources/schema.d.ts.map +1 -1
  399. package/dist/runtime/sources/schema.js +51 -3
  400. package/dist/runtime/sources/schema.js.map +1 -1
  401. package/dist/runtime/store-client.d.ts +1 -1
  402. package/dist/runtime/store-client.d.ts.map +1 -1
  403. package/dist/runtime/store-client.js +2 -1
  404. package/dist/runtime/store-client.js.map +1 -1
  405. package/dist/runtime/store-submit.d.ts +31 -0
  406. package/dist/runtime/store-submit.d.ts.map +1 -0
  407. package/dist/runtime/store-submit.js +77 -0
  408. package/dist/runtime/store-submit.js.map +1 -0
  409. package/dist/runtime/supervisor.d.ts +12 -0
  410. package/dist/runtime/supervisor.d.ts.map +1 -1
  411. package/dist/runtime/supervisor.js +141 -26
  412. package/dist/runtime/supervisor.js.map +1 -1
  413. package/package.json +20 -29
  414. package/LICENSE +0 -176
  415. package/dist/lib/command-registry.d.ts +0 -5
  416. package/dist/lib/command-registry.d.ts.map +0 -1
  417. package/dist/lib/command-registry.js +0 -17
  418. package/dist/lib/command-registry.js.map +0 -1
@@ -13,8 +13,26 @@ export declare class HelmCli {
13
13
  exec(args: readonly string[]): Promise<string>;
14
14
  execQuiet(args: readonly string[]): Promise<string>;
15
15
  available(): Promise<boolean>;
16
- listReleases(): Promise<string[]>;
17
16
  listTable(): Promise<string>;
17
+ listReleaseStates(): Promise<readonly HelmReleaseState[]>;
18
+ getReleaseValues(release: string): Promise<Readonly<Record<string, unknown>>>;
18
19
  uninstall(release: string): Promise<void>;
19
20
  }
21
+ export declare enum HelmReleaseStatus {
22
+ Unknown = "unknown",
23
+ Deployed = "deployed",
24
+ Uninstalled = "uninstalled",
25
+ Superseded = "superseded",
26
+ Failed = "failed",
27
+ Uninstalling = "uninstalling",
28
+ PendingInstall = "pending-install",
29
+ PendingUpgrade = "pending-upgrade",
30
+ PendingRollback = "pending-rollback"
31
+ }
32
+ export interface HelmReleaseState {
33
+ readonly name: string;
34
+ readonly namespace: string;
35
+ readonly revision: number;
36
+ readonly status: HelmReleaseStatus;
37
+ }
20
38
  //# sourceMappingURL=helm-cli.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"helm-cli.d.ts","sourceRoot":"","sources":["../../../src/runtime/runner/helm-cli.ts"],"names":[],"mappings":"AAaA,eAAO,MAAM,sBAAsB,SAAS,CAAC;AAC7C,eAAO,MAAM,uBAAuB,qCAAqC,CAAC;AAE1E,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACxC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC1C;AAED,qBAAa,OAAO;IAClB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAE7B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAqB;gBAEpC,IAAI,GAAE,cAAmB;IAMrC,IAAI,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAiBxC,SAAS,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IASnD,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC;IAM7B,YAAY,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IASjC,SAAS,IAAI,OAAO,CAAC,MAAM,CAAC;IAK5B,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAGhD"}
1
+ {"version":3,"file":"helm-cli.d.ts","sourceRoot":"","sources":["../../../src/runtime/runner/helm-cli.ts"],"names":[],"mappings":"AAaA,eAAO,MAAM,sBAAsB,SAAS,CAAC;AAC7C,eAAO,MAAM,uBAAuB,qCAAqC,CAAC;AAE1E,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACxC,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC1C;AAED,qBAAa,OAAO;IAClB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAE7B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAqB;gBAEpC,IAAI,GAAE,cAAmB;IAMrC,IAAI,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAiBxC,SAAS,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IASnD,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC;IAM7B,SAAS,IAAI,OAAO,CAAC,MAAM,CAAC;IAS5B,iBAAiB,IAAI,OAAO,CAAC,SAAS,gBAAgB,EAAE,CAAC;IAoBzD,gBAAgB,CACpB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAwBvC,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAGhD;AAMD,oBAAY,iBAAiB;IAC3B,OAAO,YAAY;IACnB,QAAQ,aAAa;IACrB,WAAW,gBAAgB;IAC3B,UAAU,eAAe;IACzB,MAAM,WAAW;IACjB,YAAY,iBAAiB;IAC7B,cAAc,oBAAoB;IAClC,cAAc,oBAAoB;IAClC,eAAe,qBAAqB;CACrC;AAED,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,iBAAiB,CAAC;CACpC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.HelmCli = exports.DEFAULT_HELM_CHART_REPO = exports.DEFAULT_HELM_NAMESPACE = void 0;
3
+ exports.HelmReleaseStatus = exports.HelmCli = exports.DEFAULT_HELM_CHART_REPO = exports.DEFAULT_HELM_NAMESPACE = void 0;
4
4
  const node_child_process_1 = require("node:child_process");
5
5
  exports.DEFAULT_HELM_NAMESPACE = 'xema';
6
6
  exports.DEFAULT_HELM_CHART_REPO = 'oci://registry.local/xema/charts';
@@ -40,19 +40,87 @@ class HelmCli {
40
40
  const out = await this.execQuiet(['version', '--short']);
41
41
  return out.trim().length > 0;
42
42
  }
43
- async listReleases() {
44
- const out = await this.execQuiet(['list', '-q', '--namespace', this.namespace]);
45
- return out
46
- .split('\n')
47
- .map((l) => l.trim())
48
- .filter((l) => l.length > 0);
49
- }
50
43
  async listTable() {
51
44
  return this.execQuiet(['list', '--namespace', this.namespace]);
52
45
  }
46
+ async listReleaseStates() {
47
+ const raw = await this.exec([
48
+ 'list',
49
+ '--namespace',
50
+ this.namespace,
51
+ '-o',
52
+ 'json',
53
+ ]);
54
+ const parsed = JSON.parse(raw);
55
+ if (!Array.isArray(parsed)) {
56
+ throw new Error('helm list returned a non-array payload.');
57
+ }
58
+ return parsed.map((value) => parseReleaseState(value));
59
+ }
60
+ async getReleaseValues(release) {
61
+ const raw = await this.exec([
62
+ 'get',
63
+ 'values',
64
+ release,
65
+ '--namespace',
66
+ this.namespace,
67
+ '-o',
68
+ 'json',
69
+ ]);
70
+ const parsed = JSON.parse(raw);
71
+ if (parsed === null) {
72
+ return {};
73
+ }
74
+ if (typeof parsed !== 'object' || Array.isArray(parsed)) {
75
+ throw new Error(`helm get values ${release} returned a non-object payload.`);
76
+ }
77
+ return parsed;
78
+ }
53
79
  async uninstall(release) {
54
80
  await this.exec(['uninstall', release, '--namespace', this.namespace]);
55
81
  }
56
82
  }
57
83
  exports.HelmCli = HelmCli;
84
+ var HelmReleaseStatus;
85
+ (function (HelmReleaseStatus) {
86
+ HelmReleaseStatus["Unknown"] = "unknown";
87
+ HelmReleaseStatus["Deployed"] = "deployed";
88
+ HelmReleaseStatus["Uninstalled"] = "uninstalled";
89
+ HelmReleaseStatus["Superseded"] = "superseded";
90
+ HelmReleaseStatus["Failed"] = "failed";
91
+ HelmReleaseStatus["Uninstalling"] = "uninstalling";
92
+ HelmReleaseStatus["PendingInstall"] = "pending-install";
93
+ HelmReleaseStatus["PendingUpgrade"] = "pending-upgrade";
94
+ HelmReleaseStatus["PendingRollback"] = "pending-rollback";
95
+ })(HelmReleaseStatus || (exports.HelmReleaseStatus = HelmReleaseStatus = {}));
96
+ function parseReleaseState(value) {
97
+ if (typeof value !== 'object' || value === null) {
98
+ throw new Error('helm list returned an invalid release entry.');
99
+ }
100
+ const record = value;
101
+ const name = record.name;
102
+ const namespace = record.namespace;
103
+ const status = record.status;
104
+ const revision = typeof record.revision === 'string'
105
+ ? Number.parseInt(record.revision, 10)
106
+ : record.revision;
107
+ if (typeof name !== 'string' ||
108
+ name.length === 0 ||
109
+ typeof namespace !== 'string' ||
110
+ namespace.length === 0 ||
111
+ typeof status !== 'string' ||
112
+ !Number.isSafeInteger(revision)) {
113
+ throw new Error('helm list returned a release entry without a name, namespace, revision, or status.');
114
+ }
115
+ const parsedStatus = Object.values(HelmReleaseStatus).find((candidate) => candidate === status);
116
+ if (parsedStatus === undefined) {
117
+ throw new Error(`helm list reported unknown release status "${status}" for ${name}.`);
118
+ }
119
+ return {
120
+ name,
121
+ namespace,
122
+ revision: revision,
123
+ status: parsedStatus,
124
+ };
125
+ }
58
126
  //# sourceMappingURL=helm-cli.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"helm-cli.js","sourceRoot":"","sources":["../../../src/runtime/runner/helm-cli.ts"],"names":[],"mappings":";;;AAAA,2DAA8C;AAajC,QAAA,sBAAsB,GAAG,MAAM,CAAC;AAChC,QAAA,uBAAuB,GAAG,kCAAkC,CAAC;AAQ1E,MAAa,OAAO;IACD,GAAG,CAAS;IAEpB,SAAS,CAAS;IACV,UAAU,CAAqB;IAEhD,YAAY,OAAuB,EAAE;QACnC,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,MAAM,CAAC;QAC9B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,8BAAsB,CAAC;QACxF,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;IACpC,CAAC;IAED,IAAI,CAAC,IAAuB;QAC1B,MAAM,GAAG,GAAG,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;QAC/B,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;YACpB,GAAG,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC;QACnC,CAAC;QACD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,IAAA,6BAAQ,EAAC,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI,EAAE,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE;gBAC1F,IAAI,GAAG,EAAE,CAAC;oBACR,MAAM,CAAC,IAAI,KAAK,CAAC,GAAG,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,MAAM,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;oBACpF,OAAO;gBACT,CAAC;gBACD,OAAO,CAAC,MAAM,CAAC,CAAC;YAClB,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAGD,KAAK,CAAC,SAAS,CAAC,IAAuB;QACrC,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/B,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAGD,KAAK,CAAC,SAAS;QACb,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC;QACzD,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;IAC/B,CAAC;IAGD,KAAK,CAAC,YAAY;QAChB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;QAChF,OAAO,GAAG;aACP,KAAK,CAAC,IAAI,CAAC;aACX,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;aACpB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IACjC,CAAC;IAGD,KAAK,CAAC,SAAS;QACb,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE,aAAa,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;IACjE,CAAC;IAGD,KAAK,CAAC,SAAS,CAAC,OAAe;QAC7B,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;IACzE,CAAC;CACF;AA7DD,0BA6DC"}
1
+ {"version":3,"file":"helm-cli.js","sourceRoot":"","sources":["../../../src/runtime/runner/helm-cli.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { HelmCli } from './helm-cli';
1
2
  import { ServiceRunnerKind, type RunningService, type ServiceRunner, type StartServiceInput } from './service-runner';
2
3
  export interface HelmRunnerOptions {
3
4
  readonly chartRepo?: string;
@@ -5,6 +6,8 @@ export interface HelmRunnerOptions {
5
6
  readonly kubeconfig?: string;
6
7
  readonly waitTimeout?: string;
7
8
  readonly bin?: string;
9
+ readonly values?: Readonly<Record<string, string>>;
10
+ readonly helm?: HelmCli;
8
11
  }
9
12
  export declare class HelmRunner implements ServiceRunner {
10
13
  private readonly opts;
@@ -1 +1 @@
1
- {"version":3,"file":"helm-runner.d.ts","sourceRoot":"","sources":["../../../src/runtime/runner/helm-runner.ts"],"names":[],"mappings":"AACA,OAAO,EACL,iBAAiB,EACjB,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACvB,MAAM,kBAAkB,CAAC;AAgB1B,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAE7B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;CACvB;AAID,qBAAa,UAAW,YAAW,aAAa;IAMlC,OAAO,CAAC,QAAQ,CAAC,IAAI;IALjC,QAAQ,CAAC,IAAI,0BAA0B;IACvC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAU;IAC/B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;gBAEN,IAAI,GAAE,iBAAsB;IAUnD,KAAK,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,cAAc,CAAC;CAkC/D"}
1
+ {"version":3,"file":"helm-runner.d.ts","sourceRoot":"","sources":["../../../src/runtime/runner/helm-runner.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2B,OAAO,EAAE,MAAM,YAAY,CAAC;AAC9D,OAAO,EACL,iBAAiB,EACjB,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACvB,MAAM,kBAAkB,CAAC;AA8B1B,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAE7B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IAEtB,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAEnD,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC;CACzB;AAID,qBAAa,UAAW,YAAW,aAAa;IAMlC,OAAO,CAAC,QAAQ,CAAC,IAAI;IALjC,QAAQ,CAAC,IAAI,0BAA0B;IACvC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAU;IAC/B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;gBAEN,IAAI,GAAE,iBAAsB;IAYnD,KAAK,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,cAAc,CAAC;CA4C/D"}
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.HelmRunner = void 0;
4
4
  const helm_cli_1 = require("./helm-cli");
5
5
  const service_runner_1 = require("./service-runner");
6
+ const helm_release_1 = require("../installation/helm-release");
6
7
  const DEFAULT_WAIT_TIMEOUT = '5m';
7
8
  class HelmRunner {
8
9
  opts;
@@ -12,16 +13,18 @@ class HelmRunner {
12
13
  chartRepo;
13
14
  constructor(opts = {}) {
14
15
  this.opts = opts;
15
- this.helm = new helm_cli_1.HelmCli({
16
- bin: opts.bin,
17
- namespace: opts.namespace,
18
- kubeconfig: opts.kubeconfig,
19
- });
16
+ this.helm =
17
+ opts.helm ??
18
+ new helm_cli_1.HelmCli({
19
+ bin: opts.bin,
20
+ namespace: opts.namespace,
21
+ kubeconfig: opts.kubeconfig,
22
+ });
20
23
  this.namespace = this.helm.namespace;
21
24
  this.chartRepo = opts.chartRepo ?? process.env.XEMA_CHART_REPO ?? helm_cli_1.DEFAULT_HELM_CHART_REPO;
22
25
  }
23
26
  async start(input) {
24
- const { entry } = input;
27
+ const { entry, installationId, planHash, executionId } = input;
25
28
  const release = entry.name;
26
29
  const args = [
27
30
  'upgrade',
@@ -41,6 +44,16 @@ class HelmRunner {
41
44
  if (entry.imageRef) {
42
45
  args.push('--set', `image.repository=${entry.imageRef}`);
43
46
  }
47
+ for (const [key, value] of Object.entries(this.opts.values ?? {})) {
48
+ args.push('--set', `${key}=${escapeHelmSetValue(value)}`);
49
+ }
50
+ for (const [key, value] of [
51
+ [helm_release_1.HELM_INSTALLATION_ID_VALUE, installationId],
52
+ [helm_release_1.HELM_PLAN_HASH_VALUE, planHash],
53
+ [helm_release_1.HELM_EXECUTION_ID_VALUE, executionId],
54
+ ]) {
55
+ args.push('--set', `${key}=${escapeHelmSetValue(value)}`);
56
+ }
44
57
  await this.helm.exec(args);
45
58
  const url = `http://${entry.name}.${this.namespace}.svc.cluster.local`;
46
59
  return {
@@ -48,10 +61,13 @@ class HelmRunner {
48
61
  url,
49
62
  handle: `helm:${release}`,
50
63
  close: async () => {
51
- await this.helm.uninstall(release).catch(() => undefined);
64
+ await this.helm.uninstall(release);
52
65
  },
53
66
  };
54
67
  }
55
68
  }
56
69
  exports.HelmRunner = HelmRunner;
70
+ function escapeHelmSetValue(value) {
71
+ return value.replace(/([,=\\])/g, '\\$1');
72
+ }
57
73
  //# sourceMappingURL=helm-runner.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"helm-runner.js","sourceRoot":"","sources":["../../../src/runtime/runner/helm-runner.ts"],"names":[],"mappings":";;;AAAA,yCAA8D;AAC9D,qDAK0B;AAyB1B,MAAM,oBAAoB,GAAG,IAAI,CAAC;AAElC,MAAa,UAAU;IAMQ;IALpB,IAAI,GAAG,kCAAiB,CAAC,IAAI,CAAC;IACtB,IAAI,CAAU;IACd,SAAS,CAAS;IAClB,SAAS,CAAS;IAEnC,YAA6B,OAA0B,EAAE;QAA5B,SAAI,GAAJ,IAAI,CAAwB;QACvD,IAAI,CAAC,IAAI,GAAG,IAAI,kBAAO,CAAC;YACtB,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,UAAU,EAAE,IAAI,CAAC,UAAU;SAC5B,CAAC,CAAC;QACH,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC;QACrC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,SAAS,IAAI,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,kCAAuB,CAAC;IAC5F,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,KAAwB;QAClC,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC;QACxB,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC;QAC3B,MAAM,IAAI,GAAG;YACX,SAAS;YACT,WAAW;YACX,OAAO;YACP,GAAG,IAAI,CAAC,SAAS,IAAI,KAAK,CAAC,IAAI,EAAE;YACjC,aAAa;YACb,IAAI,CAAC,SAAS;YACd,oBAAoB;YACpB,QAAQ;YACR,WAAW;YACX,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,oBAAoB;SAC9C,CAAC;QACF,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;YACnB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,aAAa,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;QACpD,CAAC;QACD,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;YACnB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,oBAAoB,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;QAC3D,CAAC;QAED,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAE3B,MAAM,GAAG,GAAG,UAAU,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,oBAAoB,CAAC;QACvE,OAAO;YACL,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,GAAG;YACH,MAAM,EAAE,QAAQ,OAAO,EAAE;YACzB,KAAK,EAAE,KAAK,IAAmB,EAAE;gBAC/B,MAAM,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;YAC5D,CAAC;SACF,CAAC;IACJ,CAAC;CACF;AAlDD,gCAkDC"}
1
+ {"version":3,"file":"helm-runner.js","sourceRoot":"","sources":["../../../src/runtime/runner/helm-runner.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,39 @@
1
+ import type { RuntimeImagePlatform } from '@xemahq/kernel-contracts/distribution';
2
+ export declare enum OciOs {
3
+ Linux = "linux",
4
+ Darwin = "darwin",
5
+ Windows = "windows",
6
+ FreeBsd = "freebsd"
7
+ }
8
+ export declare enum OciArchitecture {
9
+ Amd64 = "amd64",
10
+ Arm64 = "arm64",
11
+ Arm = "arm",
12
+ I386 = "386",
13
+ Ppc64Le = "ppc64le",
14
+ S390x = "s390x",
15
+ RiscV64 = "riscv64"
16
+ }
17
+ export interface ResolvedPlatform {
18
+ readonly os: OciOs;
19
+ readonly architecture: OciArchitecture;
20
+ }
21
+ export declare function normalizeOs(raw: string): OciOs;
22
+ export declare function normalizeArchitecture(raw: string): OciArchitecture;
23
+ export declare function normalizePlatform(raw: {
24
+ readonly os: string;
25
+ readonly architecture: string;
26
+ }): ResolvedPlatform;
27
+ export declare function parsePlatformString(raw: string, context: string): ResolvedPlatform;
28
+ export declare function formatPlatform(platform: ResolvedPlatform): string;
29
+ export declare function formatDeclaredPlatform(platform: RuntimeImagePlatform): string;
30
+ export declare function platformMatches(a: ResolvedPlatform, b: ResolvedPlatform): boolean;
31
+ export declare function nodeHostPlatform(): ResolvedPlatform;
32
+ export declare function selectRunPlatform(declared: readonly RuntimeImagePlatform[], runtimePlatform: ResolvedPlatform): ResolvedPlatform;
33
+ export interface ImagePlatformCarrier {
34
+ readonly name: string;
35
+ readonly imageRef?: string | undefined;
36
+ readonly imagePlatforms?: readonly RuntimeImagePlatform[] | undefined;
37
+ }
38
+ export declare function selectEntryRunPlatform(entry: ImagePlatformCarrier, runtimePlatform: ResolvedPlatform): ResolvedPlatform | undefined;
39
+ //# sourceMappingURL=host-platform.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"host-platform.d.ts","sourceRoot":"","sources":["../../../src/runtime/runner/host-platform.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAoBlF,oBAAY,KAAK;IACf,KAAK,UAAU;IACf,MAAM,WAAW;IACjB,OAAO,YAAY;IACnB,OAAO,YAAY;CACpB;AAGD,oBAAY,eAAe;IACzB,KAAK,UAAU;IACf,KAAK,UAAU;IACf,GAAG,QAAQ;IACX,IAAI,QAAQ;IACZ,OAAO,YAAY;IACnB,KAAK,UAAU;IACf,OAAO,YAAY;CACpB;AAGD,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IACnB,QAAQ,CAAC,YAAY,EAAE,eAAe,CAAC;CACxC;AA0DD,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,KAAK,CAS9C;AAOD,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,MAAM,GAAG,eAAe,CAUlE;AAMD,wBAAgB,iBAAiB,CAAC,GAAG,EAAE;IACrC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;CAC/B,GAAG,gBAAgB,CAOnB;AAGD,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,gBAAgB,CAQlF;AAGD,wBAAgB,cAAc,CAAC,QAAQ,EAAE,gBAAgB,GAAG,MAAM,CAEjE;AAQD,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,oBAAoB,GAAG,MAAM,CAI7E;AAcD,wBAAgB,eAAe,CAAC,CAAC,EAAE,gBAAgB,EAAE,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAEjF;AAYD,wBAAgB,gBAAgB,IAAI,gBAAgB,CAEnD;AAWD,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,SAAS,oBAAoB,EAAE,EACzC,eAAe,EAAE,gBAAgB,GAChC,gBAAgB,CASlB;AAMD,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACvC,QAAQ,CAAC,cAAc,CAAC,EAAE,SAAS,oBAAoB,EAAE,GAAG,SAAS,CAAC;CACvE;AAUD,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,oBAAoB,EAC3B,eAAe,EAAE,gBAAgB,GAChC,gBAAgB,GAAG,SAAS,CAa9B"}
@@ -0,0 +1,136 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.OciArchitecture = exports.OciOs = void 0;
4
+ exports.normalizeOs = normalizeOs;
5
+ exports.normalizeArchitecture = normalizeArchitecture;
6
+ exports.normalizePlatform = normalizePlatform;
7
+ exports.parsePlatformString = parsePlatformString;
8
+ exports.formatPlatform = formatPlatform;
9
+ exports.formatDeclaredPlatform = formatDeclaredPlatform;
10
+ exports.platformMatches = platformMatches;
11
+ exports.nodeHostPlatform = nodeHostPlatform;
12
+ exports.selectRunPlatform = selectRunPlatform;
13
+ exports.selectEntryRunPlatform = selectEntryRunPlatform;
14
+ var OciOs;
15
+ (function (OciOs) {
16
+ OciOs["Linux"] = "linux";
17
+ OciOs["Darwin"] = "darwin";
18
+ OciOs["Windows"] = "windows";
19
+ OciOs["FreeBsd"] = "freebsd";
20
+ })(OciOs || (exports.OciOs = OciOs = {}));
21
+ var OciArchitecture;
22
+ (function (OciArchitecture) {
23
+ OciArchitecture["Amd64"] = "amd64";
24
+ OciArchitecture["Arm64"] = "arm64";
25
+ OciArchitecture["Arm"] = "arm";
26
+ OciArchitecture["I386"] = "386";
27
+ OciArchitecture["Ppc64Le"] = "ppc64le";
28
+ OciArchitecture["S390x"] = "s390x";
29
+ OciArchitecture["RiscV64"] = "riscv64";
30
+ })(OciArchitecture || (exports.OciArchitecture = OciArchitecture = {}));
31
+ const OS_ALIASES = new Map([
32
+ ['linux', OciOs.Linux],
33
+ ['darwin', OciOs.Darwin],
34
+ ['macos', OciOs.Darwin],
35
+ ['osx', OciOs.Darwin],
36
+ ['windows', OciOs.Windows],
37
+ ['win32', OciOs.Windows],
38
+ ['win', OciOs.Windows],
39
+ ['freebsd', OciOs.FreeBsd],
40
+ ]);
41
+ const ARCHITECTURE_ALIASES = new Map([
42
+ ['amd64', OciArchitecture.Amd64],
43
+ ['x86_64', OciArchitecture.Amd64],
44
+ ['x86-64', OciArchitecture.Amd64],
45
+ ['x64', OciArchitecture.Amd64],
46
+ ['arm64', OciArchitecture.Arm64],
47
+ ['aarch64', OciArchitecture.Arm64],
48
+ ['arm64v8', OciArchitecture.Arm64],
49
+ ['armv8', OciArchitecture.Arm64],
50
+ ['arm', OciArchitecture.Arm],
51
+ ['armv7', OciArchitecture.Arm],
52
+ ['armv7l', OciArchitecture.Arm],
53
+ ['armv6', OciArchitecture.Arm],
54
+ ['armv6l', OciArchitecture.Arm],
55
+ ['armhf', OciArchitecture.Arm],
56
+ ['386', OciArchitecture.I386],
57
+ ['i386', OciArchitecture.I386],
58
+ ['i686', OciArchitecture.I386],
59
+ ['x86', OciArchitecture.I386],
60
+ ['ia32', OciArchitecture.I386],
61
+ ['ppc64le', OciArchitecture.Ppc64Le],
62
+ ['ppc64', OciArchitecture.Ppc64Le],
63
+ ['s390x', OciArchitecture.S390x],
64
+ ['riscv64', OciArchitecture.RiscV64],
65
+ ]);
66
+ function knownValues(map) {
67
+ return [...map.keys()].join(', ');
68
+ }
69
+ function normalizeOs(raw) {
70
+ const os = OS_ALIASES.get(raw.trim().toLowerCase());
71
+ if (os === undefined) {
72
+ throw new Error(`Unrecognized platform OS "${raw}". The CLI resolves images against the ` +
73
+ `closed OCI OS vocabulary; known spellings: ${knownValues(OS_ALIASES)}.`);
74
+ }
75
+ return os;
76
+ }
77
+ function normalizeArchitecture(raw) {
78
+ const architecture = ARCHITECTURE_ALIASES.get(raw.trim().toLowerCase());
79
+ if (architecture === undefined) {
80
+ throw new Error(`Unrecognized platform architecture "${raw}". The CLI resolves images ` +
81
+ `against the closed OCI architecture vocabulary; known spellings: ` +
82
+ `${knownValues(ARCHITECTURE_ALIASES)}.`);
83
+ }
84
+ return architecture;
85
+ }
86
+ function normalizePlatform(raw) {
87
+ try {
88
+ return { os: normalizeOs(raw.os), architecture: normalizeArchitecture(raw.architecture) };
89
+ }
90
+ catch (err) {
91
+ const message = err instanceof Error ? err.message : String(err);
92
+ throw new Error(`Platform "${raw.os}/${raw.architecture}" is not resolvable: ${message}`);
93
+ }
94
+ }
95
+ function parsePlatformString(raw, context) {
96
+ const segments = raw.trim().split('/');
97
+ if (segments.length !== 2 || segments[0] === '' || segments[1] === '') {
98
+ throw new Error(`Could not read a platform from ${context}: expected "<os>/<architecture>", got "${raw.trim()}".`);
99
+ }
100
+ return normalizePlatform({ os: segments[0], architecture: segments[1] });
101
+ }
102
+ function formatPlatform(platform) {
103
+ return `${platform.os}/${platform.architecture}`;
104
+ }
105
+ function formatDeclaredPlatform(platform) {
106
+ return platform.variant === undefined
107
+ ? `${platform.os}/${platform.architecture}`
108
+ : `${platform.os}/${platform.architecture}/${platform.variant}`;
109
+ }
110
+ function platformMatches(a, b) {
111
+ return a.os === b.os && a.architecture === b.architecture;
112
+ }
113
+ function nodeHostPlatform() {
114
+ return normalizePlatform({ os: process.platform, architecture: process.arch });
115
+ }
116
+ function selectRunPlatform(declared, runtimePlatform) {
117
+ if (declared.length === 0) {
118
+ throw new Error('selectRunPlatform: requiredPlatforms is empty — the image lock declares no ' +
119
+ 'platform for this image, so no --platform can be pinned.');
120
+ }
121
+ const normalized = declared.map((platform) => normalizePlatform(platform));
122
+ return normalized.find((p) => platformMatches(p, runtimePlatform)) ?? normalized[0];
123
+ }
124
+ function selectEntryRunPlatform(entry, runtimePlatform) {
125
+ if (entry.imageRef === undefined || entry.imageRef === '') {
126
+ return undefined;
127
+ }
128
+ const declared = entry.imagePlatforms;
129
+ if (declared === undefined || declared.length === 0) {
130
+ throw new Error(`${entry.name}: images.lock.json declares an image but no requiredPlatforms — ` +
131
+ 'the container substrate cannot pin --platform for it. Re-resolve the ' +
132
+ "edition's images.lock with a generator that emits requiredPlatforms.");
133
+ }
134
+ return selectRunPlatform(declared, runtimePlatform);
135
+ }
136
+ //# sourceMappingURL=host-platform.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"host-platform.js","sourceRoot":"","sources":["../../../src/runtime/runner/host-platform.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ import type { StreamOutcome } from './stream-outcome';
2
+ export type KubectlCommand = readonly string[];
3
+ export type KubectlProbe = (command: KubectlCommand) => Promise<boolean>;
4
+ export declare function resolveKubectlCommand(probe?: KubectlProbe): Promise<KubectlCommand>;
5
+ export interface KubeCliOptions {
6
+ readonly command?: KubectlCommand;
7
+ readonly namespace?: string;
8
+ readonly kubeconfig?: string;
9
+ readonly probe?: KubectlProbe;
10
+ }
11
+ export declare class KubeCli {
12
+ private command;
13
+ readonly namespace: string;
14
+ private readonly kubeconfig;
15
+ private readonly probe;
16
+ constructor(opts?: KubeCliOptions);
17
+ get client(): string;
18
+ resolve(): Promise<KubectlCommand>;
19
+ exec(args: readonly string[]): Promise<string>;
20
+ stream(args: readonly string[]): Promise<StreamOutcome>;
21
+ logsArgs(deployment: string, follow: boolean): readonly string[];
22
+ }
23
+ //# sourceMappingURL=kube-cli.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kube-cli.d.ts","sourceRoot":"","sources":["../../../src/runtime/runner/kube-cli.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAsBtD,MAAM,MAAM,cAAc,GAAG,SAAS,MAAM,EAAE,CAAC;AAO/C,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,EAAE,cAAc,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;AAezE,wBAAsB,qBAAqB,CACzC,KAAK,GAAE,YAAkC,GACxC,OAAO,CAAC,cAAc,CAAC,CAYzB;AA0CD,MAAM,WAAW,cAAc;IAE7B,QAAQ,CAAC,OAAO,CAAC,EAAE,cAAc,CAAC;IAClC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAE7B,QAAQ,CAAC,KAAK,CAAC,EAAE,YAAY,CAAC;CAC/B;AAED,qBAAa,OAAO;IAClB,OAAO,CAAC,OAAO,CAA6B;IAE5C,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAqB;IAChD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA2B;gBAErC,IAAI,GAAE,cAAmB;IASrC,IAAI,MAAM,IAAI,MAAM,CAInB;IAGK,OAAO,IAAI,OAAO,CAAC,cAAc,CAAC;IAOlC,IAAI,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;IAoC9C,MAAM,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,OAAO,CAAC,aAAa,CAAC;IA0B7D,QAAQ,CAAC,UAAU,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,SAAS,MAAM,EAAE;CASjE"}
@@ -0,0 +1,112 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.KubeCli = void 0;
4
+ exports.resolveKubectlCommand = resolveKubectlCommand;
5
+ const node_child_process_1 = require("node:child_process");
6
+ const helm_cli_1 = require("./helm-cli");
7
+ const KUBECTL_CANDIDATES = [
8
+ ['kubectl'],
9
+ ['k3s', 'kubectl'],
10
+ ];
11
+ async function resolveKubectlCommand(probe = defaultKubectlProbe) {
12
+ const absent = [];
13
+ for (const candidate of KUBECTL_CANDIDATES) {
14
+ if (await probe(candidate)) {
15
+ return candidate;
16
+ }
17
+ absent.push(`${candidate.join(' ')} (not found)`);
18
+ }
19
+ throw new Error(`kubectl is not reachable: ${absent.join('; ')}. Install kubectl — or k3s, ` +
20
+ 'which ships it — on the Kubernetes host this installation targets.');
21
+ }
22
+ function splitCommand(command) {
23
+ const [bin, ...prefix] = command;
24
+ if (bin === undefined) {
25
+ throw new Error('A kubectl command resolved to an empty invocation.');
26
+ }
27
+ return { bin, prefix };
28
+ }
29
+ function defaultKubectlProbe(command) {
30
+ return new Promise((resolve, reject) => {
31
+ const { bin, prefix } = splitCommand(command);
32
+ (0, node_child_process_1.execFile)(bin, [...prefix, 'version', '--client'], { maxBuffer: 32 * 1024 * 1024 }, (err) => {
33
+ if (err === null) {
34
+ resolve(true);
35
+ return;
36
+ }
37
+ if (err.code === 'ENOENT') {
38
+ resolve(false);
39
+ return;
40
+ }
41
+ reject(err);
42
+ });
43
+ });
44
+ }
45
+ class KubeCli {
46
+ command;
47
+ namespace;
48
+ kubeconfig;
49
+ probe;
50
+ constructor(opts = {}) {
51
+ this.command = opts.command;
52
+ this.namespace =
53
+ opts.namespace ?? process.env.XEMA_NAMESPACE ?? helm_cli_1.DEFAULT_HELM_NAMESPACE;
54
+ this.kubeconfig = opts.kubeconfig;
55
+ this.probe = opts.probe;
56
+ }
57
+ get client() {
58
+ return this.command === undefined
59
+ ? 'kubectl (unresolved)'
60
+ : this.command.join(' ');
61
+ }
62
+ async resolve() {
63
+ if (this.command === undefined) {
64
+ this.command = await resolveKubectlCommand(this.probe);
65
+ }
66
+ return this.command;
67
+ }
68
+ async exec(args) {
69
+ const { bin, prefix } = splitCommand(await this.resolve());
70
+ const env = { ...process.env };
71
+ if (this.kubeconfig !== undefined) {
72
+ env.KUBECONFIG = this.kubeconfig;
73
+ }
74
+ return new Promise((resolve, reject) => {
75
+ (0, node_child_process_1.execFile)(bin, [...prefix, ...args], { env, maxBuffer: 32 * 1024 * 1024 }, (err, stdout, stderr) => {
76
+ if (err) {
77
+ reject(new Error(`${[bin, ...prefix].join(' ')} ${args.join(' ')} failed: ${stderr || err.message}`));
78
+ return;
79
+ }
80
+ resolve(stdout);
81
+ });
82
+ });
83
+ }
84
+ async stream(args) {
85
+ const { bin, prefix } = splitCommand(await this.resolve());
86
+ const env = { ...process.env };
87
+ if (this.kubeconfig !== undefined) {
88
+ env.KUBECONFIG = this.kubeconfig;
89
+ }
90
+ return new Promise((resolve, reject) => {
91
+ const child = (0, node_child_process_1.spawn)(bin, [...prefix, ...args], {
92
+ stdio: 'inherit',
93
+ env,
94
+ });
95
+ child.on('error', reject);
96
+ child.on('exit', (code, signal) => {
97
+ resolve({ code, signal });
98
+ });
99
+ });
100
+ }
101
+ logsArgs(deployment, follow) {
102
+ return [
103
+ 'logs',
104
+ ...(follow ? ['-f'] : []),
105
+ '--namespace',
106
+ this.namespace,
107
+ `deploy/${deployment}`,
108
+ ];
109
+ }
110
+ }
111
+ exports.KubeCli = KubeCli;
112
+ //# sourceMappingURL=kube-cli.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"kube-cli.js","sourceRoot":"","sources":["../../../src/runtime/runner/kube-cli.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"native-runner.d.ts","sourceRoot":"","sources":["../../../src/runtime/runner/native-runner.ts"],"names":[],"mappings":"AASA,OAAO,EACL,iBAAiB,EACjB,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACvB,MAAM,kBAAkB,CAAC;AAa1B,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;CAChC;AAED,qBAAa,YAAa,YAAW,aAAa;IAChD,QAAQ,CAAC,IAAI,4BAA4B;IACzC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;gBAE1B,IAAI,GAAE,mBAAwB;IAWpC,KAAK,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,cAAc,CAAC;YAoDhD,WAAW;IAoCzB,OAAO,CAAC,kBAAkB;CAiB3B"}
1
+ {"version":3,"file":"native-runner.d.ts","sourceRoot":"","sources":["../../../src/runtime/runner/native-runner.ts"],"names":[],"mappings":"AASA,OAAO,EACL,iBAAiB,EACjB,KAAK,cAAc,EACnB,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACvB,MAAM,kBAAkB,CAAC;AAa1B,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,YAAY,CAAC,EAAE,MAAM,CAAC;CAChC;AAED,qBAAa,YAAa,YAAW,aAAa;IAChD,QAAQ,CAAC,IAAI,4BAA4B;IACzC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAS;gBAE1B,IAAI,GAAE,mBAAwB;IAWpC,KAAK,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,cAAc,CAAC;YA6DhD,WAAW;IA8DzB,OAAO,CAAC,kBAAkB;CAiB3B"}