@reyemtech/nimbus 1.2.0 → 2.0.1

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 (756) hide show
  1. package/README.md +32 -28
  2. package/dist/cjs/access/dns.d.ts +26 -0
  3. package/dist/cjs/access/dns.d.ts.map +1 -0
  4. package/dist/cjs/access/dns.js +136 -0
  5. package/dist/cjs/access/dns.js.map +1 -0
  6. package/dist/cjs/access/index.d.ts +30 -0
  7. package/dist/cjs/access/index.d.ts.map +1 -0
  8. package/dist/cjs/access/index.js +45 -0
  9. package/dist/cjs/access/index.js.map +1 -0
  10. package/dist/cjs/access/interfaces.d.ts +97 -0
  11. package/dist/cjs/access/interfaces.d.ts.map +1 -0
  12. package/dist/cjs/access/interfaces.js +17 -0
  13. package/dist/cjs/access/interfaces.js.map +1 -0
  14. package/dist/cjs/access/proxy.d.ts +21 -0
  15. package/dist/cjs/access/proxy.d.ts.map +1 -0
  16. package/dist/cjs/access/proxy.js +155 -0
  17. package/dist/cjs/access/proxy.js.map +1 -0
  18. package/dist/cjs/access/tailscale-dns.d.ts +28 -0
  19. package/dist/cjs/access/tailscale-dns.d.ts.map +1 -0
  20. package/dist/cjs/access/tailscale-dns.js +131 -0
  21. package/dist/cjs/access/tailscale-dns.js.map +1 -0
  22. package/dist/cjs/access/tailscale.d.ts +14 -0
  23. package/dist/cjs/access/tailscale.d.ts.map +1 -0
  24. package/dist/cjs/access/tailscale.js +135 -0
  25. package/dist/cjs/access/tailscale.js.map +1 -0
  26. package/dist/cjs/access/wireguard.d.ts +14 -0
  27. package/dist/cjs/access/wireguard.d.ts.map +1 -0
  28. package/dist/cjs/access/wireguard.js +140 -0
  29. package/dist/cjs/access/wireguard.js.map +1 -0
  30. package/dist/cjs/argocd/app.d.ts +31 -0
  31. package/dist/cjs/argocd/app.d.ts.map +1 -0
  32. package/dist/cjs/argocd/app.js +194 -0
  33. package/dist/cjs/argocd/app.js.map +1 -0
  34. package/dist/cjs/argocd/argocd.d.ts +33 -0
  35. package/dist/cjs/argocd/argocd.d.ts.map +1 -0
  36. package/dist/cjs/argocd/argocd.js +182 -0
  37. package/dist/cjs/argocd/argocd.js.map +1 -0
  38. package/dist/cjs/argocd/external-secrets.d.ts +23 -0
  39. package/dist/cjs/argocd/external-secrets.d.ts.map +1 -0
  40. package/dist/cjs/argocd/external-secrets.js +121 -0
  41. package/dist/cjs/argocd/external-secrets.js.map +1 -0
  42. package/dist/cjs/argocd/index.d.ts +18 -0
  43. package/dist/cjs/argocd/index.d.ts.map +1 -0
  44. package/dist/cjs/argocd/index.js +27 -0
  45. package/dist/cjs/argocd/index.js.map +1 -0
  46. package/dist/cjs/argocd/interfaces.d.ts +144 -0
  47. package/dist/cjs/argocd/interfaces.d.ts.map +1 -0
  48. package/dist/cjs/argocd/interfaces.js +8 -0
  49. package/dist/cjs/argocd/interfaces.js.map +1 -0
  50. package/dist/cjs/argocd/project.d.ts +23 -0
  51. package/dist/cjs/argocd/project.d.ts.map +1 -0
  52. package/dist/cjs/argocd/project.js +93 -0
  53. package/dist/cjs/argocd/project.js.map +1 -0
  54. package/dist/cjs/argocd/repo.d.ts +15 -0
  55. package/dist/cjs/argocd/repo.d.ts.map +1 -0
  56. package/dist/cjs/argocd/repo.js +83 -0
  57. package/dist/cjs/argocd/repo.js.map +1 -0
  58. package/dist/cjs/argocd/secrets.d.ts +23 -0
  59. package/dist/cjs/argocd/secrets.d.ts.map +1 -0
  60. package/dist/cjs/argocd/secrets.js +87 -0
  61. package/dist/cjs/argocd/secrets.js.map +1 -0
  62. package/dist/cjs/azure/index.d.ts +1 -0
  63. package/dist/cjs/azure/index.d.ts.map +1 -1
  64. package/dist/cjs/azure/index.js +3 -1
  65. package/dist/cjs/azure/index.js.map +1 -1
  66. package/dist/cjs/azure/resource-group.d.ts +37 -0
  67. package/dist/cjs/azure/resource-group.d.ts.map +1 -0
  68. package/dist/cjs/azure/resource-group.js +79 -0
  69. package/dist/cjs/azure/resource-group.js.map +1 -0
  70. package/dist/cjs/azure/secrets.d.ts +6 -3
  71. package/dist/cjs/azure/secrets.d.ts.map +1 -1
  72. package/dist/cjs/azure/secrets.js +17 -3
  73. package/dist/cjs/azure/secrets.js.map +1 -1
  74. package/dist/cjs/backup/index.d.ts +20 -0
  75. package/dist/cjs/backup/index.d.ts.map +1 -0
  76. package/dist/cjs/backup/index.js +206 -0
  77. package/dist/cjs/backup/index.js.map +1 -0
  78. package/dist/cjs/backup/interfaces.d.ts +29 -0
  79. package/dist/cjs/backup/interfaces.d.ts.map +1 -0
  80. package/dist/cjs/backup/interfaces.js +3 -0
  81. package/dist/cjs/backup/interfaces.js.map +1 -0
  82. package/dist/cjs/cache/cache.d.ts +38 -0
  83. package/dist/cjs/cache/cache.d.ts.map +1 -0
  84. package/dist/cjs/cache/cache.js +189 -0
  85. package/dist/cjs/cache/cache.js.map +1 -0
  86. package/dist/cjs/cache/index.d.ts +2 -0
  87. package/dist/cjs/cache/index.d.ts.map +1 -1
  88. package/dist/cjs/cache/index.js +7 -0
  89. package/dist/cjs/cache/index.js.map +1 -1
  90. package/dist/cjs/cache/interfaces.d.ts +20 -0
  91. package/dist/cjs/cache/interfaces.d.ts.map +1 -1
  92. package/dist/cjs/cache/interfaces.js +18 -0
  93. package/dist/cjs/cache/interfaces.js.map +1 -1
  94. package/dist/cjs/cli/azure-prompts.d.ts +3 -12
  95. package/dist/cjs/cli/azure-prompts.d.ts.map +1 -1
  96. package/dist/cjs/cli/azure-prompts.js +4 -23
  97. package/dist/cjs/cli/azure-prompts.js.map +1 -1
  98. package/dist/cjs/cli/templates-azure.d.ts.map +1 -1
  99. package/dist/cjs/cli/templates-azure.js +20 -15
  100. package/dist/cjs/cli/templates-azure.js.map +1 -1
  101. package/dist/cjs/cli/templates.d.ts +0 -1
  102. package/dist/cjs/cli/templates.d.ts.map +1 -1
  103. package/dist/cjs/cli/templates.js.map +1 -1
  104. package/dist/cjs/cli.js +1 -1
  105. package/dist/cjs/cli.js.map +1 -1
  106. package/dist/cjs/cluster/index.d.ts +1 -1
  107. package/dist/cjs/cluster/index.d.ts.map +1 -1
  108. package/dist/cjs/cluster/interfaces.d.ts +18 -1
  109. package/dist/cjs/cluster/interfaces.d.ts.map +1 -1
  110. package/dist/cjs/database/index.d.ts +1 -0
  111. package/dist/cjs/database/index.d.ts.map +1 -1
  112. package/dist/cjs/database/index.js +5 -0
  113. package/dist/cjs/database/index.js.map +1 -1
  114. package/dist/cjs/database/interfaces.d.ts +19 -0
  115. package/dist/cjs/database/interfaces.d.ts.map +1 -1
  116. package/dist/cjs/database/interfaces.js +20 -0
  117. package/dist/cjs/database/interfaces.js.map +1 -1
  118. package/dist/cjs/dns/index.d.ts +1 -0
  119. package/dist/cjs/dns/index.d.ts.map +1 -1
  120. package/dist/cjs/dns/index.js +3 -0
  121. package/dist/cjs/dns/index.js.map +1 -1
  122. package/dist/cjs/dns/interfaces.d.ts +11 -0
  123. package/dist/cjs/dns/interfaces.d.ts.map +1 -1
  124. package/dist/cjs/dns/interfaces.js +12 -0
  125. package/dist/cjs/dns/interfaces.js.map +1 -1
  126. package/dist/cjs/email/index.d.ts +41 -0
  127. package/dist/cjs/email/index.d.ts.map +1 -0
  128. package/dist/cjs/email/index.js +318 -0
  129. package/dist/cjs/email/index.js.map +1 -0
  130. package/dist/cjs/email/interfaces.d.ts +119 -0
  131. package/dist/cjs/email/interfaces.d.ts.map +1 -0
  132. package/dist/cjs/email/interfaces.js +19 -0
  133. package/dist/cjs/email/interfaces.js.map +1 -0
  134. package/dist/cjs/factories/cluster.d.ts +1 -1
  135. package/dist/cjs/factories/cluster.d.ts.map +1 -1
  136. package/dist/cjs/factories/cluster.js +16 -0
  137. package/dist/cjs/factories/cluster.js.map +1 -1
  138. package/dist/cjs/factories/index.d.ts +1 -1
  139. package/dist/cjs/factories/index.d.ts.map +1 -1
  140. package/dist/cjs/factories/index.js.map +1 -1
  141. package/dist/cjs/factories/secrets.d.ts +1 -1
  142. package/dist/cjs/factories/secrets.js +3 -3
  143. package/dist/cjs/factories/secrets.js.map +1 -1
  144. package/dist/cjs/factories/types.d.ts +26 -0
  145. package/dist/cjs/factories/types.d.ts.map +1 -1
  146. package/dist/cjs/factories/types.js.map +1 -1
  147. package/dist/cjs/index.d.ts +27 -5
  148. package/dist/cjs/index.d.ts.map +1 -1
  149. package/dist/cjs/index.js +75 -8
  150. package/dist/cjs/index.js.map +1 -1
  151. package/dist/cjs/network/index.d.ts +1 -0
  152. package/dist/cjs/network/index.d.ts.map +1 -1
  153. package/dist/cjs/network/index.js +3 -1
  154. package/dist/cjs/network/index.js.map +1 -1
  155. package/dist/cjs/network/interfaces.d.ts +6 -0
  156. package/dist/cjs/network/interfaces.d.ts.map +1 -1
  157. package/dist/cjs/network/interfaces.js +7 -0
  158. package/dist/cjs/network/interfaces.js.map +1 -1
  159. package/dist/cjs/nimbus/index.d.ts +28 -0
  160. package/dist/cjs/nimbus/index.d.ts.map +1 -0
  161. package/dist/cjs/nimbus/index.js +44 -0
  162. package/dist/cjs/nimbus/index.js.map +1 -0
  163. package/dist/cjs/nimbus/interfaces.d.ts +64 -0
  164. package/dist/cjs/nimbus/interfaces.d.ts.map +1 -0
  165. package/dist/cjs/nimbus/interfaces.js +10 -0
  166. package/dist/cjs/nimbus/interfaces.js.map +1 -0
  167. package/dist/cjs/nimbus/registry.d.ts +19 -0
  168. package/dist/cjs/nimbus/registry.d.ts.map +1 -0
  169. package/dist/cjs/nimbus/registry.js +123 -0
  170. package/dist/cjs/nimbus/registry.js.map +1 -0
  171. package/dist/cjs/observability/alerts.d.ts +51 -0
  172. package/dist/cjs/observability/alerts.d.ts.map +1 -0
  173. package/dist/cjs/observability/alerts.js +281 -0
  174. package/dist/cjs/observability/alerts.js.map +1 -0
  175. package/dist/cjs/observability/dashboards/_helpers.d.ts +38 -0
  176. package/dist/cjs/observability/dashboards/_helpers.d.ts.map +1 -0
  177. package/dist/cjs/observability/dashboards/_helpers.js +141 -0
  178. package/dist/cjs/observability/dashboards/_helpers.js.map +1 -0
  179. package/dist/cjs/observability/dashboards/alerts.d.ts +12 -0
  180. package/dist/cjs/observability/dashboards/alerts.d.ts.map +1 -0
  181. package/dist/cjs/observability/dashboards/alerts.js +261 -0
  182. package/dist/cjs/observability/dashboards/alerts.js.map +1 -0
  183. package/dist/cjs/observability/dashboards/argocd-app.d.ts +18 -0
  184. package/dist/cjs/observability/dashboards/argocd-app.d.ts.map +1 -0
  185. package/dist/cjs/observability/dashboards/argocd-app.js +212 -0
  186. package/dist/cjs/observability/dashboards/argocd-app.js.map +1 -0
  187. package/dist/cjs/observability/dashboards/argocd.d.ts +9 -0
  188. package/dist/cjs/observability/dashboards/argocd.d.ts.map +1 -0
  189. package/dist/cjs/observability/dashboards/argocd.js +141 -0
  190. package/dist/cjs/observability/dashboards/argocd.js.map +1 -0
  191. package/dist/cjs/observability/dashboards/cert-manager.d.ts +9 -0
  192. package/dist/cjs/observability/dashboards/cert-manager.d.ts.map +1 -0
  193. package/dist/cjs/observability/dashboards/cert-manager.js +167 -0
  194. package/dist/cjs/observability/dashboards/cert-manager.js.map +1 -0
  195. package/dist/cjs/observability/dashboards/cnpg-cluster.d.ts +15 -0
  196. package/dist/cjs/observability/dashboards/cnpg-cluster.d.ts.map +1 -0
  197. package/dist/cjs/observability/dashboards/cnpg-cluster.js +376 -0
  198. package/dist/cjs/observability/dashboards/cnpg-cluster.js.map +1 -0
  199. package/dist/cjs/observability/dashboards/cnpg.d.ts +10 -0
  200. package/dist/cjs/observability/dashboards/cnpg.d.ts.map +1 -0
  201. package/dist/cjs/observability/dashboards/cnpg.js +181 -0
  202. package/dist/cjs/observability/dashboards/cnpg.js.map +1 -0
  203. package/dist/cjs/observability/dashboards/index.d.ts +28 -0
  204. package/dist/cjs/observability/dashboards/index.d.ts.map +1 -0
  205. package/dist/cjs/observability/dashboards/index.js +159 -0
  206. package/dist/cjs/observability/dashboards/index.js.map +1 -0
  207. package/dist/cjs/observability/dashboards/loki.d.ts +9 -0
  208. package/dist/cjs/observability/dashboards/loki.d.ts.map +1 -0
  209. package/dist/cjs/observability/dashboards/loki.js +113 -0
  210. package/dist/cjs/observability/dashboards/loki.js.map +1 -0
  211. package/dist/cjs/observability/dashboards/mariadb-cluster.d.ts +15 -0
  212. package/dist/cjs/observability/dashboards/mariadb-cluster.d.ts.map +1 -0
  213. package/dist/cjs/observability/dashboards/mariadb-cluster.js +424 -0
  214. package/dist/cjs/observability/dashboards/mariadb-cluster.js.map +1 -0
  215. package/dist/cjs/observability/dashboards/mariadb.d.ts +10 -0
  216. package/dist/cjs/observability/dashboards/mariadb.d.ts.map +1 -0
  217. package/dist/cjs/observability/dashboards/mariadb.js +181 -0
  218. package/dist/cjs/observability/dashboards/mariadb.js.map +1 -0
  219. package/dist/cjs/observability/dashboards/minio.d.ts +9 -0
  220. package/dist/cjs/observability/dashboards/minio.d.ts.map +1 -0
  221. package/dist/cjs/observability/dashboards/minio.js +267 -0
  222. package/dist/cjs/observability/dashboards/minio.js.map +1 -0
  223. package/dist/cjs/observability/dashboards/neo4j-cluster.d.ts +16 -0
  224. package/dist/cjs/observability/dashboards/neo4j-cluster.d.ts.map +1 -0
  225. package/dist/cjs/observability/dashboards/neo4j-cluster.js +223 -0
  226. package/dist/cjs/observability/dashboards/neo4j-cluster.js.map +1 -0
  227. package/dist/cjs/observability/dashboards/neo4j.d.ts +9 -0
  228. package/dist/cjs/observability/dashboards/neo4j.d.ts.map +1 -0
  229. package/dist/cjs/observability/dashboards/neo4j.js +156 -0
  230. package/dist/cjs/observability/dashboards/neo4j.js.map +1 -0
  231. package/dist/cjs/observability/dashboards/redis.d.ts +9 -0
  232. package/dist/cjs/observability/dashboards/redis.d.ts.map +1 -0
  233. package/dist/cjs/observability/dashboards/redis.js +221 -0
  234. package/dist/cjs/observability/dashboards/redis.js.map +1 -0
  235. package/dist/cjs/observability/dashboards/traefik.d.ts +9 -0
  236. package/dist/cjs/observability/dashboards/traefik.d.ts.map +1 -0
  237. package/dist/cjs/observability/dashboards/traefik.js +387 -0
  238. package/dist/cjs/observability/dashboards/traefik.js.map +1 -0
  239. package/dist/cjs/observability/index.d.ts +10 -0
  240. package/dist/cjs/observability/index.d.ts.map +1 -0
  241. package/dist/cjs/observability/index.js +14 -0
  242. package/dist/cjs/observability/index.js.map +1 -0
  243. package/dist/cjs/observability/interfaces.d.ts +173 -0
  244. package/dist/cjs/observability/interfaces.d.ts.map +1 -0
  245. package/dist/cjs/observability/interfaces.js +11 -0
  246. package/dist/cjs/observability/interfaces.js.map +1 -0
  247. package/dist/cjs/observability/stack.d.ts +31 -0
  248. package/dist/cjs/observability/stack.d.ts.map +1 -0
  249. package/dist/cjs/observability/stack.js +523 -0
  250. package/dist/cjs/observability/stack.js.map +1 -0
  251. package/dist/cjs/operator/cnpg.d.ts +22 -0
  252. package/dist/cjs/operator/cnpg.d.ts.map +1 -0
  253. package/dist/cjs/operator/cnpg.js +412 -0
  254. package/dist/cjs/operator/cnpg.js.map +1 -0
  255. package/dist/cjs/operator/index.d.ts +48 -0
  256. package/dist/cjs/operator/index.d.ts.map +1 -0
  257. package/dist/cjs/operator/index.js +155 -0
  258. package/dist/cjs/operator/index.js.map +1 -0
  259. package/dist/cjs/operator/interfaces.d.ts +192 -0
  260. package/dist/cjs/operator/interfaces.d.ts.map +1 -0
  261. package/dist/cjs/operator/interfaces.js +20 -0
  262. package/dist/cjs/operator/interfaces.js.map +1 -0
  263. package/dist/cjs/operator/mariadb.d.ts +22 -0
  264. package/dist/cjs/operator/mariadb.d.ts.map +1 -0
  265. package/dist/cjs/operator/mariadb.js +389 -0
  266. package/dist/cjs/operator/mariadb.js.map +1 -0
  267. package/dist/cjs/operator/minio.d.ts +37 -0
  268. package/dist/cjs/operator/minio.d.ts.map +1 -0
  269. package/dist/cjs/operator/minio.js +364 -0
  270. package/dist/cjs/operator/minio.js.map +1 -0
  271. package/dist/cjs/operator/neo4j.d.ts +48 -0
  272. package/dist/cjs/operator/neo4j.d.ts.map +1 -0
  273. package/dist/cjs/operator/neo4j.js +431 -0
  274. package/dist/cjs/operator/neo4j.js.map +1 -0
  275. package/dist/cjs/platform/components/argocd.d.ts +9 -0
  276. package/dist/cjs/platform/components/argocd.d.ts.map +1 -0
  277. package/dist/cjs/platform/components/argocd.js +82 -0
  278. package/dist/cjs/platform/components/argocd.js.map +1 -0
  279. package/dist/cjs/platform/components/cert-manager.d.ts +9 -0
  280. package/dist/cjs/platform/components/cert-manager.d.ts.map +1 -0
  281. package/dist/cjs/platform/components/cert-manager.js +56 -0
  282. package/dist/cjs/platform/components/cert-manager.js.map +1 -0
  283. package/dist/cjs/platform/components/descheduler.d.ts +9 -0
  284. package/dist/cjs/platform/components/descheduler.d.ts.map +1 -0
  285. package/dist/cjs/platform/components/descheduler.js +67 -0
  286. package/dist/cjs/platform/components/descheduler.js.map +1 -0
  287. package/dist/cjs/platform/components/external-dns.d.ts +9 -0
  288. package/dist/cjs/platform/components/external-dns.d.ts.map +1 -0
  289. package/dist/cjs/platform/components/external-dns.js +83 -0
  290. package/dist/cjs/platform/components/external-dns.js.map +1 -0
  291. package/dist/cjs/platform/components/external-secrets.d.ts +9 -0
  292. package/dist/cjs/platform/components/external-secrets.d.ts.map +1 -0
  293. package/dist/cjs/platform/components/external-secrets.js +62 -0
  294. package/dist/cjs/platform/components/external-secrets.js.map +1 -0
  295. package/dist/cjs/platform/components/index.d.ts +17 -0
  296. package/dist/cjs/platform/components/index.d.ts.map +1 -0
  297. package/dist/cjs/platform/components/index.js +28 -0
  298. package/dist/cjs/platform/components/index.js.map +1 -0
  299. package/dist/cjs/platform/components/oauth2-proxy.d.ts +14 -0
  300. package/dist/cjs/platform/components/oauth2-proxy.d.ts.map +1 -0
  301. package/dist/cjs/platform/components/oauth2-proxy.js +80 -0
  302. package/dist/cjs/platform/components/oauth2-proxy.js.map +1 -0
  303. package/dist/cjs/platform/components/traefik.d.ts +9 -0
  304. package/dist/cjs/platform/components/traefik.d.ts.map +1 -0
  305. package/dist/cjs/platform/components/traefik.js +74 -0
  306. package/dist/cjs/platform/components/traefik.js.map +1 -0
  307. package/dist/cjs/platform/components/vault.d.ts +12 -0
  308. package/dist/cjs/platform/components/vault.d.ts.map +1 -0
  309. package/dist/cjs/platform/components/vault.js +474 -0
  310. package/dist/cjs/platform/components/vault.js.map +1 -0
  311. package/dist/cjs/platform/index.d.ts +2 -1
  312. package/dist/cjs/platform/index.d.ts.map +1 -1
  313. package/dist/cjs/platform/index.js +3 -1
  314. package/dist/cjs/platform/index.js.map +1 -1
  315. package/dist/cjs/platform/interfaces.d.ts +73 -1
  316. package/dist/cjs/platform/interfaces.d.ts.map +1 -1
  317. package/dist/cjs/platform/interfaces.js +8 -0
  318. package/dist/cjs/platform/interfaces.js.map +1 -1
  319. package/dist/cjs/platform/stack.d.ts +1 -1
  320. package/dist/cjs/platform/stack.d.ts.map +1 -1
  321. package/dist/cjs/platform/stack.js +363 -153
  322. package/dist/cjs/platform/stack.js.map +1 -1
  323. package/dist/cjs/queue/index.d.ts +1 -0
  324. package/dist/cjs/queue/index.d.ts.map +1 -1
  325. package/dist/cjs/queue/index.js +5 -0
  326. package/dist/cjs/queue/index.js.map +1 -1
  327. package/dist/cjs/queue/interfaces.d.ts +20 -0
  328. package/dist/cjs/queue/interfaces.d.ts.map +1 -1
  329. package/dist/cjs/queue/interfaces.js +21 -0
  330. package/dist/cjs/queue/interfaces.js.map +1 -1
  331. package/dist/cjs/rackspace/cluster.d.ts +30 -0
  332. package/dist/cjs/rackspace/cluster.d.ts.map +1 -0
  333. package/dist/cjs/rackspace/cluster.js +116 -0
  334. package/dist/cjs/rackspace/cluster.js.map +1 -0
  335. package/dist/cjs/rackspace/index.d.ts +7 -0
  336. package/dist/cjs/rackspace/index.d.ts.map +1 -0
  337. package/dist/cjs/rackspace/index.js +11 -0
  338. package/dist/cjs/rackspace/index.js.map +1 -0
  339. package/dist/cjs/secrets/index.d.ts +1 -0
  340. package/dist/cjs/secrets/index.d.ts.map +1 -1
  341. package/dist/cjs/secrets/index.js +3 -0
  342. package/dist/cjs/secrets/index.js.map +1 -1
  343. package/dist/cjs/secrets/interfaces.d.ts +7 -0
  344. package/dist/cjs/secrets/interfaces.d.ts.map +1 -1
  345. package/dist/cjs/secrets/interfaces.js +8 -0
  346. package/dist/cjs/secrets/interfaces.js.map +1 -1
  347. package/dist/cjs/state/index.d.ts +1 -0
  348. package/dist/cjs/state/index.d.ts.map +1 -1
  349. package/dist/cjs/state/index.js +3 -0
  350. package/dist/cjs/state/index.js.map +1 -1
  351. package/dist/cjs/state/interfaces.d.ts +6 -0
  352. package/dist/cjs/state/interfaces.d.ts.map +1 -1
  353. package/dist/cjs/state/interfaces.js +7 -0
  354. package/dist/cjs/state/interfaces.js.map +1 -1
  355. package/dist/cjs/types/cloud-target.d.ts +7 -0
  356. package/dist/cjs/types/cloud-target.d.ts.map +1 -1
  357. package/dist/cjs/types/cloud-target.js +9 -2
  358. package/dist/cjs/types/cloud-target.js.map +1 -1
  359. package/dist/cjs/types/exposed-service.d.ts +20 -0
  360. package/dist/cjs/types/exposed-service.d.ts.map +1 -0
  361. package/dist/cjs/types/exposed-service.js +8 -0
  362. package/dist/cjs/types/exposed-service.js.map +1 -0
  363. package/dist/cjs/types/index.d.ts +3 -1
  364. package/dist/cjs/types/index.d.ts.map +1 -1
  365. package/dist/cjs/types/index.js +5 -1
  366. package/dist/cjs/types/index.js.map +1 -1
  367. package/dist/cjs/types/storage-tiers.d.ts +26 -0
  368. package/dist/cjs/types/storage-tiers.d.ts.map +1 -0
  369. package/dist/cjs/types/storage-tiers.js +30 -0
  370. package/dist/cjs/types/storage-tiers.js.map +1 -0
  371. package/dist/cjs/utils/ensure-namespace.d.ts +7 -0
  372. package/dist/cjs/utils/ensure-namespace.d.ts.map +1 -0
  373. package/dist/cjs/utils/ensure-namespace.js +53 -0
  374. package/dist/cjs/utils/ensure-namespace.js.map +1 -0
  375. package/dist/cjs/utils/index.d.ts +1 -0
  376. package/dist/cjs/utils/index.d.ts.map +1 -1
  377. package/dist/cjs/utils/index.js +3 -1
  378. package/dist/cjs/utils/index.js.map +1 -1
  379. package/dist/esm/access/dns.d.ts +26 -0
  380. package/dist/esm/access/dns.d.ts.map +1 -0
  381. package/dist/esm/access/dns.js +136 -0
  382. package/dist/esm/access/dns.js.map +1 -0
  383. package/dist/esm/access/index.d.ts +30 -0
  384. package/dist/esm/access/index.d.ts.map +1 -0
  385. package/dist/esm/access/index.js +45 -0
  386. package/dist/esm/access/index.js.map +1 -0
  387. package/dist/esm/access/interfaces.d.ts +97 -0
  388. package/dist/esm/access/interfaces.d.ts.map +1 -0
  389. package/dist/esm/access/interfaces.js +17 -0
  390. package/dist/esm/access/interfaces.js.map +1 -0
  391. package/dist/esm/access/proxy.d.ts +21 -0
  392. package/dist/esm/access/proxy.d.ts.map +1 -0
  393. package/dist/esm/access/proxy.js +155 -0
  394. package/dist/esm/access/proxy.js.map +1 -0
  395. package/dist/esm/access/tailscale-dns.d.ts +28 -0
  396. package/dist/esm/access/tailscale-dns.d.ts.map +1 -0
  397. package/dist/esm/access/tailscale-dns.js +131 -0
  398. package/dist/esm/access/tailscale-dns.js.map +1 -0
  399. package/dist/esm/access/tailscale.d.ts +14 -0
  400. package/dist/esm/access/tailscale.d.ts.map +1 -0
  401. package/dist/esm/access/tailscale.js +135 -0
  402. package/dist/esm/access/tailscale.js.map +1 -0
  403. package/dist/esm/access/wireguard.d.ts +14 -0
  404. package/dist/esm/access/wireguard.d.ts.map +1 -0
  405. package/dist/esm/access/wireguard.js +140 -0
  406. package/dist/esm/access/wireguard.js.map +1 -0
  407. package/dist/esm/argocd/app.d.ts +31 -0
  408. package/dist/esm/argocd/app.d.ts.map +1 -0
  409. package/dist/esm/argocd/app.js +194 -0
  410. package/dist/esm/argocd/app.js.map +1 -0
  411. package/dist/esm/argocd/argocd.d.ts +33 -0
  412. package/dist/esm/argocd/argocd.d.ts.map +1 -0
  413. package/dist/esm/argocd/argocd.js +182 -0
  414. package/dist/esm/argocd/argocd.js.map +1 -0
  415. package/dist/esm/argocd/external-secrets.d.ts +23 -0
  416. package/dist/esm/argocd/external-secrets.d.ts.map +1 -0
  417. package/dist/esm/argocd/external-secrets.js +121 -0
  418. package/dist/esm/argocd/external-secrets.js.map +1 -0
  419. package/dist/esm/argocd/index.d.ts +18 -0
  420. package/dist/esm/argocd/index.d.ts.map +1 -0
  421. package/dist/esm/argocd/index.js +27 -0
  422. package/dist/esm/argocd/index.js.map +1 -0
  423. package/dist/esm/argocd/interfaces.d.ts +144 -0
  424. package/dist/esm/argocd/interfaces.d.ts.map +1 -0
  425. package/dist/esm/argocd/interfaces.js +8 -0
  426. package/dist/esm/argocd/interfaces.js.map +1 -0
  427. package/dist/esm/argocd/project.d.ts +23 -0
  428. package/dist/esm/argocd/project.d.ts.map +1 -0
  429. package/dist/esm/argocd/project.js +93 -0
  430. package/dist/esm/argocd/project.js.map +1 -0
  431. package/dist/esm/argocd/repo.d.ts +15 -0
  432. package/dist/esm/argocd/repo.d.ts.map +1 -0
  433. package/dist/esm/argocd/repo.js +83 -0
  434. package/dist/esm/argocd/repo.js.map +1 -0
  435. package/dist/esm/argocd/secrets.d.ts +23 -0
  436. package/dist/esm/argocd/secrets.d.ts.map +1 -0
  437. package/dist/esm/argocd/secrets.js +87 -0
  438. package/dist/esm/argocd/secrets.js.map +1 -0
  439. package/dist/esm/azure/index.d.ts +1 -0
  440. package/dist/esm/azure/index.d.ts.map +1 -1
  441. package/dist/esm/azure/index.js +3 -1
  442. package/dist/esm/azure/index.js.map +1 -1
  443. package/dist/esm/azure/resource-group.d.ts +37 -0
  444. package/dist/esm/azure/resource-group.d.ts.map +1 -0
  445. package/dist/esm/azure/resource-group.js +79 -0
  446. package/dist/esm/azure/resource-group.js.map +1 -0
  447. package/dist/esm/azure/secrets.d.ts +6 -3
  448. package/dist/esm/azure/secrets.d.ts.map +1 -1
  449. package/dist/esm/azure/secrets.js +17 -3
  450. package/dist/esm/azure/secrets.js.map +1 -1
  451. package/dist/esm/backup/index.d.ts +20 -0
  452. package/dist/esm/backup/index.d.ts.map +1 -0
  453. package/dist/esm/backup/index.js +206 -0
  454. package/dist/esm/backup/index.js.map +1 -0
  455. package/dist/esm/backup/interfaces.d.ts +29 -0
  456. package/dist/esm/backup/interfaces.d.ts.map +1 -0
  457. package/dist/esm/backup/interfaces.js +3 -0
  458. package/dist/esm/backup/interfaces.js.map +1 -0
  459. package/dist/esm/cache/cache.d.ts +38 -0
  460. package/dist/esm/cache/cache.d.ts.map +1 -0
  461. package/dist/esm/cache/cache.js +189 -0
  462. package/dist/esm/cache/cache.js.map +1 -0
  463. package/dist/esm/cache/index.d.ts +2 -0
  464. package/dist/esm/cache/index.d.ts.map +1 -1
  465. package/dist/esm/cache/index.js +7 -0
  466. package/dist/esm/cache/index.js.map +1 -1
  467. package/dist/esm/cache/interfaces.d.ts +20 -0
  468. package/dist/esm/cache/interfaces.d.ts.map +1 -1
  469. package/dist/esm/cache/interfaces.js +18 -0
  470. package/dist/esm/cache/interfaces.js.map +1 -1
  471. package/dist/esm/cli/azure-prompts.d.ts +3 -12
  472. package/dist/esm/cli/azure-prompts.d.ts.map +1 -1
  473. package/dist/esm/cli/azure-prompts.js +4 -23
  474. package/dist/esm/cli/azure-prompts.js.map +1 -1
  475. package/dist/esm/cli/templates-azure.d.ts.map +1 -1
  476. package/dist/esm/cli/templates-azure.js +20 -15
  477. package/dist/esm/cli/templates-azure.js.map +1 -1
  478. package/dist/esm/cli/templates.d.ts +0 -1
  479. package/dist/esm/cli/templates.d.ts.map +1 -1
  480. package/dist/esm/cli/templates.js.map +1 -1
  481. package/dist/esm/cli.js +1 -1
  482. package/dist/esm/cli.js.map +1 -1
  483. package/dist/esm/cluster/index.d.ts +1 -1
  484. package/dist/esm/cluster/index.d.ts.map +1 -1
  485. package/dist/esm/cluster/interfaces.d.ts +18 -1
  486. package/dist/esm/cluster/interfaces.d.ts.map +1 -1
  487. package/dist/esm/database/index.d.ts +1 -0
  488. package/dist/esm/database/index.d.ts.map +1 -1
  489. package/dist/esm/database/index.js +5 -0
  490. package/dist/esm/database/index.js.map +1 -1
  491. package/dist/esm/database/interfaces.d.ts +19 -0
  492. package/dist/esm/database/interfaces.d.ts.map +1 -1
  493. package/dist/esm/database/interfaces.js +20 -0
  494. package/dist/esm/database/interfaces.js.map +1 -1
  495. package/dist/esm/dns/index.d.ts +1 -0
  496. package/dist/esm/dns/index.d.ts.map +1 -1
  497. package/dist/esm/dns/index.js +3 -0
  498. package/dist/esm/dns/index.js.map +1 -1
  499. package/dist/esm/dns/interfaces.d.ts +11 -0
  500. package/dist/esm/dns/interfaces.d.ts.map +1 -1
  501. package/dist/esm/dns/interfaces.js +12 -0
  502. package/dist/esm/dns/interfaces.js.map +1 -1
  503. package/dist/esm/email/index.d.ts +41 -0
  504. package/dist/esm/email/index.d.ts.map +1 -0
  505. package/dist/esm/email/index.js +318 -0
  506. package/dist/esm/email/index.js.map +1 -0
  507. package/dist/esm/email/interfaces.d.ts +119 -0
  508. package/dist/esm/email/interfaces.d.ts.map +1 -0
  509. package/dist/esm/email/interfaces.js +19 -0
  510. package/dist/esm/email/interfaces.js.map +1 -0
  511. package/dist/esm/factories/cluster.d.ts +1 -1
  512. package/dist/esm/factories/cluster.d.ts.map +1 -1
  513. package/dist/esm/factories/cluster.js +16 -0
  514. package/dist/esm/factories/cluster.js.map +1 -1
  515. package/dist/esm/factories/index.d.ts +1 -1
  516. package/dist/esm/factories/index.d.ts.map +1 -1
  517. package/dist/esm/factories/index.js.map +1 -1
  518. package/dist/esm/factories/secrets.d.ts +1 -1
  519. package/dist/esm/factories/secrets.js +3 -3
  520. package/dist/esm/factories/secrets.js.map +1 -1
  521. package/dist/esm/factories/types.d.ts +26 -0
  522. package/dist/esm/factories/types.d.ts.map +1 -1
  523. package/dist/esm/factories/types.js.map +1 -1
  524. package/dist/esm/index.d.ts +27 -5
  525. package/dist/esm/index.d.ts.map +1 -1
  526. package/dist/esm/index.js +75 -8
  527. package/dist/esm/index.js.map +1 -1
  528. package/dist/esm/network/index.d.ts +1 -0
  529. package/dist/esm/network/index.d.ts.map +1 -1
  530. package/dist/esm/network/index.js +3 -1
  531. package/dist/esm/network/index.js.map +1 -1
  532. package/dist/esm/network/interfaces.d.ts +6 -0
  533. package/dist/esm/network/interfaces.d.ts.map +1 -1
  534. package/dist/esm/network/interfaces.js +7 -0
  535. package/dist/esm/network/interfaces.js.map +1 -1
  536. package/dist/esm/nimbus/index.d.ts +28 -0
  537. package/dist/esm/nimbus/index.d.ts.map +1 -0
  538. package/dist/esm/nimbus/index.js +44 -0
  539. package/dist/esm/nimbus/index.js.map +1 -0
  540. package/dist/esm/nimbus/interfaces.d.ts +64 -0
  541. package/dist/esm/nimbus/interfaces.d.ts.map +1 -0
  542. package/dist/esm/nimbus/interfaces.js +10 -0
  543. package/dist/esm/nimbus/interfaces.js.map +1 -0
  544. package/dist/esm/nimbus/registry.d.ts +19 -0
  545. package/dist/esm/nimbus/registry.d.ts.map +1 -0
  546. package/dist/esm/nimbus/registry.js +123 -0
  547. package/dist/esm/nimbus/registry.js.map +1 -0
  548. package/dist/esm/observability/alerts.d.ts +51 -0
  549. package/dist/esm/observability/alerts.d.ts.map +1 -0
  550. package/dist/esm/observability/alerts.js +281 -0
  551. package/dist/esm/observability/alerts.js.map +1 -0
  552. package/dist/esm/observability/dashboards/_helpers.d.ts +38 -0
  553. package/dist/esm/observability/dashboards/_helpers.d.ts.map +1 -0
  554. package/dist/esm/observability/dashboards/_helpers.js +141 -0
  555. package/dist/esm/observability/dashboards/_helpers.js.map +1 -0
  556. package/dist/esm/observability/dashboards/alerts.d.ts +12 -0
  557. package/dist/esm/observability/dashboards/alerts.d.ts.map +1 -0
  558. package/dist/esm/observability/dashboards/alerts.js +261 -0
  559. package/dist/esm/observability/dashboards/alerts.js.map +1 -0
  560. package/dist/esm/observability/dashboards/argocd-app.d.ts +18 -0
  561. package/dist/esm/observability/dashboards/argocd-app.d.ts.map +1 -0
  562. package/dist/esm/observability/dashboards/argocd-app.js +212 -0
  563. package/dist/esm/observability/dashboards/argocd-app.js.map +1 -0
  564. package/dist/esm/observability/dashboards/argocd.d.ts +9 -0
  565. package/dist/esm/observability/dashboards/argocd.d.ts.map +1 -0
  566. package/dist/esm/observability/dashboards/argocd.js +141 -0
  567. package/dist/esm/observability/dashboards/argocd.js.map +1 -0
  568. package/dist/esm/observability/dashboards/cert-manager.d.ts +9 -0
  569. package/dist/esm/observability/dashboards/cert-manager.d.ts.map +1 -0
  570. package/dist/esm/observability/dashboards/cert-manager.js +167 -0
  571. package/dist/esm/observability/dashboards/cert-manager.js.map +1 -0
  572. package/dist/esm/observability/dashboards/cnpg-cluster.d.ts +15 -0
  573. package/dist/esm/observability/dashboards/cnpg-cluster.d.ts.map +1 -0
  574. package/dist/esm/observability/dashboards/cnpg-cluster.js +376 -0
  575. package/dist/esm/observability/dashboards/cnpg-cluster.js.map +1 -0
  576. package/dist/esm/observability/dashboards/cnpg.d.ts +10 -0
  577. package/dist/esm/observability/dashboards/cnpg.d.ts.map +1 -0
  578. package/dist/esm/observability/dashboards/cnpg.js +181 -0
  579. package/dist/esm/observability/dashboards/cnpg.js.map +1 -0
  580. package/dist/esm/observability/dashboards/index.d.ts +28 -0
  581. package/dist/esm/observability/dashboards/index.d.ts.map +1 -0
  582. package/dist/esm/observability/dashboards/index.js +159 -0
  583. package/dist/esm/observability/dashboards/index.js.map +1 -0
  584. package/dist/esm/observability/dashboards/loki.d.ts +9 -0
  585. package/dist/esm/observability/dashboards/loki.d.ts.map +1 -0
  586. package/dist/esm/observability/dashboards/loki.js +113 -0
  587. package/dist/esm/observability/dashboards/loki.js.map +1 -0
  588. package/dist/esm/observability/dashboards/mariadb-cluster.d.ts +15 -0
  589. package/dist/esm/observability/dashboards/mariadb-cluster.d.ts.map +1 -0
  590. package/dist/esm/observability/dashboards/mariadb-cluster.js +424 -0
  591. package/dist/esm/observability/dashboards/mariadb-cluster.js.map +1 -0
  592. package/dist/esm/observability/dashboards/mariadb.d.ts +10 -0
  593. package/dist/esm/observability/dashboards/mariadb.d.ts.map +1 -0
  594. package/dist/esm/observability/dashboards/mariadb.js +181 -0
  595. package/dist/esm/observability/dashboards/mariadb.js.map +1 -0
  596. package/dist/esm/observability/dashboards/minio.d.ts +9 -0
  597. package/dist/esm/observability/dashboards/minio.d.ts.map +1 -0
  598. package/dist/esm/observability/dashboards/minio.js +267 -0
  599. package/dist/esm/observability/dashboards/minio.js.map +1 -0
  600. package/dist/esm/observability/dashboards/neo4j-cluster.d.ts +16 -0
  601. package/dist/esm/observability/dashboards/neo4j-cluster.d.ts.map +1 -0
  602. package/dist/esm/observability/dashboards/neo4j-cluster.js +223 -0
  603. package/dist/esm/observability/dashboards/neo4j-cluster.js.map +1 -0
  604. package/dist/esm/observability/dashboards/neo4j.d.ts +9 -0
  605. package/dist/esm/observability/dashboards/neo4j.d.ts.map +1 -0
  606. package/dist/esm/observability/dashboards/neo4j.js +156 -0
  607. package/dist/esm/observability/dashboards/neo4j.js.map +1 -0
  608. package/dist/esm/observability/dashboards/redis.d.ts +9 -0
  609. package/dist/esm/observability/dashboards/redis.d.ts.map +1 -0
  610. package/dist/esm/observability/dashboards/redis.js +221 -0
  611. package/dist/esm/observability/dashboards/redis.js.map +1 -0
  612. package/dist/esm/observability/dashboards/traefik.d.ts +9 -0
  613. package/dist/esm/observability/dashboards/traefik.d.ts.map +1 -0
  614. package/dist/esm/observability/dashboards/traefik.js +387 -0
  615. package/dist/esm/observability/dashboards/traefik.js.map +1 -0
  616. package/dist/esm/observability/index.d.ts +10 -0
  617. package/dist/esm/observability/index.d.ts.map +1 -0
  618. package/dist/esm/observability/index.js +14 -0
  619. package/dist/esm/observability/index.js.map +1 -0
  620. package/dist/esm/observability/interfaces.d.ts +173 -0
  621. package/dist/esm/observability/interfaces.d.ts.map +1 -0
  622. package/dist/esm/observability/interfaces.js +11 -0
  623. package/dist/esm/observability/interfaces.js.map +1 -0
  624. package/dist/esm/observability/stack.d.ts +31 -0
  625. package/dist/esm/observability/stack.d.ts.map +1 -0
  626. package/dist/esm/observability/stack.js +523 -0
  627. package/dist/esm/observability/stack.js.map +1 -0
  628. package/dist/esm/operator/cnpg.d.ts +22 -0
  629. package/dist/esm/operator/cnpg.d.ts.map +1 -0
  630. package/dist/esm/operator/cnpg.js +412 -0
  631. package/dist/esm/operator/cnpg.js.map +1 -0
  632. package/dist/esm/operator/index.d.ts +48 -0
  633. package/dist/esm/operator/index.d.ts.map +1 -0
  634. package/dist/esm/operator/index.js +155 -0
  635. package/dist/esm/operator/index.js.map +1 -0
  636. package/dist/esm/operator/interfaces.d.ts +192 -0
  637. package/dist/esm/operator/interfaces.d.ts.map +1 -0
  638. package/dist/esm/operator/interfaces.js +20 -0
  639. package/dist/esm/operator/interfaces.js.map +1 -0
  640. package/dist/esm/operator/mariadb.d.ts +22 -0
  641. package/dist/esm/operator/mariadb.d.ts.map +1 -0
  642. package/dist/esm/operator/mariadb.js +389 -0
  643. package/dist/esm/operator/mariadb.js.map +1 -0
  644. package/dist/esm/operator/minio.d.ts +37 -0
  645. package/dist/esm/operator/minio.d.ts.map +1 -0
  646. package/dist/esm/operator/minio.js +364 -0
  647. package/dist/esm/operator/minio.js.map +1 -0
  648. package/dist/esm/operator/neo4j.d.ts +48 -0
  649. package/dist/esm/operator/neo4j.d.ts.map +1 -0
  650. package/dist/esm/operator/neo4j.js +431 -0
  651. package/dist/esm/operator/neo4j.js.map +1 -0
  652. package/dist/esm/platform/components/argocd.d.ts +9 -0
  653. package/dist/esm/platform/components/argocd.d.ts.map +1 -0
  654. package/dist/esm/platform/components/argocd.js +82 -0
  655. package/dist/esm/platform/components/argocd.js.map +1 -0
  656. package/dist/esm/platform/components/cert-manager.d.ts +9 -0
  657. package/dist/esm/platform/components/cert-manager.d.ts.map +1 -0
  658. package/dist/esm/platform/components/cert-manager.js +56 -0
  659. package/dist/esm/platform/components/cert-manager.js.map +1 -0
  660. package/dist/esm/platform/components/descheduler.d.ts +9 -0
  661. package/dist/esm/platform/components/descheduler.d.ts.map +1 -0
  662. package/dist/esm/platform/components/descheduler.js +67 -0
  663. package/dist/esm/platform/components/descheduler.js.map +1 -0
  664. package/dist/esm/platform/components/external-dns.d.ts +9 -0
  665. package/dist/esm/platform/components/external-dns.d.ts.map +1 -0
  666. package/dist/esm/platform/components/external-dns.js +83 -0
  667. package/dist/esm/platform/components/external-dns.js.map +1 -0
  668. package/dist/esm/platform/components/external-secrets.d.ts +9 -0
  669. package/dist/esm/platform/components/external-secrets.d.ts.map +1 -0
  670. package/dist/esm/platform/components/external-secrets.js +62 -0
  671. package/dist/esm/platform/components/external-secrets.js.map +1 -0
  672. package/dist/esm/platform/components/index.d.ts +17 -0
  673. package/dist/esm/platform/components/index.d.ts.map +1 -0
  674. package/dist/esm/platform/components/index.js +28 -0
  675. package/dist/esm/platform/components/index.js.map +1 -0
  676. package/dist/esm/platform/components/oauth2-proxy.d.ts +14 -0
  677. package/dist/esm/platform/components/oauth2-proxy.d.ts.map +1 -0
  678. package/dist/esm/platform/components/oauth2-proxy.js +80 -0
  679. package/dist/esm/platform/components/oauth2-proxy.js.map +1 -0
  680. package/dist/esm/platform/components/traefik.d.ts +9 -0
  681. package/dist/esm/platform/components/traefik.d.ts.map +1 -0
  682. package/dist/esm/platform/components/traefik.js +74 -0
  683. package/dist/esm/platform/components/traefik.js.map +1 -0
  684. package/dist/esm/platform/components/vault.d.ts +12 -0
  685. package/dist/esm/platform/components/vault.d.ts.map +1 -0
  686. package/dist/esm/platform/components/vault.js +474 -0
  687. package/dist/esm/platform/components/vault.js.map +1 -0
  688. package/dist/esm/platform/index.d.ts +2 -1
  689. package/dist/esm/platform/index.d.ts.map +1 -1
  690. package/dist/esm/platform/index.js +3 -1
  691. package/dist/esm/platform/index.js.map +1 -1
  692. package/dist/esm/platform/interfaces.d.ts +73 -1
  693. package/dist/esm/platform/interfaces.d.ts.map +1 -1
  694. package/dist/esm/platform/interfaces.js +8 -0
  695. package/dist/esm/platform/interfaces.js.map +1 -1
  696. package/dist/esm/platform/stack.d.ts +1 -1
  697. package/dist/esm/platform/stack.d.ts.map +1 -1
  698. package/dist/esm/platform/stack.js +363 -153
  699. package/dist/esm/platform/stack.js.map +1 -1
  700. package/dist/esm/queue/index.d.ts +1 -0
  701. package/dist/esm/queue/index.d.ts.map +1 -1
  702. package/dist/esm/queue/index.js +5 -0
  703. package/dist/esm/queue/index.js.map +1 -1
  704. package/dist/esm/queue/interfaces.d.ts +20 -0
  705. package/dist/esm/queue/interfaces.d.ts.map +1 -1
  706. package/dist/esm/queue/interfaces.js +21 -0
  707. package/dist/esm/queue/interfaces.js.map +1 -1
  708. package/dist/esm/rackspace/cluster.d.ts +30 -0
  709. package/dist/esm/rackspace/cluster.d.ts.map +1 -0
  710. package/dist/esm/rackspace/cluster.js +116 -0
  711. package/dist/esm/rackspace/cluster.js.map +1 -0
  712. package/dist/esm/rackspace/index.d.ts +7 -0
  713. package/dist/esm/rackspace/index.d.ts.map +1 -0
  714. package/dist/esm/rackspace/index.js +11 -0
  715. package/dist/esm/rackspace/index.js.map +1 -0
  716. package/dist/esm/secrets/index.d.ts +1 -0
  717. package/dist/esm/secrets/index.d.ts.map +1 -1
  718. package/dist/esm/secrets/index.js +3 -0
  719. package/dist/esm/secrets/index.js.map +1 -1
  720. package/dist/esm/secrets/interfaces.d.ts +7 -0
  721. package/dist/esm/secrets/interfaces.d.ts.map +1 -1
  722. package/dist/esm/secrets/interfaces.js +8 -0
  723. package/dist/esm/secrets/interfaces.js.map +1 -1
  724. package/dist/esm/state/index.d.ts +1 -0
  725. package/dist/esm/state/index.d.ts.map +1 -1
  726. package/dist/esm/state/index.js +3 -0
  727. package/dist/esm/state/index.js.map +1 -1
  728. package/dist/esm/state/interfaces.d.ts +6 -0
  729. package/dist/esm/state/interfaces.d.ts.map +1 -1
  730. package/dist/esm/state/interfaces.js +7 -0
  731. package/dist/esm/state/interfaces.js.map +1 -1
  732. package/dist/esm/types/cloud-target.d.ts +7 -0
  733. package/dist/esm/types/cloud-target.d.ts.map +1 -1
  734. package/dist/esm/types/cloud-target.js +9 -2
  735. package/dist/esm/types/cloud-target.js.map +1 -1
  736. package/dist/esm/types/exposed-service.d.ts +20 -0
  737. package/dist/esm/types/exposed-service.d.ts.map +1 -0
  738. package/dist/esm/types/exposed-service.js +8 -0
  739. package/dist/esm/types/exposed-service.js.map +1 -0
  740. package/dist/esm/types/index.d.ts +3 -1
  741. package/dist/esm/types/index.d.ts.map +1 -1
  742. package/dist/esm/types/index.js +5 -1
  743. package/dist/esm/types/index.js.map +1 -1
  744. package/dist/esm/types/storage-tiers.d.ts +26 -0
  745. package/dist/esm/types/storage-tiers.d.ts.map +1 -0
  746. package/dist/esm/types/storage-tiers.js +30 -0
  747. package/dist/esm/types/storage-tiers.js.map +1 -0
  748. package/dist/esm/utils/ensure-namespace.d.ts +7 -0
  749. package/dist/esm/utils/ensure-namespace.d.ts.map +1 -0
  750. package/dist/esm/utils/ensure-namespace.js +53 -0
  751. package/dist/esm/utils/ensure-namespace.js.map +1 -0
  752. package/dist/esm/utils/index.d.ts +1 -0
  753. package/dist/esm/utils/index.d.ts.map +1 -1
  754. package/dist/esm/utils/index.js +3 -1
  755. package/dist/esm/utils/index.js.map +1 -1
  756. package/package.json +8 -4
@@ -0,0 +1,474 @@
1
+ "use strict";
2
+ /**
3
+ * Vault secrets management deployment with auto-unseal and bootstrap sidecar.
4
+ *
5
+ * @module platform/components/vault
6
+ */
7
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
8
+ if (k2 === undefined) k2 = k;
9
+ var desc = Object.getOwnPropertyDescriptor(m, k);
10
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
11
+ desc = { enumerable: true, get: function() { return m[k]; } };
12
+ }
13
+ Object.defineProperty(o, k2, desc);
14
+ }) : (function(o, m, k, k2) {
15
+ if (k2 === undefined) k2 = k;
16
+ o[k2] = m[k];
17
+ }));
18
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
19
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
20
+ }) : function(o, v) {
21
+ o["default"] = v;
22
+ });
23
+ var __importStar = (this && this.__importStar) || (function () {
24
+ var ownKeys = function(o) {
25
+ ownKeys = Object.getOwnPropertyNames || function (o) {
26
+ var ar = [];
27
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
28
+ return ar;
29
+ };
30
+ return ownKeys(o);
31
+ };
32
+ return function (mod) {
33
+ if (mod && mod.__esModule) return mod;
34
+ var result = {};
35
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
36
+ __setModuleDefault(result, mod);
37
+ return result;
38
+ };
39
+ })();
40
+ Object.defineProperty(exports, "__esModule", { value: true });
41
+ exports.deployVault = deployVault;
42
+ const aws = __importStar(require("@pulumi/aws"));
43
+ const k8s = __importStar(require("@pulumi/kubernetes"));
44
+ const pulumi = __importStar(require("@pulumi/pulumi"));
45
+ /** Number of Vault replicas in HA mode (Raft consensus requires odd count). */
46
+ const VAULT_HA_REPLICAS = 3;
47
+ /**
48
+ * Bootstrap script for the Vault sidecar container.
49
+ *
50
+ * Runs on every pod start. All operations are idempotent:
51
+ * - Init (if first start) → store keys in K8s Secret
52
+ * - Unseal (if Shamir) → read keys from K8s Secret
53
+ * - Enable KV-v2 secrets engine
54
+ * - Enable + configure Kubernetes auth
55
+ * - Create ESO policy + role
56
+ * - Create user-policy for human access
57
+ * - Sleep infinity
58
+ */
59
+ const VAULT_BOOTSTRAP_SCRIPT = `#!/bin/sh
60
+ set -e
61
+ export VAULT_ADDR="http://localhost:8200"
62
+
63
+ # --- Helpers (no jq/curl — vault image is minimal Alpine) ---
64
+
65
+ # Extract a JSON string field: json_field '{"key":"val"}' key → val
66
+ json_field() {
67
+ echo "$1" | sed -n 's/.*"'"$2"'"[[:space:]]*:[[:space:]]*"\\([^"]*\\)".*/\\1/p' | head -1
68
+ }
69
+
70
+ # Extract a JSON boolean field: json_bool '{"key":true}' key → true
71
+ json_bool() {
72
+ echo "$1" | sed -n 's/.*"'"$2"'"[[:space:]]*:[[:space:]]*\\(true\\|false\\).*/\\1/p' | head -1
73
+ }
74
+
75
+ # Extract JSON array of strings as comma-separated: json_array '{"k":["a","b"]}' k → a,b
76
+ json_array() {
77
+ echo "$1" | sed -n 's/.*"'"$2"'"[[:space:]]*:[[:space:]]*\\[\\([^]]*\\)\\].*/\\1/p' | sed 's/"//g; s/ //g' | head -1
78
+ }
79
+
80
+ # K8s API via wget (available in Alpine)
81
+ SA_TOKEN=$(cat /var/run/secrets/kubernetes.io/serviceaccount/token)
82
+ CA_CERT=/var/run/secrets/kubernetes.io/serviceaccount/ca.crt
83
+ NAMESPACE=$(cat /var/run/secrets/kubernetes.io/serviceaccount/namespace)
84
+ API="https://kubernetes.default.svc"
85
+
86
+ # Token persistence — write to PVC so it survives pod restarts
87
+ TOKEN_FILE="/vault/data/.bootstrap-token"
88
+ RECOVERY_FILE="/vault/data/.bootstrap-recovery-keys"
89
+
90
+ # --- Wait for Vault ---
91
+
92
+ echo "Waiting for Vault..."
93
+ until vault status 2>&1 | grep -q "Initialized"; do sleep 2; done
94
+ echo "Vault is reachable"
95
+
96
+ # --- Init or Unseal ---
97
+
98
+ STATUS_JSON=$(vault status -format=json 2>/dev/null || true)
99
+ INITIALIZED=$(json_bool "$STATUS_JSON" initialized)
100
+ SEALED=$(json_bool "$STATUS_JSON" sealed)
101
+ SEAL_TYPE=$(json_field "$STATUS_JSON" seal_type)
102
+
103
+ if [ "$INITIALIZED" = "false" ]; then
104
+ # Detect seal type from text output (more reliable when uninitialized)
105
+ SEAL_TYPE_TEXT=$(vault status 2>&1 | grep "Seal Type" | awk '{print $NF}')
106
+ echo "Initializing Vault (seal_type=$SEAL_TYPE_TEXT)..."
107
+ if [ "$SEAL_TYPE_TEXT" = "shamir" ]; then
108
+ INIT_OUTPUT=$(vault operator init -key-shares=5 -key-threshold=3 -format=json)
109
+ else
110
+ # Auto-unseal (awskms, azurekeyvault, gcpckms): use recovery keys
111
+ INIT_OUTPUT=$(vault operator init -recovery-shares=5 -recovery-threshold=3 -format=json)
112
+ fi
113
+ ROOT_TOKEN=$(json_field "$INIT_OUTPUT" root_token)
114
+
115
+ # Auto-unseal uses recovery_keys_b64; Shamir uses unseal_keys_b64
116
+ RECOVERY_KEYS=$(json_array "$INIT_OUTPUT" recovery_keys_b64)
117
+ if [ -z "$RECOVERY_KEYS" ]; then
118
+ RECOVERY_KEYS=$(json_array "$INIT_OUTPUT" unseal_keys_b64)
119
+ fi
120
+
121
+ # Store on PVC (survives pod restarts)
122
+ echo "$ROOT_TOKEN" > "$TOKEN_FILE"
123
+ echo "$RECOVERY_KEYS" > "$RECOVERY_FILE"
124
+ chmod 600 "$TOKEN_FILE" "$RECOVERY_FILE"
125
+ echo "Init keys stored on PVC"
126
+
127
+ # Shamir: manually unseal (auto-unseal handles itself)
128
+ if [ "$SEAL_TYPE" = "shamir" ]; then
129
+ echo "Unsealing (Shamir)..."
130
+ for i in 1 2 3; do
131
+ KEY=$(echo "$RECOVERY_KEYS" | cut -d',' -f$i)
132
+ vault operator unseal "$KEY"
133
+ done
134
+ fi
135
+
136
+ export VAULT_TOKEN="$ROOT_TOKEN"
137
+ else
138
+ echo "Vault already initialized (seal_type=$SEAL_TYPE, sealed=$SEALED)"
139
+
140
+ # Read root token from PVC
141
+ if [ -f "$TOKEN_FILE" ]; then
142
+ ROOT_TOKEN=$(cat "$TOKEN_FILE")
143
+ echo "Root token loaded from PVC"
144
+ else
145
+ echo "WARNING: No token file found at $TOKEN_FILE"
146
+ fi
147
+
148
+ # Shamir: unseal if sealed
149
+ if [ "$SEALED" = "true" ] && [ "$SEAL_TYPE" = "shamir" ] && [ -f "$RECOVERY_FILE" ]; then
150
+ echo "Unsealing (Shamir)..."
151
+ RECOVERY_KEYS=$(cat "$RECOVERY_FILE")
152
+ for i in 1 2 3; do
153
+ KEY=$(echo "$RECOVERY_KEYS" | cut -d',' -f$i)
154
+ vault operator unseal "$KEY"
155
+ done
156
+ fi
157
+
158
+ export VAULT_TOKEN="$ROOT_TOKEN"
159
+ fi
160
+
161
+ # Wait for unseal (auto-unseal may take a moment)
162
+ echo "Waiting for unseal..."
163
+ TRIES=0
164
+ while [ $TRIES -lt 60 ]; do
165
+ STATUS=$(vault status -format=json 2>/dev/null || true)
166
+ IS_SEALED=$(json_bool "$STATUS" sealed)
167
+ if [ "$IS_SEALED" = "false" ]; then
168
+ break
169
+ fi
170
+ TRIES=$((TRIES + 1))
171
+ sleep 2
172
+ done
173
+ echo "Vault is unsealed"
174
+
175
+ if [ -z "$VAULT_TOKEN" ]; then
176
+ echo "ERROR: No root token available. Cannot configure Vault."
177
+ echo "Create vault-init-keys secret manually with root-token field."
178
+ exec sleep infinity
179
+ fi
180
+
181
+ vault login "$VAULT_TOKEN" > /dev/null 2>&1
182
+
183
+ # --- Configure secrets engines + auth ---
184
+
185
+ # Enable KV-v2 (idempotent)
186
+ vault secrets list | grep -q "secret/" || vault secrets enable -path=secret kv-v2
187
+ echo "KV-v2 engine ready"
188
+
189
+ # Enable K8s auth (idempotent)
190
+ vault auth list | grep -q "kubernetes/" || vault auth enable kubernetes
191
+
192
+ # Configure K8s auth
193
+ vault write auth/kubernetes/config \\
194
+ token_reviewer_jwt="$(cat /var/run/secrets/kubernetes.io/serviceaccount/token)" \\
195
+ kubernetes_host="https://kubernetes.default.svc" \\
196
+ kubernetes_ca_cert=@/var/run/secrets/kubernetes.io/serviceaccount/ca.crt
197
+ echo "K8s auth configured"
198
+
199
+ # ESO policy + role
200
+ vault policy write eso - <<'EOPOLICY'
201
+ path "secret/data/*" { capabilities = ["read"] }
202
+ EOPOLICY
203
+
204
+ vault write auth/kubernetes/role/eso \\
205
+ bound_service_account_names=external-secrets \\
206
+ bound_service_account_namespaces="*" \\
207
+ policies=eso \\
208
+ ttl=24h
209
+ echo "ESO policy and role ready"
210
+
211
+ # User policy (CRUD for humans)
212
+ vault policy write user-policy - <<'EOPOLICY'
213
+ path "secret/data/*" { capabilities = ["create", "read", "update", "delete", "list"] }
214
+ EOPOLICY
215
+
216
+ echo "Bootstrap complete — sleeping"
217
+ exec sleep infinity
218
+ `;
219
+ /**
220
+ * Build the HCL config string for Vault server.
221
+ *
222
+ * When auto-unseal is configured, includes the seal stanza.
223
+ * Must include listener + storage because setting standalone.config
224
+ * overrides the chart's auto-generated config.
225
+ */
226
+ function buildVaultHclConfig(ha, sealStanza) {
227
+ const lines = [
228
+ "ui = true",
229
+ "",
230
+ 'listener "tcp" {',
231
+ " tls_disable = 1",
232
+ ' address = "[::]:8200"',
233
+ ' cluster_address = "[::]:8201"',
234
+ "}",
235
+ "",
236
+ ];
237
+ if (ha) {
238
+ lines.push('storage "raft" {', ' path = "/vault/data"', "}");
239
+ }
240
+ else {
241
+ lines.push('storage "file" {', ' path = "/vault/data"', "}");
242
+ }
243
+ if (sealStanza) {
244
+ lines.push("", sealStanza);
245
+ }
246
+ return lines.join("\n");
247
+ }
248
+ /**
249
+ * Build the seal stanza HCL for the given auto-unseal config.
250
+ */
251
+ function buildSealStanza(config, kmsKeyId) {
252
+ if (!config)
253
+ return undefined;
254
+ switch (config.provider) {
255
+ case "awskms":
256
+ if (!kmsKeyId)
257
+ throw new Error("KMS key ID required for awskms seal");
258
+ return kmsKeyId.apply((id) => `seal "awskms" {\n region = "${config.region}"\n kms_key_id = "${id}"\n}`);
259
+ case "azurekeyvault":
260
+ throw new Error("Azure Key Vault auto-unseal is not yet implemented. Type is defined for future use.");
261
+ case "gcpckms":
262
+ throw new Error("GCP Cloud KMS auto-unseal is not yet implemented. Type is defined for future use.");
263
+ }
264
+ }
265
+ /**
266
+ * Provision AWS KMS resources for Vault auto-unseal.
267
+ *
268
+ * Creates:
269
+ * - KMS key (or uses existing)
270
+ * - IAM user at /nimbus/ path
271
+ * - IAM policy with kms:Encrypt, kms:Decrypt, kms:DescribeKey
272
+ * - IAM access key
273
+ * - K8s Secret with credentials
274
+ *
275
+ * Returns the KMS key ID for the Vault seal stanza.
276
+ */
277
+ function provisionAwsKmsUnseal(name, config, k8sProvider) {
278
+ const awsOpts = { provider: config.awsProvider };
279
+ // KMS key
280
+ let kmsKeyId;
281
+ if (config.kmsKeyId) {
282
+ kmsKeyId = pulumi.output(config.kmsKeyId);
283
+ }
284
+ else {
285
+ const key = new aws.kms.Key(`${name}-vault-unseal-key`, {
286
+ description: "Vault auto-unseal key (managed by nimbus)",
287
+ deletionWindowInDays: 7,
288
+ tags: { "managed-by": "nimbus" },
289
+ }, awsOpts);
290
+ kmsKeyId = key.keyId;
291
+ }
292
+ // IAM user
293
+ const user = new aws.iam.User(`${name}-vault-unseal-user`, {
294
+ name: `${name}-vault-unseal`,
295
+ path: "/nimbus/",
296
+ tags: { "managed-by": "nimbus" },
297
+ }, awsOpts);
298
+ // IAM policy
299
+ new aws.iam.UserPolicy(`${name}-vault-unseal-policy`, {
300
+ user: user.name,
301
+ policy: kmsKeyId.apply((id) => JSON.stringify({
302
+ Version: "2012-10-17",
303
+ Statement: [
304
+ {
305
+ Effect: "Allow",
306
+ Action: ["kms:Encrypt", "kms:Decrypt", "kms:DescribeKey"],
307
+ Resource: [`arn:aws:kms:${config.region}:*:key/${id}`],
308
+ },
309
+ ],
310
+ })),
311
+ }, awsOpts);
312
+ // Access key
313
+ const accessKey = new aws.iam.AccessKey(`${name}-vault-unseal-access-key`, { user: user.name }, awsOpts);
314
+ // K8s Secret with credentials
315
+ new k8s.core.v1.Secret(`${name}-vault-unseal-creds`, {
316
+ metadata: { name: "vault-unseal-credentials", namespace: "vault" },
317
+ stringData: {
318
+ AWS_ACCESS_KEY_ID: accessKey.id,
319
+ AWS_SECRET_ACCESS_KEY: accessKey.secret,
320
+ },
321
+ }, { provider: k8sProvider });
322
+ return { kmsKeyId };
323
+ }
324
+ /**
325
+ * Deploy Vault with optional auto-unseal and bootstrap sidecar.
326
+ */
327
+ function deployVault(name, config, domain, provider, defaultVersion) {
328
+ const ha = config.ha ?? false;
329
+ const storageSize = config.storageSize ?? "5Gi";
330
+ const ingressHost = config.ingressHost ?? `vault.${domain}`;
331
+ const certName = domain.replace(/\./g, "-");
332
+ const bootstrap = config.bootstrap ?? true;
333
+ // Auto-unseal: provision cloud resources + build seal stanza
334
+ let sealStanza;
335
+ const extraSecretEnvVars = [];
336
+ if (config.autoUnseal) {
337
+ switch (config.autoUnseal.provider) {
338
+ case "awskms": {
339
+ const { kmsKeyId } = provisionAwsKmsUnseal(name, config.autoUnseal, provider);
340
+ sealStanza = buildSealStanza(config.autoUnseal, kmsKeyId);
341
+ extraSecretEnvVars.push({
342
+ envName: "AWS_ACCESS_KEY_ID",
343
+ secretName: "vault-unseal-credentials",
344
+ secretKey: "AWS_ACCESS_KEY_ID",
345
+ }, {
346
+ envName: "AWS_SECRET_ACCESS_KEY",
347
+ secretName: "vault-unseal-credentials",
348
+ secretKey: "AWS_SECRET_ACCESS_KEY",
349
+ });
350
+ break;
351
+ }
352
+ case "azurekeyvault":
353
+ throw new Error("Azure Key Vault auto-unseal is not yet implemented.");
354
+ case "gcpckms":
355
+ throw new Error("GCP Cloud KMS auto-unseal is not yet implemented.");
356
+ }
357
+ }
358
+ // Bootstrap sidecar: ConfigMap + RBAC
359
+ const vaultDependencies = [];
360
+ if (bootstrap) {
361
+ const bootstrapConfigMap = new k8s.core.v1.ConfigMap(`${name}-vault-bootstrap-script`, {
362
+ metadata: { name: "vault-bootstrap", namespace: "vault" },
363
+ data: { "bootstrap.sh": VAULT_BOOTSTRAP_SCRIPT },
364
+ }, { provider });
365
+ vaultDependencies.push(bootstrapConfigMap);
366
+ // Token review delegation (for K8s auth config)
367
+ new k8s.rbac.v1.ClusterRoleBinding(`${name}-vault-auth-delegator`, {
368
+ metadata: { name: "vault-auth-delegator" },
369
+ roleRef: {
370
+ apiGroup: "rbac.authorization.k8s.io",
371
+ kind: "ClusterRole",
372
+ name: "system:auth-delegator",
373
+ },
374
+ subjects: [{ kind: "ServiceAccount", name: "vault", namespace: "vault" }],
375
+ }, { provider });
376
+ // Secret CRUD in vault namespace (for storing init keys)
377
+ const secretRole = new k8s.rbac.v1.Role(`${name}-vault-secret-manager`, {
378
+ metadata: { name: "vault-secret-manager", namespace: "vault" },
379
+ rules: [
380
+ {
381
+ apiGroups: [""],
382
+ resources: ["secrets"],
383
+ verbs: ["get", "create", "update"],
384
+ },
385
+ ],
386
+ }, { provider });
387
+ new k8s.rbac.v1.RoleBinding(`${name}-vault-secret-manager-binding`, {
388
+ metadata: {
389
+ name: "vault-secret-manager",
390
+ namespace: "vault",
391
+ },
392
+ roleRef: {
393
+ apiGroup: "rbac.authorization.k8s.io",
394
+ kind: "Role",
395
+ name: "vault-secret-manager",
396
+ },
397
+ subjects: [{ kind: "ServiceAccount", name: "vault", namespace: "vault" }],
398
+ }, { provider, dependsOn: [secretRole] });
399
+ }
400
+ // Build server values
401
+ const serverValues = {
402
+ standalone: { enabled: !ha },
403
+ ha: ha
404
+ ? {
405
+ enabled: true,
406
+ replicas: VAULT_HA_REPLICAS,
407
+ raft: { enabled: true },
408
+ }
409
+ : { enabled: false },
410
+ dataStorage: { size: storageSize },
411
+ ingress: {
412
+ enabled: true,
413
+ ingressClassName: "traefik",
414
+ hosts: [{ host: ingressHost }],
415
+ annotations: {
416
+ "traefik.ingress.kubernetes.io/router.entrypoints": "websecure",
417
+ },
418
+ tls: [{ hosts: [ingressHost], secretName: `${certName}-wildcard-tls` }],
419
+ },
420
+ };
421
+ // Auto-unseal: inject config + credentials
422
+ if (sealStanza) {
423
+ const configKey = ha ? "ha" : "standalone";
424
+ const configObj = serverValues[configKey];
425
+ if (typeof sealStanza === "string") {
426
+ configObj["config"] = buildVaultHclConfig(ha, sealStanza);
427
+ }
428
+ else {
429
+ // pulumi.Output<string>
430
+ configObj["config"] = sealStanza.apply((seal) => buildVaultHclConfig(ha, seal));
431
+ }
432
+ }
433
+ if (extraSecretEnvVars.length > 0) {
434
+ serverValues["extraSecretEnvironmentVars"] = extraSecretEnvVars;
435
+ }
436
+ // Bootstrap sidecar
437
+ if (bootstrap) {
438
+ serverValues["extraContainers"] = [
439
+ {
440
+ name: "bootstrap",
441
+ image: "hashicorp/vault:latest",
442
+ command: ["sh", "/scripts/bootstrap.sh"],
443
+ env: [{ name: "VAULT_ADDR", value: "http://localhost:8200" }],
444
+ volumeMounts: [
445
+ { name: "bootstrap-script", mountPath: "/scripts" },
446
+ { name: "data", mountPath: "/vault/data" },
447
+ ],
448
+ resources: {
449
+ requests: { cpu: "1m", memory: "64Mi" },
450
+ limits: { cpu: "50m", memory: "128Mi" },
451
+ },
452
+ },
453
+ ];
454
+ serverValues["volumes"] = [
455
+ {
456
+ name: "bootstrap-script",
457
+ configMap: { name: "vault-bootstrap", defaultMode: 493 },
458
+ },
459
+ ];
460
+ }
461
+ return new k8s.helm.v3.Release(`${name}-vault`, {
462
+ chart: "vault",
463
+ repositoryOpts: { repo: "https://helm.releases.hashicorp.com" },
464
+ version: config.version ?? defaultVersion,
465
+ namespace: "vault",
466
+ createNamespace: true,
467
+ values: {
468
+ server: serverValues,
469
+ injector: { enabled: true },
470
+ ...config.values,
471
+ },
472
+ }, { provider, dependsOn: vaultDependencies });
473
+ }
474
+ //# sourceMappingURL=vault.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vault.js","sourceRoot":"","sources":["../../../../src/platform/components/vault.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@
3
3
  *
4
4
  * @module platform
5
5
  */
6
- export type { DnsProvider, IPlatformComponentConfig, IExternalDnsConfig, IVaultConfig, IPlatformStackConfig, IPlatformStack, } from "./interfaces";
6
+ export type { DnsProvider, IPlatformComponentConfig, IExternalDnsConfig, IVaultConfig, IAutoUnsealConfig, IAwsKmsUnsealConfig, IAzureKeyVaultUnsealConfig, IGcpCkmsUnsealConfig, IPlatformStackConfig, IPlatformStack, } from "./interfaces";
7
+ export { DNS_PROVIDERS } from "./interfaces";
7
8
  export { createPlatformStack } from "./stack";
8
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/platform/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,YAAY,EACV,WAAW,EACX,wBAAwB,EACxB,kBAAkB,EAClB,YAAY,EACZ,oBAAoB,EACpB,cAAc,GACf,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/platform/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,YAAY,EACV,WAAW,EACX,wBAAwB,EACxB,kBAAkB,EAClB,YAAY,EACZ,iBAAiB,EACjB,mBAAmB,EACnB,0BAA0B,EAC1B,oBAAoB,EACpB,oBAAoB,EACpB,cAAc,GACf,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAE7C,OAAO,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC"}
@@ -5,7 +5,9 @@
5
5
  * @module platform
6
6
  */
7
7
  Object.defineProperty(exports, "__esModule", { value: true });
8
- exports.createPlatformStack = void 0;
8
+ exports.createPlatformStack = exports.DNS_PROVIDERS = void 0;
9
+ var interfaces_1 = require("./interfaces");
10
+ Object.defineProperty(exports, "DNS_PROVIDERS", { enumerable: true, get: function () { return interfaces_1.DNS_PROVIDERS; } });
9
11
  var stack_1 = require("./stack");
10
12
  Object.defineProperty(exports, "createPlatformStack", { enumerable: true, get: function () { return stack_1.createPlatformStack; } });
11
13
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/platform/index.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAWH,iCAA8C;AAArC,4GAAA,mBAAmB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/platform/index.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAcH,2CAA6C;AAApC,2GAAA,aAAa,OAAA;AAEtB,iCAA8C;AAArC,4GAAA,mBAAmB,OAAA"}
@@ -10,12 +10,22 @@
10
10
  import type * as pulumi from "@pulumi/pulumi";
11
11
  import type * as k8s from "@pulumi/kubernetes";
12
12
  import type { ICluster } from "../cluster";
13
+ import type { IExposedService } from "../types";
13
14
  /** DNS provider for External DNS integration. */
14
15
  export type DnsProvider = "route53" | "azure-dns" | "cloud-dns" | "cloudflare";
16
+ /** Typed constant map for DnsProvider string literals. */
17
+ export declare const DNS_PROVIDERS: {
18
+ ROUTE53: "route53";
19
+ AZURE_DNS: "azure-dns";
20
+ CLOUD_DNS: "cloud-dns";
21
+ CLOUDFLARE: "cloudflare";
22
+ };
15
23
  /** Individual platform component configuration. */
16
24
  export interface IPlatformComponentConfig {
17
25
  /** Enable or disable this component. Default: true for core components. */
18
26
  readonly enabled?: boolean;
27
+ /** Expose via access gateway (Tailscale). Default: true. */
28
+ readonly expose?: boolean;
19
29
  /** Helm chart version override. */
20
30
  readonly version?: string;
21
31
  /** Additional Helm values to merge with defaults. */
@@ -24,11 +34,45 @@ export interface IPlatformComponentConfig {
24
34
  /** External DNS component configuration with provider-specific auth. */
25
35
  export interface IExternalDnsConfig extends IPlatformComponentConfig {
26
36
  readonly dnsProvider: DnsProvider;
27
- /** Provider-specific credentials (e.g., AWS IAM keys, Azure identity). */
37
+ /** AWS region for Route53. Required when dnsProvider is "route53". */
38
+ readonly awsRegion?: string;
39
+ /** Explicit AWS provider for Route53 IAM resources. If not provided, uses default. */
40
+ readonly awsProvider?: pulumi.ProviderResource;
41
+ /**
42
+ * Manual credentials override. If provided, nimbus uses these instead of
43
+ * creating IAM resources. Useful for non-AWS providers or pre-existing credentials.
44
+ */
28
45
  readonly dnsCredentials?: Record<string, pulumi.Input<string>>;
29
46
  /** DNS zone filter (e.g., ["reyem.tech"]). */
30
47
  readonly domainFilters?: ReadonlyArray<string>;
31
48
  }
49
+ /** AWS KMS auto-unseal configuration. */
50
+ export interface IAwsKmsUnsealConfig {
51
+ readonly provider: "awskms";
52
+ /** AWS region for the KMS key. */
53
+ readonly region: string;
54
+ /** Explicit AWS provider for KMS + IAM resources. */
55
+ readonly awsProvider: pulumi.ProviderResource;
56
+ /** Use an existing KMS key instead of creating one. */
57
+ readonly kmsKeyId?: pulumi.Input<string>;
58
+ }
59
+ /** Azure Key Vault auto-unseal configuration (not yet implemented). */
60
+ export interface IAzureKeyVaultUnsealConfig {
61
+ readonly provider: "azurekeyvault";
62
+ readonly tenantId: pulumi.Input<string>;
63
+ readonly vaultName: pulumi.Input<string>;
64
+ readonly keyName: pulumi.Input<string>;
65
+ }
66
+ /** GCP Cloud KMS auto-unseal configuration (not yet implemented). */
67
+ export interface IGcpCkmsUnsealConfig {
68
+ readonly provider: "gcpckms";
69
+ readonly project: pulumi.Input<string>;
70
+ readonly region: string;
71
+ readonly keyRing: pulumi.Input<string>;
72
+ readonly cryptoKey: pulumi.Input<string>;
73
+ }
74
+ /** Auto-unseal configuration — discriminated union on provider. */
75
+ export type IAutoUnsealConfig = IAwsKmsUnsealConfig | IAzureKeyVaultUnsealConfig | IGcpCkmsUnsealConfig;
32
76
  /** Vault component configuration. */
33
77
  export interface IVaultConfig extends IPlatformComponentConfig {
34
78
  /** Enable HA mode. Default: false (single node). */
@@ -37,6 +81,26 @@ export interface IVaultConfig extends IPlatformComponentConfig {
37
81
  readonly storageSize?: string;
38
82
  /** Domain for Vault ingress (e.g., "vault.reyem.tech"). */
39
83
  readonly ingressHost?: string;
84
+ /** Expose via access gateway (Tailscale). Default: true. */
85
+ readonly expose?: boolean;
86
+ /** Auto-unseal via cloud KMS. Creates KMS key + IAM + credentials. */
87
+ readonly autoUnseal?: IAutoUnsealConfig;
88
+ /** Deploy bootstrap sidecar (init, KV-v2, K8s auth, ESO policy/role). Default: true. */
89
+ readonly bootstrap?: boolean;
90
+ }
91
+ /** Image pull secret configuration for private registries. */
92
+ export interface IImagePullSecret {
93
+ readonly registry: string;
94
+ readonly username: pulumi.Input<string>;
95
+ readonly password: pulumi.Input<string>;
96
+ readonly email?: pulumi.Input<string>;
97
+ /** Namespaces to replicate the pull secret into. */
98
+ readonly namespaces?: ReadonlyArray<string>;
99
+ }
100
+ /** Descheduler configuration for spot/preemptible environments. */
101
+ export interface IDeschedulerConfig extends IPlatformComponentConfig {
102
+ /** Strategies to enable. Default: RemoveDuplicates, LowNodeUtilization, RemovePodsViolatingNodeAffinity */
103
+ readonly strategies?: ReadonlyArray<string>;
40
104
  }
41
105
  /**
42
106
  * Platform stack configuration input.
@@ -70,6 +134,12 @@ export interface IPlatformStackConfig {
70
134
  readonly clientId: pulumi.Input<string>;
71
135
  readonly clientSecret: pulumi.Input<string>;
72
136
  };
137
+ /** Block robots/crawlers on staging environments. Default: false. */
138
+ readonly robotsBlock?: boolean;
139
+ /** Private registry image pull secrets, replicated to specified namespaces. */
140
+ readonly imagePullSecrets?: ReadonlyArray<IImagePullSecret>;
141
+ /** Descheduler for pod rebalancing on spot instances. */
142
+ readonly descheduler?: IDeschedulerConfig;
73
143
  readonly tags?: Readonly<Record<string, string>>;
74
144
  }
75
145
  /**
@@ -82,5 +152,7 @@ export interface IPlatformStack {
82
152
  readonly cluster: ICluster;
83
153
  readonly components: Readonly<Record<string, k8s.helm.v3.Release>>;
84
154
  readonly traefikEndpoint: pulumi.Output<string>;
155
+ /** Services available for access gateway exposure. */
156
+ readonly exposedServices: ReadonlyArray<IExposedService>;
85
157
  }
86
158
  //# sourceMappingURL=interfaces.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../src/platform/interfaces.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,KAAK,MAAM,MAAM,gBAAgB,CAAC;AAC9C,OAAO,KAAK,KAAK,GAAG,MAAM,oBAAoB,CAAC;AAC/C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAE3C,iDAAiD;AACjD,MAAM,MAAM,WAAW,GACnB,SAAS,GACT,WAAW,GACX,WAAW,GACX,YAAY,CAAC;AAEjB,mDAAmD;AACnD,MAAM,WAAW,wBAAwB;IACvC,2EAA2E;IAC3E,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B,mCAAmC;IACnC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,qDAAqD;IACrD,QAAQ,CAAC,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;CACrD;AAED,wEAAwE;AACxE,MAAM,WAAW,kBAAmB,SAAQ,wBAAwB;IAClE,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;IAClC,0EAA0E;IAC1E,QAAQ,CAAC,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IAC/D,8CAA8C;IAC9C,QAAQ,CAAC,aAAa,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;CAChD;AAED,qCAAqC;AACrC,MAAM,WAAW,YAAa,SAAQ,wBAAwB;IAC5D,oDAAoD;IACpD,QAAQ,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC;IACtB,mDAAmD;IACnD,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,2DAA2D;IAC3D,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,OAAO,EAAE,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAC;IACrD,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IAExB,4CAA4C;IAC5C,QAAQ,CAAC,OAAO,CAAC,EAAE,wBAAwB,CAAC;IAC5C,QAAQ,CAAC,WAAW,CAAC,EAAE,wBAAwB,CAAC;IAChD,QAAQ,CAAC,WAAW,CAAC,EAAE,kBAAkB,CAAC;IAE1C,2BAA2B;IAC3B,QAAQ,CAAC,MAAM,CAAC,EAAE,wBAAwB,CAAC;IAC3C,QAAQ,CAAC,KAAK,CAAC,EAAE,YAAY,CAAC;IAC9B,QAAQ,CAAC,eAAe,CAAC,EAAE,wBAAwB,CAAC;IACpD,QAAQ,CAAC,WAAW,CAAC,EAAE,wBAAwB,GAAG;QAChD,QAAQ,CAAC,QAAQ,EAAE,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAC;QACjD,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACxC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;KAC7C,CAAC;IAEF,QAAQ,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;CAClD;AAED;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC;IAC3B,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IACnE,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;CACjD"}
1
+ {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../src/platform/interfaces.ts"],"names":[],"mappings":"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"}
@@ -9,4 +9,12 @@
9
9
  * @module platform/interfaces
10
10
  */
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.DNS_PROVIDERS = void 0;
13
+ /** Typed constant map for DnsProvider string literals. */
14
+ exports.DNS_PROVIDERS = {
15
+ ROUTE53: "route53",
16
+ AZURE_DNS: "azure-dns",
17
+ CLOUD_DNS: "cloud-dns",
18
+ CLOUDFLARE: "cloudflare",
19
+ };
12
20
  //# sourceMappingURL=interfaces.js.map