typekro 0.24.0 → 0.25.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 (182) 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/kro-factory.d.ts +2 -0
  10. package/dist/core/deployment/kro-factory.d.ts.map +1 -1
  11. package/dist/core/deployment/kro-factory.js +47 -11
  12. package/dist/core/deployment/kro-factory.js.map +1 -1
  13. package/dist/core/deployment/kro-instance-safety.d.ts +24 -0
  14. package/dist/core/deployment/kro-instance-safety.d.ts.map +1 -0
  15. package/dist/core/deployment/kro-instance-safety.js +157 -0
  16. package/dist/core/deployment/kro-instance-safety.js.map +1 -0
  17. package/dist/core/deployment/readiness-waiter.d.ts.map +1 -1
  18. package/dist/core/deployment/readiness-waiter.js +11 -0
  19. package/dist/core/deployment/readiness-waiter.js.map +1 -1
  20. package/dist/core/deployment/schema-cel-evaluator.d.ts +5 -0
  21. package/dist/core/deployment/schema-cel-evaluator.d.ts.map +1 -0
  22. package/dist/core/deployment/schema-cel-evaluator.js +36 -0
  23. package/dist/core/deployment/schema-cel-evaluator.js.map +1 -0
  24. package/dist/core/deployment/singleton-gitops.d.ts.map +1 -1
  25. package/dist/core/deployment/singleton-gitops.js +9 -2
  26. package/dist/core/deployment/singleton-gitops.js.map +1 -1
  27. package/dist/core/serialization/core.d.ts.map +1 -1
  28. package/dist/core/serialization/core.js +17 -4
  29. package/dist/core/serialization/core.js.map +1 -1
  30. package/dist/core/serialization/schema.d.ts.map +1 -1
  31. package/dist/core/serialization/schema.js +19 -4
  32. package/dist/core/serialization/schema.js.map +1 -1
  33. package/dist/core/serialization/yaml.d.ts.map +1 -1
  34. package/dist/core/serialization/yaml.js +15 -1
  35. package/dist/core/serialization/yaml.js.map +1 -1
  36. package/dist/core/types/kubernetes.d.ts +9 -0
  37. package/dist/core/types/kubernetes.d.ts.map +1 -1
  38. package/dist/core/types/serialization.d.ts +9 -0
  39. package/dist/core/types/serialization.d.ts.map +1 -1
  40. package/dist/factories/clickhouse/compositions/clickhouse-cluster.d.ts.map +1 -1
  41. package/dist/factories/clickhouse/compositions/clickhouse-cluster.js +38 -26
  42. package/dist/factories/clickhouse/compositions/clickhouse-cluster.js.map +1 -1
  43. package/dist/factories/clickhouse/compositions/clickhouse-operator-bootstrap.d.ts +1 -1
  44. package/dist/factories/clickhouse/compositions/clickhouse-operator-bootstrap.js +1 -1
  45. package/dist/factories/clickhouse/index.d.ts +4 -1
  46. package/dist/factories/clickhouse/index.d.ts.map +1 -1
  47. package/dist/factories/clickhouse/index.js +4 -1
  48. package/dist/factories/clickhouse/index.js.map +1 -1
  49. package/dist/factories/clickhouse/types.d.ts +30 -19
  50. package/dist/factories/clickhouse/types.d.ts.map +1 -1
  51. package/dist/factories/clickhouse/types.js.map +1 -1
  52. package/dist/factories/clickstack/compositions/clickstack-bootstrap.d.ts +1 -1
  53. package/dist/factories/clickstack/compositions/clickstack-bootstrap.d.ts.map +1 -1
  54. package/dist/factories/clickstack/compositions/clickstack-bootstrap.js +21 -15
  55. package/dist/factories/clickstack/compositions/clickstack-bootstrap.js.map +1 -1
  56. package/dist/factories/clickstack/compositions/k8s-telemetry.d.ts +1 -1
  57. package/dist/factories/clickstack/compositions/k8s-telemetry.js +1 -1
  58. package/dist/factories/clickstack/index.d.ts +1 -1
  59. package/dist/factories/clickstack/index.js +1 -1
  60. package/dist/factories/clickstack/types.d.ts +4 -2
  61. package/dist/factories/clickstack/types.d.ts.map +1 -1
  62. package/dist/factories/clickstack/types.js +4 -2
  63. package/dist/factories/clickstack/types.js.map +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 +1 -0
  71. package/dist/factories/index.d.ts.map +1 -1
  72. package/dist/factories/index.js +4 -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/ory/compositions/ory-identity-stack.d.ts +1 -1
  82. package/dist/factories/ory/types.d.ts +2 -2
  83. package/dist/factories/rook/compositions/index.d.ts +4 -0
  84. package/dist/factories/rook/compositions/index.d.ts.map +1 -0
  85. package/dist/factories/rook/compositions/index.js +4 -0
  86. package/dist/factories/rook/compositions/index.js.map +1 -0
  87. package/dist/factories/rook/compositions/object-storage-claim.d.ts +32 -0
  88. package/dist/factories/rook/compositions/object-storage-claim.d.ts.map +1 -0
  89. package/dist/factories/rook/compositions/object-storage-claim.js +63 -0
  90. package/dist/factories/rook/compositions/object-storage-claim.js.map +1 -0
  91. package/dist/factories/rook/compositions/rook-ceph-helm-repository.d.ts +12 -0
  92. package/dist/factories/rook/compositions/rook-ceph-helm-repository.d.ts.map +1 -0
  93. package/dist/factories/rook/compositions/rook-ceph-helm-repository.js +25 -0
  94. package/dist/factories/rook/compositions/rook-ceph-helm-repository.js.map +1 -0
  95. package/dist/factories/rook/compositions/rook-ceph-operator-bootstrap.d.ts +2 -0
  96. package/dist/factories/rook/compositions/rook-ceph-operator-bootstrap.d.ts.map +1 -0
  97. package/dist/factories/rook/compositions/rook-ceph-operator-bootstrap.js +2 -0
  98. package/dist/factories/rook/compositions/rook-ceph-operator-bootstrap.js.map +1 -0
  99. package/dist/factories/rook/compositions/rook-ceph-operator-installation.d.ts +67 -0
  100. package/dist/factories/rook/compositions/rook-ceph-operator-installation.d.ts.map +1 -0
  101. package/dist/factories/rook/compositions/rook-ceph-operator-installation.js +71 -0
  102. package/dist/factories/rook/compositions/rook-ceph-operator-installation.js.map +1 -0
  103. package/dist/factories/rook/index.d.ts +15 -0
  104. package/dist/factories/rook/index.d.ts.map +1 -0
  105. package/dist/factories/rook/index.js +15 -0
  106. package/dist/factories/rook/index.js.map +1 -0
  107. package/dist/factories/rook/resources/bucket-storage-class.d.ts +12 -0
  108. package/dist/factories/rook/resources/bucket-storage-class.d.ts.map +1 -0
  109. package/dist/factories/rook/resources/bucket-storage-class.js +29 -0
  110. package/dist/factories/rook/resources/bucket-storage-class.js.map +1 -0
  111. package/dist/factories/rook/resources/ceph-object-store-user.d.ts +14 -0
  112. package/dist/factories/rook/resources/ceph-object-store-user.d.ts.map +1 -0
  113. package/dist/factories/rook/resources/ceph-object-store-user.js +42 -0
  114. package/dist/factories/rook/resources/ceph-object-store-user.js.map +1 -0
  115. package/dist/factories/rook/resources/ceph-object-store.d.ts +27 -0
  116. package/dist/factories/rook/resources/ceph-object-store.d.ts.map +1 -0
  117. package/dist/factories/rook/resources/ceph-object-store.js +56 -0
  118. package/dist/factories/rook/resources/ceph-object-store.js.map +1 -0
  119. package/dist/factories/rook/resources/helm.d.ts +18 -0
  120. package/dist/factories/rook/resources/helm.d.ts.map +1 -0
  121. package/dist/factories/rook/resources/helm.js +45 -0
  122. package/dist/factories/rook/resources/helm.js.map +1 -0
  123. package/dist/factories/rook/resources/index.d.ts +6 -0
  124. package/dist/factories/rook/resources/index.d.ts.map +1 -0
  125. package/dist/factories/rook/resources/index.js +6 -0
  126. package/dist/factories/rook/resources/index.js.map +1 -0
  127. package/dist/factories/rook/resources/object-bucket-claim.d.ts +15 -0
  128. package/dist/factories/rook/resources/object-bucket-claim.d.ts.map +1 -0
  129. package/dist/factories/rook/resources/object-bucket-claim.js +52 -0
  130. package/dist/factories/rook/resources/object-bucket-claim.js.map +1 -0
  131. package/dist/factories/rook/types.d.ts +307 -0
  132. package/dist/factories/rook/types.d.ts.map +1 -0
  133. package/dist/factories/rook/types.js +239 -0
  134. package/dist/factories/rook/types.js.map +1 -0
  135. package/dist/factories/rook/utils/helm-values-mapper.d.ts +33 -0
  136. package/dist/factories/rook/utils/helm-values-mapper.d.ts.map +1 -0
  137. package/dist/factories/rook/utils/helm-values-mapper.js +60 -0
  138. package/dist/factories/rook/utils/helm-values-mapper.js.map +1 -0
  139. package/dist/factories/rook/utils/index.d.ts +2 -0
  140. package/dist/factories/rook/utils/index.d.ts.map +1 -0
  141. package/dist/factories/rook/utils/index.js +2 -0
  142. package/dist/factories/rook/utils/index.js.map +1 -0
  143. package/dist/factories/valkey/compositions/index.d.ts +2 -1
  144. package/dist/factories/valkey/compositions/index.d.ts.map +1 -1
  145. package/dist/factories/valkey/compositions/index.js +2 -1
  146. package/dist/factories/valkey/compositions/index.js.map +1 -1
  147. package/dist/factories/valkey/compositions/valkey-bootstrap.d.ts +21 -2
  148. package/dist/factories/valkey/compositions/valkey-bootstrap.d.ts.map +1 -1
  149. package/dist/factories/valkey/compositions/valkey-bootstrap.js +26 -136
  150. package/dist/factories/valkey/compositions/valkey-bootstrap.js.map +1 -1
  151. package/dist/factories/valkey/compositions/valkey-helm-repository.d.ts +16 -0
  152. package/dist/factories/valkey/compositions/valkey-helm-repository.d.ts.map +1 -0
  153. package/dist/factories/valkey/compositions/valkey-helm-repository.js +29 -0
  154. package/dist/factories/valkey/compositions/valkey-helm-repository.js.map +1 -0
  155. package/dist/factories/valkey/index.d.ts +6 -3
  156. package/dist/factories/valkey/index.d.ts.map +1 -1
  157. package/dist/factories/valkey/index.js +6 -3
  158. package/dist/factories/valkey/index.js.map +1 -1
  159. package/dist/factories/valkey/resources/helm.d.ts.map +1 -1
  160. package/dist/factories/valkey/resources/helm.js +13 -11
  161. package/dist/factories/valkey/resources/helm.js.map +1 -1
  162. package/dist/factories/valkey/types.d.ts +29 -16
  163. package/dist/factories/valkey/types.d.ts.map +1 -1
  164. package/dist/factories/valkey/types.js +34 -22
  165. package/dist/factories/valkey/types.js.map +1 -1
  166. package/dist/factories/valkey/utils/helm-values-mapper.d.ts +6 -1
  167. package/dist/factories/valkey/utils/helm-values-mapper.d.ts.map +1 -1
  168. package/dist/factories/valkey/utils/helm-values-mapper.js +52 -19
  169. package/dist/factories/valkey/utils/helm-values-mapper.js.map +1 -1
  170. package/dist/factories/webapp/compositions/index.d.ts +1 -1
  171. package/dist/factories/webapp/compositions/index.d.ts.map +1 -1
  172. package/dist/factories/webapp/compositions/index.js +1 -1
  173. package/dist/factories/webapp/compositions/index.js.map +1 -1
  174. package/dist/factories/webapp/compositions/web-app-with-processing.d.ts +9 -13
  175. package/dist/factories/webapp/compositions/web-app-with-processing.d.ts.map +1 -1
  176. package/dist/factories/webapp/compositions/web-app-with-processing.js +290 -278
  177. package/dist/factories/webapp/compositions/web-app-with-processing.js.map +1 -1
  178. package/dist/factories/webapp/types.d.ts +26 -7
  179. package/dist/factories/webapp/types.d.ts.map +1 -1
  180. package/dist/factories/webapp/types.js +0 -9
  181. package/dist/factories/webapp/types.js.map +1 -1
  182. package/package.json +5 -1
@@ -75,10 +75,26 @@ export function resourceGraphDefinition(rgd) {
75
75
  // 3. Check for explicit failure conditions first for faster feedback.
76
76
  const failedCondition = currentConditions.find((c) => c && c.status === 'False');
77
77
  if (status.state === 'failed' || failedCondition) {
78
+ // A graph-ACCEPTANCE failure (Kro rejected the RGD spec for THIS generation — e.g. an invalid
79
+ // resource template like a non-string env value) is TERMINAL: it never flips to accepted without
80
+ // a spec change. Signal `terminal` so the waiter fails fast with the reason instead of polling to
81
+ // the deadline (which surfaced an opaque "Delay aborted" that read like a cluster-access outage).
82
+ // Other transient `status: False` conditions stay retryable (ready:false, no terminal).
83
+ const rejected = currentConditions.find((c) => c?.status === 'False' && /accepted/i.test(c?.type ?? ''));
84
+ const cause = rejected ?? failedCondition;
85
+ if (rejected) {
86
+ rgdLogger.warn('ResourceGraphDefinition was rejected by Kro (terminal)', {
87
+ name: liveRGD?.metadata?.name,
88
+ type: rejected.type,
89
+ reason: rejected.reason,
90
+ message: rejected.message,
91
+ });
92
+ }
78
93
  return {
79
94
  ready: false,
80
95
  reason: 'RGDProcessingFailed',
81
- message: `RGD processing failed: ${failedCondition?.message || 'Unknown error'}`,
96
+ message: `RGD processing failed: ${cause?.message || 'Unknown error'}`,
97
+ ...(rejected ? { terminal: true } : {}),
82
98
  details: { state: status.state, generation, conditions },
83
99
  };
84
100
  }
@@ -1 +1 @@
1
- {"version":3,"file":"resource-graph-definition.js","sourceRoot":"","sources":["../../../src/factories/kro/resource-graph-definition.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resource-graph-definition.js","sourceRoot":"","sources":["../../../src/factories/kro/resource-graph-definition.ts"],"names":[],"mappings":"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"}
@@ -1892,7 +1892,7 @@ export declare const oryIdentityStack: import("../../../index.js").CallableCompo
1892
1892
  oauth2Clients?: {
1893
1893
  name: string;
1894
1894
  spec: {
1895
- grantTypes: ("client_credentials" | "authorization_code" | "implicit" | "refresh_token")[];
1895
+ grantTypes: ("implicit" | "client_credentials" | "authorization_code" | "refresh_token")[];
1896
1896
  secretName: string;
1897
1897
  accessTokenStrategy?: "opaque" | "jwt";
1898
1898
  allowedCorsOrigins?: string[];
@@ -2596,7 +2596,7 @@ export declare const OryIdentityStackConfigSchema: import("arktype/internal/vari
2596
2596
  oauth2Clients?: {
2597
2597
  name: string;
2598
2598
  spec: {
2599
- grantTypes: ("client_credentials" | "authorization_code" | "implicit" | "refresh_token")[];
2599
+ grantTypes: ("implicit" | "client_credentials" | "authorization_code" | "refresh_token")[];
2600
2600
  secretName: string;
2601
2601
  accessTokenStrategy?: "opaque" | "jwt";
2602
2602
  allowedCorsOrigins?: string[];
@@ -4575,7 +4575,7 @@ export declare const OryPlatformStackConfigSchema: import("arktype/internal/vari
4575
4575
  oauth2Clients?: {
4576
4576
  name: string;
4577
4577
  spec: {
4578
- grantTypes: ("client_credentials" | "authorization_code" | "implicit" | "refresh_token")[];
4578
+ grantTypes: ("implicit" | "client_credentials" | "authorization_code" | "refresh_token")[];
4579
4579
  secretName: string;
4580
4580
  accessTokenStrategy?: "opaque" | "jwt";
4581
4581
  allowedCorsOrigins?: string[];
@@ -0,0 +1,4 @@
1
+ export * from './object-storage-claim.js';
2
+ export * from './rook-ceph-helm-repository.js';
3
+ export * from './rook-ceph-operator-bootstrap.js';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/factories/rook/compositions/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC;AAC1C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,mCAAmC,CAAC"}
@@ -0,0 +1,4 @@
1
+ export * from './object-storage-claim.js';
2
+ export * from './rook-ceph-helm-repository.js';
3
+ export * from './rook-ceph-operator-bootstrap.js';
4
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/factories/rook/compositions/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC;AAC1C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,mCAAmC,CAAC"}
@@ -0,0 +1,32 @@
1
+ /** App-owned ObjectBucketClaim composition and S3 binding contract. */
2
+ /**
3
+ * Claim an S3-compatible bucket from a platform-provided StorageClass.
4
+ *
5
+ * The graph owns only its namespaced ObjectBucketClaim. Rook creates a Secret
6
+ * and ConfigMap using the claim name; the returned status exposes those stable
7
+ * binding names without trying to read or own the generated resources. The
8
+ * binding names are anchored to the OBC resource and hydrated from the live
9
+ * direct deployment.
10
+ * ObjectBucketClaims are controller-mutated resources and therefore direct-only.
11
+ * KRO's continuous server-side apply races the OBC provisioner's metadata and
12
+ * status updates, even for fixed-name buckets.
13
+ */
14
+ export declare const rookObjectStorageClaim: import("../../../index.js").CallableComposition<{
15
+ name: string;
16
+ storageClassName: string;
17
+ namespace?: string;
18
+ bucket?: {
19
+ name: string;
20
+ mode: "fixed" | "generated";
21
+ };
22
+ maxObjects?: string;
23
+ maxSize?: string;
24
+ }, {
25
+ ready: boolean;
26
+ phase: "Failed" | "Pending" | "Bound" | "Released";
27
+ claimName: string;
28
+ credentialsSecretName: string;
29
+ connectionConfigMapName: string;
30
+ storageClassName: string;
31
+ }>;
32
+ //# sourceMappingURL=object-storage-claim.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"object-storage-claim.d.ts","sourceRoot":"","sources":["../../../../src/factories/rook/compositions/object-storage-claim.ts"],"names":[],"mappings":"AAAA,uEAAuE;AAYvE;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;EAsDlC,CAAC"}
@@ -0,0 +1,63 @@
1
+ /** App-owned ObjectBucketClaim composition and S3 binding contract. */
2
+ import { kubernetesComposition } from '../../../core/composition/imperative.js';
3
+ import { Cel } from '../../../core/references/cel.js';
4
+ import { isKubernetesRef } from '../../../utils/type-guards.js';
5
+ import { objectBucketClaim } from '../resources/object-bucket-claim.js';
6
+ import { RookObjectStorageClaimConfigSchema, RookObjectStorageClaimStatusSchema, } from '../types.js';
7
+ /**
8
+ * Claim an S3-compatible bucket from a platform-provided StorageClass.
9
+ *
10
+ * The graph owns only its namespaced ObjectBucketClaim. Rook creates a Secret
11
+ * and ConfigMap using the claim name; the returned status exposes those stable
12
+ * binding names without trying to read or own the generated resources. The
13
+ * binding names are anchored to the OBC resource and hydrated from the live
14
+ * direct deployment.
15
+ * ObjectBucketClaims are controller-mutated resources and therefore direct-only.
16
+ * KRO's continuous server-side apply races the OBC provisioner's metadata and
17
+ * status updates, even for fixed-name buckets.
18
+ */
19
+ export const rookObjectStorageClaim = kubernetesComposition({
20
+ name: 'rook-object-storage-claim',
21
+ kind: 'RookObjectStorageClaim',
22
+ spec: RookObjectStorageClaimConfigSchema,
23
+ status: RookObjectStorageClaimStatusSchema,
24
+ }, (spec) => {
25
+ const bucketFields = !spec.bucket
26
+ ? {}
27
+ : isKubernetesRef(spec.bucket.mode)
28
+ ? {
29
+ bucketName: Cel.expr('has(schema.spec.bucket) && schema.spec.bucket.mode == "fixed" ? dyn(schema.spec.bucket.name) : omit()'),
30
+ generateBucketName: Cel.expr('has(schema.spec.bucket) && schema.spec.bucket.mode == "generated" ? dyn(schema.spec.bucket.name) : omit()'),
31
+ }
32
+ : spec.bucket.mode === 'fixed'
33
+ ? { bucketName: spec.bucket.name }
34
+ : { generateBucketName: spec.bucket.name };
35
+ const claim = objectBucketClaim({
36
+ name: spec.name,
37
+ namespace: spec.namespace,
38
+ spec: {
39
+ storageClassName: spec.storageClassName,
40
+ ...bucketFields,
41
+ additionalConfig: {
42
+ ...(spec.maxObjects && { maxObjects: spec.maxObjects }),
43
+ ...(spec.maxSize && { maxSize: spec.maxSize }),
44
+ },
45
+ },
46
+ id: 'objectBucketClaim',
47
+ });
48
+ const claimNameStatus = isKubernetesRef(claim.metadata.name)
49
+ ? Cel.expr(claim.metadata.name)
50
+ : claim.metadata.name;
51
+ const storageClassNameStatus = isKubernetesRef(claim.spec.storageClassName)
52
+ ? Cel.expr(claim.spec.storageClassName)
53
+ : claim.spec.storageClassName;
54
+ return {
55
+ ready: claim.status.phase === 'Bound',
56
+ phase: claim.status.phase,
57
+ claimName: claimNameStatus,
58
+ credentialsSecretName: claimNameStatus,
59
+ connectionConfigMapName: claimNameStatus,
60
+ storageClassName: storageClassNameStatus,
61
+ };
62
+ }, { supportedModes: ['direct'] });
63
+ //# sourceMappingURL=object-storage-claim.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"object-storage-claim.js","sourceRoot":"","sources":["../../../../src/factories/rook/compositions/object-storage-claim.ts"],"names":[],"mappings":"AAAA,uEAAuE;AAEvE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAChF,OAAO,EAAE,GAAG,EAAE,MAAM,iCAAiC,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AACxE,OAAO,EAEL,kCAAkC,EAClC,kCAAkC,GACnC,MAAM,aAAa,CAAC;AAErB;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,qBAAqB,CACzD;IACE,IAAI,EAAE,2BAA2B;IACjC,IAAI,EAAE,wBAAwB;IAC9B,IAAI,EAAE,kCAAkC;IACxC,MAAM,EAAE,kCAAkC;CAC3C,EACD,CAAC,IAAkC,EAAE,EAAE;IACrC,MAAM,YAAY,GAAG,CAAC,IAAI,CAAC,MAAM;QAC/B,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;YACjC,CAAC,CAAC;gBACE,UAAU,EAAE,GAAG,CAAC,IAAI,CAClB,uGAAuG,CACxG;gBACD,kBAAkB,EAAE,GAAG,CAAC,IAAI,CAC1B,2GAA2G,CAC5G;aACF;YACH,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,OAAO;gBAC5B,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;gBAClC,CAAC,CAAC,EAAE,kBAAkB,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;IAEjD,MAAM,KAAK,GAAG,iBAAiB,CAAC;QAC9B,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,IAAI,EAAE;YACJ,gBAAgB,EAAE,IAAI,CAAC,gBAAgB;YACvC,GAAG,YAAY;YACf,gBAAgB,EAAE;gBAChB,GAAG,CAAC,IAAI,CAAC,UAAU,IAAI,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC;gBACvD,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;aAC/C;SACF;QACD,EAAE,EAAE,mBAAmB;KACxB,CAAC,CAAC;IAEH,MAAM,eAAe,GAAG,eAAe,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC;QAC1D,CAAC,CAAC,GAAG,CAAC,IAAI,CAAS,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC;QACvC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC;IACxB,MAAM,sBAAsB,GAAG,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC;QACzE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAS,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC;QAC/C,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,gBAAgB,CAAC;IAEhC,OAAO;QACL,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,KAAK,KAAK,OAAO;QACrC,KAAK,EAAE,KAAK,CAAC,MAAM,CAAC,KAAK;QACzB,SAAS,EAAE,eAAe;QAC1B,qBAAqB,EAAE,eAAe;QACtC,uBAAuB,EAAE,eAAe;QACxC,gBAAgB,EAAE,sBAAsB;KACzC,CAAC;AACJ,CAAC,EACD,EAAE,cAAc,EAAE,CAAC,QAAQ,CAAC,EAAE,CAC/B,CAAC"}
@@ -0,0 +1,12 @@
1
+ /** Shared official Rook chart repository singleton. */
2
+ /**
3
+ * Own the cluster-wide Rook HelmRepository outside any consumer ApplySet.
4
+ */
5
+ export declare const rookCephHelmRepositoryBootstrap: import("../../../index.js").CallableComposition<{
6
+ name: string;
7
+ namespace: string;
8
+ url: string;
9
+ }, {
10
+ ready: boolean;
11
+ }>;
12
+ //# sourceMappingURL=rook-ceph-helm-repository.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rook-ceph-helm-repository.d.ts","sourceRoot":"","sources":["../../../../src/factories/rook/compositions/rook-ceph-helm-repository.ts"],"names":[],"mappings":"AAAA,uDAAuD;AAUvD;;GAEG;AACH,eAAO,MAAM,+BAA+B;;;;;;EAsB3C,CAAC"}
@@ -0,0 +1,25 @@
1
+ /** Shared official Rook chart repository singleton. */
2
+ import { kubernetesComposition } from '../../../core/composition/imperative.js';
3
+ import { Cel } from '../../../core/references/cel.js';
4
+ import { rookCephHelmRepository } from '../resources/helm.js';
5
+ import { RookCephHelmRepositorySingletonSpecSchema, RookCephHelmRepositorySingletonStatusSchema, } from '../types.js';
6
+ /**
7
+ * Own the cluster-wide Rook HelmRepository outside any consumer ApplySet.
8
+ */
9
+ export const rookCephHelmRepositoryBootstrap = kubernetesComposition({
10
+ name: 'rook-ceph-helm-repository',
11
+ kind: 'RookCephHelmRepository',
12
+ spec: RookCephHelmRepositorySingletonSpecSchema,
13
+ status: RookCephHelmRepositorySingletonStatusSchema,
14
+ }, (spec) => {
15
+ const repository = rookCephHelmRepository({
16
+ name: spec.name,
17
+ namespace: spec.namespace,
18
+ url: spec.url,
19
+ id: 'repository',
20
+ });
21
+ return {
22
+ ready: Cel.expr(repository.status.conditions, '.exists(c, c.type == "Ready" && c.status == "True")'),
23
+ };
24
+ });
25
+ //# sourceMappingURL=rook-ceph-helm-repository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rook-ceph-helm-repository.js","sourceRoot":"","sources":["../../../../src/factories/rook/compositions/rook-ceph-helm-repository.ts"],"names":[],"mappings":"AAAA,uDAAuD;AAEvD,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAChF,OAAO,EAAE,GAAG,EAAE,MAAM,iCAAiC,CAAC;AACtD,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EACL,yCAAyC,EACzC,2CAA2C,GAC5C,MAAM,aAAa,CAAC;AAErB;;GAEG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAAG,qBAAqB,CAClE;IACE,IAAI,EAAE,2BAA2B;IACjC,IAAI,EAAE,wBAAwB;IAC9B,IAAI,EAAE,yCAAyC;IAC/C,MAAM,EAAE,2CAA2C;CACpD,EACD,CAAC,IAAI,EAAE,EAAE;IACP,MAAM,UAAU,GAAG,sBAAsB,CAAC;QACxC,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,SAAS,EAAE,IAAI,CAAC,SAAS;QACzB,GAAG,EAAE,IAAI,CAAC,GAAG;QACb,EAAE,EAAE,YAAY;KACjB,CAAC,CAAC;IAEH,OAAO;QACL,KAAK,EAAE,GAAG,CAAC,IAAI,CACb,UAAU,CAAC,MAAM,CAAC,UAAU,EAC5B,qDAAqD,CACtD;KACF,CAAC;AACJ,CAAC,CACF,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { rookCephOperatorBootstrap, rookCephOperatorInstallation, } from './rook-ceph-operator-installation.js';
2
+ //# sourceMappingURL=rook-ceph-operator-bootstrap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rook-ceph-operator-bootstrap.d.ts","sourceRoot":"","sources":["../../../../src/factories/rook/compositions/rook-ceph-operator-bootstrap.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,yBAAyB,EACzB,4BAA4B,GAC7B,MAAM,sCAAsC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { rookCephOperatorBootstrap, rookCephOperatorInstallation, } from './rook-ceph-operator-installation.js';
2
+ //# sourceMappingURL=rook-ceph-operator-bootstrap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rook-ceph-operator-bootstrap.js","sourceRoot":"","sources":["../../../../src/factories/rook/compositions/rook-ceph-operator-bootstrap.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,yBAAyB,EACzB,4BAA4B,GAC7B,MAAM,sCAAsC,CAAC"}
@@ -0,0 +1,67 @@
1
+ /** Explicitly owned Rook/Ceph operator installation. */
2
+ /**
3
+ * Own a complete Rook operator installation.
4
+ *
5
+ * Use this composition only when the caller intentionally owns operator
6
+ * teardown. Shared consumers should reference `rookCephOperatorBootstrap`
7
+ * through `singleton(...)`; that owner boundary prevents consumer deletion
8
+ * from uninstalling Rook.
9
+ */
10
+ export declare const rookCephOperatorBootstrap: import("../../../index.js").CallableComposition<{
11
+ name: string;
12
+ namespace?: string;
13
+ version?: string;
14
+ repositoryName?: string;
15
+ repositoryNamespace?: string;
16
+ repositoryUrl?: string;
17
+ logLevel?: "ERROR" | "WARNING" | "INFO" | "DEBUG";
18
+ enableOBCWatchOperatorNamespace?: boolean;
19
+ obcProvisionerNamePrefix?: string;
20
+ obcAllowAdditionalConfigFields?: string;
21
+ resources?: {
22
+ requests?: {
23
+ cpu?: string;
24
+ memory?: string;
25
+ };
26
+ limits?: {
27
+ cpu?: string;
28
+ memory?: string;
29
+ };
30
+ };
31
+ values?: Record<string, unknown>;
32
+ }, {
33
+ ready: boolean;
34
+ phase: "Ready" | "Installing";
35
+ failed: boolean;
36
+ version?: string;
37
+ }>;
38
+ /** Explicit lifecycle name for code that wants to emphasize ownership. */
39
+ export declare const rookCephOperatorInstallation: import("../../../index.js").CallableComposition<{
40
+ name: string;
41
+ namespace?: string;
42
+ version?: string;
43
+ repositoryName?: string;
44
+ repositoryNamespace?: string;
45
+ repositoryUrl?: string;
46
+ logLevel?: "ERROR" | "WARNING" | "INFO" | "DEBUG";
47
+ enableOBCWatchOperatorNamespace?: boolean;
48
+ obcProvisionerNamePrefix?: string;
49
+ obcAllowAdditionalConfigFields?: string;
50
+ resources?: {
51
+ requests?: {
52
+ cpu?: string;
53
+ memory?: string;
54
+ };
55
+ limits?: {
56
+ cpu?: string;
57
+ memory?: string;
58
+ };
59
+ };
60
+ values?: Record<string, unknown>;
61
+ }, {
62
+ ready: boolean;
63
+ phase: "Ready" | "Installing";
64
+ failed: boolean;
65
+ version?: string;
66
+ }>;
67
+ //# sourceMappingURL=rook-ceph-operator-installation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rook-ceph-operator-installation.d.ts","sourceRoot":"","sources":["../../../../src/factories/rook/compositions/rook-ceph-operator-installation.ts"],"names":[],"mappings":"AAAA,wDAAwD;AAmBxD;;;;;;;GAOG;AACH,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoErC,CAAC;AAEF,0EAA0E;AAC1E,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;EAA4B,CAAC"}
@@ -0,0 +1,71 @@
1
+ /** Explicitly owned Rook/Ceph operator installation. */
2
+ import { kubernetesComposition } from '../../../core/composition/imperative.js';
3
+ import { Cel } from '../../../core/references/cel.js';
4
+ import { namespace } from '../../kubernetes/core/namespace.js';
5
+ import { DEFAULT_ROOK_CEPH_REPO_NAME, DEFAULT_ROOK_CEPH_REPO_URL, DEFAULT_ROOK_CEPH_VERSION, rookCephHelmRepository, rookCephOperatorHelmRelease, } from '../resources/helm.js';
6
+ import { RookCephOperatorBootstrapConfigSchema, RookCephOperatorBootstrapStatusSchema, } from '../types.js';
7
+ import { mapRookCephOperatorConfigToHelmValues } from '../utils/helm-values-mapper.js';
8
+ /**
9
+ * Own a complete Rook operator installation.
10
+ *
11
+ * Use this composition only when the caller intentionally owns operator
12
+ * teardown. Shared consumers should reference `rookCephOperatorBootstrap`
13
+ * through `singleton(...)`; that owner boundary prevents consumer deletion
14
+ * from uninstalling Rook.
15
+ */
16
+ export const rookCephOperatorBootstrap = kubernetesComposition({
17
+ name: 'rook-ceph-operator-bootstrap',
18
+ kind: 'RookCephOperatorBootstrap',
19
+ spec: RookCephOperatorBootstrapConfigSchema,
20
+ status: RookCephOperatorBootstrapStatusSchema,
21
+ }, (spec) => {
22
+ const resolvedNamespace = spec.namespace ?? 'rook-ceph';
23
+ const resolvedVersion = spec.version ?? DEFAULT_ROOK_CEPH_VERSION;
24
+ const repositoryName = spec.repositoryName ?? DEFAULT_ROOK_CEPH_REPO_NAME;
25
+ const repositoryNamespace = spec.repositoryNamespace ?? resolvedNamespace;
26
+ const repositoryUrl = spec.repositoryUrl ?? DEFAULT_ROOK_CEPH_REPO_URL;
27
+ namespace({
28
+ metadata: {
29
+ name: resolvedNamespace,
30
+ labels: {
31
+ 'app.kubernetes.io/name': 'rook-ceph-operator',
32
+ 'app.kubernetes.io/instance': spec.name,
33
+ 'app.kubernetes.io/version': resolvedVersion,
34
+ 'app.kubernetes.io/managed-by': 'typekro',
35
+ },
36
+ },
37
+ id: 'rookCephNamespace',
38
+ });
39
+ const _repository = rookCephHelmRepository({
40
+ name: repositoryName,
41
+ namespace: repositoryNamespace,
42
+ url: repositoryUrl,
43
+ id: 'rookCephHelmRepository',
44
+ });
45
+ const release = rookCephOperatorHelmRelease({
46
+ name: spec.name,
47
+ namespace: resolvedNamespace,
48
+ version: resolvedVersion,
49
+ repositoryName,
50
+ repositoryNamespace,
51
+ repositoryUrl,
52
+ values: mapRookCephOperatorConfigToHelmValues({
53
+ logLevel: spec.logLevel,
54
+ enableOBCWatchOperatorNamespace: spec.enableOBCWatchOperatorNamespace,
55
+ obcProvisionerNamePrefix: spec.obcProvisionerNamePrefix,
56
+ obcAllowAdditionalConfigFields: spec.obcAllowAdditionalConfigFields,
57
+ resources: spec.resources,
58
+ values: spec.values,
59
+ }),
60
+ id: 'rookCephOperatorHelmRelease',
61
+ });
62
+ return {
63
+ ready: Cel.expr(release.status.conditions, '.exists(c, c.type == "Ready" && c.status == "True")'),
64
+ phase: Cel.expr(release.status.conditions, '.exists(c, c.type == "Ready" && c.status == "True") ? "Ready" : "Installing"'),
65
+ failed: Cel.expr(release.status.conditions, '.exists(c, c.type == "Ready" && c.status == "False")'),
66
+ version: resolvedVersion,
67
+ };
68
+ });
69
+ /** Explicit lifecycle name for code that wants to emphasize ownership. */
70
+ export const rookCephOperatorInstallation = rookCephOperatorBootstrap;
71
+ //# sourceMappingURL=rook-ceph-operator-installation.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rook-ceph-operator-installation.js","sourceRoot":"","sources":["../../../../src/factories/rook/compositions/rook-ceph-operator-installation.ts"],"names":[],"mappings":"AAAA,wDAAwD;AAExD,OAAO,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAChF,OAAO,EAAE,GAAG,EAAE,MAAM,iCAAiC,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,oCAAoC,CAAC;AAC/D,OAAO,EACL,2BAA2B,EAC3B,0BAA0B,EAC1B,yBAAyB,EACzB,sBAAsB,EACtB,2BAA2B,GAC5B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAEL,qCAAqC,EACrC,qCAAqC,GACtC,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,qCAAqC,EAAE,MAAM,gCAAgC,CAAC;AAEvF;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,qBAAqB,CAC5D;IACE,IAAI,EAAE,8BAA8B;IACpC,IAAI,EAAE,2BAA2B;IACjC,IAAI,EAAE,qCAAqC;IAC3C,MAAM,EAAE,qCAAqC;CAC9C,EACD,CAAC,IAAqC,EAAE,EAAE;IACxC,MAAM,iBAAiB,GAAG,IAAI,CAAC,SAAS,IAAI,WAAW,CAAC;IACxD,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,IAAI,yBAAyB,CAAC;IAClE,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,IAAI,2BAA2B,CAAC;IAC1E,MAAM,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,IAAI,iBAAiB,CAAC;IAC1E,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,IAAI,0BAA0B,CAAC;IAEvE,SAAS,CAAC;QACR,QAAQ,EAAE;YACR,IAAI,EAAE,iBAAiB;YACvB,MAAM,EAAE;gBACN,wBAAwB,EAAE,oBAAoB;gBAC9C,4BAA4B,EAAE,IAAI,CAAC,IAAI;gBACvC,2BAA2B,EAAE,eAAe;gBAC5C,8BAA8B,EAAE,SAAS;aAC1C;SACF;QACD,EAAE,EAAE,mBAAmB;KACxB,CAAC,CAAC;IAEH,MAAM,WAAW,GAAG,sBAAsB,CAAC;QACzC,IAAI,EAAE,cAAc;QACpB,SAAS,EAAE,mBAAmB;QAC9B,GAAG,EAAE,aAAa;QAClB,EAAE,EAAE,wBAAwB;KAC7B,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,2BAA2B,CAAC;QAC1C,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,SAAS,EAAE,iBAAiB;QAC5B,OAAO,EAAE,eAAe;QACxB,cAAc;QACd,mBAAmB;QACnB,aAAa;QACb,MAAM,EAAE,qCAAqC,CAAC;YAC5C,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,+BAA+B,EAAE,IAAI,CAAC,+BAA+B;YACrE,wBAAwB,EAAE,IAAI,CAAC,wBAAwB;YACvD,8BAA8B,EAAE,IAAI,CAAC,8BAA8B;YACnE,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB,CAAC;QACF,EAAE,EAAE,6BAA6B;KAClC,CAAC,CAAC;IAEH,OAAO;QACL,KAAK,EAAE,GAAG,CAAC,IAAI,CACb,OAAO,CAAC,MAAM,CAAC,UAAU,EACzB,qDAAqD,CACtD;QACD,KAAK,EAAE,GAAG,CAAC,IAAI,CACb,OAAO,CAAC,MAAM,CAAC,UAAU,EACzB,8EAA8E,CAC/E;QACD,MAAM,EAAE,GAAG,CAAC,IAAI,CACd,OAAO,CAAC,MAAM,CAAC,UAAU,EACzB,sDAAsD,CACvD;QACD,OAAO,EAAE,eAAe;KACzB,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,0EAA0E;AAC1E,MAAM,CAAC,MAAM,4BAA4B,GAAG,yBAAyB,CAAC"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Rook/Ceph S3-compatible object-storage integration.
3
+ *
4
+ * Platform owners bootstrap Rook, create Ceph storage infrastructure, an RGW
5
+ * CephObjectStore, and bucket StorageClasses. Application graphs consume that
6
+ * capability through `rookObjectStorageClaim`, which owns only a namespaced
7
+ * ObjectBucketClaim and exposes the generated Secret/ConfigMap binding names.
8
+ *
9
+ * @module
10
+ */
11
+ export * from './compositions/index.js';
12
+ export * from './resources/index.js';
13
+ export * from './types.js';
14
+ export * from './utils/index.js';
15
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/factories/rook/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC;AACrC,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Rook/Ceph S3-compatible object-storage integration.
3
+ *
4
+ * Platform owners bootstrap Rook, create Ceph storage infrastructure, an RGW
5
+ * CephObjectStore, and bucket StorageClasses. Application graphs consume that
6
+ * capability through `rookObjectStorageClaim`, which owns only a namespaced
7
+ * ObjectBucketClaim and exposes the generated Secret/ConfigMap binding names.
8
+ *
9
+ * @module
10
+ */
11
+ export * from './compositions/index.js';
12
+ export * from './resources/index.js';
13
+ export * from './types.js';
14
+ export * from './utils/index.js';
15
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/factories/rook/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC;AACrC,cAAc,YAAY,CAAC;AAC3B,cAAc,kBAAkB,CAAC"}
@@ -0,0 +1,12 @@
1
+ /** Rook bucket-provisioner StorageClass factory. */
2
+ import type { V1StorageClass } from '@kubernetes/client-node';
3
+ import type { Composable, Enhanced } from '../../../core/types/index.js';
4
+ import type { RookBucketStorageClassConfig } from '../types.js';
5
+ /**
6
+ * Create the cluster-scoped StorageClass consumed by ObjectBucketClaims.
7
+ *
8
+ * Platform owners create this once for each object-store/lifecycle policy.
9
+ * Application graphs should reference it by name and own only their claim.
10
+ */
11
+ export declare function rookBucketStorageClass(config: Composable<RookBucketStorageClassConfig>): V1StorageClass & Enhanced<V1StorageClass, object>;
12
+ //# sourceMappingURL=bucket-storage-class.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bucket-storage-class.d.ts","sourceRoot":"","sources":["../../../../src/factories/rook/resources/bucket-storage-class.ts"],"names":[],"mappings":"AAAA,oDAAoD;AAEpD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC9D,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAEzE,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,aAAa,CAAC;AAEhE;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,UAAU,CAAC,4BAA4B,CAAC,GAC/C,cAAc,GAAG,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC,CAoBnD"}
@@ -0,0 +1,29 @@
1
+ /** Rook bucket-provisioner StorageClass factory. */
2
+ import { storageClass } from '../../kubernetes/storage/storage-class.js';
3
+ /**
4
+ * Create the cluster-scoped StorageClass consumed by ObjectBucketClaims.
5
+ *
6
+ * Platform owners create this once for each object-store/lifecycle policy.
7
+ * Application graphs should reference it by name and own only their claim.
8
+ */
9
+ export function rookBucketStorageClass(config) {
10
+ const provisionerNamePrefix = config.provisionerNamePrefix ?? config.operatorNamespace;
11
+ return storageClass({
12
+ apiVersion: 'storage.k8s.io/v1',
13
+ kind: 'StorageClass',
14
+ metadata: {
15
+ name: config.name,
16
+ ...(config.labels && { labels: config.labels }),
17
+ ...(config.annotations && { annotations: config.annotations }),
18
+ },
19
+ provisioner: `${provisionerNamePrefix}.ceph.rook.io/bucket`,
20
+ reclaimPolicy: config.reclaimPolicy ?? 'Retain',
21
+ parameters: {
22
+ objectStoreName: config.objectStoreName,
23
+ objectStoreNamespace: config.objectStoreNamespace,
24
+ ...(config.existingBucketName && { bucketName: config.existingBucketName }),
25
+ },
26
+ ...(config.id && { id: config.id }),
27
+ });
28
+ }
29
+ //# sourceMappingURL=bucket-storage-class.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bucket-storage-class.js","sourceRoot":"","sources":["../../../../src/factories/rook/resources/bucket-storage-class.ts"],"names":[],"mappings":"AAAA,oDAAoD;AAIpD,OAAO,EAAE,YAAY,EAAE,MAAM,2CAA2C,CAAC;AAGzE;;;;;GAKG;AACH,MAAM,UAAU,sBAAsB,CACpC,MAAgD;IAEhD,MAAM,qBAAqB,GAAG,MAAM,CAAC,qBAAqB,IAAI,MAAM,CAAC,iBAAiB,CAAC;IAEvF,OAAO,YAAY,CAAC;QAClB,UAAU,EAAE,mBAAmB;QAC/B,IAAI,EAAE,cAAc;QACpB,QAAQ,EAAE;YACR,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,GAAG,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;YAC/C,GAAG,CAAC,MAAM,CAAC,WAAW,IAAI,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC;SAC/D;QACD,WAAW,EAAE,GAAG,qBAAqB,sBAAsB;QAC3D,aAAa,EAAE,MAAM,CAAC,aAAa,IAAI,QAAQ;QAC/C,UAAU,EAAE;YACV,eAAe,EAAE,MAAM,CAAC,eAAe;YACvC,oBAAoB,EAAE,MAAM,CAAC,oBAAoB;YACjD,GAAG,CAAC,MAAM,CAAC,kBAAkB,IAAI,EAAE,UAAU,EAAE,MAAM,CAAC,kBAAkB,EAAE,CAAC;SAC5E;QACD,GAAG,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC;KACpC,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,14 @@
1
+ /** Typed `CephObjectStoreUser` factory for explicit RGW users. */
2
+ import type { Composable, Enhanced, ResourceStatus } from '../../../core/types/index.js';
3
+ import type { CephObjectStoreUserConfig, CephObjectStoreUserStatus } from '../types.js';
4
+ /** Evaluate Rook's authoritative user `status.phase`. */
5
+ export declare function cephObjectStoreUserReadinessEvaluator(liveResource: unknown): ResourceStatus;
6
+ /**
7
+ * Create a Rook `ceph.rook.io/v1` CephObjectStoreUser.
8
+ *
9
+ * ObjectBucketClaims normally create purpose-scoped credentials automatically;
10
+ * use this factory only when a stable, explicitly managed RGW identity is
11
+ * required.
12
+ */
13
+ export declare function cephObjectStoreUser(config: Composable<CephObjectStoreUserConfig>): Enhanced<CephObjectStoreUserConfig['spec'], CephObjectStoreUserStatus>;
14
+ //# sourceMappingURL=ceph-object-store-user.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ceph-object-store-user.d.ts","sourceRoot":"","sources":["../../../../src/factories/rook/resources/ceph-object-store-user.ts"],"names":[],"mappings":"AAAA,kEAAkE;AAElE,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAEzF,OAAO,KAAK,EAAE,yBAAyB,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAExF,yDAAyD;AACzD,wBAAgB,qCAAqC,CAAC,YAAY,EAAE,OAAO,GAAG,cAAc,CAe3F;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,UAAU,CAAC,yBAAyB,CAAC,GAC5C,QAAQ,CAAC,yBAAyB,CAAC,MAAM,CAAC,EAAE,yBAAyB,CAAC,CAsBxE"}
@@ -0,0 +1,42 @@
1
+ /** Typed `CephObjectStoreUser` factory for explicit RGW users. */
2
+ import { createResource } from '../../shared.js';
3
+ /** Evaluate Rook's authoritative user `status.phase`. */
4
+ export function cephObjectStoreUserReadinessEvaluator(liveResource) {
5
+ const resource = liveResource;
6
+ const phase = resource?.status?.phase;
7
+ if (!phase) {
8
+ return {
9
+ ready: false,
10
+ reason: 'StatusMissing',
11
+ message: 'CephObjectStoreUser has no status phase yet',
12
+ };
13
+ }
14
+ return phase === 'Ready'
15
+ ? { ready: true, reason: 'Ready', message: 'CephObjectStoreUser is ready' }
16
+ : { ready: false, reason: phase, message: `CephObjectStoreUser phase is ${phase}` };
17
+ }
18
+ /**
19
+ * Create a Rook `ceph.rook.io/v1` CephObjectStoreUser.
20
+ *
21
+ * ObjectBucketClaims normally create purpose-scoped credentials automatically;
22
+ * use this factory only when a stable, explicitly managed RGW identity is
23
+ * required.
24
+ */
25
+ export function cephObjectStoreUser(config) {
26
+ return createResource({
27
+ apiVersion: 'ceph.rook.io/v1',
28
+ kind: 'CephObjectStoreUser',
29
+ metadata: {
30
+ name: config.name,
31
+ ...(config.namespace && { namespace: config.namespace }),
32
+ labels: {
33
+ 'app.kubernetes.io/name': 'rook-ceph-object-store-user',
34
+ 'app.kubernetes.io/instance': config.name,
35
+ 'app.kubernetes.io/managed-by': 'typekro',
36
+ },
37
+ },
38
+ spec: config.spec,
39
+ ...(config.id && { id: config.id }),
40
+ }, { scope: 'namespaced' }).withReadinessEvaluator(cephObjectStoreUserReadinessEvaluator);
41
+ }
42
+ //# sourceMappingURL=ceph-object-store-user.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ceph-object-store-user.js","sourceRoot":"","sources":["../../../../src/factories/rook/resources/ceph-object-store-user.ts"],"names":[],"mappings":"AAAA,kEAAkE;AAGlE,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAGjD,yDAAyD;AACzD,MAAM,UAAU,qCAAqC,CAAC,YAAqB;IACzE,MAAM,QAAQ,GAAG,YAAyE,CAAC;IAC3F,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,6CAA6C;SACvD,CAAC;IACJ,CAAC;IAED,OAAO,KAAK,KAAK,OAAO;QACtB,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,8BAA8B,EAAE;QAC3E,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,gCAAgC,KAAK,EAAE,EAAE,CAAC;AACxF,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,mBAAmB,CACjC,MAA6C;IAE7C,OAAO,cAAc,CACnB;QACE,UAAU,EAAE,iBAAiB;QAC7B,IAAI,EAAE,qBAAqB;QAC3B,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,6BAA6B;gBACvD,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,qCAAqC,CAG7D,CAAC;AACJ,CAAC"}
@@ -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"}