@vibesdotdev/integrations-digitalocean 0.0.0-stage → 1.0.0-rc.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 (323) hide show
  1. package/LICENSE +126 -0
  2. package/README.md +78 -2
  3. package/dist/ai/index.d.ts +4 -0
  4. package/dist/ai/index.d.ts.map +1 -0
  5. package/dist/ai/index.js +4 -0
  6. package/dist/ai/index.js.map +1 -0
  7. package/dist/ai/inference.transport.impl.d.ts +5 -0
  8. package/dist/ai/inference.transport.impl.d.ts.map +1 -0
  9. package/dist/ai/inference.transport.impl.js +54 -0
  10. package/dist/ai/inference.transport.impl.js.map +1 -0
  11. package/dist/ai/provider.plugin.d.ts +6 -0
  12. package/dist/ai/provider.plugin.d.ts.map +1 -0
  13. package/dist/ai/provider.plugin.js +126 -0
  14. package/dist/ai/provider.plugin.js.map +1 -0
  15. package/dist/ai/providers/cloud/frontier/digitalocean/config/schemas/index.d.ts +62 -0
  16. package/dist/ai/providers/cloud/frontier/digitalocean/config/schemas/index.d.ts.map +1 -0
  17. package/dist/ai/providers/cloud/frontier/digitalocean/config/schemas/index.js +73 -0
  18. package/dist/ai/providers/cloud/frontier/digitalocean/config/schemas/index.js.map +1 -0
  19. package/dist/ai/providers/cloud/frontier/digitalocean/index.d.ts +2 -0
  20. package/dist/ai/providers/cloud/frontier/digitalocean/index.d.ts.map +1 -0
  21. package/dist/ai/providers/cloud/frontier/digitalocean/index.js +2 -0
  22. package/dist/ai/providers/cloud/frontier/digitalocean/index.js.map +1 -0
  23. package/dist/ai/providers/cloud/frontier/digitalocean/provider.digitalocean.descriptor.d.ts +183 -0
  24. package/dist/ai/providers/cloud/frontier/digitalocean/provider.digitalocean.descriptor.d.ts.map +1 -0
  25. package/dist/ai/providers/cloud/frontier/digitalocean/provider.digitalocean.descriptor.js +66 -0
  26. package/dist/ai/providers/cloud/frontier/digitalocean/provider.digitalocean.descriptor.js.map +1 -0
  27. package/dist/apps/api-client.d.ts +45 -0
  28. package/dist/apps/api-client.d.ts.map +1 -0
  29. package/dist/apps/api-client.js +47 -0
  30. package/dist/apps/api-client.js.map +1 -0
  31. package/dist/apps/build-spec.d.ts +44 -0
  32. package/dist/apps/build-spec.d.ts.map +1 -0
  33. package/dist/apps/build-spec.js +463 -0
  34. package/dist/apps/build-spec.js.map +1 -0
  35. package/dist/apps/deploy-client.d.ts +42 -0
  36. package/dist/apps/deploy-client.d.ts.map +1 -0
  37. package/dist/apps/deploy-client.js +300 -0
  38. package/dist/apps/deploy-client.js.map +1 -0
  39. package/dist/apps/index.d.ts +5 -0
  40. package/dist/apps/index.d.ts.map +1 -0
  41. package/dist/apps/index.js +4 -0
  42. package/dist/apps/index.js.map +1 -0
  43. package/dist/apps/types.d.ts +204 -0
  44. package/dist/apps/types.d.ts.map +1 -0
  45. package/dist/apps/types.js +13 -0
  46. package/dist/apps/types.js.map +1 -0
  47. package/dist/client/control-plane.d.ts +49 -0
  48. package/dist/client/control-plane.d.ts.map +1 -0
  49. package/dist/client/control-plane.js +85 -0
  50. package/dist/client/control-plane.js.map +1 -0
  51. package/dist/client/do-fetch.d.ts +41 -0
  52. package/dist/client/do-fetch.d.ts.map +1 -0
  53. package/dist/client/do-fetch.js +199 -0
  54. package/dist/client/do-fetch.js.map +1 -0
  55. package/dist/client/errors.d.ts +6 -0
  56. package/dist/client/errors.d.ts.map +1 -0
  57. package/dist/client/errors.js +34 -0
  58. package/dist/client/errors.js.map +1 -0
  59. package/dist/client/factory.d.ts +53 -0
  60. package/dist/client/factory.d.ts.map +1 -0
  61. package/dist/client/factory.js +220 -0
  62. package/dist/client/factory.js.map +1 -0
  63. package/dist/client/helpers.d.ts +5 -0
  64. package/dist/client/helpers.d.ts.map +1 -0
  65. package/dist/client/helpers.js +8 -0
  66. package/dist/client/helpers.js.map +1 -0
  67. package/dist/client/index.d.ts +12 -0
  68. package/dist/client/index.d.ts.map +1 -0
  69. package/dist/client/index.js +10 -0
  70. package/dist/client/index.js.map +1 -0
  71. package/dist/client/paginated.d.ts +19 -0
  72. package/dist/client/paginated.d.ts.map +1 -0
  73. package/dist/client/paginated.js +56 -0
  74. package/dist/client/paginated.js.map +1 -0
  75. package/dist/client/retry.d.ts +34 -0
  76. package/dist/client/retry.d.ts.map +1 -0
  77. package/dist/client/retry.js +53 -0
  78. package/dist/client/retry.js.map +1 -0
  79. package/dist/config/digitalocean.config.descriptor.d.ts +197 -0
  80. package/dist/config/digitalocean.config.descriptor.d.ts.map +1 -0
  81. package/dist/config/digitalocean.config.descriptor.js +59 -0
  82. package/dist/config/digitalocean.config.descriptor.js.map +1 -0
  83. package/dist/credentials/index.d.ts +38 -0
  84. package/dist/credentials/index.d.ts.map +1 -0
  85. package/dist/credentials/index.js +56 -0
  86. package/dist/credentials/index.js.map +1 -0
  87. package/dist/databases/index.d.ts +82 -0
  88. package/dist/databases/index.d.ts.map +1 -0
  89. package/dist/databases/index.js +57 -0
  90. package/dist/databases/index.js.map +1 -0
  91. package/dist/digitalocean-friction.policy.d.ts +29 -0
  92. package/dist/digitalocean-friction.policy.d.ts.map +1 -0
  93. package/dist/digitalocean-friction.policy.js +21 -0
  94. package/dist/digitalocean-friction.policy.js.map +1 -0
  95. package/dist/digitalocean.plugin.d.ts +3 -0
  96. package/dist/digitalocean.plugin.d.ts.map +1 -0
  97. package/dist/digitalocean.plugin.js +27 -0
  98. package/dist/digitalocean.plugin.js.map +1 -0
  99. package/dist/droplets/index.d.ts +106 -0
  100. package/dist/droplets/index.d.ts.map +1 -0
  101. package/dist/droplets/index.js +227 -0
  102. package/dist/droplets/index.js.map +1 -0
  103. package/dist/index.d.ts +35 -0
  104. package/dist/index.d.ts.map +1 -0
  105. package/dist/index.js +32 -0
  106. package/dist/index.js.map +1 -0
  107. package/dist/inference-control-plane/index.d.ts +63 -0
  108. package/dist/inference-control-plane/index.d.ts.map +1 -0
  109. package/dist/inference-control-plane/index.js +93 -0
  110. package/dist/inference-control-plane/index.js.map +1 -0
  111. package/dist/infra/billing.d.ts +26 -0
  112. package/dist/infra/billing.d.ts.map +1 -0
  113. package/dist/infra/billing.js +43 -0
  114. package/dist/infra/billing.js.map +1 -0
  115. package/dist/infra/credentials.d.ts +11 -0
  116. package/dist/infra/credentials.d.ts.map +1 -0
  117. package/dist/infra/credentials.js +15 -0
  118. package/dist/infra/credentials.js.map +1 -0
  119. package/dist/infra/deployment-provider/deploy-secrets.d.ts +10 -0
  120. package/dist/infra/deployment-provider/deploy-secrets.d.ts.map +1 -0
  121. package/dist/infra/deployment-provider/deploy-secrets.js +66 -0
  122. package/dist/infra/deployment-provider/deploy-secrets.js.map +1 -0
  123. package/dist/infra/deployment-provider/digitalocean-deployment-provider.impl.d.ts +96 -0
  124. package/dist/infra/deployment-provider/digitalocean-deployment-provider.impl.d.ts.map +1 -0
  125. package/dist/infra/deployment-provider/digitalocean-deployment-provider.impl.js +242 -0
  126. package/dist/infra/deployment-provider/digitalocean-deployment-provider.impl.js.map +1 -0
  127. package/dist/infra/deployment-provider/image-publish.d.ts +39 -0
  128. package/dist/infra/deployment-provider/image-publish.d.ts.map +1 -0
  129. package/dist/infra/deployment-provider/image-publish.js +146 -0
  130. package/dist/infra/deployment-provider/image-publish.js.map +1 -0
  131. package/dist/infra/deployment-provider.descriptor.d.ts +34 -0
  132. package/dist/infra/deployment-provider.descriptor.d.ts.map +1 -0
  133. package/dist/infra/deployment-provider.descriptor.js +9 -0
  134. package/dist/infra/deployment-provider.descriptor.js.map +1 -0
  135. package/dist/infra/digitalocean-infra.plugin.d.ts +101 -0
  136. package/dist/infra/digitalocean-infra.plugin.d.ts.map +1 -0
  137. package/dist/infra/digitalocean-infra.plugin.js +283 -0
  138. package/dist/infra/digitalocean-infra.plugin.js.map +1 -0
  139. package/dist/infra/doks/clients.d.ts +183 -0
  140. package/dist/infra/doks/clients.d.ts.map +1 -0
  141. package/dist/infra/doks/clients.js +172 -0
  142. package/dist/infra/doks/clients.js.map +1 -0
  143. package/dist/infra/doks/digitalocean.d.ts +34 -0
  144. package/dist/infra/doks/digitalocean.d.ts.map +1 -0
  145. package/dist/infra/doks/digitalocean.js +267 -0
  146. package/dist/infra/doks/digitalocean.js.map +1 -0
  147. package/dist/infra/doks/service-release-schemas.d.ts +1037 -0
  148. package/dist/infra/doks/service-release-schemas.d.ts.map +1 -0
  149. package/dist/infra/doks/service-release-schemas.js +51 -0
  150. package/dist/infra/doks/service-release-schemas.js.map +1 -0
  151. package/dist/infra/doks/service-release.d.ts +415 -0
  152. package/dist/infra/doks/service-release.d.ts.map +1 -0
  153. package/dist/infra/doks/service-release.js +3201 -0
  154. package/dist/infra/doks/service-release.js.map +1 -0
  155. package/dist/infra/doks/worker.d.ts +14 -0
  156. package/dist/infra/doks/worker.d.ts.map +1 -0
  157. package/dist/infra/doks/worker.js +343 -0
  158. package/dist/infra/doks/worker.js.map +1 -0
  159. package/dist/infra/droplet.impl.d.ts +172 -0
  160. package/dist/infra/droplet.impl.d.ts.map +1 -0
  161. package/dist/infra/droplet.impl.js +379 -0
  162. package/dist/infra/droplet.impl.js.map +1 -0
  163. package/dist/infra/functions.impl.d.ts +123 -0
  164. package/dist/infra/functions.impl.d.ts.map +1 -0
  165. package/dist/infra/functions.impl.js +202 -0
  166. package/dist/infra/functions.impl.js.map +1 -0
  167. package/dist/infra/index.d.ts +15 -0
  168. package/dist/infra/index.d.ts.map +1 -0
  169. package/dist/infra/index.js +12 -0
  170. package/dist/infra/index.js.map +1 -0
  171. package/dist/infra/inventory.d.ts +7 -0
  172. package/dist/infra/inventory.d.ts.map +1 -0
  173. package/dist/infra/inventory.js +259 -0
  174. package/dist/infra/inventory.js.map +1 -0
  175. package/dist/infra/kubernetes-log-stream.d.ts +5 -0
  176. package/dist/infra/kubernetes-log-stream.d.ts.map +1 -0
  177. package/dist/infra/kubernetes-log-stream.js +186 -0
  178. package/dist/infra/kubernetes-log-stream.js.map +1 -0
  179. package/dist/infra/kubernetes-logs.d.ts +33 -0
  180. package/dist/infra/kubernetes-logs.d.ts.map +1 -0
  181. package/dist/infra/kubernetes-logs.descriptor.d.ts +14 -0
  182. package/dist/infra/kubernetes-logs.descriptor.d.ts.map +1 -0
  183. package/dist/infra/kubernetes-logs.descriptor.js +28 -0
  184. package/dist/infra/kubernetes-logs.descriptor.js.map +1 -0
  185. package/dist/infra/kubernetes-logs.js +196 -0
  186. package/dist/infra/kubernetes-logs.js.map +1 -0
  187. package/dist/infra/utilization.d.ts +44 -0
  188. package/dist/infra/utilization.d.ts.map +1 -0
  189. package/dist/infra/utilization.js +108 -0
  190. package/dist/infra/utilization.js.map +1 -0
  191. package/dist/kubernetes/authority.d.ts +40 -0
  192. package/dist/kubernetes/authority.d.ts.map +1 -0
  193. package/dist/kubernetes/authority.js +90 -0
  194. package/dist/kubernetes/authority.js.map +1 -0
  195. package/dist/kubernetes/encoding.d.ts +4 -0
  196. package/dist/kubernetes/encoding.d.ts.map +1 -0
  197. package/dist/kubernetes/encoding.js +8 -0
  198. package/dist/kubernetes/encoding.js.map +1 -0
  199. package/dist/kubernetes/index.d.ts +105 -0
  200. package/dist/kubernetes/index.d.ts.map +1 -0
  201. package/dist/kubernetes/index.js +99 -0
  202. package/dist/kubernetes/index.js.map +1 -0
  203. package/dist/kubernetes/transport.d.ts +11 -0
  204. package/dist/kubernetes/transport.d.ts.map +1 -0
  205. package/dist/kubernetes/transport.js +27 -0
  206. package/dist/kubernetes/transport.js.map +1 -0
  207. package/dist/network/index.d.ts +24 -0
  208. package/dist/network/index.d.ts.map +1 -0
  209. package/dist/network/index.js +16 -0
  210. package/dist/network/index.js.map +1 -0
  211. package/dist/registry/index.d.ts +39 -0
  212. package/dist/registry/index.d.ts.map +1 -0
  213. package/dist/registry/index.js +20 -0
  214. package/dist/registry/index.js.map +1 -0
  215. package/dist/schemas/app-deployment.d.ts +1472 -0
  216. package/dist/schemas/app-deployment.d.ts.map +1 -0
  217. package/dist/schemas/app-deployment.js +156 -0
  218. package/dist/schemas/app-deployment.js.map +1 -0
  219. package/dist/schemas/app-platform.d.ts +755 -0
  220. package/dist/schemas/app-platform.d.ts.map +1 -0
  221. package/dist/schemas/app-platform.js +253 -0
  222. package/dist/schemas/app-platform.js.map +1 -0
  223. package/dist/schemas/cache-database.d.ts +210 -0
  224. package/dist/schemas/cache-database.d.ts.map +1 -0
  225. package/dist/schemas/cache-database.js +105 -0
  226. package/dist/schemas/cache-database.js.map +1 -0
  227. package/dist/schemas/control-plane.d.ts +456 -0
  228. package/dist/schemas/control-plane.d.ts.map +1 -0
  229. package/dist/schemas/control-plane.js +123 -0
  230. package/dist/schemas/control-plane.js.map +1 -0
  231. package/dist/schemas/credential-use.d.ts +714 -0
  232. package/dist/schemas/credential-use.d.ts.map +1 -0
  233. package/dist/schemas/credential-use.js +73 -0
  234. package/dist/schemas/credential-use.js.map +1 -0
  235. package/dist/schemas/doks-worker.d.ts +4062 -0
  236. package/dist/schemas/doks-worker.d.ts.map +1 -0
  237. package/dist/schemas/doks-worker.js +330 -0
  238. package/dist/schemas/doks-worker.js.map +1 -0
  239. package/dist/schemas/droplet.d.ts +110 -0
  240. package/dist/schemas/droplet.d.ts.map +1 -0
  241. package/dist/schemas/droplet.js +22 -0
  242. package/dist/schemas/droplet.js.map +1 -0
  243. package/dist/schemas/functions.d.ts +22 -0
  244. package/dist/schemas/functions.d.ts.map +1 -0
  245. package/dist/schemas/functions.js +25 -0
  246. package/dist/schemas/functions.js.map +1 -0
  247. package/dist/schemas/gitea-git-hosting.d.ts +20 -0
  248. package/dist/schemas/gitea-git-hosting.d.ts.map +1 -0
  249. package/dist/schemas/gitea-git-hosting.js +26 -0
  250. package/dist/schemas/gitea-git-hosting.js.map +1 -0
  251. package/dist/schemas/http.d.ts +2594 -0
  252. package/dist/schemas/http.d.ts.map +1 -0
  253. package/dist/schemas/http.js +4548 -0
  254. package/dist/schemas/http.js.map +1 -0
  255. package/dist/schemas/infra-kinds.d.ts +113 -0
  256. package/dist/schemas/infra-kinds.d.ts.map +1 -0
  257. package/dist/schemas/infra-kinds.js +93 -0
  258. package/dist/schemas/infra-kinds.js.map +1 -0
  259. package/dist/schemas/kubernetes-responses.d.ts +457 -0
  260. package/dist/schemas/kubernetes-responses.d.ts.map +1 -0
  261. package/dist/schemas/kubernetes-responses.js +681 -0
  262. package/dist/schemas/kubernetes-responses.js.map +1 -0
  263. package/dist/schemas/kubernetes.d.ts +143 -0
  264. package/dist/schemas/kubernetes.d.ts.map +1 -0
  265. package/dist/schemas/kubernetes.js +68 -0
  266. package/dist/schemas/kubernetes.js.map +1 -0
  267. package/dist/schemas/logs.d.ts +15 -0
  268. package/dist/schemas/logs.d.ts.map +1 -0
  269. package/dist/schemas/logs.js +11 -0
  270. package/dist/schemas/logs.js.map +1 -0
  271. package/dist/schemas/object-storage.d.ts +167 -0
  272. package/dist/schemas/object-storage.d.ts.map +1 -0
  273. package/dist/schemas/object-storage.js +124 -0
  274. package/dist/schemas/object-storage.js.map +1 -0
  275. package/dist/schemas/service-settings.d.ts +9 -0
  276. package/dist/schemas/service-settings.d.ts.map +1 -0
  277. package/dist/schemas/service-settings.js +21 -0
  278. package/dist/schemas/service-settings.js.map +1 -0
  279. package/dist/schemas/utilization.d.ts +57 -0
  280. package/dist/schemas/utilization.d.ts.map +1 -0
  281. package/dist/schemas/utilization.js +58 -0
  282. package/dist/schemas/utilization.js.map +1 -0
  283. package/dist/schemas/worker-status.d.ts +22 -0
  284. package/dist/schemas/worker-status.d.ts.map +1 -0
  285. package/dist/schemas/worker-status.js +14 -0
  286. package/dist/schemas/worker-status.js.map +1 -0
  287. package/dist/schemas/worker.d.ts +125 -0
  288. package/dist/schemas/worker.d.ts.map +1 -0
  289. package/dist/schemas/worker.js +129 -0
  290. package/dist/schemas/worker.js.map +1 -0
  291. package/dist/secrets/app-platform/app-credentials.impl.d.ts +14 -0
  292. package/dist/secrets/app-platform/app-credentials.impl.d.ts.map +1 -0
  293. package/dist/secrets/app-platform/app-credentials.impl.js +237 -0
  294. package/dist/secrets/app-platform/app-credentials.impl.js.map +1 -0
  295. package/dist/secrets/container-registry/image-publish-settings.descriptor.d.ts +6 -0
  296. package/dist/secrets/container-registry/image-publish-settings.descriptor.d.ts.map +1 -0
  297. package/dist/secrets/container-registry/image-publish-settings.descriptor.js +14 -0
  298. package/dist/secrets/container-registry/image-publish-settings.descriptor.js.map +1 -0
  299. package/dist/secrets/doks-secret.descriptor.d.ts +18 -0
  300. package/dist/secrets/doks-secret.descriptor.d.ts.map +1 -0
  301. package/dist/secrets/doks-secret.descriptor.js +35 -0
  302. package/dist/secrets/doks-secret.descriptor.js.map +1 -0
  303. package/dist/secrets/doks-secret.impl.d.ts +98 -0
  304. package/dist/secrets/doks-secret.impl.d.ts.map +1 -0
  305. package/dist/secrets/doks-secret.impl.js +451 -0
  306. package/dist/secrets/doks-secret.impl.js.map +1 -0
  307. package/dist/secrets/index.d.ts +4 -0
  308. package/dist/secrets/index.d.ts.map +1 -0
  309. package/dist/secrets/index.js +4 -0
  310. package/dist/secrets/index.js.map +1 -0
  311. package/dist/secrets/secrets-backend-doks.plugin.d.ts +3 -0
  312. package/dist/secrets/secrets-backend-doks.plugin.d.ts.map +1 -0
  313. package/dist/secrets/secrets-backend-doks.plugin.js +35 -0
  314. package/dist/secrets/secrets-backend-doks.plugin.js.map +1 -0
  315. package/dist/storage/index.d.ts +50 -0
  316. package/dist/storage/index.d.ts.map +1 -0
  317. package/dist/storage/index.js +92 -0
  318. package/dist/storage/index.js.map +1 -0
  319. package/dist/storage/spaces-keys.d.ts +25 -0
  320. package/dist/storage/spaces-keys.d.ts.map +1 -0
  321. package/dist/storage/spaces-keys.js +32 -0
  322. package/dist/storage/spaces-keys.js.map +1 -0
  323. package/package.json +172 -4
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app-platform.d.ts","sourceRoot":"","sources":["../../src/schemas/app-platform.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,253 @@
1
+ /**
2
+ * DigitalOcean App Platform vendor config schemas for the `infra/web-app`
3
+ * kind. Moved verbatim from infra-core (which now keeps only the open,
4
+ * adapter-keyed descriptor config); behavior is preserved and this is the
5
+ * canonical owner from here on.
6
+ */
7
+ import * as z from "zod/v4";
8
+ /**
9
+ * GitHub source reference for App Platform components.
10
+ * Used by services, jobs, workers, and static sites.
11
+ */
12
+ export const DigitalOceanAppGitHubRefSchema = z.object({
13
+ repo: z.string().min(1),
14
+ branch: z.string().min(1).default("main"),
15
+ deployOnPush: z.boolean().default(false),
16
+ });
17
+ /** Container image reference, typically pulled from DigitalOcean Container Registry. */
18
+ export const DigitalOceanAppImageRefSchema = z.object({
19
+ registryType: z.enum(["DOCR", "DOCKER_HUB", "GHCR"]).default("DOCR"),
20
+ registry: z.string().min(1).optional(),
21
+ repository: z.string().min(1),
22
+ /**
23
+ * No default: DigitalOcean rejects a spec carrying both a tag and a digest
24
+ * ("only one of services.image.tag or services.image.digest can be
25
+ * specified"), so defaulting to `latest` made every digest-pinned image
26
+ * unspecifiable. The spec builder falls back to a tag only when no digest
27
+ * is recorded.
28
+ */
29
+ tag: z.string().min(1).optional(),
30
+ digest: z.string().min(1).optional(),
31
+ });
32
+ /** Environment variable mapping for an App Platform component. */
33
+ export const DigitalOceanAppEnvVarSchema = z.object({
34
+ key: z.string().regex(/^[_A-Z0-9]+$/),
35
+ value: z.string().optional(),
36
+ scope: z
37
+ .enum(["RUN_TIME", "BUILD_TIME", "RUN_AND_BUILD_TIME"])
38
+ .default("RUN_AND_BUILD_TIME"),
39
+ type: z.enum(["GENERAL", "SECRET"]).default("GENERAL"),
40
+ /**
41
+ * When set, the deploy client resolves the secret value from the
42
+ * `secrets/store` runtime kind using this key. Falls back to env when no
43
+ * store is registered for the target environment.
44
+ */
45
+ storeKey: z.string().min(1).optional(),
46
+ });
47
+ /** Health check configuration for App Platform services. */
48
+ export const DigitalOceanAppHealthCheckSchema = z.object({
49
+ httpPath: z.string().min(1).default("/"),
50
+ initialDelaySeconds: z.number().int().min(0).max(3600).optional(),
51
+ periodSeconds: z.number().int().min(1).max(3600).optional(),
52
+ timeoutSeconds: z.number().int().min(1).max(120).optional(),
53
+ successThreshold: z.number().int().min(1).max(50).optional(),
54
+ failureThreshold: z.number().int().min(1).max(50).optional(),
55
+ port: z.number().int().min(1).max(65535).optional(),
56
+ });
57
+ /** Request-based autoscaling metric. */
58
+ export const DigitalOceanAppAutoscalingMetricSchema = z.discriminatedUnion("type", [
59
+ z.object({
60
+ type: z.literal("cpu_utilization"),
61
+ percent: z.number().int().min(1).max(100),
62
+ }),
63
+ z.object({
64
+ type: z.literal("requests_per_second"),
65
+ threshold: z.number().int().min(1),
66
+ }),
67
+ z.object({
68
+ type: z.literal("latency_p95_ms"),
69
+ threshold: z.number().int().min(1),
70
+ }),
71
+ ]);
72
+ export const DigitalOceanAppAutoscalingSchema = z.object({
73
+ minInstanceCount: z.number().int().min(0),
74
+ maxInstanceCount: z.number().int().min(1),
75
+ metrics: z.array(DigitalOceanAppAutoscalingMetricSchema).min(1),
76
+ });
77
+ /** Custom domain attached to the App. */
78
+ export const DigitalOceanAppDomainSchema = z.object({
79
+ domain: z.string().min(1),
80
+ type: z.enum(["DEFAULT", "PRIMARY", "ALIAS"]).default("PRIMARY"),
81
+ wildcard: z.boolean().default(false),
82
+ zone: z.string().min(1).optional(),
83
+ certificateId: z.string().min(1).optional(),
84
+ });
85
+ /** App-level alert subscription. */
86
+ export const DigitalOceanAppAlertSchema = z.object({
87
+ rule: z.enum([
88
+ "DEPLOYMENT_FAILED",
89
+ "DEPLOYMENT_LIVE",
90
+ "DEPLOYMENT_STARTED",
91
+ "DEPLOYMENT_CANCELED",
92
+ "DOMAIN_FAILED",
93
+ "DOMAIN_LIVE",
94
+ "FUNCTIONS_ACTIVATION_COUNT",
95
+ "FUNCTIONS_AVERAGE_DURATION_MS",
96
+ "FUNCTIONS_ERROR_RATE_PER_MINUTE",
97
+ "FUNCTIONS_AVERAGE_WAIT_TIME_MS",
98
+ "CPU_UTILIZATION",
99
+ "MEM_UTILIZATION",
100
+ "RESTART_COUNT",
101
+ ]),
102
+ disabled: z.boolean().default(false),
103
+ operator: z.enum(["GREATER_THAN", "LESS_THAN"]).optional(),
104
+ value: z.number().optional(),
105
+ window: z
106
+ .enum(["FIVE_MINUTES", "TEN_MINUTES", "THIRTY_MINUTES", "ONE_HOUR"])
107
+ .optional(),
108
+ emails: z.array(z.string().email()).default([]),
109
+ slackWebhooks: z
110
+ .array(z.object({
111
+ url: z.string().url(),
112
+ channel: z.string().min(1).optional(),
113
+ }))
114
+ .default([]),
115
+ });
116
+ /** Log forwarding destination (Papertrail, Datadog, Logtail). */
117
+ export const DigitalOceanAppLogDestinationSchema = z.object({
118
+ name: z.string().min(1),
119
+ endpoint: z.union([
120
+ z.object({
121
+ kind: z.literal("papertrail"),
122
+ endpoint: z.string().min(1),
123
+ }),
124
+ z.object({
125
+ kind: z.literal("datadog"),
126
+ endpoint: z.string().url(),
127
+ apiKeyStoreKey: z.string().min(1),
128
+ }),
129
+ z.object({
130
+ kind: z.literal("logtail"),
131
+ tokenStoreKey: z.string().min(1),
132
+ }),
133
+ z.object({
134
+ kind: z.literal("opensearch"),
135
+ endpoint: z.string().url(),
136
+ indexName: z.string().min(1).optional(),
137
+ basicAuthUserStoreKey: z.string().min(1).optional(),
138
+ basicAuthPasswordStoreKey: z.string().min(1).optional(),
139
+ }),
140
+ ]),
141
+ });
142
+ const baseComponentFields = {
143
+ name: z.string().min(1),
144
+ sourceDir: z.string().min(1).optional(),
145
+ dockerfilePath: z.string().min(1).optional(),
146
+ buildCommand: z.string().min(1).optional(),
147
+ runCommand: z.string().min(1).optional(),
148
+ environmentSlug: z.string().min(1).optional(),
149
+ instanceSizeSlug: z.string().min(1).optional(),
150
+ instanceCount: z.number().int().min(0).optional(),
151
+ envs: z.array(DigitalOceanAppEnvVarSchema).default([]),
152
+ github: DigitalOceanAppGitHubRefSchema.optional(),
153
+ image: DigitalOceanAppImageRefSchema.optional(),
154
+ };
155
+ /** Long-running service component (HTTP-facing). */
156
+ export const DigitalOceanAppServiceComponentSchema = z.object({
157
+ ...baseComponentFields,
158
+ httpPort: z.number().int().min(1).max(65535).optional(),
159
+ healthCheck: DigitalOceanAppHealthCheckSchema.optional(),
160
+ autoscaling: DigitalOceanAppAutoscalingSchema.optional(),
161
+ scaleToZero: z.boolean().default(false),
162
+ internalPorts: z.array(z.number().int().min(1).max(65535)).default([]),
163
+ routes: z
164
+ .array(z.object({
165
+ path: z.string().min(1),
166
+ preservePathPrefix: z.boolean().default(false),
167
+ }))
168
+ .default([]),
169
+ });
170
+ /** Background worker component (no inbound HTTP). */
171
+ export const DigitalOceanAppWorkerComponentSchema = z.object({
172
+ ...baseComponentFields,
173
+ autoscaling: DigitalOceanAppAutoscalingSchema.optional(),
174
+ });
175
+ /** One-shot job (runs at deploy time or on demand). */
176
+ export const DigitalOceanAppJobComponentSchema = z.object({
177
+ ...baseComponentFields,
178
+ kind: z
179
+ .enum(["PRE_DEPLOY", "POST_DEPLOY", "FAILED_DEPLOY"])
180
+ .default("PRE_DEPLOY"),
181
+ });
182
+ /** Cron-scheduled job. */
183
+ export const DigitalOceanAppCronJobComponentSchema = z.object({
184
+ ...baseComponentFields,
185
+ schedule: z
186
+ .string()
187
+ .regex(/^(\*|[0-9,\-/]+)\s+(\*|[0-9,\-/]+)\s+(\*|[0-9,\-/]+)\s+(\*|[0-9,\-/]+)\s+(\*|[0-9,\-/]+)$/, "must be a 5-field cron expression"),
188
+ });
189
+ /** Static site component (built artifacts served from CDN). */
190
+ export const DigitalOceanAppStaticSiteComponentSchema = z.object({
191
+ name: z.string().min(1),
192
+ sourceDir: z.string().min(1).optional(),
193
+ outputDir: z.string().min(1).optional(),
194
+ buildCommand: z.string().min(1).optional(),
195
+ indexDocument: z.string().min(1).optional(),
196
+ errorDocument: z.string().min(1).optional(),
197
+ environmentSlug: z.string().min(1).optional(),
198
+ github: DigitalOceanAppGitHubRefSchema.optional(),
199
+ envs: z.array(DigitalOceanAppEnvVarSchema).default([]),
200
+ });
201
+ export const DigitalOceanAppWebAppConfigSchema = z.object({
202
+ /**
203
+ * Existing DigitalOcean App Platform resource id (the UUID DO assigns on
204
+ * creation, e.g. from the App's dashboard URL or `doctl apps list`). When
205
+ * set, `vibes infra deploy run` updates this app (`PUT /apps/{id}`)
206
+ * instead of creating a new one (`POST /apps`) — omit it only for an
207
+ * app's first-ever deploy, before DO has assigned an id.
208
+ */
209
+ id: z.string().min(1).optional(),
210
+ /** DigitalOcean App name. */
211
+ digitaloceanAppName: z.string().min(1),
212
+ /** DO region slug, e.g. 'nyc', 'sfo3', 'ams'. */
213
+ region: z.string().min(1).optional(),
214
+ /** Default instance size for primary service when components are not enumerated. */
215
+ instanceSizeSlug: z.string().min(1).optional(),
216
+ /** Default instance count for primary service. */
217
+ instanceCount: z.number().int().min(0).optional(),
218
+ /** Default scale-to-zero behaviour for the primary service. */
219
+ scaleToZero: z.boolean().optional(),
220
+ /** Default HTTP port for the primary service. */
221
+ httpPort: z.number().int().min(1).max(65535).optional(),
222
+ /** Default run command for the primary service. */
223
+ runCommand: z.string().min(1).optional(),
224
+ /** Default Dockerfile path (relative to sourceDir). */
225
+ dockerfilePath: z.string().min(1).optional(),
226
+ /** Supply Registry-projected manifests as the vibes-registry-inputs build context. */
227
+ registryStandaloneContext: z.boolean().optional(),
228
+ /** Default container image (DOCR or third-party registry). */
229
+ containerImage: DigitalOceanAppImageRefSchema.optional(),
230
+ /** Default health check for the primary service. */
231
+ healthCheck: DigitalOceanAppHealthCheckSchema.optional(),
232
+ /** Default autoscaling policy for the primary service. */
233
+ autoscaling: DigitalOceanAppAutoscalingSchema.optional(),
234
+ /** App Platform build environment slug (e.g. 'node-js'). */
235
+ environmentSlug: z.string().min(1).optional(),
236
+ /** Domains attached to the App. */
237
+ domains: z.array(DigitalOceanAppDomainSchema).default([]),
238
+ /** Alerts attached to the App. */
239
+ alerts: z.array(DigitalOceanAppAlertSchema).default([]),
240
+ /** Log forwarding destinations. */
241
+ logDestinations: z.array(DigitalOceanAppLogDestinationSchema).default([]),
242
+ /** Additional HTTP services beyond the primary. */
243
+ services: z.array(DigitalOceanAppServiceComponentSchema).default([]),
244
+ /** Worker components (no inbound HTTP). */
245
+ workers: z.array(DigitalOceanAppWorkerComponentSchema).default([]),
246
+ /** Deploy-time jobs (PRE_DEPLOY / POST_DEPLOY / FAILED_DEPLOY). */
247
+ jobs: z.array(DigitalOceanAppJobComponentSchema).default([]),
248
+ /** Cron-scheduled jobs. */
249
+ cronJobs: z.array(DigitalOceanAppCronJobComponentSchema).default([]),
250
+ /** Static site components. */
251
+ staticSites: z.array(DigitalOceanAppStaticSiteComponentSchema).default([]),
252
+ });
253
+ //# sourceMappingURL=app-platform.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app-platform.js","sourceRoot":"","sources":["../../src/schemas/app-platform.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,210 @@
1
+ /**
2
+ * Vendor config schemas for the `infra/cache` and `infra/database` kinds as
3
+ * DigitalOcean's integrations implement them. Moved verbatim from
4
+ * infra-core (which now keeps only the open, adapter-keyed descriptor
5
+ * config); behavior is preserved and these are the canonical owners from
6
+ * here on.
7
+ */
8
+ import * as z from 'zod/v4';
9
+ /**
10
+ * DigitalOcean Redis-compatible eviction policies use the vendor-native names.
11
+ * The canonical equivalents are `allkeys-lru`, `allkeys-lfu`, and `volatile-ttl`.
12
+ */
13
+ export declare const EvictionPolicySchema: z.ZodEnum<{
14
+ noeviction: "noeviction";
15
+ "allkeys-lru": "allkeys-lru";
16
+ "allkeys-lfu": "allkeys-lfu";
17
+ "allkeys-random": "allkeys-random";
18
+ "volatile-lru": "volatile-lru";
19
+ "volatile-lfu": "volatile-lfu";
20
+ "volatile-random": "volatile-random";
21
+ "volatile-ttl": "volatile-ttl";
22
+ }>;
23
+ export declare const DOManagedRedisConfigSchema: z.ZodObject<{
24
+ maxMemory: z.ZodOptional<z.ZodString>;
25
+ evictionPolicy: z.ZodOptional<z.ZodEnum<{
26
+ noeviction: "noeviction";
27
+ "allkeys-lru": "allkeys-lru";
28
+ "allkeys-lfu": "allkeys-lfu";
29
+ "allkeys-random": "allkeys-random";
30
+ "volatile-lru": "volatile-lru";
31
+ "volatile-lfu": "volatile-lfu";
32
+ "volatile-random": "volatile-random";
33
+ "volatile-ttl": "volatile-ttl";
34
+ }>>;
35
+ region: z.ZodDefault<z.ZodString>;
36
+ version: z.ZodDefault<z.ZodString>;
37
+ numNodes: z.ZodDefault<z.ZodNumber>;
38
+ size: z.ZodOptional<z.ZodString>;
39
+ trustedSources: z.ZodOptional<z.ZodArray<z.ZodObject<{
40
+ type: z.ZodEnum<{
41
+ tag: "tag";
42
+ droplet: "droplet";
43
+ k8s: "k8s";
44
+ ip_addr: "ip_addr";
45
+ app: "app";
46
+ }>;
47
+ value: z.ZodString;
48
+ }, z.core.$strip>>>;
49
+ metricsAlerts: z.ZodOptional<z.ZodArray<z.ZodObject<{
50
+ type: z.ZodEnum<{
51
+ cpu: "cpu";
52
+ memory: "memory";
53
+ disk: "disk";
54
+ load_15: "load_15";
55
+ load_5: "load_5";
56
+ load_1: "load_1";
57
+ replication_lag: "replication_lag";
58
+ kafka_disk: "kafka_disk";
59
+ open_connections: "open_connections";
60
+ }>;
61
+ threshold: z.ZodNumber;
62
+ compare: z.ZodDefault<z.ZodEnum<{
63
+ GreaterThan: "GreaterThan";
64
+ LessThan: "LessThan";
65
+ }>>;
66
+ window: z.ZodDefault<z.ZodEnum<{
67
+ "5m": "5m";
68
+ "10m": "10m";
69
+ "30m": "30m";
70
+ "1h": "1h";
71
+ }>>;
72
+ notify: z.ZodOptional<z.ZodObject<{
73
+ email: z.ZodOptional<z.ZodArray<z.ZodString>>;
74
+ slackWebhook: z.ZodOptional<z.ZodString>;
75
+ pagerdutyServiceId: z.ZodOptional<z.ZodString>;
76
+ }, z.core.$strip>>;
77
+ }, z.core.$strip>>>;
78
+ maintenanceWindow: z.ZodOptional<z.ZodObject<{
79
+ day: z.ZodEnum<{
80
+ monday: "monday";
81
+ tuesday: "tuesday";
82
+ wednesday: "wednesday";
83
+ thursday: "thursday";
84
+ friday: "friday";
85
+ saturday: "saturday";
86
+ sunday: "sunday";
87
+ }>;
88
+ hour: z.ZodString;
89
+ }, z.core.$strip>>;
90
+ vpcUuid: z.ZodOptional<z.ZodString>;
91
+ }, z.core.$strict>;
92
+ export declare const DOKSRedisCacheConfigSchema: z.ZodObject<{
93
+ namespace: z.ZodString;
94
+ image: z.ZodOptional<z.ZodString>;
95
+ version: z.ZodDefault<z.ZodString>;
96
+ maxMemory: z.ZodOptional<z.ZodString>;
97
+ evictionPolicy: z.ZodOptional<z.ZodEnum<{
98
+ noeviction: "noeviction";
99
+ "allkeys-lru": "allkeys-lru";
100
+ "allkeys-lfu": "allkeys-lfu";
101
+ "allkeys-random": "allkeys-random";
102
+ "volatile-lru": "volatile-lru";
103
+ "volatile-lfu": "volatile-lfu";
104
+ "volatile-random": "volatile-random";
105
+ "volatile-ttl": "volatile-ttl";
106
+ }>>;
107
+ storageSize: z.ZodDefault<z.ZodString>;
108
+ }, z.core.$strict>;
109
+ export declare const DoksDatabaseConfigSchema: z.ZodObject<{
110
+ namespace: z.ZodString;
111
+ storageSize: z.ZodDefault<z.ZodString>;
112
+ resources: z.ZodOptional<z.ZodObject<{
113
+ requests: z.ZodOptional<z.ZodObject<{
114
+ cpu: z.ZodString;
115
+ memory: z.ZodString;
116
+ }, z.core.$strip>>;
117
+ limits: z.ZodOptional<z.ZodObject<{
118
+ cpu: z.ZodString;
119
+ memory: z.ZodString;
120
+ }, z.core.$strip>>;
121
+ }, z.core.$strip>>;
122
+ version: z.ZodDefault<z.ZodString>;
123
+ }, z.core.$strip>;
124
+ export declare const DOManagedPostgresConfigSchema: z.ZodObject<{
125
+ size: z.ZodDefault<z.ZodString>;
126
+ region: z.ZodDefault<z.ZodString>;
127
+ version: z.ZodDefault<z.ZodString>;
128
+ numNodes: z.ZodDefault<z.ZodNumber>;
129
+ standbyNodes: z.ZodDefault<z.ZodNumber>;
130
+ readOnlyNodes: z.ZodDefault<z.ZodNumber>;
131
+ storageAutoscaling: z.ZodOptional<z.ZodObject<{
132
+ enabled: z.ZodDefault<z.ZodBoolean>;
133
+ thresholdPercent: z.ZodDefault<z.ZodNumber>;
134
+ maxSizeGib: z.ZodDefault<z.ZodNumber>;
135
+ incrementPercent: z.ZodDefault<z.ZodNumber>;
136
+ }, z.core.$strip>>;
137
+ connectionPools: z.ZodOptional<z.ZodArray<z.ZodObject<{
138
+ name: z.ZodString;
139
+ mode: z.ZodDefault<z.ZodEnum<{
140
+ session: "session";
141
+ transaction: "transaction";
142
+ statement: "statement";
143
+ }>>;
144
+ size: z.ZodNumber;
145
+ db: z.ZodString;
146
+ user: z.ZodOptional<z.ZodString>;
147
+ }, z.core.$strip>>>;
148
+ trustedSources: z.ZodOptional<z.ZodArray<z.ZodObject<{
149
+ type: z.ZodEnum<{
150
+ tag: "tag";
151
+ droplet: "droplet";
152
+ k8s: "k8s";
153
+ ip_addr: "ip_addr";
154
+ app: "app";
155
+ }>;
156
+ value: z.ZodString;
157
+ }, z.core.$strip>>>;
158
+ maintenanceWindow: z.ZodOptional<z.ZodObject<{
159
+ day: z.ZodEnum<{
160
+ monday: "monday";
161
+ tuesday: "tuesday";
162
+ wednesday: "wednesday";
163
+ thursday: "thursday";
164
+ friday: "friday";
165
+ saturday: "saturday";
166
+ sunday: "sunday";
167
+ }>;
168
+ hour: z.ZodString;
169
+ }, z.core.$strip>>;
170
+ majorVersionUpgradePolicy: z.ZodDefault<z.ZodEnum<{
171
+ auto: "auto";
172
+ manual: "manual";
173
+ }>>;
174
+ metricsAlerts: z.ZodOptional<z.ZodArray<z.ZodObject<{
175
+ type: z.ZodEnum<{
176
+ cpu: "cpu";
177
+ memory: "memory";
178
+ disk: "disk";
179
+ load_15: "load_15";
180
+ load_5: "load_5";
181
+ load_1: "load_1";
182
+ replication_lag: "replication_lag";
183
+ kafka_disk: "kafka_disk";
184
+ open_connections: "open_connections";
185
+ }>;
186
+ threshold: z.ZodNumber;
187
+ compare: z.ZodDefault<z.ZodEnum<{
188
+ GreaterThan: "GreaterThan";
189
+ LessThan: "LessThan";
190
+ }>>;
191
+ window: z.ZodDefault<z.ZodEnum<{
192
+ "5m": "5m";
193
+ "10m": "10m";
194
+ "30m": "30m";
195
+ "1h": "1h";
196
+ }>>;
197
+ notify: z.ZodOptional<z.ZodObject<{
198
+ email: z.ZodOptional<z.ZodArray<z.ZodString>>;
199
+ slackWebhook: z.ZodOptional<z.ZodString>;
200
+ pagerdutyServiceId: z.ZodOptional<z.ZodString>;
201
+ }, z.core.$strip>>;
202
+ }, z.core.$strip>>>;
203
+ extensions: z.ZodOptional<z.ZodArray<z.ZodObject<{
204
+ name: z.ZodString;
205
+ version: z.ZodOptional<z.ZodString>;
206
+ schema: z.ZodOptional<z.ZodString>;
207
+ }, z.core.$strip>>>;
208
+ vpcUuid: z.ZodOptional<z.ZodString>;
209
+ }, z.core.$strip>;
210
+ //# sourceMappingURL=cache-database.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cache-database.d.ts","sourceRoot":"","sources":["../../src/schemas/cache-database.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAW5B;;;GAGG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;EAS/B,CAAC;AAEH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAqBrC,CAAC;AAEH,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;kBAarC,CAAC;AAEH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;iBAcnC,CAAC;AAEH,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA6BxC,CAAC"}
@@ -0,0 +1,105 @@
1
+ /**
2
+ * Vendor config schemas for the `infra/cache` and `infra/database` kinds as
3
+ * DigitalOcean's integrations implement them. Moved verbatim from
4
+ * infra-core (which now keeps only the open, adapter-keyed descriptor
5
+ * config); behavior is preserved and these are the canonical owners from
6
+ * here on.
7
+ */
8
+ import * as z from 'zod/v4';
9
+ import { TrustedSourceSchema, StorageAutoscalingSchema, ConnectionPoolSchema, MaintenanceWindowSchema, MetricsAlertSchema, PostgresExtensionSchema, MajorVersionUpgradePolicySchema } from '@vibesdotdev/infra-core/kinds';
10
+ /**
11
+ * DigitalOcean Redis-compatible eviction policies use the vendor-native names.
12
+ * The canonical equivalents are `allkeys-lru`, `allkeys-lfu`, and `volatile-ttl`.
13
+ */
14
+ export const EvictionPolicySchema = z.enum([
15
+ 'noeviction',
16
+ 'allkeys-lru',
17
+ 'allkeys-lfu',
18
+ 'allkeys-random',
19
+ 'volatile-lru',
20
+ 'volatile-lfu',
21
+ 'volatile-random',
22
+ 'volatile-ttl'
23
+ ]);
24
+ export const DOManagedRedisConfigSchema = z.strictObject({
25
+ /** Max memory allocation (e.g., '256mb', '1gb'). */
26
+ maxMemory: z.string().min(1).optional(),
27
+ /** DigitalOcean's native Valkey eviction policy. */
28
+ evictionPolicy: EvictionPolicySchema.optional(),
29
+ /** DO region (default: nyc1). */
30
+ region: z.string().min(1).default('nyc1'),
31
+ /** Valkey version (default: 7). */
32
+ version: z.string().min(1).default('7'),
33
+ /** Number of nodes (default: 1). */
34
+ numNodes: z.number().int().positive().default(1),
35
+ /** Database size tier (optional, derived from maxMemory if not set). */
36
+ size: z.string().min(1).optional(),
37
+ /** Sources allowed to reach the cluster (droplets, k8s, CIDRs, tags). */
38
+ trustedSources: z.array(TrustedSourceSchema).optional(),
39
+ /** Cluster metrics alerts. */
40
+ metricsAlerts: z.array(MetricsAlertSchema).optional(),
41
+ /** Maintenance window (UTC). */
42
+ maintenanceWindow: MaintenanceWindowSchema.optional(),
43
+ /** VPC uuid the cluster joins. Falls back to the region's default VPC. */
44
+ vpcUuid: z.string().min(1).optional()
45
+ });
46
+ export const DOKSRedisCacheConfigSchema = z.strictObject({
47
+ /** Kubernetes namespace supplied by the composing application. */
48
+ namespace: z.string().min(1),
49
+ /** Container image (default: redis:{version}). */
50
+ image: z.string().min(1).optional(),
51
+ /** Redis version (default: 7). */
52
+ version: z.string().min(1).default('7'),
53
+ /** Max memory allocation (e.g., '256mb'). */
54
+ maxMemory: z.string().optional(),
55
+ /** Redis-native eviction policy. */
56
+ evictionPolicy: EvictionPolicySchema.optional(),
57
+ /** Storage size (default: 1Gi). */
58
+ storageSize: z.string().min(1).default('1Gi')
59
+ });
60
+ export const DoksDatabaseConfigSchema = z.object({
61
+ /** Kubernetes namespace supplied by the composing application. */
62
+ namespace: z.string().min(1),
63
+ /** Storage size for pgdata volume (default: 10Gi). */
64
+ storageSize: z.string().min(1).default('10Gi'),
65
+ /** Container resources. */
66
+ resources: z
67
+ .object({
68
+ requests: z.object({ cpu: z.string().min(1), memory: z.string().min(1) }).optional(),
69
+ limits: z.object({ cpu: z.string().min(1), memory: z.string().min(1) }).optional()
70
+ })
71
+ .optional(),
72
+ /** Postgres version tag (default: 16-alpine). */
73
+ version: z.string().min(1).default('16-alpine')
74
+ });
75
+ export const DOManagedPostgresConfigSchema = z.object({
76
+ /** Database size tier (default: db-s-1vcpu-1gb). */
77
+ size: z.string().min(1).default('db-s-1vcpu-1gb'),
78
+ /** DO region (default: nyc1). */
79
+ region: z.string().min(1).default('nyc1'),
80
+ /** Postgres version (default: 16). */
81
+ version: z.string().min(1).default('16'),
82
+ /** Total nodes in the cluster (primary + standby). Default 1. */
83
+ numNodes: z.number().int().positive().default(1),
84
+ /** Hot standby count for HA failover. */
85
+ standbyNodes: z.number().int().nonnegative().default(0),
86
+ /** Read-only replica count routed via the read-only host. */
87
+ readOnlyNodes: z.number().int().nonnegative().default(0),
88
+ /** Disk autoscaling policy. */
89
+ storageAutoscaling: StorageAutoscalingSchema.optional(),
90
+ /** Named PgBouncer pools to provision. */
91
+ connectionPools: z.array(ConnectionPoolSchema).optional(),
92
+ /** Sources allowed to reach the cluster (droplets, k8s, CIDRs, tags). */
93
+ trustedSources: z.array(TrustedSourceSchema).optional(),
94
+ /** Maintenance window (UTC). */
95
+ maintenanceWindow: MaintenanceWindowSchema.optional(),
96
+ /** Major-version upgrade policy. */
97
+ majorVersionUpgradePolicy: MajorVersionUpgradePolicySchema.default('manual'),
98
+ /** Cluster metrics alerts. */
99
+ metricsAlerts: z.array(MetricsAlertSchema).optional(),
100
+ /** Extensions to enable (`pgvector`, `postgis`, …). */
101
+ extensions: z.array(PostgresExtensionSchema).optional(),
102
+ /** VPC uuid the cluster joins. Falls back to the region's default VPC. */
103
+ vpcUuid: z.string().min(1).optional()
104
+ });
105
+ //# sourceMappingURL=cache-database.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cache-database.js","sourceRoot":"","sources":["../../src/schemas/cache-database.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,OAAO,KAAK,CAAC,MAAM,QAAQ,CAAC;AAC5B,OAAO,EACN,mBAAmB,EACnB,wBAAwB,EACxB,oBAAoB,EACpB,uBAAuB,EACvB,kBAAkB,EAClB,uBAAuB,EACvB,+BAA+B,EAC/B,MAAM,+BAA+B,CAAC;AAEvC;;;GAGG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,IAAI,CAAC;IAC1C,YAAY;IACZ,aAAa;IACb,aAAa;IACb,gBAAgB;IAChB,cAAc;IACd,cAAc;IACd,iBAAiB;IACjB,cAAc;CACd,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,YAAY,CAAC;IACxD,oDAAoD;IACpD,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACvC,oDAAoD;IACpD,cAAc,EAAE,oBAAoB,CAAC,QAAQ,EAAE;IAC/C,iCAAiC;IACjC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IACzC,mCAAmC;IACnC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC;IACvC,oCAAoC;IACpC,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAChD,wEAAwE;IACxE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IAClC,yEAAyE;IACzE,cAAc,EAAE,CAAC,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,QAAQ,EAAE;IACvD,8BAA8B;IAC9B,aAAa,EAAE,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,QAAQ,EAAE;IACrD,gCAAgC;IAChC,iBAAiB,EAAE,uBAAuB,CAAC,QAAQ,EAAE;IACrD,0EAA0E;IAC1E,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;CACrC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,YAAY,CAAC;IACxD,kEAAkE;IAClE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC5B,kDAAkD;IAClD,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACnC,kCAAkC;IAClC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC;IACvC,6CAA6C;IAC7C,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAChC,oCAAoC;IACpC,cAAc,EAAE,oBAAoB,CAAC,QAAQ,EAAE;IAC/C,mCAAmC;IACnC,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;CAC7C,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChD,kEAAkE;IAClE,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC5B,sDAAsD;IACtD,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IAC9C,2BAA2B;IAC3B,SAAS,EAAE,CAAC;SACV,MAAM,CAAC;QACP,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE;QACpF,MAAM,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,QAAQ,EAAE;KAClF,CAAC;SACD,QAAQ,EAAE;IACZ,iDAAiD;IACjD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,WAAW,CAAC;CAC/C,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,CAAC,MAAM,CAAC;IACrD,oDAAoD;IACpD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,gBAAgB,CAAC;IACjD,iCAAiC;IACjC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;IACzC,sCAAsC;IACtC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC;IACxC,iEAAiE;IACjE,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAChD,yCAAyC;IACzC,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IACvD,6DAA6D;IAC7D,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IACxD,+BAA+B;IAC/B,kBAAkB,EAAE,wBAAwB,CAAC,QAAQ,EAAE;IACvD,0CAA0C;IAC1C,eAAe,EAAE,CAAC,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC,QAAQ,EAAE;IACzD,yEAAyE;IACzE,cAAc,EAAE,CAAC,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,QAAQ,EAAE;IACvD,gCAAgC;IAChC,iBAAiB,EAAE,uBAAuB,CAAC,QAAQ,EAAE;IACrD,oCAAoC;IACpC,yBAAyB,EAAE,+BAA+B,CAAC,OAAO,CAAC,QAAQ,CAAC;IAC5E,8BAA8B;IAC9B,aAAa,EAAE,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,QAAQ,EAAE;IACrD,uDAAuD;IACvD,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC,QAAQ,EAAE;IACvD,0EAA0E;IAC1E,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;CACrC,CAAC,CAAC"}