-
Notifications
You must be signed in to change notification settings - Fork 60
Expand file tree
/
Copy pathnova.openstack.org_novacomputes.yaml
More file actions
311 lines (309 loc) · 13.9 KB
/
nova.openstack.org_novacomputes.yaml
File metadata and controls
311 lines (309 loc) · 13.9 KB
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
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
---
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
annotations:
controller-gen.kubebuilder.io/version: v0.18.0
name: novacomputes.nova.openstack.org
spec:
group: nova.openstack.org
names:
kind: NovaCompute
listKind: NovaComputeList
plural: novacomputes
singular: novacompute
scope: Namespaced
versions:
- additionalPrinterColumns:
- description: NetworkAttachments
jsonPath: .spec.networkAttachments
name: NetworkAttachments
type: string
- description: Status
jsonPath: .status.conditions[0].status
name: Status
type: string
- description: Message
jsonPath: .status.conditions[0].message
name: Message
type: string
name: v1beta1
schema:
openAPIV3Schema:
description: NovaCompute is the Schema for the NovaCompute
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/sig-architecture/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/sig-architecture/api-conventions.md#types-kinds
type: string
metadata:
type: object
spec:
description: NovaComputeSpec defines the desired state of NovaCompute
properties:
cellName:
description: CellName is the name of the Nova Cell this NovaCompute
belongs to.
type: string
computeDriver:
description: ComputeDriver defines which driver to use for controlling
virtualization
enum:
- ironic.IronicDriver
- fake.FakeDriver
type: string
computeName:
description: ComputeName - compute name.
type: string
containerImage:
description: The service specific Container Image URL (will be set
to environmental default if empty)
type: string
customServiceConfig:
description: |-
CustomServiceConfig - customize the service config using this parameter to change service defaults,
or overwrite rendered information using raw OpenStack config format. The content gets added to
to /etc/<service>/<service>.conf.d directory as custom.conf file.
type: string
defaultConfigOverwrite:
additionalProperties:
type: string
description: DefaultConfigOverwrite - interface to overwrite default
config files like e.g. provider.yaml
type: object
keystoneAuthURL:
type: string
networkAttachments:
description: NetworkAttachments is a list of NetworkAttachment resource
names to expose the services to the given network
items:
type: string
type: array
nodeSelector:
additionalProperties:
type: string
description: NodeSelector to target subset of worker nodes running
this service
type: object
region:
description: Region - the region name to use for service endpoint
discovery
type: string
replicas:
default: 1
description: Replicas of the service to run
format: int32
maximum: 32
minimum: 0
type: integer
resources:
description: |-
Resources - Compute Resources required by this service (Limits/Requests).
https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
properties:
claims:
description: |-
Claims lists the names of resources, defined in spec.resourceClaims,
that are used by this container.
This is an alpha field and requires enabling the
DynamicResourceAllocation feature gate.
This field is immutable. It can only be set for containers.
items:
description: ResourceClaim references one entry in PodSpec.ResourceClaims.
properties:
name:
description: |-
Name must match the name of one entry in pod.spec.resourceClaims of
the Pod where this field is used. It makes that resource available
inside a container.
type: string
request:
description: |-
Request is the name chosen for a request in the referenced claim.
If empty, everything from the claim is made available, otherwise
only the result of this request.
type: string
required:
- name
type: object
type: array
x-kubernetes-list-map-keys:
- name
x-kubernetes-list-type: map
limits:
additionalProperties:
anyOf:
- type: integer
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
description: |-
Limits describes the maximum amount of compute resources allowed.
More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
requests:
additionalProperties:
anyOf:
- type: integer
- type: string
pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
x-kubernetes-int-or-string: true
description: |-
Requests describes the minimum amount of compute resources required.
If Requests is omitted for a container, it defaults to Limits if that is explicitly specified,
otherwise to an implementation-defined value. Requests cannot exceed Limits.
More info: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
type: object
type: object
secret:
description: |-
Secret is the name of the Secret instance containing password
information for the NovaCompute service. This secret is expected to be
generated by the nova-operator based on the information passed to the
Nova CR.
type: string
serviceAccount:
description: ServiceAccount - service account name used internally
to provide Nova services the default SA name
type: string
serviceUser:
default: nova
description: |-
ServiceUser - optional username used for this service to register in
keystone
type: string
tls:
description: TLS - Parameters related to the TLS
properties:
caBundleSecretName:
description: CaBundleSecretName - holding the CA certs in a pre-created
bundle file
type: string
type: object
topologyRef:
description: |-
TopologyRef to apply the Topology defined by the associated CR referenced
by name
properties:
name:
description: Name - The Topology CR name that the Service references
type: string
namespace:
description: |-
Namespace - The Namespace to fetch the Topology CR referenced
NOTE: Namespace currently points by default to the same namespace where
the Service is deployed. Customizing the namespace is not supported and
webhooks prevent editing this field to a value different from the
current project
type: string
type: object
required:
- cellName
- computeDriver
- computeName
- keystoneAuthURL
- secret
- serviceAccount
type: object
status:
description: NovaComputeStatus defines the observed state of NovaCompute
properties:
conditions:
description: Conditions
items:
description: Condition defines an observation of a API resource
operational state.
properties:
lastTransitionTime:
description: |-
Last time the condition transitioned from one status to another.
This should be when the underlying condition changed. If that is not known, then using the time when
the API field changed is acceptable.
format: date-time
type: string
message:
description: A human readable message indicating details about
the transition.
type: string
reason:
description: The reason for the condition's last transition
in CamelCase.
type: string
severity:
description: |-
Severity provides a classification of Reason code, so the current situation is immediately
understandable and could act accordingly.
It is meant for situations where Status=False and it should be indicated if it is just
informational, warning (next reconciliation might fix it) or an error (e.g. DB create issue
and no actions to automatically resolve the issue can/should be done).
For conditions where Status=Unknown or Status=True the Severity should be SeverityNone.
type: string
status:
description: Status of the condition, one of True, False, Unknown.
type: string
type:
description: Type of condition in CamelCase.
type: string
required:
- lastTransitionTime
- status
- type
type: object
type: array
hash:
additionalProperties:
type: string
description: Map of hashes to track e.g. job status
type: object
lastAppliedTopology:
description: LastAppliedTopology - the last applied Topology
properties:
name:
description: Name - The Topology CR name that the Service references
type: string
namespace:
description: |-
Namespace - The Namespace to fetch the Topology CR referenced
NOTE: Namespace currently points by default to the same namespace where
the Service is deployed. Customizing the namespace is not supported and
webhooks prevent editing this field to a value different from the
current project
type: string
type: object
networkAttachments:
additionalProperties:
items:
type: string
type: array
description: NetworkAttachments status of the deployment pods
type: object
observedGeneration:
description: |-
ObservedGeneration - the most recent generation observed for this
service. If the observed generation is less than the spec generation,
then the controller has not processed the latest changes injected by
the openstack-operator in the top-level CR (e.g. the ContainerImage)
format: int64
type: integer
readyCount:
description: ReadyCount defines the number of replicas ready from
NovaCompute
format: int32
type: integer
type: object
type: object
served: true
storage: true
subresources:
status: {}