google-cloud-redis 0.2.1 → 0.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,51 @@
1
+ {
2
+ "interfaces": {
3
+ "google.cloud.redis.v1.CloudRedis": {
4
+ "retry_codes": {
5
+ "idempotent": [
6
+ "DEADLINE_EXCEEDED",
7
+ "UNAVAILABLE"
8
+ ],
9
+ "non_idempotent": []
10
+ },
11
+ "retry_params": {
12
+ "default": {
13
+ "initial_retry_delay_millis": 100,
14
+ "retry_delay_multiplier": 1.3,
15
+ "max_retry_delay_millis": 60000,
16
+ "initial_rpc_timeout_millis": 20000,
17
+ "rpc_timeout_multiplier": 1.0,
18
+ "max_rpc_timeout_millis": 20000,
19
+ "total_timeout_millis": 600000
20
+ }
21
+ },
22
+ "methods": {
23
+ "ListInstances": {
24
+ "timeout_millis": 60000,
25
+ "retry_codes_name": "non_idempotent",
26
+ "retry_params_name": "default"
27
+ },
28
+ "GetInstance": {
29
+ "timeout_millis": 60000,
30
+ "retry_codes_name": "non_idempotent",
31
+ "retry_params_name": "default"
32
+ },
33
+ "CreateInstance": {
34
+ "timeout_millis": 60000,
35
+ "retry_codes_name": "non_idempotent",
36
+ "retry_params_name": "default"
37
+ },
38
+ "UpdateInstance": {
39
+ "timeout_millis": 60000,
40
+ "retry_codes_name": "non_idempotent",
41
+ "retry_params_name": "default"
42
+ },
43
+ "DeleteInstance": {
44
+ "timeout_millis": 60000,
45
+ "retry_codes_name": "non_idempotent",
46
+ "retry_params_name": "default"
47
+ }
48
+ }
49
+ }
50
+ }
51
+ }
@@ -0,0 +1,104 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # source: google/cloud/redis/v1/cloud_redis.proto
3
+
4
+
5
+ require 'google/protobuf'
6
+
7
+ require 'google/api/annotations_pb'
8
+ require 'google/longrunning/operations_pb'
9
+ require 'google/protobuf/field_mask_pb'
10
+ require 'google/protobuf/timestamp_pb'
11
+ Google::Protobuf::DescriptorPool.generated_pool.build do
12
+ add_message "google.cloud.redis.v1.Instance" do
13
+ optional :name, :string, 1
14
+ optional :display_name, :string, 2
15
+ map :labels, :string, :string, 3
16
+ optional :location_id, :string, 4
17
+ optional :alternative_location_id, :string, 5
18
+ optional :redis_version, :string, 7
19
+ optional :reserved_ip_range, :string, 9
20
+ optional :host, :string, 10
21
+ optional :port, :int32, 11
22
+ optional :current_location_id, :string, 12
23
+ optional :create_time, :message, 13, "google.protobuf.Timestamp"
24
+ optional :state, :enum, 14, "google.cloud.redis.v1.Instance.State"
25
+ optional :status_message, :string, 15
26
+ map :redis_configs, :string, :string, 16
27
+ optional :tier, :enum, 17, "google.cloud.redis.v1.Instance.Tier"
28
+ optional :memory_size_gb, :int32, 18
29
+ optional :authorized_network, :string, 20
30
+ end
31
+ add_enum "google.cloud.redis.v1.Instance.State" do
32
+ value :STATE_UNSPECIFIED, 0
33
+ value :CREATING, 1
34
+ value :READY, 2
35
+ value :UPDATING, 3
36
+ value :DELETING, 4
37
+ value :REPAIRING, 5
38
+ value :MAINTENANCE, 6
39
+ end
40
+ add_enum "google.cloud.redis.v1.Instance.Tier" do
41
+ value :TIER_UNSPECIFIED, 0
42
+ value :BASIC, 1
43
+ value :STANDARD_HA, 3
44
+ end
45
+ add_message "google.cloud.redis.v1.ListInstancesRequest" do
46
+ optional :parent, :string, 1
47
+ optional :page_size, :int32, 2
48
+ optional :page_token, :string, 3
49
+ end
50
+ add_message "google.cloud.redis.v1.ListInstancesResponse" do
51
+ repeated :instances, :message, 1, "google.cloud.redis.v1.Instance"
52
+ optional :next_page_token, :string, 2
53
+ end
54
+ add_message "google.cloud.redis.v1.GetInstanceRequest" do
55
+ optional :name, :string, 1
56
+ end
57
+ add_message "google.cloud.redis.v1.CreateInstanceRequest" do
58
+ optional :parent, :string, 1
59
+ optional :instance_id, :string, 2
60
+ optional :instance, :message, 3, "google.cloud.redis.v1.Instance"
61
+ end
62
+ add_message "google.cloud.redis.v1.UpdateInstanceRequest" do
63
+ optional :update_mask, :message, 1, "google.protobuf.FieldMask"
64
+ optional :instance, :message, 2, "google.cloud.redis.v1.Instance"
65
+ end
66
+ add_message "google.cloud.redis.v1.DeleteInstanceRequest" do
67
+ optional :name, :string, 1
68
+ end
69
+ add_message "google.cloud.redis.v1.OperationMetadata" do
70
+ optional :create_time, :message, 1, "google.protobuf.Timestamp"
71
+ optional :end_time, :message, 2, "google.protobuf.Timestamp"
72
+ optional :target, :string, 3
73
+ optional :verb, :string, 4
74
+ optional :status_detail, :string, 5
75
+ optional :cancel_requested, :bool, 6
76
+ optional :api_version, :string, 7
77
+ end
78
+ add_message "google.cloud.redis.v1.LocationMetadata" do
79
+ map :available_zones, :string, :message, 1, "google.cloud.redis.v1.ZoneMetadata"
80
+ end
81
+ add_message "google.cloud.redis.v1.ZoneMetadata" do
82
+ end
83
+ end
84
+
85
+ module Google
86
+ module Cloud
87
+ module Redis
88
+ module V1
89
+ Instance = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.redis.v1.Instance").msgclass
90
+ Instance::State = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.redis.v1.Instance.State").enummodule
91
+ Instance::Tier = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.redis.v1.Instance.Tier").enummodule
92
+ ListInstancesRequest = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.redis.v1.ListInstancesRequest").msgclass
93
+ ListInstancesResponse = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.redis.v1.ListInstancesResponse").msgclass
94
+ GetInstanceRequest = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.redis.v1.GetInstanceRequest").msgclass
95
+ CreateInstanceRequest = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.redis.v1.CreateInstanceRequest").msgclass
96
+ UpdateInstanceRequest = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.redis.v1.UpdateInstanceRequest").msgclass
97
+ DeleteInstanceRequest = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.redis.v1.DeleteInstanceRequest").msgclass
98
+ OperationMetadata = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.redis.v1.OperationMetadata").msgclass
99
+ LocationMetadata = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.redis.v1.LocationMetadata").msgclass
100
+ ZoneMetadata = Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.redis.v1.ZoneMetadata").msgclass
101
+ end
102
+ end
103
+ end
104
+ end
@@ -0,0 +1,91 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # Source: google/cloud/redis/v1/cloud_redis.proto for package 'google.cloud.redis.v1'
3
+ # Original file comments:
4
+ # Copyright 2018 Google LLC
5
+ #
6
+ # Licensed under the Apache License, Version 2.0 (the "License");
7
+ # you may not use this file except in compliance with the License.
8
+ # You may obtain a copy of the License at
9
+ #
10
+ # http://www.apache.org/licenses/LICENSE-2.0
11
+ #
12
+ # Unless required by applicable law or agreed to in writing, software
13
+ # distributed under the License is distributed on an "AS IS" BASIS,
14
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
+ # See the License for the specific language governing permissions and
16
+ # limitations under the License.
17
+ #
18
+
19
+
20
+ require 'grpc'
21
+ require 'google/cloud/redis/v1/cloud_redis_pb'
22
+
23
+ module Google
24
+ module Cloud
25
+ module Redis
26
+ module V1
27
+ module CloudRedis
28
+ # Configures and manages Cloud Memorystore for Redis instances
29
+ #
30
+ # Google Cloud Memorystore for Redis v1
31
+ #
32
+ # The `redis.googleapis.com` service implements the Google Cloud Memorystore
33
+ # for Redis API and defines the following resource model for managing Redis
34
+ # instances:
35
+ # * The service works with a collection of cloud projects, named: `/projects/*`
36
+ # * Each project has a collection of available locations, named: `/locations/*`
37
+ # * Each location has a collection of Redis instances, named: `/instances/*`
38
+ # * As such, Redis instances are resources of the form:
39
+ # `/projects/\\{project_id}/locations/\\{location_id}/instances/\\{instance_id}`
40
+ #
41
+ # Note that location_id must be refering to a GCP `region`; for example:
42
+ # * `projects/redpepper-1290/locations/us-central1/instances/my-redis`
43
+ class Service
44
+
45
+ include GRPC::GenericService
46
+
47
+ self.marshal_class_method = :encode
48
+ self.unmarshal_class_method = :decode
49
+ self.service_name = 'google.cloud.redis.v1.CloudRedis'
50
+
51
+ # Lists all Redis instances owned by a project in either the specified
52
+ # location (region) or all locations.
53
+ #
54
+ # The location should have the following format:
55
+ # * `projects/\\{project_id}/locations/\\{location_id}`
56
+ #
57
+ # If `location_id` is specified as `-` (wildcard), then all regions
58
+ # available to the project are queried, and the results are aggregated.
59
+ rpc :ListInstances, ListInstancesRequest, ListInstancesResponse
60
+ # Gets the details of a specific Redis instance.
61
+ rpc :GetInstance, GetInstanceRequest, Instance
62
+ # Creates a Redis instance based on the specified tier and memory size.
63
+ #
64
+ # By default, the instance is accessible from the project's
65
+ # [default network](/compute/docs/networks-and-firewalls#networks).
66
+ #
67
+ # The creation is executed asynchronously and callers may check the returned
68
+ # operation to track its progress. Once the operation is completed the Redis
69
+ # instance will be fully functional. Completed longrunning.Operation will
70
+ # contain the new instance object in the response field.
71
+ #
72
+ # The returned operation is automatically deleted after a few hours, so there
73
+ # is no need to call DeleteOperation.
74
+ rpc :CreateInstance, CreateInstanceRequest, Google::Longrunning::Operation
75
+ # Updates the metadata and configuration of a specific Redis instance.
76
+ #
77
+ # Completed longrunning.Operation will contain the new instance object
78
+ # in the response field. The returned operation is automatically deleted
79
+ # after a few hours, so there is no need to call DeleteOperation.
80
+ rpc :UpdateInstance, UpdateInstanceRequest, Google::Longrunning::Operation
81
+ # Deletes a specific Redis instance. Instance stops serving and data is
82
+ # deleted.
83
+ rpc :DeleteInstance, DeleteInstanceRequest, Google::Longrunning::Operation
84
+ end
85
+
86
+ Stub = Service.rpc_stub_class
87
+ end
88
+ end
89
+ end
90
+ end
91
+ end
@@ -0,0 +1,41 @@
1
+ # Copyright 2018 Google LLC
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # https://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+
16
+ require "googleauth"
17
+
18
+ module Google
19
+ module Cloud
20
+ module Redis
21
+ module V1
22
+ class Credentials < Google::Auth::Credentials
23
+ SCOPE = [
24
+ "https://www.googleapis.com/auth/cloud-platform"
25
+ ].freeze
26
+ PATH_ENV_VARS = %w(REDIS_CREDENTIALS
27
+ REDIS_KEYFILE
28
+ GOOGLE_CLOUD_CREDENTIALS
29
+ GOOGLE_CLOUD_KEYFILE
30
+ GCLOUD_KEYFILE)
31
+ JSON_ENV_VARS = %w(REDIS_CREDENTIALS_JSON
32
+ REDIS_KEYFILE_JSON
33
+ GOOGLE_CLOUD_CREDENTIALS_JSON
34
+ GOOGLE_CLOUD_KEYFILE_JSON
35
+ GCLOUD_KEYFILE_JSON)
36
+ DEFAULT_PATHS = ["~/.config/gcloud/application_default_credentials.json"]
37
+ end
38
+ end
39
+ end
40
+ end
41
+ end
@@ -0,0 +1,283 @@
1
+ # Copyright 2018 Google LLC
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # https://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+
16
+ module Google
17
+ module Cloud
18
+ module Redis
19
+ module V1
20
+ # A Google Cloud Redis instance.
21
+ # @!attribute [rw] name
22
+ # @return [String]
23
+ # Required. Unique name of the resource in this scope including project and
24
+ # location using the form:
25
+ # +projects/\\{project_id}/locations/\\{location_id}/instances/\\{instance_id}+
26
+ #
27
+ # Note: Redis instances are managed and addressed at regional level so
28
+ # location_id here refers to a GCP region; however, users may choose which
29
+ # specific zone (or collection of zones for cross-zone instances) an instance
30
+ # should be provisioned in. Refer to [location_id] and
31
+ # [alternative_location_id] fields for more details.
32
+ # @!attribute [rw] display_name
33
+ # @return [String]
34
+ # An arbitrary and optional user-provided name for the instance.
35
+ # @!attribute [rw] labels
36
+ # @return [Hash{String => String}]
37
+ # Resource labels to represent user provided metadata
38
+ # @!attribute [rw] location_id
39
+ # @return [String]
40
+ # Optional. The zone where the instance will be provisioned. If not provided,
41
+ # the service will choose a zone for the instance. For STANDARD_HA tier,
42
+ # instances will be created across two zones for protection against zonal
43
+ # failures. If [alternative_location_id] is also provided, it must be
44
+ # different from [location_id].
45
+ # @!attribute [rw] alternative_location_id
46
+ # @return [String]
47
+ # Optional. Only applicable to STANDARD_HA tier which protects the instance
48
+ # against zonal failures by provisioning it across two zones. If provided, it
49
+ # must be a different zone from the one provided in [location_id].
50
+ # @!attribute [rw] redis_version
51
+ # @return [String]
52
+ # Optional. The version of Redis software.
53
+ # If not provided, latest supported version will be used. Updating the
54
+ # version will perform an upgrade/downgrade to the new version. Currently,
55
+ # the supported values are +REDIS_3_2+ for Redis 3.2.
56
+ # @!attribute [rw] reserved_ip_range
57
+ # @return [String]
58
+ # Optional. The CIDR range of internal addresses that are reserved for this
59
+ # instance. If not provided, the service will choose an unused /29 block,
60
+ # for example, 10.0.0.0/29 or 192.168.0.0/29. Ranges must be unique
61
+ # and non-overlapping with existing subnets in an authorized network.
62
+ # @!attribute [rw] host
63
+ # @return [String]
64
+ # Output only. Hostname or IP address of the exposed Redis endpoint used by
65
+ # clients to connect to the service.
66
+ # @!attribute [rw] port
67
+ # @return [Integer]
68
+ # Output only. The port number of the exposed Redis endpoint.
69
+ # @!attribute [rw] current_location_id
70
+ # @return [String]
71
+ # Output only. The current zone where the Redis endpoint is placed. For Basic
72
+ # Tier instances, this will always be the same as the [location_id]
73
+ # provided by the user at creation time. For Standard Tier instances,
74
+ # this can be either [location_id] or [alternative_location_id] and can
75
+ # change after a failover event.
76
+ # @!attribute [rw] create_time
77
+ # @return [Google::Protobuf::Timestamp]
78
+ # Output only. The time the instance was created.
79
+ # @!attribute [rw] state
80
+ # @return [Google::Cloud::Redis::V1::Instance::State]
81
+ # Output only. The current state of this instance.
82
+ # @!attribute [rw] status_message
83
+ # @return [String]
84
+ # Output only. Additional information about the current status of this
85
+ # instance, if available.
86
+ # @!attribute [rw] redis_configs
87
+ # @return [Hash{String => String}]
88
+ # Optional. Redis configuration parameters, according to
89
+ # http://redis.io/topics/config. Currently, the only supported parameters
90
+ # are:
91
+ #
92
+ # * maxmemory-policy
93
+ # * notify-keyspace-events
94
+ # @!attribute [rw] tier
95
+ # @return [Google::Cloud::Redis::V1::Instance::Tier]
96
+ # Required. The service tier of the instance.
97
+ # @!attribute [rw] memory_size_gb
98
+ # @return [Integer]
99
+ # Required. Redis memory size in GiB.
100
+ # @!attribute [rw] authorized_network
101
+ # @return [String]
102
+ # Optional. The full name of the Google Compute Engine
103
+ # [network](https://cloud.google.com/compute/docs/networks-and-firewalls#networks) to which the
104
+ # instance is connected. If left unspecified, the +default+ network
105
+ # will be used.
106
+ class Instance
107
+ # Represents the different states of a Redis instance.
108
+ module State
109
+ # Not set.
110
+ STATE_UNSPECIFIED = 0
111
+
112
+ # Redis instance is being created.
113
+ CREATING = 1
114
+
115
+ # Redis instance has been created and is fully usable.
116
+ READY = 2
117
+
118
+ # Redis instance configuration is being updated. Certain kinds of updates
119
+ # may cause the instance to become unusable while the update is in
120
+ # progress.
121
+ UPDATING = 3
122
+
123
+ # Redis instance is being deleted.
124
+ DELETING = 4
125
+
126
+ # Redis instance is being repaired and may be unusable. Details can be
127
+ # found in the +status_message+ field.
128
+ REPAIRING = 5
129
+
130
+ # Maintenance is being performed on this Redis instance.
131
+ MAINTENANCE = 6
132
+ end
133
+
134
+ # Available service tiers to choose from
135
+ module Tier
136
+ # Not set.
137
+ TIER_UNSPECIFIED = 0
138
+
139
+ # BASIC tier: standalone instance
140
+ BASIC = 1
141
+
142
+ # STANDARD_HA tier: highly available primary/replica instances
143
+ STANDARD_HA = 3
144
+ end
145
+ end
146
+
147
+ # Request for {Google::Cloud::Redis::V1::CloudRedis::ListInstances ListInstances}.
148
+ # @!attribute [rw] parent
149
+ # @return [String]
150
+ # Required. The resource name of the instance location using the form:
151
+ # +projects/\\{project_id}/locations/\\{location_id}+
152
+ # where +location_id+ refers to a GCP region
153
+ # @!attribute [rw] page_size
154
+ # @return [Integer]
155
+ # The maximum number of items to return.
156
+ #
157
+ # If not specified, a default value of 1000 will be used by the service.
158
+ # Regardless of the page_size value, the response may include a partial list
159
+ # and a caller should only rely on response's
160
+ # {CloudRedis::ListInstancesResponse#next_page_token next_page_token}
161
+ # to determine if there are more instances left to be queried.
162
+ # @!attribute [rw] page_token
163
+ # @return [String]
164
+ # The next_page_token value returned from a previous List request,
165
+ # if any.
166
+ class ListInstancesRequest; end
167
+
168
+ # Response for {Google::Cloud::Redis::V1::CloudRedis::ListInstances ListInstances}.
169
+ # @!attribute [rw] instances
170
+ # @return [Array<Google::Cloud::Redis::V1::Instance>]
171
+ # A list of Redis instances in the project in the specified location,
172
+ # or across all locations.
173
+ #
174
+ # If the +location_id+ in the parent field of the request is "-", all regions
175
+ # available to the project are queried, and the results aggregated.
176
+ # If in such an aggregated query a location is unavailable, a dummy Redis
177
+ # entry is included in the response with the "name" field set to a value of
178
+ # the form projects/\\{project_id}/locations/\\{location_id}/instances/- and the
179
+ # "status" field set to ERROR and "status_message" field set to "location not
180
+ # available for ListInstances".
181
+ # @!attribute [rw] next_page_token
182
+ # @return [String]
183
+ # Token to retrieve the next page of results, or empty if there are no more
184
+ # results in the list.
185
+ class ListInstancesResponse; end
186
+
187
+ # Request for {Google::Cloud::Redis::V1::CloudRedis::GetInstance GetInstance}.
188
+ # @!attribute [rw] name
189
+ # @return [String]
190
+ # Required. Redis instance resource name using the form:
191
+ # +projects/\\{project_id}/locations/\\{location_id}/instances/\\{instance_id}+
192
+ # where +location_id+ refers to a GCP region
193
+ class GetInstanceRequest; end
194
+
195
+ # Request for {Google::Cloud::Redis::V1::CloudRedis::CreateInstance CreateInstance}.
196
+ # @!attribute [rw] parent
197
+ # @return [String]
198
+ # Required. The resource name of the instance location using the form:
199
+ # +projects/\\{project_id}/locations/\\{location_id}+
200
+ # where +location_id+ refers to a GCP region
201
+ # @!attribute [rw] instance_id
202
+ # @return [String]
203
+ # Required. The logical name of the Redis instance in the customer project
204
+ # with the following restrictions:
205
+ #
206
+ # * Must contain only lowercase letters, numbers, and hyphens.
207
+ # * Must start with a letter.
208
+ # * Must be between 1-40 characters.
209
+ # * Must end with a number or a letter.
210
+ # * Must be unique within the customer project / location
211
+ # @!attribute [rw] instance
212
+ # @return [Google::Cloud::Redis::V1::Instance]
213
+ # Required. A Redis [Instance] resource
214
+ class CreateInstanceRequest; end
215
+
216
+ # Request for {Google::Cloud::Redis::V1::CloudRedis::UpdateInstance UpdateInstance}.
217
+ # @!attribute [rw] update_mask
218
+ # @return [Google::Protobuf::FieldMask]
219
+ # Required. Mask of fields to update. At least one path must be supplied in
220
+ # this field. The elements of the repeated paths field may only include these
221
+ # fields from {CloudRedis::Instance Instance}:
222
+ #
223
+ # * +displayName+
224
+ # * +labels+
225
+ # * +memorySizeGb+
226
+ # * +redisConfig+
227
+ # @!attribute [rw] instance
228
+ # @return [Google::Cloud::Redis::V1::Instance]
229
+ # Required. Update description.
230
+ # Only fields specified in update_mask are updated.
231
+ class UpdateInstanceRequest; end
232
+
233
+ # Request for {Google::Cloud::Redis::V1::CloudRedis::DeleteInstance DeleteInstance}.
234
+ # @!attribute [rw] name
235
+ # @return [String]
236
+ # Required. Redis instance resource name using the form:
237
+ # +projects/\\{project_id}/locations/\\{location_id}/instances/\\{instance_id}+
238
+ # where +location_id+ refers to a GCP region
239
+ class DeleteInstanceRequest; end
240
+
241
+ # Represents the v1 metadata of the long-running operation.
242
+ # @!attribute [rw] create_time
243
+ # @return [Google::Protobuf::Timestamp]
244
+ # Creation timestamp.
245
+ # @!attribute [rw] end_time
246
+ # @return [Google::Protobuf::Timestamp]
247
+ # End timestamp.
248
+ # @!attribute [rw] target
249
+ # @return [String]
250
+ # Operation target.
251
+ # @!attribute [rw] verb
252
+ # @return [String]
253
+ # Operation verb.
254
+ # @!attribute [rw] status_detail
255
+ # @return [String]
256
+ # Operation status details.
257
+ # @!attribute [rw] cancel_requested
258
+ # @return [true, false]
259
+ # Specifies if cancellation was requested for the operaiton.
260
+ # @!attribute [rw] api_version
261
+ # @return [String]
262
+ # API version.
263
+ class OperationMetadata; end
264
+
265
+ # This location metadata represents additional configuration options for a
266
+ # given location where a Redis instance may be created. All fields are output
267
+ # only. It is returned as content of the
268
+ # +google.cloud.location.Location.metadata+ field.
269
+ # @!attribute [rw] available_zones
270
+ # @return [Hash{String => Google::Cloud::Redis::V1::ZoneMetadata}]
271
+ # Output only. The set of available zones in the location. The map is keyed
272
+ # by the lowercase ID of each zone, as defined by GCE. These keys can be
273
+ # specified in +location_id+ or +alternative_location_id+ fields when
274
+ # creating a Redis instance.
275
+ class LocationMetadata; end
276
+
277
+ # Defines specific information for a particular zone. Currently empty and
278
+ # reserved for future use only.
279
+ class ZoneMetadata; end
280
+ end
281
+ end
282
+ end
283
+ end