...
1# Copyright 2020 Google LLC
2#
3# Licensed under the Apache License, Version 2.0 (the "License");
4# you may not use this file except in compliance with the License.
5# You may obtain a copy of the License at
6#
7# http://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS,
11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12# See the License for the specific language governing permissions and
13# limitations under the License.
14
15apiVersion: apiextensions.k8s.io/v1
16kind: CustomResourceDefinition
17metadata:
18 annotations:
19 cnrm.cloud.google.com/version: 1.106.0
20 creationTimestamp: null
21 labels:
22 cnrm.cloud.google.com/managed-by-kcc: "true"
23 cnrm.cloud.google.com/stability-level: alpha
24 cnrm.cloud.google.com/system: "true"
25 cnrm.cloud.google.com/tf2crd: "true"
26 name: workstationsworkstationclusters.workstations.cnrm.cloud.google.com
27spec:
28 group: workstations.cnrm.cloud.google.com
29 names:
30 categories:
31 - gcp
32 kind: WorkstationsWorkstationCluster
33 plural: workstationsworkstationclusters
34 shortNames:
35 - gcpworkstationsworkstationcluster
36 - gcpworkstationsworkstationclusters
37 singular: workstationsworkstationcluster
38 scope: Namespaced
39 versions:
40 - additionalPrinterColumns:
41 - jsonPath: .metadata.creationTimestamp
42 name: Age
43 type: date
44 - description: When 'True', the most recent reconcile of the resource succeeded
45 jsonPath: .status.conditions[?(@.type=='Ready')].status
46 name: Ready
47 type: string
48 - description: The reason for the value in 'Ready'
49 jsonPath: .status.conditions[?(@.type=='Ready')].reason
50 name: Status
51 type: string
52 - description: The last transition time for the value in 'Status'
53 jsonPath: .status.conditions[?(@.type=='Ready')].lastTransitionTime
54 name: Status Age
55 type: date
56 name: v1alpha1
57 schema:
58 openAPIV3Schema:
59 properties:
60 apiVersion:
61 description: 'apiVersion defines the versioned schema of this representation
62 of an object. Servers should convert recognized schemas to the latest
63 internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#resources'
64 type: string
65 kind:
66 description: 'kind is a string value representing the REST resource this
67 object represents. Servers may infer this from the endpoint the client
68 submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds'
69 type: string
70 metadata:
71 type: object
72 spec:
73 properties:
74 annotations:
75 additionalProperties:
76 type: string
77 description: Client-specified annotations. This is distinct from labels.
78 type: object
79 displayName:
80 description: Human-readable name for this resource.
81 type: string
82 location:
83 description: Immutable. The location where the workstation cluster
84 should reside.
85 type: string
86 network:
87 description: |-
88 Immutable. The relative resource name of the VPC network on which the instance can be accessed.
89 It is specified in the following form: "projects/{projectNumber}/global/networks/{network_id}".
90 type: string
91 privateClusterConfig:
92 description: Configuration for private cluster.
93 properties:
94 clusterHostname:
95 description: |-
96 Hostname for the workstation cluster.
97 This field will be populated only when private endpoint is enabled.
98 To access workstations in the cluster, create a new DNS zone mapping this domain name to an internal IP address and a forwarding rule mapping that address to the service attachment.
99 type: string
100 enablePrivateEndpoint:
101 description: Immutable. Whether Workstations endpoint is private.
102 type: boolean
103 serviceAttachmentUri:
104 description: |-
105 Service attachment URI for the workstation cluster.
106 The service attachment is created when private endpoint is enabled.
107 To access workstations in the cluster, configure access to the managed service using (Private Service Connect)[https://cloud.google.com/vpc/docs/configure-private-service-connect-services].
108 type: string
109 required:
110 - enablePrivateEndpoint
111 type: object
112 projectRef:
113 description: The project that this resource belongs to.
114 oneOf:
115 - not:
116 required:
117 - external
118 required:
119 - name
120 - not:
121 anyOf:
122 - required:
123 - name
124 - required:
125 - namespace
126 required:
127 - external
128 properties:
129 external:
130 description: 'Allowed value: The `name` field of a `Project` resource.'
131 type: string
132 name:
133 description: 'Name of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names'
134 type: string
135 namespace:
136 description: 'Namespace of the referent. More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/'
137 type: string
138 type: object
139 resourceID:
140 description: Immutable. Optional. The workstationClusterId of the
141 resource. Used for creation and acquisition. When unset, the value
142 of `metadata.name` is used as the default.
143 type: string
144 subnetwork:
145 description: |-
146 Immutable. Name of the Compute Engine subnetwork in which instances associated with this cluster will be created.
147 Must be part of the subnetwork specified for this cluster.
148 type: string
149 required:
150 - location
151 - network
152 - projectRef
153 - subnetwork
154 type: object
155 status:
156 properties:
157 conditions:
158 description: Conditions represent the latest available observation
159 of the resource's current state.
160 items:
161 properties:
162 lastTransitionTime:
163 description: Last time the condition transitioned from one status
164 to another.
165 type: string
166 message:
167 description: Human-readable message indicating details about
168 last transition.
169 type: string
170 reason:
171 description: Unique, one-word, CamelCase reason for the condition's
172 last transition.
173 type: string
174 status:
175 description: Status is the status of the condition. Can be True,
176 False, Unknown.
177 type: string
178 type:
179 description: Type is the type of the condition.
180 type: string
181 type: object
182 type: array
183 createTime:
184 description: Time when this resource was created.
185 type: string
186 degraded:
187 description: |-
188 Whether this resource is in degraded mode, in which case it may require user action to restore full functionality.
189 Details can be found in the conditions field.
190 type: boolean
191 etag:
192 description: |-
193 Checksum computed by the server.
194 May be sent on update and delete requests to ensure that the client has an up-to-date value before proceeding.
195 type: string
196 name:
197 description: The name of the cluster resource.
198 type: string
199 observedGeneration:
200 description: ObservedGeneration is the generation of the resource
201 that was most recently observed by the Config Connector controller.
202 If this is equal to metadata.generation, then that means that the
203 current reported status reflects the most recent desired state of
204 the resource.
205 type: integer
206 resourceConditions:
207 description: Status conditions describing the current resource state.
208 items:
209 properties:
210 code:
211 description: The status code, which should be an enum value
212 of google.rpc.Code.
213 type: integer
214 details:
215 description: A list of messages that carry the error details.
216 items:
217 type: object
218 x-kubernetes-preserve-unknown-fields: true
219 type: array
220 message:
221 description: Human readable message indicating details about
222 the current status.
223 type: string
224 type: object
225 type: array
226 uid:
227 description: The system-generated UID of the resource.
228 type: string
229 type: object
230 required:
231 - spec
232 type: object
233 served: true
234 storage: true
235 subresources:
236 status: {}
237status:
238 acceptedNames:
239 kind: ""
240 plural: ""
241 conditions: []
242 storedVersions: []
View as plain text