google-apis-alloydb_v1beta 0.18.0 → 0.19.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.
@@ -241,6 +241,13 @@ module Google
241
241
  # @return [String]
242
242
  attr_accessor :state
243
243
 
244
+ # Optional. Input only. Immutable. Tag keys/values directly bound to this
245
+ # resource. For example: ``` "123/environment": "production", "123/costCenter": "
246
+ # marketing" ```
247
+ # Corresponds to the JSON property `tags`
248
+ # @return [Hash<String,String>]
249
+ attr_accessor :tags
250
+
244
251
  # The backup type, which suggests the trigger for the backup.
245
252
  # Corresponds to the JSON property `type`
246
253
  # @return [String]
@@ -282,6 +289,7 @@ module Google
282
289
  @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
283
290
  @size_bytes = args[:size_bytes] if args.key?(:size_bytes)
284
291
  @state = args[:state] if args.key?(:state)
292
+ @tags = args[:tags] if args.key?(:tags)
285
293
  @type = args[:type] if args.key?(:type)
286
294
  @uid = args[:uid] if args.key?(:uid)
287
295
  @update_time = args[:update_time] if args.key?(:update_time)
@@ -369,6 +377,38 @@ module Google
369
377
  end
370
378
  end
371
379
 
380
+ # The source CloudSQL backup resource.
381
+ class CloudSqlBackupRunSource
382
+ include Google::Apis::Core::Hashable
383
+
384
+ # Required. The CloudSQL backup run ID.
385
+ # Corresponds to the JSON property `backupRunId`
386
+ # @return [Fixnum]
387
+ attr_accessor :backup_run_id
388
+
389
+ # Required. The CloudSQL instance ID.
390
+ # Corresponds to the JSON property `instanceId`
391
+ # @return [String]
392
+ attr_accessor :instance_id
393
+
394
+ # The project ID of the source CloudSQL instance. This should be the same as the
395
+ # AlloyDB cluster's project.
396
+ # Corresponds to the JSON property `project`
397
+ # @return [String]
398
+ attr_accessor :project
399
+
400
+ def initialize(**args)
401
+ update!(**args)
402
+ end
403
+
404
+ # Update properties of this object
405
+ def update!(**args)
406
+ @backup_run_id = args[:backup_run_id] if args.key?(:backup_run_id)
407
+ @instance_id = args[:instance_id] if args.key?(:instance_id)
408
+ @project = args[:project] if args.key?(:project)
409
+ end
410
+ end
411
+
372
412
  # A cluster is a collection of regional AlloyDB resources. It can include a
373
413
  # primary instance and one or more read pool instances. All cluster resources
374
414
  # share a storage layer, which scales as needed.
@@ -393,6 +433,11 @@ module Google
393
433
  # @return [Google::Apis::AlloydbV1beta::BackupSource]
394
434
  attr_accessor :backup_source
395
435
 
436
+ # The source CloudSQL backup resource.
437
+ # Corresponds to the JSON property `cloudsqlBackupRunSource`
438
+ # @return [Google::Apis::AlloydbV1beta::CloudSqlBackupRunSource]
439
+ attr_accessor :cloudsql_backup_run_source
440
+
396
441
  # Output only. The type of the cluster. This is an output-only field and it's
397
442
  # populated at the Cluster creation time or the Cluster promotion time. The
398
443
  # cluster type is determined by which RPC was used to create the cluster (i.e. `
@@ -560,6 +605,13 @@ module Google
560
605
  # @return [String]
561
606
  attr_accessor :subscription_type
562
607
 
608
+ # Optional. Input only. Immutable. Tag keys/values directly bound to this
609
+ # resource. For example: ``` "123/environment": "production", "123/costCenter": "
610
+ # marketing" ```
611
+ # Corresponds to the JSON property `tags`
612
+ # @return [Hash<String,String>]
613
+ attr_accessor :tags
614
+
563
615
  # Contains information and all metadata related to TRIAL clusters.
564
616
  # Corresponds to the JSON property `trialMetadata`
565
617
  # @return [Google::Apis::AlloydbV1beta::TrialMetadata]
@@ -585,6 +637,7 @@ module Google
585
637
  @annotations = args[:annotations] if args.key?(:annotations)
586
638
  @automated_backup_policy = args[:automated_backup_policy] if args.key?(:automated_backup_policy)
587
639
  @backup_source = args[:backup_source] if args.key?(:backup_source)
640
+ @cloudsql_backup_run_source = args[:cloudsql_backup_run_source] if args.key?(:cloudsql_backup_run_source)
588
641
  @cluster_type = args[:cluster_type] if args.key?(:cluster_type)
589
642
  @continuous_backup_config = args[:continuous_backup_config] if args.key?(:continuous_backup_config)
590
643
  @continuous_backup_info = args[:continuous_backup_info] if args.key?(:continuous_backup_info)
@@ -612,12 +665,64 @@ module Google
612
665
  @ssl_config = args[:ssl_config] if args.key?(:ssl_config)
613
666
  @state = args[:state] if args.key?(:state)
614
667
  @subscription_type = args[:subscription_type] if args.key?(:subscription_type)
668
+ @tags = args[:tags] if args.key?(:tags)
615
669
  @trial_metadata = args[:trial_metadata] if args.key?(:trial_metadata)
616
670
  @uid = args[:uid] if args.key?(:uid)
617
671
  @update_time = args[:update_time] if args.key?(:update_time)
618
672
  end
619
673
  end
620
674
 
675
+ # Upgrade details of a cluster. This cluster can be primary or secondary.
676
+ class ClusterUpgradeDetails
677
+ include Google::Apis::Core::Hashable
678
+
679
+ # Cluster type which can either be primary or secondary.
680
+ # Corresponds to the JSON property `clusterType`
681
+ # @return [String]
682
+ attr_accessor :cluster_type
683
+
684
+ # Database version of the cluster after the upgrade operation. This will be the
685
+ # target version if the upgrade was successful otherwise it remains the same as
686
+ # that before the upgrade operation.
687
+ # Corresponds to the JSON property `databaseVersion`
688
+ # @return [String]
689
+ attr_accessor :database_version
690
+
691
+ # Upgrade details of the instances directly associated with this cluster.
692
+ # Corresponds to the JSON property `instanceUpgradeDetails`
693
+ # @return [Array<Google::Apis::AlloydbV1beta::InstanceUpgradeDetails>]
694
+ attr_accessor :instance_upgrade_details
695
+
696
+ # Normalized name of the cluster
697
+ # Corresponds to the JSON property `name`
698
+ # @return [String]
699
+ attr_accessor :name
700
+
701
+ # Array containing stage info associated with this cluster.
702
+ # Corresponds to the JSON property `stageInfo`
703
+ # @return [Array<Google::Apis::AlloydbV1beta::StageInfo>]
704
+ attr_accessor :stage_info
705
+
706
+ # Upgrade status of the cluster.
707
+ # Corresponds to the JSON property `upgradeStatus`
708
+ # @return [String]
709
+ attr_accessor :upgrade_status
710
+
711
+ def initialize(**args)
712
+ update!(**args)
713
+ end
714
+
715
+ # Update properties of this object
716
+ def update!(**args)
717
+ @cluster_type = args[:cluster_type] if args.key?(:cluster_type)
718
+ @database_version = args[:database_version] if args.key?(:database_version)
719
+ @instance_upgrade_details = args[:instance_upgrade_details] if args.key?(:instance_upgrade_details)
720
+ @name = args[:name] if args.key?(:name)
721
+ @stage_info = args[:stage_info] if args.key?(:stage_info)
722
+ @upgrade_status = args[:upgrade_status] if args.key?(:upgrade_status)
723
+ end
724
+ end
725
+
621
726
  # ConnectionInfo singleton resource. https://google.aip.dev/156
622
727
  class ConnectionInfo
623
728
  include Google::Apis::Core::Hashable
@@ -777,6 +882,50 @@ module Google
777
882
  end
778
883
  end
779
884
 
885
+ # Options for exporting data in CSV format. For now, we only support a query to
886
+ # get the data that needs to be exported.
887
+ class CsvExportOptions
888
+ include Google::Apis::Core::Hashable
889
+
890
+ # Optional. Specifies the character that should appear before a data character
891
+ # that needs to be escaped. The default is the same as quote character. The
892
+ # value of this argument has to be a character in Hex ASCII Code.
893
+ # Corresponds to the JSON property `escapeCharacter`
894
+ # @return [String]
895
+ attr_accessor :escape_character
896
+
897
+ # Optional. Specifies the character that separates columns within each row (line)
898
+ # of the file. The default is comma. The value of this argument has to be a
899
+ # character in Hex ASCII Code.
900
+ # Corresponds to the JSON property `fieldDelimiter`
901
+ # @return [String]
902
+ attr_accessor :field_delimiter
903
+
904
+ # Optional. Specifies the quoting character to be used when a data value is
905
+ # quoted. The default is double-quote. The value of this argument has to be a
906
+ # character in Hex ASCII Code.
907
+ # Corresponds to the JSON property `quoteCharacter`
908
+ # @return [String]
909
+ attr_accessor :quote_character
910
+
911
+ # Required. The select_query used to extract the data.
912
+ # Corresponds to the JSON property `selectQuery`
913
+ # @return [String]
914
+ attr_accessor :select_query
915
+
916
+ def initialize(**args)
917
+ update!(**args)
918
+ end
919
+
920
+ # Update properties of this object
921
+ def update!(**args)
922
+ @escape_character = args[:escape_character] if args.key?(:escape_character)
923
+ @field_delimiter = args[:field_delimiter] if args.key?(:field_delimiter)
924
+ @quote_character = args[:quote_character] if args.key?(:quote_character)
925
+ @select_query = args[:select_query] if args.key?(:select_query)
926
+ end
927
+ end
928
+
780
929
  # A generic empty message that you can re-use to avoid defining duplicated empty
781
930
  # messages in your APIs. A typical example is to use it as the request or the
782
931
  # response type of an API method. For instance: service Foo ` rpc Bar(google.
@@ -841,26 +990,67 @@ module Google
841
990
  end
842
991
  end
843
992
 
993
+ # Export cluster request.
994
+ class ExportClusterRequest
995
+ include Google::Apis::Core::Hashable
996
+
997
+ # Options for exporting data in CSV format. For now, we only support a query to
998
+ # get the data that needs to be exported.
999
+ # Corresponds to the JSON property `csvExportOptions`
1000
+ # @return [Google::Apis::AlloydbV1beta::CsvExportOptions]
1001
+ attr_accessor :csv_export_options
1002
+
1003
+ # Required. Name of the database where the query will be executed. Note - Value
1004
+ # provided should be the same as expected from `SELECT current_database();` and
1005
+ # NOT as a resource reference.
1006
+ # Corresponds to the JSON property `database`
1007
+ # @return [String]
1008
+ attr_accessor :database
1009
+
1010
+ # Destination for Export. Export will be done to cloud storage.
1011
+ # Corresponds to the JSON property `gcsDestination`
1012
+ # @return [Google::Apis::AlloydbV1beta::GcsDestination]
1013
+ attr_accessor :gcs_destination
1014
+
1015
+ # Options for exporting data in SQL format.
1016
+ # Corresponds to the JSON property `sqlExportOptions`
1017
+ # @return [Google::Apis::AlloydbV1beta::SqlExportOptions]
1018
+ attr_accessor :sql_export_options
1019
+
1020
+ def initialize(**args)
1021
+ update!(**args)
1022
+ end
1023
+
1024
+ # Update properties of this object
1025
+ def update!(**args)
1026
+ @csv_export_options = args[:csv_export_options] if args.key?(:csv_export_options)
1027
+ @database = args[:database] if args.key?(:database)
1028
+ @gcs_destination = args[:gcs_destination] if args.key?(:gcs_destination)
1029
+ @sql_export_options = args[:sql_export_options] if args.key?(:sql_export_options)
1030
+ end
1031
+ end
1032
+
844
1033
  # Message for triggering failover on an Instance
845
1034
  class FailoverInstanceRequest
846
1035
  include Google::Apis::Core::Hashable
847
1036
 
848
1037
  # Optional. An optional request ID to identify requests. Specify a unique
849
- # request ID so that if you must retry your request, the server will know to
850
- # ignore the request if it has already been completed. The server will guarantee
851
- # that for at least 60 minutes after the first request. For example, consider a
852
- # situation where you make an initial request and the request times out. If you
853
- # make the request again with the same request ID, the server can check if
854
- # original operation with the same request ID was received, and if so, will
855
- # ignore the second request. This prevents clients from accidentally creating
856
- # duplicate commitments. The request ID must be a valid UUID with the exception
857
- # that zero UUID is not supported (00000000-0000-0000-0000-000000000000).
1038
+ # request ID so that if you must retry your request, the server ignores the
1039
+ # request if it has already been completed. The server guarantees that for at
1040
+ # least 60 minutes since the first request. For example, consider a situation
1041
+ # where you make an initial request and the request times out. If you make the
1042
+ # request again with the same request ID, the server can check if the original
1043
+ # operation with the same request ID was received, and if so, ignores the second
1044
+ # request. This prevents clients from accidentally creating duplicate
1045
+ # commitments. The request ID must be a valid UUID with the exception that zero
1046
+ # UUID is not supported (00000000-0000-0000-0000-000000000000).
858
1047
  # Corresponds to the JSON property `requestId`
859
1048
  # @return [String]
860
1049
  attr_accessor :request_id
861
1050
 
862
- # Optional. If set, performs request validation (e.g. permission checks and any
863
- # other type of validation), but do not actually execute the failover.
1051
+ # Optional. If set, performs request validation, for example, permission checks
1052
+ # and any other type of validation, but does not actually execute the create
1053
+ # request.
864
1054
  # Corresponds to the JSON property `validateOnly`
865
1055
  # @return [Boolean]
866
1056
  attr_accessor :validate_only
@@ -877,6 +1067,27 @@ module Google
877
1067
  end
878
1068
  end
879
1069
 
1070
+ # Destination for Export. Export will be done to cloud storage.
1071
+ class GcsDestination
1072
+ include Google::Apis::Core::Hashable
1073
+
1074
+ # Required. The path to the file in Google Cloud Storage where the export will
1075
+ # be stored. The URI is in the form `gs://bucketName/fileName`. If the file
1076
+ # already exists, the request succeeds, but the operation fails.
1077
+ # Corresponds to the JSON property `uri`
1078
+ # @return [String]
1079
+ attr_accessor :uri
1080
+
1081
+ def initialize(**args)
1082
+ update!(**args)
1083
+ end
1084
+
1085
+ # Update properties of this object
1086
+ def update!(**args)
1087
+ @uri = args[:uri] if args.key?(:uri)
1088
+ end
1089
+ end
1090
+
880
1091
  # Cluster level configuration parameters related to the Gemini in Databases add-
881
1092
  # on.
882
1093
  class GeminiClusterConfig
@@ -1003,24 +1214,28 @@ module Google
1003
1214
  class GoogleTypeTimeOfDay
1004
1215
  include Google::Apis::Core::Hashable
1005
1216
 
1006
- # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose to
1007
- # allow the value "24:00:00" for scenarios like business closing time.
1217
+ # Hours of a day in 24 hour format. Must be greater than or equal to 0 and
1218
+ # typically must be less than or equal to 23. An API may choose to allow the
1219
+ # value "24:00:00" for scenarios like business closing time.
1008
1220
  # Corresponds to the JSON property `hours`
1009
1221
  # @return [Fixnum]
1010
1222
  attr_accessor :hours
1011
1223
 
1012
- # Minutes of hour of day. Must be from 0 to 59.
1224
+ # Minutes of an hour. Must be greater than or equal to 0 and less than or equal
1225
+ # to 59.
1013
1226
  # Corresponds to the JSON property `minutes`
1014
1227
  # @return [Fixnum]
1015
1228
  attr_accessor :minutes
1016
1229
 
1017
- # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
1230
+ # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and
1231
+ # less than or equal to 999,999,999.
1018
1232
  # Corresponds to the JSON property `nanos`
1019
1233
  # @return [Fixnum]
1020
1234
  attr_accessor :nanos
1021
1235
 
1022
- # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
1023
- # allow the value 60 if it allows leap-seconds.
1236
+ # Seconds of a minute. Must be greater than or equal to 0 and typically must be
1237
+ # less than or equal to 59. An API may allow the value 60 if it allows leap-
1238
+ # seconds.
1024
1239
  # Corresponds to the JSON property `seconds`
1025
1240
  # @return [Fixnum]
1026
1241
  attr_accessor :seconds
@@ -1048,21 +1263,22 @@ module Google
1048
1263
  attr_accessor :fault_type
1049
1264
 
1050
1265
  # Optional. An optional request ID to identify requests. Specify a unique
1051
- # request ID so that if you must retry your request, the server will know to
1052
- # ignore the request if it has already been completed. The server will guarantee
1053
- # that for at least 60 minutes after the first request. For example, consider a
1054
- # situation where you make an initial request and the request times out. If you
1055
- # make the request again with the same request ID, the server can check if
1056
- # original operation with the same request ID was received, and if so, will
1057
- # ignore the second request. This prevents clients from accidentally creating
1058
- # duplicate commitments. The request ID must be a valid UUID with the exception
1059
- # that zero UUID is not supported (00000000-0000-0000-0000-000000000000).
1266
+ # request ID so that if you must retry your request, the server ignores the
1267
+ # request if it has already been completed. The server guarantees that for at
1268
+ # least 60 minutes since the first request. For example, consider a situation
1269
+ # where you make an initial request and the request times out. If you make the
1270
+ # request again with the same request ID, the server can check if the original
1271
+ # operation with the same request ID was received, and if so, ignores the second
1272
+ # request. This prevents clients from accidentally creating duplicate
1273
+ # commitments. The request ID must be a valid UUID with the exception that zero
1274
+ # UUID is not supported (00000000-0000-0000-0000-000000000000).
1060
1275
  # Corresponds to the JSON property `requestId`
1061
1276
  # @return [String]
1062
1277
  attr_accessor :request_id
1063
1278
 
1064
- # Optional. If set, performs request validation (e.g. permission checks and any
1065
- # other type of validation), but do not actually execute the fault injection.
1279
+ # Optional. If set, performs request validation, for example, permission checks
1280
+ # and any other type of validation, but does not actually execute the create
1281
+ # request.
1066
1282
  # Corresponds to the JSON property `validateOnly`
1067
1283
  # @return [Boolean]
1068
1284
  attr_accessor :validate_only
@@ -1110,16 +1326,17 @@ module Google
1110
1326
  # @return [String]
1111
1327
  attr_accessor :create_time
1112
1328
 
1113
- # Database flags. Set at instance level. * They are copied from primary instance
1114
- # on read instance creation. * Read instances can set new or override existing
1115
- # flags that are relevant for reads, e.g. for enabling columnar cache on a read
1116
- # instance. Flags set on read instance may or may not be present on primary.
1117
- # This is a list of "key": "value" pairs. "key": The name of the flag. These
1118
- # flags are passed at instance setup time, so include both server options and
1119
- # system variables for Postgres. Flags are specified with underscores, not
1120
- # hyphens. "value": The value of the flag. Booleans are set to **on** for true
1121
- # and **off** for false. This field must be omitted if the flag doesn't take a
1122
- # value.
1329
+ # Database flags. Set at the instance level. They are copied from the primary
1330
+ # instance on secondary instance creation. Flags that have restrictions default
1331
+ # to the value at primary instance on read instances during creation. Read
1332
+ # instances can set new flags or override existing flags that are relevant for
1333
+ # reads, for example, for enabling columnar cache on a read instance. Flags set
1334
+ # on read instance might or might not be present on the primary instance. This
1335
+ # is a list of "key": "value" pairs. "key": The name of the flag. These flags
1336
+ # are passed at instance setup time, so include both server options and system
1337
+ # variables for Postgres. Flags are specified with underscores, not hyphens. "
1338
+ # value": The value of the flag. Booleans are set to **on** for true and **off**
1339
+ # for false. This field must be omitted if the flag doesn't take a value.
1123
1340
  # Corresponds to the JSON property `databaseFlags`
1124
1341
  # @return [Hash<String,String>]
1125
1342
  attr_accessor :database_flags
@@ -1187,7 +1404,7 @@ module Google
1187
1404
  # @return [String]
1188
1405
  attr_accessor :name
1189
1406
 
1190
- # Metadata related to instance level network configuration.
1407
+ # Metadata related to instance-level network configuration.
1191
1408
  # Corresponds to the JSON property `networkConfig`
1192
1409
  # @return [Google::Apis::AlloydbV1beta::InstanceNetworkConfig]
1193
1410
  attr_accessor :network_config
@@ -1313,7 +1530,7 @@ module Google
1313
1530
  end
1314
1531
  end
1315
1532
 
1316
- # Metadata related to instance level network configuration.
1533
+ # Metadata related to instance-level network configuration.
1317
1534
  class InstanceNetworkConfig
1318
1535
  include Google::Apis::Core::Hashable
1319
1536
 
@@ -1347,6 +1564,37 @@ module Google
1347
1564
  end
1348
1565
  end
1349
1566
 
1567
+ # Details regarding the upgrade of instaces associated with a cluster.
1568
+ class InstanceUpgradeDetails
1569
+ include Google::Apis::Core::Hashable
1570
+
1571
+ # Instance type.
1572
+ # Corresponds to the JSON property `instanceType`
1573
+ # @return [String]
1574
+ attr_accessor :instance_type
1575
+
1576
+ # Normalized name of the instance.
1577
+ # Corresponds to the JSON property `name`
1578
+ # @return [String]
1579
+ attr_accessor :name
1580
+
1581
+ # Upgrade status of the instance.
1582
+ # Corresponds to the JSON property `upgradeStatus`
1583
+ # @return [String]
1584
+ attr_accessor :upgrade_status
1585
+
1586
+ def initialize(**args)
1587
+ update!(**args)
1588
+ end
1589
+
1590
+ # Update properties of this object
1591
+ def update!(**args)
1592
+ @instance_type = args[:instance_type] if args.key?(:instance_type)
1593
+ @name = args[:name] if args.key?(:name)
1594
+ @upgrade_status = args[:upgrade_status] if args.key?(:upgrade_status)
1595
+ end
1596
+ end
1597
+
1350
1598
  # Restrictions on INTEGER type values.
1351
1599
  class IntegerRestrictions
1352
1600
  include Google::Apis::Core::Hashable
@@ -1786,6 +2034,12 @@ module Google
1786
2034
  attr_accessor :track_active_queries
1787
2035
  alias_method :track_active_queries?, :track_active_queries
1788
2036
 
2037
+ # Track client address for an instance. If not set, default value is "off".
2038
+ # Corresponds to the JSON property `trackClientAddress`
2039
+ # @return [Boolean]
2040
+ attr_accessor :track_client_address
2041
+ alias_method :track_client_address?, :track_client_address
2042
+
1789
2043
  # Output only. Track wait event types during query execution for an instance.
1790
2044
  # This flag is turned "on" by default but tracking is enabled only after
1791
2045
  # observability enabled flag is also turned on. This is read-only flag and only
@@ -1815,6 +2069,7 @@ module Google
1815
2069
  @query_plans_per_minute = args[:query_plans_per_minute] if args.key?(:query_plans_per_minute)
1816
2070
  @record_application_tags = args[:record_application_tags] if args.key?(:record_application_tags)
1817
2071
  @track_active_queries = args[:track_active_queries] if args.key?(:track_active_queries)
2072
+ @track_client_address = args[:track_client_address] if args.key?(:track_client_address)
1818
2073
  @track_wait_event_types = args[:track_wait_event_types] if args.key?(:track_wait_event_types)
1819
2074
  @track_wait_events = args[:track_wait_events] if args.key?(:track_wait_events)
1820
2075
  end
@@ -1974,21 +2229,22 @@ module Google
1974
2229
  attr_accessor :etag
1975
2230
 
1976
2231
  # Optional. An optional request ID to identify requests. Specify a unique
1977
- # request ID so that if you must retry your request, the server will know to
1978
- # ignore the request if it has already been completed. The server will guarantee
1979
- # that for at least 60 minutes after the first request. For example, consider a
1980
- # situation where you make an initial request and the request times out. If you
1981
- # make the request again with the same request ID, the server can check if
1982
- # original operation with the same request ID was received, and if so, will
1983
- # ignore the second request. This prevents clients from accidentally creating
1984
- # duplicate commitments. The request ID must be a valid UUID with the exception
1985
- # that zero UUID is not supported (00000000-0000-0000-0000-000000000000).
2232
+ # request ID so that if you must retry your request, the server ignores the
2233
+ # request if it has already been completed. The server guarantees that for at
2234
+ # least 60 minutes since the first request. For example, consider a situation
2235
+ # where you make an initial request and the request times out. If you make the
2236
+ # request again with the same request ID, the server can check if original
2237
+ # operation with the same request ID was received, and if so, will ignore the
2238
+ # second request. This prevents clients from accidentally creating duplicate
2239
+ # commitments. The request ID must be a valid UUID with the exception that zero
2240
+ # UUID is not supported (00000000-0000-0000-0000-000000000000).
1986
2241
  # Corresponds to the JSON property `requestId`
1987
2242
  # @return [String]
1988
2243
  attr_accessor :request_id
1989
2244
 
1990
- # Optional. If set, performs request validation (e.g. permission checks and any
1991
- # other type of validation), but do not actually execute the delete.
2245
+ # Optional. If set, performs request validation, for example, permission checks
2246
+ # and any other type of validation, but does not actually execute the create
2247
+ # request.
1992
2248
  # Corresponds to the JSON property `validateOnly`
1993
2249
  # @return [Boolean]
1994
2250
  attr_accessor :validate_only
@@ -2182,22 +2438,29 @@ module Google
2182
2438
  class RestartInstanceRequest
2183
2439
  include Google::Apis::Core::Hashable
2184
2440
 
2441
+ # Optional. Full name of the nodes as obtained from INSTANCE_VIEW_FULL to
2442
+ # restart upon. Applicable only to read instances.
2443
+ # Corresponds to the JSON property `nodeIds`
2444
+ # @return [Array<String>]
2445
+ attr_accessor :node_ids
2446
+
2185
2447
  # Optional. An optional request ID to identify requests. Specify a unique
2186
- # request ID so that if you must retry your request, the server will know to
2187
- # ignore the request if it has already been completed. The server will guarantee
2188
- # that for at least 60 minutes after the first request. For example, consider a
2189
- # situation where you make an initial request and the request times out. If you
2190
- # make the request again with the same request ID, the server can check if
2191
- # original operation with the same request ID was received, and if so, will
2192
- # ignore the second request. This prevents clients from accidentally creating
2193
- # duplicate commitments. The request ID must be a valid UUID with the exception
2194
- # that zero UUID is not supported (00000000-0000-0000-0000-000000000000).
2448
+ # request ID so that if you must retry your request, the server ignores the
2449
+ # request if it has already been completed. The server guarantees that for at
2450
+ # least 60 minutes since the first request. For example, consider a situation
2451
+ # where you make an initial request and the request times out. If you make the
2452
+ # request again with the same request ID, the server can check if the original
2453
+ # operation with the same request ID was received, and if so, ignores the second
2454
+ # request. This prevents clients from accidentally creating duplicate
2455
+ # commitments. The request ID must be a valid UUID with the exception that zero
2456
+ # UUID is not supported (00000000-0000-0000-0000-000000000000).
2195
2457
  # Corresponds to the JSON property `requestId`
2196
2458
  # @return [String]
2197
2459
  attr_accessor :request_id
2198
2460
 
2199
- # Optional. If set, performs request validation (e.g. permission checks and any
2200
- # other type of validation), but do not actually execute the restart.
2461
+ # Optional. If set, performs request validation, for example, permission checks
2462
+ # and any other type of validation, but does not actually execute the create
2463
+ # request.
2201
2464
  # Corresponds to the JSON property `validateOnly`
2202
2465
  # @return [Boolean]
2203
2466
  attr_accessor :validate_only
@@ -2209,6 +2472,7 @@ module Google
2209
2472
 
2210
2473
  # Update properties of this object
2211
2474
  def update!(**args)
2475
+ @node_ids = args[:node_ids] if args.key?(:node_ids)
2212
2476
  @request_id = args[:request_id] if args.key?(:request_id)
2213
2477
  @validate_only = args[:validate_only] if args.key?(:validate_only)
2214
2478
  end
@@ -2242,21 +2506,22 @@ module Google
2242
2506
  attr_accessor :continuous_backup_source
2243
2507
 
2244
2508
  # Optional. An optional request ID to identify requests. Specify a unique
2245
- # request ID so that if you must retry your request, the server will know to
2246
- # ignore the request if it has already been completed. The server will guarantee
2247
- # that for at least 60 minutes since the first request. For example, consider a
2248
- # situation where you make an initial request and the request times out. If you
2249
- # make the request again with the same request ID, the server can check if
2250
- # original operation with the same request ID was received, and if so, will
2251
- # ignore the second request. This prevents clients from accidentally creating
2252
- # duplicate commitments. The request ID must be a valid UUID with the exception
2253
- # that zero UUID is not supported (00000000-0000-0000-0000-000000000000).
2509
+ # request ID so that if you must retry your request, the server ignores the
2510
+ # request if it has already been completed. The server guarantees that for at
2511
+ # least 60 minutes since the first request. For example, consider a situation
2512
+ # where you make an initial request and the request times out. If you make the
2513
+ # request again with the same request ID, the server can check if the original
2514
+ # operation with the same request ID was received, and if so, ignores the second
2515
+ # request. This prevents clients from accidentally creating duplicate
2516
+ # commitments. The request ID must be a valid UUID with the exception that zero
2517
+ # UUID is not supported (00000000-0000-0000-0000-000000000000).
2254
2518
  # Corresponds to the JSON property `requestId`
2255
2519
  # @return [String]
2256
2520
  attr_accessor :request_id
2257
2521
 
2258
- # Optional. If set, performs request validation (e.g. permission checks and any
2259
- # other type of validation), but do not actually execute the import request.
2522
+ # Optional. If set, performs request validation, for example, permission checks
2523
+ # and any other type of validation, but does not actually execute the create
2524
+ # request.
2260
2525
  # Corresponds to the JSON property `validateOnly`
2261
2526
  # @return [Boolean]
2262
2527
  attr_accessor :validate_only
@@ -2298,6 +2563,48 @@ module Google
2298
2563
  end
2299
2564
  end
2300
2565
 
2566
+ # Options for exporting data in SQL format.
2567
+ class SqlExportOptions
2568
+ include Google::Apis::Core::Hashable
2569
+
2570
+ # Optional. If true, output commands to DROP all the dumped database objects
2571
+ # prior to outputting the commands for creating them.
2572
+ # Corresponds to the JSON property `cleanTargetObjects`
2573
+ # @return [Boolean]
2574
+ attr_accessor :clean_target_objects
2575
+ alias_method :clean_target_objects?, :clean_target_objects
2576
+
2577
+ # Optional. If true, use DROP ... IF EXISTS commands to check for the object's
2578
+ # existence before dropping it in clean_target_objects mode.
2579
+ # Corresponds to the JSON property `ifExistTargetObjects`
2580
+ # @return [Boolean]
2581
+ attr_accessor :if_exist_target_objects
2582
+ alias_method :if_exist_target_objects?, :if_exist_target_objects
2583
+
2584
+ # Optional. If true, only export the schema.
2585
+ # Corresponds to the JSON property `schemaOnly`
2586
+ # @return [Boolean]
2587
+ attr_accessor :schema_only
2588
+ alias_method :schema_only?, :schema_only
2589
+
2590
+ # Optional. Tables to export from.
2591
+ # Corresponds to the JSON property `tables`
2592
+ # @return [Array<String>]
2593
+ attr_accessor :tables
2594
+
2595
+ def initialize(**args)
2596
+ update!(**args)
2597
+ end
2598
+
2599
+ # Update properties of this object
2600
+ def update!(**args)
2601
+ @clean_target_objects = args[:clean_target_objects] if args.key?(:clean_target_objects)
2602
+ @if_exist_target_objects = args[:if_exist_target_objects] if args.key?(:if_exist_target_objects)
2603
+ @schema_only = args[:schema_only] if args.key?(:schema_only)
2604
+ @tables = args[:tables] if args.key?(:tables)
2605
+ end
2606
+ end
2607
+
2301
2608
  # SSL configuration.
2302
2609
  class SslConfig
2303
2610
  include Google::Apis::Core::Hashable
@@ -2324,6 +2631,39 @@ module Google
2324
2631
  end
2325
2632
  end
2326
2633
 
2634
+ # Stage information for different stages in the upgrade process.
2635
+ class StageInfo
2636
+ include Google::Apis::Core::Hashable
2637
+
2638
+ # logs_url is the URL for the logs associated with a stage if that stage has
2639
+ # logs. Right now, only three stages have logs: ALLOYDB_PRECHECK,
2640
+ # PG_UPGRADE_CHECK, PRIMARY_INSTANCE_UPGRADE.
2641
+ # Corresponds to the JSON property `logsUrl`
2642
+ # @return [String]
2643
+ attr_accessor :logs_url
2644
+
2645
+ # The stage.
2646
+ # Corresponds to the JSON property `stage`
2647
+ # @return [String]
2648
+ attr_accessor :stage
2649
+
2650
+ # Status of the stage.
2651
+ # Corresponds to the JSON property `status`
2652
+ # @return [String]
2653
+ attr_accessor :status
2654
+
2655
+ def initialize(**args)
2656
+ update!(**args)
2657
+ end
2658
+
2659
+ # Update properties of this object
2660
+ def update!(**args)
2661
+ @logs_url = args[:logs_url] if args.key?(:logs_url)
2662
+ @stage = args[:stage] if args.key?(:stage)
2663
+ @status = args[:status] if args.key?(:status)
2664
+ end
2665
+ end
2666
+
2327
2667
  # The `Status` type defines a logical error model that is suitable for different
2328
2668
  # programming environments, including REST APIs and RPC APIs. It is used by [
2329
2669
  # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
@@ -2367,6 +2707,14 @@ module Google
2367
2707
  class StorageDatabasecenterPartnerapiV1mainAvailabilityConfiguration
2368
2708
  include Google::Apis::Core::Hashable
2369
2709
 
2710
+ # Checks for existence of (multi-cluster) routing configuration that allows
2711
+ # automatic failover to a different zone/region in case of an outage. Applicable
2712
+ # to Bigtable resources.
2713
+ # Corresponds to the JSON property `automaticFailoverRoutingConfigured`
2714
+ # @return [Boolean]
2715
+ attr_accessor :automatic_failover_routing_configured
2716
+ alias_method :automatic_failover_routing_configured?, :automatic_failover_routing_configured
2717
+
2370
2718
  # Availability type. Potential values: * `ZONAL`: The instance serves data from
2371
2719
  # only one zone. Outages in that zone affect data accessibility. * `REGIONAL`:
2372
2720
  # The instance can serve data from more than one zone in a region (it is highly
@@ -2400,6 +2748,7 @@ module Google
2400
2748
 
2401
2749
  # Update properties of this object
2402
2750
  def update!(**args)
2751
+ @automatic_failover_routing_configured = args[:automatic_failover_routing_configured] if args.key?(:automatic_failover_routing_configured)
2403
2752
  @availability_type = args[:availability_type] if args.key?(:availability_type)
2404
2753
  @cross_region_replica_configured = args[:cross_region_replica_configured] if args.key?(:cross_region_replica_configured)
2405
2754
  @external_replica_configured = args[:external_replica_configured] if args.key?(:external_replica_configured)
@@ -2505,16 +2854,17 @@ module Google
2505
2854
  end
2506
2855
  end
2507
2856
 
2508
- # Any custom metadata associated with the resource. i.e. A spanner instance can
2857
+ # Any custom metadata associated with the resource. e.g. A spanner instance can
2509
2858
  # have multiple databases with its own unique metadata. Information for these
2510
2859
  # individual databases can be captured in custom metadata data
2511
2860
  class StorageDatabasecenterPartnerapiV1mainCustomMetadataData
2512
2861
  include Google::Apis::Core::Hashable
2513
2862
 
2514
- #
2515
- # Corresponds to the JSON property `databaseMetadata`
2516
- # @return [Array<Google::Apis::AlloydbV1beta::StorageDatabasecenterPartnerapiV1mainDatabaseMetadata>]
2517
- attr_accessor :database_metadata
2863
+ # Metadata for individual internal resources in an instance. e.g. spanner
2864
+ # instance can have multiple databases with unique configuration.
2865
+ # Corresponds to the JSON property `internalResourceMetadata`
2866
+ # @return [Array<Google::Apis::AlloydbV1beta::StorageDatabasecenterPartnerapiV1mainInternalResourceMetadata>]
2867
+ attr_accessor :internal_resource_metadata
2518
2868
 
2519
2869
  def initialize(**args)
2520
2870
  update!(**args)
@@ -2522,52 +2872,7 @@ module Google
2522
2872
 
2523
2873
  # Update properties of this object
2524
2874
  def update!(**args)
2525
- @database_metadata = args[:database_metadata] if args.key?(:database_metadata)
2526
- end
2527
- end
2528
-
2529
- # Metadata for individual databases created in an instance. i.e. spanner
2530
- # instance can have multiple databases with unique configuration settings.
2531
- class StorageDatabasecenterPartnerapiV1mainDatabaseMetadata
2532
- include Google::Apis::Core::Hashable
2533
-
2534
- # Configuration for automatic backups
2535
- # Corresponds to the JSON property `backupConfiguration`
2536
- # @return [Google::Apis::AlloydbV1beta::StorageDatabasecenterPartnerapiV1mainBackupConfiguration]
2537
- attr_accessor :backup_configuration
2538
-
2539
- # A backup run.
2540
- # Corresponds to the JSON property `backupRun`
2541
- # @return [Google::Apis::AlloydbV1beta::StorageDatabasecenterPartnerapiV1mainBackupRun]
2542
- attr_accessor :backup_run
2543
-
2544
- # Product specification for Condor resources.
2545
- # Corresponds to the JSON property `product`
2546
- # @return [Google::Apis::AlloydbV1beta::StorageDatabasecenterProtoCommonProduct]
2547
- attr_accessor :product
2548
-
2549
- # DatabaseResourceId will serve as primary key for any resource ingestion event.
2550
- # Corresponds to the JSON property `resourceId`
2551
- # @return [Google::Apis::AlloydbV1beta::StorageDatabasecenterPartnerapiV1mainDatabaseResourceId]
2552
- attr_accessor :resource_id
2553
-
2554
- # Required. Database name. Resource name to follow CAIS resource_name format as
2555
- # noted here go/condor-common-datamodel
2556
- # Corresponds to the JSON property `resourceName`
2557
- # @return [String]
2558
- attr_accessor :resource_name
2559
-
2560
- def initialize(**args)
2561
- update!(**args)
2562
- end
2563
-
2564
- # Update properties of this object
2565
- def update!(**args)
2566
- @backup_configuration = args[:backup_configuration] if args.key?(:backup_configuration)
2567
- @backup_run = args[:backup_run] if args.key?(:backup_run)
2568
- @product = args[:product] if args.key?(:product)
2569
- @resource_id = args[:resource_id] if args.key?(:resource_id)
2570
- @resource_name = args[:resource_name] if args.key?(:resource_name)
2875
+ @internal_resource_metadata = args[:internal_resource_metadata] if args.key?(:internal_resource_metadata)
2571
2876
  end
2572
2877
  end
2573
2878
 
@@ -2586,7 +2891,7 @@ module Google
2586
2891
  # @return [String]
2587
2892
  attr_accessor :feed_type
2588
2893
 
2589
- # More feed data would be added in subsequent CLs
2894
+ #
2590
2895
  # Corresponds to the JSON property `observabilityMetricData`
2591
2896
  # @return [Google::Apis::AlloydbV1beta::StorageDatabasecenterPartnerapiV1mainObservabilityMetricData]
2592
2897
  attr_accessor :observability_metric_data
@@ -2606,7 +2911,7 @@ module Google
2606
2911
  # @return [Google::Apis::AlloydbV1beta::StorageDatabasecenterPartnerapiV1mainDatabaseResourceId]
2607
2912
  attr_accessor :resource_id
2608
2913
 
2609
- # Common model for database resource instance metadata.
2914
+ # Common model for database resource instance metadata. Next ID: 23
2610
2915
  # Corresponds to the JSON property `resourceMetadata`
2611
2916
  # @return [Google::Apis::AlloydbV1beta::StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata]
2612
2917
  attr_accessor :resource_metadata
@@ -2699,6 +3004,11 @@ module Google
2699
3004
  # @return [String]
2700
3005
  attr_accessor :signal_id
2701
3006
 
3007
+ # The severity of the signal, such as if it's a HIGH or LOW severity.
3008
+ # Corresponds to the JSON property `signalSeverity`
3009
+ # @return [String]
3010
+ attr_accessor :signal_severity
3011
+
2702
3012
  # Required. Type of signal, for example, `AVAILABLE_IN_MULTIPLE_ZONES`, `
2703
3013
  # LOGGING_MOST_ERRORS`, etc.
2704
3014
  # Corresponds to the JSON property `signalType`
@@ -2727,6 +3037,7 @@ module Google
2727
3037
  @resource_name = args[:resource_name] if args.key?(:resource_name)
2728
3038
  @signal_class = args[:signal_class] if args.key?(:signal_class)
2729
3039
  @signal_id = args[:signal_id] if args.key?(:signal_id)
3040
+ @signal_severity = args[:signal_severity] if args.key?(:signal_severity)
2730
3041
  @signal_type = args[:signal_type] if args.key?(:signal_type)
2731
3042
  @state = args[:state] if args.key?(:state)
2732
3043
  end
@@ -2748,8 +3059,10 @@ module Google
2748
3059
 
2749
3060
  # Required. The type of resource this ID is identifying. Ex redis.googleapis.com/
2750
3061
  # Instance, redis.googleapis.com/Cluster, alloydb.googleapis.com/Cluster,
2751
- # alloydb.googleapis.com/Instance, spanner.googleapis.com/Instance REQUIRED
2752
- # Please refer go/condor-common-datamodel
3062
+ # alloydb.googleapis.com/Instance, spanner.googleapis.com/Instance, spanner.
3063
+ # googleapis.com/Database, firestore.googleapis.com/Database, sqladmin.
3064
+ # googleapis.com/Instance, bigtableadmin.googleapis.com/Cluster, bigtableadmin.
3065
+ # googleapis.com/Instance REQUIRED Please refer go/condor-common-datamodel
2753
3066
  # Corresponds to the JSON property `resourceType`
2754
3067
  # @return [String]
2755
3068
  attr_accessor :resource_type
@@ -2773,7 +3086,7 @@ module Google
2773
3086
  end
2774
3087
  end
2775
3088
 
2776
- # Common model for database resource instance metadata.
3089
+ # Common model for database resource instance metadata. Next ID: 23
2777
3090
  class StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata
2778
3091
  include Google::Apis::Core::Hashable
2779
3092
 
@@ -2803,13 +3116,20 @@ module Google
2803
3116
  # @return [String]
2804
3117
  attr_accessor :current_state
2805
3118
 
2806
- # Any custom metadata associated with the resource. i.e. A spanner instance can
3119
+ # Any custom metadata associated with the resource. e.g. A spanner instance can
2807
3120
  # have multiple databases with its own unique metadata. Information for these
2808
3121
  # individual databases can be captured in custom metadata data
2809
3122
  # Corresponds to the JSON property `customMetadata`
2810
3123
  # @return [Google::Apis::AlloydbV1beta::StorageDatabasecenterPartnerapiV1mainCustomMetadataData]
2811
3124
  attr_accessor :custom_metadata
2812
3125
 
3126
+ # Optional. Edition represents whether the instance is ENTERPRISE or
3127
+ # ENTERPRISE_PLUS. This information is core to Cloud SQL only and is used to
3128
+ # identify the edition of the instance.
3129
+ # Corresponds to the JSON property `edition`
3130
+ # @return [String]
3131
+ attr_accessor :edition
3132
+
2813
3133
  # Entitlements associated with the resource
2814
3134
  # Corresponds to the JSON property `entitlements`
2815
3135
  # @return [Array<Google::Apis::AlloydbV1beta::StorageDatabasecenterPartnerapiV1mainEntitlement>]
@@ -2848,6 +3168,12 @@ module Google
2848
3168
  # @return [Google::Apis::AlloydbV1beta::StorageDatabasecenterPartnerapiV1mainDatabaseResourceId]
2849
3169
  attr_accessor :primary_resource_id
2850
3170
 
3171
+ # Primary resource location. REQUIRED if the immediate parent exists when first
3172
+ # time resource is getting ingested, otherwise optional.
3173
+ # Corresponds to the JSON property `primaryResourceLocation`
3174
+ # @return [String]
3175
+ attr_accessor :primary_resource_location
3176
+
2851
3177
  # Product specification for Condor resources.
2852
3178
  # Corresponds to the JSON property `product`
2853
3179
  # @return [Google::Apis::AlloydbV1beta::StorageDatabasecenterProtoCommonProduct]
@@ -2869,6 +3195,13 @@ module Google
2869
3195
  # @return [String]
2870
3196
  attr_accessor :resource_name
2871
3197
 
3198
+ # Message type for storing tags. Tags provide a way to create annotations for
3199
+ # resources, and in some cases conditionally allow or deny policies based on
3200
+ # whether a resource has a specific tag.
3201
+ # Corresponds to the JSON property `tagsSet`
3202
+ # @return [Google::Apis::AlloydbV1beta::StorageDatabasecenterPartnerapiV1mainTags]
3203
+ attr_accessor :tags_set
3204
+
2872
3205
  # The time at which the resource was updated and recorded at partner service.
2873
3206
  # Corresponds to the JSON property `updationTime`
2874
3207
  # @return [String]
@@ -2893,6 +3226,7 @@ module Google
2893
3226
  @creation_time = args[:creation_time] if args.key?(:creation_time)
2894
3227
  @current_state = args[:current_state] if args.key?(:current_state)
2895
3228
  @custom_metadata = args[:custom_metadata] if args.key?(:custom_metadata)
3229
+ @edition = args[:edition] if args.key?(:edition)
2896
3230
  @entitlements = args[:entitlements] if args.key?(:entitlements)
2897
3231
  @expected_state = args[:expected_state] if args.key?(:expected_state)
2898
3232
  @id = args[:id] if args.key?(:id)
@@ -2900,9 +3234,11 @@ module Google
2900
3234
  @location = args[:location] if args.key?(:location)
2901
3235
  @machine_configuration = args[:machine_configuration] if args.key?(:machine_configuration)
2902
3236
  @primary_resource_id = args[:primary_resource_id] if args.key?(:primary_resource_id)
3237
+ @primary_resource_location = args[:primary_resource_location] if args.key?(:primary_resource_location)
2903
3238
  @product = args[:product] if args.key?(:product)
2904
3239
  @resource_container = args[:resource_container] if args.key?(:resource_container)
2905
3240
  @resource_name = args[:resource_name] if args.key?(:resource_name)
3241
+ @tags_set = args[:tags_set] if args.key?(:tags_set)
2906
3242
  @updation_time = args[:updation_time] if args.key?(:updation_time)
2907
3243
  @user_label_set = args[:user_label_set] if args.key?(:user_label_set)
2908
3244
  end
@@ -3007,6 +3343,52 @@ module Google
3007
3343
  end
3008
3344
  end
3009
3345
 
3346
+ # Metadata for individual internal resources in an instance. e.g. spanner
3347
+ # instance can have multiple databases with unique configuration settings.
3348
+ # Similarly bigtable can have multiple clusters within same bigtable instance.
3349
+ class StorageDatabasecenterPartnerapiV1mainInternalResourceMetadata
3350
+ include Google::Apis::Core::Hashable
3351
+
3352
+ # Configuration for automatic backups
3353
+ # Corresponds to the JSON property `backupConfiguration`
3354
+ # @return [Google::Apis::AlloydbV1beta::StorageDatabasecenterPartnerapiV1mainBackupConfiguration]
3355
+ attr_accessor :backup_configuration
3356
+
3357
+ # A backup run.
3358
+ # Corresponds to the JSON property `backupRun`
3359
+ # @return [Google::Apis::AlloydbV1beta::StorageDatabasecenterPartnerapiV1mainBackupRun]
3360
+ attr_accessor :backup_run
3361
+
3362
+ # Product specification for Condor resources.
3363
+ # Corresponds to the JSON property `product`
3364
+ # @return [Google::Apis::AlloydbV1beta::StorageDatabasecenterProtoCommonProduct]
3365
+ attr_accessor :product
3366
+
3367
+ # DatabaseResourceId will serve as primary key for any resource ingestion event.
3368
+ # Corresponds to the JSON property `resourceId`
3369
+ # @return [Google::Apis::AlloydbV1beta::StorageDatabasecenterPartnerapiV1mainDatabaseResourceId]
3370
+ attr_accessor :resource_id
3371
+
3372
+ # Required. internal resource name for spanner this will be database name e.g."
3373
+ # spanner.googleapis.com/projects/123/abc/instances/inst1/databases/db1"
3374
+ # Corresponds to the JSON property `resourceName`
3375
+ # @return [String]
3376
+ attr_accessor :resource_name
3377
+
3378
+ def initialize(**args)
3379
+ update!(**args)
3380
+ end
3381
+
3382
+ # Update properties of this object
3383
+ def update!(**args)
3384
+ @backup_configuration = args[:backup_configuration] if args.key?(:backup_configuration)
3385
+ @backup_run = args[:backup_run] if args.key?(:backup_run)
3386
+ @product = args[:product] if args.key?(:product)
3387
+ @resource_id = args[:resource_id] if args.key?(:resource_id)
3388
+ @resource_name = args[:resource_name] if args.key?(:resource_name)
3389
+ end
3390
+ end
3391
+
3010
3392
  # MachineConfiguration describes the configuration of a machine specific to
3011
3393
  # Database Resource.
3012
3394
  class StorageDatabasecenterPartnerapiV1mainMachineConfiguration
@@ -3024,6 +3406,11 @@ module Google
3024
3406
  # @return [Fixnum]
3025
3407
  attr_accessor :memory_size_in_bytes
3026
3408
 
3409
+ # Optional. Number of shards (if applicable).
3410
+ # Corresponds to the JSON property `shardCount`
3411
+ # @return [Fixnum]
3412
+ attr_accessor :shard_count
3413
+
3027
3414
  def initialize(**args)
3028
3415
  update!(**args)
3029
3416
  end
@@ -3032,6 +3419,7 @@ module Google
3032
3419
  def update!(**args)
3033
3420
  @cpu_count = args[:cpu_count] if args.key?(:cpu_count)
3034
3421
  @memory_size_in_bytes = args[:memory_size_in_bytes] if args.key?(:memory_size_in_bytes)
3422
+ @shard_count = args[:shard_count] if args.key?(:shard_count)
3035
3423
  end
3036
3424
  end
3037
3425
 
@@ -3115,6 +3503,11 @@ module Google
3115
3503
  class StorageDatabasecenterPartnerapiV1mainRetentionSettings
3116
3504
  include Google::Apis::Core::Hashable
3117
3505
 
3506
+ # Duration based retention period i.e. 172800 seconds (2 days)
3507
+ # Corresponds to the JSON property `durationBasedRetention`
3508
+ # @return [String]
3509
+ attr_accessor :duration_based_retention
3510
+
3118
3511
  #
3119
3512
  # Corresponds to the JSON property `quantityBasedRetention`
3120
3513
  # @return [Fixnum]
@@ -3130,15 +3523,43 @@ module Google
3130
3523
  # @return [String]
3131
3524
  attr_accessor :time_based_retention
3132
3525
 
3526
+ # Timestamp based retention period i.e. 2024-05-01T00:00:00Z
3527
+ # Corresponds to the JSON property `timestampBasedRetentionTime`
3528
+ # @return [String]
3529
+ attr_accessor :timestamp_based_retention_time
3530
+
3133
3531
  def initialize(**args)
3134
3532
  update!(**args)
3135
3533
  end
3136
3534
 
3137
3535
  # Update properties of this object
3138
3536
  def update!(**args)
3537
+ @duration_based_retention = args[:duration_based_retention] if args.key?(:duration_based_retention)
3139
3538
  @quantity_based_retention = args[:quantity_based_retention] if args.key?(:quantity_based_retention)
3140
3539
  @retention_unit = args[:retention_unit] if args.key?(:retention_unit)
3141
3540
  @time_based_retention = args[:time_based_retention] if args.key?(:time_based_retention)
3541
+ @timestamp_based_retention_time = args[:timestamp_based_retention_time] if args.key?(:timestamp_based_retention_time)
3542
+ end
3543
+ end
3544
+
3545
+ # Message type for storing tags. Tags provide a way to create annotations for
3546
+ # resources, and in some cases conditionally allow or deny policies based on
3547
+ # whether a resource has a specific tag.
3548
+ class StorageDatabasecenterPartnerapiV1mainTags
3549
+ include Google::Apis::Core::Hashable
3550
+
3551
+ # The Tag key/value mappings.
3552
+ # Corresponds to the JSON property `tags`
3553
+ # @return [Hash<String,String>]
3554
+ attr_accessor :tags
3555
+
3556
+ def initialize(**args)
3557
+ update!(**args)
3558
+ end
3559
+
3560
+ # Update properties of this object
3561
+ def update!(**args)
3562
+ @tags = args[:tags] if args.key?(:tags)
3142
3563
  end
3143
3564
  end
3144
3565
 
@@ -3332,21 +3753,22 @@ module Google
3332
3753
  include Google::Apis::Core::Hashable
3333
3754
 
3334
3755
  # Optional. An optional request ID to identify requests. Specify a unique
3335
- # request ID so that if you must retry your request, the server will know to
3336
- # ignore the request if it has already been completed. The server will guarantee
3337
- # that for at least 60 minutes after the first request. For example, consider a
3338
- # situation where you make an initial request and the request times out. If you
3339
- # make the request again with the same request ID, the server can check if
3340
- # original operation with the same request ID was received, and if so, will
3341
- # ignore the second request. This prevents clients from accidentally creating
3342
- # duplicate commitments. The request ID must be a valid UUID with the exception
3343
- # that zero UUID is not supported (00000000-0000-0000-0000-000000000000).
3756
+ # request ID so that if you must retry your request, the server ignores the
3757
+ # request if it has already been completed. The server guarantees that for at
3758
+ # least 60 minutes since the first request. For example, consider a situation
3759
+ # where you make an initial request and the request times out. If you make the
3760
+ # request again with the same request ID, the server can check if the original
3761
+ # operation with the same request ID was received, and if so, ignores the second
3762
+ # request. This prevents clients from accidentally creating duplicate
3763
+ # commitments. The request ID must be a valid UUID with the exception that zero
3764
+ # UUID is not supported (00000000-0000-0000-0000-000000000000).
3344
3765
  # Corresponds to the JSON property `requestId`
3345
3766
  # @return [String]
3346
3767
  attr_accessor :request_id
3347
3768
 
3348
- # Optional. If set, performs request validation (e.g. permission checks and any
3349
- # other type of validation), but do not actually execute the delete.
3769
+ # Optional. If set, performs request validation, for example, permission checks
3770
+ # and any other type of validation, but does not actually execute the create
3771
+ # request.
3350
3772
  # Corresponds to the JSON property `validateOnly`
3351
3773
  # @return [Boolean]
3352
3774
  attr_accessor :validate_only
@@ -3392,6 +3814,11 @@ module Google
3392
3814
  # @return [String]
3393
3815
  attr_accessor :end_time
3394
3816
 
3817
+ # grace end time of the cluster.
3818
+ # Corresponds to the JSON property `graceEndTime`
3819
+ # @return [String]
3820
+ attr_accessor :grace_end_time
3821
+
3395
3822
  # start time of the trial cluster.
3396
3823
  # Corresponds to the JSON property `startTime`
3397
3824
  # @return [String]
@@ -3409,6 +3836,7 @@ module Google
3409
3836
  # Update properties of this object
3410
3837
  def update!(**args)
3411
3838
  @end_time = args[:end_time] if args.key?(:end_time)
3839
+ @grace_end_time = args[:grace_end_time] if args.key?(:grace_end_time)
3412
3840
  @start_time = args[:start_time] if args.key?(:start_time)
3413
3841
  @upgrade_time = args[:upgrade_time] if args.key?(:upgrade_time)
3414
3842
  end
@@ -3433,6 +3861,90 @@ module Google
3433
3861
  end
3434
3862
  end
3435
3863
 
3864
+ # Upgrades a cluster.
3865
+ class UpgradeClusterRequest
3866
+ include Google::Apis::Core::Hashable
3867
+
3868
+ # Optional. The current etag of the Cluster. If an etag is provided and does not
3869
+ # match the current etag of the Cluster, upgrade will be blocked and an ABORTED
3870
+ # error will be returned.
3871
+ # Corresponds to the JSON property `etag`
3872
+ # @return [String]
3873
+ attr_accessor :etag
3874
+
3875
+ # Optional. An optional request ID to identify requests. Specify a unique
3876
+ # request ID so that if you must retry your request, the server ignores the
3877
+ # request if it has already been completed. The server guarantees that for at
3878
+ # least 60 minutes since the first request. For example, consider a situation
3879
+ # where you make an initial request and the request times out. If you make the
3880
+ # request again with the same request ID, the server can check if the original
3881
+ # operation with the same request ID was received, and if so, ignores the second
3882
+ # request. This prevents clients from accidentally creating duplicate
3883
+ # commitments. The request ID must be a valid UUID with the exception that zero
3884
+ # UUID is not supported (00000000-0000-0000-0000-000000000000).
3885
+ # Corresponds to the JSON property `requestId`
3886
+ # @return [String]
3887
+ attr_accessor :request_id
3888
+
3889
+ # Optional. If set, performs request validation, for example, permission checks
3890
+ # and any other type of validation, but does not actually execute the create
3891
+ # request.
3892
+ # Corresponds to the JSON property `validateOnly`
3893
+ # @return [Boolean]
3894
+ attr_accessor :validate_only
3895
+ alias_method :validate_only?, :validate_only
3896
+
3897
+ # Required. The version the cluster is going to be upgraded to.
3898
+ # Corresponds to the JSON property `version`
3899
+ # @return [String]
3900
+ attr_accessor :version
3901
+
3902
+ def initialize(**args)
3903
+ update!(**args)
3904
+ end
3905
+
3906
+ # Update properties of this object
3907
+ def update!(**args)
3908
+ @etag = args[:etag] if args.key?(:etag)
3909
+ @request_id = args[:request_id] if args.key?(:request_id)
3910
+ @validate_only = args[:validate_only] if args.key?(:validate_only)
3911
+ @version = args[:version] if args.key?(:version)
3912
+ end
3913
+ end
3914
+
3915
+ # UpgradeClusterResponse contains the response for upgrade cluster operation.
3916
+ class UpgradeClusterResponse
3917
+ include Google::Apis::Core::Hashable
3918
+
3919
+ # Array of upgrade details for the current cluster and all the secondary
3920
+ # clusters associated with this cluster.
3921
+ # Corresponds to the JSON property `clusterUpgradeDetails`
3922
+ # @return [Array<Google::Apis::AlloydbV1beta::ClusterUpgradeDetails>]
3923
+ attr_accessor :cluster_upgrade_details
3924
+
3925
+ # A user friendly message summarising the upgrade operation details and the next
3926
+ # steps for the user if there is any.
3927
+ # Corresponds to the JSON property `message`
3928
+ # @return [String]
3929
+ attr_accessor :message
3930
+
3931
+ # Status of upgrade operation.
3932
+ # Corresponds to the JSON property `status`
3933
+ # @return [String]
3934
+ attr_accessor :status
3935
+
3936
+ def initialize(**args)
3937
+ update!(**args)
3938
+ end
3939
+
3940
+ # Update properties of this object
3941
+ def update!(**args)
3942
+ @cluster_upgrade_details = args[:cluster_upgrade_details] if args.key?(:cluster_upgrade_details)
3943
+ @message = args[:message] if args.key?(:message)
3944
+ @status = args[:status] if args.key?(:status)
3945
+ end
3946
+ end
3947
+
3436
3948
  # Message describing User object.
3437
3949
  class User
3438
3950
  include Google::Apis::Core::Hashable
@@ -3443,6 +3955,13 @@ module Google
3443
3955
  # @return [Array<String>]
3444
3956
  attr_accessor :database_roles
3445
3957
 
3958
+ # Input only. If the user already exists and it has additional roles, keep them
3959
+ # granted.
3960
+ # Corresponds to the JSON property `keepExtraRoles`
3961
+ # @return [Boolean]
3962
+ attr_accessor :keep_extra_roles
3963
+ alias_method :keep_extra_roles?, :keep_extra_roles
3964
+
3446
3965
  # Output only. Name of the resource in the form of projects/`project`/locations/`
3447
3966
  # location`/cluster/`cluster`/users/`user`.
3448
3967
  # Corresponds to the JSON property `name`
@@ -3466,6 +3985,7 @@ module Google
3466
3985
  # Update properties of this object
3467
3986
  def update!(**args)
3468
3987
  @database_roles = args[:database_roles] if args.key?(:database_roles)
3988
+ @keep_extra_roles = args[:keep_extra_roles] if args.key?(:keep_extra_roles)
3469
3989
  @name = args[:name] if args.key?(:name)
3470
3990
  @password = args[:password] if args.key?(:password)
3471
3991
  @user_type = args[:user_type] if args.key?(:user_type)