google-cloud-vmware_engine-v1 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (30) hide show
  1. checksums.yaml +7 -0
  2. data/.yardopts +12 -0
  3. data/AUTHENTICATION.md +149 -0
  4. data/LICENSE.md +201 -0
  5. data/README.md +144 -0
  6. data/lib/google/cloud/vmware_engine/v1/version.rb +28 -0
  7. data/lib/google/cloud/vmware_engine/v1/vmware_engine/client.rb +4129 -0
  8. data/lib/google/cloud/vmware_engine/v1/vmware_engine/credentials.rb +47 -0
  9. data/lib/google/cloud/vmware_engine/v1/vmware_engine/operations.rb +770 -0
  10. data/lib/google/cloud/vmware_engine/v1/vmware_engine/paths.rb +185 -0
  11. data/lib/google/cloud/vmware_engine/v1/vmware_engine.rb +50 -0
  12. data/lib/google/cloud/vmware_engine/v1.rb +40 -0
  13. data/lib/google/cloud/vmwareengine/v1/vmwareengine_pb.rb +470 -0
  14. data/lib/google/cloud/vmwareengine/v1/vmwareengine_services_pb.rb +171 -0
  15. data/lib/google-cloud-vmware_engine-v1.rb +21 -0
  16. data/proto_docs/README.md +4 -0
  17. data/proto_docs/google/api/client.rb +318 -0
  18. data/proto_docs/google/api/field_behavior.rb +71 -0
  19. data/proto_docs/google/api/launch_stage.rb +71 -0
  20. data/proto_docs/google/api/resource.rb +222 -0
  21. data/proto_docs/google/cloud/vmwareengine/v1/vmwareengine.rb +1774 -0
  22. data/proto_docs/google/longrunning/operations.rb +164 -0
  23. data/proto_docs/google/protobuf/any.rb +141 -0
  24. data/proto_docs/google/protobuf/duration.rb +98 -0
  25. data/proto_docs/google/protobuf/empty.rb +34 -0
  26. data/proto_docs/google/protobuf/field_mask.rb +229 -0
  27. data/proto_docs/google/protobuf/timestamp.rb +129 -0
  28. data/proto_docs/google/rpc/status.rb +46 -0
  29. data/proto_docs/google/type/expr.rb +75 -0
  30. metadata +262 -0
@@ -0,0 +1,1774 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2022 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Cloud
22
+ module VmwareEngine
23
+ module V1
24
+ # Network configuration in the consumer project
25
+ # with which the peering has to be done.
26
+ # @!attribute [rw] management_cidr
27
+ # @return [::String]
28
+ # Required. Management CIDR used by VMware management appliances.
29
+ # @!attribute [rw] vmware_engine_network
30
+ # @return [::String]
31
+ # Optional. The relative resource name of the VMware Engine network attached
32
+ # to the private cloud. Specify the name in the following form:
33
+ # `projects/{project}/locations/{location}/vmwareEngineNetworks/{vmware_engine_network_id}`
34
+ # where `{project}` can either be a project number or a project ID.
35
+ # @!attribute [r] vmware_engine_network_canonical
36
+ # @return [::String]
37
+ # Output only. The canonical name of the VMware Engine network in the form:
38
+ # `projects/{project_number}/locations/{location}/vmwareEngineNetworks/{vmware_engine_network_id}`
39
+ # @!attribute [r] management_ip_address_layout_version
40
+ # @return [::Integer]
41
+ # Output only. The IP address layout version of the management IP address
42
+ # range. Possible versions include:
43
+ # * `managementIpAddressLayoutVersion=1`: Indicates the legacy IP address
44
+ # layout used by some existing private clouds. This is no longer supported
45
+ # for new private clouds as it does not support all features.
46
+ # * `managementIpAddressLayoutVersion=2`: Indicates the latest IP address
47
+ # layout used by all newly created private clouds. This version supports all
48
+ # current features.
49
+ class NetworkConfig
50
+ include ::Google::Protobuf::MessageExts
51
+ extend ::Google::Protobuf::MessageExts::ClassMethods
52
+ end
53
+
54
+ # Information about the type and number of nodes associated with the cluster.
55
+ # @!attribute [rw] node_count
56
+ # @return [::Integer]
57
+ # Required. The number of nodes of this type in the cluster
58
+ # @!attribute [rw] custom_core_count
59
+ # @return [::Integer]
60
+ # Optional. Customized number of cores available to each node of the type.
61
+ # This number must always be one of `nodeType.availableCustomCoreCounts`.
62
+ # If zero is provided max value from `nodeType.availableCustomCoreCounts`
63
+ # will be used.
64
+ class NodeTypeConfig
65
+ include ::Google::Protobuf::MessageExts
66
+ extend ::Google::Protobuf::MessageExts::ClassMethods
67
+ end
68
+
69
+ # Represents a private cloud resource. Private clouds are zonal resources.
70
+ # @!attribute [r] name
71
+ # @return [::String]
72
+ # Output only. The resource name of this private cloud.
73
+ # Resource names are schemeless URIs that follow the conventions in
74
+ # https://cloud.google.com/apis/design/resource_names.
75
+ # For example:
76
+ # `projects/my-project/locations/us-west1-a/privateClouds/my-cloud`
77
+ # @!attribute [r] create_time
78
+ # @return [::Google::Protobuf::Timestamp]
79
+ # Output only. Creation time of this resource.
80
+ # @!attribute [r] update_time
81
+ # @return [::Google::Protobuf::Timestamp]
82
+ # Output only. Last update time of this resource.
83
+ # @!attribute [r] delete_time
84
+ # @return [::Google::Protobuf::Timestamp]
85
+ # Output only. Time when the resource was scheduled for deletion.
86
+ # @!attribute [r] expire_time
87
+ # @return [::Google::Protobuf::Timestamp]
88
+ # Output only. Time when the resource will be irreversibly deleted.
89
+ # @!attribute [r] state
90
+ # @return [::Google::Cloud::VmwareEngine::V1::PrivateCloud::State]
91
+ # Output only. State of the resource. New values may be added to this enum
92
+ # when appropriate.
93
+ # @!attribute [rw] network_config
94
+ # @return [::Google::Cloud::VmwareEngine::V1::NetworkConfig]
95
+ # Required. Network configuration of the private cloud.
96
+ # @!attribute [rw] management_cluster
97
+ # @return [::Google::Cloud::VmwareEngine::V1::PrivateCloud::ManagementCluster]
98
+ # Input only. The management cluster for this private cloud.
99
+ # This field is required during creation of the private cloud to provide
100
+ # details for the default cluster.
101
+ #
102
+ # The following fields can't be changed after private cloud creation:
103
+ # `ManagementCluster.clusterId`, `ManagementCluster.nodeTypeId`.
104
+ # @!attribute [rw] description
105
+ # @return [::String]
106
+ # User-provided description for this private cloud.
107
+ # @!attribute [r] hcx
108
+ # @return [::Google::Cloud::VmwareEngine::V1::Hcx]
109
+ # Output only. HCX appliance.
110
+ # @!attribute [r] nsx
111
+ # @return [::Google::Cloud::VmwareEngine::V1::Nsx]
112
+ # Output only. NSX appliance.
113
+ # @!attribute [r] vcenter
114
+ # @return [::Google::Cloud::VmwareEngine::V1::Vcenter]
115
+ # Output only. Vcenter appliance.
116
+ # @!attribute [r] uid
117
+ # @return [::String]
118
+ # Output only. System-generated unique identifier for the resource.
119
+ class PrivateCloud
120
+ include ::Google::Protobuf::MessageExts
121
+ extend ::Google::Protobuf::MessageExts::ClassMethods
122
+
123
+ # Management cluster configuration.
124
+ # @!attribute [rw] cluster_id
125
+ # @return [::String]
126
+ # Required. The user-provided identifier of the new `Cluster`.
127
+ # The identifier must meet the following requirements:
128
+ #
129
+ # * Only contains 1-63 alphanumeric characters and hyphens
130
+ # * Begins with an alphabetical character
131
+ # * Ends with a non-hyphen character
132
+ # * Not formatted as a UUID
133
+ # * Complies with [RFC
134
+ # 1034](https://datatracker.ietf.org/doc/html/rfc1034) (section 3.5)
135
+ # @!attribute [rw] node_type_configs
136
+ # @return [::Google::Protobuf::Map{::String => ::Google::Cloud::VmwareEngine::V1::NodeTypeConfig}]
137
+ # Required. The map of cluster node types in this cluster, where the key is canonical
138
+ # identifier of the node type (corresponds to the `NodeType`).
139
+ class ManagementCluster
140
+ include ::Google::Protobuf::MessageExts
141
+ extend ::Google::Protobuf::MessageExts::ClassMethods
142
+
143
+ # @!attribute [rw] key
144
+ # @return [::String]
145
+ # @!attribute [rw] value
146
+ # @return [::Google::Cloud::VmwareEngine::V1::NodeTypeConfig]
147
+ class NodeTypeConfigsEntry
148
+ include ::Google::Protobuf::MessageExts
149
+ extend ::Google::Protobuf::MessageExts::ClassMethods
150
+ end
151
+ end
152
+
153
+ # Enum State defines possible states of private clouds.
154
+ module State
155
+ # The default value. This value should never be used.
156
+ STATE_UNSPECIFIED = 0
157
+
158
+ # The private cloud is ready.
159
+ ACTIVE = 1
160
+
161
+ # The private cloud is being created.
162
+ CREATING = 2
163
+
164
+ # The private cloud is being updated.
165
+ UPDATING = 3
166
+
167
+ # The private cloud is in failed state.
168
+ FAILED = 5
169
+
170
+ # The private cloud is scheduled for deletion. The deletion process can be
171
+ # cancelled by using the corresponding undelete method.
172
+ DELETED = 6
173
+
174
+ # The private cloud is irreversibly deleted and is being removed from the
175
+ # system.
176
+ PURGING = 7
177
+ end
178
+ end
179
+
180
+ # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#list_private_clouds VmwareEngine.ListPrivateClouds}
181
+ # @!attribute [rw] parent
182
+ # @return [::String]
183
+ # Required. The resource name of the private cloud to be queried for
184
+ # clusters. Resource names are schemeless URIs that follow the conventions in
185
+ # https://cloud.google.com/apis/design/resource_names.
186
+ # For example:
187
+ # `projects/my-project/locations/us-west1-a`
188
+ # @!attribute [rw] page_size
189
+ # @return [::Integer]
190
+ # The maximum number of private clouds to return in one page.
191
+ # The service may return fewer than this value.
192
+ # The maximum value is coerced to 1000.
193
+ # The default value of this field is 500.
194
+ # @!attribute [rw] page_token
195
+ # @return [::String]
196
+ # A page token, received from a previous `ListPrivateClouds` call.
197
+ # Provide this to retrieve the subsequent page.
198
+ #
199
+ # When paginating, all other parameters provided to `ListPrivateClouds` must
200
+ # match the call that provided the page token.
201
+ # @!attribute [rw] filter
202
+ # @return [::String]
203
+ # A filter expression that matches resources returned in the response.
204
+ # The expression must specify the field name, a comparison operator, and the
205
+ # value that you want to use for filtering. The value must be a string, a
206
+ # number, or a boolean. The comparison operator must be `=`, `!=`, `>`, or
207
+ # `<`.
208
+ #
209
+ # For example, if you are filtering a list of private clouds, you can exclude
210
+ # the ones named `example-pc` by specifying `name != "example-pc"`.
211
+ #
212
+ # You can also filter nested fields. For example, you could specify
213
+ # `networkConfig.managementCidr = "192.168.0.0/24"` to include private clouds
214
+ # only if they have a matching address in their network configuration.
215
+ #
216
+ # To filter on multiple expressions, provide each separate expression within
217
+ # parentheses. For example:
218
+ # ```
219
+ # (name = "example-pc")
220
+ # (createTime > "2021-04-12T08:15:10.40Z")
221
+ # ```
222
+ #
223
+ # By default, each expression is an `AND` expression. However, you can
224
+ # include `AND` and `OR` expressions explicitly. For example:
225
+ # ```
226
+ # (name = "private-cloud-1") AND
227
+ # (createTime > "2021-04-12T08:15:10.40Z") OR
228
+ # (name = "private-cloud-2")
229
+ # ```
230
+ # @!attribute [rw] order_by
231
+ # @return [::String]
232
+ # Sorts list results by a certain order. By default, returned results are
233
+ # ordered by `name` in ascending order. You can also sort results in
234
+ # descending order based on the `name` value using `orderBy="name desc"`.
235
+ # Currently, only ordering by `name` is supported.
236
+ class ListPrivateCloudsRequest
237
+ include ::Google::Protobuf::MessageExts
238
+ extend ::Google::Protobuf::MessageExts::ClassMethods
239
+ end
240
+
241
+ # Response message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#list_private_clouds VmwareEngine.ListPrivateClouds}
242
+ # @!attribute [rw] private_clouds
243
+ # @return [::Array<::Google::Cloud::VmwareEngine::V1::PrivateCloud>]
244
+ # A list of private clouds.
245
+ # @!attribute [rw] next_page_token
246
+ # @return [::String]
247
+ # A token, which can be sent as `page_token` to retrieve the next page.
248
+ # If this field is omitted, there are no subsequent pages.
249
+ # @!attribute [rw] unreachable
250
+ # @return [::Array<::String>]
251
+ # Locations that could not be reached when making an aggregated query using
252
+ # wildcards.
253
+ class ListPrivateCloudsResponse
254
+ include ::Google::Protobuf::MessageExts
255
+ extend ::Google::Protobuf::MessageExts::ClassMethods
256
+ end
257
+
258
+ # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#get_private_cloud VmwareEngine.GetPrivateCloud}
259
+ # @!attribute [rw] name
260
+ # @return [::String]
261
+ # Required. The resource name of the private cloud to retrieve.
262
+ # Resource names are schemeless URIs that follow the conventions in
263
+ # https://cloud.google.com/apis/design/resource_names.
264
+ # For example:
265
+ # `projects/my-project/locations/us-west1-a/privateClouds/my-cloud`
266
+ class GetPrivateCloudRequest
267
+ include ::Google::Protobuf::MessageExts
268
+ extend ::Google::Protobuf::MessageExts::ClassMethods
269
+ end
270
+
271
+ # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#create_private_cloud VmwareEngine.CreatePrivateCloud}
272
+ # @!attribute [rw] parent
273
+ # @return [::String]
274
+ # Required. The resource name of the location to create the new
275
+ # private cloud in. Resource names are schemeless URIs that follow the
276
+ # conventions in https://cloud.google.com/apis/design/resource_names.
277
+ # For example:
278
+ # `projects/my-project/locations/us-west1-a`
279
+ # @!attribute [rw] private_cloud_id
280
+ # @return [::String]
281
+ # Required. The user-provided identifier of the private cloud to be created.
282
+ # This identifier must be unique among each `PrivateCloud` within the parent
283
+ # and becomes the final token in the name URI.
284
+ # The identifier must meet the following requirements:
285
+ #
286
+ # * Only contains 1-63 alphanumeric characters and hyphens
287
+ # * Begins with an alphabetical character
288
+ # * Ends with a non-hyphen character
289
+ # * Not formatted as a UUID
290
+ # * Complies with [RFC 1034](https://datatracker.ietf.org/doc/html/rfc1034)
291
+ # (section 3.5)
292
+ # @!attribute [rw] private_cloud
293
+ # @return [::Google::Cloud::VmwareEngine::V1::PrivateCloud]
294
+ # Required. The initial description of the new private cloud.
295
+ # @!attribute [rw] request_id
296
+ # @return [::String]
297
+ # Optional. The request ID must be a valid UUID with the exception that zero UUID is
298
+ # not supported (00000000-0000-0000-0000-000000000000).
299
+ # @!attribute [rw] validate_only
300
+ # @return [::Boolean]
301
+ # Optional. True if you want the request to be validated and not executed; false
302
+ # otherwise.
303
+ class CreatePrivateCloudRequest
304
+ include ::Google::Protobuf::MessageExts
305
+ extend ::Google::Protobuf::MessageExts::ClassMethods
306
+ end
307
+
308
+ # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#update_private_cloud VmwareEngine.UpdatePrivateCloud}
309
+ # @!attribute [rw] private_cloud
310
+ # @return [::Google::Cloud::VmwareEngine::V1::PrivateCloud]
311
+ # Required. Private cloud description.
312
+ # @!attribute [rw] update_mask
313
+ # @return [::Google::Protobuf::FieldMask]
314
+ # Required. Field mask is used to specify the fields to be overwritten in the
315
+ # `PrivateCloud` resource by the update. The fields specified in `updateMask`
316
+ # are relative to the resource, not the full request. A field will be
317
+ # overwritten if it is in the mask. If the user does not provide a mask then
318
+ # all fields will be overwritten.
319
+ # @!attribute [rw] request_id
320
+ # @return [::String]
321
+ # Optional. The request ID must be a valid UUID with the exception that zero UUID is
322
+ # not supported (00000000-0000-0000-0000-000000000000).
323
+ class UpdatePrivateCloudRequest
324
+ include ::Google::Protobuf::MessageExts
325
+ extend ::Google::Protobuf::MessageExts::ClassMethods
326
+ end
327
+
328
+ # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#delete_private_cloud VmwareEngine.DeletePrivateCloud}
329
+ # @!attribute [rw] name
330
+ # @return [::String]
331
+ # Required. The resource name of the private cloud to delete.
332
+ # Resource names are schemeless URIs that follow the conventions in
333
+ # https://cloud.google.com/apis/design/resource_names.
334
+ # For example:
335
+ # `projects/my-project/locations/us-west1-a/privateClouds/my-cloud`
336
+ # @!attribute [rw] request_id
337
+ # @return [::String]
338
+ # Optional. The request ID must be a valid UUID with the exception that zero UUID is
339
+ # not supported (00000000-0000-0000-0000-000000000000).
340
+ # @!attribute [rw] force
341
+ # @return [::Boolean]
342
+ # Optional. If set to true, cascade delete is enabled and all children of this private
343
+ # cloud resource are also deleted. When this flag is set to false, the
344
+ # private cloud will not be deleted if there are any children other than the
345
+ # management cluster. The management cluster is always deleted.
346
+ # @!attribute [rw] delay_hours
347
+ # @return [::Integer]
348
+ # Optional. Time delay of the deletion specified in hours. The default value
349
+ # is `3`. Specifying a non-zero value for this field changes the value of
350
+ # `PrivateCloud.state` to `DELETED` and sets `expire_time` to the planned
351
+ # deletion time. Deletion can be cancelled before `expire_time` elapses using
352
+ # {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#undelete_private_cloud VmwareEngine.UndeletePrivateCloud}. Specifying a value of `0` for
353
+ # this field instead begins the deletion process and ceases billing
354
+ # immediately. During the final deletion process, the value of
355
+ # `PrivateCloud.state` becomes `PURGING`.
356
+ class DeletePrivateCloudRequest
357
+ include ::Google::Protobuf::MessageExts
358
+ extend ::Google::Protobuf::MessageExts::ClassMethods
359
+ end
360
+
361
+ # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#undelete_private_cloud VmwareEngine.UndeletePrivateCloud}
362
+ # @!attribute [rw] name
363
+ # @return [::String]
364
+ # Required. The resource name of the private cloud scheduled for deletion.
365
+ # Resource names are schemeless URIs that follow the conventions in
366
+ # https://cloud.google.com/apis/design/resource_names.
367
+ # For example:
368
+ # `projects/my-project/locations/us-west1-a/privateClouds/my-cloud`
369
+ # @!attribute [rw] request_id
370
+ # @return [::String]
371
+ # Optional. The request ID must be a valid UUID with the exception that zero UUID is
372
+ # not supported (00000000-0000-0000-0000-000000000000).
373
+ class UndeletePrivateCloudRequest
374
+ include ::Google::Protobuf::MessageExts
375
+ extend ::Google::Protobuf::MessageExts::ClassMethods
376
+ end
377
+
378
+ # A cluster in a private cloud.
379
+ # @!attribute [r] name
380
+ # @return [::String]
381
+ # Output only. The resource name of this cluster.
382
+ # Resource names are schemeless URIs that follow the conventions in
383
+ # https://cloud.google.com/apis/design/resource_names.
384
+ # For example:
385
+ # `projects/my-project/locations/us-west1-a/privateClouds/my-cloud/clusters/my-cluster`
386
+ # @!attribute [r] create_time
387
+ # @return [::Google::Protobuf::Timestamp]
388
+ # Output only. Creation time of this resource.
389
+ # @!attribute [r] update_time
390
+ # @return [::Google::Protobuf::Timestamp]
391
+ # Output only. Last update time of this resource.
392
+ # @!attribute [r] state
393
+ # @return [::Google::Cloud::VmwareEngine::V1::Cluster::State]
394
+ # Output only. State of the resource.
395
+ # @!attribute [r] management
396
+ # @return [::Boolean]
397
+ # Output only. True if the cluster is a management cluster; false otherwise.
398
+ # There can only be one management cluster in a private cloud
399
+ # and it has to be the first one.
400
+ # @!attribute [r] uid
401
+ # @return [::String]
402
+ # Output only. System-generated unique identifier for the resource.
403
+ # @!attribute [rw] node_type_configs
404
+ # @return [::Google::Protobuf::Map{::String => ::Google::Cloud::VmwareEngine::V1::NodeTypeConfig}]
405
+ # Required. The map of cluster node types in this cluster, where the key is canonical
406
+ # identifier of the node type (corresponds to the `NodeType`).
407
+ class Cluster
408
+ include ::Google::Protobuf::MessageExts
409
+ extend ::Google::Protobuf::MessageExts::ClassMethods
410
+
411
+ # @!attribute [rw] key
412
+ # @return [::String]
413
+ # @!attribute [rw] value
414
+ # @return [::Google::Cloud::VmwareEngine::V1::NodeTypeConfig]
415
+ class NodeTypeConfigsEntry
416
+ include ::Google::Protobuf::MessageExts
417
+ extend ::Google::Protobuf::MessageExts::ClassMethods
418
+ end
419
+
420
+ # Enum State defines possible states of private cloud clusters.
421
+ module State
422
+ # The default value. This value should never be used.
423
+ STATE_UNSPECIFIED = 0
424
+
425
+ # The Cluster is operational and can be used by the user.
426
+ ACTIVE = 1
427
+
428
+ # The Cluster is being deployed.
429
+ CREATING = 2
430
+
431
+ # Adding or removing of a node to the cluster, any other cluster specific
432
+ # updates.
433
+ UPDATING = 3
434
+
435
+ # The Cluster is being deleted.
436
+ DELETING = 4
437
+
438
+ # The Cluster is undergoing maintenance, for example: a failed node is
439
+ # getting replaced.
440
+ REPAIRING = 5
441
+ end
442
+ end
443
+
444
+ # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#list_clusters VmwareEngine.ListClusters}
445
+ # @!attribute [rw] parent
446
+ # @return [::String]
447
+ # Required. The resource name of the private cloud to query for clusters.
448
+ # Resource names are schemeless URIs that follow the conventions in
449
+ # https://cloud.google.com/apis/design/resource_names.
450
+ # For example:
451
+ # `projects/my-project/locations/us-west1-a/privateClouds/my-cloud`
452
+ # @!attribute [rw] page_size
453
+ # @return [::Integer]
454
+ # The maximum number of clusters to return in one page.
455
+ # The service may return fewer than this value.
456
+ # The maximum value is coerced to 1000.
457
+ # The default value of this field is 500.
458
+ # @!attribute [rw] page_token
459
+ # @return [::String]
460
+ # A page token, received from a previous `ListClusters` call.
461
+ # Provide this to retrieve the subsequent page.
462
+ #
463
+ # When paginating, all other parameters provided to `ListClusters`
464
+ # must match the call that provided the page token.
465
+ # @!attribute [rw] filter
466
+ # @return [::String]
467
+ # To filter on multiple expressions, provide each separate expression within
468
+ # parentheses. For example:
469
+ # ```
470
+ # (name = "example-cluster")
471
+ # (nodeCount = "3")
472
+ # ```
473
+ #
474
+ # By default, each expression is an `AND` expression. However, you can
475
+ # include `AND` and `OR` expressions explicitly. For example:
476
+ # ```
477
+ # (name = "example-cluster-1") AND
478
+ # (createTime > "2021-04-12T08:15:10.40Z") OR
479
+ # (name = "example-cluster-2")
480
+ # ```
481
+ # @!attribute [rw] order_by
482
+ # @return [::String]
483
+ # Sorts list results by a certain order. By default, returned results are
484
+ # ordered by `name` in ascending order. You can also sort results in
485
+ # descending order based on the `name` value using `orderBy="name desc"`.
486
+ # Currently, only ordering by `name` is supported.
487
+ class ListClustersRequest
488
+ include ::Google::Protobuf::MessageExts
489
+ extend ::Google::Protobuf::MessageExts::ClassMethods
490
+ end
491
+
492
+ # Response message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#list_clusters VmwareEngine.ListClusters}
493
+ # @!attribute [rw] clusters
494
+ # @return [::Array<::Google::Cloud::VmwareEngine::V1::Cluster>]
495
+ # A list of private cloud clusters.
496
+ # @!attribute [rw] next_page_token
497
+ # @return [::String]
498
+ # A token, which can be sent as `page_token` to retrieve the next page.
499
+ # If this field is omitted, there are no subsequent pages.
500
+ # @!attribute [rw] unreachable
501
+ # @return [::Array<::String>]
502
+ # Locations that could not be reached when making an aggregated query using
503
+ # wildcards.
504
+ class ListClustersResponse
505
+ include ::Google::Protobuf::MessageExts
506
+ extend ::Google::Protobuf::MessageExts::ClassMethods
507
+ end
508
+
509
+ # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#get_cluster VmwareEngine.GetCluster}
510
+ # @!attribute [rw] name
511
+ # @return [::String]
512
+ # Required. The cluster resource name to retrieve.
513
+ # Resource names are schemeless URIs that follow the conventions in
514
+ # https://cloud.google.com/apis/design/resource_names.
515
+ # For example:
516
+ # `projects/my-project/locations/us-west1-a/privateClouds/my-cloud/clusters/my-cluster`
517
+ class GetClusterRequest
518
+ include ::Google::Protobuf::MessageExts
519
+ extend ::Google::Protobuf::MessageExts::ClassMethods
520
+ end
521
+
522
+ # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#create_cluster VmwareEngine.CreateCluster}
523
+ # @!attribute [rw] parent
524
+ # @return [::String]
525
+ # Required. The resource name of the private cloud to create a new cluster
526
+ # in. Resource names are schemeless URIs that follow the conventions in
527
+ # https://cloud.google.com/apis/design/resource_names.
528
+ # For example:
529
+ # `projects/my-project/locations/us-west1-a/privateClouds/my-cloud`
530
+ # @!attribute [rw] cluster_id
531
+ # @return [::String]
532
+ # Required. The user-provided identifier of the new `Cluster`.
533
+ # This identifier must be unique among clusters within the parent and becomes
534
+ # the final token in the name URI.
535
+ # The identifier must meet the following requirements:
536
+ #
537
+ # * Only contains 1-63 alphanumeric characters and hyphens
538
+ # * Begins with an alphabetical character
539
+ # * Ends with a non-hyphen character
540
+ # * Not formatted as a UUID
541
+ # * Complies with [RFC 1034](https://datatracker.ietf.org/doc/html/rfc1034)
542
+ # (section 3.5)
543
+ # @!attribute [rw] cluster
544
+ # @return [::Google::Cloud::VmwareEngine::V1::Cluster]
545
+ # Required. The initial description of the new cluster.
546
+ # @!attribute [rw] request_id
547
+ # @return [::String]
548
+ # Optional. The request ID must be a valid UUID with the exception that zero UUID is
549
+ # not supported (00000000-0000-0000-0000-000000000000).
550
+ # @!attribute [rw] validate_only
551
+ # @return [::Boolean]
552
+ # Optional. True if you want the request to be validated and not executed; false
553
+ # otherwise.
554
+ class CreateClusterRequest
555
+ include ::Google::Protobuf::MessageExts
556
+ extend ::Google::Protobuf::MessageExts::ClassMethods
557
+ end
558
+
559
+ # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#update_cluster VmwareEngine.UpdateCluster}
560
+ # @!attribute [rw] update_mask
561
+ # @return [::Google::Protobuf::FieldMask]
562
+ # Required. Field mask is used to specify the fields to be overwritten in the
563
+ # `Cluster` resource by the update. The fields specified in the `updateMask`
564
+ # are relative to the resource, not the full request. A field will be
565
+ # overwritten if it is in the mask. If the user does not provide a mask then
566
+ # all fields will be overwritten.
567
+ # @!attribute [rw] cluster
568
+ # @return [::Google::Cloud::VmwareEngine::V1::Cluster]
569
+ # Required. The description of the cluster.
570
+ # @!attribute [rw] request_id
571
+ # @return [::String]
572
+ # Optional. The request ID must be a valid UUID with the exception that
573
+ # zero UUID is not supported (00000000-0000-0000-0000-000000000000).
574
+ # @!attribute [rw] validate_only
575
+ # @return [::Boolean]
576
+ # Optional. True if you want the request to be validated and not executed; false
577
+ # otherwise.
578
+ class UpdateClusterRequest
579
+ include ::Google::Protobuf::MessageExts
580
+ extend ::Google::Protobuf::MessageExts::ClassMethods
581
+ end
582
+
583
+ # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#delete_cluster VmwareEngine.DeleteCluster}
584
+ # @!attribute [rw] name
585
+ # @return [::String]
586
+ # Required. The resource name of the cluster to delete.
587
+ # Resource names are schemeless URIs that follow the conventions in
588
+ # https://cloud.google.com/apis/design/resource_names.
589
+ # For example:
590
+ # `projects/my-project/locations/us-west1-a/privateClouds/my-cloud/clusters/my-cluster`
591
+ # @!attribute [rw] request_id
592
+ # @return [::String]
593
+ # Optional. The request ID must be a valid UUID with the exception that zero UUID is
594
+ # not supported (00000000-0000-0000-0000-000000000000).
595
+ class DeleteClusterRequest
596
+ include ::Google::Protobuf::MessageExts
597
+ extend ::Google::Protobuf::MessageExts::ClassMethods
598
+ end
599
+
600
+ # Subnet in a private cloud. Either `management` subnets (such as vMotion) that
601
+ # are read-only, or `userDefined`, which can also be updated.
602
+ # @!attribute [r] name
603
+ # @return [::String]
604
+ # Output only. The resource name of this subnet.
605
+ # Resource names are schemeless URIs that follow the conventions in
606
+ # https://cloud.google.com/apis/design/resource_names.
607
+ # For example:
608
+ # `projects/my-project/locations/us-west1-a/privateClouds/my-cloud/subnets/my-subnet`
609
+ # @!attribute [rw] ip_cidr_range
610
+ # @return [::String]
611
+ # The IP address range of the subnet in CIDR format '10.0.0.0/24'.
612
+ # @!attribute [rw] gateway_ip
613
+ # @return [::String]
614
+ # The IP address of the gateway of this subnet.
615
+ # Must fall within the IP prefix defined above.
616
+ # @!attribute [r] type
617
+ # @return [::String]
618
+ # Output only. The type of the subnet. For example "management" or "userDefined".
619
+ # @!attribute [r] state
620
+ # @return [::Google::Cloud::VmwareEngine::V1::Subnet::State]
621
+ # Output only. The state of the resource.
622
+ class Subnet
623
+ include ::Google::Protobuf::MessageExts
624
+ extend ::Google::Protobuf::MessageExts::ClassMethods
625
+
626
+ # Defines possible states of subnets.
627
+ module State
628
+ # The default value. This value should never be used.
629
+ STATE_UNSPECIFIED = 0
630
+
631
+ # The subnet is ready.
632
+ ACTIVE = 1
633
+
634
+ # The subnet is being created.
635
+ CREATING = 2
636
+
637
+ # The subnet is being updated.
638
+ UPDATING = 3
639
+
640
+ # The subnet is being deleted.
641
+ DELETING = 4
642
+ end
643
+ end
644
+
645
+ # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#list_subnets VmwareEngine.ListSubnets}
646
+ # @!attribute [rw] parent
647
+ # @return [::String]
648
+ # Required. The resource name of the private cloud to be queried for
649
+ # subnets.
650
+ # Resource names are schemeless URIs that follow the conventions in
651
+ # https://cloud.google.com/apis/design/resource_names.
652
+ # For example:
653
+ # `projects/my-project/locations/us-west1-a/privateClouds/my-cloud`
654
+ # @!attribute [rw] page_size
655
+ # @return [::Integer]
656
+ # The maximum number of subnets to return in one page.
657
+ # The service may return fewer than this value.
658
+ # The maximum value is coerced to 1000.
659
+ # The default value of this field is 500.
660
+ # @!attribute [rw] page_token
661
+ # @return [::String]
662
+ # A page token, received from a previous `ListSubnetsRequest` call.
663
+ # Provide this to retrieve the subsequent page.
664
+ #
665
+ # When paginating, all other parameters provided to
666
+ # `ListSubnetsRequest` must match the call that provided the page token.
667
+ class ListSubnetsRequest
668
+ include ::Google::Protobuf::MessageExts
669
+ extend ::Google::Protobuf::MessageExts::ClassMethods
670
+ end
671
+
672
+ # Response message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#list_subnets VmwareEngine.ListSubnets}
673
+ # @!attribute [rw] subnets
674
+ # @return [::Array<::Google::Cloud::VmwareEngine::V1::Subnet>]
675
+ # A list of subnets.
676
+ # @!attribute [rw] next_page_token
677
+ # @return [::String]
678
+ # A token, which can be sent as `page_token` to retrieve the next page.
679
+ # If this field is omitted, there are no subsequent pages.
680
+ class ListSubnetsResponse
681
+ include ::Google::Protobuf::MessageExts
682
+ extend ::Google::Protobuf::MessageExts::ClassMethods
683
+ end
684
+
685
+ # Represents the metadata of the long-running operation.
686
+ # @!attribute [r] create_time
687
+ # @return [::Google::Protobuf::Timestamp]
688
+ # Output only. The time the operation was created.
689
+ # @!attribute [r] end_time
690
+ # @return [::Google::Protobuf::Timestamp]
691
+ # Output only. The time the operation finished running.
692
+ # @!attribute [r] target
693
+ # @return [::String]
694
+ # Output only. Server-defined resource path for the target of the operation.
695
+ # @!attribute [r] verb
696
+ # @return [::String]
697
+ # Output only. Name of the verb executed by the operation.
698
+ # @!attribute [r] status_message
699
+ # @return [::String]
700
+ # Output only. Human-readable status of the operation, if any.
701
+ # @!attribute [r] requested_cancellation
702
+ # @return [::Boolean]
703
+ # Output only. True if the user has requested cancellation
704
+ # of the operation; false otherwise.
705
+ # Operations that have successfully been cancelled
706
+ # have [Operation.error][] value with a {::Google::Rpc::Status#code google.rpc.Status.code} of 1,
707
+ # corresponding to `Code.CANCELLED`.
708
+ # @!attribute [r] api_version
709
+ # @return [::String]
710
+ # Output only. API version used to start the operation.
711
+ class OperationMetadata
712
+ include ::Google::Protobuf::MessageExts
713
+ extend ::Google::Protobuf::MessageExts::ClassMethods
714
+ end
715
+
716
+ # Describes node type.
717
+ # @!attribute [r] name
718
+ # @return [::String]
719
+ # Output only. The resource name of this node type.
720
+ # Resource names are schemeless URIs that follow the conventions in
721
+ # https://cloud.google.com/apis/design/resource_names.
722
+ # For example:
723
+ # `projects/my-proj/locations/us-west1-a/nodeTypes/standard-72`
724
+ # @!attribute [r] node_type_id
725
+ # @return [::String]
726
+ # Output only. The canonical identifier of the node type
727
+ # (corresponds to the `NodeType`). For example: standard-72.
728
+ # @!attribute [r] display_name
729
+ # @return [::String]
730
+ # Output only. The friendly name for this node type.
731
+ # For example: ve1-standard-72
732
+ # @!attribute [r] virtual_cpu_count
733
+ # @return [::Integer]
734
+ # Output only. The total number of virtual CPUs in a single node.
735
+ # @!attribute [r] total_core_count
736
+ # @return [::Integer]
737
+ # Output only. The total number of CPU cores in a single node.
738
+ # @!attribute [r] memory_gb
739
+ # @return [::Integer]
740
+ # Output only. The amount of physical memory available, defined in GB.
741
+ # @!attribute [r] disk_size_gb
742
+ # @return [::Integer]
743
+ # Output only. The amount of storage available, defined in GB.
744
+ # @!attribute [r] available_custom_core_counts
745
+ # @return [::Array<::Integer>]
746
+ # Output only. List of possible values of custom core count.
747
+ class NodeType
748
+ include ::Google::Protobuf::MessageExts
749
+ extend ::Google::Protobuf::MessageExts::ClassMethods
750
+ end
751
+
752
+ # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#list_node_types VmwareEngine.ListNodeTypes}
753
+ # @!attribute [rw] parent
754
+ # @return [::String]
755
+ # Required. The resource name of the location to be queried for node types.
756
+ # Resource names are schemeless URIs that follow the conventions in
757
+ # https://cloud.google.com/apis/design/resource_names.
758
+ # For example:
759
+ # `projects/my-project/locations/us-west1-a`
760
+ # @!attribute [rw] page_size
761
+ # @return [::Integer]
762
+ # The maximum number of node types to return in one page.
763
+ # The service may return fewer than this value.
764
+ # The maximum value is coerced to 1000.
765
+ # The default value of this field is 500.
766
+ # @!attribute [rw] page_token
767
+ # @return [::String]
768
+ # A page token, received from a previous `ListNodeTypes` call.
769
+ # Provide this to retrieve the subsequent page.
770
+ #
771
+ # When paginating, all other parameters provided to
772
+ # `ListNodeTypes` must match the call that provided the page token.
773
+ # @!attribute [rw] filter
774
+ # @return [::String]
775
+ # A filter expression that matches resources returned in the response.
776
+ # The expression must specify the field name, a comparison
777
+ # operator, and the value that you want to use for filtering. The value
778
+ # must be a string, a number, or a boolean. The comparison operator
779
+ # must be `=`, `!=`, `>`, or `<`.
780
+ #
781
+ # For example, if you are filtering a list of node types, you can
782
+ # exclude the ones named `standard-72` by specifying
783
+ # `name != "standard-72"`.
784
+ #
785
+ # To filter on multiple expressions, provide each separate expression within
786
+ # parentheses. For example:
787
+ # ```
788
+ # (name = "standard-72")
789
+ # (virtual_cpu_count > 2)
790
+ # ```
791
+ #
792
+ # By default, each expression is an `AND` expression. However, you
793
+ # can include `AND` and `OR` expressions explicitly.
794
+ # For example:
795
+ # ```
796
+ # (name = "standard-96") AND
797
+ # (virtual_cpu_count > 2) OR
798
+ # (name = "standard-72")
799
+ # ```
800
+ class ListNodeTypesRequest
801
+ include ::Google::Protobuf::MessageExts
802
+ extend ::Google::Protobuf::MessageExts::ClassMethods
803
+ end
804
+
805
+ # Response message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#list_node_types VmwareEngine.ListNodeTypes}
806
+ # @!attribute [rw] node_types
807
+ # @return [::Array<::Google::Cloud::VmwareEngine::V1::NodeType>]
808
+ # A list of Node Types.
809
+ # @!attribute [rw] next_page_token
810
+ # @return [::String]
811
+ # A token, which can be sent as `page_token` to retrieve the next page.
812
+ # If this field is omitted, there are no subsequent pages.
813
+ # @!attribute [rw] unreachable
814
+ # @return [::Array<::String>]
815
+ # Locations that could not be reached when making an aggregated query using
816
+ # wildcards.
817
+ class ListNodeTypesResponse
818
+ include ::Google::Protobuf::MessageExts
819
+ extend ::Google::Protobuf::MessageExts::ClassMethods
820
+ end
821
+
822
+ # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#get_node_type VmwareEngine.GetNodeType}
823
+ # @!attribute [rw] name
824
+ # @return [::String]
825
+ # Required. The resource name of the node type to retrieve.
826
+ # Resource names are schemeless URIs that follow the conventions in
827
+ # https://cloud.google.com/apis/design/resource_names.
828
+ # For example:
829
+ # `projects/my-proj/locations/us-west1-a/nodeTypes/standard-72`
830
+ class GetNodeTypeRequest
831
+ include ::Google::Protobuf::MessageExts
832
+ extend ::Google::Protobuf::MessageExts::ClassMethods
833
+ end
834
+
835
+ # Credentials for a private cloud.
836
+ # @!attribute [rw] username
837
+ # @return [::String]
838
+ # Initial username.
839
+ # @!attribute [rw] password
840
+ # @return [::String]
841
+ # Initial password.
842
+ class Credentials
843
+ include ::Google::Protobuf::MessageExts
844
+ extend ::Google::Protobuf::MessageExts::ClassMethods
845
+ end
846
+
847
+ # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#show_nsx_credentials VmwareEngine.ShowNsxCredentials}
848
+ # @!attribute [rw] private_cloud
849
+ # @return [::String]
850
+ # Required. The resource name of the private cloud
851
+ # to be queried for credentials.
852
+ # Resource names are schemeless URIs that follow the conventions in
853
+ # https://cloud.google.com/apis/design/resource_names.
854
+ # For example:
855
+ # `projects/my-project/locations/us-west1-a/privateClouds/my-cloud`
856
+ class ShowNsxCredentialsRequest
857
+ include ::Google::Protobuf::MessageExts
858
+ extend ::Google::Protobuf::MessageExts::ClassMethods
859
+ end
860
+
861
+ # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#show_vcenter_credentials VmwareEngine.ShowVcenterCredentials}
862
+ # @!attribute [rw] private_cloud
863
+ # @return [::String]
864
+ # Required. The resource name of the private cloud
865
+ # to be queried for credentials.
866
+ # Resource names are schemeless URIs that follow the conventions in
867
+ # https://cloud.google.com/apis/design/resource_names.
868
+ # For example:
869
+ # `projects/my-project/locations/us-west1-a/privateClouds/my-cloud`
870
+ class ShowVcenterCredentialsRequest
871
+ include ::Google::Protobuf::MessageExts
872
+ extend ::Google::Protobuf::MessageExts::ClassMethods
873
+ end
874
+
875
+ # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#reset_nsx_credentials VmwareEngine.ResetNsxCredentials}
876
+ # @!attribute [rw] private_cloud
877
+ # @return [::String]
878
+ # Required. The resource name of the private cloud
879
+ # to reset credentials for.
880
+ # Resource names are schemeless URIs that follow the conventions in
881
+ # https://cloud.google.com/apis/design/resource_names.
882
+ # For example:
883
+ # `projects/my-project/locations/us-west1-a/privateClouds/my-cloud`
884
+ # @!attribute [rw] request_id
885
+ # @return [::String]
886
+ # Optional. A request ID to identify requests. Specify a unique request ID
887
+ # so that if you must retry your request, the server will know to ignore
888
+ # the request if it has already been completed. The server guarantees that a
889
+ # request doesn't result in creation of duplicate commitments for at least 60
890
+ # minutes.
891
+ #
892
+ # For example, consider a situation where you make an initial request and the
893
+ # request times out. If you make the request again with the same request
894
+ # ID, the server can check if original operation with the same request ID
895
+ # was received, and if so, will ignore the second request. This prevents
896
+ # clients from accidentally creating duplicate commitments.
897
+ #
898
+ # The request ID must be a valid UUID with the exception that zero UUID is
899
+ # not supported (00000000-0000-0000-0000-000000000000).
900
+ class ResetNsxCredentialsRequest
901
+ include ::Google::Protobuf::MessageExts
902
+ extend ::Google::Protobuf::MessageExts::ClassMethods
903
+ end
904
+
905
+ # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#reset_vcenter_credentials VmwareEngine.ResetVcenterCredentials}
906
+ # @!attribute [rw] private_cloud
907
+ # @return [::String]
908
+ # Required. The resource name of the private cloud
909
+ # to reset credentials for.
910
+ # Resource names are schemeless URIs that follow the conventions in
911
+ # https://cloud.google.com/apis/design/resource_names.
912
+ # For example:
913
+ # `projects/my-project/locations/us-west1-a/privateClouds/my-cloud`
914
+ # @!attribute [rw] request_id
915
+ # @return [::String]
916
+ # Optional. A request ID to identify requests. Specify a unique request ID
917
+ # so that if you must retry your request, the server will know to ignore
918
+ # the request if it has already been completed. The server guarantees that a
919
+ # request doesn't result in creation of duplicate commitments for at least 60
920
+ # minutes.
921
+ #
922
+ # For example, consider a situation where you make an initial request and the
923
+ # request times out. If you make the request again with the same request
924
+ # ID, the server can check if original operation with the same request ID
925
+ # was received, and if so, will ignore the second request. This prevents
926
+ # clients from accidentally creating duplicate commitments.
927
+ #
928
+ # The request ID must be a valid UUID with the exception that zero UUID is
929
+ # not supported (00000000-0000-0000-0000-000000000000).
930
+ class ResetVcenterCredentialsRequest
931
+ include ::Google::Protobuf::MessageExts
932
+ extend ::Google::Protobuf::MessageExts::ClassMethods
933
+ end
934
+
935
+ # Response message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#list_hcx_activation_keys VmwareEngine.ListHcxActivationKeys}
936
+ # @!attribute [rw] hcx_activation_keys
937
+ # @return [::Array<::Google::Cloud::VmwareEngine::V1::HcxActivationKey>]
938
+ # List of HCX activation keys.
939
+ # @!attribute [rw] next_page_token
940
+ # @return [::String]
941
+ # A token, which can be sent as `page_token` to retrieve the next page.
942
+ # If this field is omitted, there are no subsequent pages.
943
+ # @!attribute [rw] unreachable
944
+ # @return [::Array<::String>]
945
+ # Locations that could not be reached when making an aggregated query using
946
+ # wildcards.
947
+ class ListHcxActivationKeysResponse
948
+ include ::Google::Protobuf::MessageExts
949
+ extend ::Google::Protobuf::MessageExts::ClassMethods
950
+ end
951
+
952
+ # HCX activation key. A default key is created during
953
+ # private cloud provisioning, but this behavior is subject to change
954
+ # and you should always verify active keys.
955
+ # Use {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#list_hcx_activation_keys VmwareEngine.ListHcxActivationKeys} to retrieve existing keys
956
+ # and {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#create_hcx_activation_key VmwareEngine.CreateHcxActivationKey} to create new ones.
957
+ # @!attribute [r] name
958
+ # @return [::String]
959
+ # Output only. The resource name of this HcxActivationKey.
960
+ # Resource names are schemeless URIs that follow the conventions in
961
+ # https://cloud.google.com/apis/design/resource_names.
962
+ # For example:
963
+ # `projects/my-project/locations/us-west1/privateClouds/my-cloud/hcxActivationKeys/my-key`
964
+ # @!attribute [r] create_time
965
+ # @return [::Google::Protobuf::Timestamp]
966
+ # Output only. Creation time of HCX activation key.
967
+ # @!attribute [r] state
968
+ # @return [::Google::Cloud::VmwareEngine::V1::HcxActivationKey::State]
969
+ # Output only. State of HCX activation key.
970
+ # @!attribute [r] activation_key
971
+ # @return [::String]
972
+ # Output only. HCX activation key.
973
+ # @!attribute [r] uid
974
+ # @return [::String]
975
+ # Output only. System-generated unique identifier for the resource.
976
+ class HcxActivationKey
977
+ include ::Google::Protobuf::MessageExts
978
+ extend ::Google::Protobuf::MessageExts::ClassMethods
979
+
980
+ # State of HCX activation key
981
+ module State
982
+ # Unspecified state.
983
+ STATE_UNSPECIFIED = 0
984
+
985
+ # State of a newly generated activation key.
986
+ AVAILABLE = 1
987
+
988
+ # State of key when it has been used to activate HCX appliance.
989
+ CONSUMED = 2
990
+
991
+ # State of key when it is being created.
992
+ CREATING = 3
993
+ end
994
+ end
995
+
996
+ # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#list_hcx_activation_keys VmwareEngine.ListHcxActivationKeys}
997
+ # @!attribute [rw] parent
998
+ # @return [::String]
999
+ # Required. The resource name of the private cloud
1000
+ # to be queried for HCX activation keys.
1001
+ # Resource names are schemeless URIs that follow the conventions in
1002
+ # https://cloud.google.com/apis/design/resource_names.
1003
+ # For example:
1004
+ # `projects/my-project/locations/us-central1/privateClouds/my-cloud`
1005
+ # @!attribute [rw] page_size
1006
+ # @return [::Integer]
1007
+ # The maximum number of HCX activation keys to return in one page.
1008
+ # The service may return fewer than this value.
1009
+ # The maximum value is coerced to 1000.
1010
+ # The default value of this field is 500.
1011
+ # @!attribute [rw] page_token
1012
+ # @return [::String]
1013
+ # A page token, received from a previous `ListHcxActivationKeys` call.
1014
+ # Provide this to retrieve the subsequent page.
1015
+ #
1016
+ # When paginating, all other parameters provided to
1017
+ # `ListHcxActivationKeys` must match the call that provided the page
1018
+ # token.
1019
+ class ListHcxActivationKeysRequest
1020
+ include ::Google::Protobuf::MessageExts
1021
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1022
+ end
1023
+
1024
+ # Request message for [VmwareEngine.GetHcxActivationKeys][]
1025
+ # @!attribute [rw] name
1026
+ # @return [::String]
1027
+ # Required. The resource name of the HCX activation key to retrieve.
1028
+ # Resource names are schemeless URIs that follow the conventions in
1029
+ # https://cloud.google.com/apis/design/resource_names.
1030
+ # For example:
1031
+ # `projects/my-project/locations/us-west1/privateClouds/my-cloud/hcxActivationKeys/my-key`
1032
+ class GetHcxActivationKeyRequest
1033
+ include ::Google::Protobuf::MessageExts
1034
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1035
+ end
1036
+
1037
+ # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#create_hcx_activation_key VmwareEngine.CreateHcxActivationKey}
1038
+ # @!attribute [rw] parent
1039
+ # @return [::String]
1040
+ # Required. The resource name of the private cloud to create the key for.
1041
+ # Resource names are schemeless URIs that follow the conventions in
1042
+ # https://cloud.google.com/apis/design/resource_names.
1043
+ # For example:
1044
+ # `projects/my-project/locations/us-central1/privateClouds/my-cloud`
1045
+ # @!attribute [rw] hcx_activation_key
1046
+ # @return [::Google::Cloud::VmwareEngine::V1::HcxActivationKey]
1047
+ # Required. The initial description of a new HCX activation key. When
1048
+ # creating a new key, this field must be an empty object.
1049
+ # @!attribute [rw] hcx_activation_key_id
1050
+ # @return [::String]
1051
+ # Required. The user-provided identifier of the `HcxActivationKey` to be
1052
+ # created. This identifier must be unique among `HcxActivationKey` resources
1053
+ # within the parent and becomes the final token in the name URI.
1054
+ # The identifier must meet the following requirements:
1055
+ #
1056
+ # * Only contains 1-63 alphanumeric characters and hyphens
1057
+ # * Begins with an alphabetical character
1058
+ # * Ends with a non-hyphen character
1059
+ # * Not formatted as a UUID
1060
+ # * Complies with [RFC 1034](https://datatracker.ietf.org/doc/html/rfc1034)
1061
+ # (section 3.5)
1062
+ # @!attribute [rw] request_id
1063
+ # @return [::String]
1064
+ # A request ID to identify requests. Specify a unique request ID
1065
+ # so that if you must retry your request, the server will know to ignore
1066
+ # the request if it has already been completed. The server guarantees that a
1067
+ # request doesn't result in creation of duplicate commitments for at least 60
1068
+ # minutes.
1069
+ #
1070
+ # For example, consider a situation where you make an initial request and the
1071
+ # request times out. If you make the request again with the same request ID,
1072
+ # the server can check if original operation with the same request ID was
1073
+ # received, and if so, will ignore the second request. This prevents clients
1074
+ # from accidentally creating duplicate commitments.
1075
+ #
1076
+ # The request ID must be a valid UUID with the exception that zero UUID is
1077
+ # not supported (00000000-0000-0000-0000-000000000000).
1078
+ class CreateHcxActivationKeyRequest
1079
+ include ::Google::Protobuf::MessageExts
1080
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1081
+ end
1082
+
1083
+ # Details about a HCX Cloud Manager appliance.
1084
+ # @!attribute [rw] internal_ip
1085
+ # @return [::String]
1086
+ # Internal IP address of the appliance.
1087
+ # @!attribute [rw] version
1088
+ # @return [::String]
1089
+ # Version of the appliance.
1090
+ # @!attribute [r] state
1091
+ # @return [::Google::Cloud::VmwareEngine::V1::Hcx::State]
1092
+ # Output only. The state of the appliance.
1093
+ # @!attribute [rw] fqdn
1094
+ # @return [::String]
1095
+ # Fully qualified domain name of the appliance.
1096
+ class Hcx
1097
+ include ::Google::Protobuf::MessageExts
1098
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1099
+
1100
+ # State of the appliance
1101
+ module State
1102
+ # Unspecified appliance state. This is the default value.
1103
+ STATE_UNSPECIFIED = 0
1104
+
1105
+ # The appliance is operational and can be used.
1106
+ ACTIVE = 1
1107
+
1108
+ # The appliance is being deployed.
1109
+ CREATING = 2
1110
+ end
1111
+ end
1112
+
1113
+ # Details about a NSX Manager appliance.
1114
+ # @!attribute [rw] internal_ip
1115
+ # @return [::String]
1116
+ # Internal IP address of the appliance.
1117
+ # @!attribute [rw] version
1118
+ # @return [::String]
1119
+ # Version of the appliance.
1120
+ # @!attribute [r] state
1121
+ # @return [::Google::Cloud::VmwareEngine::V1::Nsx::State]
1122
+ # Output only. The state of the appliance.
1123
+ # @!attribute [rw] fqdn
1124
+ # @return [::String]
1125
+ # Fully qualified domain name of the appliance.
1126
+ class Nsx
1127
+ include ::Google::Protobuf::MessageExts
1128
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1129
+
1130
+ # State of the appliance
1131
+ module State
1132
+ # Unspecified appliance state. This is the default value.
1133
+ STATE_UNSPECIFIED = 0
1134
+
1135
+ # The appliance is operational and can be used.
1136
+ ACTIVE = 1
1137
+
1138
+ # The appliance is being deployed.
1139
+ CREATING = 2
1140
+ end
1141
+ end
1142
+
1143
+ # Details about a vCenter Server management appliance.
1144
+ # @!attribute [rw] internal_ip
1145
+ # @return [::String]
1146
+ # Internal IP address of the appliance.
1147
+ # @!attribute [rw] version
1148
+ # @return [::String]
1149
+ # Version of the appliance.
1150
+ # @!attribute [r] state
1151
+ # @return [::Google::Cloud::VmwareEngine::V1::Vcenter::State]
1152
+ # Output only. The state of the appliance.
1153
+ # @!attribute [rw] fqdn
1154
+ # @return [::String]
1155
+ # Fully qualified domain name of the appliance.
1156
+ class Vcenter
1157
+ include ::Google::Protobuf::MessageExts
1158
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1159
+
1160
+ # State of the appliance
1161
+ module State
1162
+ # Unspecified appliance state. This is the default value.
1163
+ STATE_UNSPECIFIED = 0
1164
+
1165
+ # The appliance is operational and can be used.
1166
+ ACTIVE = 1
1167
+
1168
+ # The appliance is being deployed.
1169
+ CREATING = 2
1170
+ end
1171
+ end
1172
+
1173
+ # Represents a network policy resource. Network policies are regional
1174
+ # resources. You can use a network policy to enable or disable internet access
1175
+ # and external IP access. Network policies are associated with a VMware Engine
1176
+ # network, which might span across regions. For a given region, a network
1177
+ # policy applies to all private clouds in the VMware Engine network associated
1178
+ # with the policy.
1179
+ # @!attribute [r] name
1180
+ # @return [::String]
1181
+ # Output only. The resource name of this network policy.
1182
+ # Resource names are schemeless URIs that follow the conventions in
1183
+ # https://cloud.google.com/apis/design/resource_names.
1184
+ # For example:
1185
+ # `projects/my-project/locations/us-central1/networkPolicies/my-network-policy`
1186
+ # @!attribute [r] create_time
1187
+ # @return [::Google::Protobuf::Timestamp]
1188
+ # Output only. Creation time of this resource.
1189
+ # @!attribute [r] update_time
1190
+ # @return [::Google::Protobuf::Timestamp]
1191
+ # Output only. Last update time of this resource.
1192
+ # @!attribute [rw] internet_access
1193
+ # @return [::Google::Cloud::VmwareEngine::V1::NetworkPolicy::NetworkService]
1194
+ # Network service that allows VMware workloads to access the internet.
1195
+ # @!attribute [rw] external_ip
1196
+ # @return [::Google::Cloud::VmwareEngine::V1::NetworkPolicy::NetworkService]
1197
+ # Network service that allows External IP addresses to be assigned to VMware
1198
+ # workloads. This service can only be enabled when `internet_access` is also
1199
+ # enabled.
1200
+ # @!attribute [rw] edge_services_cidr
1201
+ # @return [::String]
1202
+ # Required. IP address range in CIDR notation used to create internet access
1203
+ # and external IP access. An RFC 1918 CIDR block, with a "/26" prefix, is
1204
+ # required. The range cannot overlap with any prefixes either in the consumer
1205
+ # VPC network or in use by the private clouds attached to that VPC network.
1206
+ # @!attribute [r] uid
1207
+ # @return [::String]
1208
+ # Output only. System-generated unique identifier for the resource.
1209
+ # @!attribute [rw] vmware_engine_network
1210
+ # @return [::String]
1211
+ # Optional. The relative resource name of the VMware Engine network.
1212
+ # Specify the name in the following form:
1213
+ # `projects/{project}/locations/{location}/vmwareEngineNetworks/{vmware_engine_network_id}`
1214
+ # where `{project}` can either be a project number or a project ID.
1215
+ # @!attribute [rw] description
1216
+ # @return [::String]
1217
+ # Optional. User-provided description for this network policy.
1218
+ # @!attribute [r] vmware_engine_network_canonical
1219
+ # @return [::String]
1220
+ # Output only. The canonical name of the VMware Engine network in the form:
1221
+ # `projects/{project_number}/locations/{location}/vmwareEngineNetworks/{vmware_engine_network_id}`
1222
+ class NetworkPolicy
1223
+ include ::Google::Protobuf::MessageExts
1224
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1225
+
1226
+ # Represents a network service that is managed by a `NetworkPolicy` resource.
1227
+ # A network service provides a way to control an aspect of external access to
1228
+ # VMware workloads. For example, whether the VMware workloads in the
1229
+ # private clouds governed by a network policy can access or be accessed from
1230
+ # the internet.
1231
+ # @!attribute [rw] enabled
1232
+ # @return [::Boolean]
1233
+ # True if the service is enabled; false otherwise.
1234
+ # @!attribute [r] state
1235
+ # @return [::Google::Cloud::VmwareEngine::V1::NetworkPolicy::NetworkService::State]
1236
+ # Output only. State of the service. New values may be added to this enum
1237
+ # when appropriate.
1238
+ class NetworkService
1239
+ include ::Google::Protobuf::MessageExts
1240
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1241
+
1242
+ # Enum State defines possible states of a network policy controlled
1243
+ # service.
1244
+ module State
1245
+ # Unspecified service state. This is the default value.
1246
+ STATE_UNSPECIFIED = 0
1247
+
1248
+ # Service is not provisioned.
1249
+ UNPROVISIONED = 1
1250
+
1251
+ # Service is in the process of being provisioned/deprovisioned.
1252
+ RECONCILING = 2
1253
+
1254
+ # Service is active.
1255
+ ACTIVE = 3
1256
+ end
1257
+ end
1258
+ end
1259
+
1260
+ # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#list_network_policies VmwareEngine.ListNetworkPolicies}
1261
+ # @!attribute [rw] parent
1262
+ # @return [::String]
1263
+ # Required. The resource name of the location (region) to query for
1264
+ # network policies. Resource names are schemeless URIs that follow the
1265
+ # conventions in https://cloud.google.com/apis/design/resource_names. For
1266
+ # example: `projects/my-project/locations/us-central1`
1267
+ # @!attribute [rw] page_size
1268
+ # @return [::Integer]
1269
+ # The maximum number of network policies to return in one page.
1270
+ # The service may return fewer than this value.
1271
+ # The maximum value is coerced to 1000.
1272
+ # The default value of this field is 500.
1273
+ # @!attribute [rw] page_token
1274
+ # @return [::String]
1275
+ # A page token, received from a previous `ListNetworkPolicies` call.
1276
+ # Provide this to retrieve the subsequent page.
1277
+ #
1278
+ # When paginating, all other parameters provided to
1279
+ # `ListNetworkPolicies` must match the call that provided the page
1280
+ # token.
1281
+ # @!attribute [rw] filter
1282
+ # @return [::String]
1283
+ # A filter expression that matches resources returned in the response.
1284
+ # The expression must specify the field name, a comparison
1285
+ # operator, and the value that you want to use for filtering. The value
1286
+ # must be a string, a number, or a boolean. The comparison operator
1287
+ # must be `=`, `!=`, `>`, or `<`.
1288
+ #
1289
+ # For example, if you are filtering a list of network policies, you can
1290
+ # exclude the ones named `example-policy` by specifying
1291
+ # `name != "example-policy"`.
1292
+ #
1293
+ # To filter on multiple expressions, provide each separate expression within
1294
+ # parentheses. For example:
1295
+ # ```
1296
+ # (name = "example-policy")
1297
+ # (createTime > "2021-04-12T08:15:10.40Z")
1298
+ # ```
1299
+ #
1300
+ # By default, each expression is an `AND` expression. However, you
1301
+ # can include `AND` and `OR` expressions explicitly.
1302
+ # For example:
1303
+ # ```
1304
+ # (name = "example-policy-1") AND
1305
+ # (createTime > "2021-04-12T08:15:10.40Z") OR
1306
+ # (name = "example-policy-2")
1307
+ # ```
1308
+ # @!attribute [rw] order_by
1309
+ # @return [::String]
1310
+ # Sorts list results by a certain order. By default, returned results
1311
+ # are ordered by `name` in ascending order.
1312
+ # You can also sort results in descending order based on the `name` value
1313
+ # using `orderBy="name desc"`.
1314
+ # Currently, only ordering by `name` is supported.
1315
+ class ListNetworkPoliciesRequest
1316
+ include ::Google::Protobuf::MessageExts
1317
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1318
+ end
1319
+
1320
+ # Response message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#list_network_policies VmwareEngine.ListNetworkPolicies}
1321
+ # @!attribute [rw] network_policies
1322
+ # @return [::Array<::Google::Cloud::VmwareEngine::V1::NetworkPolicy>]
1323
+ # A list of network policies.
1324
+ # @!attribute [rw] next_page_token
1325
+ # @return [::String]
1326
+ # A token, which can be send as `page_token` to retrieve the next page.
1327
+ # If this field is omitted, there are no subsequent pages.
1328
+ # @!attribute [rw] unreachable
1329
+ # @return [::Array<::String>]
1330
+ # Locations that could not be reached when making an aggregated query using
1331
+ # wildcards.
1332
+ class ListNetworkPoliciesResponse
1333
+ include ::Google::Protobuf::MessageExts
1334
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1335
+ end
1336
+
1337
+ # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#get_network_policy VmwareEngine.GetNetworkPolicy}
1338
+ # @!attribute [rw] name
1339
+ # @return [::String]
1340
+ # Required. The resource name of the network policy to retrieve.
1341
+ # Resource names are schemeless URIs that follow the conventions in
1342
+ # https://cloud.google.com/apis/design/resource_names.
1343
+ # For example:
1344
+ # `projects/my-project/locations/us-central1/networkPolicies/my-network-policy`
1345
+ class GetNetworkPolicyRequest
1346
+ include ::Google::Protobuf::MessageExts
1347
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1348
+ end
1349
+
1350
+ # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#update_network_policy VmwareEngine.UpdateNetworkPolicy}
1351
+ # @!attribute [rw] network_policy
1352
+ # @return [::Google::Cloud::VmwareEngine::V1::NetworkPolicy]
1353
+ # Required. Network policy description.
1354
+ # @!attribute [rw] update_mask
1355
+ # @return [::Google::Protobuf::FieldMask]
1356
+ # Required. Field mask is used to specify the fields to be overwritten in the
1357
+ # `NetworkPolicy` resource by the update.
1358
+ # The fields specified in the `update_mask` are relative to the resource, not
1359
+ # the full request. A field will be overwritten if it is in the mask. If the
1360
+ # user does not provide a mask then all fields will be overwritten.
1361
+ # @!attribute [rw] request_id
1362
+ # @return [::String]
1363
+ # Optional. A request ID to identify requests. Specify a unique request ID
1364
+ # so that if you must retry your request, the server will know to ignore
1365
+ # the request if it has already been completed. The server guarantees that a
1366
+ # request doesn't result in creation of duplicate commitments for at least 60
1367
+ # minutes.
1368
+ #
1369
+ # For example, consider a situation where you make an initial request and the
1370
+ # request times out. If you make the request again with the same request
1371
+ # ID, the server can check if original operation with the same request ID
1372
+ # was received, and if so, will ignore the second request. This prevents
1373
+ # clients from accidentally creating duplicate commitments.
1374
+ #
1375
+ # The request ID must be a valid UUID with the exception that zero UUID is
1376
+ # not supported (00000000-0000-0000-0000-000000000000).
1377
+ class UpdateNetworkPolicyRequest
1378
+ include ::Google::Protobuf::MessageExts
1379
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1380
+ end
1381
+
1382
+ # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#create_network_policy VmwareEngine.CreateNetworkPolicy}
1383
+ # @!attribute [rw] parent
1384
+ # @return [::String]
1385
+ # Required. The resource name of the location (region)
1386
+ # to create the new network policy in.
1387
+ # Resource names are schemeless URIs that follow the conventions in
1388
+ # https://cloud.google.com/apis/design/resource_names.
1389
+ # For example:
1390
+ # `projects/my-project/locations/us-central1`
1391
+ # @!attribute [rw] network_policy_id
1392
+ # @return [::String]
1393
+ # Required. The user-provided identifier of the network policy to be created.
1394
+ # This identifier must be unique within parent
1395
+ # `projects/{my-project}/locations/{us-central1}/networkPolicies` and becomes
1396
+ # the final token in the name URI.
1397
+ # The identifier must meet the following requirements:
1398
+ #
1399
+ # * Only contains 1-63 alphanumeric characters and hyphens
1400
+ # * Begins with an alphabetical character
1401
+ # * Ends with a non-hyphen character
1402
+ # * Not formatted as a UUID
1403
+ # * Complies with [RFC 1034](https://datatracker.ietf.org/doc/html/rfc1034)
1404
+ # (section 3.5)
1405
+ # @!attribute [rw] network_policy
1406
+ # @return [::Google::Cloud::VmwareEngine::V1::NetworkPolicy]
1407
+ # Required. The network policy configuration to use in the request.
1408
+ # @!attribute [rw] request_id
1409
+ # @return [::String]
1410
+ # Optional. A request ID to identify requests. Specify a unique request ID
1411
+ # so that if you must retry your request, the server will know to ignore
1412
+ # the request if it has already been completed. The server guarantees that a
1413
+ # request doesn't result in creation of duplicate commitments for at least 60
1414
+ # minutes.
1415
+ #
1416
+ # For example, consider a situation where you make an initial request and the
1417
+ # request times out. If you make the request again with the same request
1418
+ # ID, the server can check if original operation with the same request ID
1419
+ # was received, and if so, will ignore the second request. This prevents
1420
+ # clients from accidentally creating duplicate commitments.
1421
+ #
1422
+ # The request ID must be a valid UUID with the exception that zero UUID is
1423
+ # not supported (00000000-0000-0000-0000-000000000000).
1424
+ class CreateNetworkPolicyRequest
1425
+ include ::Google::Protobuf::MessageExts
1426
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1427
+ end
1428
+
1429
+ # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#delete_network_policy VmwareEngine.DeleteNetworkPolicy}
1430
+ # @!attribute [rw] name
1431
+ # @return [::String]
1432
+ # Required. The resource name of the network policy to delete.
1433
+ # Resource names are schemeless URIs that follow the conventions in
1434
+ # https://cloud.google.com/apis/design/resource_names.
1435
+ # For example:
1436
+ # `projects/my-project/locations/us-central1/networkPolicies/my-network-policy`
1437
+ # @!attribute [rw] request_id
1438
+ # @return [::String]
1439
+ # Optional. A request ID to identify requests. Specify a unique request ID
1440
+ # so that if you must retry your request, the server will know to ignore
1441
+ # the request if it has already been completed. The server guarantees that a
1442
+ # request doesn't result in creation of duplicate commitments for at least 60
1443
+ # minutes.
1444
+ #
1445
+ # For example, consider a situation where you make an initial request and the
1446
+ # request times out. If you make the request again with the same request
1447
+ # ID, the server can check if original operation with the same request ID
1448
+ # was received, and if so, will ignore the second request. This prevents
1449
+ # clients from accidentally creating duplicate commitments.
1450
+ #
1451
+ # The request ID must be a valid UUID with the exception that zero UUID is
1452
+ # not supported (00000000-0000-0000-0000-000000000000).
1453
+ class DeleteNetworkPolicyRequest
1454
+ include ::Google::Protobuf::MessageExts
1455
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1456
+ end
1457
+
1458
+ # VMware Engine network resource that provides connectivity for VMware Engine
1459
+ # private clouds.
1460
+ # @!attribute [r] name
1461
+ # @return [::String]
1462
+ # Output only. The resource name of the VMware Engine network.
1463
+ # Resource names are schemeless URIs that follow the conventions in
1464
+ # https://cloud.google.com/apis/design/resource_names.
1465
+ # For example:
1466
+ # `projects/my-project/locations/global/vmwareEngineNetworks/my-network`
1467
+ # @!attribute [r] create_time
1468
+ # @return [::Google::Protobuf::Timestamp]
1469
+ # Output only. Creation time of this resource.
1470
+ # @!attribute [r] update_time
1471
+ # @return [::Google::Protobuf::Timestamp]
1472
+ # Output only. Last update time of this resource.
1473
+ # @!attribute [rw] description
1474
+ # @return [::String]
1475
+ # User-provided description for this VMware Engine network.
1476
+ # @!attribute [r] vpc_networks
1477
+ # @return [::Array<::Google::Cloud::VmwareEngine::V1::VmwareEngineNetwork::VpcNetwork>]
1478
+ # Output only. VMware Engine service VPC networks that provide connectivity
1479
+ # from a private cloud to customer projects, the internet, and other Google
1480
+ # Cloud services.
1481
+ # @!attribute [r] state
1482
+ # @return [::Google::Cloud::VmwareEngine::V1::VmwareEngineNetwork::State]
1483
+ # Output only. State of the VMware Engine network.
1484
+ # @!attribute [rw] type
1485
+ # @return [::Google::Cloud::VmwareEngine::V1::VmwareEngineNetwork::Type]
1486
+ # Required. VMware Engine network type.
1487
+ # @!attribute [r] uid
1488
+ # @return [::String]
1489
+ # Output only. System-generated unique identifier for the resource.
1490
+ # @!attribute [rw] etag
1491
+ # @return [::String]
1492
+ # Checksum that may be sent on update and delete requests to ensure that the
1493
+ # user-provided value is up to date before the server processes a request.
1494
+ # The server computes checksums based on the value of other fields in the
1495
+ # request.
1496
+ class VmwareEngineNetwork
1497
+ include ::Google::Protobuf::MessageExts
1498
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1499
+
1500
+ # Represents a VMware Engine VPC network that is managed by a
1501
+ # VMware Engine network resource.
1502
+ # @!attribute [r] type
1503
+ # @return [::Google::Cloud::VmwareEngine::V1::VmwareEngineNetwork::VpcNetwork::Type]
1504
+ # Output only. Type of VPC network (INTRANET, INTERNET, or
1505
+ # GOOGLE_CLOUD)
1506
+ # @!attribute [r] network
1507
+ # @return [::String]
1508
+ # Output only. The relative resource name of the service VPC network this
1509
+ # VMware Engine network is attached to. For example:
1510
+ # `projects/123123/global/networks/my-network`
1511
+ class VpcNetwork
1512
+ include ::Google::Protobuf::MessageExts
1513
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1514
+
1515
+ # Enum Type defines possible types of a VMware Engine network controlled
1516
+ # service.
1517
+ module Type
1518
+ # The default value. This value should never be used.
1519
+ TYPE_UNSPECIFIED = 0
1520
+
1521
+ # VPC network that will be peered with a consumer VPC network or the
1522
+ # intranet VPC of another VMware Engine network. Access a private cloud
1523
+ # through Compute Engine VMs on a peered VPC network or an on-premises
1524
+ # resource connected to a peered consumer VPC network.
1525
+ INTRANET = 1
1526
+
1527
+ # VPC network used for internet access to and from a private cloud.
1528
+ INTERNET = 2
1529
+
1530
+ # VPC network used for access to Google Cloud services like
1531
+ # Cloud Storage.
1532
+ GOOGLE_CLOUD = 3
1533
+ end
1534
+ end
1535
+
1536
+ # Enum State defines possible states of VMware Engine network.
1537
+ module State
1538
+ # The default value. This value is used if the state is omitted.
1539
+ STATE_UNSPECIFIED = 0
1540
+
1541
+ # The VMware Engine network is being created.
1542
+ CREATING = 1
1543
+
1544
+ # The VMware Engine network is ready.
1545
+ ACTIVE = 2
1546
+
1547
+ # The VMware Engine network is being updated.
1548
+ UPDATING = 3
1549
+
1550
+ # The VMware Engine network is being deleted.
1551
+ DELETING = 4
1552
+ end
1553
+
1554
+ # Enum Type defines possible types of VMware Engine network.
1555
+ module Type
1556
+ # The default value. This value should never be used.
1557
+ TYPE_UNSPECIFIED = 0
1558
+
1559
+ # Network type used by private clouds created in projects without a network
1560
+ # of type `STANDARD`. This network type is no longer used for new VMware
1561
+ # Engine private cloud deployments.
1562
+ LEGACY = 1
1563
+ end
1564
+ end
1565
+
1566
+ # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#create_vmware_engine_network VmwareEngine.CreateVmwareEngineNetwork}
1567
+ # @!attribute [rw] parent
1568
+ # @return [::String]
1569
+ # Required. The resource name of the location to create the new VMware Engine
1570
+ # network in. A VMware Engine network of type
1571
+ # `LEGACY` is a regional resource, and a VMware
1572
+ # Engine network of type `STANDARD` is a global resource.
1573
+ # Resource names are schemeless URIs that follow the conventions in
1574
+ # https://cloud.google.com/apis/design/resource_names. For example:
1575
+ # `projects/my-project/locations/global`
1576
+ # @!attribute [rw] vmware_engine_network_id
1577
+ # @return [::String]
1578
+ # Required. The user-provided identifier of the new VMware Engine network.
1579
+ # This identifier must be unique among VMware Engine network resources
1580
+ # within the parent and becomes the final token in the name URI. The
1581
+ # identifier must meet the following requirements:
1582
+ #
1583
+ # * For networks of type LEGACY, adheres to the format:
1584
+ # `{region-id}-default`. Replace `{region-id}` with the region where you want
1585
+ # to create the VMware Engine network. For example, "us-west1-default".
1586
+ # * Only contains 1-63 alphanumeric characters and hyphens
1587
+ # * Begins with an alphabetical character
1588
+ # * Ends with a non-hyphen character
1589
+ # * Not formatted as a UUID
1590
+ # * Complies with [RFC 1034](https://datatracker.ietf.org/doc/html/rfc1034)
1591
+ # (section 3.5)
1592
+ # @!attribute [rw] vmware_engine_network
1593
+ # @return [::Google::Cloud::VmwareEngine::V1::VmwareEngineNetwork]
1594
+ # Required. The initial description of the new VMware Engine network.
1595
+ # @!attribute [rw] request_id
1596
+ # @return [::String]
1597
+ # Optional. A request ID to identify requests. Specify a unique request ID
1598
+ # so that if you must retry your request, the server will know to ignore
1599
+ # the request if it has already been completed. The server guarantees that a
1600
+ # request doesn't result in creation of duplicate commitments for at least 60
1601
+ # minutes.
1602
+ #
1603
+ # For example, consider a situation where you make an initial request and the
1604
+ # request times out. If you make the request again with the same request
1605
+ # ID, the server can check if original operation with the same request ID
1606
+ # was received, and if so, will ignore the second request. This prevents
1607
+ # clients from accidentally creating duplicate commitments.
1608
+ #
1609
+ # The request ID must be a valid UUID with the exception that zero UUID is
1610
+ # not supported (00000000-0000-0000-0000-000000000000).
1611
+ class CreateVmwareEngineNetworkRequest
1612
+ include ::Google::Protobuf::MessageExts
1613
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1614
+ end
1615
+
1616
+ # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#update_vmware_engine_network VmwareEngine.UpdateVmwareEngineNetwork}
1617
+ # @!attribute [rw] vmware_engine_network
1618
+ # @return [::Google::Cloud::VmwareEngine::V1::VmwareEngineNetwork]
1619
+ # Required. VMware Engine network description.
1620
+ # @!attribute [rw] update_mask
1621
+ # @return [::Google::Protobuf::FieldMask]
1622
+ # Required. Field mask is used to specify the fields to be overwritten in the
1623
+ # VMware Engine network resource by the update.
1624
+ # The fields specified in the `update_mask` are relative to the resource, not
1625
+ # the full request. A field will be overwritten if it is in the mask. If the
1626
+ # user does not provide a mask then all fields will be overwritten. Only the
1627
+ # following fields can be updated: `description`.
1628
+ # @!attribute [rw] request_id
1629
+ # @return [::String]
1630
+ # Optional. A request ID to identify requests. Specify a unique request ID
1631
+ # so that if you must retry your request, the server will know to ignore
1632
+ # the request if it has already been completed. The server guarantees that a
1633
+ # request doesn't result in creation of duplicate commitments for at least 60
1634
+ # minutes.
1635
+ #
1636
+ # For example, consider a situation where you make an initial request and the
1637
+ # request times out. If you make the request again with the same request
1638
+ # ID, the server can check if original operation with the same request ID
1639
+ # was received, and if so, will ignore the second request. This prevents
1640
+ # clients from accidentally creating duplicate commitments.
1641
+ #
1642
+ # The request ID must be a valid UUID with the exception that zero UUID is
1643
+ # not supported (00000000-0000-0000-0000-000000000000).
1644
+ class UpdateVmwareEngineNetworkRequest
1645
+ include ::Google::Protobuf::MessageExts
1646
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1647
+ end
1648
+
1649
+ # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#delete_vmware_engine_network VmwareEngine.DeleteVmwareEngineNetwork}
1650
+ # @!attribute [rw] name
1651
+ # @return [::String]
1652
+ # Required. The resource name of the VMware Engine network to be deleted.
1653
+ # Resource names are schemeless URIs that follow the conventions in
1654
+ # https://cloud.google.com/apis/design/resource_names.
1655
+ # For example:
1656
+ # `projects/my-project/locations/global/vmwareEngineNetworks/my-network`
1657
+ # @!attribute [rw] request_id
1658
+ # @return [::String]
1659
+ # Optional. A request ID to identify requests. Specify a unique request ID
1660
+ # so that if you must retry your request, the server will know to ignore
1661
+ # the request if it has already been completed. The server guarantees that a
1662
+ # request doesn't result in creation of duplicate commitments for at least 60
1663
+ # minutes.
1664
+ #
1665
+ # For example, consider a situation where you make an initial request and the
1666
+ # request times out. If you make the request again with the same request
1667
+ # ID, the server can check if original operation with the same request ID
1668
+ # was received, and if so, will ignore the second request. This prevents
1669
+ # clients from accidentally creating duplicate commitments.
1670
+ #
1671
+ # The request ID must be a valid UUID with the exception that zero UUID is
1672
+ # not supported (00000000-0000-0000-0000-000000000000).
1673
+ # @!attribute [rw] etag
1674
+ # @return [::String]
1675
+ # Optional. Checksum used to ensure that the user-provided value is up to date before
1676
+ # the server processes the request. The server compares provided checksum
1677
+ # with the current checksum of the resource. If the user-provided value is
1678
+ # out of date, this request returns an `ABORTED` error.
1679
+ class DeleteVmwareEngineNetworkRequest
1680
+ include ::Google::Protobuf::MessageExts
1681
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1682
+ end
1683
+
1684
+ # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#get_vmware_engine_network VmwareEngine.GetVmwareEngineNetwork}
1685
+ # @!attribute [rw] name
1686
+ # @return [::String]
1687
+ # Required. The resource name of the VMware Engine network to retrieve.
1688
+ # Resource names are schemeless URIs that follow the conventions in
1689
+ # https://cloud.google.com/apis/design/resource_names.
1690
+ # For example:
1691
+ # `projects/my-project/locations/global/vmwareEngineNetworks/my-network`
1692
+ class GetVmwareEngineNetworkRequest
1693
+ include ::Google::Protobuf::MessageExts
1694
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1695
+ end
1696
+
1697
+ # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#list_vmware_engine_networks VmwareEngine.ListVmwareEngineNetworks}
1698
+ # @!attribute [rw] parent
1699
+ # @return [::String]
1700
+ # Required. The resource name of the location to query for
1701
+ # VMware Engine networks. Resource names are schemeless URIs that follow the
1702
+ # conventions in https://cloud.google.com/apis/design/resource_names. For
1703
+ # example: `projects/my-project/locations/global`
1704
+ # @!attribute [rw] page_size
1705
+ # @return [::Integer]
1706
+ # The maximum number of results to return in one page.
1707
+ # The maximum value is coerced to 1000.
1708
+ # The default value of this field is 500.
1709
+ # @!attribute [rw] page_token
1710
+ # @return [::String]
1711
+ # A page token, received from a previous `ListVmwareEngineNetworks` call.
1712
+ # Provide this to retrieve the subsequent page.
1713
+ #
1714
+ # When paginating, all other parameters provided to
1715
+ # `ListVmwareEngineNetworks` must match the call that provided the page
1716
+ # token.
1717
+ # @!attribute [rw] filter
1718
+ # @return [::String]
1719
+ # A filter expression that matches resources returned in the response.
1720
+ # The expression must specify the field name, a comparison
1721
+ # operator, and the value that you want to use for filtering. The value
1722
+ # must be a string, a number, or a boolean. The comparison operator
1723
+ # must be `=`, `!=`, `>`, or `<`.
1724
+ #
1725
+ # For example, if you are filtering a list of network peerings, you can
1726
+ # exclude the ones named `example-network` by specifying
1727
+ # `name != "example-network"`.
1728
+ #
1729
+ # To filter on multiple expressions, provide each separate expression within
1730
+ # parentheses. For example:
1731
+ # ```
1732
+ # (name = "example-network")
1733
+ # (createTime > "2021-04-12T08:15:10.40Z")
1734
+ # ```
1735
+ #
1736
+ # By default, each expression is an `AND` expression. However, you
1737
+ # can include `AND` and `OR` expressions explicitly.
1738
+ # For example:
1739
+ # ```
1740
+ # (name = "example-network-1") AND
1741
+ # (createTime > "2021-04-12T08:15:10.40Z") OR
1742
+ # (name = "example-network-2")
1743
+ # ```
1744
+ # @!attribute [rw] order_by
1745
+ # @return [::String]
1746
+ # Sorts list results by a certain order. By default, returned results
1747
+ # are ordered by `name` in ascending order.
1748
+ # You can also sort results in descending order based on the `name` value
1749
+ # using `orderBy="name desc"`.
1750
+ # Currently, only ordering by `name` is supported.
1751
+ class ListVmwareEngineNetworksRequest
1752
+ include ::Google::Protobuf::MessageExts
1753
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1754
+ end
1755
+
1756
+ # Response message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#list_vmware_engine_networks VmwareEngine.ListVmwareEngineNetworks}
1757
+ # @!attribute [rw] vmware_engine_networks
1758
+ # @return [::Array<::Google::Cloud::VmwareEngine::V1::VmwareEngineNetwork>]
1759
+ # A list of VMware Engine networks.
1760
+ # @!attribute [rw] next_page_token
1761
+ # @return [::String]
1762
+ # A token, which can be sent as `page_token` to retrieve the next page.
1763
+ # If this field is omitted, there are no subsequent pages.
1764
+ # @!attribute [rw] unreachable
1765
+ # @return [::Array<::String>]
1766
+ # Unreachable resources.
1767
+ class ListVmwareEngineNetworksResponse
1768
+ include ::Google::Protobuf::MessageExts
1769
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1770
+ end
1771
+ end
1772
+ end
1773
+ end
1774
+ end