google-cloud-redis-v1 0.5.3 → 0.7.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -21,7 +21,19 @@ module Google
21
21
  module Cloud
22
22
  module Redis
23
23
  module V1
24
- # A Google Cloud Redis instance.
24
+ # Node specific properties.
25
+ # @!attribute [r] id
26
+ # @return [::String]
27
+ # Output only. Node identifying string. e.g. 'node-0', 'node-1'
28
+ # @!attribute [r] zone
29
+ # @return [::String]
30
+ # Output only. Location of the node.
31
+ class NodeInfo
32
+ include ::Google::Protobuf::MessageExts
33
+ extend ::Google::Protobuf::MessageExts::ClassMethods
34
+ end
35
+
36
+ # A Memorystore for Redis instance.
25
37
  # @!attribute [rw] name
26
38
  # @return [::String]
27
39
  # Required. Unique name of the resource in this scope including project and
@@ -42,15 +54,17 @@ module Google
42
54
  # @!attribute [rw] location_id
43
55
  # @return [::String]
44
56
  # Optional. The zone where the instance will be provisioned. If not provided,
45
- # the service will choose a zone for the instance. For STANDARD_HA tier,
46
- # instances will be created across two zones for protection against zonal
47
- # failures. If {::Google::Cloud::Redis::V1::Instance#alternative_location_id alternative_location_id} is also provided, it must be
48
- # different from {::Google::Cloud::Redis::V1::Instance#location_id location_id}.
57
+ # the service will choose a zone from the specified region for the instance.
58
+ # For standard tier, additional nodes will be added across multiple zones for
59
+ # protection against zonal failures. If specified, at least one node will be
60
+ # provisioned in this zone.
49
61
  # @!attribute [rw] alternative_location_id
50
62
  # @return [::String]
51
- # Optional. Only applicable to STANDARD_HA tier which protects the instance
52
- # against zonal failures by provisioning it across two zones. If provided, it
53
- # must be a different zone from the one provided in {::Google::Cloud::Redis::V1::Instance#location_id location_id}.
63
+ # Optional. If specified, at least one node will be provisioned in this zone
64
+ # in addition to the zone specified in location_id. Only applicable to
65
+ # standard tier. If provided, it must be a different zone from the one
66
+ # provided in [location_id]. Additional nodes beyond the first 2 will be
67
+ # placed in zones selected by the service.
54
68
  # @!attribute [rw] redis_version
55
69
  # @return [::String]
56
70
  # Optional. The version of Redis software.
@@ -60,12 +74,24 @@ module Google
60
74
  # * `REDIS_3_2` for Redis 3.2 compatibility
61
75
  # * `REDIS_4_0` for Redis 4.0 compatibility (default)
62
76
  # * `REDIS_5_0` for Redis 5.0 compatibility
77
+ # * `REDIS_6_X` for Redis 6.x compatibility
63
78
  # @!attribute [rw] reserved_ip_range
64
79
  # @return [::String]
65
- # Optional. The CIDR range of internal addresses that are reserved for this
66
- # instance. If not provided, the service will choose an unused /29 block,
67
- # for example, 10.0.0.0/29 or 192.168.0.0/29. Ranges must be unique
68
- # and non-overlapping with existing subnets in an authorized network.
80
+ # Optional. For DIRECT_PEERING mode, the CIDR range of internal addresses
81
+ # that are reserved for this instance. Range must
82
+ # be unique and non-overlapping with existing subnets in an authorized
83
+ # network. For PRIVATE_SERVICE_ACCESS mode, the name of one allocated IP
84
+ # address ranges associated with this private service access connection.
85
+ # If not provided, the service will choose an unused /29 block, for
86
+ # example, 10.0.0.0/29 or 192.168.0.0/29. For READ_REPLICAS_ENABLED
87
+ # the default block size is /28.
88
+ # @!attribute [rw] secondary_ip_range
89
+ # @return [::String]
90
+ # Optional. Additional IP range for node placement. Required when enabling read
91
+ # replicas on an existing instance. For DIRECT_PEERING mode value must be a
92
+ # CIDR range of size /28, or "auto". For PRIVATE_SERVICE_ACCESS mode value
93
+ # must be the name of an allocated address range associated with the private
94
+ # service access connection, or "auto".
69
95
  # @!attribute [r] host
70
96
  # @return [::String]
71
97
  # Output only. Hostname or IP address of the exposed Redis endpoint used by
@@ -75,11 +101,9 @@ module Google
75
101
  # Output only. The port number of the exposed Redis endpoint.
76
102
  # @!attribute [r] current_location_id
77
103
  # @return [::String]
78
- # Output only. The current zone where the Redis endpoint is placed. For Basic
79
- # Tier instances, this will always be the same as the {::Google::Cloud::Redis::V1::Instance#location_id location_id}
80
- # provided by the user at creation time. For Standard Tier instances,
81
- # this can be either {::Google::Cloud::Redis::V1::Instance#location_id location_id} or {::Google::Cloud::Redis::V1::Instance#alternative_location_id alternative_location_id} and can
82
- # change after a failover event.
104
+ # Output only. The current zone where the Redis primary node is located. In
105
+ # basic tier, this will always be the same as [location_id]. In
106
+ # standard tier, this can be the zone of any node in the instance.
83
107
  # @!attribute [r] create_time
84
108
  # @return [::Google::Protobuf::Timestamp]
85
109
  # Output only. The time the instance was created.
@@ -135,6 +159,49 @@ module Google
135
159
  # @return [::Google::Cloud::Redis::V1::Instance::ConnectMode]
136
160
  # Optional. The network connect mode of the Redis instance.
137
161
  # If not provided, the connect mode defaults to DIRECT_PEERING.
162
+ # @!attribute [rw] auth_enabled
163
+ # @return [::Boolean]
164
+ # Optional. Indicates whether OSS Redis AUTH is enabled for the instance. If set to
165
+ # "true" AUTH is enabled on the instance. Default value is "false" meaning
166
+ # AUTH is disabled.
167
+ # @!attribute [r] server_ca_certs
168
+ # @return [::Array<::Google::Cloud::Redis::V1::TlsCertificate>]
169
+ # Output only. List of server CA certificates for the instance.
170
+ # @!attribute [rw] transit_encryption_mode
171
+ # @return [::Google::Cloud::Redis::V1::Instance::TransitEncryptionMode]
172
+ # Optional. The TLS mode of the Redis instance.
173
+ # If not provided, TLS is disabled for the instance.
174
+ # @!attribute [rw] maintenance_policy
175
+ # @return [::Google::Cloud::Redis::V1::MaintenancePolicy]
176
+ # Optional. The maintenance policy for the instance. If not provided,
177
+ # maintenance events can be performed at any time.
178
+ # @!attribute [r] maintenance_schedule
179
+ # @return [::Google::Cloud::Redis::V1::MaintenanceSchedule]
180
+ # Output only. Date and time of upcoming maintenance events which have been
181
+ # scheduled.
182
+ # @!attribute [rw] replica_count
183
+ # @return [::Integer]
184
+ # Optional. The number of replica nodes. The valid range for the Standard Tier with
185
+ # read replicas enabled is [1-5] and defaults to 2. If read replicas are not
186
+ # enabled for a Standard Tier instance, the only valid value is 1 and the
187
+ # default is 1. The valid value for basic tier is 0 and the default is also
188
+ # 0.
189
+ # @!attribute [r] nodes
190
+ # @return [::Array<::Google::Cloud::Redis::V1::NodeInfo>]
191
+ # Output only. Info per node.
192
+ # @!attribute [r] read_endpoint
193
+ # @return [::String]
194
+ # Output only. Hostname or IP address of the exposed readonly Redis
195
+ # endpoint. Standard tier only. Targets all healthy replica nodes in
196
+ # instance. Replication is asynchronous and replica nodes will exhibit some
197
+ # lag behind the primary. Write requests must target 'host'.
198
+ # @!attribute [r] read_endpoint_port
199
+ # @return [::Integer]
200
+ # Output only. The port number of the exposed readonly redis
201
+ # endpoint. Standard tier only. Write requests should target 'port'.
202
+ # @!attribute [rw] read_replicas_mode
203
+ # @return [::Google::Cloud::Redis::V1::Instance::ReadReplicasMode]
204
+ # Optional. Read replicas mode for the instance. Defaults to READ_REPLICAS_DISABLED.
138
205
  class Instance
139
206
  include ::Google::Protobuf::MessageExts
140
207
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -214,6 +281,125 @@ module Google
214
281
  # Google Cloud services, including Memorystore.
215
282
  PRIVATE_SERVICE_ACCESS = 2
216
283
  end
284
+
285
+ # Available TLS modes.
286
+ module TransitEncryptionMode
287
+ # Not set.
288
+ TRANSIT_ENCRYPTION_MODE_UNSPECIFIED = 0
289
+
290
+ # Client to Server traffic encryption enabled with server authentication.
291
+ SERVER_AUTHENTICATION = 1
292
+
293
+ # TLS is disabled for the instance.
294
+ DISABLED = 2
295
+ end
296
+
297
+ # Read replicas mode.
298
+ module ReadReplicasMode
299
+ # If not set, Memorystore Redis backend will default to
300
+ # READ_REPLICAS_DISABLED.
301
+ READ_REPLICAS_MODE_UNSPECIFIED = 0
302
+
303
+ # If disabled, read endpoint will not be provided and the instance cannot
304
+ # scale up or down the number of replicas.
305
+ READ_REPLICAS_DISABLED = 1
306
+
307
+ # If enabled, read endpoint will be provided and the instance can scale
308
+ # up and down the number of replicas. Not valid for basic tier.
309
+ READ_REPLICAS_ENABLED = 2
310
+ end
311
+ end
312
+
313
+ # Request for {::Google::Cloud::Redis::V1::CloudRedis::Client#reschedule_maintenance RescheduleMaintenance}.
314
+ # @!attribute [rw] name
315
+ # @return [::String]
316
+ # Required. Redis instance resource name using the form:
317
+ # `projects/{project_id}/locations/{location_id}/instances/{instance_id}`
318
+ # where `location_id` refers to a GCP region.
319
+ # @!attribute [rw] reschedule_type
320
+ # @return [::Google::Cloud::Redis::V1::RescheduleMaintenanceRequest::RescheduleType]
321
+ # Required. If reschedule type is SPECIFIC_TIME, must set up schedule_time as well.
322
+ # @!attribute [rw] schedule_time
323
+ # @return [::Google::Protobuf::Timestamp]
324
+ # Optional. Timestamp when the maintenance shall be rescheduled to if
325
+ # reschedule_type=SPECIFIC_TIME, in RFC 3339 format, for
326
+ # example `2012-11-15T16:19:00.094Z`.
327
+ class RescheduleMaintenanceRequest
328
+ include ::Google::Protobuf::MessageExts
329
+ extend ::Google::Protobuf::MessageExts::ClassMethods
330
+
331
+ # Reschedule options.
332
+ module RescheduleType
333
+ # Not set.
334
+ RESCHEDULE_TYPE_UNSPECIFIED = 0
335
+
336
+ # If the user wants to schedule the maintenance to happen now.
337
+ IMMEDIATE = 1
338
+
339
+ # If the user wants to use the existing maintenance policy to find the
340
+ # next available window.
341
+ NEXT_AVAILABLE_WINDOW = 2
342
+
343
+ # If the user wants to reschedule the maintenance to a specific time.
344
+ SPECIFIC_TIME = 3
345
+ end
346
+ end
347
+
348
+ # Maintenance policy for an instance.
349
+ # @!attribute [r] create_time
350
+ # @return [::Google::Protobuf::Timestamp]
351
+ # Output only. The time when the policy was created.
352
+ # @!attribute [r] update_time
353
+ # @return [::Google::Protobuf::Timestamp]
354
+ # Output only. The time when the policy was last updated.
355
+ # @!attribute [rw] description
356
+ # @return [::String]
357
+ # Optional. Description of what this policy is for. Create/Update methods
358
+ # return INVALID_ARGUMENT if the length is greater than 512.
359
+ # @!attribute [rw] weekly_maintenance_window
360
+ # @return [::Array<::Google::Cloud::Redis::V1::WeeklyMaintenanceWindow>]
361
+ # Optional. Maintenance window that is applied to resources covered by this
362
+ # policy. Minimum 1. For the current version, the maximum number of
363
+ # weekly_window is expected to be one.
364
+ class MaintenancePolicy
365
+ include ::Google::Protobuf::MessageExts
366
+ extend ::Google::Protobuf::MessageExts::ClassMethods
367
+ end
368
+
369
+ # Time window in which disruptive maintenance updates occur. Non-disruptive
370
+ # updates can occur inside or outside this window.
371
+ # @!attribute [rw] day
372
+ # @return [::Google::Type::DayOfWeek]
373
+ # Required. The day of week that maintenance updates occur.
374
+ # @!attribute [rw] start_time
375
+ # @return [::Google::Type::TimeOfDay]
376
+ # Required. Start time of the window in UTC time.
377
+ # @!attribute [r] duration
378
+ # @return [::Google::Protobuf::Duration]
379
+ # Output only. Duration of the maintenance window. The current window is fixed at 1 hour.
380
+ class WeeklyMaintenanceWindow
381
+ include ::Google::Protobuf::MessageExts
382
+ extend ::Google::Protobuf::MessageExts::ClassMethods
383
+ end
384
+
385
+ # Upcoming maintenance schedule. If no maintenance is scheduled, fields are not
386
+ # populated.
387
+ # @!attribute [r] start_time
388
+ # @return [::Google::Protobuf::Timestamp]
389
+ # Output only. The start time of any upcoming scheduled maintenance for this instance.
390
+ # @!attribute [r] end_time
391
+ # @return [::Google::Protobuf::Timestamp]
392
+ # Output only. The end time of any upcoming scheduled maintenance for this instance.
393
+ # @!attribute [rw] can_reschedule
394
+ # @return [::Boolean]
395
+ # If the scheduled maintenance can be rescheduled, default is true.
396
+ # @!attribute [r] schedule_deadline_time
397
+ # @return [::Google::Protobuf::Timestamp]
398
+ # Output only. The deadline that the maintenance schedule start time can not go beyond,
399
+ # including reschedule.
400
+ class MaintenanceSchedule
401
+ include ::Google::Protobuf::MessageExts
402
+ extend ::Google::Protobuf::MessageExts::ClassMethods
217
403
  end
218
404
 
219
405
  # Request for {::Google::Cloud::Redis::V1::CloudRedis::Client#list_instances ListInstances}.
@@ -248,11 +434,12 @@ module Google
248
434
  #
249
435
  # If the `location_id` in the parent field of the request is "-", all regions
250
436
  # available to the project are queried, and the results aggregated.
251
- # If in such an aggregated query a location is unavailable, a dummy Redis
252
- # entry is included in the response with the `name` field set to a value of
253
- # the form `projects/{project_id}/locations/{location_id}/instances/`- and
254
- # the `status` field set to ERROR and `status_message` field set to "location
255
- # not available for ListInstances".
437
+ # If in such an aggregated query a location is unavailable, a placeholder
438
+ # Redis entry is included in the response with the `name` field set to a
439
+ # value of the form
440
+ # `projects/{project_id}/locations/{location_id}/instances/`- and the
441
+ # `status` field set to ERROR and `status_message` field set to "location not
442
+ # available for ListInstances".
256
443
  # @!attribute [rw] next_page_token
257
444
  # @return [::String]
258
445
  # Token to retrieve the next page of results, or empty if there are no more
@@ -276,6 +463,26 @@ module Google
276
463
  extend ::Google::Protobuf::MessageExts::ClassMethods
277
464
  end
278
465
 
466
+ # Request for {::Google::Cloud::Redis::V1::CloudRedis::Client#get_instance_auth_string GetInstanceAuthString}.
467
+ # @!attribute [rw] name
468
+ # @return [::String]
469
+ # Required. Redis instance resource name using the form:
470
+ # `projects/{project_id}/locations/{location_id}/instances/{instance_id}`
471
+ # where `location_id` refers to a GCP region.
472
+ class GetInstanceAuthStringRequest
473
+ include ::Google::Protobuf::MessageExts
474
+ extend ::Google::Protobuf::MessageExts::ClassMethods
475
+ end
476
+
477
+ # Instance AUTH string details.
478
+ # @!attribute [rw] auth_string
479
+ # @return [::String]
480
+ # AUTH string set on the instance.
481
+ class InstanceAuthString
482
+ include ::Google::Protobuf::MessageExts
483
+ extend ::Google::Protobuf::MessageExts::ClassMethods
484
+ end
485
+
279
486
  # Request for {::Google::Cloud::Redis::V1::CloudRedis::Client#create_instance CreateInstance}.
280
487
  # @!attribute [rw] parent
281
488
  # @return [::String]
@@ -311,6 +518,7 @@ module Google
311
518
  # * `labels`
312
519
  # * `memorySizeGb`
313
520
  # * `redisConfig`
521
+ # * `replica_count`
314
522
  # @!attribute [rw] instance
315
523
  # @return [::Google::Cloud::Redis::V1::Instance]
316
524
  # Required. Update description.
@@ -432,7 +640,7 @@ module Google
432
640
 
433
641
  # Instance failover will be protected with data loss control. More
434
642
  # specifically, the failover will only be performed if the current
435
- # replication offset diff between master and replica is under a certain
643
+ # replication offset diff between primary and replica is under a certain
436
644
  # threshold.
437
645
  LIMITED_DATA_LOSS = 1
438
646
 
@@ -498,6 +706,31 @@ module Google
498
706
  include ::Google::Protobuf::MessageExts
499
707
  extend ::Google::Protobuf::MessageExts::ClassMethods
500
708
  end
709
+
710
+ # TlsCertificate Resource
711
+ # @!attribute [rw] serial_number
712
+ # @return [::String]
713
+ # Serial number, as extracted from the certificate.
714
+ # @!attribute [rw] cert
715
+ # @return [::String]
716
+ # PEM representation.
717
+ # @!attribute [r] create_time
718
+ # @return [::Google::Protobuf::Timestamp]
719
+ # Output only. The time when the certificate was created in [RFC
720
+ # 3339](https://tools.ietf.org/html/rfc3339) format, for example
721
+ # `2020-05-18T00:00:00.094Z`.
722
+ # @!attribute [r] expire_time
723
+ # @return [::Google::Protobuf::Timestamp]
724
+ # Output only. The time when the certificate expires in [RFC
725
+ # 3339](https://tools.ietf.org/html/rfc3339) format, for example
726
+ # `2020-05-18T00:00:00.094Z`.
727
+ # @!attribute [rw] sha1_fingerprint
728
+ # @return [::String]
729
+ # Sha1 Fingerprint of the certificate.
730
+ class TlsCertificate
731
+ include ::Google::Protobuf::MessageExts
732
+ extend ::Google::Protobuf::MessageExts::ClassMethods
733
+ end
501
734
  end
502
735
  end
503
736
  end
@@ -0,0 +1,49 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2022 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Type
22
+ # Represents a day of the week.
23
+ module DayOfWeek
24
+ # The day of the week is unspecified.
25
+ DAY_OF_WEEK_UNSPECIFIED = 0
26
+
27
+ # Monday
28
+ MONDAY = 1
29
+
30
+ # Tuesday
31
+ TUESDAY = 2
32
+
33
+ # Wednesday
34
+ WEDNESDAY = 3
35
+
36
+ # Thursday
37
+ THURSDAY = 4
38
+
39
+ # Friday
40
+ FRIDAY = 5
41
+
42
+ # Saturday
43
+ SATURDAY = 6
44
+
45
+ # Sunday
46
+ SUNDAY = 7
47
+ end
48
+ end
49
+ end
@@ -0,0 +1,45 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2022 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Type
22
+ # Represents a time of day. The date and time zone are either not significant
23
+ # or are specified elsewhere. An API may choose to allow leap seconds. Related
24
+ # types are [google.type.Date][google.type.Date] and
25
+ # `google.protobuf.Timestamp`.
26
+ # @!attribute [rw] hours
27
+ # @return [::Integer]
28
+ # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
29
+ # to allow the value "24:00:00" for scenarios like business closing time.
30
+ # @!attribute [rw] minutes
31
+ # @return [::Integer]
32
+ # Minutes of hour of day. Must be from 0 to 59.
33
+ # @!attribute [rw] seconds
34
+ # @return [::Integer]
35
+ # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
36
+ # allow the value 60 if it allows leap-seconds.
37
+ # @!attribute [rw] nanos
38
+ # @return [::Integer]
39
+ # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
40
+ class TimeOfDay
41
+ include ::Google::Protobuf::MessageExts
42
+ extend ::Google::Protobuf::MessageExts::ClassMethods
43
+ end
44
+ end
45
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: google-cloud-redis-v1
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.3
4
+ version: 0.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Google LLC
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-08-11 00:00:00.000000000 Z
11
+ date: 2022-03-30 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: gapic-common
@@ -190,6 +190,8 @@ files:
190
190
  - proto_docs/google/protobuf/field_mask.rb
191
191
  - proto_docs/google/protobuf/timestamp.rb
192
192
  - proto_docs/google/rpc/status.rb
193
+ - proto_docs/google/type/dayofweek.rb
194
+ - proto_docs/google/type/timeofday.rb
193
195
  homepage: https://github.com/googleapis/google-cloud-ruby
194
196
  licenses:
195
197
  - Apache-2.0
@@ -209,7 +211,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
209
211
  - !ruby/object:Gem::Version
210
212
  version: '0'
211
213
  requirements: []
212
- rubygems_version: 3.2.17
214
+ rubygems_version: 3.3.5
213
215
  signing_key:
214
216
  specification_version: 4
215
217
  summary: API Client library for the Google Cloud Memorystore for Redis V1 API