...
Text file
src/edge-infra.dev/test/fixtures/crds/gcp/compute.cnrm.cloud.google.com_computeresourcepolicies.yaml
1---
2apiVersion: apiextensions.k8s.io/v1
3kind: CustomResourceDefinition
4metadata:
5 annotations:
6 controller-gen.kubebuilder.io/version: (unknown)
7 name: computeresourcepolicies.compute.cnrm.cloud.google.com
8spec:
9 group: compute.cnrm.cloud.google.com
10 names:
11 kind: ComputeResourcePolicy
12 listKind: ComputeResourcePolicyList
13 plural: computeresourcepolicies
14 singular: computeresourcepolicy
15 scope: Namespaced
16 versions:
17 - name: v1beta1
18 schema:
19 openAPIV3Schema:
20 description: ComputeResourcePolicy is the Schema for the compute API
21 properties:
22 apiVersion:
23 description: |-
24 APIVersion defines the versioned schema of this representation of an object.
25 Servers should convert recognized schemas to the latest internal value, and
26 may reject unrecognized values.
27 More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
28 type: string
29 kind:
30 description: |-
31 Kind is a string value representing the REST resource this object represents.
32 Servers may infer this from the endpoint the client submits requests to.
33 Cannot be updated.
34 In CamelCase.
35 More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
36 type: string
37 metadata:
38 type: object
39 spec:
40 properties:
41 description:
42 description: Immutable. An optional description of this resource.
43 Provide this property when you create the resource.
44 type: string
45 diskConsistencyGroupPolicy:
46 description: Immutable. Replication consistency group for asynchronous
47 disk replication.
48 properties:
49 enabled:
50 description: Immutable. Enable disk consistency on the resource
51 policy.
52 type: boolean
53 required:
54 - enabled
55 type: object
56 groupPlacementPolicy:
57 description: Immutable. Resource policy for instances used for placement
58 configuration.
59 properties:
60 availabilityDomainCount:
61 description: |-
62 Immutable. The number of availability domains instances will be spread across. If two instances are in different
63 availability domain, they will not be put in the same low latency network.
64 type: integer
65 collocation:
66 description: |-
67 Immutable. Collocation specifies whether to place VMs inside the same availability domain on the same low-latency network.
68 Specify 'COLLOCATED' to enable collocation. Can only be specified with 'vm_count'. If compute instances are created
69 with a COLLOCATED policy, then exactly 'vm_count' instances must be created at the same time with the resource policy
70 attached. Possible values: ["COLLOCATED"].
71 type: string
72 maxDistance:
73 description: Immutable. Specifies the number of max logical switches.
74 type: integer
75 vmCount:
76 description: |-
77 Immutable. Number of VMs in this placement group. Google does not recommend that you use this field
78 unless you use a compact policy and you want your policy to work only if it contains this
79 exact number of VMs.
80 type: integer
81 type: object
82 instanceSchedulePolicy:
83 description: Immutable. Resource policy for scheduling instance operations.
84 properties:
85 expirationTime:
86 description: Immutable. The expiration time of the schedule. The
87 timestamp is an RFC3339 string.
88 type: string
89 startTime:
90 description: Immutable. The start time of the schedule. The timestamp
91 is an RFC3339 string.
92 type: string
93 timeZone:
94 description: |-
95 Immutable. Specifies the time zone to be used in interpreting the schedule. The value of this field must be a time zone name
96 from the tz database: http://en.wikipedia.org/wiki/Tz_database.
97 type: string
98 vmStartSchedule:
99 description: Immutable. Specifies the schedule for starting instances.
100 properties:
101 schedule:
102 description: Immutable. Specifies the frequency for the operation,
103 using the unix-cron format.
104 type: string
105 required:
106 - schedule
107 type: object
108 vmStopSchedule:
109 description: Immutable. Specifies the schedule for stopping instances.
110 properties:
111 schedule:
112 description: Immutable. Specifies the frequency for the operation,
113 using the unix-cron format.
114 type: string
115 required:
116 - schedule
117 type: object
118 required:
119 - timeZone
120 type: object
121 region:
122 description: Immutable. Region where resource policy resides.
123 type: string
124 resourceID:
125 description: Immutable. Optional. The name of the resource. Used for
126 creation and acquisition. When unset, the value of `metadata.name`
127 is used as the default.
128 type: string
129 snapshotSchedulePolicy:
130 description: Immutable. Policy for creating snapshots of persistent
131 disks.
132 properties:
133 retentionPolicy:
134 description: Immutable. Retention policy applied to snapshots
135 created by this resource policy.
136 properties:
137 maxRetentionDays:
138 description: Immutable. Maximum age of the snapshot that is
139 allowed to be kept.
140 type: integer
141 onSourceDiskDelete:
142 description: |-
143 Immutable. Specifies the behavior to apply to scheduled snapshots when
144 the source disk is deleted. Default value: "KEEP_AUTO_SNAPSHOTS" Possible values: ["KEEP_AUTO_SNAPSHOTS", "APPLY_RETENTION_POLICY"].
145 type: string
146 required:
147 - maxRetentionDays
148 type: object
149 schedule:
150 description: Immutable. Contains one of an 'hourlySchedule', 'dailySchedule',
151 or 'weeklySchedule'.
152 properties:
153 dailySchedule:
154 description: Immutable. The policy will execute every nth
155 day at the specified time.
156 properties:
157 daysInCycle:
158 description: Immutable. The number of days between snapshots.
159 type: integer
160 startTime:
161 description: |-
162 Immutable. This must be in UTC format that resolves to one of
163 00:00, 04:00, 08:00, 12:00, 16:00, or 20:00. For example,
164 both 13:00-5 and 08:00 are valid.
165 type: string
166 required:
167 - daysInCycle
168 - startTime
169 type: object
170 hourlySchedule:
171 description: Immutable. The policy will execute every nth
172 hour starting at the specified time.
173 properties:
174 hoursInCycle:
175 description: Immutable. The number of hours between snapshots.
176 type: integer
177 startTime:
178 description: |-
179 Immutable. Time within the window to start the operations.
180 It must be in an hourly format "HH:MM",
181 where HH : [00-23] and MM : [00] GMT.
182 eg: 21:00.
183 type: string
184 required:
185 - hoursInCycle
186 - startTime
187 type: object
188 weeklySchedule:
189 description: Immutable. Allows specifying a snapshot time
190 for each day of the week.
191 properties:
192 dayOfWeeks:
193 description: Immutable. May contain up to seven (one for
194 each day of the week) snapshot times.
195 items:
196 properties:
197 day:
198 description: 'Immutable. The day of the week to
199 create the snapshot. e.g. MONDAY Possible values:
200 ["MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY",
201 "FRIDAY", "SATURDAY", "SUNDAY"].'
202 type: string
203 startTime:
204 description: |-
205 Immutable. Time within the window to start the operations.
206 It must be in format "HH:MM", where HH : [00-23] and MM : [00-00] GMT.
207 type: string
208 required:
209 - day
210 - startTime
211 type: object
212 type: array
213 required:
214 - dayOfWeeks
215 type: object
216 type: object
217 snapshotProperties:
218 description: Immutable. Properties with which the snapshots are
219 created, such as labels.
220 properties:
221 chainName:
222 description: |-
223 Immutable. Creates the new snapshot in the snapshot chain labeled with the
224 specified name. The chain name must be 1-63 characters long and comply
225 with RFC1035.
226 type: string
227 guestFlush:
228 description: Immutable. Whether to perform a 'guest aware'
229 snapshot.
230 type: boolean
231 labels:
232 additionalProperties:
233 type: string
234 description: Immutable. A set of key-value pairs.
235 type: object
236 storageLocations:
237 description: |-
238 Immutable. Cloud Storage bucket location to store the auto snapshot
239 (regional or multi-regional).
240 items:
241 type: string
242 type: array
243 type: object
244 required:
245 - schedule
246 type: object
247 required:
248 - region
249 type: object
250 status:
251 properties:
252 conditions:
253 description: |-
254 Conditions represent the latest available observations of the
255 ComputeResourcePolicy's current state.
256 items:
257 properties:
258 lastTransitionTime:
259 description: Last time the condition transitioned from one status
260 to another.
261 type: string
262 message:
263 description: Human-readable message indicating details about
264 last transition.
265 type: string
266 reason:
267 description: |-
268 Unique, one-word, CamelCase reason for the condition's last
269 transition.
270 type: string
271 status:
272 description: Status is the status of the condition. Can be True,
273 False, Unknown.
274 type: string
275 type:
276 description: Type is the type of the condition.
277 type: string
278 type: object
279 type: array
280 observedGeneration:
281 description: ObservedGeneration is the generation of the resource
282 that was most recently observed by the Config Connector controller.
283 If this is equal to metadata.generation, then that means that the
284 current reported status reflects the most recent desired state of
285 the resource.
286 type: integer
287 selfLink:
288 type: string
289 type: object
290 type: object
291 served: true
292 storage: true
View as plain text