# frozen_string_literal: true # Copyright 2022 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # https://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # Auto-generated by gapic-generator-ruby. DO NOT EDIT! module Google module Cloud module VmwareEngine module V1 # Network configuration in the consumer project # with which the peering has to be done. # @!attribute [rw] management_cidr # @return [::String] # Required. Management CIDR used by VMware management appliances. # @!attribute [rw] vmware_engine_network # @return [::String] # Optional. The relative resource name of the VMware Engine network attached # to the private cloud. Specify the name in the following form: # `projects/{project}/locations/{location}/vmwareEngineNetworks/{vmware_engine_network_id}` # where `{project}` can either be a project number or a project ID. # @!attribute [r] vmware_engine_network_canonical # @return [::String] # Output only. The canonical name of the VMware Engine network in the form: # `projects/{project_number}/locations/{location}/vmwareEngineNetworks/{vmware_engine_network_id}` # @!attribute [r] management_ip_address_layout_version # @return [::Integer] # Output only. The IP address layout version of the management IP address # range. Possible versions include: # * `managementIpAddressLayoutVersion=1`: Indicates the legacy IP address # layout used by some existing private clouds. This is no longer supported # for new private clouds as it does not support all features. # * `managementIpAddressLayoutVersion=2`: Indicates the latest IP address # layout used by all newly created private clouds. This version supports all # current features. class NetworkConfig include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Information about the type and number of nodes associated with the cluster. # @!attribute [rw] node_count # @return [::Integer] # Required. The number of nodes of this type in the cluster # @!attribute [rw] custom_core_count # @return [::Integer] # Optional. Customized number of cores available to each node of the type. # This number must always be one of `nodeType.availableCustomCoreCounts`. # If zero is provided max value from `nodeType.availableCustomCoreCounts` # will be used. class NodeTypeConfig include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Represents a private cloud resource. Private clouds are zonal resources. # @!attribute [r] name # @return [::String] # Output only. The resource name of this private cloud. # Resource names are schemeless URIs that follow the conventions in # https://cloud.google.com/apis/design/resource_names. # For example: # `projects/my-project/locations/us-west1-a/privateClouds/my-cloud` # @!attribute [r] create_time # @return [::Google::Protobuf::Timestamp] # Output only. Creation time of this resource. # @!attribute [r] update_time # @return [::Google::Protobuf::Timestamp] # Output only. Last update time of this resource. # @!attribute [r] delete_time # @return [::Google::Protobuf::Timestamp] # Output only. Time when the resource was scheduled for deletion. # @!attribute [r] expire_time # @return [::Google::Protobuf::Timestamp] # Output only. Time when the resource will be irreversibly deleted. # @!attribute [r] state # @return [::Google::Cloud::VmwareEngine::V1::PrivateCloud::State] # Output only. State of the resource. New values may be added to this enum # when appropriate. # @!attribute [rw] network_config # @return [::Google::Cloud::VmwareEngine::V1::NetworkConfig] # Required. Network configuration of the private cloud. # @!attribute [rw] management_cluster # @return [::Google::Cloud::VmwareEngine::V1::PrivateCloud::ManagementCluster] # Input only. The management cluster for this private cloud. # This field is required during creation of the private cloud to provide # details for the default cluster. # # The following fields can't be changed after private cloud creation: # `ManagementCluster.clusterId`, `ManagementCluster.nodeTypeId`. # @!attribute [rw] description # @return [::String] # User-provided description for this private cloud. # @!attribute [r] hcx # @return [::Google::Cloud::VmwareEngine::V1::Hcx] # Output only. HCX appliance. # @!attribute [r] nsx # @return [::Google::Cloud::VmwareEngine::V1::Nsx] # Output only. NSX appliance. # @!attribute [r] vcenter # @return [::Google::Cloud::VmwareEngine::V1::Vcenter] # Output only. Vcenter appliance. # @!attribute [r] uid # @return [::String] # Output only. System-generated unique identifier for the resource. class PrivateCloud include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # Management cluster configuration. # @!attribute [rw] cluster_id # @return [::String] # Required. The user-provided identifier of the new `Cluster`. # The identifier must meet the following requirements: # # * Only contains 1-63 alphanumeric characters and hyphens # * Begins with an alphabetical character # * Ends with a non-hyphen character # * Not formatted as a UUID # * Complies with [RFC # 1034](https://datatracker.ietf.org/doc/html/rfc1034) (section 3.5) # @!attribute [rw] node_type_configs # @return [::Google::Protobuf::Map{::String => ::Google::Cloud::VmwareEngine::V1::NodeTypeConfig}] # Required. The map of cluster node types in this cluster, where the key is canonical # identifier of the node type (corresponds to the `NodeType`). class ManagementCluster include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # @!attribute [rw] key # @return [::String] # @!attribute [rw] value # @return [::Google::Cloud::VmwareEngine::V1::NodeTypeConfig] class NodeTypeConfigsEntry include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end end # Enum State defines possible states of private clouds. module State # The default value. This value should never be used. STATE_UNSPECIFIED = 0 # The private cloud is ready. ACTIVE = 1 # The private cloud is being created. CREATING = 2 # The private cloud is being updated. UPDATING = 3 # The private cloud is in failed state. FAILED = 5 # The private cloud is scheduled for deletion. The deletion process can be # cancelled by using the corresponding undelete method. DELETED = 6 # The private cloud is irreversibly deleted and is being removed from the # system. PURGING = 7 end end # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#list_private_clouds VmwareEngine.ListPrivateClouds} # @!attribute [rw] parent # @return [::String] # Required. The resource name of the private cloud to be queried for # clusters. Resource names are schemeless URIs that follow the conventions in # https://cloud.google.com/apis/design/resource_names. # For example: # `projects/my-project/locations/us-west1-a` # @!attribute [rw] page_size # @return [::Integer] # The maximum number of private clouds to return in one page. # The service may return fewer than this value. # The maximum value is coerced to 1000. # The default value of this field is 500. # @!attribute [rw] page_token # @return [::String] # A page token, received from a previous `ListPrivateClouds` call. # Provide this to retrieve the subsequent page. # # When paginating, all other parameters provided to `ListPrivateClouds` must # match the call that provided the page token. # @!attribute [rw] filter # @return [::String] # A filter expression that matches resources returned in the response. # The expression must specify the field name, a comparison operator, and the # value that you want to use for filtering. The value must be a string, a # number, or a boolean. The comparison operator must be `=`, `!=`, `>`, or # `<`. # # For example, if you are filtering a list of private clouds, you can exclude # the ones named `example-pc` by specifying `name != "example-pc"`. # # You can also filter nested fields. For example, you could specify # `networkConfig.managementCidr = "192.168.0.0/24"` to include private clouds # only if they have a matching address in their network configuration. # # To filter on multiple expressions, provide each separate expression within # parentheses. For example: # ``` # (name = "example-pc") # (createTime > "2021-04-12T08:15:10.40Z") # ``` # # By default, each expression is an `AND` expression. However, you can # include `AND` and `OR` expressions explicitly. For example: # ``` # (name = "private-cloud-1") AND # (createTime > "2021-04-12T08:15:10.40Z") OR # (name = "private-cloud-2") # ``` # @!attribute [rw] order_by # @return [::String] # Sorts list results by a certain order. By default, returned results are # ordered by `name` in ascending order. You can also sort results in # descending order based on the `name` value using `orderBy="name desc"`. # Currently, only ordering by `name` is supported. class ListPrivateCloudsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Response message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#list_private_clouds VmwareEngine.ListPrivateClouds} # @!attribute [rw] private_clouds # @return [::Array<::Google::Cloud::VmwareEngine::V1::PrivateCloud>] # A list of private clouds. # @!attribute [rw] next_page_token # @return [::String] # A token, which can be sent as `page_token` to retrieve the next page. # If this field is omitted, there are no subsequent pages. # @!attribute [rw] unreachable # @return [::Array<::String>] # Locations that could not be reached when making an aggregated query using # wildcards. class ListPrivateCloudsResponse include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#get_private_cloud VmwareEngine.GetPrivateCloud} # @!attribute [rw] name # @return [::String] # Required. The resource name of the private cloud to retrieve. # Resource names are schemeless URIs that follow the conventions in # https://cloud.google.com/apis/design/resource_names. # For example: # `projects/my-project/locations/us-west1-a/privateClouds/my-cloud` class GetPrivateCloudRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#create_private_cloud VmwareEngine.CreatePrivateCloud} # @!attribute [rw] parent # @return [::String] # Required. The resource name of the location to create the new # private cloud in. Resource names are schemeless URIs that follow the # conventions in https://cloud.google.com/apis/design/resource_names. # For example: # `projects/my-project/locations/us-west1-a` # @!attribute [rw] private_cloud_id # @return [::String] # Required. The user-provided identifier of the private cloud to be created. # This identifier must be unique among each `PrivateCloud` within the parent # and becomes the final token in the name URI. # The identifier must meet the following requirements: # # * Only contains 1-63 alphanumeric characters and hyphens # * Begins with an alphabetical character # * Ends with a non-hyphen character # * Not formatted as a UUID # * Complies with [RFC 1034](https://datatracker.ietf.org/doc/html/rfc1034) # (section 3.5) # @!attribute [rw] private_cloud # @return [::Google::Cloud::VmwareEngine::V1::PrivateCloud] # Required. The initial description of the new private cloud. # @!attribute [rw] request_id # @return [::String] # Optional. The request ID must be a valid UUID with the exception that zero UUID is # not supported (00000000-0000-0000-0000-000000000000). # @!attribute [rw] validate_only # @return [::Boolean] # Optional. True if you want the request to be validated and not executed; false # otherwise. class CreatePrivateCloudRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#update_private_cloud VmwareEngine.UpdatePrivateCloud} # @!attribute [rw] private_cloud # @return [::Google::Cloud::VmwareEngine::V1::PrivateCloud] # Required. Private cloud description. # @!attribute [rw] update_mask # @return [::Google::Protobuf::FieldMask] # Required. Field mask is used to specify the fields to be overwritten in the # `PrivateCloud` resource by the update. The fields specified in `updateMask` # are relative to the resource, not the full request. A field will be # overwritten if it is in the mask. If the user does not provide a mask then # all fields will be overwritten. # @!attribute [rw] request_id # @return [::String] # Optional. The request ID must be a valid UUID with the exception that zero UUID is # not supported (00000000-0000-0000-0000-000000000000). class UpdatePrivateCloudRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#delete_private_cloud VmwareEngine.DeletePrivateCloud} # @!attribute [rw] name # @return [::String] # Required. The resource name of the private cloud to delete. # Resource names are schemeless URIs that follow the conventions in # https://cloud.google.com/apis/design/resource_names. # For example: # `projects/my-project/locations/us-west1-a/privateClouds/my-cloud` # @!attribute [rw] request_id # @return [::String] # Optional. The request ID must be a valid UUID with the exception that zero UUID is # not supported (00000000-0000-0000-0000-000000000000). # @!attribute [rw] force # @return [::Boolean] # Optional. If set to true, cascade delete is enabled and all children of this private # cloud resource are also deleted. When this flag is set to false, the # private cloud will not be deleted if there are any children other than the # management cluster. The management cluster is always deleted. # @!attribute [rw] delay_hours # @return [::Integer] # Optional. Time delay of the deletion specified in hours. The default value # is `3`. Specifying a non-zero value for this field changes the value of # `PrivateCloud.state` to `DELETED` and sets `expire_time` to the planned # deletion time. Deletion can be cancelled before `expire_time` elapses using # {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#undelete_private_cloud VmwareEngine.UndeletePrivateCloud}. Specifying a value of `0` for # this field instead begins the deletion process and ceases billing # immediately. During the final deletion process, the value of # `PrivateCloud.state` becomes `PURGING`. class DeletePrivateCloudRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#undelete_private_cloud VmwareEngine.UndeletePrivateCloud} # @!attribute [rw] name # @return [::String] # Required. The resource name of the private cloud scheduled for deletion. # Resource names are schemeless URIs that follow the conventions in # https://cloud.google.com/apis/design/resource_names. # For example: # `projects/my-project/locations/us-west1-a/privateClouds/my-cloud` # @!attribute [rw] request_id # @return [::String] # Optional. The request ID must be a valid UUID with the exception that zero UUID is # not supported (00000000-0000-0000-0000-000000000000). class UndeletePrivateCloudRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # A cluster in a private cloud. # @!attribute [r] name # @return [::String] # Output only. The resource name of this cluster. # Resource names are schemeless URIs that follow the conventions in # https://cloud.google.com/apis/design/resource_names. # For example: # `projects/my-project/locations/us-west1-a/privateClouds/my-cloud/clusters/my-cluster` # @!attribute [r] create_time # @return [::Google::Protobuf::Timestamp] # Output only. Creation time of this resource. # @!attribute [r] update_time # @return [::Google::Protobuf::Timestamp] # Output only. Last update time of this resource. # @!attribute [r] state # @return [::Google::Cloud::VmwareEngine::V1::Cluster::State] # Output only. State of the resource. # @!attribute [r] management # @return [::Boolean] # Output only. True if the cluster is a management cluster; false otherwise. # There can only be one management cluster in a private cloud # and it has to be the first one. # @!attribute [r] uid # @return [::String] # Output only. System-generated unique identifier for the resource. # @!attribute [rw] node_type_configs # @return [::Google::Protobuf::Map{::String => ::Google::Cloud::VmwareEngine::V1::NodeTypeConfig}] # Required. The map of cluster node types in this cluster, where the key is canonical # identifier of the node type (corresponds to the `NodeType`). class Cluster include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # @!attribute [rw] key # @return [::String] # @!attribute [rw] value # @return [::Google::Cloud::VmwareEngine::V1::NodeTypeConfig] class NodeTypeConfigsEntry include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Enum State defines possible states of private cloud clusters. module State # The default value. This value should never be used. STATE_UNSPECIFIED = 0 # The Cluster is operational and can be used by the user. ACTIVE = 1 # The Cluster is being deployed. CREATING = 2 # Adding or removing of a node to the cluster, any other cluster specific # updates. UPDATING = 3 # The Cluster is being deleted. DELETING = 4 # The Cluster is undergoing maintenance, for example: a failed node is # getting replaced. REPAIRING = 5 end end # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#list_clusters VmwareEngine.ListClusters} # @!attribute [rw] parent # @return [::String] # Required. The resource name of the private cloud to query for clusters. # Resource names are schemeless URIs that follow the conventions in # https://cloud.google.com/apis/design/resource_names. # For example: # `projects/my-project/locations/us-west1-a/privateClouds/my-cloud` # @!attribute [rw] page_size # @return [::Integer] # The maximum number of clusters to return in one page. # The service may return fewer than this value. # The maximum value is coerced to 1000. # The default value of this field is 500. # @!attribute [rw] page_token # @return [::String] # A page token, received from a previous `ListClusters` call. # Provide this to retrieve the subsequent page. # # When paginating, all other parameters provided to `ListClusters` # must match the call that provided the page token. # @!attribute [rw] filter # @return [::String] # To filter on multiple expressions, provide each separate expression within # parentheses. For example: # ``` # (name = "example-cluster") # (nodeCount = "3") # ``` # # By default, each expression is an `AND` expression. However, you can # include `AND` and `OR` expressions explicitly. For example: # ``` # (name = "example-cluster-1") AND # (createTime > "2021-04-12T08:15:10.40Z") OR # (name = "example-cluster-2") # ``` # @!attribute [rw] order_by # @return [::String] # Sorts list results by a certain order. By default, returned results are # ordered by `name` in ascending order. You can also sort results in # descending order based on the `name` value using `orderBy="name desc"`. # Currently, only ordering by `name` is supported. class ListClustersRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Response message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#list_clusters VmwareEngine.ListClusters} # @!attribute [rw] clusters # @return [::Array<::Google::Cloud::VmwareEngine::V1::Cluster>] # A list of private cloud clusters. # @!attribute [rw] next_page_token # @return [::String] # A token, which can be sent as `page_token` to retrieve the next page. # If this field is omitted, there are no subsequent pages. # @!attribute [rw] unreachable # @return [::Array<::String>] # Locations that could not be reached when making an aggregated query using # wildcards. class ListClustersResponse include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#get_cluster VmwareEngine.GetCluster} # @!attribute [rw] name # @return [::String] # Required. The cluster resource name to retrieve. # Resource names are schemeless URIs that follow the conventions in # https://cloud.google.com/apis/design/resource_names. # For example: # `projects/my-project/locations/us-west1-a/privateClouds/my-cloud/clusters/my-cluster` class GetClusterRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#create_cluster VmwareEngine.CreateCluster} # @!attribute [rw] parent # @return [::String] # Required. The resource name of the private cloud to create a new cluster # in. Resource names are schemeless URIs that follow the conventions in # https://cloud.google.com/apis/design/resource_names. # For example: # `projects/my-project/locations/us-west1-a/privateClouds/my-cloud` # @!attribute [rw] cluster_id # @return [::String] # Required. The user-provided identifier of the new `Cluster`. # This identifier must be unique among clusters within the parent and becomes # the final token in the name URI. # The identifier must meet the following requirements: # # * Only contains 1-63 alphanumeric characters and hyphens # * Begins with an alphabetical character # * Ends with a non-hyphen character # * Not formatted as a UUID # * Complies with [RFC 1034](https://datatracker.ietf.org/doc/html/rfc1034) # (section 3.5) # @!attribute [rw] cluster # @return [::Google::Cloud::VmwareEngine::V1::Cluster] # Required. The initial description of the new cluster. # @!attribute [rw] request_id # @return [::String] # Optional. The request ID must be a valid UUID with the exception that zero UUID is # not supported (00000000-0000-0000-0000-000000000000). # @!attribute [rw] validate_only # @return [::Boolean] # Optional. True if you want the request to be validated and not executed; false # otherwise. class CreateClusterRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#update_cluster VmwareEngine.UpdateCluster} # @!attribute [rw] update_mask # @return [::Google::Protobuf::FieldMask] # Required. Field mask is used to specify the fields to be overwritten in the # `Cluster` resource by the update. The fields specified in the `updateMask` # are relative to the resource, not the full request. A field will be # overwritten if it is in the mask. If the user does not provide a mask then # all fields will be overwritten. # @!attribute [rw] cluster # @return [::Google::Cloud::VmwareEngine::V1::Cluster] # Required. The description of the cluster. # @!attribute [rw] request_id # @return [::String] # Optional. The request ID must be a valid UUID with the exception that # zero UUID is not supported (00000000-0000-0000-0000-000000000000). # @!attribute [rw] validate_only # @return [::Boolean] # Optional. True if you want the request to be validated and not executed; false # otherwise. class UpdateClusterRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#delete_cluster VmwareEngine.DeleteCluster} # @!attribute [rw] name # @return [::String] # Required. The resource name of the cluster to delete. # Resource names are schemeless URIs that follow the conventions in # https://cloud.google.com/apis/design/resource_names. # For example: # `projects/my-project/locations/us-west1-a/privateClouds/my-cloud/clusters/my-cluster` # @!attribute [rw] request_id # @return [::String] # Optional. The request ID must be a valid UUID with the exception that zero UUID is # not supported (00000000-0000-0000-0000-000000000000). class DeleteClusterRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Subnet in a private cloud. Either `management` subnets (such as vMotion) that # are read-only, or `userDefined`, which can also be updated. # @!attribute [r] name # @return [::String] # Output only. The resource name of this subnet. # Resource names are schemeless URIs that follow the conventions in # https://cloud.google.com/apis/design/resource_names. # For example: # `projects/my-project/locations/us-west1-a/privateClouds/my-cloud/subnets/my-subnet` # @!attribute [rw] ip_cidr_range # @return [::String] # The IP address range of the subnet in CIDR format '10.0.0.0/24'. # @!attribute [rw] gateway_ip # @return [::String] # The IP address of the gateway of this subnet. # Must fall within the IP prefix defined above. # @!attribute [r] type # @return [::String] # Output only. The type of the subnet. For example "management" or "userDefined". # @!attribute [r] state # @return [::Google::Cloud::VmwareEngine::V1::Subnet::State] # Output only. The state of the resource. class Subnet include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # Defines possible states of subnets. module State # The default value. This value should never be used. STATE_UNSPECIFIED = 0 # The subnet is ready. ACTIVE = 1 # The subnet is being created. CREATING = 2 # The subnet is being updated. UPDATING = 3 # The subnet is being deleted. DELETING = 4 end end # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#list_subnets VmwareEngine.ListSubnets} # @!attribute [rw] parent # @return [::String] # Required. The resource name of the private cloud to be queried for # subnets. # Resource names are schemeless URIs that follow the conventions in # https://cloud.google.com/apis/design/resource_names. # For example: # `projects/my-project/locations/us-west1-a/privateClouds/my-cloud` # @!attribute [rw] page_size # @return [::Integer] # The maximum number of subnets to return in one page. # The service may return fewer than this value. # The maximum value is coerced to 1000. # The default value of this field is 500. # @!attribute [rw] page_token # @return [::String] # A page token, received from a previous `ListSubnetsRequest` call. # Provide this to retrieve the subsequent page. # # When paginating, all other parameters provided to # `ListSubnetsRequest` must match the call that provided the page token. class ListSubnetsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Response message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#list_subnets VmwareEngine.ListSubnets} # @!attribute [rw] subnets # @return [::Array<::Google::Cloud::VmwareEngine::V1::Subnet>] # A list of subnets. # @!attribute [rw] next_page_token # @return [::String] # A token, which can be sent as `page_token` to retrieve the next page. # If this field is omitted, there are no subsequent pages. class ListSubnetsResponse include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Represents the metadata of the long-running operation. # @!attribute [r] create_time # @return [::Google::Protobuf::Timestamp] # Output only. The time the operation was created. # @!attribute [r] end_time # @return [::Google::Protobuf::Timestamp] # Output only. The time the operation finished running. # @!attribute [r] target # @return [::String] # Output only. Server-defined resource path for the target of the operation. # @!attribute [r] verb # @return [::String] # Output only. Name of the verb executed by the operation. # @!attribute [r] status_message # @return [::String] # Output only. Human-readable status of the operation, if any. # @!attribute [r] requested_cancellation # @return [::Boolean] # Output only. True if the user has requested cancellation # of the operation; false otherwise. # Operations that have successfully been cancelled # have [Operation.error][] value with a {::Google::Rpc::Status#code google.rpc.Status.code} of 1, # corresponding to `Code.CANCELLED`. # @!attribute [r] api_version # @return [::String] # Output only. API version used to start the operation. class OperationMetadata include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Describes node type. # @!attribute [r] name # @return [::String] # Output only. The resource name of this node type. # Resource names are schemeless URIs that follow the conventions in # https://cloud.google.com/apis/design/resource_names. # For example: # `projects/my-proj/locations/us-west1-a/nodeTypes/standard-72` # @!attribute [r] node_type_id # @return [::String] # Output only. The canonical identifier of the node type # (corresponds to the `NodeType`). For example: standard-72. # @!attribute [r] display_name # @return [::String] # Output only. The friendly name for this node type. # For example: ve1-standard-72 # @!attribute [r] virtual_cpu_count # @return [::Integer] # Output only. The total number of virtual CPUs in a single node. # @!attribute [r] total_core_count # @return [::Integer] # Output only. The total number of CPU cores in a single node. # @!attribute [r] memory_gb # @return [::Integer] # Output only. The amount of physical memory available, defined in GB. # @!attribute [r] disk_size_gb # @return [::Integer] # Output only. The amount of storage available, defined in GB. # @!attribute [r] available_custom_core_counts # @return [::Array<::Integer>] # Output only. List of possible values of custom core count. class NodeType include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#list_node_types VmwareEngine.ListNodeTypes} # @!attribute [rw] parent # @return [::String] # Required. The resource name of the location to be queried for node types. # Resource names are schemeless URIs that follow the conventions in # https://cloud.google.com/apis/design/resource_names. # For example: # `projects/my-project/locations/us-west1-a` # @!attribute [rw] page_size # @return [::Integer] # The maximum number of node types to return in one page. # The service may return fewer than this value. # The maximum value is coerced to 1000. # The default value of this field is 500. # @!attribute [rw] page_token # @return [::String] # A page token, received from a previous `ListNodeTypes` call. # Provide this to retrieve the subsequent page. # # When paginating, all other parameters provided to # `ListNodeTypes` must match the call that provided the page token. # @!attribute [rw] filter # @return [::String] # A filter expression that matches resources returned in the response. # The expression must specify the field name, a comparison # operator, and the value that you want to use for filtering. The value # must be a string, a number, or a boolean. The comparison operator # must be `=`, `!=`, `>`, or `<`. # # For example, if you are filtering a list of node types, you can # exclude the ones named `standard-72` by specifying # `name != "standard-72"`. # # To filter on multiple expressions, provide each separate expression within # parentheses. For example: # ``` # (name = "standard-72") # (virtual_cpu_count > 2) # ``` # # By default, each expression is an `AND` expression. However, you # can include `AND` and `OR` expressions explicitly. # For example: # ``` # (name = "standard-96") AND # (virtual_cpu_count > 2) OR # (name = "standard-72") # ``` class ListNodeTypesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Response message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#list_node_types VmwareEngine.ListNodeTypes} # @!attribute [rw] node_types # @return [::Array<::Google::Cloud::VmwareEngine::V1::NodeType>] # A list of Node Types. # @!attribute [rw] next_page_token # @return [::String] # A token, which can be sent as `page_token` to retrieve the next page. # If this field is omitted, there are no subsequent pages. # @!attribute [rw] unreachable # @return [::Array<::String>] # Locations that could not be reached when making an aggregated query using # wildcards. class ListNodeTypesResponse include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#get_node_type VmwareEngine.GetNodeType} # @!attribute [rw] name # @return [::String] # Required. The resource name of the node type to retrieve. # Resource names are schemeless URIs that follow the conventions in # https://cloud.google.com/apis/design/resource_names. # For example: # `projects/my-proj/locations/us-west1-a/nodeTypes/standard-72` class GetNodeTypeRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Credentials for a private cloud. # @!attribute [rw] username # @return [::String] # Initial username. # @!attribute [rw] password # @return [::String] # Initial password. class Credentials include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#show_nsx_credentials VmwareEngine.ShowNsxCredentials} # @!attribute [rw] private_cloud # @return [::String] # Required. The resource name of the private cloud # to be queried for credentials. # Resource names are schemeless URIs that follow the conventions in # https://cloud.google.com/apis/design/resource_names. # For example: # `projects/my-project/locations/us-west1-a/privateClouds/my-cloud` class ShowNsxCredentialsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#show_vcenter_credentials VmwareEngine.ShowVcenterCredentials} # @!attribute [rw] private_cloud # @return [::String] # Required. The resource name of the private cloud # to be queried for credentials. # Resource names are schemeless URIs that follow the conventions in # https://cloud.google.com/apis/design/resource_names. # For example: # `projects/my-project/locations/us-west1-a/privateClouds/my-cloud` class ShowVcenterCredentialsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#reset_nsx_credentials VmwareEngine.ResetNsxCredentials} # @!attribute [rw] private_cloud # @return [::String] # Required. The resource name of the private cloud # to reset credentials for. # Resource names are schemeless URIs that follow the conventions in # https://cloud.google.com/apis/design/resource_names. # For example: # `projects/my-project/locations/us-west1-a/privateClouds/my-cloud` # @!attribute [rw] request_id # @return [::String] # Optional. A request ID to identify requests. Specify a unique request ID # so that if you must retry your request, the server will know to ignore # the request if it has already been completed. The server guarantees that a # request doesn't result in creation of duplicate commitments for at least 60 # minutes. # # For example, consider a situation where you make an initial request and the # request times out. If you make the request again with the same request # ID, the server can check if original operation with the same request ID # was received, and if so, will ignore the second request. This prevents # clients from accidentally creating duplicate commitments. # # The request ID must be a valid UUID with the exception that zero UUID is # not supported (00000000-0000-0000-0000-000000000000). class ResetNsxCredentialsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#reset_vcenter_credentials VmwareEngine.ResetVcenterCredentials} # @!attribute [rw] private_cloud # @return [::String] # Required. The resource name of the private cloud # to reset credentials for. # Resource names are schemeless URIs that follow the conventions in # https://cloud.google.com/apis/design/resource_names. # For example: # `projects/my-project/locations/us-west1-a/privateClouds/my-cloud` # @!attribute [rw] request_id # @return [::String] # Optional. A request ID to identify requests. Specify a unique request ID # so that if you must retry your request, the server will know to ignore # the request if it has already been completed. The server guarantees that a # request doesn't result in creation of duplicate commitments for at least 60 # minutes. # # For example, consider a situation where you make an initial request and the # request times out. If you make the request again with the same request # ID, the server can check if original operation with the same request ID # was received, and if so, will ignore the second request. This prevents # clients from accidentally creating duplicate commitments. # # The request ID must be a valid UUID with the exception that zero UUID is # not supported (00000000-0000-0000-0000-000000000000). class ResetVcenterCredentialsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Response message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#list_hcx_activation_keys VmwareEngine.ListHcxActivationKeys} # @!attribute [rw] hcx_activation_keys # @return [::Array<::Google::Cloud::VmwareEngine::V1::HcxActivationKey>] # List of HCX activation keys. # @!attribute [rw] next_page_token # @return [::String] # A token, which can be sent as `page_token` to retrieve the next page. # If this field is omitted, there are no subsequent pages. # @!attribute [rw] unreachable # @return [::Array<::String>] # Locations that could not be reached when making an aggregated query using # wildcards. class ListHcxActivationKeysResponse include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # HCX activation key. A default key is created during # private cloud provisioning, but this behavior is subject to change # and you should always verify active keys. # Use {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#list_hcx_activation_keys VmwareEngine.ListHcxActivationKeys} to retrieve existing keys # and {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#create_hcx_activation_key VmwareEngine.CreateHcxActivationKey} to create new ones. # @!attribute [r] name # @return [::String] # Output only. The resource name of this HcxActivationKey. # Resource names are schemeless URIs that follow the conventions in # https://cloud.google.com/apis/design/resource_names. # For example: # `projects/my-project/locations/us-west1/privateClouds/my-cloud/hcxActivationKeys/my-key` # @!attribute [r] create_time # @return [::Google::Protobuf::Timestamp] # Output only. Creation time of HCX activation key. # @!attribute [r] state # @return [::Google::Cloud::VmwareEngine::V1::HcxActivationKey::State] # Output only. State of HCX activation key. # @!attribute [r] activation_key # @return [::String] # Output only. HCX activation key. # @!attribute [r] uid # @return [::String] # Output only. System-generated unique identifier for the resource. class HcxActivationKey include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # State of HCX activation key module State # Unspecified state. STATE_UNSPECIFIED = 0 # State of a newly generated activation key. AVAILABLE = 1 # State of key when it has been used to activate HCX appliance. CONSUMED = 2 # State of key when it is being created. CREATING = 3 end end # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#list_hcx_activation_keys VmwareEngine.ListHcxActivationKeys} # @!attribute [rw] parent # @return [::String] # Required. The resource name of the private cloud # to be queried for HCX activation keys. # Resource names are schemeless URIs that follow the conventions in # https://cloud.google.com/apis/design/resource_names. # For example: # `projects/my-project/locations/us-central1/privateClouds/my-cloud` # @!attribute [rw] page_size # @return [::Integer] # The maximum number of HCX activation keys to return in one page. # The service may return fewer than this value. # The maximum value is coerced to 1000. # The default value of this field is 500. # @!attribute [rw] page_token # @return [::String] # A page token, received from a previous `ListHcxActivationKeys` call. # Provide this to retrieve the subsequent page. # # When paginating, all other parameters provided to # `ListHcxActivationKeys` must match the call that provided the page # token. class ListHcxActivationKeysRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Request message for [VmwareEngine.GetHcxActivationKeys][] # @!attribute [rw] name # @return [::String] # Required. The resource name of the HCX activation key to retrieve. # Resource names are schemeless URIs that follow the conventions in # https://cloud.google.com/apis/design/resource_names. # For example: # `projects/my-project/locations/us-west1/privateClouds/my-cloud/hcxActivationKeys/my-key` class GetHcxActivationKeyRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#create_hcx_activation_key VmwareEngine.CreateHcxActivationKey} # @!attribute [rw] parent # @return [::String] # Required. The resource name of the private cloud to create the key for. # Resource names are schemeless URIs that follow the conventions in # https://cloud.google.com/apis/design/resource_names. # For example: # `projects/my-project/locations/us-central1/privateClouds/my-cloud` # @!attribute [rw] hcx_activation_key # @return [::Google::Cloud::VmwareEngine::V1::HcxActivationKey] # Required. The initial description of a new HCX activation key. When # creating a new key, this field must be an empty object. # @!attribute [rw] hcx_activation_key_id # @return [::String] # Required. The user-provided identifier of the `HcxActivationKey` to be # created. This identifier must be unique among `HcxActivationKey` resources # within the parent and becomes the final token in the name URI. # The identifier must meet the following requirements: # # * Only contains 1-63 alphanumeric characters and hyphens # * Begins with an alphabetical character # * Ends with a non-hyphen character # * Not formatted as a UUID # * Complies with [RFC 1034](https://datatracker.ietf.org/doc/html/rfc1034) # (section 3.5) # @!attribute [rw] request_id # @return [::String] # A request ID to identify requests. Specify a unique request ID # so that if you must retry your request, the server will know to ignore # the request if it has already been completed. The server guarantees that a # request doesn't result in creation of duplicate commitments for at least 60 # minutes. # # For example, consider a situation where you make an initial request and the # request times out. If you make the request again with the same request ID, # the server can check if original operation with the same request ID was # received, and if so, will ignore the second request. This prevents clients # from accidentally creating duplicate commitments. # # The request ID must be a valid UUID with the exception that zero UUID is # not supported (00000000-0000-0000-0000-000000000000). class CreateHcxActivationKeyRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Details about a HCX Cloud Manager appliance. # @!attribute [rw] internal_ip # @return [::String] # Internal IP address of the appliance. # @!attribute [rw] version # @return [::String] # Version of the appliance. # @!attribute [r] state # @return [::Google::Cloud::VmwareEngine::V1::Hcx::State] # Output only. The state of the appliance. # @!attribute [rw] fqdn # @return [::String] # Fully qualified domain name of the appliance. class Hcx include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # State of the appliance module State # Unspecified appliance state. This is the default value. STATE_UNSPECIFIED = 0 # The appliance is operational and can be used. ACTIVE = 1 # The appliance is being deployed. CREATING = 2 end end # Details about a NSX Manager appliance. # @!attribute [rw] internal_ip # @return [::String] # Internal IP address of the appliance. # @!attribute [rw] version # @return [::String] # Version of the appliance. # @!attribute [r] state # @return [::Google::Cloud::VmwareEngine::V1::Nsx::State] # Output only. The state of the appliance. # @!attribute [rw] fqdn # @return [::String] # Fully qualified domain name of the appliance. class Nsx include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # State of the appliance module State # Unspecified appliance state. This is the default value. STATE_UNSPECIFIED = 0 # The appliance is operational and can be used. ACTIVE = 1 # The appliance is being deployed. CREATING = 2 end end # Details about a vCenter Server management appliance. # @!attribute [rw] internal_ip # @return [::String] # Internal IP address of the appliance. # @!attribute [rw] version # @return [::String] # Version of the appliance. # @!attribute [r] state # @return [::Google::Cloud::VmwareEngine::V1::Vcenter::State] # Output only. The state of the appliance. # @!attribute [rw] fqdn # @return [::String] # Fully qualified domain name of the appliance. class Vcenter include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # State of the appliance module State # Unspecified appliance state. This is the default value. STATE_UNSPECIFIED = 0 # The appliance is operational and can be used. ACTIVE = 1 # The appliance is being deployed. CREATING = 2 end end # Represents a network policy resource. Network policies are regional # resources. You can use a network policy to enable or disable internet access # and external IP access. Network policies are associated with a VMware Engine # network, which might span across regions. For a given region, a network # policy applies to all private clouds in the VMware Engine network associated # with the policy. # @!attribute [r] name # @return [::String] # Output only. The resource name of this network policy. # Resource names are schemeless URIs that follow the conventions in # https://cloud.google.com/apis/design/resource_names. # For example: # `projects/my-project/locations/us-central1/networkPolicies/my-network-policy` # @!attribute [r] create_time # @return [::Google::Protobuf::Timestamp] # Output only. Creation time of this resource. # @!attribute [r] update_time # @return [::Google::Protobuf::Timestamp] # Output only. Last update time of this resource. # @!attribute [rw] internet_access # @return [::Google::Cloud::VmwareEngine::V1::NetworkPolicy::NetworkService] # Network service that allows VMware workloads to access the internet. # @!attribute [rw] external_ip # @return [::Google::Cloud::VmwareEngine::V1::NetworkPolicy::NetworkService] # Network service that allows External IP addresses to be assigned to VMware # workloads. This service can only be enabled when `internet_access` is also # enabled. # @!attribute [rw] edge_services_cidr # @return [::String] # Required. IP address range in CIDR notation used to create internet access # and external IP access. An RFC 1918 CIDR block, with a "/26" prefix, is # required. The range cannot overlap with any prefixes either in the consumer # VPC network or in use by the private clouds attached to that VPC network. # @!attribute [r] uid # @return [::String] # Output only. System-generated unique identifier for the resource. # @!attribute [rw] vmware_engine_network # @return [::String] # Optional. The relative resource name of the VMware Engine network. # Specify the name in the following form: # `projects/{project}/locations/{location}/vmwareEngineNetworks/{vmware_engine_network_id}` # where `{project}` can either be a project number or a project ID. # @!attribute [rw] description # @return [::String] # Optional. User-provided description for this network policy. # @!attribute [r] vmware_engine_network_canonical # @return [::String] # Output only. The canonical name of the VMware Engine network in the form: # `projects/{project_number}/locations/{location}/vmwareEngineNetworks/{vmware_engine_network_id}` class NetworkPolicy include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # Represents a network service that is managed by a `NetworkPolicy` resource. # A network service provides a way to control an aspect of external access to # VMware workloads. For example, whether the VMware workloads in the # private clouds governed by a network policy can access or be accessed from # the internet. # @!attribute [rw] enabled # @return [::Boolean] # True if the service is enabled; false otherwise. # @!attribute [r] state # @return [::Google::Cloud::VmwareEngine::V1::NetworkPolicy::NetworkService::State] # Output only. State of the service. New values may be added to this enum # when appropriate. class NetworkService include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # Enum State defines possible states of a network policy controlled # service. module State # Unspecified service state. This is the default value. STATE_UNSPECIFIED = 0 # Service is not provisioned. UNPROVISIONED = 1 # Service is in the process of being provisioned/deprovisioned. RECONCILING = 2 # Service is active. ACTIVE = 3 end end end # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#list_network_policies VmwareEngine.ListNetworkPolicies} # @!attribute [rw] parent # @return [::String] # Required. The resource name of the location (region) to query for # network policies. Resource names are schemeless URIs that follow the # conventions in https://cloud.google.com/apis/design/resource_names. For # example: `projects/my-project/locations/us-central1` # @!attribute [rw] page_size # @return [::Integer] # The maximum number of network policies to return in one page. # The service may return fewer than this value. # The maximum value is coerced to 1000. # The default value of this field is 500. # @!attribute [rw] page_token # @return [::String] # A page token, received from a previous `ListNetworkPolicies` call. # Provide this to retrieve the subsequent page. # # When paginating, all other parameters provided to # `ListNetworkPolicies` must match the call that provided the page # token. # @!attribute [rw] filter # @return [::String] # A filter expression that matches resources returned in the response. # The expression must specify the field name, a comparison # operator, and the value that you want to use for filtering. The value # must be a string, a number, or a boolean. The comparison operator # must be `=`, `!=`, `>`, or `<`. # # For example, if you are filtering a list of network policies, you can # exclude the ones named `example-policy` by specifying # `name != "example-policy"`. # # To filter on multiple expressions, provide each separate expression within # parentheses. For example: # ``` # (name = "example-policy") # (createTime > "2021-04-12T08:15:10.40Z") # ``` # # By default, each expression is an `AND` expression. However, you # can include `AND` and `OR` expressions explicitly. # For example: # ``` # (name = "example-policy-1") AND # (createTime > "2021-04-12T08:15:10.40Z") OR # (name = "example-policy-2") # ``` # @!attribute [rw] order_by # @return [::String] # Sorts list results by a certain order. By default, returned results # are ordered by `name` in ascending order. # You can also sort results in descending order based on the `name` value # using `orderBy="name desc"`. # Currently, only ordering by `name` is supported. class ListNetworkPoliciesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Response message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#list_network_policies VmwareEngine.ListNetworkPolicies} # @!attribute [rw] network_policies # @return [::Array<::Google::Cloud::VmwareEngine::V1::NetworkPolicy>] # A list of network policies. # @!attribute [rw] next_page_token # @return [::String] # A token, which can be send as `page_token` to retrieve the next page. # If this field is omitted, there are no subsequent pages. # @!attribute [rw] unreachable # @return [::Array<::String>] # Locations that could not be reached when making an aggregated query using # wildcards. class ListNetworkPoliciesResponse include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#get_network_policy VmwareEngine.GetNetworkPolicy} # @!attribute [rw] name # @return [::String] # Required. The resource name of the network policy to retrieve. # Resource names are schemeless URIs that follow the conventions in # https://cloud.google.com/apis/design/resource_names. # For example: # `projects/my-project/locations/us-central1/networkPolicies/my-network-policy` class GetNetworkPolicyRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#update_network_policy VmwareEngine.UpdateNetworkPolicy} # @!attribute [rw] network_policy # @return [::Google::Cloud::VmwareEngine::V1::NetworkPolicy] # Required. Network policy description. # @!attribute [rw] update_mask # @return [::Google::Protobuf::FieldMask] # Required. Field mask is used to specify the fields to be overwritten in the # `NetworkPolicy` resource by the update. # The fields specified in the `update_mask` are relative to the resource, not # the full request. A field will be overwritten if it is in the mask. If the # user does not provide a mask then all fields will be overwritten. # @!attribute [rw] request_id # @return [::String] # Optional. A request ID to identify requests. Specify a unique request ID # so that if you must retry your request, the server will know to ignore # the request if it has already been completed. The server guarantees that a # request doesn't result in creation of duplicate commitments for at least 60 # minutes. # # For example, consider a situation where you make an initial request and the # request times out. If you make the request again with the same request # ID, the server can check if original operation with the same request ID # was received, and if so, will ignore the second request. This prevents # clients from accidentally creating duplicate commitments. # # The request ID must be a valid UUID with the exception that zero UUID is # not supported (00000000-0000-0000-0000-000000000000). class UpdateNetworkPolicyRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#create_network_policy VmwareEngine.CreateNetworkPolicy} # @!attribute [rw] parent # @return [::String] # Required. The resource name of the location (region) # to create the new network policy in. # Resource names are schemeless URIs that follow the conventions in # https://cloud.google.com/apis/design/resource_names. # For example: # `projects/my-project/locations/us-central1` # @!attribute [rw] network_policy_id # @return [::String] # Required. The user-provided identifier of the network policy to be created. # This identifier must be unique within parent # `projects/{my-project}/locations/{us-central1}/networkPolicies` and becomes # the final token in the name URI. # The identifier must meet the following requirements: # # * Only contains 1-63 alphanumeric characters and hyphens # * Begins with an alphabetical character # * Ends with a non-hyphen character # * Not formatted as a UUID # * Complies with [RFC 1034](https://datatracker.ietf.org/doc/html/rfc1034) # (section 3.5) # @!attribute [rw] network_policy # @return [::Google::Cloud::VmwareEngine::V1::NetworkPolicy] # Required. The network policy configuration to use in the request. # @!attribute [rw] request_id # @return [::String] # Optional. A request ID to identify requests. Specify a unique request ID # so that if you must retry your request, the server will know to ignore # the request if it has already been completed. The server guarantees that a # request doesn't result in creation of duplicate commitments for at least 60 # minutes. # # For example, consider a situation where you make an initial request and the # request times out. If you make the request again with the same request # ID, the server can check if original operation with the same request ID # was received, and if so, will ignore the second request. This prevents # clients from accidentally creating duplicate commitments. # # The request ID must be a valid UUID with the exception that zero UUID is # not supported (00000000-0000-0000-0000-000000000000). class CreateNetworkPolicyRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#delete_network_policy VmwareEngine.DeleteNetworkPolicy} # @!attribute [rw] name # @return [::String] # Required. The resource name of the network policy to delete. # Resource names are schemeless URIs that follow the conventions in # https://cloud.google.com/apis/design/resource_names. # For example: # `projects/my-project/locations/us-central1/networkPolicies/my-network-policy` # @!attribute [rw] request_id # @return [::String] # Optional. A request ID to identify requests. Specify a unique request ID # so that if you must retry your request, the server will know to ignore # the request if it has already been completed. The server guarantees that a # request doesn't result in creation of duplicate commitments for at least 60 # minutes. # # For example, consider a situation where you make an initial request and the # request times out. If you make the request again with the same request # ID, the server can check if original operation with the same request ID # was received, and if so, will ignore the second request. This prevents # clients from accidentally creating duplicate commitments. # # The request ID must be a valid UUID with the exception that zero UUID is # not supported (00000000-0000-0000-0000-000000000000). class DeleteNetworkPolicyRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # VMware Engine network resource that provides connectivity for VMware Engine # private clouds. # @!attribute [r] name # @return [::String] # Output only. The resource name of the VMware Engine network. # Resource names are schemeless URIs that follow the conventions in # https://cloud.google.com/apis/design/resource_names. # For example: # `projects/my-project/locations/global/vmwareEngineNetworks/my-network` # @!attribute [r] create_time # @return [::Google::Protobuf::Timestamp] # Output only. Creation time of this resource. # @!attribute [r] update_time # @return [::Google::Protobuf::Timestamp] # Output only. Last update time of this resource. # @!attribute [rw] description # @return [::String] # User-provided description for this VMware Engine network. # @!attribute [r] vpc_networks # @return [::Array<::Google::Cloud::VmwareEngine::V1::VmwareEngineNetwork::VpcNetwork>] # Output only. VMware Engine service VPC networks that provide connectivity # from a private cloud to customer projects, the internet, and other Google # Cloud services. # @!attribute [r] state # @return [::Google::Cloud::VmwareEngine::V1::VmwareEngineNetwork::State] # Output only. State of the VMware Engine network. # @!attribute [rw] type # @return [::Google::Cloud::VmwareEngine::V1::VmwareEngineNetwork::Type] # Required. VMware Engine network type. # @!attribute [r] uid # @return [::String] # Output only. System-generated unique identifier for the resource. # @!attribute [rw] etag # @return [::String] # Checksum that may be sent on update and delete requests to ensure that the # user-provided value is up to date before the server processes a request. # The server computes checksums based on the value of other fields in the # request. class VmwareEngineNetwork include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # Represents a VMware Engine VPC network that is managed by a # VMware Engine network resource. # @!attribute [r] type # @return [::Google::Cloud::VmwareEngine::V1::VmwareEngineNetwork::VpcNetwork::Type] # Output only. Type of VPC network (INTRANET, INTERNET, or # GOOGLE_CLOUD) # @!attribute [r] network # @return [::String] # Output only. The relative resource name of the service VPC network this # VMware Engine network is attached to. For example: # `projects/123123/global/networks/my-network` class VpcNetwork include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # Enum Type defines possible types of a VMware Engine network controlled # service. module Type # The default value. This value should never be used. TYPE_UNSPECIFIED = 0 # VPC network that will be peered with a consumer VPC network or the # intranet VPC of another VMware Engine network. Access a private cloud # through Compute Engine VMs on a peered VPC network or an on-premises # resource connected to a peered consumer VPC network. INTRANET = 1 # VPC network used for internet access to and from a private cloud. INTERNET = 2 # VPC network used for access to Google Cloud services like # Cloud Storage. GOOGLE_CLOUD = 3 end end # Enum State defines possible states of VMware Engine network. module State # The default value. This value is used if the state is omitted. STATE_UNSPECIFIED = 0 # The VMware Engine network is being created. CREATING = 1 # The VMware Engine network is ready. ACTIVE = 2 # The VMware Engine network is being updated. UPDATING = 3 # The VMware Engine network is being deleted. DELETING = 4 end # Enum Type defines possible types of VMware Engine network. module Type # The default value. This value should never be used. TYPE_UNSPECIFIED = 0 # Network type used by private clouds created in projects without a network # of type `STANDARD`. This network type is no longer used for new VMware # Engine private cloud deployments. LEGACY = 1 end end # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#create_vmware_engine_network VmwareEngine.CreateVmwareEngineNetwork} # @!attribute [rw] parent # @return [::String] # Required. The resource name of the location to create the new VMware Engine # network in. A VMware Engine network of type # `LEGACY` is a regional resource, and a VMware # Engine network of type `STANDARD` is a global resource. # Resource names are schemeless URIs that follow the conventions in # https://cloud.google.com/apis/design/resource_names. For example: # `projects/my-project/locations/global` # @!attribute [rw] vmware_engine_network_id # @return [::String] # Required. The user-provided identifier of the new VMware Engine network. # This identifier must be unique among VMware Engine network resources # within the parent and becomes the final token in the name URI. The # identifier must meet the following requirements: # # * For networks of type LEGACY, adheres to the format: # `{region-id}-default`. Replace `{region-id}` with the region where you want # to create the VMware Engine network. For example, "us-west1-default". # * Only contains 1-63 alphanumeric characters and hyphens # * Begins with an alphabetical character # * Ends with a non-hyphen character # * Not formatted as a UUID # * Complies with [RFC 1034](https://datatracker.ietf.org/doc/html/rfc1034) # (section 3.5) # @!attribute [rw] vmware_engine_network # @return [::Google::Cloud::VmwareEngine::V1::VmwareEngineNetwork] # Required. The initial description of the new VMware Engine network. # @!attribute [rw] request_id # @return [::String] # Optional. A request ID to identify requests. Specify a unique request ID # so that if you must retry your request, the server will know to ignore # the request if it has already been completed. The server guarantees that a # request doesn't result in creation of duplicate commitments for at least 60 # minutes. # # For example, consider a situation where you make an initial request and the # request times out. If you make the request again with the same request # ID, the server can check if original operation with the same request ID # was received, and if so, will ignore the second request. This prevents # clients from accidentally creating duplicate commitments. # # The request ID must be a valid UUID with the exception that zero UUID is # not supported (00000000-0000-0000-0000-000000000000). class CreateVmwareEngineNetworkRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#update_vmware_engine_network VmwareEngine.UpdateVmwareEngineNetwork} # @!attribute [rw] vmware_engine_network # @return [::Google::Cloud::VmwareEngine::V1::VmwareEngineNetwork] # Required. VMware Engine network description. # @!attribute [rw] update_mask # @return [::Google::Protobuf::FieldMask] # Required. Field mask is used to specify the fields to be overwritten in the # VMware Engine network resource by the update. # The fields specified in the `update_mask` are relative to the resource, not # the full request. A field will be overwritten if it is in the mask. If the # user does not provide a mask then all fields will be overwritten. Only the # following fields can be updated: `description`. # @!attribute [rw] request_id # @return [::String] # Optional. A request ID to identify requests. Specify a unique request ID # so that if you must retry your request, the server will know to ignore # the request if it has already been completed. The server guarantees that a # request doesn't result in creation of duplicate commitments for at least 60 # minutes. # # For example, consider a situation where you make an initial request and the # request times out. If you make the request again with the same request # ID, the server can check if original operation with the same request ID # was received, and if so, will ignore the second request. This prevents # clients from accidentally creating duplicate commitments. # # The request ID must be a valid UUID with the exception that zero UUID is # not supported (00000000-0000-0000-0000-000000000000). class UpdateVmwareEngineNetworkRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#delete_vmware_engine_network VmwareEngine.DeleteVmwareEngineNetwork} # @!attribute [rw] name # @return [::String] # Required. The resource name of the VMware Engine network to be deleted. # Resource names are schemeless URIs that follow the conventions in # https://cloud.google.com/apis/design/resource_names. # For example: # `projects/my-project/locations/global/vmwareEngineNetworks/my-network` # @!attribute [rw] request_id # @return [::String] # Optional. A request ID to identify requests. Specify a unique request ID # so that if you must retry your request, the server will know to ignore # the request if it has already been completed. The server guarantees that a # request doesn't result in creation of duplicate commitments for at least 60 # minutes. # # For example, consider a situation where you make an initial request and the # request times out. If you make the request again with the same request # ID, the server can check if original operation with the same request ID # was received, and if so, will ignore the second request. This prevents # clients from accidentally creating duplicate commitments. # # The request ID must be a valid UUID with the exception that zero UUID is # not supported (00000000-0000-0000-0000-000000000000). # @!attribute [rw] etag # @return [::String] # Optional. Checksum used to ensure that the user-provided value is up to date before # the server processes the request. The server compares provided checksum # with the current checksum of the resource. If the user-provided value is # out of date, this request returns an `ABORTED` error. class DeleteVmwareEngineNetworkRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#get_vmware_engine_network VmwareEngine.GetVmwareEngineNetwork} # @!attribute [rw] name # @return [::String] # Required. The resource name of the VMware Engine network to retrieve. # Resource names are schemeless URIs that follow the conventions in # https://cloud.google.com/apis/design/resource_names. # For example: # `projects/my-project/locations/global/vmwareEngineNetworks/my-network` class GetVmwareEngineNetworkRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Request message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#list_vmware_engine_networks VmwareEngine.ListVmwareEngineNetworks} # @!attribute [rw] parent # @return [::String] # Required. The resource name of the location to query for # VMware Engine networks. Resource names are schemeless URIs that follow the # conventions in https://cloud.google.com/apis/design/resource_names. For # example: `projects/my-project/locations/global` # @!attribute [rw] page_size # @return [::Integer] # The maximum number of results to return in one page. # The maximum value is coerced to 1000. # The default value of this field is 500. # @!attribute [rw] page_token # @return [::String] # A page token, received from a previous `ListVmwareEngineNetworks` call. # Provide this to retrieve the subsequent page. # # When paginating, all other parameters provided to # `ListVmwareEngineNetworks` must match the call that provided the page # token. # @!attribute [rw] filter # @return [::String] # A filter expression that matches resources returned in the response. # The expression must specify the field name, a comparison # operator, and the value that you want to use for filtering. The value # must be a string, a number, or a boolean. The comparison operator # must be `=`, `!=`, `>`, or `<`. # # For example, if you are filtering a list of network peerings, you can # exclude the ones named `example-network` by specifying # `name != "example-network"`. # # To filter on multiple expressions, provide each separate expression within # parentheses. For example: # ``` # (name = "example-network") # (createTime > "2021-04-12T08:15:10.40Z") # ``` # # By default, each expression is an `AND` expression. However, you # can include `AND` and `OR` expressions explicitly. # For example: # ``` # (name = "example-network-1") AND # (createTime > "2021-04-12T08:15:10.40Z") OR # (name = "example-network-2") # ``` # @!attribute [rw] order_by # @return [::String] # Sorts list results by a certain order. By default, returned results # are ordered by `name` in ascending order. # You can also sort results in descending order based on the `name` value # using `orderBy="name desc"`. # Currently, only ordering by `name` is supported. class ListVmwareEngineNetworksRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Response message for {::Google::Cloud::VmwareEngine::V1::VmwareEngine::Client#list_vmware_engine_networks VmwareEngine.ListVmwareEngineNetworks} # @!attribute [rw] vmware_engine_networks # @return [::Array<::Google::Cloud::VmwareEngine::V1::VmwareEngineNetwork>] # A list of VMware Engine networks. # @!attribute [rw] next_page_token # @return [::String] # A token, which can be sent as `page_token` to retrieve the next page. # If this field is omitted, there are no subsequent pages. # @!attribute [rw] unreachable # @return [::Array<::String>] # Unreachable resources. class ListVmwareEngineNetworksResponse include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end end end end end