typekro 0.24.1 → 0.26.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (210) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/core/composition/context.d.ts +4 -0
  3. package/dist/core/composition/context.d.ts.map +1 -1
  4. package/dist/core/composition/context.js +1 -0
  5. package/dist/core/composition/context.js.map +1 -1
  6. package/dist/core/composition/imperative.d.ts.map +1 -1
  7. package/dist/core/composition/imperative.js +24 -3
  8. package/dist/core/composition/imperative.js.map +1 -1
  9. package/dist/core/deployment/direct-factory.d.ts +8 -1
  10. package/dist/core/deployment/direct-factory.d.ts.map +1 -1
  11. package/dist/core/deployment/direct-factory.js +80 -61
  12. package/dist/core/deployment/direct-factory.js.map +1 -1
  13. package/dist/core/deployment/engine.d.ts +2 -0
  14. package/dist/core/deployment/engine.d.ts.map +1 -1
  15. package/dist/core/deployment/engine.js +22 -1
  16. package/dist/core/deployment/engine.js.map +1 -1
  17. package/dist/core/deployment/kro-factory.d.ts +2 -0
  18. package/dist/core/deployment/kro-factory.d.ts.map +1 -1
  19. package/dist/core/deployment/kro-factory.js +47 -11
  20. package/dist/core/deployment/kro-factory.js.map +1 -1
  21. package/dist/core/deployment/kro-instance-safety.d.ts +24 -0
  22. package/dist/core/deployment/kro-instance-safety.d.ts.map +1 -0
  23. package/dist/core/deployment/kro-instance-safety.js +157 -0
  24. package/dist/core/deployment/kro-instance-safety.js.map +1 -0
  25. package/dist/core/deployment/readiness-waiter.d.ts.map +1 -1
  26. package/dist/core/deployment/readiness-waiter.js +17 -2
  27. package/dist/core/deployment/readiness-waiter.js.map +1 -1
  28. package/dist/core/deployment/rollback-manager.d.ts +1 -1
  29. package/dist/core/deployment/rollback-manager.d.ts.map +1 -1
  30. package/dist/core/deployment/rollback-manager.js +16 -9
  31. package/dist/core/deployment/rollback-manager.js.map +1 -1
  32. package/dist/core/deployment/schema-cel-evaluator.d.ts +5 -0
  33. package/dist/core/deployment/schema-cel-evaluator.d.ts.map +1 -0
  34. package/dist/core/deployment/schema-cel-evaluator.js +36 -0
  35. package/dist/core/deployment/schema-cel-evaluator.js.map +1 -0
  36. package/dist/core/deployment/singleton-gitops.d.ts.map +1 -1
  37. package/dist/core/deployment/singleton-gitops.js +9 -2
  38. package/dist/core/deployment/singleton-gitops.js.map +1 -1
  39. package/dist/core/serialization/core.d.ts.map +1 -1
  40. package/dist/core/serialization/core.js +17 -4
  41. package/dist/core/serialization/core.js.map +1 -1
  42. package/dist/core/serialization/schema.d.ts.map +1 -1
  43. package/dist/core/serialization/schema.js +19 -4
  44. package/dist/core/serialization/schema.js.map +1 -1
  45. package/dist/core/serialization/yaml.d.ts.map +1 -1
  46. package/dist/core/serialization/yaml.js +15 -1
  47. package/dist/core/serialization/yaml.js.map +1 -1
  48. package/dist/core/types/kubernetes.d.ts +9 -0
  49. package/dist/core/types/kubernetes.d.ts.map +1 -1
  50. package/dist/core/types/serialization.d.ts +9 -0
  51. package/dist/core/types/serialization.d.ts.map +1 -1
  52. package/dist/factories/clickhouse/compositions/clickhouse-operator-bootstrap.d.ts +1 -1
  53. package/dist/factories/clickhouse/compositions/clickhouse-operator-bootstrap.js +1 -1
  54. package/dist/factories/clickhouse/index.d.ts +4 -1
  55. package/dist/factories/clickhouse/index.d.ts.map +1 -1
  56. package/dist/factories/clickhouse/index.js +4 -1
  57. package/dist/factories/clickhouse/index.js.map +1 -1
  58. package/dist/factories/clickstack/compositions/clickstack-bootstrap.d.ts +1 -1
  59. package/dist/factories/clickstack/compositions/clickstack-bootstrap.js +1 -1
  60. package/dist/factories/clickstack/compositions/k8s-telemetry.d.ts +1 -1
  61. package/dist/factories/clickstack/compositions/k8s-telemetry.js +1 -1
  62. package/dist/factories/clickstack/index.d.ts +1 -1
  63. package/dist/factories/clickstack/index.js +1 -1
  64. package/dist/factories/cnpg/compositions/cnpg-bootstrap.d.ts +1 -1
  65. package/dist/factories/cnpg/compositions/cnpg-bootstrap.js +1 -1
  66. package/dist/factories/cnpg/index.d.ts +1 -1
  67. package/dist/factories/cnpg/index.js +1 -1
  68. package/dist/factories/dagster/index.d.ts +1 -1
  69. package/dist/factories/dagster/index.js +1 -1
  70. package/dist/factories/index.d.ts +2 -0
  71. package/dist/factories/index.d.ts.map +1 -1
  72. package/dist/factories/index.js +8 -0
  73. package/dist/factories/index.js.map +1 -1
  74. package/dist/factories/inngest/compositions/inngest-bootstrap.d.ts +1 -1
  75. package/dist/factories/inngest/compositions/inngest-bootstrap.js +1 -1
  76. package/dist/factories/inngest/index.d.ts +1 -1
  77. package/dist/factories/inngest/index.js +1 -1
  78. package/dist/factories/kro/resource-graph-definition.d.ts.map +1 -1
  79. package/dist/factories/kro/resource-graph-definition.js +17 -1
  80. package/dist/factories/kro/resource-graph-definition.js.map +1 -1
  81. package/dist/factories/nats/compositions/index.d.ts +2 -0
  82. package/dist/factories/nats/compositions/index.d.ts.map +1 -0
  83. package/dist/factories/nats/compositions/index.js +2 -0
  84. package/dist/factories/nats/compositions/index.js.map +1 -0
  85. package/dist/factories/nats/compositions/nats-bootstrap.d.ts +49 -0
  86. package/dist/factories/nats/compositions/nats-bootstrap.d.ts.map +1 -0
  87. package/dist/factories/nats/compositions/nats-bootstrap.js +135 -0
  88. package/dist/factories/nats/compositions/nats-bootstrap.js.map +1 -0
  89. package/dist/factories/nats/index.d.ts +5 -0
  90. package/dist/factories/nats/index.d.ts.map +1 -0
  91. package/dist/factories/nats/index.js +5 -0
  92. package/dist/factories/nats/index.js.map +1 -0
  93. package/dist/factories/nats/resources/helm.d.ts +28 -0
  94. package/dist/factories/nats/resources/helm.d.ts.map +1 -0
  95. package/dist/factories/nats/resources/helm.js +39 -0
  96. package/dist/factories/nats/resources/helm.js.map +1 -0
  97. package/dist/factories/nats/resources/index.d.ts +3 -0
  98. package/dist/factories/nats/resources/index.d.ts.map +1 -0
  99. package/dist/factories/nats/resources/index.js +3 -0
  100. package/dist/factories/nats/resources/index.js.map +1 -0
  101. package/dist/factories/nats/resources/jetstream.d.ts +13 -0
  102. package/dist/factories/nats/resources/jetstream.d.ts.map +1 -0
  103. package/dist/factories/nats/resources/jetstream.js +105 -0
  104. package/dist/factories/nats/resources/jetstream.js.map +1 -0
  105. package/dist/factories/nats/types.d.ts +91 -0
  106. package/dist/factories/nats/types.d.ts.map +1 -0
  107. package/dist/factories/nats/types.js +72 -0
  108. package/dist/factories/nats/types.js.map +1 -0
  109. package/dist/factories/ory/compositions/ory-identity-stack.d.ts +1 -1
  110. package/dist/factories/ory/types.d.ts +2 -2
  111. package/dist/factories/rook/compositions/index.d.ts +4 -0
  112. package/dist/factories/rook/compositions/index.d.ts.map +1 -0
  113. package/dist/factories/rook/compositions/index.js +4 -0
  114. package/dist/factories/rook/compositions/index.js.map +1 -0
  115. package/dist/factories/rook/compositions/object-storage-claim.d.ts +32 -0
  116. package/dist/factories/rook/compositions/object-storage-claim.d.ts.map +1 -0
  117. package/dist/factories/rook/compositions/object-storage-claim.js +63 -0
  118. package/dist/factories/rook/compositions/object-storage-claim.js.map +1 -0
  119. package/dist/factories/rook/compositions/rook-ceph-helm-repository.d.ts +12 -0
  120. package/dist/factories/rook/compositions/rook-ceph-helm-repository.d.ts.map +1 -0
  121. package/dist/factories/rook/compositions/rook-ceph-helm-repository.js +25 -0
  122. package/dist/factories/rook/compositions/rook-ceph-helm-repository.js.map +1 -0
  123. package/dist/factories/rook/compositions/rook-ceph-operator-bootstrap.d.ts +2 -0
  124. package/dist/factories/rook/compositions/rook-ceph-operator-bootstrap.d.ts.map +1 -0
  125. package/dist/factories/rook/compositions/rook-ceph-operator-bootstrap.js +2 -0
  126. package/dist/factories/rook/compositions/rook-ceph-operator-bootstrap.js.map +1 -0
  127. package/dist/factories/rook/compositions/rook-ceph-operator-installation.d.ts +67 -0
  128. package/dist/factories/rook/compositions/rook-ceph-operator-installation.d.ts.map +1 -0
  129. package/dist/factories/rook/compositions/rook-ceph-operator-installation.js +71 -0
  130. package/dist/factories/rook/compositions/rook-ceph-operator-installation.js.map +1 -0
  131. package/dist/factories/rook/index.d.ts +15 -0
  132. package/dist/factories/rook/index.d.ts.map +1 -0
  133. package/dist/factories/rook/index.js +15 -0
  134. package/dist/factories/rook/index.js.map +1 -0
  135. package/dist/factories/rook/resources/bucket-storage-class.d.ts +12 -0
  136. package/dist/factories/rook/resources/bucket-storage-class.d.ts.map +1 -0
  137. package/dist/factories/rook/resources/bucket-storage-class.js +29 -0
  138. package/dist/factories/rook/resources/bucket-storage-class.js.map +1 -0
  139. package/dist/factories/rook/resources/ceph-object-store-user.d.ts +14 -0
  140. package/dist/factories/rook/resources/ceph-object-store-user.d.ts.map +1 -0
  141. package/dist/factories/rook/resources/ceph-object-store-user.js +42 -0
  142. package/dist/factories/rook/resources/ceph-object-store-user.js.map +1 -0
  143. package/dist/factories/rook/resources/ceph-object-store.d.ts +27 -0
  144. package/dist/factories/rook/resources/ceph-object-store.d.ts.map +1 -0
  145. package/dist/factories/rook/resources/ceph-object-store.js +56 -0
  146. package/dist/factories/rook/resources/ceph-object-store.js.map +1 -0
  147. package/dist/factories/rook/resources/helm.d.ts +18 -0
  148. package/dist/factories/rook/resources/helm.d.ts.map +1 -0
  149. package/dist/factories/rook/resources/helm.js +45 -0
  150. package/dist/factories/rook/resources/helm.js.map +1 -0
  151. package/dist/factories/rook/resources/index.d.ts +6 -0
  152. package/dist/factories/rook/resources/index.d.ts.map +1 -0
  153. package/dist/factories/rook/resources/index.js +6 -0
  154. package/dist/factories/rook/resources/index.js.map +1 -0
  155. package/dist/factories/rook/resources/object-bucket-claim.d.ts +15 -0
  156. package/dist/factories/rook/resources/object-bucket-claim.d.ts.map +1 -0
  157. package/dist/factories/rook/resources/object-bucket-claim.js +52 -0
  158. package/dist/factories/rook/resources/object-bucket-claim.js.map +1 -0
  159. package/dist/factories/rook/types.d.ts +307 -0
  160. package/dist/factories/rook/types.d.ts.map +1 -0
  161. package/dist/factories/rook/types.js +239 -0
  162. package/dist/factories/rook/types.js.map +1 -0
  163. package/dist/factories/rook/utils/helm-values-mapper.d.ts +33 -0
  164. package/dist/factories/rook/utils/helm-values-mapper.d.ts.map +1 -0
  165. package/dist/factories/rook/utils/helm-values-mapper.js +60 -0
  166. package/dist/factories/rook/utils/helm-values-mapper.js.map +1 -0
  167. package/dist/factories/rook/utils/index.d.ts +2 -0
  168. package/dist/factories/rook/utils/index.d.ts.map +1 -0
  169. package/dist/factories/rook/utils/index.js +2 -0
  170. package/dist/factories/rook/utils/index.js.map +1 -0
  171. package/dist/factories/valkey/compositions/index.d.ts +2 -1
  172. package/dist/factories/valkey/compositions/index.d.ts.map +1 -1
  173. package/dist/factories/valkey/compositions/index.js +2 -1
  174. package/dist/factories/valkey/compositions/index.js.map +1 -1
  175. package/dist/factories/valkey/compositions/valkey-bootstrap.d.ts +21 -2
  176. package/dist/factories/valkey/compositions/valkey-bootstrap.d.ts.map +1 -1
  177. package/dist/factories/valkey/compositions/valkey-bootstrap.js +26 -136
  178. package/dist/factories/valkey/compositions/valkey-bootstrap.js.map +1 -1
  179. package/dist/factories/valkey/compositions/valkey-helm-repository.d.ts +16 -0
  180. package/dist/factories/valkey/compositions/valkey-helm-repository.d.ts.map +1 -0
  181. package/dist/factories/valkey/compositions/valkey-helm-repository.js +29 -0
  182. package/dist/factories/valkey/compositions/valkey-helm-repository.js.map +1 -0
  183. package/dist/factories/valkey/index.d.ts +6 -3
  184. package/dist/factories/valkey/index.d.ts.map +1 -1
  185. package/dist/factories/valkey/index.js +6 -3
  186. package/dist/factories/valkey/index.js.map +1 -1
  187. package/dist/factories/valkey/resources/helm.d.ts.map +1 -1
  188. package/dist/factories/valkey/resources/helm.js +13 -11
  189. package/dist/factories/valkey/resources/helm.js.map +1 -1
  190. package/dist/factories/valkey/types.d.ts +29 -16
  191. package/dist/factories/valkey/types.d.ts.map +1 -1
  192. package/dist/factories/valkey/types.js +34 -22
  193. package/dist/factories/valkey/types.js.map +1 -1
  194. package/dist/factories/valkey/utils/helm-values-mapper.d.ts +6 -1
  195. package/dist/factories/valkey/utils/helm-values-mapper.d.ts.map +1 -1
  196. package/dist/factories/valkey/utils/helm-values-mapper.js +52 -19
  197. package/dist/factories/valkey/utils/helm-values-mapper.js.map +1 -1
  198. package/dist/factories/webapp/compositions/index.d.ts +1 -1
  199. package/dist/factories/webapp/compositions/index.d.ts.map +1 -1
  200. package/dist/factories/webapp/compositions/index.js +1 -1
  201. package/dist/factories/webapp/compositions/index.js.map +1 -1
  202. package/dist/factories/webapp/compositions/web-app-with-processing.d.ts +9 -13
  203. package/dist/factories/webapp/compositions/web-app-with-processing.d.ts.map +1 -1
  204. package/dist/factories/webapp/compositions/web-app-with-processing.js +290 -278
  205. package/dist/factories/webapp/compositions/web-app-with-processing.js.map +1 -1
  206. package/dist/factories/webapp/types.d.ts +26 -7
  207. package/dist/factories/webapp/types.d.ts.map +1 -1
  208. package/dist/factories/webapp/types.js +0 -9
  209. package/dist/factories/webapp/types.js.map +1 -1
  210. package/package.json +9 -1
@@ -0,0 +1,27 @@
1
+ /** Typed `CephObjectStore` factory for Rook's S3-compatible RGW service. */
2
+ import type { Composable, Enhanced, ResourceStatus } from '../../../core/types/index.js';
3
+ import type { CephObjectStoreConfig, CephObjectStoreStatus } from '../types.js';
4
+ /** Evaluate Rook's authoritative `status.phase` for an object store. */
5
+ export declare function cephObjectStoreReadinessEvaluator(liveResource: unknown): ResourceStatus;
6
+ /**
7
+ * Create a Rook `ceph.rook.io/v1` CephObjectStore.
8
+ *
9
+ * This is platform infrastructure. Application graphs should normally consume
10
+ * a pre-created bucket StorageClass through `rookObjectStorageClaim` instead
11
+ * of owning this resource.
12
+ *
13
+ * @example
14
+ * ```typescript
15
+ * const store = cephObjectStore({
16
+ * name: 'object-store',
17
+ * namespace: 'rook-ceph',
18
+ * spec: {
19
+ * metadataPool: { replicated: { size: 3, requireSafeReplicaSize: true } },
20
+ * dataPool: { replicated: { size: 3, requireSafeReplicaSize: true } },
21
+ * gateway: { port: 80, instances: 2 },
22
+ * },
23
+ * });
24
+ * ```
25
+ */
26
+ export declare function cephObjectStore(config: Composable<CephObjectStoreConfig>): Enhanced<CephObjectStoreConfig['spec'], CephObjectStoreStatus>;
27
+ //# sourceMappingURL=ceph-object-store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ceph-object-store.d.ts","sourceRoot":"","sources":["../../../../src/factories/rook/resources/ceph-object-store.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAE5E,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAEzF,OAAO,KAAK,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAEhF,wEAAwE;AACxE,wBAAgB,iCAAiC,CAAC,YAAY,EAAE,OAAO,GAAG,cAAc,CAiBvF;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,eAAe,CAC7B,MAAM,EAAE,UAAU,CAAC,qBAAqB,CAAC,GACxC,QAAQ,CAAC,qBAAqB,CAAC,MAAM,CAAC,EAAE,qBAAqB,CAAC,CAsBhE"}
@@ -0,0 +1,56 @@
1
+ /** Typed `CephObjectStore` factory for Rook's S3-compatible RGW service. */
2
+ import { createResource } from '../../shared.js';
3
+ /** Evaluate Rook's authoritative `status.phase` for an object store. */
4
+ export function cephObjectStoreReadinessEvaluator(liveResource) {
5
+ const resource = liveResource;
6
+ const status = resource?.status;
7
+ if (!status) {
8
+ return { ready: false, reason: 'StatusMissing', message: 'CephObjectStore has no status yet' };
9
+ }
10
+ if (status.phase === 'Ready') {
11
+ return { ready: true, reason: 'Ready', message: status.message ?? 'CephObjectStore is ready' };
12
+ }
13
+ return {
14
+ ready: false,
15
+ reason: status.phase ?? 'PhaseMissing',
16
+ message: status.message ?? `CephObjectStore phase is ${status.phase ?? 'unknown'}`,
17
+ };
18
+ }
19
+ /**
20
+ * Create a Rook `ceph.rook.io/v1` CephObjectStore.
21
+ *
22
+ * This is platform infrastructure. Application graphs should normally consume
23
+ * a pre-created bucket StorageClass through `rookObjectStorageClaim` instead
24
+ * of owning this resource.
25
+ *
26
+ * @example
27
+ * ```typescript
28
+ * const store = cephObjectStore({
29
+ * name: 'object-store',
30
+ * namespace: 'rook-ceph',
31
+ * spec: {
32
+ * metadataPool: { replicated: { size: 3, requireSafeReplicaSize: true } },
33
+ * dataPool: { replicated: { size: 3, requireSafeReplicaSize: true } },
34
+ * gateway: { port: 80, instances: 2 },
35
+ * },
36
+ * });
37
+ * ```
38
+ */
39
+ export function cephObjectStore(config) {
40
+ return createResource({
41
+ apiVersion: 'ceph.rook.io/v1',
42
+ kind: 'CephObjectStore',
43
+ metadata: {
44
+ name: config.name,
45
+ ...(config.namespace && { namespace: config.namespace }),
46
+ labels: {
47
+ 'app.kubernetes.io/name': 'rook-ceph-object-store',
48
+ 'app.kubernetes.io/instance': config.name,
49
+ 'app.kubernetes.io/managed-by': 'typekro',
50
+ },
51
+ },
52
+ spec: config.spec,
53
+ ...(config.id && { id: config.id }),
54
+ }, { scope: 'namespaced', dnsAddressable: true }).withReadinessEvaluator(cephObjectStoreReadinessEvaluator);
55
+ }
56
+ //# sourceMappingURL=ceph-object-store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ceph-object-store.js","sourceRoot":"","sources":["../../../../src/factories/rook/resources/ceph-object-store.ts"],"names":[],"mappings":"AAAA,4EAA4E;AAG5E,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAGjD,wEAAwE;AACxE,MAAM,UAAU,iCAAiC,CAAC,YAAqB;IACrE,MAAM,QAAQ,GAAG,YAAqE,CAAC;IACvF,MAAM,MAAM,GAAG,QAAQ,EAAE,MAAM,CAAC;IAEhC,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,OAAO,EAAE,mCAAmC,EAAE,CAAC;IACjG,CAAC;IAED,IAAI,MAAM,CAAC,KAAK,KAAK,OAAO,EAAE,CAAC;QAC7B,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,0BAA0B,EAAE,CAAC;IACjG,CAAC;IAED,OAAO;QACL,KAAK,EAAE,KAAK;QACZ,MAAM,EAAE,MAAM,CAAC,KAAK,IAAI,cAAc;QACtC,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,4BAA4B,MAAM,CAAC,KAAK,IAAI,SAAS,EAAE;KACnF,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,eAAe,CAC7B,MAAyC;IAEzC,OAAO,cAAc,CACnB;QACE,UAAU,EAAE,iBAAiB;QAC7B,IAAI,EAAE,iBAAiB;QACvB,QAAQ,EAAE;YACR,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,GAAG,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC;YACxD,MAAM,EAAE;gBACN,wBAAwB,EAAE,wBAAwB;gBAClD,4BAA4B,EAAE,MAAM,CAAC,IAAI;gBACzC,8BAA8B,EAAE,SAAS;aAC1C;SACF;QACD,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,GAAG,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC;KACpC,EACD,EAAE,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,IAAI,EAAE,CAC9C,CAAC,sBAAsB,CAAC,iCAAiC,CAGzD,CAAC;AACJ,CAAC"}
@@ -0,0 +1,18 @@
1
+ /** Official Rook Ceph operator Helm resource factories. */
2
+ import type { Composable, Enhanced } from '../../../core/types/index.js';
3
+ import { type HelmRepositorySpec, type HelmRepositoryStatus } from '../../helm/helm-repository.js';
4
+ import type { HelmReleaseSpec, HelmReleaseStatus } from '../../helm/types.js';
5
+ import type { RookCephHelmReleaseConfig, RookCephHelmRepositoryConfig } from '../types.js';
6
+ /** Official Rook release chart repository. */
7
+ export declare const DEFAULT_ROOK_CEPH_REPO_URL = "https://charts.rook.io/release";
8
+ /** Shared Flux HelmRepository name. */
9
+ export declare const DEFAULT_ROOK_CEPH_REPO_NAME = "rook-release";
10
+ /** Official Rook Ceph operator chart name. */
11
+ export declare const ROOK_CEPH_OPERATOR_CHART_NAME = "rook-ceph";
12
+ /** Latest stable Rook Ceph operator chart verified on 2026-07-09. */
13
+ export declare const DEFAULT_ROOK_CEPH_VERSION = "v1.20.2";
14
+ /** Create the shared Flux source for official Rook release charts. */
15
+ export declare function rookCephHelmRepository(config: Composable<RookCephHelmRepositoryConfig>): Enhanced<HelmRepositorySpec, HelmRepositoryStatus>;
16
+ /** Create a Flux HelmRelease for the official `rook-ceph` operator chart. */
17
+ export declare function rookCephOperatorHelmRelease(config: Composable<RookCephHelmReleaseConfig>): Enhanced<HelmReleaseSpec, HelmReleaseStatus>;
18
+ //# sourceMappingURL=helm.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helm.d.ts","sourceRoot":"","sources":["../../../../src/factories/rook/resources/helm.ts"],"names":[],"mappings":"AAAA,2DAA2D;AAG3D,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAEzE,OAAO,EAEL,KAAK,kBAAkB,EACvB,KAAK,oBAAoB,EAE1B,MAAM,+BAA+B,CAAC;AAEvC,OAAO,KAAK,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC9E,OAAO,KAAK,EAAE,yBAAyB,EAAE,4BAA4B,EAAE,MAAM,aAAa,CAAC;AAE3F,8CAA8C;AAC9C,eAAO,MAAM,0BAA0B,mCAAmC,CAAC;AAE3E,uCAAuC;AACvC,eAAO,MAAM,2BAA2B,iBAAiB,CAAC;AAE1D,8CAA8C;AAC9C,eAAO,MAAM,6BAA6B,cAAc,CAAC;AAEzD,qEAAqE;AACrE,eAAO,MAAM,yBAAyB,YAAY,CAAC;AAEnD,sEAAsE;AACtE,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,UAAU,CAAC,4BAA4B,CAAC,GAC/C,QAAQ,CAAC,kBAAkB,EAAE,oBAAoB,CAAC,CAapD;AAED,6EAA6E;AAC7E,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,UAAU,CAAC,yBAAyB,CAAC,GAC5C,QAAQ,CAAC,eAAe,EAAE,iBAAiB,CAAC,CAqB9C"}
@@ -0,0 +1,45 @@
1
+ /** Official Rook Ceph operator Helm resource factories. */
2
+ import { DEFAULT_FLUX_NAMESPACE } from '../../../core/config/defaults.js';
3
+ import { helmRelease } from '../../helm/helm-release.js';
4
+ import { createHelmRepositoryReadinessEvaluator, helmRepository, } from '../../helm/helm-repository.js';
5
+ import { createLabeledHelmReleaseEvaluator } from '../../helm/readiness-evaluators.js';
6
+ /** Official Rook release chart repository. */
7
+ export const DEFAULT_ROOK_CEPH_REPO_URL = 'https://charts.rook.io/release';
8
+ /** Shared Flux HelmRepository name. */
9
+ export const DEFAULT_ROOK_CEPH_REPO_NAME = 'rook-release';
10
+ /** Official Rook Ceph operator chart name. */
11
+ export const ROOK_CEPH_OPERATOR_CHART_NAME = 'rook-ceph';
12
+ /** Latest stable Rook Ceph operator chart verified on 2026-07-09. */
13
+ export const DEFAULT_ROOK_CEPH_VERSION = 'v1.20.2';
14
+ /** Create the shared Flux source for official Rook release charts. */
15
+ export function rookCephHelmRepository(config) {
16
+ const repository = helmRepository({
17
+ name: config.name ?? DEFAULT_ROOK_CEPH_REPO_NAME,
18
+ namespace: config.namespace ?? DEFAULT_FLUX_NAMESPACE,
19
+ url: config.url ?? DEFAULT_ROOK_CEPH_REPO_URL,
20
+ interval: config.interval ?? '5m',
21
+ ...(config.id && { id: config.id }),
22
+ }).withReadinessEvaluator(createHelmRepositoryReadinessEvaluator('Rook Ceph'));
23
+ return repository;
24
+ }
25
+ /** Create a Flux HelmRelease for the official `rook-ceph` operator chart. */
26
+ export function rookCephOperatorHelmRelease(config) {
27
+ return helmRelease({
28
+ name: config.name,
29
+ namespace: config.namespace ?? 'rook-ceph',
30
+ chart: {
31
+ repository: config.repositoryUrl ?? DEFAULT_ROOK_CEPH_REPO_URL,
32
+ name: ROOK_CEPH_OPERATOR_CHART_NAME,
33
+ version: config.version ?? DEFAULT_ROOK_CEPH_VERSION,
34
+ },
35
+ sourceRef: {
36
+ name: config.repositoryName ?? DEFAULT_ROOK_CEPH_REPO_NAME,
37
+ namespace: config.repositoryNamespace ?? DEFAULT_FLUX_NAMESPACE,
38
+ kind: 'HelmRepository',
39
+ },
40
+ driftDetection: { mode: 'enabled' },
41
+ values: config.values ?? {},
42
+ ...(config.id && { id: config.id }),
43
+ }).withReadinessEvaluator(createLabeledHelmReleaseEvaluator('Rook Ceph'));
44
+ }
45
+ //# sourceMappingURL=helm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helm.js","sourceRoot":"","sources":["../../../../src/factories/rook/resources/helm.ts"],"names":[],"mappings":"AAAA,2DAA2D;AAE3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAE1E,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACzD,OAAO,EACL,sCAAsC,EAGtC,cAAc,GACf,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,iCAAiC,EAAE,MAAM,oCAAoC,CAAC;AAIvF,8CAA8C;AAC9C,MAAM,CAAC,MAAM,0BAA0B,GAAG,gCAAgC,CAAC;AAE3E,uCAAuC;AACvC,MAAM,CAAC,MAAM,2BAA2B,GAAG,cAAc,CAAC;AAE1D,8CAA8C;AAC9C,MAAM,CAAC,MAAM,6BAA6B,GAAG,WAAW,CAAC;AAEzD,qEAAqE;AACrE,MAAM,CAAC,MAAM,yBAAyB,GAAG,SAAS,CAAC;AAEnD,sEAAsE;AACtE,MAAM,UAAU,sBAAsB,CACpC,MAAgD;IAEhD,MAAM,UAAU,GAAG,cAAc,CAAC;QAChC,IAAI,EAAE,MAAM,CAAC,IAAI,IAAI,2BAA2B;QAChD,SAAS,EAAE,MAAM,CAAC,SAAS,IAAI,sBAAsB;QACrD,GAAG,EAAE,MAAM,CAAC,GAAG,IAAI,0BAA0B;QAC7C,QAAQ,EAAE,MAAM,CAAC,QAAQ,IAAI,IAAI;QACjC,GAAG,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC;KACpC,CAAC,CAAC,sBAAsB,CAAC,sCAAsC,CAAC,WAAW,CAAC,CAG5E,CAAC;IAEF,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,6EAA6E;AAC7E,MAAM,UAAU,2BAA2B,CACzC,MAA6C;IAE7C,OAAO,WAAW,CAAC;QACjB,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,SAAS,EAAE,MAAM,CAAC,SAAS,IAAI,WAAW;QAC1C,KAAK,EAAE;YACL,UAAU,EAAE,MAAM,CAAC,aAAa,IAAI,0BAA0B;YAC9D,IAAI,EAAE,6BAA6B;YACnC,OAAO,EAAE,MAAM,CAAC,OAAO,IAAI,yBAAyB;SACrD;QACD,SAAS,EAAE;YACT,IAAI,EAAE,MAAM,CAAC,cAAc,IAAI,2BAA2B;YAC1D,SAAS,EAAE,MAAM,CAAC,mBAAmB,IAAI,sBAAsB;YAC/D,IAAI,EAAE,gBAAgB;SACvB;QACD,cAAc,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;QACnC,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,EAAE;QAC3B,GAAG,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC;KACpC,CAAC,CAAC,sBAAsB,CAAC,iCAAiC,CAAC,WAAW,CAAC,CAGvE,CAAC;AACJ,CAAC"}
@@ -0,0 +1,6 @@
1
+ export * from './bucket-storage-class.js';
2
+ export * from './ceph-object-store.js';
3
+ export * from './ceph-object-store-user.js';
4
+ export * from './helm.js';
5
+ export * from './object-bucket-claim.js';
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/factories/rook/resources/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,WAAW,CAAC;AAC1B,cAAc,0BAA0B,CAAC"}
@@ -0,0 +1,6 @@
1
+ export * from './bucket-storage-class.js';
2
+ export * from './ceph-object-store.js';
3
+ export * from './ceph-object-store-user.js';
4
+ export * from './helm.js';
5
+ export * from './object-bucket-claim.js';
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/factories/rook/resources/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,WAAW,CAAC;AAC1B,cAAc,0BAA0B,CAAC"}
@@ -0,0 +1,15 @@
1
+ /** Typed `ObjectBucketClaim` factory used by Rook's bucket provisioner. */
2
+ import type { Composable, Enhanced, ResourceStatus } from '../../../core/types/index.js';
3
+ import type { ObjectBucketClaimConfig, ObjectBucketClaimStatus } from '../types.js';
4
+ /** Evaluate the lib-bucket-provisioner ObjectBucketClaim phase. */
5
+ export declare function objectBucketClaimReadinessEvaluator(liveResource: unknown): ResourceStatus;
6
+ /**
7
+ * Create an `objectbucket.io/v1alpha1` ObjectBucketClaim.
8
+ *
9
+ * On `Bound`, the Rook provisioner creates a Secret and ConfigMap with the
10
+ * same name and namespace as the claim. The Secret contains
11
+ * `AWS_ACCESS_KEY_ID` and `AWS_SECRET_ACCESS_KEY`; the ConfigMap contains
12
+ * `BUCKET_HOST`, `BUCKET_PORT`, `BUCKET_NAME`, and related endpoint data.
13
+ */
14
+ export declare function objectBucketClaim(config: Composable<ObjectBucketClaimConfig>): Enhanced<ObjectBucketClaimConfig['spec'], ObjectBucketClaimStatus>;
15
+ //# sourceMappingURL=object-bucket-claim.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"object-bucket-claim.d.ts","sourceRoot":"","sources":["../../../../src/factories/rook/resources/object-bucket-claim.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAE3E,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAEzF,OAAO,KAAK,EAAE,uBAAuB,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAEpF,mEAAmE;AACnE,wBAAgB,mCAAmC,CAAC,YAAY,EAAE,OAAO,GAAG,cAAc,CAyBzF;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,UAAU,CAAC,uBAAuB,CAAC,GAC1C,QAAQ,CAAC,uBAAuB,CAAC,MAAM,CAAC,EAAE,uBAAuB,CAAC,CAsBpE"}
@@ -0,0 +1,52 @@
1
+ /** Typed `ObjectBucketClaim` factory used by Rook's bucket provisioner. */
2
+ import { createResource } from '../../shared.js';
3
+ /** Evaluate the lib-bucket-provisioner ObjectBucketClaim phase. */
4
+ export function objectBucketClaimReadinessEvaluator(liveResource) {
5
+ const resource = liveResource;
6
+ const phase = resource?.status?.phase;
7
+ if (!phase) {
8
+ return {
9
+ ready: false,
10
+ reason: 'StatusMissing',
11
+ message: 'ObjectBucketClaim has no status phase yet',
12
+ };
13
+ }
14
+ if (phase === 'Bound') {
15
+ return {
16
+ ready: true,
17
+ reason: 'Bound',
18
+ message: 'ObjectBucketClaim is bound and connection resources are available',
19
+ };
20
+ }
21
+ return {
22
+ ready: false,
23
+ reason: phase,
24
+ message: `ObjectBucketClaim phase is ${phase}`,
25
+ };
26
+ }
27
+ /**
28
+ * Create an `objectbucket.io/v1alpha1` ObjectBucketClaim.
29
+ *
30
+ * On `Bound`, the Rook provisioner creates a Secret and ConfigMap with the
31
+ * same name and namespace as the claim. The Secret contains
32
+ * `AWS_ACCESS_KEY_ID` and `AWS_SECRET_ACCESS_KEY`; the ConfigMap contains
33
+ * `BUCKET_HOST`, `BUCKET_PORT`, `BUCKET_NAME`, and related endpoint data.
34
+ */
35
+ export function objectBucketClaim(config) {
36
+ return createResource({
37
+ apiVersion: 'objectbucket.io/v1alpha1',
38
+ kind: 'ObjectBucketClaim',
39
+ metadata: {
40
+ name: config.name,
41
+ ...(config.namespace && { namespace: config.namespace }),
42
+ labels: {
43
+ 'app.kubernetes.io/name': 'object-bucket-claim',
44
+ 'app.kubernetes.io/instance': config.name,
45
+ 'app.kubernetes.io/managed-by': 'typekro',
46
+ },
47
+ },
48
+ spec: config.spec,
49
+ ...(config.id && { id: config.id }),
50
+ }, { scope: 'namespaced' }).withReadinessEvaluator(objectBucketClaimReadinessEvaluator);
51
+ }
52
+ //# sourceMappingURL=object-bucket-claim.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"object-bucket-claim.js","sourceRoot":"","sources":["../../../../src/factories/rook/resources/object-bucket-claim.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAG3E,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAGjD,mEAAmE;AACnE,MAAM,UAAU,mCAAmC,CAAC,YAAqB;IACvE,MAAM,QAAQ,GAAG,YAAuE,CAAC;IACzF,MAAM,KAAK,GAAG,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC;IAEtC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO;YACL,KAAK,EAAE,KAAK;YACZ,MAAM,EAAE,eAAe;YACvB,OAAO,EAAE,2CAA2C;SACrD,CAAC;IACJ,CAAC;IAED,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC;QACtB,OAAO;YACL,KAAK,EAAE,IAAI;YACX,MAAM,EAAE,OAAO;YACf,OAAO,EAAE,mEAAmE;SAC7E,CAAC;IACJ,CAAC;IAED,OAAO;QACL,KAAK,EAAE,KAAK;QACZ,MAAM,EAAE,KAAK;QACb,OAAO,EAAE,8BAA8B,KAAK,EAAE;KAC/C,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,iBAAiB,CAC/B,MAA2C;IAE3C,OAAO,cAAc,CACnB;QACE,UAAU,EAAE,0BAA0B;QACtC,IAAI,EAAE,mBAAmB;QACzB,QAAQ,EAAE;YACR,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,GAAG,CAAC,MAAM,CAAC,SAAS,IAAI,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC;YACxD,MAAM,EAAE;gBACN,wBAAwB,EAAE,qBAAqB;gBAC/C,4BAA4B,EAAE,MAAM,CAAC,IAAI;gBACzC,8BAA8B,EAAE,SAAS;aAC1C;SACF;QACD,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,GAAG,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC;KACpC,EACD,EAAE,KAAK,EAAE,YAAY,EAAE,CACxB,CAAC,sBAAsB,CAAC,mCAAmC,CAG3D,CAAC;AACJ,CAAC"}
@@ -0,0 +1,307 @@
1
+ /**
2
+ * Rook/Ceph object-storage integration types.
3
+ *
4
+ * Config types are inferred from ArkType schemas. The typed surface is
5
+ * intentionally scoped to Rook's S3-compatible RGW path: operator bootstrap,
6
+ * local CephObjectStore pools/gateways, users, bucket StorageClasses, and
7
+ * ObjectBucketClaims.
8
+ *
9
+ * @see https://rook.io/docs/rook/latest/Storage-Configuration/Object-Storage-RGW/object-storage/
10
+ */
11
+ import type { TypeKroChartValue } from '../../core/types/common.js';
12
+ /** Rook operator bootstrap configuration. */
13
+ export declare const RookCephOperatorBootstrapConfigSchema: import("arktype/internal/variants/object.ts").ObjectType<{
14
+ name: string;
15
+ namespace?: string;
16
+ version?: string;
17
+ repositoryName?: string;
18
+ repositoryNamespace?: string;
19
+ repositoryUrl?: string;
20
+ logLevel?: "ERROR" | "WARNING" | "INFO" | "DEBUG";
21
+ enableOBCWatchOperatorNamespace?: boolean;
22
+ obcProvisionerNamePrefix?: string;
23
+ obcAllowAdditionalConfigFields?: string;
24
+ resources?: {
25
+ requests?: {
26
+ cpu?: string;
27
+ memory?: string;
28
+ };
29
+ limits?: {
30
+ cpu?: string;
31
+ memory?: string;
32
+ };
33
+ };
34
+ values?: Record<string, unknown>;
35
+ }, {}>;
36
+ export type RookCephOperatorBootstrapConfig = typeof RookCephOperatorBootstrapConfigSchema.infer;
37
+ /** Observable Rook operator bootstrap status. */
38
+ export declare const RookCephOperatorBootstrapStatusSchema: import("arktype/internal/variants/object.ts").ObjectType<{
39
+ ready: boolean;
40
+ phase: "Ready" | "Installing";
41
+ failed: boolean;
42
+ version?: string;
43
+ }, {}>;
44
+ export type RookCephOperatorBootstrapStatus = typeof RookCephOperatorBootstrapStatusSchema.infer;
45
+ /** Typed local-RGW CephObjectStore configuration (`ceph.rook.io/v1`). */
46
+ export declare const CephObjectStoreConfigSchema: import("arktype/internal/variants/object.ts").ObjectType<{
47
+ name: string;
48
+ spec: {
49
+ metadataPool: {
50
+ replicated: {
51
+ size: number;
52
+ requireSafeReplicaSize?: boolean;
53
+ targetSizeRatio?: number;
54
+ replicasPerFailureDomain?: number;
55
+ subFailureDomain?: string;
56
+ };
57
+ failureDomain?: string;
58
+ crushRoot?: string;
59
+ deviceClass?: string;
60
+ enableCrushUpdates?: boolean;
61
+ parameters?: Record<string, string>;
62
+ application?: string;
63
+ };
64
+ dataPool: {
65
+ replicated?: {
66
+ size: number;
67
+ requireSafeReplicaSize?: boolean;
68
+ targetSizeRatio?: number;
69
+ replicasPerFailureDomain?: number;
70
+ subFailureDomain?: string;
71
+ };
72
+ erasureCoded?: {
73
+ dataChunks: number;
74
+ codingChunks: number;
75
+ algorithm?: "isa" | "jerasure";
76
+ stripeUnit?: "4Ki" | "16Ki" | "64Ki" | "256Ki" | "1Mi";
77
+ };
78
+ failureDomain?: string;
79
+ crushRoot?: string;
80
+ deviceClass?: string;
81
+ enableCrushUpdates?: boolean;
82
+ parameters?: Record<string, string>;
83
+ application?: string;
84
+ };
85
+ gateway: {
86
+ port: number;
87
+ instances: number;
88
+ securePort?: number;
89
+ sslCertificateRef?: string;
90
+ caBundleRef?: string;
91
+ placement?: Record<string, unknown>;
92
+ annotations?: Record<string, string>;
93
+ labels?: Record<string, string>;
94
+ resources?: {
95
+ requests?: {
96
+ cpu?: string;
97
+ memory?: string;
98
+ };
99
+ limits?: {
100
+ cpu?: string;
101
+ memory?: string;
102
+ };
103
+ };
104
+ priorityClassName?: string;
105
+ service?: {
106
+ annotations?: Record<string, string>;
107
+ labels?: Record<string, string>;
108
+ };
109
+ };
110
+ preservePoolsOnDelete?: boolean;
111
+ healthCheck?: {
112
+ readinessProbe?: {
113
+ disabled?: boolean;
114
+ };
115
+ startupProbe?: {
116
+ disabled?: boolean;
117
+ };
118
+ };
119
+ allowUsersInNamespaces?: string[];
120
+ hosting?: {
121
+ advertiseEndpoint?: {
122
+ dnsName: string;
123
+ port: number;
124
+ useTls: boolean;
125
+ };
126
+ dnsNames?: string[];
127
+ };
128
+ };
129
+ namespace?: string;
130
+ id?: string;
131
+ }, {}>;
132
+ export type CephObjectStoreConfig = typeof CephObjectStoreConfigSchema.infer;
133
+ /** Status condition emitted by Rook CRDs. */
134
+ export interface RookCondition {
135
+ type: string;
136
+ status: string;
137
+ reason?: string;
138
+ message?: string;
139
+ lastTransitionTime?: string;
140
+ }
141
+ /** Observable CephObjectStore status. */
142
+ export interface CephObjectStoreStatus {
143
+ replicas?: number;
144
+ selector?: string;
145
+ phase?: 'Connecting' | 'Connected' | 'Progressing' | 'Ready' | 'Failure' | 'Deleting' | string;
146
+ message?: string;
147
+ endpoints?: {
148
+ insecure?: string[];
149
+ secure?: string[];
150
+ };
151
+ info?: Record<string, string>;
152
+ conditions?: RookCondition[];
153
+ observedGeneration?: number;
154
+ }
155
+ /** Typed CephObjectStoreUser configuration (`ceph.rook.io/v1`). */
156
+ export declare const CephObjectStoreUserConfigSchema: import("arktype/internal/variants/object.ts").ObjectType<{
157
+ name: string;
158
+ spec: {
159
+ store: string;
160
+ displayName?: string;
161
+ capabilities?: {
162
+ user?: "*" | "read" | "write" | "read, write";
163
+ users?: "*" | "read" | "write" | "read, write";
164
+ bucket?: "*" | "read" | "write" | "read, write";
165
+ buckets?: "*" | "read" | "write" | "read, write";
166
+ metadata?: "*" | "read" | "write" | "read, write";
167
+ usage?: "*" | "read" | "write" | "read, write";
168
+ zone?: "*" | "read" | "write" | "read, write";
169
+ roles?: "*" | "read" | "write" | "read, write";
170
+ info?: "*" | "read" | "write" | "read, write";
171
+ 'amz-cache'?: "*" | "read" | "write" | "read, write";
172
+ bilog?: "*" | "read" | "write" | "read, write";
173
+ mdlog?: "*" | "read" | "write" | "read, write";
174
+ datalog?: "*" | "read" | "write" | "read, write";
175
+ 'user-policy'?: "*" | "read" | "write" | "read, write";
176
+ 'oidc-provider'?: "*" | "read" | "write" | "read, write";
177
+ ratelimit?: "*" | "read" | "write" | "read, write";
178
+ };
179
+ quotas?: {
180
+ maxBuckets?: number;
181
+ maxSize?: string;
182
+ maxObjects?: number;
183
+ };
184
+ keys?: {
185
+ accessKeyRef: {
186
+ name: string;
187
+ key: string;
188
+ optional?: boolean;
189
+ };
190
+ secretKeyRef: {
191
+ name: string;
192
+ key: string;
193
+ optional?: boolean;
194
+ };
195
+ }[];
196
+ clusterNamespace?: string;
197
+ opMask?: ("delete" | "read" | "write")[];
198
+ accountRef?: {
199
+ name: string;
200
+ };
201
+ };
202
+ namespace?: string;
203
+ id?: string;
204
+ }, {}>;
205
+ export type CephObjectStoreUserConfig = typeof CephObjectStoreUserConfigSchema.infer;
206
+ /** Observable CephObjectStoreUser status. */
207
+ export interface CephObjectStoreUserStatus {
208
+ phase?: string;
209
+ info?: Record<string, string>;
210
+ observedGeneration?: number;
211
+ keys?: Array<{
212
+ name?: string;
213
+ namespace?: string;
214
+ uid?: string;
215
+ resourceVersion?: string;
216
+ }>;
217
+ }
218
+ /** ObjectBucketClaim config; fixed and generated bucket names are mutually exclusive. */
219
+ export declare const ObjectBucketClaimConfigSchema: import("arktype/internal/variants/object.ts").ObjectType<{
220
+ name: string;
221
+ spec: {
222
+ storageClassName: string;
223
+ bucketName?: string;
224
+ generateBucketName?: string;
225
+ additionalConfig?: Record<string, string>;
226
+ };
227
+ namespace?: string;
228
+ id?: string;
229
+ }, {}>;
230
+ export type ObjectBucketClaimConfig = typeof ObjectBucketClaimConfigSchema.infer;
231
+ /** ObjectBucketClaim lifecycle phase from lib-bucket-provisioner. */
232
+ export type ObjectBucketClaimPhase = 'Pending' | 'Bound' | 'Released' | 'Failed';
233
+ /** Observable ObjectBucketClaim status. */
234
+ export interface ObjectBucketClaimStatus {
235
+ phase?: ObjectBucketClaimPhase;
236
+ }
237
+ /** Cluster-scoped Rook bucket StorageClass configuration. */
238
+ export declare const RookBucketStorageClassConfigSchema: import("arktype/internal/variants/object.ts").ObjectType<{
239
+ name: string;
240
+ objectStoreName: string;
241
+ objectStoreNamespace: string;
242
+ operatorNamespace: string;
243
+ provisionerNamePrefix?: string;
244
+ reclaimPolicy?: "Delete" | "Retain";
245
+ existingBucketName?: string;
246
+ labels?: Record<string, string>;
247
+ annotations?: Record<string, string>;
248
+ id?: string;
249
+ }, {}>;
250
+ export type RookBucketStorageClassConfig = typeof RookBucketStorageClassConfigSchema.infer;
251
+ /** App-owned bucket claim composition configuration. */
252
+ export declare const RookObjectStorageClaimConfigSchema: import("arktype/internal/variants/object.ts").ObjectType<{
253
+ name: string;
254
+ storageClassName: string;
255
+ namespace?: string;
256
+ bucket?: {
257
+ name: string;
258
+ mode: "fixed" | "generated";
259
+ };
260
+ maxObjects?: string;
261
+ maxSize?: string;
262
+ }, {}>;
263
+ export type RookObjectStorageClaimConfig = typeof RookObjectStorageClaimConfigSchema.infer;
264
+ /** Stable binding contract for an app-owned Rook ObjectBucketClaim. */
265
+ export declare const RookObjectStorageClaimStatusSchema: import("arktype/internal/variants/object.ts").ObjectType<{
266
+ ready: boolean;
267
+ phase: "Failed" | "Pending" | "Bound" | "Released";
268
+ claimName: string;
269
+ credentialsSecretName: string;
270
+ connectionConfigMapName: string;
271
+ storageClassName: string;
272
+ }, {}>;
273
+ export type RookObjectStorageClaimStatus = typeof RookObjectStorageClaimStatusSchema.infer;
274
+ /** Flux HelmRepository wrapper configuration. */
275
+ export declare const RookCephHelmRepositoryConfigSchema: import("arktype/internal/variants/object.ts").ObjectType<{
276
+ name?: string;
277
+ namespace?: string;
278
+ url?: string;
279
+ interval?: string;
280
+ id?: string;
281
+ }, {}>;
282
+ export type RookCephHelmRepositoryConfig = typeof RookCephHelmRepositoryConfigSchema.infer;
283
+ /** Flux HelmRelease wrapper configuration. */
284
+ export declare const RookCephHelmReleaseConfigSchema: import("arktype/internal/variants/object.ts").ObjectType<{
285
+ name: string;
286
+ namespace?: string;
287
+ version?: string;
288
+ repositoryName?: string;
289
+ repositoryNamespace?: string;
290
+ repositoryUrl?: string;
291
+ values?: Record<string, unknown>;
292
+ id?: string;
293
+ }, {}>;
294
+ export type RookCephHelmReleaseConfig = Omit<typeof RookCephHelmReleaseConfigSchema.infer, 'values'> & {
295
+ values?: TypeKroChartValue<Record<string, unknown>>;
296
+ };
297
+ /** Shared HelmRepository singleton spec. */
298
+ export declare const RookCephHelmRepositorySingletonSpecSchema: import("arktype/internal/variants/object.ts").ObjectType<{
299
+ name: string;
300
+ namespace: string;
301
+ url: string;
302
+ }, {}>;
303
+ /** Shared HelmRepository singleton status. */
304
+ export declare const RookCephHelmRepositorySingletonStatusSchema: import("arktype/internal/variants/object.ts").ObjectType<{
305
+ ready: boolean;
306
+ }, {}>;
307
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/factories/rook/types.ts"],"names":[],"mappings":"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"}