google-cloud-memorystore-v1beta 0.a → 0.1.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.
Files changed (33) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +12 -0
  3. data/AUTHENTICATION.md +122 -0
  4. data/README.md +118 -8
  5. data/lib/google/cloud/memorystore/v1beta/bindings_override.rb +102 -0
  6. data/lib/google/cloud/memorystore/v1beta/memorystore/credentials.rb +47 -0
  7. data/lib/google/cloud/memorystore/v1beta/memorystore/paths.rb +124 -0
  8. data/lib/google/cloud/memorystore/v1beta/memorystore/rest/client.rb +982 -0
  9. data/lib/google/cloud/memorystore/v1beta/memorystore/rest/operations.rb +894 -0
  10. data/lib/google/cloud/memorystore/v1beta/memorystore/rest/service_stub.rb +425 -0
  11. data/lib/google/cloud/memorystore/v1beta/memorystore/rest.rb +54 -0
  12. data/lib/google/cloud/memorystore/v1beta/memorystore.rb +48 -0
  13. data/lib/google/cloud/memorystore/v1beta/memorystore_pb.rb +88 -0
  14. data/lib/google/cloud/memorystore/v1beta/memorystore_services_pb.rb +55 -0
  15. data/lib/google/cloud/memorystore/v1beta/rest.rb +38 -0
  16. data/lib/google/cloud/memorystore/v1beta/version.rb +7 -2
  17. data/lib/google/cloud/memorystore/v1beta.rb +40 -0
  18. data/lib/google-cloud-memorystore-v1beta.rb +21 -0
  19. data/proto_docs/README.md +4 -0
  20. data/proto_docs/google/api/client.rb +459 -0
  21. data/proto_docs/google/api/field_behavior.rb +85 -0
  22. data/proto_docs/google/api/field_info.rb +88 -0
  23. data/proto_docs/google/api/launch_stage.rb +71 -0
  24. data/proto_docs/google/api/resource.rb +227 -0
  25. data/proto_docs/google/cloud/memorystore/v1beta/memorystore.rb +714 -0
  26. data/proto_docs/google/longrunning/operations.rb +169 -0
  27. data/proto_docs/google/protobuf/any.rb +145 -0
  28. data/proto_docs/google/protobuf/duration.rb +98 -0
  29. data/proto_docs/google/protobuf/empty.rb +34 -0
  30. data/proto_docs/google/protobuf/field_mask.rb +229 -0
  31. data/proto_docs/google/protobuf/timestamp.rb +127 -0
  32. data/proto_docs/google/rpc/status.rb +48 -0
  33. metadata +92 -10
@@ -0,0 +1,714 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2024 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 Cloud
22
+ module Memorystore
23
+ module V1beta
24
+ # A Memorystore instance.
25
+ # @!attribute [rw] name
26
+ # @return [::String]
27
+ # Identifier. Unique name of the instance.
28
+ # Format: projects/\\{project}/locations/\\{location}/instances/\\{instance}
29
+ # @!attribute [r] create_time
30
+ # @return [::Google::Protobuf::Timestamp]
31
+ # Output only. Creation timestamp of the instance.
32
+ # @!attribute [r] update_time
33
+ # @return [::Google::Protobuf::Timestamp]
34
+ # Output only. Latest update timestamp of the instance.
35
+ # @!attribute [rw] labels
36
+ # @return [::Google::Protobuf::Map{::String => ::String}]
37
+ # Optional. Labels to represent user-provided metadata.
38
+ # @!attribute [r] state
39
+ # @return [::Google::Cloud::Memorystore::V1beta::Instance::State]
40
+ # Output only. Current state of the instance.
41
+ # @!attribute [r] state_info
42
+ # @return [::Google::Cloud::Memorystore::V1beta::Instance::StateInfo]
43
+ # Output only. Additional information about the state of the instance.
44
+ # @!attribute [r] uid
45
+ # @return [::String]
46
+ # Output only. System assigned, unique identifier for the instance.
47
+ # @!attribute [rw] replica_count
48
+ # @return [::Integer]
49
+ # Optional. Number of replica nodes per shard. If omitted the default is 0
50
+ # replicas.
51
+ # @!attribute [rw] authorization_mode
52
+ # @return [::Google::Cloud::Memorystore::V1beta::Instance::AuthorizationMode]
53
+ # Optional. Immutable. Authorization mode of the instance.
54
+ # @!attribute [rw] transit_encryption_mode
55
+ # @return [::Google::Cloud::Memorystore::V1beta::Instance::TransitEncryptionMode]
56
+ # Optional. Immutable. In-transit encryption mode of the instance.
57
+ # @!attribute [rw] shard_count
58
+ # @return [::Integer]
59
+ # Optional. Number of shards for the instance.
60
+ # @!attribute [r] discovery_endpoints
61
+ # @return [::Array<::Google::Cloud::Memorystore::V1beta::DiscoveryEndpoint>]
62
+ # Output only. Endpoints clients can connect to the instance through.
63
+ # Currently only one discovery endpoint is supported.
64
+ # @!attribute [rw] node_type
65
+ # @return [::Google::Cloud::Memorystore::V1beta::Instance::NodeType]
66
+ # Optional. Immutable. Machine type for individual nodes of the instance.
67
+ # @!attribute [rw] persistence_config
68
+ # @return [::Google::Cloud::Memorystore::V1beta::PersistenceConfig]
69
+ # Optional. Persistence configuration of the instance.
70
+ # @!attribute [rw] engine_version
71
+ # @return [::String]
72
+ # Optional. Immutable. Engine version of the instance.
73
+ # @!attribute [rw] engine_configs
74
+ # @return [::Google::Protobuf::Map{::String => ::String}]
75
+ # Optional. User-provided engine configurations for the instance.
76
+ # @!attribute [r] node_config
77
+ # @return [::Google::Cloud::Memorystore::V1beta::NodeConfig]
78
+ # Output only. Configuration of individual nodes of the instance.
79
+ # @!attribute [rw] zone_distribution_config
80
+ # @return [::Google::Cloud::Memorystore::V1beta::ZoneDistributionConfig]
81
+ # Optional. Immutable. Zone distribution configuration of the instance for
82
+ # node allocation.
83
+ # @!attribute [rw] deletion_protection_enabled
84
+ # @return [::Boolean]
85
+ # Optional. If set to true deletion of the instance will fail.
86
+ # @!attribute [rw] psc_auto_connections
87
+ # @return [::Array<::Google::Cloud::Memorystore::V1beta::PscAutoConnection>]
88
+ # Required. Immutable. User inputs and resource details of the auto-created
89
+ # PSC connections.
90
+ # @!attribute [rw] endpoints
91
+ # @return [::Array<::Google::Cloud::Memorystore::V1beta::Instance::InstanceEndpoint>]
92
+ # Optional. Endpoints for the instance.
93
+ # @!attribute [rw] mode
94
+ # @return [::Google::Cloud::Memorystore::V1beta::Instance::Mode]
95
+ # Optional. The mode config for the instance.
96
+ class Instance
97
+ include ::Google::Protobuf::MessageExts
98
+ extend ::Google::Protobuf::MessageExts::ClassMethods
99
+
100
+ # Additional information about the state of the instance.
101
+ # @!attribute [r] update_info
102
+ # @return [::Google::Cloud::Memorystore::V1beta::Instance::StateInfo::UpdateInfo]
103
+ # Output only. Describes ongoing update when instance state is UPDATING.
104
+ class StateInfo
105
+ include ::Google::Protobuf::MessageExts
106
+ extend ::Google::Protobuf::MessageExts::ClassMethods
107
+
108
+ # Represents information about instance with state UPDATING.
109
+ # @!attribute [r] target_shard_count
110
+ # @return [::Integer]
111
+ # Output only. Target number of shards for the instance.
112
+ # @!attribute [r] target_replica_count
113
+ # @return [::Integer]
114
+ # Output only. Target number of replica nodes per shard for the instance.
115
+ class UpdateInfo
116
+ include ::Google::Protobuf::MessageExts
117
+ extend ::Google::Protobuf::MessageExts::ClassMethods
118
+ end
119
+ end
120
+
121
+ # InstanceEndpoint consists of PSC connections that are created
122
+ # as a group in each VPC network for accessing the instance. In each group,
123
+ # there shall be one connection for each service attachment in the cluster.
124
+ # @!attribute [rw] connections
125
+ # @return [::Array<::Google::Cloud::Memorystore::V1beta::Instance::ConnectionDetail>]
126
+ # Optional. A group of PSC connections. They are created in the same VPC
127
+ # network, one for each service attachment in the cluster.
128
+ class InstanceEndpoint
129
+ include ::Google::Protobuf::MessageExts
130
+ extend ::Google::Protobuf::MessageExts::ClassMethods
131
+ end
132
+
133
+ # Information of each PSC connection.
134
+ # @!attribute [rw] psc_auto_connection
135
+ # @return [::Google::Cloud::Memorystore::V1beta::PscAutoConnection]
136
+ # Detailed information of a PSC connection that is created through
137
+ # service connectivity automation.
138
+ # @!attribute [rw] psc_connection
139
+ # @return [::Google::Cloud::Memorystore::V1beta::PscConnection]
140
+ # Detailed information of a PSC connection that is created by the user.
141
+ class ConnectionDetail
142
+ include ::Google::Protobuf::MessageExts
143
+ extend ::Google::Protobuf::MessageExts::ClassMethods
144
+ end
145
+
146
+ # @!attribute [rw] key
147
+ # @return [::String]
148
+ # @!attribute [rw] value
149
+ # @return [::String]
150
+ class LabelsEntry
151
+ include ::Google::Protobuf::MessageExts
152
+ extend ::Google::Protobuf::MessageExts::ClassMethods
153
+ end
154
+
155
+ # @!attribute [rw] key
156
+ # @return [::String]
157
+ # @!attribute [rw] value
158
+ # @return [::String]
159
+ class EngineConfigsEntry
160
+ include ::Google::Protobuf::MessageExts
161
+ extend ::Google::Protobuf::MessageExts::ClassMethods
162
+ end
163
+
164
+ # Possible states of the instance.
165
+ module State
166
+ # Not set.
167
+ STATE_UNSPECIFIED = 0
168
+
169
+ # Instance is being created.
170
+ CREATING = 1
171
+
172
+ # Instance has been created and is usable.
173
+ ACTIVE = 2
174
+
175
+ # Instance is being updated.
176
+ UPDATING = 3
177
+
178
+ # Instance is being deleted.
179
+ DELETING = 4
180
+ end
181
+
182
+ # Possible authorization modes of the instance.
183
+ module AuthorizationMode
184
+ # Not set.
185
+ AUTHORIZATION_MODE_UNSPECIFIED = 0
186
+
187
+ # Authorization disabled.
188
+ AUTH_DISABLED = 1
189
+
190
+ # IAM basic authorization.
191
+ IAM_AUTH = 2
192
+ end
193
+
194
+ # Possible in-transit encryption modes of the instance.
195
+ module TransitEncryptionMode
196
+ # Not set.
197
+ TRANSIT_ENCRYPTION_MODE_UNSPECIFIED = 0
198
+
199
+ # In-transit encryption is disabled.
200
+ TRANSIT_ENCRYPTION_DISABLED = 1
201
+
202
+ # Server-managed encryption is used for in-transit encryption.
203
+ SERVER_AUTHENTICATION = 2
204
+ end
205
+
206
+ # Possible node types of the instance. See
207
+ # https://cloud.google.com/memorystore/docs/valkey/instance-node-specification
208
+ # for more information.
209
+ module NodeType
210
+ # Not set.
211
+ NODE_TYPE_UNSPECIFIED = 0
212
+
213
+ # Shared core nano.
214
+ SHARED_CORE_NANO = 1
215
+
216
+ # High memory medium.
217
+ HIGHMEM_MEDIUM = 2
218
+
219
+ # High memory extra large.
220
+ HIGHMEM_XLARGE = 3
221
+
222
+ # Standard small.
223
+ STANDARD_SMALL = 4
224
+ end
225
+
226
+ # The mode config, which is used to enable/disable cluster mode.
227
+ module Mode
228
+ # Mode is not specified.
229
+ MODE_UNSPECIFIED = 0
230
+
231
+ # Instance is in standalone mode.
232
+ STANDALONE = 1
233
+
234
+ # Instance is in cluster mode.
235
+ CLUSTER = 2
236
+ end
237
+ end
238
+
239
+ # Details of consumer resources in a PSC connection.
240
+ # @!attribute [r] port
241
+ # @return [::Integer]
242
+ # Optional. Output only. port will only be set for Primary/Reader or
243
+ # Discovery endpoint.
244
+ # @!attribute [r] psc_connection_id
245
+ # @return [::String]
246
+ # Output only. The PSC connection id of the forwarding rule connected to the
247
+ # service attachment.
248
+ # @!attribute [r] ip_address
249
+ # @return [::String]
250
+ # Output only. The IP allocated on the consumer network for the PSC
251
+ # forwarding rule.
252
+ # @!attribute [r] forwarding_rule
253
+ # @return [::String]
254
+ # Output only. The URI of the consumer side forwarding rule.
255
+ # Format:
256
+ # projects/\\{project}/regions/\\{region}/forwardingRules/\\{forwarding_rule}
257
+ # @!attribute [rw] project_id
258
+ # @return [::String]
259
+ # Required. The consumer project_id where PSC connections are established.
260
+ # This should be the same project_id that the instance is being created in.
261
+ # @!attribute [rw] network
262
+ # @return [::String]
263
+ # Required. The network where the PSC endpoints are created, in the form of
264
+ # projects/\\{project_id}/global/networks/\\{network_id}.
265
+ # @!attribute [r] service_attachment
266
+ # @return [::String]
267
+ # Output only. The service attachment which is the target of the PSC
268
+ # connection, in the form of
269
+ # projects/\\{project-id}/regions/\\{region}/serviceAttachments/\\{service-attachment-id}.
270
+ # @!attribute [r] psc_connection_status
271
+ # @return [::Google::Cloud::Memorystore::V1beta::PscConnectionStatus]
272
+ # Output only. The status of the PSC connection: whether a connection exists
273
+ # and ACTIVE or it no longer exists. Please note that this value is updated
274
+ # periodically. Please use Private Service Connect APIs for the latest
275
+ # status.
276
+ # @!attribute [r] connection_type
277
+ # @return [::Google::Cloud::Memorystore::V1beta::ConnectionType]
278
+ # Output only. Type of the PSC connection.
279
+ class PscAutoConnection
280
+ include ::Google::Protobuf::MessageExts
281
+ extend ::Google::Protobuf::MessageExts::ClassMethods
282
+ end
283
+
284
+ # User created Psc connection configuration.
285
+ # @!attribute [r] psc_connection_id
286
+ # @return [::String]
287
+ # Output only. The PSC connection id of the forwarding rule connected to the
288
+ # service attachment.
289
+ # @!attribute [rw] ip_address
290
+ # @return [::String]
291
+ # Required. The IP allocated on the consumer network for the PSC forwarding
292
+ # rule.
293
+ # @!attribute [rw] forwarding_rule
294
+ # @return [::String]
295
+ # Required. The URI of the consumer side forwarding rule.
296
+ # Format:
297
+ # projects/\\{project}/regions/\\{region}/forwardingRules/\\{forwarding_rule}
298
+ # @!attribute [r] project_id
299
+ # @return [::String]
300
+ # Output only. The consumer project_id where the forwarding rule is created
301
+ # from.
302
+ # @!attribute [rw] network
303
+ # @return [::String]
304
+ # Required. The consumer network where the IP address resides, in the form of
305
+ # projects/\\{project_id}/global/networks/\\{network_id}.
306
+ # @!attribute [rw] service_attachment
307
+ # @return [::String]
308
+ # Required. The service attachment which is the target of the PSC connection,
309
+ # in the form of
310
+ # projects/\\{project-id}/regions/\\{region}/serviceAttachments/\\{service-attachment-id}.
311
+ # @!attribute [r] psc_connection_status
312
+ # @return [::Google::Cloud::Memorystore::V1beta::PscConnectionStatus]
313
+ # Output only. The status of the PSC connection: whether a connection exists
314
+ # and ACTIVE or it no longer exists. Please note that this value is updated
315
+ # periodically. Please use Private Service Connect APIs for the latest
316
+ # status.
317
+ # @!attribute [r] connection_type
318
+ # @return [::Google::Cloud::Memorystore::V1beta::ConnectionType]
319
+ # Output only. Type of the PSC connection.
320
+ class PscConnection
321
+ include ::Google::Protobuf::MessageExts
322
+ extend ::Google::Protobuf::MessageExts::ClassMethods
323
+ end
324
+
325
+ # Represents an endpoint for clients to connect to the instance.
326
+ # @!attribute [r] address
327
+ # @return [::String]
328
+ # Output only. IP address of the exposed endpoint clients connect to.
329
+ # @!attribute [r] port
330
+ # @return [::Integer]
331
+ # Output only. The port number of the exposed endpoint.
332
+ # @!attribute [r] network
333
+ # @return [::String]
334
+ # Output only. The network where the IP address of the discovery endpoint
335
+ # will be reserved, in the form of
336
+ # projects/\\{network_project}/global/networks/\\{network_id}.
337
+ class DiscoveryEndpoint
338
+ include ::Google::Protobuf::MessageExts
339
+ extend ::Google::Protobuf::MessageExts::ClassMethods
340
+ end
341
+
342
+ # Represents persistence configuration for a instance.
343
+ # @!attribute [rw] mode
344
+ # @return [::Google::Cloud::Memorystore::V1beta::PersistenceConfig::PersistenceMode]
345
+ # Optional. Current persistence mode.
346
+ # @!attribute [rw] rdb_config
347
+ # @return [::Google::Cloud::Memorystore::V1beta::PersistenceConfig::RDBConfig]
348
+ # Optional. RDB configuration. This field will be ignored if mode is not RDB.
349
+ # @!attribute [rw] aof_config
350
+ # @return [::Google::Cloud::Memorystore::V1beta::PersistenceConfig::AOFConfig]
351
+ # Optional. AOF configuration. This field will be ignored if mode is not AOF.
352
+ class PersistenceConfig
353
+ include ::Google::Protobuf::MessageExts
354
+ extend ::Google::Protobuf::MessageExts::ClassMethods
355
+
356
+ # Configuration for RDB based persistence.
357
+ # @!attribute [rw] rdb_snapshot_period
358
+ # @return [::Google::Cloud::Memorystore::V1beta::PersistenceConfig::RDBConfig::SnapshotPeriod]
359
+ # Optional. Period between RDB snapshots.
360
+ # @!attribute [rw] rdb_snapshot_start_time
361
+ # @return [::Google::Protobuf::Timestamp]
362
+ # Optional. Time that the first snapshot was/will be attempted, and to
363
+ # which future snapshots will be aligned. If not provided, the current time
364
+ # will be used.
365
+ class RDBConfig
366
+ include ::Google::Protobuf::MessageExts
367
+ extend ::Google::Protobuf::MessageExts::ClassMethods
368
+
369
+ # Possible snapshot periods.
370
+ module SnapshotPeriod
371
+ # Not set.
372
+ SNAPSHOT_PERIOD_UNSPECIFIED = 0
373
+
374
+ # One hour.
375
+ ONE_HOUR = 1
376
+
377
+ # Six hours.
378
+ SIX_HOURS = 2
379
+
380
+ # Twelve hours.
381
+ TWELVE_HOURS = 3
382
+
383
+ # Twenty four hours.
384
+ TWENTY_FOUR_HOURS = 4
385
+ end
386
+ end
387
+
388
+ # Configuration for AOF based persistence.
389
+ # @!attribute [rw] append_fsync
390
+ # @return [::Google::Cloud::Memorystore::V1beta::PersistenceConfig::AOFConfig::AppendFsync]
391
+ # Optional. The fsync mode.
392
+ class AOFConfig
393
+ include ::Google::Protobuf::MessageExts
394
+ extend ::Google::Protobuf::MessageExts::ClassMethods
395
+
396
+ # Possible fsync modes.
397
+ module AppendFsync
398
+ # Not set. Default: EVERY_SEC
399
+ APPEND_FSYNC_UNSPECIFIED = 0
400
+
401
+ # Never fsync. Normally Linux will flush data every 30 seconds with this
402
+ # configuration, but it's up to the kernel's exact tuning.
403
+ NEVER = 1
404
+
405
+ # Fsync every second. You may lose 1 second of data if there is a
406
+ # disaster.
407
+ EVERY_SEC = 2
408
+
409
+ # Fsync every time new write commands are appended to the AOF. The best
410
+ # data loss protection at the cost of performance.
411
+ ALWAYS = 3
412
+ end
413
+ end
414
+
415
+ # Possible persistence modes.
416
+ module PersistenceMode
417
+ # Not set.
418
+ PERSISTENCE_MODE_UNSPECIFIED = 0
419
+
420
+ # Persistence is disabled, and any snapshot data is deleted.
421
+ DISABLED = 1
422
+
423
+ # RDB based persistence is enabled.
424
+ RDB = 2
425
+
426
+ # AOF based persistence is enabled.
427
+ AOF = 3
428
+ end
429
+ end
430
+
431
+ # Represents configuration for nodes of the instance.
432
+ # @!attribute [r] size_gb
433
+ # @return [::Float]
434
+ # Output only. Memory size in GB of the node.
435
+ class NodeConfig
436
+ include ::Google::Protobuf::MessageExts
437
+ extend ::Google::Protobuf::MessageExts::ClassMethods
438
+ end
439
+
440
+ # Zone distribution configuration for allocation of instance resources.
441
+ # @!attribute [rw] zone
442
+ # @return [::String]
443
+ # Optional. Defines zone where all resources will be allocated with
444
+ # SINGLE_ZONE mode. Ignored for MULTI_ZONE mode.
445
+ # @!attribute [rw] mode
446
+ # @return [::Google::Cloud::Memorystore::V1beta::ZoneDistributionConfig::ZoneDistributionMode]
447
+ # Optional. Current zone distribution mode. Defaults to MULTI_ZONE.
448
+ class ZoneDistributionConfig
449
+ include ::Google::Protobuf::MessageExts
450
+ extend ::Google::Protobuf::MessageExts::ClassMethods
451
+
452
+ # Possible zone distribution modes.
453
+ module ZoneDistributionMode
454
+ # Not Set. Default: MULTI_ZONE
455
+ ZONE_DISTRIBUTION_MODE_UNSPECIFIED = 0
456
+
457
+ # Distribute resources across 3 zones picked at random within the
458
+ # region.
459
+ MULTI_ZONE = 1
460
+
461
+ # Provision resources in a single zone. Zone field must be specified.
462
+ SINGLE_ZONE = 2
463
+ end
464
+ end
465
+
466
+ # Request message for [ListInstances][].
467
+ # @!attribute [rw] parent
468
+ # @return [::String]
469
+ # Required. The parent to list instances from.
470
+ # Format: projects/\\{project}/locations/\\{location}
471
+ # @!attribute [rw] page_size
472
+ # @return [::Integer]
473
+ # Optional. Requested page size. Server may return fewer items than
474
+ # requested. If unspecified, server will pick an appropriate default.
475
+ # @!attribute [rw] page_token
476
+ # @return [::String]
477
+ # Optional. A token identifying a page of results the server should return.
478
+ # @!attribute [rw] filter
479
+ # @return [::String]
480
+ # Optional. Expression for filtering results.
481
+ # @!attribute [rw] order_by
482
+ # @return [::String]
483
+ # Optional. Sort results by a defined order. Supported values: "name",
484
+ # "create_time".
485
+ class ListInstancesRequest
486
+ include ::Google::Protobuf::MessageExts
487
+ extend ::Google::Protobuf::MessageExts::ClassMethods
488
+ end
489
+
490
+ # Response message for [ListInstances][].
491
+ # @!attribute [rw] instances
492
+ # @return [::Array<::Google::Cloud::Memorystore::V1beta::Instance>]
493
+ # If the \\{location} requested was "-" the response contains a list of
494
+ # instances from all locations. Instances in unreachable locations will be
495
+ # omitted.
496
+ # @!attribute [rw] next_page_token
497
+ # @return [::String]
498
+ # A token, which can be sent as `page_token` to retrieve the next page.
499
+ # If this field is omitted, there are no subsequent pages.
500
+ # @!attribute [rw] unreachable
501
+ # @return [::Array<::String>]
502
+ # Locations that could not be reached.
503
+ class ListInstancesResponse
504
+ include ::Google::Protobuf::MessageExts
505
+ extend ::Google::Protobuf::MessageExts::ClassMethods
506
+ end
507
+
508
+ # Request message for [GetInstance][].
509
+ # @!attribute [rw] name
510
+ # @return [::String]
511
+ # Required. The name of the instance to retrieve.
512
+ # Format: projects/\\{project}/locations/\\{location}/instances/\\{instance}
513
+ class GetInstanceRequest
514
+ include ::Google::Protobuf::MessageExts
515
+ extend ::Google::Protobuf::MessageExts::ClassMethods
516
+ end
517
+
518
+ # Request message for [CreateInstance][].
519
+ # @!attribute [rw] parent
520
+ # @return [::String]
521
+ # Required. The parent resource where this instance will be created.
522
+ # Format: projects/\\{project}/locations/\\{location}
523
+ # @!attribute [rw] instance_id
524
+ # @return [::String]
525
+ # Required. The ID to use for the instance, which will become the final
526
+ # component of the instance's resource name.
527
+ #
528
+ # This value is subject to the following restrictions:
529
+ #
530
+ # * Must be 4-63 characters in length
531
+ # * Must begin with a letter or digit
532
+ # * Must contain only lowercase letters, digits, and hyphens
533
+ # * Must not end with a hyphen
534
+ # * Must be unique within a location
535
+ # @!attribute [rw] instance
536
+ # @return [::Google::Cloud::Memorystore::V1beta::Instance]
537
+ # Required. The instance to create.
538
+ # @!attribute [rw] request_id
539
+ # @return [::String]
540
+ # Optional. An optional request ID to identify requests. Specify a unique
541
+ # request ID so that if you must retry your request, the server will know to
542
+ # ignore the request if it has already been completed. The server will
543
+ # guarantee that for at least 60 minutes since the first request.
544
+ #
545
+ # For example, consider a situation where you make an initial request and the
546
+ # request times out. If you make the request again with the same request
547
+ # ID, the server can check if original operation with the same request ID
548
+ # was received, and if so, will ignore the second request. This prevents
549
+ # clients from accidentally creating duplicate commitments.
550
+ #
551
+ # The request ID must be a valid UUID with the exception that zero UUID is
552
+ # not supported (00000000-0000-0000-0000-000000000000).
553
+ class CreateInstanceRequest
554
+ include ::Google::Protobuf::MessageExts
555
+ extend ::Google::Protobuf::MessageExts::ClassMethods
556
+ end
557
+
558
+ # Request message for [UpdateInstance][].
559
+ # @!attribute [rw] update_mask
560
+ # @return [::Google::Protobuf::FieldMask]
561
+ # Optional. The list of fields to be updated on the instance. At least one
562
+ # field must be specified.
563
+ # @!attribute [rw] instance
564
+ # @return [::Google::Cloud::Memorystore::V1beta::Instance]
565
+ # Required. The instance to update.
566
+ # @!attribute [rw] request_id
567
+ # @return [::String]
568
+ # Optional. An optional request ID to identify requests. Specify a unique
569
+ # request ID so that if you must retry your request, the server will know to
570
+ # ignore the request if it has already been completed. The server will
571
+ # guarantee that for at least 60 minutes since the first request.
572
+ #
573
+ # For example, consider a situation where you make an initial request and the
574
+ # request times out. If you make the request again with the same request
575
+ # ID, the server can check if original operation with the same request ID
576
+ # was received, and if so, will ignore the second request. This prevents
577
+ # clients from accidentally creating duplicate commitments.
578
+ #
579
+ # The request ID must be a valid UUID with the exception that zero UUID is
580
+ # not supported (00000000-0000-0000-0000-000000000000).
581
+ class UpdateInstanceRequest
582
+ include ::Google::Protobuf::MessageExts
583
+ extend ::Google::Protobuf::MessageExts::ClassMethods
584
+ end
585
+
586
+ # Request message for [DeleteInstance][].
587
+ # @!attribute [rw] name
588
+ # @return [::String]
589
+ # Required. The name of the instance to delete.
590
+ # Format: projects/\\{project}/locations/\\{location}/instances/\\{instance}
591
+ # @!attribute [rw] request_id
592
+ # @return [::String]
593
+ # Optional. An optional request ID to identify requests. Specify a unique
594
+ # request ID so that if you must retry your request, the server will know to
595
+ # ignore the request if it has already been completed. The server will
596
+ # guarantee that for at least 60 minutes after the first request.
597
+ #
598
+ # For example, consider a situation where you make an initial request and the
599
+ # request times out. If you make the request again with the same request
600
+ # ID, the server can check if original operation with the same request ID
601
+ # was received, and if so, will ignore the second request. This prevents
602
+ # clients from accidentally creating duplicate commitments.
603
+ #
604
+ # The request ID must be a valid UUID with the exception that zero UUID is
605
+ # not supported (00000000-0000-0000-0000-000000000000).
606
+ class DeleteInstanceRequest
607
+ include ::Google::Protobuf::MessageExts
608
+ extend ::Google::Protobuf::MessageExts::ClassMethods
609
+ end
610
+
611
+ # Request message for [GetCertificateAuthority][].
612
+ # @!attribute [rw] name
613
+ # @return [::String]
614
+ # Required. The name of the certificate authority.
615
+ # Format:
616
+ # projects/\\{project}/locations/\\{location}/instances/\\{instance}/certificateAuthority
617
+ class GetCertificateAuthorityRequest
618
+ include ::Google::Protobuf::MessageExts
619
+ extend ::Google::Protobuf::MessageExts::ClassMethods
620
+ end
621
+
622
+ # A certificate authority for an instance.
623
+ # @!attribute [rw] managed_server_ca
624
+ # @return [::Google::Cloud::Memorystore::V1beta::CertificateAuthority::ManagedCertificateAuthority]
625
+ # A managed server certificate authority.
626
+ # @!attribute [rw] name
627
+ # @return [::String]
628
+ # Identifier. Unique name of the certificate authority.
629
+ # Format:
630
+ # projects/\\{project}/locations/\\{location}/instances/\\{instance}
631
+ class CertificateAuthority
632
+ include ::Google::Protobuf::MessageExts
633
+ extend ::Google::Protobuf::MessageExts::ClassMethods
634
+
635
+ # A managed certificate authority.
636
+ # @!attribute [rw] ca_certs
637
+ # @return [::Array<::Google::Cloud::Memorystore::V1beta::CertificateAuthority::ManagedCertificateAuthority::CertChain>]
638
+ # PEM encoded CA certificate chains for managed server authentication.
639
+ class ManagedCertificateAuthority
640
+ include ::Google::Protobuf::MessageExts
641
+ extend ::Google::Protobuf::MessageExts::ClassMethods
642
+
643
+ # A certificate chain.
644
+ # @!attribute [rw] certificates
645
+ # @return [::Array<::String>]
646
+ # The certificates that form the CA chain in order of leaf to root.
647
+ class CertChain
648
+ include ::Google::Protobuf::MessageExts
649
+ extend ::Google::Protobuf::MessageExts::ClassMethods
650
+ end
651
+ end
652
+ end
653
+
654
+ # Represents the metadata of a long-running operation.
655
+ # @!attribute [r] create_time
656
+ # @return [::Google::Protobuf::Timestamp]
657
+ # Output only. The time the operation was created.
658
+ # @!attribute [r] end_time
659
+ # @return [::Google::Protobuf::Timestamp]
660
+ # Output only. The time the operation finished running.
661
+ # @!attribute [r] target
662
+ # @return [::String]
663
+ # Output only. Server-defined resource path for the target of the operation.
664
+ # @!attribute [r] verb
665
+ # @return [::String]
666
+ # Output only. Name of the verb executed by the operation.
667
+ # @!attribute [r] status_message
668
+ # @return [::String]
669
+ # Output only. Human-readable status of the operation, if any.
670
+ # @!attribute [r] requested_cancellation
671
+ # @return [::Boolean]
672
+ # Output only. Identifies whether the user has requested cancellation
673
+ # of the operation. Operations that have been cancelled successfully
674
+ # have [Operation.error][] value with a
675
+ # {::Google::Rpc::Status#code google.rpc.Status.code} of 1, corresponding to
676
+ # `Code.CANCELLED`.
677
+ # @!attribute [r] api_version
678
+ # @return [::String]
679
+ # Output only. API version used to start the operation.
680
+ class OperationMetadata
681
+ include ::Google::Protobuf::MessageExts
682
+ extend ::Google::Protobuf::MessageExts::ClassMethods
683
+ end
684
+
685
+ # Status of the PSC connection.
686
+ module PscConnectionStatus
687
+ # PSC connection status is not specified.
688
+ PSC_CONNECTION_STATUS_UNSPECIFIED = 0
689
+
690
+ # The connection is active
691
+ ACTIVE = 1
692
+
693
+ # Connection not found
694
+ NOT_FOUND = 2
695
+ end
696
+
697
+ # Type of a PSC connection
698
+ module ConnectionType
699
+ # Connection Type is not set
700
+ CONNECTION_TYPE_UNSPECIFIED = 0
701
+
702
+ # Connection that will be used for topology discovery.
703
+ CONNECTION_TYPE_DISCOVERY = 1
704
+
705
+ # Connection that will be used as primary endpoint to access primary.
706
+ CONNECTION_TYPE_PRIMARY = 2
707
+
708
+ # Connection that will be used as reader endpoint to access replicas.
709
+ CONNECTION_TYPE_READER = 3
710
+ end
711
+ end
712
+ end
713
+ end
714
+ end