...
1---
2apiVersion: apiextensions.k8s.io/v1
3kind: CustomResourceDefinition
4metadata:
5 annotations:
6 controller-gen.kubebuilder.io/version: (unknown)
7 name: databaseusers.backend.edge.ncr.com
8spec:
9 group: backend.edge.ncr.com
10 names:
11 kind: DatabaseUser
12 listKind: DatabaseUserList
13 plural: databaseusers
14 singular: databaseuser
15 scope: Namespaced
16 versions:
17 - additionalPrinterColumns:
18 - jsonPath: .spec.type
19 name: Type
20 type: string
21 - jsonPath: .spec.instanceRef.projectID
22 name: Project ID
23 type: string
24 - jsonPath: .spec.prune
25 name: Prune
26 priority: 1
27 type: string
28 - jsonPath: .spec.suspend
29 name: Suspend
30 priority: 1
31 type: string
32 - jsonPath: .status.conditions[?(@.type=="Ready")].status
33 name: Ready
34 type: string
35 - jsonPath: .status.conditions[?(@.type=="Ready")].message
36 name: Status
37 type: string
38 - jsonPath: .metadata.creationTimestamp
39 name: Age
40 type: date
41 name: v1alpha2
42 schema:
43 openAPIV3Schema:
44 description: DatabaseUser is an Edge Sequel database user.
45 properties:
46 apiVersion:
47 description: |-
48 APIVersion defines the versioned schema of this representation of an object.
49 Servers should convert recognized schemas to the latest internal value, and
50 may reject unrecognized values.
51 More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
52 type: string
53 kind:
54 description: |-
55 Kind is a string value representing the REST resource this object represents.
56 Servers may infer this from the endpoint the client submits requests to.
57 Cannot be updated.
58 In CamelCase.
59 More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
60 type: string
61 metadata:
62 type: object
63 spec:
64 description: UserSpec
65 properties:
66 dependsOn:
67 description: |-
68 DependsOn is the list of resources that need to be successfully
69 reconciled first.
70 items:
71 description: Dependents
72 properties:
73 groupVersion:
74 description: GroupVersionKind
75 properties:
76 group:
77 type: string
78 kind:
79 type: string
80 version:
81 type: string
82 type: object
83 objectReference:
84 description: |-
85 LocalObjectReference contains enough information to locate the referenced
86 Kubernetes resource object.
87 properties:
88 name:
89 description: Name of the referent.
90 maxLength: 253
91 minLength: 1
92 type: string
93 required:
94 - name
95 type: object
96 type: object
97 type: array
98 force:
99 default: false
100 description: |-
101 Force indicates whether or not objects should be forced by deleting and
102 re-creating when there is a conflict due to immutable fields changing.
103 type: boolean
104 grants:
105 description: Grants
106 items:
107 description: Grant
108 properties:
109 schema:
110 description: Schema
111 type: string
112 tableGrant:
113 description: TableGrant
114 items:
115 properties:
116 permissions:
117 description: Permissions
118 items:
119 description: Permissions
120 properties:
121 permission:
122 description: Permission
123 enum:
124 - SELECT
125 - CREATE
126 - UPDATE
127 - DELETE
128 - INSERT
129 - TRIGGER
130 - '*'
131 type: string
132 type: object
133 type: array
134 table:
135 description: Table
136 type: string
137 type: object
138 type: array
139 type: object
140 type: array
141 instanceRef:
142 description: InstanceRef
143 properties:
144 name:
145 description: Name
146 type: string
147 projectID:
148 description: Project ID
149 type: string
150 type: object
151 interval:
152 default: 60s
153 description: |-
154 Interval is how often the object will be reconciled, in order to prevent
155 drift.
156 type: string
157 passwordRef:
158 description: PasswordRef
159 properties:
160 createPassword:
161 description: CreatePassword
162 type: boolean
163 name:
164 description: Name
165 type: string
166 namespace:
167 description: Namespace
168 type: string
169 type: object
170 prune:
171 description: |-
172 Prune indicates whether or not objects should be pruned between reconciles
173 or when the object is deleted. You may want to use this for deployments
174 that you really don't want deleted.
175 type: boolean
176 retryInterval:
177 default: 10s
178 description: |-
179 RetryInterval is how often to retry previously failed reconciliations. Defaults
180 to Interval if not provided.
181 type: string
182 serviceAccount:
183 description: ServiceAccount
184 properties:
185 createServiceAccount:
186 description: CreateServiceAccount
187 type: boolean
188 emailRef:
189 description: EmailRef
190 type: string
191 iamUsername:
192 description: IAMUsername
193 type: string
194 type: object
195 suspend:
196 description: |-
197 This flag tells the controller to suspend subsequent reconciliations,
198 it does not apply to already started reconciliations. Defaults to false.
199 type: boolean
200 timeout:
201 default: 120s
202 description: |-
203 Timeout is how long the controller will wait for the applied objects to
204 reconcile.
205 type: string
206 type:
207 default: BUILT_IN
208 description: Type
209 enum:
210 - BUILT_IN
211 - CLOUD_IAM_SERVICE_ACCOUNT
212 type: string
213 required:
214 - force
215 - prune
216 type: object
217 status:
218 default:
219 observedGeneration: -1
220 description: |-
221 UserStatus contains the readiness of the reconciled resources and
222 an inventory of currently applied resources.
223 properties:
224 conditions:
225 items:
226 description: "Condition contains details for one aspect of the current
227 state of this API Resource.\n---\nThis struct is intended for
228 direct use as an array at the field path .status.conditions. For
229 example,\n\n\n\ttype FooStatus struct{\n\t // Represents the
230 observations of a foo's current state.\n\t // Known .status.conditions.type
231 are: \"Available\", \"Progressing\", and \"Degraded\"\n\t //
232 +patchMergeKey=type\n\t // +patchStrategy=merge\n\t // +listType=map\n\t
233 \ // +listMapKey=type\n\t Conditions []metav1.Condition `json:\"conditions,omitempty\"
234 patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"`\n\n\n\t
235 \ // other fields\n\t}"
236 properties:
237 lastTransitionTime:
238 description: |-
239 lastTransitionTime is the last time the condition transitioned from one status to another.
240 This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
241 format: date-time
242 type: string
243 message:
244 description: |-
245 message is a human readable message indicating details about the transition.
246 This may be an empty string.
247 maxLength: 32768
248 type: string
249 observedGeneration:
250 description: |-
251 observedGeneration represents the .metadata.generation that the condition was set based upon.
252 For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
253 with respect to the current state of the instance.
254 format: int64
255 minimum: 0
256 type: integer
257 reason:
258 description: |-
259 reason contains a programmatic identifier indicating the reason for the condition's last transition.
260 Producers of specific condition types may define expected values and meanings for this field,
261 and whether the values are considered a guaranteed API.
262 The value should be a CamelCase string.
263 This field may not be empty.
264 maxLength: 1024
265 minLength: 1
266 pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$
267 type: string
268 status:
269 description: status of the condition, one of True, False, Unknown.
270 enum:
271 - "True"
272 - "False"
273 - Unknown
274 type: string
275 type:
276 description: |-
277 type of condition in CamelCase or in foo.example.com/CamelCase.
278 ---
279 Many .condition.type values are consistent across resources like Available, but because arbitrary conditions can be
280 useful (see .node.status.conditions), the ability to deconflict is important.
281 The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt)
282 maxLength: 316
283 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])$
284 type: string
285 required:
286 - lastTransitionTime
287 - message
288 - reason
289 - status
290 - type
291 type: object
292 type: array
293 inventory:
294 description: Inventory is the K8s resources that this object manages.
295 properties:
296 entries:
297 description: Entries of Kubernetes resource object references.
298 items:
299 description: ResourceRef contains the information necessary
300 to locate a resource within a cluster.
301 properties:
302 id:
303 description: |-
304 ID is the string representation of the Kubernetes resource object's metadata,
305 in the format '<namespace>_<name>_<group>_<kind>'.
306 type: string
307 v:
308 description: Version is the API version of the Kubernetes
309 resource object's kind.
310 type: string
311 required:
312 - id
313 - v
314 type: object
315 type: array
316 type: object
317 lastHandledReconcileAt:
318 description: |-
319 LastHandledReconcileAt holds the value of the most recent
320 reconcile request value, so a change of the annotation value
321 can be detected.
322 type: string
323 observedGeneration:
324 format: int64
325 type: integer
326 type: object
327 type: object
328 served: true
329 storage: true
330 subresources:
331 status: {}
View as plain text