google-cloud-redis-v1beta1 0.4.3 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -21,6 +21,18 @@ module Google
21
21
  module Cloud
22
22
  module Redis
23
23
  module V1beta1
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
+
24
36
  # A Google Cloud Redis instance.
25
37
  # @!attribute [rw] name
26
38
  # @return [::String]
@@ -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::V1beta1::Instance#alternative_location_id alternative_location_id} is also provided, it must be
48
- # different from {::Google::Cloud::Redis::V1beta1::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::V1beta1::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,26 +74,29 @@ 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.
69
88
  # @!attribute [r] host
70
89
  # @return [::String]
71
90
  # Output only. Hostname or IP address of the exposed Redis endpoint used by
72
- # clients to connect to the service.
91
+ # clients to connect to the service.
73
92
  # @!attribute [r] port
74
93
  # @return [::Integer]
75
94
  # Output only. The port number of the exposed Redis endpoint.
76
95
  # @!attribute [r] current_location_id
77
96
  # @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::V1beta1::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::V1beta1::Instance#location_id location_id} or {::Google::Cloud::Redis::V1beta1::Instance#alternative_location_id alternative_location_id} and can
82
- # change after a failover event.
97
+ # Output only. The current zone where the Redis primary node is located. In
98
+ # basic tier, this will always be the same as [location_id]. In
99
+ # standard tier, this can be the zone of any node in the instance.
83
100
  # @!attribute [r] create_time
84
101
  # @return [::Google::Protobuf::Timestamp]
85
102
  # Output only. The time the instance was created.
@@ -133,9 +150,52 @@ module Google
133
150
  # operation.
134
151
  # @!attribute [rw] connect_mode
135
152
  # @return [::Google::Cloud::Redis::V1beta1::Instance::ConnectMode]
136
- # Optional. The connect mode of Redis instance.
137
- # If not provided, default one will be used.
138
- # Current default: DIRECT_PEERING.
153
+ # Optional. The network connect mode of the Redis instance.
154
+ # If not provided, the connect mode defaults to DIRECT_PEERING.
155
+ # @!attribute [rw] auth_enabled
156
+ # @return [::Boolean]
157
+ # Optional. Indicates whether OSS Redis AUTH is enabled for the instance. If set to
158
+ # "true" AUTH is enabled on the instance. Default value is "false" meaning
159
+ # AUTH is disabled.
160
+ # @!attribute [r] server_ca_certs
161
+ # @return [::Array<::Google::Cloud::Redis::V1beta1::TlsCertificate>]
162
+ # Output only. List of server CA certificates for the instance.
163
+ # @!attribute [rw] transit_encryption_mode
164
+ # @return [::Google::Cloud::Redis::V1beta1::Instance::TransitEncryptionMode]
165
+ # Optional. The TLS mode of the Redis instance.
166
+ # If not provided, TLS is disabled for the instance.
167
+ # @!attribute [rw] maintenance_policy
168
+ # @return [::Google::Cloud::Redis::V1beta1::MaintenancePolicy]
169
+ # Optional. The maintenance policy for the instance. If not provided,
170
+ # maintenance events can be performed at any time.
171
+ # @!attribute [r] maintenance_schedule
172
+ # @return [::Google::Cloud::Redis::V1beta1::MaintenanceSchedule]
173
+ # Output only. Date and time of upcoming maintenance events which have been
174
+ # scheduled.
175
+ # @!attribute [rw] replica_count
176
+ # @return [::Integer]
177
+ # Optional. The number of replica nodes. The valid range for the Standard Tier with
178
+ # read replicas enabled is [1-5] and defaults to 2. If read replicas are not
179
+ # enabled for a Standard Tier instance, the only valid value is 1 and the
180
+ # default is 1. The valid value for basic tier is 0 and the default is also
181
+ # 0.
182
+ # @!attribute [r] nodes
183
+ # @return [::Array<::Google::Cloud::Redis::V1beta1::NodeInfo>]
184
+ # Output only. Info per node.
185
+ # @!attribute [r] read_endpoint
186
+ # @return [::String]
187
+ # Output only. Hostname or IP address of the exposed readonly Redis
188
+ # endpoint. Standard tier only. Targets all healthy replica nodes in
189
+ # instance. Replication is asynchronous and replica nodes will exhibit some
190
+ # lag behind the primary. Write requests must target 'host'.
191
+ # @!attribute [r] read_endpoint_port
192
+ # @return [::Integer]
193
+ # Output only. The port number of the exposed readonly redis
194
+ # endpoint. Standard tier only. Write requests should target 'port'.
195
+ # @!attribute [rw] read_replicas_mode
196
+ # @return [::Google::Cloud::Redis::V1beta1::Instance::ReadReplicasMode]
197
+ # Optional. Read replica mode. Can only be specified when trying to create the
198
+ # instance.
139
199
  class Instance
140
200
  include ::Google::Protobuf::MessageExts
141
201
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -207,13 +267,133 @@ module Google
207
267
  # Not set.
208
268
  CONNECT_MODE_UNSPECIFIED = 0
209
269
 
210
- # Connect via directly peering with memorystore redis hosted service.
270
+ # Connect via direct peering to the Memorystore for Redis hosted service.
211
271
  DIRECT_PEERING = 1
212
272
 
213
- # Connect with google via private service access and share connection
214
- # across google managed services.
273
+ # Connect your Memorystore for Redis instance using Private Service
274
+ # Access. Private services access provides an IP address range for multiple
275
+ # Google Cloud services, including Memorystore.
215
276
  PRIVATE_SERVICE_ACCESS = 2
216
277
  end
278
+
279
+ # Available TLS modes.
280
+ module TransitEncryptionMode
281
+ # Not set.
282
+ TRANSIT_ENCRYPTION_MODE_UNSPECIFIED = 0
283
+
284
+ # Client to Server traffic encryption enabled with server authentication.
285
+ SERVER_AUTHENTICATION = 1
286
+
287
+ # TLS is disabled for the instance.
288
+ DISABLED = 2
289
+ end
290
+
291
+ # Read replicas mode.
292
+ module ReadReplicasMode
293
+ # If not set, Memorystore Redis backend will default to
294
+ # READ_REPLICAS_DISABLED.
295
+ READ_REPLICAS_MODE_UNSPECIFIED = 0
296
+
297
+ # If disabled, read endpoint will not be provided and the instance cannot
298
+ # scale up or down the number of replicas.
299
+ READ_REPLICAS_DISABLED = 1
300
+
301
+ # If enabled, read endpoint will be provided and the instance can scale
302
+ # up and down the number of replicas. Not valid for basic tier.
303
+ READ_REPLICAS_ENABLED = 2
304
+ end
305
+ end
306
+
307
+ # Request for {::Google::Cloud::Redis::V1beta1::CloudRedis::Client#reschedule_maintenance RescheduleMaintenance}.
308
+ # @!attribute [rw] name
309
+ # @return [::String]
310
+ # Required. Redis instance resource name using the form:
311
+ # `projects/{project_id}/locations/{location_id}/instances/{instance_id}`
312
+ # where `location_id` refers to a GCP region.
313
+ # @!attribute [rw] reschedule_type
314
+ # @return [::Google::Cloud::Redis::V1beta1::RescheduleMaintenanceRequest::RescheduleType]
315
+ # Required. If reschedule type is SPECIFIC_TIME, must set up schedule_time as well.
316
+ # @!attribute [rw] schedule_time
317
+ # @return [::Google::Protobuf::Timestamp]
318
+ # Optional. Timestamp when the maintenance shall be rescheduled to if
319
+ # reschedule_type=SPECIFIC_TIME, in RFC 3339 format, for
320
+ # example `2012-11-15T16:19:00.094Z`.
321
+ class RescheduleMaintenanceRequest
322
+ include ::Google::Protobuf::MessageExts
323
+ extend ::Google::Protobuf::MessageExts::ClassMethods
324
+
325
+ # Reschedule options.
326
+ module RescheduleType
327
+ # Not set.
328
+ RESCHEDULE_TYPE_UNSPECIFIED = 0
329
+
330
+ # If the user wants to schedule the maintenance to happen now.
331
+ IMMEDIATE = 1
332
+
333
+ # If the user wants to use the existing maintenance policy to find the
334
+ # next available window.
335
+ NEXT_AVAILABLE_WINDOW = 2
336
+
337
+ # If the user wants to reschedule the maintenance to a specific time.
338
+ SPECIFIC_TIME = 3
339
+ end
340
+ end
341
+
342
+ # Maintenance policy for an instance.
343
+ # @!attribute [r] create_time
344
+ # @return [::Google::Protobuf::Timestamp]
345
+ # Output only. The time when the policy was created.
346
+ # @!attribute [r] update_time
347
+ # @return [::Google::Protobuf::Timestamp]
348
+ # Output only. The time when the policy was last updated.
349
+ # @!attribute [rw] description
350
+ # @return [::String]
351
+ # Optional. Description of what this policy is for. Create/Update methods
352
+ # return INVALID_ARGUMENT if the length is greater than 512.
353
+ # @!attribute [rw] weekly_maintenance_window
354
+ # @return [::Array<::Google::Cloud::Redis::V1beta1::WeeklyMaintenanceWindow>]
355
+ # Optional. Maintenance window that is applied to resources covered by this
356
+ # policy. Minimum 1. For the current version, the maximum number of
357
+ # weekly_window is expected to be one.
358
+ class MaintenancePolicy
359
+ include ::Google::Protobuf::MessageExts
360
+ extend ::Google::Protobuf::MessageExts::ClassMethods
361
+ end
362
+
363
+ # Time window in which disruptive maintenance updates occur. Non-disruptive
364
+ # updates can occur inside or outside this window.
365
+ # @!attribute [rw] day
366
+ # @return [::Google::Type::DayOfWeek]
367
+ # Required. The day of week that maintenance updates occur.
368
+ # @!attribute [rw] start_time
369
+ # @return [::Google::Type::TimeOfDay]
370
+ # Required. Start time of the window in UTC time.
371
+ # @!attribute [r] duration
372
+ # @return [::Google::Protobuf::Duration]
373
+ # Output only. Duration of the maintenance window. The current window is fixed at 1 hour.
374
+ class WeeklyMaintenanceWindow
375
+ include ::Google::Protobuf::MessageExts
376
+ extend ::Google::Protobuf::MessageExts::ClassMethods
377
+ end
378
+
379
+ # Upcoming maintenance schedule. If no maintenance is scheduled, fields are not
380
+ # populated.
381
+ # @!attribute [r] start_time
382
+ # @return [::Google::Protobuf::Timestamp]
383
+ # Output only. The start time of any upcoming scheduled maintenance for this instance.
384
+ # @!attribute [r] end_time
385
+ # @return [::Google::Protobuf::Timestamp]
386
+ # Output only. The end time of any upcoming scheduled maintenance for this instance.
387
+ # @!attribute [rw] can_reschedule
388
+ # @return [::Boolean]
389
+ # If the scheduled maintenance can be rescheduled, default is true.
390
+ # @!attribute [r] schedule_deadline_time
391
+ # @return [::Google::Protobuf::Timestamp]
392
+ # Output only. The deadline that the maintenance schedule start time can not go beyond,
393
+ # including reschedule.
394
+ class MaintenanceSchedule
395
+ include ::Google::Protobuf::MessageExts
396
+ extend ::Google::Protobuf::MessageExts::ClassMethods
217
397
  end
218
398
 
219
399
  # Request for {::Google::Cloud::Redis::V1beta1::CloudRedis::Client#list_instances ListInstances}.
@@ -248,11 +428,12 @@ module Google
248
428
  #
249
429
  # If the `location_id` in the parent field of the request is "-", all regions
250
430
  # 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".
431
+ # If in such an aggregated query a location is unavailable, a placeholder
432
+ # Redis entry is included in the response with the `name` field set to a
433
+ # value of the form
434
+ # `projects/{project_id}/locations/{location_id}/instances/`- and the
435
+ # `status` field set to ERROR and `status_message` field set to "location not
436
+ # available for ListInstances".
256
437
  # @!attribute [rw] next_page_token
257
438
  # @return [::String]
258
439
  # Token to retrieve the next page of results, or empty if there are no more
@@ -276,6 +457,26 @@ module Google
276
457
  extend ::Google::Protobuf::MessageExts::ClassMethods
277
458
  end
278
459
 
460
+ # Request for {::Google::Cloud::Redis::V1beta1::CloudRedis::Client#get_instance_auth_string GetInstanceAuthString}.
461
+ # @!attribute [rw] name
462
+ # @return [::String]
463
+ # Required. Redis instance resource name using the form:
464
+ # `projects/{project_id}/locations/{location_id}/instances/{instance_id}`
465
+ # where `location_id` refers to a GCP region.
466
+ class GetInstanceAuthStringRequest
467
+ include ::Google::Protobuf::MessageExts
468
+ extend ::Google::Protobuf::MessageExts::ClassMethods
469
+ end
470
+
471
+ # Instance AUTH string details.
472
+ # @!attribute [rw] auth_string
473
+ # @return [::String]
474
+ # AUTH string set on the instance.
475
+ class InstanceAuthString
476
+ include ::Google::Protobuf::MessageExts
477
+ extend ::Google::Protobuf::MessageExts::ClassMethods
478
+ end
479
+
279
480
  # Request for {::Google::Cloud::Redis::V1beta1::CloudRedis::Client#create_instance CreateInstance}.
280
481
  # @!attribute [rw] parent
281
482
  # @return [::String]
@@ -311,6 +512,7 @@ module Google
311
512
  # * `labels`
312
513
  # * `memorySizeGb`
313
514
  # * `redisConfig`
515
+ # * `replica_count`
314
516
  # @!attribute [rw] instance
315
517
  # @return [::Google::Cloud::Redis::V1beta1::Instance]
316
518
  # Required. Update description.
@@ -432,7 +634,7 @@ module Google
432
634
 
433
635
  # Instance failover will be protected with data loss control. More
434
636
  # specifically, the failover will only be performed if the current
435
- # replication offset diff between master and replica is under a certain
637
+ # replication offset diff between primary and replica is under a certain
436
638
  # threshold.
437
639
  LIMITED_DATA_LOSS = 1
438
640
 
@@ -471,6 +673,31 @@ module Google
471
673
  include ::Google::Protobuf::MessageExts
472
674
  extend ::Google::Protobuf::MessageExts::ClassMethods
473
675
  end
676
+
677
+ # TlsCertificate Resource
678
+ # @!attribute [rw] serial_number
679
+ # @return [::String]
680
+ # Serial number, as extracted from the certificate.
681
+ # @!attribute [rw] cert
682
+ # @return [::String]
683
+ # PEM representation.
684
+ # @!attribute [r] create_time
685
+ # @return [::Google::Protobuf::Timestamp]
686
+ # Output only. The time when the certificate was created in [RFC
687
+ # 3339](https://tools.ietf.org/html/rfc3339) format, for example
688
+ # `2020-05-18T00:00:00.094Z`.
689
+ # @!attribute [r] expire_time
690
+ # @return [::Google::Protobuf::Timestamp]
691
+ # Output only. The time when the certificate expires in [RFC
692
+ # 3339](https://tools.ietf.org/html/rfc3339) format, for example
693
+ # `2020-05-18T00:00:00.094Z`.
694
+ # @!attribute [rw] sha1_fingerprint
695
+ # @return [::String]
696
+ # Sha1 Fingerprint of the certificate.
697
+ class TlsCertificate
698
+ include ::Google::Protobuf::MessageExts
699
+ extend ::Google::Protobuf::MessageExts::ClassMethods
700
+ end
474
701
  end
475
702
  end
476
703
  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-v1beta1
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.3
4
+ version: 0.6.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-01-21 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 V1beta1 API