google-apis-alloydb_v1beta 0.18.0 → 0.19.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -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)