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.
- package/dist/.tsbuildinfo +1 -1
- package/dist/core/composition/context.d.ts +4 -0
- package/dist/core/composition/context.d.ts.map +1 -1
- package/dist/core/composition/context.js +1 -0
- package/dist/core/composition/context.js.map +1 -1
- package/dist/core/composition/imperative.d.ts.map +1 -1
- package/dist/core/composition/imperative.js +24 -3
- package/dist/core/composition/imperative.js.map +1 -1
- package/dist/core/deployment/kro-factory.d.ts +2 -0
- package/dist/core/deployment/kro-factory.d.ts.map +1 -1
- package/dist/core/deployment/kro-factory.js +47 -11
- package/dist/core/deployment/kro-factory.js.map +1 -1
- package/dist/core/deployment/kro-instance-safety.d.ts +24 -0
- package/dist/core/deployment/kro-instance-safety.d.ts.map +1 -0
- package/dist/core/deployment/kro-instance-safety.js +157 -0
- package/dist/core/deployment/kro-instance-safety.js.map +1 -0
- package/dist/core/deployment/readiness-waiter.d.ts.map +1 -1
- package/dist/core/deployment/readiness-waiter.js +11 -0
- package/dist/core/deployment/readiness-waiter.js.map +1 -1
- package/dist/core/deployment/schema-cel-evaluator.d.ts +5 -0
- package/dist/core/deployment/schema-cel-evaluator.d.ts.map +1 -0
- package/dist/core/deployment/schema-cel-evaluator.js +36 -0
- package/dist/core/deployment/schema-cel-evaluator.js.map +1 -0
- package/dist/core/deployment/singleton-gitops.d.ts.map +1 -1
- package/dist/core/deployment/singleton-gitops.js +9 -2
- package/dist/core/deployment/singleton-gitops.js.map +1 -1
- package/dist/core/serialization/core.d.ts.map +1 -1
- package/dist/core/serialization/core.js +17 -4
- package/dist/core/serialization/core.js.map +1 -1
- package/dist/core/serialization/schema.d.ts.map +1 -1
- package/dist/core/serialization/schema.js +19 -4
- package/dist/core/serialization/schema.js.map +1 -1
- package/dist/core/serialization/yaml.d.ts.map +1 -1
- package/dist/core/serialization/yaml.js +15 -1
- package/dist/core/serialization/yaml.js.map +1 -1
- package/dist/core/types/kubernetes.d.ts +9 -0
- package/dist/core/types/kubernetes.d.ts.map +1 -1
- package/dist/core/types/serialization.d.ts +9 -0
- package/dist/core/types/serialization.d.ts.map +1 -1
- package/dist/factories/clickhouse/compositions/clickhouse-cluster.d.ts.map +1 -1
- package/dist/factories/clickhouse/compositions/clickhouse-cluster.js +38 -26
- package/dist/factories/clickhouse/compositions/clickhouse-cluster.js.map +1 -1
- package/dist/factories/clickhouse/compositions/clickhouse-operator-bootstrap.d.ts +1 -1
- package/dist/factories/clickhouse/compositions/clickhouse-operator-bootstrap.js +1 -1
- package/dist/factories/clickhouse/index.d.ts +4 -1
- package/dist/factories/clickhouse/index.d.ts.map +1 -1
- package/dist/factories/clickhouse/index.js +4 -1
- package/dist/factories/clickhouse/index.js.map +1 -1
- package/dist/factories/clickhouse/types.d.ts +30 -19
- package/dist/factories/clickhouse/types.d.ts.map +1 -1
- package/dist/factories/clickhouse/types.js.map +1 -1
- package/dist/factories/clickstack/compositions/clickstack-bootstrap.d.ts +1 -1
- package/dist/factories/clickstack/compositions/clickstack-bootstrap.d.ts.map +1 -1
- package/dist/factories/clickstack/compositions/clickstack-bootstrap.js +21 -15
- package/dist/factories/clickstack/compositions/clickstack-bootstrap.js.map +1 -1
- package/dist/factories/clickstack/compositions/k8s-telemetry.d.ts +1 -1
- package/dist/factories/clickstack/compositions/k8s-telemetry.js +1 -1
- package/dist/factories/clickstack/index.d.ts +1 -1
- package/dist/factories/clickstack/index.js +1 -1
- package/dist/factories/clickstack/types.d.ts +4 -2
- package/dist/factories/clickstack/types.d.ts.map +1 -1
- package/dist/factories/clickstack/types.js +4 -2
- package/dist/factories/clickstack/types.js.map +1 -1
- package/dist/factories/cnpg/compositions/cnpg-bootstrap.d.ts +1 -1
- package/dist/factories/cnpg/compositions/cnpg-bootstrap.js +1 -1
- package/dist/factories/cnpg/index.d.ts +1 -1
- package/dist/factories/cnpg/index.js +1 -1
- package/dist/factories/dagster/index.d.ts +1 -1
- package/dist/factories/dagster/index.js +1 -1
- package/dist/factories/index.d.ts +1 -0
- package/dist/factories/index.d.ts.map +1 -1
- package/dist/factories/index.js +4 -0
- package/dist/factories/index.js.map +1 -1
- package/dist/factories/inngest/compositions/inngest-bootstrap.d.ts +1 -1
- package/dist/factories/inngest/compositions/inngest-bootstrap.js +1 -1
- package/dist/factories/inngest/index.d.ts +1 -1
- package/dist/factories/inngest/index.js +1 -1
- package/dist/factories/kro/resource-graph-definition.d.ts.map +1 -1
- package/dist/factories/kro/resource-graph-definition.js +17 -1
- package/dist/factories/kro/resource-graph-definition.js.map +1 -1
- package/dist/factories/ory/compositions/ory-identity-stack.d.ts +1 -1
- package/dist/factories/ory/types.d.ts +2 -2
- package/dist/factories/rook/compositions/index.d.ts +4 -0
- package/dist/factories/rook/compositions/index.d.ts.map +1 -0
- package/dist/factories/rook/compositions/index.js +4 -0
- package/dist/factories/rook/compositions/index.js.map +1 -0
- package/dist/factories/rook/compositions/object-storage-claim.d.ts +32 -0
- package/dist/factories/rook/compositions/object-storage-claim.d.ts.map +1 -0
- package/dist/factories/rook/compositions/object-storage-claim.js +63 -0
- package/dist/factories/rook/compositions/object-storage-claim.js.map +1 -0
- package/dist/factories/rook/compositions/rook-ceph-helm-repository.d.ts +12 -0
- package/dist/factories/rook/compositions/rook-ceph-helm-repository.d.ts.map +1 -0
- package/dist/factories/rook/compositions/rook-ceph-helm-repository.js +25 -0
- package/dist/factories/rook/compositions/rook-ceph-helm-repository.js.map +1 -0
- package/dist/factories/rook/compositions/rook-ceph-operator-bootstrap.d.ts +2 -0
- package/dist/factories/rook/compositions/rook-ceph-operator-bootstrap.d.ts.map +1 -0
- package/dist/factories/rook/compositions/rook-ceph-operator-bootstrap.js +2 -0
- package/dist/factories/rook/compositions/rook-ceph-operator-bootstrap.js.map +1 -0
- package/dist/factories/rook/compositions/rook-ceph-operator-installation.d.ts +67 -0
- package/dist/factories/rook/compositions/rook-ceph-operator-installation.d.ts.map +1 -0
- package/dist/factories/rook/compositions/rook-ceph-operator-installation.js +71 -0
- package/dist/factories/rook/compositions/rook-ceph-operator-installation.js.map +1 -0
- package/dist/factories/rook/index.d.ts +15 -0
- package/dist/factories/rook/index.d.ts.map +1 -0
- package/dist/factories/rook/index.js +15 -0
- package/dist/factories/rook/index.js.map +1 -0
- package/dist/factories/rook/resources/bucket-storage-class.d.ts +12 -0
- package/dist/factories/rook/resources/bucket-storage-class.d.ts.map +1 -0
- package/dist/factories/rook/resources/bucket-storage-class.js +29 -0
- package/dist/factories/rook/resources/bucket-storage-class.js.map +1 -0
- package/dist/factories/rook/resources/ceph-object-store-user.d.ts +14 -0
- package/dist/factories/rook/resources/ceph-object-store-user.d.ts.map +1 -0
- package/dist/factories/rook/resources/ceph-object-store-user.js +42 -0
- package/dist/factories/rook/resources/ceph-object-store-user.js.map +1 -0
- package/dist/factories/rook/resources/ceph-object-store.d.ts +27 -0
- package/dist/factories/rook/resources/ceph-object-store.d.ts.map +1 -0
- package/dist/factories/rook/resources/ceph-object-store.js +56 -0
- package/dist/factories/rook/resources/ceph-object-store.js.map +1 -0
- package/dist/factories/rook/resources/helm.d.ts +18 -0
- package/dist/factories/rook/resources/helm.d.ts.map +1 -0
- package/dist/factories/rook/resources/helm.js +45 -0
- package/dist/factories/rook/resources/helm.js.map +1 -0
- package/dist/factories/rook/resources/index.d.ts +6 -0
- package/dist/factories/rook/resources/index.d.ts.map +1 -0
- package/dist/factories/rook/resources/index.js +6 -0
- package/dist/factories/rook/resources/index.js.map +1 -0
- package/dist/factories/rook/resources/object-bucket-claim.d.ts +15 -0
- package/dist/factories/rook/resources/object-bucket-claim.d.ts.map +1 -0
- package/dist/factories/rook/resources/object-bucket-claim.js +52 -0
- package/dist/factories/rook/resources/object-bucket-claim.js.map +1 -0
- package/dist/factories/rook/types.d.ts +307 -0
- package/dist/factories/rook/types.d.ts.map +1 -0
- package/dist/factories/rook/types.js +239 -0
- package/dist/factories/rook/types.js.map +1 -0
- package/dist/factories/rook/utils/helm-values-mapper.d.ts +33 -0
- package/dist/factories/rook/utils/helm-values-mapper.d.ts.map +1 -0
- package/dist/factories/rook/utils/helm-values-mapper.js +60 -0
- package/dist/factories/rook/utils/helm-values-mapper.js.map +1 -0
- package/dist/factories/rook/utils/index.d.ts +2 -0
- package/dist/factories/rook/utils/index.d.ts.map +1 -0
- package/dist/factories/rook/utils/index.js +2 -0
- package/dist/factories/rook/utils/index.js.map +1 -0
- package/dist/factories/valkey/compositions/index.d.ts +2 -1
- package/dist/factories/valkey/compositions/index.d.ts.map +1 -1
- package/dist/factories/valkey/compositions/index.js +2 -1
- package/dist/factories/valkey/compositions/index.js.map +1 -1
- package/dist/factories/valkey/compositions/valkey-bootstrap.d.ts +21 -2
- package/dist/factories/valkey/compositions/valkey-bootstrap.d.ts.map +1 -1
- package/dist/factories/valkey/compositions/valkey-bootstrap.js +26 -136
- package/dist/factories/valkey/compositions/valkey-bootstrap.js.map +1 -1
- package/dist/factories/valkey/compositions/valkey-helm-repository.d.ts +16 -0
- package/dist/factories/valkey/compositions/valkey-helm-repository.d.ts.map +1 -0
- package/dist/factories/valkey/compositions/valkey-helm-repository.js +29 -0
- package/dist/factories/valkey/compositions/valkey-helm-repository.js.map +1 -0
- package/dist/factories/valkey/index.d.ts +6 -3
- package/dist/factories/valkey/index.d.ts.map +1 -1
- package/dist/factories/valkey/index.js +6 -3
- package/dist/factories/valkey/index.js.map +1 -1
- package/dist/factories/valkey/resources/helm.d.ts.map +1 -1
- package/dist/factories/valkey/resources/helm.js +13 -11
- package/dist/factories/valkey/resources/helm.js.map +1 -1
- package/dist/factories/valkey/types.d.ts +29 -16
- package/dist/factories/valkey/types.d.ts.map +1 -1
- package/dist/factories/valkey/types.js +34 -22
- package/dist/factories/valkey/types.js.map +1 -1
- package/dist/factories/valkey/utils/helm-values-mapper.d.ts +6 -1
- package/dist/factories/valkey/utils/helm-values-mapper.d.ts.map +1 -1
- package/dist/factories/valkey/utils/helm-values-mapper.js +52 -19
- package/dist/factories/valkey/utils/helm-values-mapper.js.map +1 -1
- package/dist/factories/webapp/compositions/index.d.ts +1 -1
- package/dist/factories/webapp/compositions/index.d.ts.map +1 -1
- package/dist/factories/webapp/compositions/index.js +1 -1
- package/dist/factories/webapp/compositions/index.js.map +1 -1
- package/dist/factories/webapp/compositions/web-app-with-processing.d.ts +9 -13
- package/dist/factories/webapp/compositions/web-app-with-processing.d.ts.map +1 -1
- package/dist/factories/webapp/compositions/web-app-with-processing.js +290 -278
- package/dist/factories/webapp/compositions/web-app-with-processing.js.map +1 -1
- package/dist/factories/webapp/types.d.ts +26 -7
- package/dist/factories/webapp/types.d.ts.map +1 -1
- package/dist/factories/webapp/types.js +0 -9
- package/dist/factories/webapp/types.js.map +1 -1
- 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: ${
|
|
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: ("
|
|
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: ("
|
|
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: ("
|
|
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 @@
|
|
|
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 @@
|
|
|
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 @@
|
|
|
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 @@
|
|
|
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"}
|