# frozen_string_literal: true # Copyright 2020 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 Spanner module Admin module Instance module V1 # @!attribute [rw] location # @return [::String] # The location of the serving resources, e.g. "us-central1". # @!attribute [rw] type # @return [::Google::Cloud::Spanner::Admin::Instance::V1::ReplicaInfo::ReplicaType] # The type of replica. # @!attribute [rw] default_leader_location # @return [::Boolean] # If true, this location is designated as the default leader location where # leader replicas are placed. See the [region types # documentation](https://cloud.google.com/spanner/docs/instances#region_types) # for more details. class ReplicaInfo include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # Indicates the type of replica. See the [replica types # documentation](https://cloud.google.com/spanner/docs/replication#replica_types) # for more details. module ReplicaType # Not specified. TYPE_UNSPECIFIED = 0 # Read-write replicas support both reads and writes. These replicas: # # * Maintain a full copy of your data. # * Serve reads. # * Can vote whether to commit a write. # * Participate in leadership election. # * Are eligible to become a leader. READ_WRITE = 1 # Read-only replicas only support reads (not writes). Read-only replicas: # # * Maintain a full copy of your data. # * Serve reads. # * Do not participate in voting to commit writes. # * Are not eligible to become a leader. READ_ONLY = 2 # Witness replicas don't support reads but do participate in voting to # commit writes. Witness replicas: # # * Do not maintain a full copy of data. # * Do not serve reads. # * Vote whether to commit writes. # * Participate in leader election but are not eligible to become leader. WITNESS = 3 end end # A possible configuration for a Cloud Spanner instance. Configurations # define the geographic placement of nodes and their replication. # @!attribute [rw] name # @return [::String] # A unique identifier for the instance configuration. Values # are of the form # `projects//instanceConfigs/[a-z][-a-z0-9]*`. # @!attribute [rw] display_name # @return [::String] # The name of this instance configuration as it appears in UIs. # @!attribute [r] config_type # @return [::Google::Cloud::Spanner::Admin::Instance::V1::InstanceConfig::Type] # Output only. Whether this instance config is a Google or User Managed # Configuration. # @!attribute [rw] replicas # @return [::Array<::Google::Cloud::Spanner::Admin::Instance::V1::ReplicaInfo>] # The geographic placement of nodes in this instance configuration and their # replication properties. # @!attribute [r] optional_replicas # @return [::Array<::Google::Cloud::Spanner::Admin::Instance::V1::ReplicaInfo>] # Output only. The available optional replicas to choose from for user # managed configurations. Populated for Google managed configurations. # @!attribute [rw] base_config # @return [::String] # Base configuration name, e.g. projects//instanceConfigs/nam3, # based on which this configuration is created. Only set for user managed # configurations. `base_config` must refer to a configuration of type # GOOGLE_MANAGED in the same project as this configuration. # @!attribute [rw] labels # @return [::Google::Protobuf::Map{::String => ::String}] # Cloud Labels are a flexible and lightweight mechanism for organizing cloud # resources into groups that reflect a customer's organizational needs and # deployment strategies. Cloud Labels can be used to filter collections of # resources. They can be used to control how resource metrics are aggregated. # And they can be used as arguments to policy management rules (e.g. route, # firewall, load balancing, etc.). # # * Label keys must be between 1 and 63 characters long and must conform to # the following regular expression: `[a-z][a-z0-9_-]{0,62}`. # * Label values must be between 0 and 63 characters long and must conform # to the regular expression `[a-z0-9_-]{0,63}`. # * No more than 64 labels can be associated with a given resource. # # See https://goo.gl/xmQnxf for more information on and examples of labels. # # If you plan to use labels in your own code, please note that additional # characters may be allowed in the future. Therefore, you are advised to use # an internal label representation, such as JSON, which doesn't rely upon # specific characters being disallowed. For example, representing labels # as the string: name + "_" + value would prove problematic if we were to # allow "_" in a future release. # @!attribute [rw] etag # @return [::String] # etag is used for optimistic concurrency control as a way # to help prevent simultaneous updates of a instance config from overwriting # each other. It is strongly suggested that systems make use of the etag in # the read-modify-write cycle to perform instance config updates in order to # avoid race conditions: An etag is returned in the response which contains # instance configs, and systems are expected to put that etag in the request # to update instance config to ensure that their change will be applied to # the same version of the instance config. # If no etag is provided in the call to update instance config, then the # existing instance config is overwritten blindly. # @!attribute [rw] leader_options # @return [::Array<::String>] # Allowed values of the "default_leader" schema option for databases in # instances that use this instance configuration. # @!attribute [r] reconciling # @return [::Boolean] # Output only. If true, the instance config is being created or updated. If # false, there are no ongoing operations for the instance config. # @!attribute [r] state # @return [::Google::Cloud::Spanner::Admin::Instance::V1::InstanceConfig::State] # Output only. The current instance config state. class InstanceConfig include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # @!attribute [rw] key # @return [::String] # @!attribute [rw] value # @return [::String] class LabelsEntry include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # The type of this configuration. module Type # Unspecified. TYPE_UNSPECIFIED = 0 # Google managed configuration. GOOGLE_MANAGED = 1 # User managed configuration. USER_MANAGED = 2 end # Indicates the current state of the instance config. module State # Not specified. STATE_UNSPECIFIED = 0 # The instance config is still being created. CREATING = 1 # The instance config is fully created and ready to be used to create # instances. READY = 2 end end # Autoscaling config for an instance. # @!attribute [rw] autoscaling_limits # @return [::Google::Cloud::Spanner::Admin::Instance::V1::AutoscalingConfig::AutoscalingLimits] # Required. Autoscaling limits for an instance. # @!attribute [rw] autoscaling_targets # @return [::Google::Cloud::Spanner::Admin::Instance::V1::AutoscalingConfig::AutoscalingTargets] # Required. The autoscaling targets for an instance. class AutoscalingConfig include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # The autoscaling limits for the instance. Users can define the minimum and # maximum compute capacity allocated to the instance, and the autoscaler will # only scale within that range. Users can either use nodes or processing # units to specify the limits, but should use the same unit to set both the # min_limit and max_limit. # @!attribute [rw] min_nodes # @return [::Integer] # Minimum number of nodes allocated to the instance. If set, this number # should be greater than or equal to 1. # @!attribute [rw] min_processing_units # @return [::Integer] # Minimum number of processing units allocated to the instance. If set, # this number should be multiples of 1000. # @!attribute [rw] max_nodes # @return [::Integer] # Maximum number of nodes allocated to the instance. If set, this number # should be greater than or equal to min_nodes. # @!attribute [rw] max_processing_units # @return [::Integer] # Maximum number of processing units allocated to the instance. If set, # this number should be multiples of 1000 and be greater than or equal to # min_processing_units. class AutoscalingLimits include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # The autoscaling targets for an instance. # @!attribute [rw] high_priority_cpu_utilization_percent # @return [::Integer] # Required. The target high priority cpu utilization percentage that the # autoscaler should be trying to achieve for the instance. This number is # on a scale from 0 (no utilization) to 100 (full utilization). The valid # range is [10, 90] inclusive. # @!attribute [rw] storage_utilization_percent # @return [::Integer] # Required. The target storage utilization percentage that the autoscaler # should be trying to achieve for the instance. This number is on a scale # from 0 (no utilization) to 100 (full utilization). The valid range is # [10, 100] inclusive. class AutoscalingTargets include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end end # An isolated set of Cloud Spanner resources on which databases can be hosted. # @!attribute [rw] name # @return [::String] # Required. A unique identifier for the instance, which cannot be changed # after the instance is created. Values are of the form # `projects//instances/[a-z][-a-z0-9]*[a-z0-9]`. The final # segment of the name must be between 2 and 64 characters in length. # @!attribute [rw] config # @return [::String] # Required. The name of the instance's configuration. Values are of the form # `projects//instanceConfigs/`. See # also {::Google::Cloud::Spanner::Admin::Instance::V1::InstanceConfig InstanceConfig} and # {::Google::Cloud::Spanner::Admin::Instance::V1::InstanceAdmin::Client#list_instance_configs ListInstanceConfigs}. # @!attribute [rw] display_name # @return [::String] # Required. The descriptive name for this instance as it appears in UIs. # Must be unique per project and between 4 and 30 characters in length. # @!attribute [rw] node_count # @return [::Integer] # The number of nodes allocated to this instance. At most one of either # node_count or processing_units should be present in the message. # # Users can set the node_count field to specify the target number of nodes # allocated to the instance. # # This may be zero in API responses for instances that are not yet in state # `READY`. # # See [the # documentation](https://cloud.google.com/spanner/docs/compute-capacity) # for more information about nodes and processing units. # @!attribute [rw] processing_units # @return [::Integer] # The number of processing units allocated to this instance. At most one of # processing_units or node_count should be present in the message. # # Users can set the processing_units field to specify the target number of # processing units allocated to the instance. # # This may be zero in API responses for instances that are not yet in state # `READY`. # # See [the # documentation](https://cloud.google.com/spanner/docs/compute-capacity) # for more information about nodes and processing units. # @!attribute [rw] autoscaling_config # @return [::Google::Cloud::Spanner::Admin::Instance::V1::AutoscalingConfig] # Optional. The autoscaling configuration. Autoscaling is enabled if this # field is set. When autoscaling is enabled, node_count and processing_units # are treated as OUTPUT_ONLY fields and reflect the current compute capacity # allocated to the instance. # @!attribute [r] state # @return [::Google::Cloud::Spanner::Admin::Instance::V1::Instance::State] # Output only. The current instance state. For # {::Google::Cloud::Spanner::Admin::Instance::V1::InstanceAdmin::Client#create_instance CreateInstance}, # the state must be either omitted or set to `CREATING`. For # {::Google::Cloud::Spanner::Admin::Instance::V1::InstanceAdmin::Client#update_instance UpdateInstance}, # the state must be either omitted or set to `READY`. # @!attribute [rw] labels # @return [::Google::Protobuf::Map{::String => ::String}] # Cloud Labels are a flexible and lightweight mechanism for organizing cloud # resources into groups that reflect a customer's organizational needs and # deployment strategies. Cloud Labels can be used to filter collections of # resources. They can be used to control how resource metrics are aggregated. # And they can be used as arguments to policy management rules (e.g. route, # firewall, load balancing, etc.). # # * Label keys must be between 1 and 63 characters long and must conform to # the following regular expression: `[a-z][a-z0-9_-]{0,62}`. # * Label values must be between 0 and 63 characters long and must conform # to the regular expression `[a-z0-9_-]{0,63}`. # * No more than 64 labels can be associated with a given resource. # # See https://goo.gl/xmQnxf for more information on and examples of labels. # # If you plan to use labels in your own code, please note that additional # characters may be allowed in the future. And so you are advised to use an # internal label representation, such as JSON, which doesn't rely upon # specific characters being disallowed. For example, representing labels # as the string: name + "_" + value would prove problematic if we were to # allow "_" in a future release. # @!attribute [rw] endpoint_uris # @return [::Array<::String>] # Deprecated. This field is not populated. # @!attribute [r] create_time # @return [::Google::Protobuf::Timestamp] # Output only. The time at which the instance was created. # @!attribute [r] update_time # @return [::Google::Protobuf::Timestamp] # Output only. The time at which the instance was most recently updated. class Instance include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods # @!attribute [rw] key # @return [::String] # @!attribute [rw] value # @return [::String] class LabelsEntry include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Indicates the current state of the instance. module State # Not specified. STATE_UNSPECIFIED = 0 # The instance is still being created. Resources may not be # available yet, and operations such as database creation may not # work. CREATING = 1 # The instance is fully created and ready to do work such as # creating databases. READY = 2 end end # The request for # {::Google::Cloud::Spanner::Admin::Instance::V1::InstanceAdmin::Client#list_instance_configs ListInstanceConfigs}. # @!attribute [rw] parent # @return [::String] # Required. The name of the project for which a list of supported instance # configurations is requested. Values are of the form # `projects/`. # @!attribute [rw] page_size # @return [::Integer] # Number of instance configurations to be returned in the response. If 0 or # less, defaults to the server's maximum allowed page size. # @!attribute [rw] page_token # @return [::String] # If non-empty, `page_token` should contain a # {::Google::Cloud::Spanner::Admin::Instance::V1::ListInstanceConfigsResponse#next_page_token next_page_token} # from a previous # {::Google::Cloud::Spanner::Admin::Instance::V1::ListInstanceConfigsResponse ListInstanceConfigsResponse}. class ListInstanceConfigsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # The response for # {::Google::Cloud::Spanner::Admin::Instance::V1::InstanceAdmin::Client#list_instance_configs ListInstanceConfigs}. # @!attribute [rw] instance_configs # @return [::Array<::Google::Cloud::Spanner::Admin::Instance::V1::InstanceConfig>] # The list of requested instance configurations. # @!attribute [rw] next_page_token # @return [::String] # `next_page_token` can be sent in a subsequent # {::Google::Cloud::Spanner::Admin::Instance::V1::InstanceAdmin::Client#list_instance_configs ListInstanceConfigs} # call to fetch more of the matching instance configurations. class ListInstanceConfigsResponse include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # The request for # {::Google::Cloud::Spanner::Admin::Instance::V1::InstanceAdmin::Client#get_instance_config GetInstanceConfigRequest}. # @!attribute [rw] name # @return [::String] # Required. The name of the requested instance configuration. Values are of # the form `projects//instanceConfigs/`. class GetInstanceConfigRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # The request for # [CreateInstanceConfigRequest][InstanceAdmin.CreateInstanceConfigRequest]. # @!attribute [rw] parent # @return [::String] # Required. The name of the project in which to create the instance config. # Values are of the form `projects/`. # @!attribute [rw] instance_config_id # @return [::String] # Required. The ID of the instance config to create. Valid identifiers are # of the form `custom-[-a-z0-9]*[a-z0-9]` and must be between 2 and 64 # characters in length. The `custom-` prefix is required to avoid name # conflicts with Google managed configurations. # @!attribute [rw] instance_config # @return [::Google::Cloud::Spanner::Admin::Instance::V1::InstanceConfig] # Required. The InstanceConfig proto of the configuration to create. # instance_config.name must be # `/instanceConfigs/`. # instance_config.base_config must be a Google managed configuration name, # e.g. /instanceConfigs/us-east1, /instanceConfigs/nam3. # @!attribute [rw] validate_only # @return [::Boolean] # An option to validate, but not actually execute, a request, # and provide the same response. class CreateInstanceConfigRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # The request for # [UpdateInstanceConfigRequest][InstanceAdmin.UpdateInstanceConfigRequest]. # @!attribute [rw] instance_config # @return [::Google::Cloud::Spanner::Admin::Instance::V1::InstanceConfig] # Required. The user instance config to update, which must always include the # instance config name. Otherwise, only fields mentioned in # {::Google::Cloud::Spanner::Admin::Instance::V1::UpdateInstanceConfigRequest#update_mask update_mask} # need be included. To prevent conflicts of concurrent updates, # {::Google::Cloud::Spanner::Admin::Instance::V1::InstanceConfig#reconciling etag} can # be used. # @!attribute [rw] update_mask # @return [::Google::Protobuf::FieldMask] # Required. A mask specifying which fields in # {::Google::Cloud::Spanner::Admin::Instance::V1::InstanceConfig InstanceConfig} should be # updated. The field mask must always be specified; this prevents any future # fields in {::Google::Cloud::Spanner::Admin::Instance::V1::InstanceConfig InstanceConfig} # from being erased accidentally by clients that do not know about them. Only # display_name and labels can be updated. # @!attribute [rw] validate_only # @return [::Boolean] # An option to validate, but not actually execute, a request, # and provide the same response. class UpdateInstanceConfigRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # The request for # [DeleteInstanceConfigRequest][InstanceAdmin.DeleteInstanceConfigRequest]. # @!attribute [rw] name # @return [::String] # Required. The name of the instance configuration to be deleted. # Values are of the form # `projects//instanceConfigs/` # @!attribute [rw] etag # @return [::String] # Used for optimistic concurrency control as a way to help prevent # simultaneous deletes of an instance config from overwriting each # other. If not empty, the API # only deletes the instance config when the etag provided matches the current # status of the requested instance config. Otherwise, deletes the instance # config without checking the current status of the requested instance # config. # @!attribute [rw] validate_only # @return [::Boolean] # An option to validate, but not actually execute, a request, # and provide the same response. class DeleteInstanceConfigRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # The request for # {::Google::Cloud::Spanner::Admin::Instance::V1::InstanceAdmin::Client#list_instance_config_operations ListInstanceConfigOperations}. # @!attribute [rw] parent # @return [::String] # Required. The project of the instance config operations. # Values are of the form `projects/`. # @!attribute [rw] filter # @return [::String] # An expression that filters the list of returned operations. # # A filter expression consists of a field name, a # comparison operator, and a value for filtering. # The value must be a string, a number, or a boolean. The comparison operator # must be one of: `<`, `>`, `<=`, `>=`, `!=`, `=`, or `:`. # Colon `:` is the contains operator. Filter rules are not case sensitive. # # The following fields in the {::Google::Longrunning::Operation Operation} # are eligible for filtering: # # * `name` - The name of the long-running operation # * `done` - False if the operation is in progress, else true. # * `metadata.@type` - the type of metadata. For example, the type string # for # {::Google::Cloud::Spanner::Admin::Instance::V1::CreateInstanceConfigMetadata CreateInstanceConfigMetadata} # is # `type.googleapis.com/google.spanner.admin.instance.v1.CreateInstanceConfigMetadata`. # * `metadata.` - any field in metadata.value. # `metadata.@type` must be specified first, if filtering on metadata # fields. # * `error` - Error associated with the long-running operation. # * `response.@type` - the type of response. # * `response.` - any field in response.value. # # You can combine multiple expressions by enclosing each expression in # parentheses. By default, expressions are combined with AND logic. However, # you can specify AND, OR, and NOT logic explicitly. # # Here are a few examples: # # * `done:true` - The operation is complete. # * `(metadata.@type=` \ # `type.googleapis.com/google.spanner.admin.instance.v1.CreateInstanceConfigMetadata) # AND` \ # `(metadata.instance_config.name:custom-config) AND` \ # `(metadata.progress.start_time < \"2021-03-28T14:50:00Z\") AND` \ # `(error:*)` - Return operations where: # * The operation's metadata type is # {::Google::Cloud::Spanner::Admin::Instance::V1::CreateInstanceConfigMetadata CreateInstanceConfigMetadata}. # * The instance config name contains "custom-config". # * The operation started before 2021-03-28T14:50:00Z. # * The operation resulted in an error. # @!attribute [rw] page_size # @return [::Integer] # Number of operations to be returned in the response. If 0 or # less, defaults to the server's maximum allowed page size. # @!attribute [rw] page_token # @return [::String] # If non-empty, `page_token` should contain a # {::Google::Cloud::Spanner::Admin::Instance::V1::ListInstanceConfigOperationsResponse#next_page_token next_page_token} # from a previous # {::Google::Cloud::Spanner::Admin::Instance::V1::ListInstanceConfigOperationsResponse ListInstanceConfigOperationsResponse} # to the same `parent` and with the same `filter`. class ListInstanceConfigOperationsRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # The response for # {::Google::Cloud::Spanner::Admin::Instance::V1::InstanceAdmin::Client#list_instance_config_operations ListInstanceConfigOperations}. # @!attribute [rw] operations # @return [::Array<::Google::Longrunning::Operation>] # The list of matching instance config [long-running # operations][google.longrunning.Operation]. Each operation's name will be # prefixed by the instance config's name. The operation's # {::Google::Longrunning::Operation#metadata metadata} field type # `metadata.type_url` describes the type of the metadata. # @!attribute [rw] next_page_token # @return [::String] # `next_page_token` can be sent in a subsequent # {::Google::Cloud::Spanner::Admin::Instance::V1::InstanceAdmin::Client#list_instance_config_operations ListInstanceConfigOperations} # call to fetch more of the matching metadata. class ListInstanceConfigOperationsResponse include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # The request for # {::Google::Cloud::Spanner::Admin::Instance::V1::InstanceAdmin::Client#get_instance GetInstance}. # @!attribute [rw] name # @return [::String] # Required. The name of the requested instance. Values are of the form # `projects//instances/`. # @!attribute [rw] field_mask # @return [::Google::Protobuf::FieldMask] # If field_mask is present, specifies the subset of # {::Google::Cloud::Spanner::Admin::Instance::V1::Instance Instance} fields that should be # returned. If absent, all # {::Google::Cloud::Spanner::Admin::Instance::V1::Instance Instance} fields are returned. class GetInstanceRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # The request for # {::Google::Cloud::Spanner::Admin::Instance::V1::InstanceAdmin::Client#create_instance CreateInstance}. # @!attribute [rw] parent # @return [::String] # Required. The name of the project in which to create the instance. Values # are of the form `projects/`. # @!attribute [rw] instance_id # @return [::String] # Required. The ID of the instance to create. Valid identifiers are of the # form `[a-z][-a-z0-9]*[a-z0-9]` and must be between 2 and 64 characters in # length. # @!attribute [rw] instance # @return [::Google::Cloud::Spanner::Admin::Instance::V1::Instance] # Required. The instance to create. The name may be omitted, but if # specified must be `/instances/`. class CreateInstanceRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # The request for # {::Google::Cloud::Spanner::Admin::Instance::V1::InstanceAdmin::Client#list_instances ListInstances}. # @!attribute [rw] parent # @return [::String] # Required. The name of the project for which a list of instances is # requested. Values are of the form `projects/`. # @!attribute [rw] page_size # @return [::Integer] # Number of instances to be returned in the response. If 0 or less, defaults # to the server's maximum allowed page size. # @!attribute [rw] page_token # @return [::String] # If non-empty, `page_token` should contain a # {::Google::Cloud::Spanner::Admin::Instance::V1::ListInstancesResponse#next_page_token next_page_token} # from a previous # {::Google::Cloud::Spanner::Admin::Instance::V1::ListInstancesResponse ListInstancesResponse}. # @!attribute [rw] filter # @return [::String] # An expression for filtering the results of the request. Filter rules are # case insensitive. The fields eligible for filtering are: # # * `name` # * `display_name` # * `labels.key` where key is the name of a label # # Some examples of using filters are: # # * `name:*` --> The instance has a name. # * `name:Howl` --> The instance's name contains the string "howl". # * `name:HOWL` --> Equivalent to above. # * `NAME:howl` --> Equivalent to above. # * `labels.env:*` --> The instance has the label "env". # * `labels.env:dev` --> The instance has the label "env" and the value of # the label contains the string "dev". # * `name:howl labels.env:dev` --> The instance's name contains "howl" and # it has the label "env" with its value # containing "dev". class ListInstancesRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # The response for # {::Google::Cloud::Spanner::Admin::Instance::V1::InstanceAdmin::Client#list_instances ListInstances}. # @!attribute [rw] instances # @return [::Array<::Google::Cloud::Spanner::Admin::Instance::V1::Instance>] # The list of requested instances. # @!attribute [rw] next_page_token # @return [::String] # `next_page_token` can be sent in a subsequent # {::Google::Cloud::Spanner::Admin::Instance::V1::InstanceAdmin::Client#list_instances ListInstances} # call to fetch more of the matching instances. class ListInstancesResponse include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # The request for # {::Google::Cloud::Spanner::Admin::Instance::V1::InstanceAdmin::Client#update_instance UpdateInstance}. # @!attribute [rw] instance # @return [::Google::Cloud::Spanner::Admin::Instance::V1::Instance] # Required. The instance to update, which must always include the instance # name. Otherwise, only fields mentioned in # {::Google::Cloud::Spanner::Admin::Instance::V1::UpdateInstanceRequest#field_mask field_mask} # need be included. # @!attribute [rw] field_mask # @return [::Google::Protobuf::FieldMask] # Required. A mask specifying which fields in # {::Google::Cloud::Spanner::Admin::Instance::V1::Instance Instance} should be updated. # The field mask must always be specified; this prevents any future fields in # {::Google::Cloud::Spanner::Admin::Instance::V1::Instance Instance} from being erased # accidentally by clients that do not know about them. class UpdateInstanceRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # The request for # {::Google::Cloud::Spanner::Admin::Instance::V1::InstanceAdmin::Client#delete_instance DeleteInstance}. # @!attribute [rw] name # @return [::String] # Required. The name of the instance to be deleted. Values are of the form # `projects//instances/` class DeleteInstanceRequest include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Metadata type for the operation returned by # {::Google::Cloud::Spanner::Admin::Instance::V1::InstanceAdmin::Client#create_instance CreateInstance}. # @!attribute [rw] instance # @return [::Google::Cloud::Spanner::Admin::Instance::V1::Instance] # The instance being created. # @!attribute [rw] start_time # @return [::Google::Protobuf::Timestamp] # The time at which the # {::Google::Cloud::Spanner::Admin::Instance::V1::InstanceAdmin::Client#create_instance CreateInstance} # request was received. # @!attribute [rw] cancel_time # @return [::Google::Protobuf::Timestamp] # The time at which this operation was cancelled. If set, this operation is # in the process of undoing itself (which is guaranteed to succeed) and # cannot be cancelled again. # @!attribute [rw] end_time # @return [::Google::Protobuf::Timestamp] # The time at which this operation failed or was completed successfully. class CreateInstanceMetadata include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Metadata type for the operation returned by # {::Google::Cloud::Spanner::Admin::Instance::V1::InstanceAdmin::Client#update_instance UpdateInstance}. # @!attribute [rw] instance # @return [::Google::Cloud::Spanner::Admin::Instance::V1::Instance] # The desired end state of the update. # @!attribute [rw] start_time # @return [::Google::Protobuf::Timestamp] # The time at which # {::Google::Cloud::Spanner::Admin::Instance::V1::InstanceAdmin::Client#update_instance UpdateInstance} # request was received. # @!attribute [rw] cancel_time # @return [::Google::Protobuf::Timestamp] # The time at which this operation was cancelled. If set, this operation is # in the process of undoing itself (which is guaranteed to succeed) and # cannot be cancelled again. # @!attribute [rw] end_time # @return [::Google::Protobuf::Timestamp] # The time at which this operation failed or was completed successfully. class UpdateInstanceMetadata include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Metadata type for the operation returned by # {::Google::Cloud::Spanner::Admin::Instance::V1::InstanceAdmin::Client#create_instance_config CreateInstanceConfig}. # @!attribute [rw] instance_config # @return [::Google::Cloud::Spanner::Admin::Instance::V1::InstanceConfig] # The target instance config end state. # @!attribute [rw] progress # @return [::Google::Cloud::Spanner::Admin::Instance::V1::OperationProgress] # The progress of the # {::Google::Cloud::Spanner::Admin::Instance::V1::InstanceAdmin::Client#create_instance_config CreateInstanceConfig} # operation. # @!attribute [rw] cancel_time # @return [::Google::Protobuf::Timestamp] # The time at which this operation was cancelled. class CreateInstanceConfigMetadata include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end # Metadata type for the operation returned by # {::Google::Cloud::Spanner::Admin::Instance::V1::InstanceAdmin::Client#update_instance_config UpdateInstanceConfig}. # @!attribute [rw] instance_config # @return [::Google::Cloud::Spanner::Admin::Instance::V1::InstanceConfig] # The desired instance config after updating. # @!attribute [rw] progress # @return [::Google::Cloud::Spanner::Admin::Instance::V1::OperationProgress] # The progress of the # {::Google::Cloud::Spanner::Admin::Instance::V1::InstanceAdmin::Client#update_instance_config UpdateInstanceConfig} # operation. # @!attribute [rw] cancel_time # @return [::Google::Protobuf::Timestamp] # The time at which this operation was cancelled. class UpdateInstanceConfigMetadata include ::Google::Protobuf::MessageExts extend ::Google::Protobuf::MessageExts::ClassMethods end end end end end end end