Skip to content

Commit 1fbbe99

Browse files
committed
crd updates
1 parent c7cf5e1 commit 1fbbe99

14 files changed

+1082
-7
lines changed
Lines changed: 163 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,163 @@
1+
---
2+
apiVersion: apiextensions.k8s.io/v1
3+
kind: CustomResourceDefinition
4+
metadata:
5+
annotations:
6+
controller-gen.kubebuilder.io/version: v0.18.0
7+
name: datasinks.metrics.openmcp.cloud
8+
spec:
9+
group: metrics.openmcp.cloud
10+
names:
11+
kind: DataSink
12+
listKind: DataSinkList
13+
plural: datasinks
14+
singular: datasink
15+
scope: Namespaced
16+
versions:
17+
- additionalPrinterColumns:
18+
- jsonPath: .spec.connection.endpoint
19+
name: ENDPOINT
20+
type: string
21+
- jsonPath: .metadata.creationTimestamp
22+
name: AGE
23+
type: date
24+
name: v1alpha1
25+
schema:
26+
openAPIV3Schema:
27+
description: DataSink is the Schema for the datasinks API
28+
properties:
29+
apiVersion:
30+
description: |-
31+
APIVersion defines the versioned schema of this representation of an object.
32+
Servers should convert recognized schemas to the latest internal value, and
33+
may reject unrecognized values.
34+
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
35+
type: string
36+
kind:
37+
description: |-
38+
Kind is a string value representing the REST resource this object represents.
39+
Servers may infer this from the endpoint the client submits requests to.
40+
Cannot be updated.
41+
In CamelCase.
42+
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
43+
type: string
44+
metadata:
45+
type: object
46+
spec:
47+
description: DataSinkSpec defines the desired state of DataSink
48+
properties:
49+
authentication:
50+
description: Authentication specifies the authentication configuration
51+
properties:
52+
apiKey:
53+
description: APIKey specifies API key authentication configuration
54+
properties:
55+
secretKeyRef:
56+
description: SecretKeyRef references a key in a Kubernetes
57+
Secret containing the API key
58+
properties:
59+
key:
60+
description: The key of the secret to select from. Must
61+
be a valid secret key.
62+
type: string
63+
name:
64+
default: ""
65+
description: |-
66+
Name of the referent.
67+
This field is effectively required, but due to backwards compatibility is
68+
allowed to be empty. Instances of this type with an empty value here are
69+
almost certainly wrong.
70+
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
71+
type: string
72+
optional:
73+
description: Specify whether the Secret or its key must
74+
be defined
75+
type: boolean
76+
required:
77+
- key
78+
type: object
79+
x-kubernetes-map-type: atomic
80+
required:
81+
- secretKeyRef
82+
type: object
83+
type: object
84+
connection:
85+
description: Connection specifies the connection details for the data
86+
sink
87+
properties:
88+
endpoint:
89+
description: Endpoint specifies the target endpoint URL
90+
type: string
91+
required:
92+
- endpoint
93+
type: object
94+
required:
95+
- connection
96+
type: object
97+
status:
98+
description: DataSinkStatus defines the observed state of DataSink
99+
properties:
100+
conditions:
101+
description: Conditions represent the latest available observations
102+
of an object's state
103+
items:
104+
description: Condition contains details for one aspect of the current
105+
state of this API Resource.
106+
properties:
107+
lastTransitionTime:
108+
description: |-
109+
lastTransitionTime is the last time the condition transitioned from one status to another.
110+
This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
111+
format: date-time
112+
type: string
113+
message:
114+
description: |-
115+
message is a human readable message indicating details about the transition.
116+
This may be an empty string.
117+
maxLength: 32768
118+
type: string
119+
observedGeneration:
120+
description: |-
121+
observedGeneration represents the .metadata.generation that the condition was set based upon.
122+
For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
123+
with respect to the current state of the instance.
124+
format: int64
125+
minimum: 0
126+
type: integer
127+
reason:
128+
description: |-
129+
reason contains a programmatic identifier indicating the reason for the condition's last transition.
130+
Producers of specific condition types may define expected values and meanings for this field,
131+
and whether the values are considered a guaranteed API.
132+
The value should be a CamelCase string.
133+
This field may not be empty.
134+
maxLength: 1024
135+
minLength: 1
136+
pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
137+
type: string
138+
status:
139+
description: status of the condition, one of True, False, Unknown.
140+
enum:
141+
- "True"
142+
- "False"
143+
- Unknown
144+
type: string
145+
type:
146+
description: type of condition in CamelCase or in foo.example.com/CamelCase.
147+
maxLength: 316
148+
pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
149+
type: string
150+
required:
151+
- lastTransitionTime
152+
- message
153+
- reason
154+
- status
155+
- type
156+
type: object
157+
type: array
158+
type: object
159+
type: object
160+
served: true
161+
storage: true
162+
subresources:
163+
status: {}
Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
---
2+
apiVersion: apiextensions.k8s.io/v1
3+
kind: CustomResourceDefinition
4+
metadata:
5+
annotations:
6+
controller-gen.kubebuilder.io/version: v0.18.0
7+
name: federatedclusteraccesses.metrics.openmcp.cloud
8+
spec:
9+
group: metrics.openmcp.cloud
10+
names:
11+
kind: FederatedClusterAccess
12+
listKind: FederatedClusterAccessList
13+
plural: federatedclusteraccesses
14+
singular: federatedclusteraccess
15+
scope: Namespaced
16+
versions:
17+
- name: v1alpha1
18+
schema:
19+
openAPIV3Schema:
20+
description: FederatedClusterAccess is the Schema for the federatedclusteraccesses
21+
API
22+
properties:
23+
apiVersion:
24+
description: |-
25+
APIVersion defines the versioned schema of this representation of an object.
26+
Servers should convert recognized schemas to the latest internal value, and
27+
may reject unrecognized values.
28+
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
29+
type: string
30+
kind:
31+
description: |-
32+
Kind is a string value representing the REST resource this object represents.
33+
Servers may infer this from the endpoint the client submits requests to.
34+
Cannot be updated.
35+
In CamelCase.
36+
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
37+
type: string
38+
metadata:
39+
type: object
40+
spec:
41+
description: FederatedClusterAccessSpec defines the desired state of FederatedClusterAccess
42+
properties:
43+
kubeConfigPath:
44+
description: Field that contains the kubeconfig to access the target
45+
cluster. Use dot notation to access nested fields.
46+
type: string
47+
target:
48+
description: Define the target resources that should be monitored
49+
properties:
50+
group:
51+
description: Define the group of your object that should be instrumented
52+
type: string
53+
kind:
54+
description: Define the kind of the object that should be instrumented
55+
type: string
56+
version:
57+
description: Define version of the object you want to be instrumented
58+
type: string
59+
type: object
60+
type: object
61+
status:
62+
description: FederatedClusterAccessStatus defines the observed state of
63+
FederatedClusterAccess
64+
type: object
65+
type: object
66+
served: true
67+
storage: true
68+
subresources:
69+
status: {}
Lines changed: 165 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,165 @@
1+
---
2+
apiVersion: apiextensions.k8s.io/v1
3+
kind: CustomResourceDefinition
4+
metadata:
5+
annotations:
6+
controller-gen.kubebuilder.io/version: v0.18.0
7+
name: federatedmanagedmetrics.metrics.openmcp.cloud
8+
spec:
9+
group: metrics.openmcp.cloud
10+
names:
11+
kind: FederatedManagedMetric
12+
listKind: FederatedManagedMetricList
13+
plural: federatedmanagedmetrics
14+
singular: federatedmanagedmetric
15+
scope: Namespaced
16+
versions:
17+
- name: v1alpha1
18+
schema:
19+
openAPIV3Schema:
20+
description: FederatedManagedMetric is the Schema for the federatedmanagedmetrics
21+
API
22+
properties:
23+
apiVersion:
24+
description: |-
25+
APIVersion defines the versioned schema of this representation of an object.
26+
Servers should convert recognized schemas to the latest internal value, and
27+
may reject unrecognized values.
28+
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
29+
type: string
30+
kind:
31+
description: |-
32+
Kind is a string value representing the REST resource this object represents.
33+
Servers may infer this from the endpoint the client submits requests to.
34+
Cannot be updated.
35+
In CamelCase.
36+
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
37+
type: string
38+
metadata:
39+
type: object
40+
spec:
41+
description: FederatedManagedMetricSpec defines the desired state of FederatedManagedMetric
42+
properties:
43+
dataSinkRef:
44+
description: |-
45+
DataSinkRef specifies the DataSink to be used for this federated managed metric.
46+
If not specified, the DataSink named "default" in the operator's
47+
namespace will be used.
48+
properties:
49+
name:
50+
description: Name is the name of the DataSink resource.
51+
type: string
52+
required:
53+
- name
54+
type: object
55+
description:
56+
type: string
57+
federateClusterAccessRef:
58+
description: FederateClusterAccessRef is a reference to a FederateCA
59+
properties:
60+
name:
61+
type: string
62+
namespace:
63+
type: string
64+
type: object
65+
fieldSelector:
66+
description: Define fields of your object to adapt filters of the
67+
query
68+
type: string
69+
interval:
70+
default: 10m
71+
description: Define in what interval the query should be recorded
72+
type: string
73+
labelSelector:
74+
description: Define labels of your object to adapt filters of the
75+
query
76+
type: string
77+
name:
78+
type: string
79+
type: object
80+
status:
81+
description: FederatedManagedMetricStatus defines the observed state of
82+
FederatedManagedMetric
83+
properties:
84+
conditions:
85+
description: Conditions represent the latest available observations
86+
of an object's state
87+
items:
88+
description: Condition contains details for one aspect of the current
89+
state of this API Resource.
90+
properties:
91+
lastTransitionTime:
92+
description: |-
93+
lastTransitionTime is the last time the condition transitioned from one status to another.
94+
This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
95+
format: date-time
96+
type: string
97+
message:
98+
description: |-
99+
message is a human readable message indicating details about the transition.
100+
This may be an empty string.
101+
maxLength: 32768
102+
type: string
103+
observedGeneration:
104+
description: |-
105+
observedGeneration represents the .metadata.generation that the condition was set based upon.
106+
For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
107+
with respect to the current state of the instance.
108+
format: int64
109+
minimum: 0
110+
type: integer
111+
reason:
112+
description: |-
113+
reason contains a programmatic identifier indicating the reason for the condition's last transition.
114+
Producers of specific condition types may define expected values and meanings for this field,
115+
and whether the values are considered a guaranteed API.
116+
The value should be a CamelCase string.
117+
This field may not be empty.
118+
maxLength: 1024
119+
minLength: 1
120+
pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
121+
type: string
122+
status:
123+
description: status of the condition, one of True, False, Unknown.
124+
enum:
125+
- "True"
126+
- "False"
127+
- Unknown
128+
type: string
129+
type:
130+
description: type of condition in CamelCase or in foo.example.com/CamelCase.
131+
maxLength: 316
132+
pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
133+
type: string
134+
required:
135+
- lastTransitionTime
136+
- message
137+
- reason
138+
- status
139+
- type
140+
type: object
141+
type: array
142+
lastReconcileTime:
143+
format: date-time
144+
type: string
145+
observation:
146+
description: FederatedObservation represents the latest available
147+
observation of an object's state
148+
properties:
149+
activeCount:
150+
type: integer
151+
failedCount:
152+
type: integer
153+
pendingCount:
154+
type: integer
155+
type: object
156+
ready:
157+
description: Ready is like a snapshot of the current state of the
158+
metric's lifecycle
159+
type: string
160+
type: object
161+
type: object
162+
served: true
163+
storage: true
164+
subresources:
165+
status: {}

0 commit comments

Comments
 (0)