google-cloud-alloy_db-v1beta 0.a → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (40) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +12 -0
  3. data/AUTHENTICATION.md +149 -0
  4. data/README.md +144 -8
  5. data/lib/google/cloud/alloy_db/v1beta/alloy_db_admin/client.rb +3304 -0
  6. data/lib/google/cloud/alloy_db/v1beta/alloy_db_admin/credentials.rb +47 -0
  7. data/lib/google/cloud/alloy_db/v1beta/alloy_db_admin/operations.rb +768 -0
  8. data/lib/google/cloud/alloy_db/v1beta/alloy_db_admin/paths.rb +149 -0
  9. data/lib/google/cloud/alloy_db/v1beta/alloy_db_admin/rest/client.rb +2586 -0
  10. data/lib/google/cloud/alloy_db/v1beta/alloy_db_admin/rest/operations.rb +792 -0
  11. data/lib/google/cloud/alloy_db/v1beta/alloy_db_admin/rest/service_stub.rb +1537 -0
  12. data/lib/google/cloud/alloy_db/v1beta/alloy_db_admin/rest.rb +54 -0
  13. data/lib/google/cloud/alloy_db/v1beta/alloy_db_admin.rb +56 -0
  14. data/lib/google/cloud/alloy_db/v1beta/bindings_override.rb +102 -0
  15. data/lib/google/cloud/alloy_db/v1beta/rest.rb +38 -0
  16. data/lib/google/cloud/alloy_db/v1beta/version.rb +8 -3
  17. data/lib/google/cloud/alloy_db/v1beta.rb +45 -0
  18. data/lib/google/cloud/alloydb/v1beta/resources_pb.rb +338 -0
  19. data/lib/google/cloud/alloydb/v1beta/service_pb.rb +279 -0
  20. data/lib/google/cloud/alloydb/v1beta/service_services_pb.rb +115 -0
  21. data/lib/google-cloud-alloy_db-v1beta.rb +21 -0
  22. data/proto_docs/README.md +4 -0
  23. data/proto_docs/google/api/client.rb +324 -0
  24. data/proto_docs/google/api/field_behavior.rb +71 -0
  25. data/proto_docs/google/api/launch_stage.rb +71 -0
  26. data/proto_docs/google/api/resource.rb +222 -0
  27. data/proto_docs/google/cloud/alloydb/v1beta/resources.rb +1068 -0
  28. data/proto_docs/google/cloud/alloydb/v1beta/service.rb +998 -0
  29. data/proto_docs/google/longrunning/operations.rb +164 -0
  30. data/proto_docs/google/protobuf/any.rb +141 -0
  31. data/proto_docs/google/protobuf/duration.rb +98 -0
  32. data/proto_docs/google/protobuf/empty.rb +34 -0
  33. data/proto_docs/google/protobuf/field_mask.rb +229 -0
  34. data/proto_docs/google/protobuf/timestamp.rb +129 -0
  35. data/proto_docs/google/protobuf/wrappers.rb +121 -0
  36. data/proto_docs/google/rpc/status.rb +48 -0
  37. data/proto_docs/google/type/dayofweek.rb +49 -0
  38. data/proto_docs/google/type/expr.rb +75 -0
  39. data/proto_docs/google/type/timeofday.rb +45 -0
  40. metadata +250 -12
@@ -0,0 +1,1068 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2023 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 AlloyDB
23
+ module V1beta
24
+ # The username/password for a database user. Used for specifying initial
25
+ # users at cluster creation time.
26
+ # @!attribute [rw] user
27
+ # @return [::String]
28
+ # The database username.
29
+ # @!attribute [rw] password
30
+ # @return [::String]
31
+ # The initial password for the user.
32
+ class UserPassword
33
+ include ::Google::Protobuf::MessageExts
34
+ extend ::Google::Protobuf::MessageExts::ClassMethods
35
+ end
36
+
37
+ # Subset of the source instance configuration that is available when reading
38
+ # the cluster resource.
39
+ # @!attribute [r] host_port
40
+ # @return [::String]
41
+ # Output only. The host and port of the on-premises instance in host:port
42
+ # format
43
+ # @!attribute [r] reference_id
44
+ # @return [::String]
45
+ # Output only. Place holder for the external source identifier(e.g DMS job
46
+ # name) that created the cluster.
47
+ # @!attribute [r] source_type
48
+ # @return [::Google::Cloud::AlloyDB::V1beta::MigrationSource::MigrationSourceType]
49
+ # Output only. Type of migration source.
50
+ class MigrationSource
51
+ include ::Google::Protobuf::MessageExts
52
+ extend ::Google::Protobuf::MessageExts::ClassMethods
53
+
54
+ # Denote the type of migration source that created this cluster.
55
+ module MigrationSourceType
56
+ # Migration source is unknown.
57
+ MIGRATION_SOURCE_TYPE_UNSPECIFIED = 0
58
+
59
+ # DMS source means the cluster was created via DMS migration job.
60
+ DMS = 1
61
+ end
62
+ end
63
+
64
+ # EncryptionConfig describes the encryption config of a cluster or a backup
65
+ # that is encrypted with a CMEK (customer-managed encryption key).
66
+ # @!attribute [rw] kms_key_name
67
+ # @return [::String]
68
+ # The fully-qualified resource name of the KMS key.
69
+ # Each Cloud KMS key is regionalized and has the following format:
70
+ # projects/[PROJECT]/locations/[REGION]/keyRings/[RING]/cryptoKeys/[KEY_NAME]
71
+ class EncryptionConfig
72
+ include ::Google::Protobuf::MessageExts
73
+ extend ::Google::Protobuf::MessageExts::ClassMethods
74
+ end
75
+
76
+ # EncryptionInfo describes the encryption information of a cluster or a backup.
77
+ # @!attribute [r] encryption_type
78
+ # @return [::Google::Cloud::AlloyDB::V1beta::EncryptionInfo::Type]
79
+ # Output only. Type of encryption.
80
+ # @!attribute [r] kms_key_versions
81
+ # @return [::Array<::String>]
82
+ # Output only. Cloud KMS key versions that are being used to protect the
83
+ # database or the backup.
84
+ class EncryptionInfo
85
+ include ::Google::Protobuf::MessageExts
86
+ extend ::Google::Protobuf::MessageExts::ClassMethods
87
+
88
+ # Possible encryption types.
89
+ module Type
90
+ # Encryption type not specified. Defaults to GOOGLE_DEFAULT_ENCRYPTION.
91
+ TYPE_UNSPECIFIED = 0
92
+
93
+ # The data is encrypted at rest with a key that is fully managed by Google.
94
+ # No key version will be populated. This is the default state.
95
+ GOOGLE_DEFAULT_ENCRYPTION = 1
96
+
97
+ # The data is encrypted at rest with a key that is managed by the customer.
98
+ # KMS key versions will be populated.
99
+ CUSTOMER_MANAGED_ENCRYPTION = 2
100
+ end
101
+ end
102
+
103
+ # SSL configuration for an AlloyDB Cluster.
104
+ # @!attribute [rw] ssl_mode
105
+ # @return [::Google::Cloud::AlloyDB::V1beta::SslConfig::SslMode]
106
+ # Optional. SSL mode. Specifies client-server SSL/TLS connection behavior.
107
+ # @!attribute [rw] ca_source
108
+ # @return [::Google::Cloud::AlloyDB::V1beta::SslConfig::CaSource]
109
+ # Optional. Certificate Authority (CA) source. Only CA_SOURCE_MANAGED is
110
+ # supported currently, and is the default value.
111
+ class SslConfig
112
+ include ::Google::Protobuf::MessageExts
113
+ extend ::Google::Protobuf::MessageExts::ClassMethods
114
+
115
+ # SSL mode options.
116
+ module SslMode
117
+ # SSL mode not specified. Defaults to SSL_MODE_ALLOW.
118
+ SSL_MODE_UNSPECIFIED = 0
119
+
120
+ # SSL connections are optional. CA verification not enforced.
121
+ SSL_MODE_ALLOW = 1
122
+
123
+ # SSL connections are required. CA verification not enforced.
124
+ # Clients may use locally self-signed certificates (default psql client
125
+ # behavior).
126
+ SSL_MODE_REQUIRE = 2
127
+
128
+ # SSL connections are required. CA verification enforced.
129
+ # Clients must have certificates signed by a Cluster CA, e.g. via
130
+ # GenerateClientCertificate.
131
+ SSL_MODE_VERIFY_CA = 3
132
+ end
133
+
134
+ # Certificate Authority (CA) source for SSL/TLS certificates.
135
+ module CaSource
136
+ # Certificate Authority (CA) source not specified. Defaults to
137
+ # CA_SOURCE_MANAGED.
138
+ CA_SOURCE_UNSPECIFIED = 0
139
+
140
+ # Certificate Authority (CA) managed by the AlloyDB Cluster.
141
+ CA_SOURCE_MANAGED = 1
142
+ end
143
+ end
144
+
145
+ # Message describing the user-specified automated backup policy.
146
+ #
147
+ # All fields in the automated backup policy are optional. Defaults for each
148
+ # field are provided if they are not set.
149
+ # @!attribute [rw] weekly_schedule
150
+ # @return [::Google::Cloud::AlloyDB::V1beta::AutomatedBackupPolicy::WeeklySchedule]
151
+ # Weekly schedule for the Backup.
152
+ # @!attribute [rw] time_based_retention
153
+ # @return [::Google::Cloud::AlloyDB::V1beta::AutomatedBackupPolicy::TimeBasedRetention]
154
+ # Time-based Backup retention policy.
155
+ # @!attribute [rw] quantity_based_retention
156
+ # @return [::Google::Cloud::AlloyDB::V1beta::AutomatedBackupPolicy::QuantityBasedRetention]
157
+ # Quantity-based Backup retention policy to retain recent backups.
158
+ # @!attribute [rw] enabled
159
+ # @return [::Boolean]
160
+ # Whether automated automated backups are enabled. If not set, defaults to
161
+ # true.
162
+ # @!attribute [rw] backup_window
163
+ # @return [::Google::Protobuf::Duration]
164
+ # The length of the time window during which a backup can be
165
+ # taken. If a backup does not succeed within this time window, it will be
166
+ # canceled and considered failed.
167
+ #
168
+ # The backup window must be at least 5 minutes long. There is no upper bound
169
+ # on the window. If not set, it defaults to 1 hour.
170
+ # @!attribute [rw] encryption_config
171
+ # @return [::Google::Cloud::AlloyDB::V1beta::EncryptionConfig]
172
+ # Optional. The encryption config can be specified to encrypt the
173
+ # backups with a customer-managed encryption key (CMEK). When this field is
174
+ # not specified, the backup will then use default encryption scheme to
175
+ # protect the user data.
176
+ # @!attribute [rw] location
177
+ # @return [::String]
178
+ # The location where the backup will be stored. Currently, the only supported
179
+ # option is to store the backup in the same region as the cluster.
180
+ #
181
+ # If empty, defaults to the region of the cluster.
182
+ # @!attribute [rw] labels
183
+ # @return [::Google::Protobuf::Map{::String => ::String}]
184
+ # Labels to apply to backups created using this configuration.
185
+ class AutomatedBackupPolicy
186
+ include ::Google::Protobuf::MessageExts
187
+ extend ::Google::Protobuf::MessageExts::ClassMethods
188
+
189
+ # A weekly schedule starts a backup at prescribed start times within a
190
+ # day, for the specified days of the week.
191
+ #
192
+ # The weekly schedule message is flexible and can be used to create many
193
+ # types of schedules. For example, to have a daily backup that starts at
194
+ # 22:00, configure the `start_times` field to have one element "22:00" and
195
+ # the `days_of_week` field to have all seven days of the week.
196
+ # @!attribute [rw] start_times
197
+ # @return [::Array<::Google::Type::TimeOfDay>]
198
+ # The times during the day to start a backup. The start times are assumed
199
+ # to be in UTC and to be an exact hour (e.g., 04:00:00).
200
+ #
201
+ # If no start times are provided, a single fixed start time is chosen
202
+ # arbitrarily.
203
+ # @!attribute [rw] days_of_week
204
+ # @return [::Array<::Google::Type::DayOfWeek>]
205
+ # The days of the week to perform a backup.
206
+ #
207
+ # If this field is left empty, the default of every day of the week is
208
+ # used.
209
+ class WeeklySchedule
210
+ include ::Google::Protobuf::MessageExts
211
+ extend ::Google::Protobuf::MessageExts::ClassMethods
212
+ end
213
+
214
+ # A time based retention policy specifies that all backups within a certain
215
+ # time period should be retained.
216
+ # @!attribute [rw] retention_period
217
+ # @return [::Google::Protobuf::Duration]
218
+ # The retention period.
219
+ class TimeBasedRetention
220
+ include ::Google::Protobuf::MessageExts
221
+ extend ::Google::Protobuf::MessageExts::ClassMethods
222
+ end
223
+
224
+ # A quantity based policy specifies that a certain number of the most recent
225
+ # successful backups should be retained.
226
+ # @!attribute [rw] count
227
+ # @return [::Integer]
228
+ # The number of backups to retain.
229
+ class QuantityBasedRetention
230
+ include ::Google::Protobuf::MessageExts
231
+ extend ::Google::Protobuf::MessageExts::ClassMethods
232
+ end
233
+
234
+ # @!attribute [rw] key
235
+ # @return [::String]
236
+ # @!attribute [rw] value
237
+ # @return [::String]
238
+ class LabelsEntry
239
+ include ::Google::Protobuf::MessageExts
240
+ extend ::Google::Protobuf::MessageExts::ClassMethods
241
+ end
242
+ end
243
+
244
+ # ContinuousBackupConfig describes the continuous backups recovery
245
+ # configurations of a cluster.
246
+ # @!attribute [rw] enabled
247
+ # @return [::Boolean]
248
+ # Whether ContinuousBackup is enabled.
249
+ # @!attribute [rw] recovery_window_days
250
+ # @return [::Integer]
251
+ # The number of days backups and logs will be retained, which determines the
252
+ # window of time that data is recoverable for. If not set, it defaults to 14
253
+ # days.
254
+ # @!attribute [rw] encryption_config
255
+ # @return [::Google::Cloud::AlloyDB::V1beta::EncryptionConfig]
256
+ # The encryption config can be specified to encrypt the
257
+ # backups with a customer-managed encryption key (CMEK). When this field is
258
+ # not specified, the backup will then use default encryption scheme to
259
+ # protect the user data.
260
+ class ContinuousBackupConfig
261
+ include ::Google::Protobuf::MessageExts
262
+ extend ::Google::Protobuf::MessageExts::ClassMethods
263
+ end
264
+
265
+ # ContinuousBackupInfo describes the continuous backup properties of a
266
+ # cluster.
267
+ # @!attribute [r] encryption_info
268
+ # @return [::Google::Cloud::AlloyDB::V1beta::EncryptionInfo]
269
+ # Output only. The encryption information for the WALs and backups required
270
+ # for ContinuousBackup.
271
+ # @!attribute [r] enabled_time
272
+ # @return [::Google::Protobuf::Timestamp]
273
+ # Output only. When ContinuousBackup was most recently enabled. Set to null
274
+ # if ContinuousBackup is not enabled.
275
+ # @!attribute [r] schedule
276
+ # @return [::Array<::Google::Type::DayOfWeek>]
277
+ # Output only. Days of the week on which a continuous backup is taken. Output
278
+ # only field. Ignored if passed into the request.
279
+ class ContinuousBackupInfo
280
+ include ::Google::Protobuf::MessageExts
281
+ extend ::Google::Protobuf::MessageExts::ClassMethods
282
+ end
283
+
284
+ # Message describing a BackupSource.
285
+ # @!attribute [r] backup_uid
286
+ # @return [::String]
287
+ # Output only. The system-generated UID of the backup which was used to
288
+ # create this resource. The UID is generated when the backup is created, and
289
+ # it is retained until the backup is deleted.
290
+ # @!attribute [rw] backup_name
291
+ # @return [::String]
292
+ # Required. The name of the backup resource with the format:
293
+ # * projects/\\{project}/locations/\\{region}/backups/\\{backup_id}
294
+ class BackupSource
295
+ include ::Google::Protobuf::MessageExts
296
+ extend ::Google::Protobuf::MessageExts::ClassMethods
297
+ end
298
+
299
+ # Message describing a ContinuousBackupSource.
300
+ # @!attribute [rw] cluster
301
+ # @return [::String]
302
+ # Required. The source cluster from which to restore. This cluster must have
303
+ # continuous backup enabled for this operation to succeed. For the required
304
+ # format, see the comment on the Cluster.name field.
305
+ # @!attribute [rw] point_in_time
306
+ # @return [::Google::Protobuf::Timestamp]
307
+ # Required. The point in time to restore to.
308
+ class ContinuousBackupSource
309
+ include ::Google::Protobuf::MessageExts
310
+ extend ::Google::Protobuf::MessageExts::ClassMethods
311
+ end
312
+
313
+ # A cluster is a collection of regional AlloyDB resources. It can include a
314
+ # primary instance and one or more read pool instances.
315
+ # All cluster resources share a storage layer, which scales as needed.
316
+ # @!attribute [r] backup_source
317
+ # @return [::Google::Cloud::AlloyDB::V1beta::BackupSource]
318
+ # Output only. Cluster created from backup.
319
+ # @!attribute [r] migration_source
320
+ # @return [::Google::Cloud::AlloyDB::V1beta::MigrationSource]
321
+ # Output only. Cluster created via DMS migration.
322
+ # @!attribute [r] name
323
+ # @return [::String]
324
+ # Output only. The name of the cluster resource with the format:
325
+ # * projects/\\{project}/locations/\\{region}/clusters/\\{cluster_id}
326
+ # where the cluster ID segment should satisfy the regex expression
327
+ # `[a-z0-9-]+`. For more details see https://google.aip.dev/122.
328
+ # The prefix of the cluster resource name is the name of the parent resource:
329
+ # * projects/\\{project}/locations/\\{region}
330
+ # @!attribute [rw] display_name
331
+ # @return [::String]
332
+ # User-settable and human-readable display name for the Cluster.
333
+ # @!attribute [r] uid
334
+ # @return [::String]
335
+ # Output only. The system-generated UID of the resource. The UID is assigned
336
+ # when the resource is created, and it is retained until it is deleted.
337
+ # @!attribute [r] create_time
338
+ # @return [::Google::Protobuf::Timestamp]
339
+ # Output only. Create time stamp
340
+ # @!attribute [r] update_time
341
+ # @return [::Google::Protobuf::Timestamp]
342
+ # Output only. Update time stamp
343
+ # @!attribute [r] delete_time
344
+ # @return [::Google::Protobuf::Timestamp]
345
+ # Output only. Delete time stamp
346
+ # @!attribute [rw] labels
347
+ # @return [::Google::Protobuf::Map{::String => ::String}]
348
+ # Labels as key value pairs
349
+ # @!attribute [r] state
350
+ # @return [::Google::Cloud::AlloyDB::V1beta::Cluster::State]
351
+ # Output only. The current serving state of the cluster.
352
+ # @!attribute [r] cluster_type
353
+ # @return [::Google::Cloud::AlloyDB::V1beta::Cluster::ClusterType]
354
+ # Output only. The type of the cluster. This is an output-only field and it's
355
+ # populated at the Cluster creation time or the Cluster promotion
356
+ # time. The cluster type is determined by which RPC was used to create
357
+ # the cluster (i.e. `CreateCluster` vs. `CreateSecondaryCluster`
358
+ # @!attribute [r] database_version
359
+ # @return [::Google::Cloud::AlloyDB::V1beta::DatabaseVersion]
360
+ # Output only. The database engine major version. This is an output-only
361
+ # field and it's populated at the Cluster creation time. This field cannot be
362
+ # changed after cluster creation.
363
+ # @!attribute [rw] network
364
+ # @return [::String]
365
+ # Required. The resource link for the VPC network in which cluster resources
366
+ # are created and from which they are accessible via Private IP. The network
367
+ # must belong to the same project as the cluster. It is specified in the
368
+ # form: "projects/\\{project_number}/global/networks/\\{network_id}". This is
369
+ # required to create a cluster. It can be updated, but it cannot be removed.
370
+ # @!attribute [rw] etag
371
+ # @return [::String]
372
+ # For Resource freshness validation (https://google.aip.dev/154)
373
+ # @!attribute [rw] annotations
374
+ # @return [::Google::Protobuf::Map{::String => ::String}]
375
+ # Annotations to allow client tools to store small amount of arbitrary data.
376
+ # This is distinct from labels.
377
+ # https://google.aip.dev/128
378
+ # @!attribute [r] reconciling
379
+ # @return [::Boolean]
380
+ # Output only. Reconciling (https://google.aip.dev/128#reconciliation).
381
+ # Set to true if the current state of Cluster does not match the user's
382
+ # intended state, and the service is actively updating the resource to
383
+ # reconcile them. This can happen due to user-triggered updates or
384
+ # system actions like failover or maintenance.
385
+ # @!attribute [rw] initial_user
386
+ # @return [::Google::Cloud::AlloyDB::V1beta::UserPassword]
387
+ # Input only. Initial user to setup during cluster creation. Required.
388
+ # If used in `RestoreCluster` this is ignored.
389
+ # @!attribute [rw] automated_backup_policy
390
+ # @return [::Google::Cloud::AlloyDB::V1beta::AutomatedBackupPolicy]
391
+ # The automated backup policy for this cluster.
392
+ #
393
+ # If no policy is provided then the default policy will be used. If backups
394
+ # are supported for the cluster, the default policy takes one backup a day,
395
+ # has a backup window of 1 hour, and retains backups for 14 days.
396
+ # For more information on the defaults, consult the
397
+ # documentation for the message type.
398
+ # @!attribute [rw] ssl_config
399
+ # @return [::Google::Cloud::AlloyDB::V1beta::SslConfig]
400
+ # SSL configuration for this AlloyDB Cluster.
401
+ # @!attribute [rw] encryption_config
402
+ # @return [::Google::Cloud::AlloyDB::V1beta::EncryptionConfig]
403
+ # Optional. The encryption config can be specified to encrypt the data disks
404
+ # and other persistent data resources of a cluster with a
405
+ # customer-managed encryption key (CMEK). When this field is not
406
+ # specified, the cluster will then use default encryption scheme to
407
+ # protect the user data.
408
+ # @!attribute [r] encryption_info
409
+ # @return [::Google::Cloud::AlloyDB::V1beta::EncryptionInfo]
410
+ # Output only. The encryption information for the cluster.
411
+ # @!attribute [rw] continuous_backup_config
412
+ # @return [::Google::Cloud::AlloyDB::V1beta::ContinuousBackupConfig]
413
+ # Optional. Continuous backup configuration for this cluster.
414
+ # @!attribute [r] continuous_backup_info
415
+ # @return [::Google::Cloud::AlloyDB::V1beta::ContinuousBackupInfo]
416
+ # Output only. Continuous backup properties for this cluster.
417
+ # @!attribute [rw] secondary_config
418
+ # @return [::Google::Cloud::AlloyDB::V1beta::Cluster::SecondaryConfig]
419
+ # Cross Region replication config specific to SECONDARY cluster.
420
+ # @!attribute [r] primary_config
421
+ # @return [::Google::Cloud::AlloyDB::V1beta::Cluster::PrimaryConfig]
422
+ # Output only. Cross Region replication config specific to PRIMARY cluster.
423
+ class Cluster
424
+ include ::Google::Protobuf::MessageExts
425
+ extend ::Google::Protobuf::MessageExts::ClassMethods
426
+
427
+ # Configuration information for the secondary cluster. This should be set
428
+ # if and only if the cluster is of type SECONDARY.
429
+ # @!attribute [rw] primary_cluster_name
430
+ # @return [::String]
431
+ # The name of the primary cluster name with the format:
432
+ # * projects/\\{project}/locations/\\{region}/clusters/\\{cluster_id}
433
+ class SecondaryConfig
434
+ include ::Google::Protobuf::MessageExts
435
+ extend ::Google::Protobuf::MessageExts::ClassMethods
436
+ end
437
+
438
+ # Configuration for the primary cluster. It has the list of clusters that are
439
+ # replicating from this cluster. This should be set if and only if the
440
+ # cluster is of type PRIMARY.
441
+ # @!attribute [r] secondary_cluster_names
442
+ # @return [::Array<::String>]
443
+ # Output only. Names of the clusters that are replicating from this
444
+ # cluster.
445
+ class PrimaryConfig
446
+ include ::Google::Protobuf::MessageExts
447
+ extend ::Google::Protobuf::MessageExts::ClassMethods
448
+ end
449
+
450
+ # @!attribute [rw] key
451
+ # @return [::String]
452
+ # @!attribute [rw] value
453
+ # @return [::String]
454
+ class LabelsEntry
455
+ include ::Google::Protobuf::MessageExts
456
+ extend ::Google::Protobuf::MessageExts::ClassMethods
457
+ end
458
+
459
+ # @!attribute [rw] key
460
+ # @return [::String]
461
+ # @!attribute [rw] value
462
+ # @return [::String]
463
+ class AnnotationsEntry
464
+ include ::Google::Protobuf::MessageExts
465
+ extend ::Google::Protobuf::MessageExts::ClassMethods
466
+ end
467
+
468
+ # Cluster State
469
+ module State
470
+ # The state of the cluster is unknown.
471
+ STATE_UNSPECIFIED = 0
472
+
473
+ # The cluster is active and running.
474
+ READY = 1
475
+
476
+ # The cluster is stopped. All instances in the cluster are stopped.
477
+ # Customers can start a stopped cluster at any point and all their
478
+ # instances will come back to life with same names and IP resources. In
479
+ # this state, customer pays for storage.
480
+ # Associated backups could also be present in a stopped cluster.
481
+ STOPPED = 2
482
+
483
+ # The cluster is empty and has no associated resources.
484
+ # All instances, associated storage and backups have been deleted.
485
+ EMPTY = 3
486
+
487
+ # The cluster is being created.
488
+ CREATING = 4
489
+
490
+ # The cluster is being deleted.
491
+ DELETING = 5
492
+
493
+ # The creation of the cluster failed.
494
+ FAILED = 6
495
+
496
+ # The cluster is bootstrapping with data from some other source.
497
+ # Direct mutations to the cluster (e.g. adding read pool) are not allowed.
498
+ BOOTSTRAPPING = 7
499
+
500
+ # The cluster is under maintenance. AlloyDB regularly performs maintenance
501
+ # and upgrades on customer clusters. Updates on the cluster are
502
+ # not allowed while the cluster is in this state.
503
+ MAINTENANCE = 8
504
+
505
+ # The cluster is being promoted.
506
+ PROMOTING = 9
507
+ end
508
+
509
+ # Type of Cluster
510
+ module ClusterType
511
+ # The type of the cluster is unknown.
512
+ CLUSTER_TYPE_UNSPECIFIED = 0
513
+
514
+ # Primary cluster that support read and write operations.
515
+ PRIMARY = 1
516
+
517
+ # Secondary cluster that is replicating from another region.
518
+ # This only supports read.
519
+ SECONDARY = 2
520
+ end
521
+ end
522
+
523
+ # An Instance is a computing unit that an end customer can connect to.
524
+ # It's the main unit of computing resources in AlloyDB.
525
+ # @!attribute [r] name
526
+ # @return [::String]
527
+ # Output only. The name of the instance resource with the format:
528
+ # * projects/\\{project}/locations/\\{region}/clusters/\\{cluster_id}/instances/\\{instance_id}
529
+ # where the cluster and instance ID segments should satisfy the regex
530
+ # expression `[a-z]([a-z0-9-]{0,61}[a-z0-9])?`, e.g. 1-63 characters of
531
+ # lowercase letters, numbers, and dashes, starting with a letter, and ending
532
+ # with a letter or number. For more details see https://google.aip.dev/122.
533
+ # The prefix of the instance resource name is the name of the parent
534
+ # resource:
535
+ # * projects/\\{project}/locations/\\{region}/clusters/\\{cluster_id}
536
+ # @!attribute [rw] display_name
537
+ # @return [::String]
538
+ # User-settable and human-readable display name for the Instance.
539
+ # @!attribute [r] uid
540
+ # @return [::String]
541
+ # Output only. The system-generated UID of the resource. The UID is assigned
542
+ # when the resource is created, and it is retained until it is deleted.
543
+ # @!attribute [r] create_time
544
+ # @return [::Google::Protobuf::Timestamp]
545
+ # Output only. Create time stamp
546
+ # @!attribute [r] update_time
547
+ # @return [::Google::Protobuf::Timestamp]
548
+ # Output only. Update time stamp
549
+ # @!attribute [r] delete_time
550
+ # @return [::Google::Protobuf::Timestamp]
551
+ # Output only. Delete time stamp
552
+ # @!attribute [rw] labels
553
+ # @return [::Google::Protobuf::Map{::String => ::String}]
554
+ # Labels as key value pairs
555
+ # @!attribute [r] state
556
+ # @return [::Google::Cloud::AlloyDB::V1beta::Instance::State]
557
+ # Output only. The current serving state of the instance.
558
+ # @!attribute [rw] instance_type
559
+ # @return [::Google::Cloud::AlloyDB::V1beta::Instance::InstanceType]
560
+ # Required. The type of the instance. Specified at creation time.
561
+ # @!attribute [rw] machine_config
562
+ # @return [::Google::Cloud::AlloyDB::V1beta::Instance::MachineConfig]
563
+ # Configurations for the machines that host the underlying
564
+ # database engine.
565
+ # @!attribute [rw] availability_type
566
+ # @return [::Google::Cloud::AlloyDB::V1beta::Instance::AvailabilityType]
567
+ # Availability type of an Instance.
568
+ # Defaults to REGIONAL for both primary and read instances.
569
+ # Note that primary and read instances can have different availability types.
570
+ # @!attribute [rw] gce_zone
571
+ # @return [::String]
572
+ # The Compute Engine zone that the instance should serve from, per
573
+ # https://cloud.google.com/compute/docs/regions-zones
574
+ # This can ONLY be specified for ZONAL instances.
575
+ # If present for a REGIONAL instance, an error will be thrown.
576
+ # If this is absent for a ZONAL instance, instance is created in a random
577
+ # zone with available capacity.
578
+ # @!attribute [rw] database_flags
579
+ # @return [::Google::Protobuf::Map{::String => ::String}]
580
+ # Database flags. Set at instance level.
581
+ # * They are copied from primary instance on read instance creation.
582
+ # * Read instances can set new or override existing flags that are relevant
583
+ # for reads, e.g. for enabling columnar cache on a read instance. Flags
584
+ # set on read instance may or may not be present on primary.
585
+ #
586
+ #
587
+ # This is a list of "key": "value" pairs.
588
+ # "key": The name of the flag. These flags are passed at instance setup time,
589
+ # so include both server options and system variables for Postgres. Flags are
590
+ # specified with underscores, not hyphens.
591
+ # "value": The value of the flag. Booleans are set to **on** for true
592
+ # and **off** for false. This field must be omitted if the flag
593
+ # doesn't take a value.
594
+ # @!attribute [r] writable_node
595
+ # @return [::Google::Cloud::AlloyDB::V1beta::Instance::Node]
596
+ # Output only. This is set for the read-write VM of the PRIMARY instance
597
+ # only.
598
+ # @!attribute [r] nodes
599
+ # @return [::Array<::Google::Cloud::AlloyDB::V1beta::Instance::Node>]
600
+ # Output only. List of available read-only VMs in this instance, including
601
+ # the standby for a PRIMARY instance.
602
+ # @!attribute [rw] query_insights_config
603
+ # @return [::Google::Cloud::AlloyDB::V1beta::Instance::QueryInsightsInstanceConfig]
604
+ # Configuration for query insights.
605
+ # @!attribute [rw] read_pool_config
606
+ # @return [::Google::Cloud::AlloyDB::V1beta::Instance::ReadPoolConfig]
607
+ # Read pool specific config.
608
+ # @!attribute [r] ip_address
609
+ # @return [::String]
610
+ # Output only. The IP address for the Instance.
611
+ # This is the connection endpoint for an end-user application.
612
+ # @!attribute [r] reconciling
613
+ # @return [::Boolean]
614
+ # Output only. Reconciling (https://google.aip.dev/128#reconciliation).
615
+ # Set to true if the current state of Instance does not match the user's
616
+ # intended state, and the service is actively updating the resource to
617
+ # reconcile them. This can happen due to user-triggered updates or
618
+ # system actions like failover or maintenance.
619
+ # @!attribute [rw] etag
620
+ # @return [::String]
621
+ # For Resource freshness validation (https://google.aip.dev/154)
622
+ # @!attribute [rw] annotations
623
+ # @return [::Google::Protobuf::Map{::String => ::String}]
624
+ # Annotations to allow client tools to store small amount of arbitrary data.
625
+ # This is distinct from labels.
626
+ # https://google.aip.dev/128
627
+ class Instance
628
+ include ::Google::Protobuf::MessageExts
629
+ extend ::Google::Protobuf::MessageExts::ClassMethods
630
+
631
+ # MachineConfig describes the configuration of a machine.
632
+ # @!attribute [rw] cpu_count
633
+ # @return [::Integer]
634
+ # The number of CPU's in the VM instance.
635
+ class MachineConfig
636
+ include ::Google::Protobuf::MessageExts
637
+ extend ::Google::Protobuf::MessageExts::ClassMethods
638
+ end
639
+
640
+ # Details of a single node in the instance.
641
+ # Nodes in an AlloyDB instance are ephemereal, they can change during
642
+ # update, failover, autohealing and resize operations.
643
+ # @!attribute [rw] zone_id
644
+ # @return [::String]
645
+ # The Compute Engine zone of the VM e.g. "us-central1-b".
646
+ # @!attribute [rw] id
647
+ # @return [::String]
648
+ # The identifier of the VM e.g. "test-read-0601-407e52be-ms3l".
649
+ # @!attribute [rw] ip
650
+ # @return [::String]
651
+ # The private IP address of the VM e.g. "10.57.0.34".
652
+ # @!attribute [rw] state
653
+ # @return [::String]
654
+ # Determined by state of the compute VM and postgres-service health.
655
+ # Compute VM state can have values listed in
656
+ # https://cloud.google.com/compute/docs/instances/instance-life-cycle and
657
+ # postgres-service health can have values: HEALTHY and UNHEALTHY.
658
+ class Node
659
+ include ::Google::Protobuf::MessageExts
660
+ extend ::Google::Protobuf::MessageExts::ClassMethods
661
+ end
662
+
663
+ # QueryInsights Instance specific configuration.
664
+ # @!attribute [rw] record_application_tags
665
+ # @return [::Boolean]
666
+ # Record application tags for an instance.
667
+ # This flag is turned "on" by default.
668
+ # @!attribute [rw] record_client_address
669
+ # @return [::Boolean]
670
+ # Record client address for an instance. Client address is PII information.
671
+ # This flag is turned "on" by default.
672
+ # @!attribute [rw] query_string_length
673
+ # @return [::Integer]
674
+ # Query string length. The default value is 1024.
675
+ # Any integer between 256 and 4500 is considered valid.
676
+ # @!attribute [rw] query_plans_per_minute
677
+ # @return [::Integer]
678
+ # Number of query execution plans captured by Insights per minute
679
+ # for all queries combined. The default value is 5.
680
+ # Any integer between 0 and 20 is considered valid.
681
+ class QueryInsightsInstanceConfig
682
+ include ::Google::Protobuf::MessageExts
683
+ extend ::Google::Protobuf::MessageExts::ClassMethods
684
+ end
685
+
686
+ # Configuration for a read pool instance.
687
+ # @!attribute [rw] node_count
688
+ # @return [::Integer]
689
+ # Read capacity, i.e. number of nodes in a read pool instance.
690
+ class ReadPoolConfig
691
+ include ::Google::Protobuf::MessageExts
692
+ extend ::Google::Protobuf::MessageExts::ClassMethods
693
+ end
694
+
695
+ # @!attribute [rw] key
696
+ # @return [::String]
697
+ # @!attribute [rw] value
698
+ # @return [::String]
699
+ class LabelsEntry
700
+ include ::Google::Protobuf::MessageExts
701
+ extend ::Google::Protobuf::MessageExts::ClassMethods
702
+ end
703
+
704
+ # @!attribute [rw] key
705
+ # @return [::String]
706
+ # @!attribute [rw] value
707
+ # @return [::String]
708
+ class DatabaseFlagsEntry
709
+ include ::Google::Protobuf::MessageExts
710
+ extend ::Google::Protobuf::MessageExts::ClassMethods
711
+ end
712
+
713
+ # @!attribute [rw] key
714
+ # @return [::String]
715
+ # @!attribute [rw] value
716
+ # @return [::String]
717
+ class AnnotationsEntry
718
+ include ::Google::Protobuf::MessageExts
719
+ extend ::Google::Protobuf::MessageExts::ClassMethods
720
+ end
721
+
722
+ # Instance State
723
+ module State
724
+ # The state of the instance is unknown.
725
+ STATE_UNSPECIFIED = 0
726
+
727
+ # The instance is active and running.
728
+ READY = 1
729
+
730
+ # The instance is stopped. Instance name and IP resources are preserved.
731
+ STOPPED = 2
732
+
733
+ # The instance is being created.
734
+ CREATING = 3
735
+
736
+ # The instance is being deleted.
737
+ DELETING = 4
738
+
739
+ # The instance is down for maintenance.
740
+ MAINTENANCE = 5
741
+
742
+ # The creation of the instance failed or a fatal error occurred during
743
+ # an operation on the instance.
744
+ # Note: Instances in this state would tried to be auto-repaired. And
745
+ # Customers should be able to restart, update or delete these instances.
746
+ FAILED = 6
747
+
748
+ # Index 7 is used in the producer apis for ROLLED_BACK state. Keeping that
749
+ # index unused in case that state also needs to exposed via consumer apis
750
+ # in future.
751
+ # The instance has been configured to sync data from some other source.
752
+ BOOTSTRAPPING = 8
753
+
754
+ # The instance is being promoted.
755
+ PROMOTING = 9
756
+ end
757
+
758
+ # Type of an Instance
759
+ module InstanceType
760
+ # The type of the instance is unknown.
761
+ INSTANCE_TYPE_UNSPECIFIED = 0
762
+
763
+ # PRIMARY instances support read and write operations.
764
+ PRIMARY = 1
765
+
766
+ # READ POOL instances support read operations only. Each read pool instance
767
+ # consists of one or more homogeneous nodes.
768
+ # * Read pool of size 1 can only have zonal availability.
769
+ # * Read pools with node count of 2 or more can have regional
770
+ # availability (nodes are present in 2 or more zones in a region).
771
+ READ_POOL = 2
772
+
773
+ # SECONDARY instances support read operations only. SECONDARY instance
774
+ # is a cross-region read replica
775
+ SECONDARY = 3
776
+ end
777
+
778
+ # The Availability type of an instance. Potential values:
779
+ # <br><b>ZONAL</b>: The instance serves data from only one zone.
780
+ # Outages in that zone affect instance availability.
781
+ # <br><b>REGIONAL</b>: The instance can serve data from more than one zone
782
+ # in a region (it is highly available).
783
+ module AvailabilityType
784
+ # This is an unknown Availability type.
785
+ AVAILABILITY_TYPE_UNSPECIFIED = 0
786
+
787
+ # Zonal available instance.
788
+ ZONAL = 1
789
+
790
+ # Regional (or Highly) available instance.
791
+ REGIONAL = 2
792
+ end
793
+ end
794
+
795
+ # ConnectionInfo singleton resource.
796
+ # https://google.aip.dev/156
797
+ # @!attribute [rw] name
798
+ # @return [::String]
799
+ # The name of the ConnectionInfo singleton resource, e.g.:
800
+ # projects/\\{project}/locations/\\{location}/clusters/*/instances/*/connectionInfo
801
+ # This field currently has no semantic meaning.
802
+ # @!attribute [r] ip_address
803
+ # @return [::String]
804
+ # Output only. The IP address for the Instance.
805
+ # This is the connection endpoint for an end-user application.
806
+ # @!attribute [r] pem_certificate_chain
807
+ # @return [::Array<::String>]
808
+ # Output only. The pem-encoded chain that may be used to verify the X.509
809
+ # certificate. Expected to be in issuer-to-root order according to RFC 5246.
810
+ # @!attribute [r] instance_uid
811
+ # @return [::String]
812
+ # Output only. The unique ID of the Instance.
813
+ class ConnectionInfo
814
+ include ::Google::Protobuf::MessageExts
815
+ extend ::Google::Protobuf::MessageExts::ClassMethods
816
+ end
817
+
818
+ # Message describing Backup object
819
+ # @!attribute [r] name
820
+ # @return [::String]
821
+ # Output only. The name of the backup resource with the format:
822
+ # * projects/\\{project}/locations/\\{region}/backups/\\{backup_id}
823
+ # where the cluster and backup ID segments should satisfy the regex
824
+ # expression `[a-z]([a-z0-9-]{0,61}[a-z0-9])?`, e.g. 1-63 characters of
825
+ # lowercase letters, numbers, and dashes, starting with a letter, and ending
826
+ # with a letter or number. For more details see https://google.aip.dev/122.
827
+ # The prefix of the backup resource name is the name of the parent
828
+ # resource:
829
+ # * projects/\\{project}/locations/\\{region}
830
+ # @!attribute [rw] display_name
831
+ # @return [::String]
832
+ # User-settable and human-readable display name for the Backup.
833
+ # @!attribute [r] uid
834
+ # @return [::String]
835
+ # Output only. The system-generated UID of the resource. The UID is assigned
836
+ # when the resource is created, and it is retained until it is deleted.
837
+ # @!attribute [r] create_time
838
+ # @return [::Google::Protobuf::Timestamp]
839
+ # Output only. Create time stamp
840
+ # @!attribute [r] update_time
841
+ # @return [::Google::Protobuf::Timestamp]
842
+ # Output only. Update time stamp
843
+ # @!attribute [r] delete_time
844
+ # @return [::Google::Protobuf::Timestamp]
845
+ # Output only. Delete time stamp
846
+ # @!attribute [rw] labels
847
+ # @return [::Google::Protobuf::Map{::String => ::String}]
848
+ # Labels as key value pairs
849
+ # @!attribute [r] state
850
+ # @return [::Google::Cloud::AlloyDB::V1beta::Backup::State]
851
+ # Output only. The current state of the backup.
852
+ # @!attribute [rw] type
853
+ # @return [::Google::Cloud::AlloyDB::V1beta::Backup::Type]
854
+ # The backup type, which suggests the trigger for the backup.
855
+ # @!attribute [rw] description
856
+ # @return [::String]
857
+ # User-provided description of the backup.
858
+ # @!attribute [r] cluster_uid
859
+ # @return [::String]
860
+ # Output only. The system-generated UID of the cluster which was used to
861
+ # create this resource.
862
+ # @!attribute [rw] cluster_name
863
+ # @return [::String]
864
+ # Required. The full resource name of the backup source cluster
865
+ # (e.g., projects/<project>/locations/<location>/clusters/<cluster_id>).
866
+ # @!attribute [r] reconciling
867
+ # @return [::Boolean]
868
+ # Output only. Reconciling (https://google.aip.dev/128#reconciliation), if
869
+ # true, indicates that the service is actively updating the resource. This
870
+ # can happen due to user-triggered updates or system actions like failover or
871
+ # maintenance.
872
+ # @!attribute [rw] encryption_config
873
+ # @return [::Google::Cloud::AlloyDB::V1beta::EncryptionConfig]
874
+ # Optional. The encryption config can be specified to encrypt the
875
+ # backup with a customer-managed encryption key (CMEK). When this field is
876
+ # not specified, the backup will then use default encryption scheme to
877
+ # protect the user data.
878
+ # @!attribute [r] encryption_info
879
+ # @return [::Google::Cloud::AlloyDB::V1beta::EncryptionInfo]
880
+ # Output only. The encryption information for the backup.
881
+ # @!attribute [rw] etag
882
+ # @return [::String]
883
+ # For Resource freshness validation (https://google.aip.dev/154)
884
+ # @!attribute [rw] annotations
885
+ # @return [::Google::Protobuf::Map{::String => ::String}]
886
+ # Annotations to allow client tools to store small amount of arbitrary data.
887
+ # This is distinct from labels.
888
+ # https://google.aip.dev/128
889
+ # @!attribute [r] size_bytes
890
+ # @return [::Integer]
891
+ # Output only. The size of the backup in bytes.
892
+ # @!attribute [r] expiry_time
893
+ # @return [::Google::Protobuf::Timestamp]
894
+ # Output only. The time at which after the backup is eligible to be garbage
895
+ # collected. It is the duration specified by the backup's retention policy,
896
+ # added to the backup's create_time.
897
+ class Backup
898
+ include ::Google::Protobuf::MessageExts
899
+ extend ::Google::Protobuf::MessageExts::ClassMethods
900
+
901
+ # @!attribute [rw] key
902
+ # @return [::String]
903
+ # @!attribute [rw] value
904
+ # @return [::String]
905
+ class LabelsEntry
906
+ include ::Google::Protobuf::MessageExts
907
+ extend ::Google::Protobuf::MessageExts::ClassMethods
908
+ end
909
+
910
+ # @!attribute [rw] key
911
+ # @return [::String]
912
+ # @!attribute [rw] value
913
+ # @return [::String]
914
+ class AnnotationsEntry
915
+ include ::Google::Protobuf::MessageExts
916
+ extend ::Google::Protobuf::MessageExts::ClassMethods
917
+ end
918
+
919
+ # Backup State
920
+ module State
921
+ # The state of the backup is unknown.
922
+ STATE_UNSPECIFIED = 0
923
+
924
+ # The backup is ready.
925
+ READY = 1
926
+
927
+ # The backup is creating.
928
+ CREATING = 2
929
+
930
+ # The backup failed.
931
+ FAILED = 3
932
+
933
+ # The backup is being deleted.
934
+ DELETING = 4
935
+ end
936
+
937
+ # Backup Type
938
+ module Type
939
+ # Backup Type is unknown.
940
+ TYPE_UNSPECIFIED = 0
941
+
942
+ # ON_DEMAND backups that were triggered by the customer (e.g., not
943
+ # AUTOMATED).
944
+ ON_DEMAND = 1
945
+
946
+ # AUTOMATED backups triggered by the automated backups scheduler pursuant
947
+ # to an automated backup policy.
948
+ AUTOMATED = 2
949
+
950
+ # CONTINUOUS backups triggered by the automated backups scheduler
951
+ # due to a continuous backup policy.
952
+ CONTINUOUS = 3
953
+ end
954
+ end
955
+
956
+ # SupportedDatabaseFlag gives general information about a database flag,
957
+ # like type and allowed values. This is a static value that is defined
958
+ # on the server side, and it cannot be modified by callers.
959
+ # To set the Database flags on a particular Instance, a caller should modify
960
+ # the Instance.database_flags field.
961
+ # @!attribute [rw] string_restrictions
962
+ # @return [::Google::Cloud::AlloyDB::V1beta::SupportedDatabaseFlag::StringRestrictions]
963
+ # Restriction on STRING type value.
964
+ # @!attribute [rw] integer_restrictions
965
+ # @return [::Google::Cloud::AlloyDB::V1beta::SupportedDatabaseFlag::IntegerRestrictions]
966
+ # Restriction on INTEGER type value.
967
+ # @!attribute [rw] name
968
+ # @return [::String]
969
+ # The name of the flag resource, following Google Cloud conventions, e.g.:
970
+ # * projects/\\{project}/locations/\\{location}/flags/\\{flag}
971
+ # This field currently has no semantic meaning.
972
+ # @!attribute [rw] flag_name
973
+ # @return [::String]
974
+ # The name of the database flag, e.g. "max_allowed_packets".
975
+ # The is a possibly key for the Instance.database_flags map field.
976
+ # @!attribute [rw] value_type
977
+ # @return [::Google::Cloud::AlloyDB::V1beta::SupportedDatabaseFlag::ValueType]
978
+ # @!attribute [rw] accepts_multiple_values
979
+ # @return [::Boolean]
980
+ # Whether the database flag accepts multiple values. If true,
981
+ # a comma-separated list of stringified values may be specified.
982
+ # @!attribute [rw] supported_db_versions
983
+ # @return [::Array<::Google::Cloud::AlloyDB::V1beta::DatabaseVersion>]
984
+ # Major database engine versions for which this flag is supported.
985
+ # @!attribute [rw] requires_db_restart
986
+ # @return [::Boolean]
987
+ # Whether setting or updating this flag on an Instance requires a database
988
+ # restart. If a flag that requires database restart is set, the backend
989
+ # will automatically restart the database (making sure to satisfy any
990
+ # availability SLO's).
991
+ class SupportedDatabaseFlag
992
+ include ::Google::Protobuf::MessageExts
993
+ extend ::Google::Protobuf::MessageExts::ClassMethods
994
+
995
+ # Restrictions on STRING type values
996
+ # @!attribute [rw] allowed_values
997
+ # @return [::Array<::String>]
998
+ # The list of allowed values, if bounded. This field will be empty
999
+ # if there is a unbounded number of allowed values.
1000
+ class StringRestrictions
1001
+ include ::Google::Protobuf::MessageExts
1002
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1003
+ end
1004
+
1005
+ # Restrictions on INTEGER type values.
1006
+ # @!attribute [rw] min_value
1007
+ # @return [::Google::Protobuf::Int64Value]
1008
+ # The minimum value that can be specified, if applicable.
1009
+ # @!attribute [rw] max_value
1010
+ # @return [::Google::Protobuf::Int64Value]
1011
+ # The maximum value that can be specified, if applicable.
1012
+ class IntegerRestrictions
1013
+ include ::Google::Protobuf::MessageExts
1014
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1015
+ end
1016
+
1017
+ # ValueType describes the semantic type of the value that the flag accepts.
1018
+ # Regardless of the ValueType, the Instance.database_flags field accepts the
1019
+ # stringified version of the value, i.e. "20" or "3.14".
1020
+ module ValueType
1021
+ # This is an unknown flag type.
1022
+ VALUE_TYPE_UNSPECIFIED = 0
1023
+
1024
+ # String type flag.
1025
+ STRING = 1
1026
+
1027
+ # Integer type flag.
1028
+ INTEGER = 2
1029
+
1030
+ # Float type flag.
1031
+ FLOAT = 3
1032
+
1033
+ # Denotes that the flag does not accept any values.
1034
+ NONE = 4
1035
+ end
1036
+ end
1037
+
1038
+ # The supported database engine versions.
1039
+ module DatabaseVersion
1040
+ # This is an unknown database version.
1041
+ DATABASE_VERSION_UNSPECIFIED = 0
1042
+
1043
+ # DEPRECATED - The database version is Postgres 13.
1044
+ POSTGRES_13 = 1
1045
+
1046
+ # The database version is Postgres 14.
1047
+ POSTGRES_14 = 2
1048
+ end
1049
+
1050
+ # View on Instance. Pass this enum to rpcs that returns an Instance message to
1051
+ # control which subsets of fields to get.
1052
+ module InstanceView
1053
+ # INSTANCE_VIEW_UNSPECIFIED Not specified, equivalent to BASIC.
1054
+ INSTANCE_VIEW_UNSPECIFIED = 0
1055
+
1056
+ # BASIC server responses for a primary or read instance include all the
1057
+ # relevant instance details, excluding the details of each node in the
1058
+ # instance. The default value.
1059
+ INSTANCE_VIEW_BASIC = 1
1060
+
1061
+ # FULL response is equivalent to BASIC for primary instance (for now).
1062
+ # For read pool instance, this includes details of each node in the pool.
1063
+ INSTANCE_VIEW_FULL = 2
1064
+ end
1065
+ end
1066
+ end
1067
+ end
1068
+ end