forked from noobaa/noobaa-operator
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathnoobaa_v1alpha1_noobaa_crd.yaml
273 lines (273 loc) · 11.6 KB
/
noobaa_v1alpha1_noobaa_crd.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
apiVersion: apiextensions.k8s.io/v1beta1
kind: CustomResourceDefinition
metadata:
name: noobaas.noobaa.io
spec:
additionalPrinterColumns:
- JSONPath: .status.phase
description: Phase
name: Phase
type: string
- JSONPath: .status.services.serviceMgmt.nodePorts
description: Mgmt Endpoints
name: Mgmt-Endpoints
type: string
- JSONPath: .status.services.serviceS3.nodePorts
description: S3 Endpoints
name: S3-Endpoints
type: string
- JSONPath: .status.actualImage
description: Actual Image
name: Image
type: string
- JSONPath: .metadata.creationTimestamp
name: Age
type: date
group: noobaa.io
names:
kind: NooBaa
listKind: NooBaaList
plural: noobaas
shortNames:
- nb
singular: noobaa
scope: Namespaced
subresources:
status: {}
validation:
openAPIV3Schema:
properties:
apiVersion:
description: 'APIVersion defines the versioned schema of this representation
of an object. Servers should convert recognized schemas to the latest
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#resources'
type: string
kind:
description: 'Kind is a string value representing the REST resource this
object represents. Servers may infer this from the endpoint the client
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds'
type: string
metadata:
description: Standard object metadata.
type: object
spec:
description: Specification of the desired behavior of the noobaa system.
properties:
coreResources:
description: CoreResources (optional) overrides the default resource
requirements for the server container
type: object
image:
description: Image (optional) overrides the default image for the server
container
type: string
imagePullSecret:
description: ImagePullSecret (optional) sets a pull secret for the system
image
type: object
mongoImage:
description: MongoImage (optional) overrides the default image for the
mongodb container
type: string
mongoResources:
description: MongoResources (optional) overrides the default resource
requirements for the mongodb container
type: object
storageClassName:
description: StorageClassName (optional) overrides the default StorageClass
for the PVC that the operator creates, this affects where the system
stores its database which contains system config, buckets, objects
meta-data and mapping file parts to storage locations.
type: string
tolerations:
description: Tolerations (optional) passed through to noobaa's pods
items:
type: object
type: array
type: object
status:
description: Most recently observed status of the noobaa system.
properties:
accounts:
properties:
admin:
properties:
secretRef:
type: object
required:
- secretRef
type: object
required:
- admin
type: object
actualImage:
description: ActualImage is set to report which image the operator is
using
type: string
conditions:
description: Conditions is a list of conditions related to operator
reconciliation +patchMergeKey=type +patchStrategy=merge
items:
properties:
lastHeartbeatTime:
format: date-time
type: string
lastTransitionTime:
format: date-time
type: string
message:
type: string
reason:
type: string
status:
type: string
type:
type: string
required:
- type
- status
- lastHeartbeatTime
- lastTransitionTime
type: object
type: array
observedGeneration:
description: ObservedGeneration is the most recent generation observed
for this noobaa system. It corresponds to the CR generation, which
is updated on mutation by the API Server.
format: int64
type: integer
phase:
description: Phase is a simple, high-level summary of where the System
is in its lifecycle
type: string
readme:
description: Readme is a user readable string with explanations on the
system
type: string
relatedObjects:
description: RelatedObjects is a list of objects that are "interesting"
or related to this operator.
items:
type: object
type: array
services:
properties:
serviceMgmt:
properties:
externalDNS:
description: ExternalDNS are external public addresses for the
service
items:
type: string
type: array
externalIP:
description: ExternalIP are external public addresses for the
service LoadBalancerPorts such as AWS ELB provide public address
and load balancing for the service IngressPorts are manually
created public addresses for the service https://kubernetes.io/docs/concepts/services-networking/service/#external-ips
https://kubernetes.io/docs/concepts/services-networking/service/#loadbalancer
https://kubernetes.io/docs/concepts/services-networking/ingress/
items:
type: string
type: array
internalDNS:
description: InternalDNS are internal addresses of the service
inside the cluster
items:
type: string
type: array
internalIP:
description: InternalIP are internal addresses of the service
inside the cluster https://kubernetes.io/docs/concepts/services-networking/service/#publishing-services-service-types
items:
type: string
type: array
nodePorts:
description: NodePorts are the most basic network available
it uses the networks available on the hosts of kubernetes
nodes. This generally works from within a pod, and from the
internal network of the nodes, but may fail from public network.
https://kubernetes.io/docs/concepts/services-networking/service/#nodeport
items:
type: string
type: array
podPorts:
description: 'PodPorts are the second most basic network address
every pod has an IP in the cluster and the pods network is
a mesh so the operator running inside a pod in the cluster
can use this address. Note: pod IPs are not guaranteed to
persist over restarts, so should be rediscovered. Note2: when
running the operator outside of the cluster, pod IP is not
accessible.'
items:
type: string
type: array
type: object
serviceS3:
properties:
externalDNS:
description: ExternalDNS are external public addresses for the
service
items:
type: string
type: array
externalIP:
description: ExternalIP are external public addresses for the
service LoadBalancerPorts such as AWS ELB provide public address
and load balancing for the service IngressPorts are manually
created public addresses for the service https://kubernetes.io/docs/concepts/services-networking/service/#external-ips
https://kubernetes.io/docs/concepts/services-networking/service/#loadbalancer
https://kubernetes.io/docs/concepts/services-networking/ingress/
items:
type: string
type: array
internalDNS:
description: InternalDNS are internal addresses of the service
inside the cluster
items:
type: string
type: array
internalIP:
description: InternalIP are internal addresses of the service
inside the cluster https://kubernetes.io/docs/concepts/services-networking/service/#publishing-services-service-types
items:
type: string
type: array
nodePorts:
description: NodePorts are the most basic network available
it uses the networks available on the hosts of kubernetes
nodes. This generally works from within a pod, and from the
internal network of the nodes, but may fail from public network.
https://kubernetes.io/docs/concepts/services-networking/service/#nodeport
items:
type: string
type: array
podPorts:
description: 'PodPorts are the second most basic network address
every pod has an IP in the cluster and the pods network is
a mesh so the operator running inside a pod in the cluster
can use this address. Note: pod IPs are not guaranteed to
persist over restarts, so should be rediscovered. Note2: when
running the operator outside of the cluster, pod IP is not
accessible.'
items:
type: string
type: array
type: object
required:
- serviceMgmt
- serviceS3
type: object
required:
- observedGeneration
- phase
- actualImage
- accounts
- services
- readme
type: object
version: v1alpha1
versions:
- name: v1alpha1
served: true
storage: true