google-apis-alloydb_v1beta 0.18.0 → 0.20.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,49 @@ module Google
777
882
  end
778
883
  end
779
884
 
885
+ # Options for exporting data in CSV format.
886
+ class CsvExportOptions
887
+ include Google::Apis::Core::Hashable
888
+
889
+ # Optional. Specifies the character that should appear before a data character
890
+ # that needs to be escaped. The default is the same as quote character. The
891
+ # value of this argument has to be a character in Hex ASCII Code.
892
+ # Corresponds to the JSON property `escapeCharacter`
893
+ # @return [String]
894
+ attr_accessor :escape_character
895
+
896
+ # Optional. Specifies the character that separates columns within each row (line)
897
+ # of the file. The default is comma. The value of this argument has to be a
898
+ # character in Hex ASCII Code.
899
+ # Corresponds to the JSON property `fieldDelimiter`
900
+ # @return [String]
901
+ attr_accessor :field_delimiter
902
+
903
+ # Optional. Specifies the quoting character to be used when a data value is
904
+ # quoted. The default is double-quote. The value of this argument has to be a
905
+ # character in Hex ASCII Code.
906
+ # Corresponds to the JSON property `quoteCharacter`
907
+ # @return [String]
908
+ attr_accessor :quote_character
909
+
910
+ # Required. The SELECT query used to extract the data.
911
+ # Corresponds to the JSON property `selectQuery`
912
+ # @return [String]
913
+ attr_accessor :select_query
914
+
915
+ def initialize(**args)
916
+ update!(**args)
917
+ end
918
+
919
+ # Update properties of this object
920
+ def update!(**args)
921
+ @escape_character = args[:escape_character] if args.key?(:escape_character)
922
+ @field_delimiter = args[:field_delimiter] if args.key?(:field_delimiter)
923
+ @quote_character = args[:quote_character] if args.key?(:quote_character)
924
+ @select_query = args[:select_query] if args.key?(:select_query)
925
+ end
926
+ end
927
+
780
928
  # A generic empty message that you can re-use to avoid defining duplicated empty
781
929
  # messages in your APIs. A typical example is to use it as the request or the
782
930
  # response type of an API method. For instance: service Foo ` rpc Bar(google.
@@ -841,26 +989,66 @@ module Google
841
989
  end
842
990
  end
843
991
 
992
+ # Export cluster request.
993
+ class ExportClusterRequest
994
+ include Google::Apis::Core::Hashable
995
+
996
+ # Options for exporting data in CSV format.
997
+ # Corresponds to the JSON property `csvExportOptions`
998
+ # @return [Google::Apis::AlloydbV1beta::CsvExportOptions]
999
+ attr_accessor :csv_export_options
1000
+
1001
+ # Required. Name of the database where the export command will be executed. Note
1002
+ # - Value provided should be the same as expected from `SELECT current_database()
1003
+ # ;` and NOT as a resource reference.
1004
+ # Corresponds to the JSON property `database`
1005
+ # @return [String]
1006
+ attr_accessor :database
1007
+
1008
+ # Destination for Export. Export will be done to cloud storage.
1009
+ # Corresponds to the JSON property `gcsDestination`
1010
+ # @return [Google::Apis::AlloydbV1beta::GcsDestination]
1011
+ attr_accessor :gcs_destination
1012
+
1013
+ # Options for exporting data in SQL format.
1014
+ # Corresponds to the JSON property `sqlExportOptions`
1015
+ # @return [Google::Apis::AlloydbV1beta::SqlExportOptions]
1016
+ attr_accessor :sql_export_options
1017
+
1018
+ def initialize(**args)
1019
+ update!(**args)
1020
+ end
1021
+
1022
+ # Update properties of this object
1023
+ def update!(**args)
1024
+ @csv_export_options = args[:csv_export_options] if args.key?(:csv_export_options)
1025
+ @database = args[:database] if args.key?(:database)
1026
+ @gcs_destination = args[:gcs_destination] if args.key?(:gcs_destination)
1027
+ @sql_export_options = args[:sql_export_options] if args.key?(:sql_export_options)
1028
+ end
1029
+ end
1030
+
844
1031
  # Message for triggering failover on an Instance
845
1032
  class FailoverInstanceRequest
846
1033
  include Google::Apis::Core::Hashable
847
1034
 
848
1035
  # 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).
1036
+ # request ID so that if you must retry your request, the server ignores the
1037
+ # request if it has already been completed. The server guarantees that for at
1038
+ # least 60 minutes since the first request. For example, consider a situation
1039
+ # where you make an initial request and the request times out. If you make the
1040
+ # request again with the same request ID, the server can check if the original
1041
+ # operation with the same request ID was received, and if so, ignores the second
1042
+ # request. This prevents clients from accidentally creating duplicate
1043
+ # commitments. The request ID must be a valid UUID with the exception that zero
1044
+ # UUID is not supported (00000000-0000-0000-0000-000000000000).
858
1045
  # Corresponds to the JSON property `requestId`
859
1046
  # @return [String]
860
1047
  attr_accessor :request_id
861
1048
 
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.
1049
+ # Optional. If set, performs request validation, for example, permission checks
1050
+ # and any other type of validation, but does not actually execute the create
1051
+ # request.
864
1052
  # Corresponds to the JSON property `validateOnly`
865
1053
  # @return [Boolean]
866
1054
  attr_accessor :validate_only
@@ -877,6 +1065,26 @@ module Google
877
1065
  end
878
1066
  end
879
1067
 
1068
+ # Destination for Export. Export will be done to cloud storage.
1069
+ class GcsDestination
1070
+ include Google::Apis::Core::Hashable
1071
+
1072
+ # Required. The path to the file in Google Cloud Storage where the export will
1073
+ # be stored. The URI is in the form `gs://bucketName/fileName`.
1074
+ # Corresponds to the JSON property `uri`
1075
+ # @return [String]
1076
+ attr_accessor :uri
1077
+
1078
+ def initialize(**args)
1079
+ update!(**args)
1080
+ end
1081
+
1082
+ # Update properties of this object
1083
+ def update!(**args)
1084
+ @uri = args[:uri] if args.key?(:uri)
1085
+ end
1086
+ end
1087
+
880
1088
  # Cluster level configuration parameters related to the Gemini in Databases add-
881
1089
  # on.
882
1090
  class GeminiClusterConfig
@@ -1003,24 +1211,28 @@ module Google
1003
1211
  class GoogleTypeTimeOfDay
1004
1212
  include Google::Apis::Core::Hashable
1005
1213
 
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.
1214
+ # Hours of a day in 24 hour format. Must be greater than or equal to 0 and
1215
+ # typically must be less than or equal to 23. An API may choose to allow the
1216
+ # value "24:00:00" for scenarios like business closing time.
1008
1217
  # Corresponds to the JSON property `hours`
1009
1218
  # @return [Fixnum]
1010
1219
  attr_accessor :hours
1011
1220
 
1012
- # Minutes of hour of day. Must be from 0 to 59.
1221
+ # Minutes of an hour. Must be greater than or equal to 0 and less than or equal
1222
+ # to 59.
1013
1223
  # Corresponds to the JSON property `minutes`
1014
1224
  # @return [Fixnum]
1015
1225
  attr_accessor :minutes
1016
1226
 
1017
- # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
1227
+ # Fractions of seconds, in nanoseconds. Must be greater than or equal to 0 and
1228
+ # less than or equal to 999,999,999.
1018
1229
  # Corresponds to the JSON property `nanos`
1019
1230
  # @return [Fixnum]
1020
1231
  attr_accessor :nanos
1021
1232
 
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.
1233
+ # Seconds of a minute. Must be greater than or equal to 0 and typically must be
1234
+ # less than or equal to 59. An API may allow the value 60 if it allows leap-
1235
+ # seconds.
1024
1236
  # Corresponds to the JSON property `seconds`
1025
1237
  # @return [Fixnum]
1026
1238
  attr_accessor :seconds
@@ -1048,21 +1260,22 @@ module Google
1048
1260
  attr_accessor :fault_type
1049
1261
 
1050
1262
  # 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).
1263
+ # request ID so that if you must retry your request, the server ignores the
1264
+ # request if it has already been completed. The server guarantees that for at
1265
+ # least 60 minutes since the first request. For example, consider a situation
1266
+ # where you make an initial request and the request times out. If you make the
1267
+ # request again with the same request ID, the server can check if the original
1268
+ # operation with the same request ID was received, and if so, ignores the second
1269
+ # request. This prevents clients from accidentally creating duplicate
1270
+ # commitments. The request ID must be a valid UUID with the exception that zero
1271
+ # UUID is not supported (00000000-0000-0000-0000-000000000000).
1060
1272
  # Corresponds to the JSON property `requestId`
1061
1273
  # @return [String]
1062
1274
  attr_accessor :request_id
1063
1275
 
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.
1276
+ # Optional. If set, performs request validation, for example, permission checks
1277
+ # and any other type of validation, but does not actually execute the create
1278
+ # request.
1066
1279
  # Corresponds to the JSON property `validateOnly`
1067
1280
  # @return [Boolean]
1068
1281
  attr_accessor :validate_only
@@ -1110,16 +1323,17 @@ module Google
1110
1323
  # @return [String]
1111
1324
  attr_accessor :create_time
1112
1325
 
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.
1326
+ # Database flags. Set at the instance level. They are copied from the primary
1327
+ # instance on secondary instance creation. Flags that have restrictions default
1328
+ # to the value at primary instance on read instances during creation. Read
1329
+ # instances can set new flags or override existing flags that are relevant for
1330
+ # reads, for example, for enabling columnar cache on a read instance. Flags set
1331
+ # on read instance might or might not be present on the primary instance. This
1332
+ # is a list of "key": "value" pairs. "key": The name of the flag. These flags
1333
+ # are passed at instance setup time, so include both server options and system
1334
+ # variables for Postgres. Flags are specified with underscores, not hyphens. "
1335
+ # value": The value of the flag. Booleans are set to **on** for true and **off**
1336
+ # for false. This field must be omitted if the flag doesn't take a value.
1123
1337
  # Corresponds to the JSON property `databaseFlags`
1124
1338
  # @return [Hash<String,String>]
1125
1339
  attr_accessor :database_flags
@@ -1187,7 +1401,7 @@ module Google
1187
1401
  # @return [String]
1188
1402
  attr_accessor :name
1189
1403
 
1190
- # Metadata related to instance level network configuration.
1404
+ # Metadata related to instance-level network configuration.
1191
1405
  # Corresponds to the JSON property `networkConfig`
1192
1406
  # @return [Google::Apis::AlloydbV1beta::InstanceNetworkConfig]
1193
1407
  attr_accessor :network_config
@@ -1313,7 +1527,7 @@ module Google
1313
1527
  end
1314
1528
  end
1315
1529
 
1316
- # Metadata related to instance level network configuration.
1530
+ # Metadata related to instance-level network configuration.
1317
1531
  class InstanceNetworkConfig
1318
1532
  include Google::Apis::Core::Hashable
1319
1533
 
@@ -1347,6 +1561,37 @@ module Google
1347
1561
  end
1348
1562
  end
1349
1563
 
1564
+ # Details regarding the upgrade of instaces associated with a cluster.
1565
+ class InstanceUpgradeDetails
1566
+ include Google::Apis::Core::Hashable
1567
+
1568
+ # Instance type.
1569
+ # Corresponds to the JSON property `instanceType`
1570
+ # @return [String]
1571
+ attr_accessor :instance_type
1572
+
1573
+ # Normalized name of the instance.
1574
+ # Corresponds to the JSON property `name`
1575
+ # @return [String]
1576
+ attr_accessor :name
1577
+
1578
+ # Upgrade status of the instance.
1579
+ # Corresponds to the JSON property `upgradeStatus`
1580
+ # @return [String]
1581
+ attr_accessor :upgrade_status
1582
+
1583
+ def initialize(**args)
1584
+ update!(**args)
1585
+ end
1586
+
1587
+ # Update properties of this object
1588
+ def update!(**args)
1589
+ @instance_type = args[:instance_type] if args.key?(:instance_type)
1590
+ @name = args[:name] if args.key?(:name)
1591
+ @upgrade_status = args[:upgrade_status] if args.key?(:upgrade_status)
1592
+ end
1593
+ end
1594
+
1350
1595
  # Restrictions on INTEGER type values.
1351
1596
  class IntegerRestrictions
1352
1597
  include Google::Apis::Core::Hashable
@@ -1786,6 +2031,12 @@ module Google
1786
2031
  attr_accessor :track_active_queries
1787
2032
  alias_method :track_active_queries?, :track_active_queries
1788
2033
 
2034
+ # Track client address for an instance. If not set, default value is "off".
2035
+ # Corresponds to the JSON property `trackClientAddress`
2036
+ # @return [Boolean]
2037
+ attr_accessor :track_client_address
2038
+ alias_method :track_client_address?, :track_client_address
2039
+
1789
2040
  # Output only. Track wait event types during query execution for an instance.
1790
2041
  # This flag is turned "on" by default but tracking is enabled only after
1791
2042
  # observability enabled flag is also turned on. This is read-only flag and only
@@ -1815,6 +2066,7 @@ module Google
1815
2066
  @query_plans_per_minute = args[:query_plans_per_minute] if args.key?(:query_plans_per_minute)
1816
2067
  @record_application_tags = args[:record_application_tags] if args.key?(:record_application_tags)
1817
2068
  @track_active_queries = args[:track_active_queries] if args.key?(:track_active_queries)
2069
+ @track_client_address = args[:track_client_address] if args.key?(:track_client_address)
1818
2070
  @track_wait_event_types = args[:track_wait_event_types] if args.key?(:track_wait_event_types)
1819
2071
  @track_wait_events = args[:track_wait_events] if args.key?(:track_wait_events)
1820
2072
  end
@@ -1902,9 +2154,9 @@ module Google
1902
2154
  attr_accessor :end_time
1903
2155
 
1904
2156
  # Output only. Identifies whether the user has requested cancellation of the
1905
- # operation. Operations that have successfully been cancelled have Operation.
1906
- # error value with a google.rpc.Status.code of 1, corresponding to `Code.
1907
- # CANCELLED`.
2157
+ # operation. Operations that have successfully been cancelled have google.
2158
+ # longrunning.Operation.error value with a google.rpc.Status.code of 1,
2159
+ # corresponding to `Code.CANCELLED`.
1908
2160
  # Corresponds to the JSON property `requestedCancellation`
1909
2161
  # @return [Boolean]
1910
2162
  attr_accessor :requested_cancellation
@@ -1974,21 +2226,22 @@ module Google
1974
2226
  attr_accessor :etag
1975
2227
 
1976
2228
  # 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).
2229
+ # request ID so that if you must retry your request, the server ignores the
2230
+ # request if it has already been completed. The server guarantees that for at
2231
+ # least 60 minutes since the first request. For example, consider a situation
2232
+ # where you make an initial request and the request times out. If you make the
2233
+ # request again with the same request ID, the server can check if original
2234
+ # operation with the same request ID was received, and if so, will ignore the
2235
+ # second request. This prevents clients from accidentally creating duplicate
2236
+ # commitments. The request ID must be a valid UUID with the exception that zero
2237
+ # UUID is not supported (00000000-0000-0000-0000-000000000000).
1986
2238
  # Corresponds to the JSON property `requestId`
1987
2239
  # @return [String]
1988
2240
  attr_accessor :request_id
1989
2241
 
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.
2242
+ # Optional. If set, performs request validation, for example, permission checks
2243
+ # and any other type of validation, but does not actually execute the create
2244
+ # request.
1992
2245
  # Corresponds to the JSON property `validateOnly`
1993
2246
  # @return [Boolean]
1994
2247
  attr_accessor :validate_only
@@ -2182,22 +2435,29 @@ module Google
2182
2435
  class RestartInstanceRequest
2183
2436
  include Google::Apis::Core::Hashable
2184
2437
 
2438
+ # Optional. Full name of the nodes as obtained from INSTANCE_VIEW_FULL to
2439
+ # restart upon. Applicable only to read instances.
2440
+ # Corresponds to the JSON property `nodeIds`
2441
+ # @return [Array<String>]
2442
+ attr_accessor :node_ids
2443
+
2185
2444
  # 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).
2445
+ # request ID so that if you must retry your request, the server ignores the
2446
+ # request if it has already been completed. The server guarantees that for at
2447
+ # least 60 minutes since the first request. For example, consider a situation
2448
+ # where you make an initial request and the request times out. If you make the
2449
+ # request again with the same request ID, the server can check if the original
2450
+ # operation with the same request ID was received, and if so, ignores the second
2451
+ # request. This prevents clients from accidentally creating duplicate
2452
+ # commitments. The request ID must be a valid UUID with the exception that zero
2453
+ # UUID is not supported (00000000-0000-0000-0000-000000000000).
2195
2454
  # Corresponds to the JSON property `requestId`
2196
2455
  # @return [String]
2197
2456
  attr_accessor :request_id
2198
2457
 
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.
2458
+ # Optional. If set, performs request validation, for example, permission checks
2459
+ # and any other type of validation, but does not actually execute the create
2460
+ # request.
2201
2461
  # Corresponds to the JSON property `validateOnly`
2202
2462
  # @return [Boolean]
2203
2463
  attr_accessor :validate_only
@@ -2209,6 +2469,7 @@ module Google
2209
2469
 
2210
2470
  # Update properties of this object
2211
2471
  def update!(**args)
2472
+ @node_ids = args[:node_ids] if args.key?(:node_ids)
2212
2473
  @request_id = args[:request_id] if args.key?(:request_id)
2213
2474
  @validate_only = args[:validate_only] if args.key?(:validate_only)
2214
2475
  end
@@ -2242,21 +2503,22 @@ module Google
2242
2503
  attr_accessor :continuous_backup_source
2243
2504
 
2244
2505
  # 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).
2506
+ # request ID so that if you must retry your request, the server ignores the
2507
+ # request if it has already been completed. The server guarantees that for at
2508
+ # least 60 minutes since the first request. For example, consider a situation
2509
+ # where you make an initial request and the request times out. If you make the
2510
+ # request again with the same request ID, the server can check if the original
2511
+ # operation with the same request ID was received, and if so, ignores the second
2512
+ # request. This prevents clients from accidentally creating duplicate
2513
+ # commitments. The request ID must be a valid UUID with the exception that zero
2514
+ # UUID is not supported (00000000-0000-0000-0000-000000000000).
2254
2515
  # Corresponds to the JSON property `requestId`
2255
2516
  # @return [String]
2256
2517
  attr_accessor :request_id
2257
2518
 
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.
2519
+ # Optional. If set, performs request validation, for example, permission checks
2520
+ # and any other type of validation, but does not actually execute the create
2521
+ # request.
2260
2522
  # Corresponds to the JSON property `validateOnly`
2261
2523
  # @return [Boolean]
2262
2524
  attr_accessor :validate_only
@@ -2277,6 +2539,39 @@ module Google
2277
2539
  end
2278
2540
  end
2279
2541
 
2542
+ # Message for registering Restoring from CloudSQL resource.
2543
+ class RestoreFromCloudSqlRequest
2544
+ include Google::Apis::Core::Hashable
2545
+
2546
+ # The source CloudSQL backup resource.
2547
+ # Corresponds to the JSON property `cloudsqlBackupRunSource`
2548
+ # @return [Google::Apis::AlloydbV1beta::CloudSqlBackupRunSource]
2549
+ attr_accessor :cloudsql_backup_run_source
2550
+
2551
+ # A cluster is a collection of regional AlloyDB resources. It can include a
2552
+ # primary instance and one or more read pool instances. All cluster resources
2553
+ # share a storage layer, which scales as needed.
2554
+ # Corresponds to the JSON property `cluster`
2555
+ # @return [Google::Apis::AlloydbV1beta::Cluster]
2556
+ attr_accessor :cluster
2557
+
2558
+ # Required. ID of the requesting object.
2559
+ # Corresponds to the JSON property `clusterId`
2560
+ # @return [String]
2561
+ attr_accessor :cluster_id
2562
+
2563
+ def initialize(**args)
2564
+ update!(**args)
2565
+ end
2566
+
2567
+ # Update properties of this object
2568
+ def update!(**args)
2569
+ @cloudsql_backup_run_source = args[:cloudsql_backup_run_source] if args.key?(:cloudsql_backup_run_source)
2570
+ @cluster = args[:cluster] if args.key?(:cluster)
2571
+ @cluster_id = args[:cluster_id] if args.key?(:cluster_id)
2572
+ end
2573
+ end
2574
+
2280
2575
  # Configuration information for the secondary cluster. This should be set if and
2281
2576
  # only if the cluster is of type SECONDARY.
2282
2577
  class SecondaryConfig
@@ -2298,6 +2593,48 @@ module Google
2298
2593
  end
2299
2594
  end
2300
2595
 
2596
+ # Options for exporting data in SQL format.
2597
+ class SqlExportOptions
2598
+ include Google::Apis::Core::Hashable
2599
+
2600
+ # Optional. If true, output commands to DROP all the dumped database objects
2601
+ # prior to outputting the commands for creating them.
2602
+ # Corresponds to the JSON property `cleanTargetObjects`
2603
+ # @return [Boolean]
2604
+ attr_accessor :clean_target_objects
2605
+ alias_method :clean_target_objects?, :clean_target_objects
2606
+
2607
+ # Optional. If true, use DROP ... IF EXISTS commands to check for the object's
2608
+ # existence before dropping it in clean_target_objects mode.
2609
+ # Corresponds to the JSON property `ifExistTargetObjects`
2610
+ # @return [Boolean]
2611
+ attr_accessor :if_exist_target_objects
2612
+ alias_method :if_exist_target_objects?, :if_exist_target_objects
2613
+
2614
+ # Optional. If true, only export the schema.
2615
+ # Corresponds to the JSON property `schemaOnly`
2616
+ # @return [Boolean]
2617
+ attr_accessor :schema_only
2618
+ alias_method :schema_only?, :schema_only
2619
+
2620
+ # Optional. Tables to export from.
2621
+ # Corresponds to the JSON property `tables`
2622
+ # @return [Array<String>]
2623
+ attr_accessor :tables
2624
+
2625
+ def initialize(**args)
2626
+ update!(**args)
2627
+ end
2628
+
2629
+ # Update properties of this object
2630
+ def update!(**args)
2631
+ @clean_target_objects = args[:clean_target_objects] if args.key?(:clean_target_objects)
2632
+ @if_exist_target_objects = args[:if_exist_target_objects] if args.key?(:if_exist_target_objects)
2633
+ @schema_only = args[:schema_only] if args.key?(:schema_only)
2634
+ @tables = args[:tables] if args.key?(:tables)
2635
+ end
2636
+ end
2637
+
2301
2638
  # SSL configuration.
2302
2639
  class SslConfig
2303
2640
  include Google::Apis::Core::Hashable
@@ -2324,6 +2661,39 @@ module Google
2324
2661
  end
2325
2662
  end
2326
2663
 
2664
+ # Stage information for different stages in the upgrade process.
2665
+ class StageInfo
2666
+ include Google::Apis::Core::Hashable
2667
+
2668
+ # logs_url is the URL for the logs associated with a stage if that stage has
2669
+ # logs. Right now, only three stages have logs: ALLOYDB_PRECHECK,
2670
+ # PG_UPGRADE_CHECK, PRIMARY_INSTANCE_UPGRADE.
2671
+ # Corresponds to the JSON property `logsUrl`
2672
+ # @return [String]
2673
+ attr_accessor :logs_url
2674
+
2675
+ # The stage.
2676
+ # Corresponds to the JSON property `stage`
2677
+ # @return [String]
2678
+ attr_accessor :stage
2679
+
2680
+ # Status of the stage.
2681
+ # Corresponds to the JSON property `status`
2682
+ # @return [String]
2683
+ attr_accessor :status
2684
+
2685
+ def initialize(**args)
2686
+ update!(**args)
2687
+ end
2688
+
2689
+ # Update properties of this object
2690
+ def update!(**args)
2691
+ @logs_url = args[:logs_url] if args.key?(:logs_url)
2692
+ @stage = args[:stage] if args.key?(:stage)
2693
+ @status = args[:status] if args.key?(:status)
2694
+ end
2695
+ end
2696
+
2327
2697
  # The `Status` type defines a logical error model that is suitable for different
2328
2698
  # programming environments, including REST APIs and RPC APIs. It is used by [
2329
2699
  # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
@@ -2367,6 +2737,14 @@ module Google
2367
2737
  class StorageDatabasecenterPartnerapiV1mainAvailabilityConfiguration
2368
2738
  include Google::Apis::Core::Hashable
2369
2739
 
2740
+ # Checks for existence of (multi-cluster) routing configuration that allows
2741
+ # automatic failover to a different zone/region in case of an outage. Applicable
2742
+ # to Bigtable resources.
2743
+ # Corresponds to the JSON property `automaticFailoverRoutingConfigured`
2744
+ # @return [Boolean]
2745
+ attr_accessor :automatic_failover_routing_configured
2746
+ alias_method :automatic_failover_routing_configured?, :automatic_failover_routing_configured
2747
+
2370
2748
  # Availability type. Potential values: * `ZONAL`: The instance serves data from
2371
2749
  # only one zone. Outages in that zone affect data accessibility. * `REGIONAL`:
2372
2750
  # The instance can serve data from more than one zone in a region (it is highly
@@ -2400,6 +2778,7 @@ module Google
2400
2778
 
2401
2779
  # Update properties of this object
2402
2780
  def update!(**args)
2781
+ @automatic_failover_routing_configured = args[:automatic_failover_routing_configured] if args.key?(:automatic_failover_routing_configured)
2403
2782
  @availability_type = args[:availability_type] if args.key?(:availability_type)
2404
2783
  @cross_region_replica_configured = args[:cross_region_replica_configured] if args.key?(:cross_region_replica_configured)
2405
2784
  @external_replica_configured = args[:external_replica_configured] if args.key?(:external_replica_configured)
@@ -2505,57 +2884,17 @@ module Google
2505
2884
  end
2506
2885
  end
2507
2886
 
2508
- # Any custom metadata associated with the resource. i.e. A spanner instance can
2887
+ # Any custom metadata associated with the resource. e.g. A spanner instance can
2509
2888
  # have multiple databases with its own unique metadata. Information for these
2510
2889
  # individual databases can be captured in custom metadata data
2511
2890
  class StorageDatabasecenterPartnerapiV1mainCustomMetadataData
2512
2891
  include Google::Apis::Core::Hashable
2513
2892
 
2514
- #
2515
- # Corresponds to the JSON property `databaseMetadata`
2516
- # @return [Array<Google::Apis::AlloydbV1beta::StorageDatabasecenterPartnerapiV1mainDatabaseMetadata>]
2517
- attr_accessor :database_metadata
2518
-
2519
- def initialize(**args)
2520
- update!(**args)
2521
- end
2522
-
2523
- # Update properties of this object
2524
- 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
2893
+ # Metadata for individual internal resources in an instance. e.g. spanner
2894
+ # instance can have multiple databases with unique configuration.
2895
+ # Corresponds to the JSON property `internalResourceMetadata`
2896
+ # @return [Array<Google::Apis::AlloydbV1beta::StorageDatabasecenterPartnerapiV1mainInternalResourceMetadata>]
2897
+ attr_accessor :internal_resource_metadata
2559
2898
 
2560
2899
  def initialize(**args)
2561
2900
  update!(**args)
@@ -2563,11 +2902,7 @@ module Google
2563
2902
 
2564
2903
  # Update properties of this object
2565
2904
  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)
2905
+ @internal_resource_metadata = args[:internal_resource_metadata] if args.key?(:internal_resource_metadata)
2571
2906
  end
2572
2907
  end
2573
2908
 
@@ -2586,7 +2921,7 @@ module Google
2586
2921
  # @return [String]
2587
2922
  attr_accessor :feed_type
2588
2923
 
2589
- # More feed data would be added in subsequent CLs
2924
+ #
2590
2925
  # Corresponds to the JSON property `observabilityMetricData`
2591
2926
  # @return [Google::Apis::AlloydbV1beta::StorageDatabasecenterPartnerapiV1mainObservabilityMetricData]
2592
2927
  attr_accessor :observability_metric_data
@@ -2606,7 +2941,7 @@ module Google
2606
2941
  # @return [Google::Apis::AlloydbV1beta::StorageDatabasecenterPartnerapiV1mainDatabaseResourceId]
2607
2942
  attr_accessor :resource_id
2608
2943
 
2609
- # Common model for database resource instance metadata.
2944
+ # Common model for database resource instance metadata. Next ID: 23
2610
2945
  # Corresponds to the JSON property `resourceMetadata`
2611
2946
  # @return [Google::Apis::AlloydbV1beta::StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata]
2612
2947
  attr_accessor :resource_metadata
@@ -2699,6 +3034,11 @@ module Google
2699
3034
  # @return [String]
2700
3035
  attr_accessor :signal_id
2701
3036
 
3037
+ # The severity of the signal, such as if it's a HIGH or LOW severity.
3038
+ # Corresponds to the JSON property `signalSeverity`
3039
+ # @return [String]
3040
+ attr_accessor :signal_severity
3041
+
2702
3042
  # Required. Type of signal, for example, `AVAILABLE_IN_MULTIPLE_ZONES`, `
2703
3043
  # LOGGING_MOST_ERRORS`, etc.
2704
3044
  # Corresponds to the JSON property `signalType`
@@ -2727,6 +3067,7 @@ module Google
2727
3067
  @resource_name = args[:resource_name] if args.key?(:resource_name)
2728
3068
  @signal_class = args[:signal_class] if args.key?(:signal_class)
2729
3069
  @signal_id = args[:signal_id] if args.key?(:signal_id)
3070
+ @signal_severity = args[:signal_severity] if args.key?(:signal_severity)
2730
3071
  @signal_type = args[:signal_type] if args.key?(:signal_type)
2731
3072
  @state = args[:state] if args.key?(:state)
2732
3073
  end
@@ -2748,8 +3089,10 @@ module Google
2748
3089
 
2749
3090
  # Required. The type of resource this ID is identifying. Ex redis.googleapis.com/
2750
3091
  # 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
3092
+ # alloydb.googleapis.com/Instance, spanner.googleapis.com/Instance, spanner.
3093
+ # googleapis.com/Database, firestore.googleapis.com/Database, sqladmin.
3094
+ # googleapis.com/Instance, bigtableadmin.googleapis.com/Cluster, bigtableadmin.
3095
+ # googleapis.com/Instance REQUIRED Please refer go/condor-common-datamodel
2753
3096
  # Corresponds to the JSON property `resourceType`
2754
3097
  # @return [String]
2755
3098
  attr_accessor :resource_type
@@ -2773,7 +3116,7 @@ module Google
2773
3116
  end
2774
3117
  end
2775
3118
 
2776
- # Common model for database resource instance metadata.
3119
+ # Common model for database resource instance metadata. Next ID: 23
2777
3120
  class StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata
2778
3121
  include Google::Apis::Core::Hashable
2779
3122
 
@@ -2803,13 +3146,20 @@ module Google
2803
3146
  # @return [String]
2804
3147
  attr_accessor :current_state
2805
3148
 
2806
- # Any custom metadata associated with the resource. i.e. A spanner instance can
3149
+ # Any custom metadata associated with the resource. e.g. A spanner instance can
2807
3150
  # have multiple databases with its own unique metadata. Information for these
2808
3151
  # individual databases can be captured in custom metadata data
2809
3152
  # Corresponds to the JSON property `customMetadata`
2810
3153
  # @return [Google::Apis::AlloydbV1beta::StorageDatabasecenterPartnerapiV1mainCustomMetadataData]
2811
3154
  attr_accessor :custom_metadata
2812
3155
 
3156
+ # Optional. Edition represents whether the instance is ENTERPRISE or
3157
+ # ENTERPRISE_PLUS. This information is core to Cloud SQL only and is used to
3158
+ # identify the edition of the instance.
3159
+ # Corresponds to the JSON property `edition`
3160
+ # @return [String]
3161
+ attr_accessor :edition
3162
+
2813
3163
  # Entitlements associated with the resource
2814
3164
  # Corresponds to the JSON property `entitlements`
2815
3165
  # @return [Array<Google::Apis::AlloydbV1beta::StorageDatabasecenterPartnerapiV1mainEntitlement>]
@@ -2848,6 +3198,12 @@ module Google
2848
3198
  # @return [Google::Apis::AlloydbV1beta::StorageDatabasecenterPartnerapiV1mainDatabaseResourceId]
2849
3199
  attr_accessor :primary_resource_id
2850
3200
 
3201
+ # Primary resource location. REQUIRED if the immediate parent exists when first
3202
+ # time resource is getting ingested, otherwise optional.
3203
+ # Corresponds to the JSON property `primaryResourceLocation`
3204
+ # @return [String]
3205
+ attr_accessor :primary_resource_location
3206
+
2851
3207
  # Product specification for Condor resources.
2852
3208
  # Corresponds to the JSON property `product`
2853
3209
  # @return [Google::Apis::AlloydbV1beta::StorageDatabasecenterProtoCommonProduct]
@@ -2869,6 +3225,13 @@ module Google
2869
3225
  # @return [String]
2870
3226
  attr_accessor :resource_name
2871
3227
 
3228
+ # Message type for storing tags. Tags provide a way to create annotations for
3229
+ # resources, and in some cases conditionally allow or deny policies based on
3230
+ # whether a resource has a specific tag.
3231
+ # Corresponds to the JSON property `tagsSet`
3232
+ # @return [Google::Apis::AlloydbV1beta::StorageDatabasecenterPartnerapiV1mainTags]
3233
+ attr_accessor :tags_set
3234
+
2872
3235
  # The time at which the resource was updated and recorded at partner service.
2873
3236
  # Corresponds to the JSON property `updationTime`
2874
3237
  # @return [String]
@@ -2893,6 +3256,7 @@ module Google
2893
3256
  @creation_time = args[:creation_time] if args.key?(:creation_time)
2894
3257
  @current_state = args[:current_state] if args.key?(:current_state)
2895
3258
  @custom_metadata = args[:custom_metadata] if args.key?(:custom_metadata)
3259
+ @edition = args[:edition] if args.key?(:edition)
2896
3260
  @entitlements = args[:entitlements] if args.key?(:entitlements)
2897
3261
  @expected_state = args[:expected_state] if args.key?(:expected_state)
2898
3262
  @id = args[:id] if args.key?(:id)
@@ -2900,9 +3264,11 @@ module Google
2900
3264
  @location = args[:location] if args.key?(:location)
2901
3265
  @machine_configuration = args[:machine_configuration] if args.key?(:machine_configuration)
2902
3266
  @primary_resource_id = args[:primary_resource_id] if args.key?(:primary_resource_id)
3267
+ @primary_resource_location = args[:primary_resource_location] if args.key?(:primary_resource_location)
2903
3268
  @product = args[:product] if args.key?(:product)
2904
3269
  @resource_container = args[:resource_container] if args.key?(:resource_container)
2905
3270
  @resource_name = args[:resource_name] if args.key?(:resource_name)
3271
+ @tags_set = args[:tags_set] if args.key?(:tags_set)
2906
3272
  @updation_time = args[:updation_time] if args.key?(:updation_time)
2907
3273
  @user_label_set = args[:user_label_set] if args.key?(:user_label_set)
2908
3274
  end
@@ -3007,6 +3373,52 @@ module Google
3007
3373
  end
3008
3374
  end
3009
3375
 
3376
+ # Metadata for individual internal resources in an instance. e.g. spanner
3377
+ # instance can have multiple databases with unique configuration settings.
3378
+ # Similarly bigtable can have multiple clusters within same bigtable instance.
3379
+ class StorageDatabasecenterPartnerapiV1mainInternalResourceMetadata
3380
+ include Google::Apis::Core::Hashable
3381
+
3382
+ # Configuration for automatic backups
3383
+ # Corresponds to the JSON property `backupConfiguration`
3384
+ # @return [Google::Apis::AlloydbV1beta::StorageDatabasecenterPartnerapiV1mainBackupConfiguration]
3385
+ attr_accessor :backup_configuration
3386
+
3387
+ # A backup run.
3388
+ # Corresponds to the JSON property `backupRun`
3389
+ # @return [Google::Apis::AlloydbV1beta::StorageDatabasecenterPartnerapiV1mainBackupRun]
3390
+ attr_accessor :backup_run
3391
+
3392
+ # Product specification for Condor resources.
3393
+ # Corresponds to the JSON property `product`
3394
+ # @return [Google::Apis::AlloydbV1beta::StorageDatabasecenterProtoCommonProduct]
3395
+ attr_accessor :product
3396
+
3397
+ # DatabaseResourceId will serve as primary key for any resource ingestion event.
3398
+ # Corresponds to the JSON property `resourceId`
3399
+ # @return [Google::Apis::AlloydbV1beta::StorageDatabasecenterPartnerapiV1mainDatabaseResourceId]
3400
+ attr_accessor :resource_id
3401
+
3402
+ # Required. internal resource name for spanner this will be database name e.g."
3403
+ # spanner.googleapis.com/projects/123/abc/instances/inst1/databases/db1"
3404
+ # Corresponds to the JSON property `resourceName`
3405
+ # @return [String]
3406
+ attr_accessor :resource_name
3407
+
3408
+ def initialize(**args)
3409
+ update!(**args)
3410
+ end
3411
+
3412
+ # Update properties of this object
3413
+ def update!(**args)
3414
+ @backup_configuration = args[:backup_configuration] if args.key?(:backup_configuration)
3415
+ @backup_run = args[:backup_run] if args.key?(:backup_run)
3416
+ @product = args[:product] if args.key?(:product)
3417
+ @resource_id = args[:resource_id] if args.key?(:resource_id)
3418
+ @resource_name = args[:resource_name] if args.key?(:resource_name)
3419
+ end
3420
+ end
3421
+
3010
3422
  # MachineConfiguration describes the configuration of a machine specific to
3011
3423
  # Database Resource.
3012
3424
  class StorageDatabasecenterPartnerapiV1mainMachineConfiguration
@@ -3024,6 +3436,17 @@ module Google
3024
3436
  # @return [Fixnum]
3025
3437
  attr_accessor :memory_size_in_bytes
3026
3438
 
3439
+ # Optional. Number of shards (if applicable).
3440
+ # Corresponds to the JSON property `shardCount`
3441
+ # @return [Fixnum]
3442
+ attr_accessor :shard_count
3443
+
3444
+ # Optional. The number of vCPUs. TODO(b/342344482, b/342346271) add proto
3445
+ # validations again after bug fix.
3446
+ # Corresponds to the JSON property `vcpuCount`
3447
+ # @return [Float]
3448
+ attr_accessor :vcpu_count
3449
+
3027
3450
  def initialize(**args)
3028
3451
  update!(**args)
3029
3452
  end
@@ -3032,6 +3455,8 @@ module Google
3032
3455
  def update!(**args)
3033
3456
  @cpu_count = args[:cpu_count] if args.key?(:cpu_count)
3034
3457
  @memory_size_in_bytes = args[:memory_size_in_bytes] if args.key?(:memory_size_in_bytes)
3458
+ @shard_count = args[:shard_count] if args.key?(:shard_count)
3459
+ @vcpu_count = args[:vcpu_count] if args.key?(:vcpu_count)
3035
3460
  end
3036
3461
  end
3037
3462
 
@@ -3115,6 +3540,11 @@ module Google
3115
3540
  class StorageDatabasecenterPartnerapiV1mainRetentionSettings
3116
3541
  include Google::Apis::Core::Hashable
3117
3542
 
3543
+ # Duration based retention period i.e. 172800 seconds (2 days)
3544
+ # Corresponds to the JSON property `durationBasedRetention`
3545
+ # @return [String]
3546
+ attr_accessor :duration_based_retention
3547
+
3118
3548
  #
3119
3549
  # Corresponds to the JSON property `quantityBasedRetention`
3120
3550
  # @return [Fixnum]
@@ -3130,15 +3560,43 @@ module Google
3130
3560
  # @return [String]
3131
3561
  attr_accessor :time_based_retention
3132
3562
 
3563
+ # Timestamp based retention period i.e. 2024-05-01T00:00:00Z
3564
+ # Corresponds to the JSON property `timestampBasedRetentionTime`
3565
+ # @return [String]
3566
+ attr_accessor :timestamp_based_retention_time
3567
+
3133
3568
  def initialize(**args)
3134
3569
  update!(**args)
3135
3570
  end
3136
3571
 
3137
3572
  # Update properties of this object
3138
3573
  def update!(**args)
3574
+ @duration_based_retention = args[:duration_based_retention] if args.key?(:duration_based_retention)
3139
3575
  @quantity_based_retention = args[:quantity_based_retention] if args.key?(:quantity_based_retention)
3140
3576
  @retention_unit = args[:retention_unit] if args.key?(:retention_unit)
3141
3577
  @time_based_retention = args[:time_based_retention] if args.key?(:time_based_retention)
3578
+ @timestamp_based_retention_time = args[:timestamp_based_retention_time] if args.key?(:timestamp_based_retention_time)
3579
+ end
3580
+ end
3581
+
3582
+ # Message type for storing tags. Tags provide a way to create annotations for
3583
+ # resources, and in some cases conditionally allow or deny policies based on
3584
+ # whether a resource has a specific tag.
3585
+ class StorageDatabasecenterPartnerapiV1mainTags
3586
+ include Google::Apis::Core::Hashable
3587
+
3588
+ # The Tag key/value mappings.
3589
+ # Corresponds to the JSON property `tags`
3590
+ # @return [Hash<String,String>]
3591
+ attr_accessor :tags
3592
+
3593
+ def initialize(**args)
3594
+ update!(**args)
3595
+ end
3596
+
3597
+ # Update properties of this object
3598
+ def update!(**args)
3599
+ @tags = args[:tags] if args.key?(:tags)
3142
3600
  end
3143
3601
  end
3144
3602
 
@@ -3332,21 +3790,22 @@ module Google
3332
3790
  include Google::Apis::Core::Hashable
3333
3791
 
3334
3792
  # 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).
3793
+ # request ID so that if you must retry your request, the server ignores the
3794
+ # request if it has already been completed. The server guarantees that for at
3795
+ # least 60 minutes since the first request. For example, consider a situation
3796
+ # where you make an initial request and the request times out. If you make the
3797
+ # request again with the same request ID, the server can check if the original
3798
+ # operation with the same request ID was received, and if so, ignores the second
3799
+ # request. This prevents clients from accidentally creating duplicate
3800
+ # commitments. The request ID must be a valid UUID with the exception that zero
3801
+ # UUID is not supported (00000000-0000-0000-0000-000000000000).
3344
3802
  # Corresponds to the JSON property `requestId`
3345
3803
  # @return [String]
3346
3804
  attr_accessor :request_id
3347
3805
 
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.
3806
+ # Optional. If set, performs request validation, for example, permission checks
3807
+ # and any other type of validation, but does not actually execute the create
3808
+ # request.
3350
3809
  # Corresponds to the JSON property `validateOnly`
3351
3810
  # @return [Boolean]
3352
3811
  attr_accessor :validate_only
@@ -3392,6 +3851,11 @@ module Google
3392
3851
  # @return [String]
3393
3852
  attr_accessor :end_time
3394
3853
 
3854
+ # grace end time of the cluster.
3855
+ # Corresponds to the JSON property `graceEndTime`
3856
+ # @return [String]
3857
+ attr_accessor :grace_end_time
3858
+
3395
3859
  # start time of the trial cluster.
3396
3860
  # Corresponds to the JSON property `startTime`
3397
3861
  # @return [String]
@@ -3409,6 +3873,7 @@ module Google
3409
3873
  # Update properties of this object
3410
3874
  def update!(**args)
3411
3875
  @end_time = args[:end_time] if args.key?(:end_time)
3876
+ @grace_end_time = args[:grace_end_time] if args.key?(:grace_end_time)
3412
3877
  @start_time = args[:start_time] if args.key?(:start_time)
3413
3878
  @upgrade_time = args[:upgrade_time] if args.key?(:upgrade_time)
3414
3879
  end
@@ -3433,6 +3898,90 @@ module Google
3433
3898
  end
3434
3899
  end
3435
3900
 
3901
+ # Upgrades a cluster.
3902
+ class UpgradeClusterRequest
3903
+ include Google::Apis::Core::Hashable
3904
+
3905
+ # Optional. The current etag of the Cluster. If an etag is provided and does not
3906
+ # match the current etag of the Cluster, upgrade will be blocked and an ABORTED
3907
+ # error will be returned.
3908
+ # Corresponds to the JSON property `etag`
3909
+ # @return [String]
3910
+ attr_accessor :etag
3911
+
3912
+ # Optional. An optional request ID to identify requests. Specify a unique
3913
+ # request ID so that if you must retry your request, the server ignores the
3914
+ # request if it has already been completed. The server guarantees that for at
3915
+ # least 60 minutes since the first request. For example, consider a situation
3916
+ # where you make an initial request and the request times out. If you make the
3917
+ # request again with the same request ID, the server can check if the original
3918
+ # operation with the same request ID was received, and if so, ignores the second
3919
+ # request. This prevents clients from accidentally creating duplicate
3920
+ # commitments. The request ID must be a valid UUID with the exception that zero
3921
+ # UUID is not supported (00000000-0000-0000-0000-000000000000).
3922
+ # Corresponds to the JSON property `requestId`
3923
+ # @return [String]
3924
+ attr_accessor :request_id
3925
+
3926
+ # Optional. If set, performs request validation, for example, permission checks
3927
+ # and any other type of validation, but does not actually execute the create
3928
+ # request.
3929
+ # Corresponds to the JSON property `validateOnly`
3930
+ # @return [Boolean]
3931
+ attr_accessor :validate_only
3932
+ alias_method :validate_only?, :validate_only
3933
+
3934
+ # Required. The version the cluster is going to be upgraded to.
3935
+ # Corresponds to the JSON property `version`
3936
+ # @return [String]
3937
+ attr_accessor :version
3938
+
3939
+ def initialize(**args)
3940
+ update!(**args)
3941
+ end
3942
+
3943
+ # Update properties of this object
3944
+ def update!(**args)
3945
+ @etag = args[:etag] if args.key?(:etag)
3946
+ @request_id = args[:request_id] if args.key?(:request_id)
3947
+ @validate_only = args[:validate_only] if args.key?(:validate_only)
3948
+ @version = args[:version] if args.key?(:version)
3949
+ end
3950
+ end
3951
+
3952
+ # UpgradeClusterResponse contains the response for upgrade cluster operation.
3953
+ class UpgradeClusterResponse
3954
+ include Google::Apis::Core::Hashable
3955
+
3956
+ # Array of upgrade details for the current cluster and all the secondary
3957
+ # clusters associated with this cluster.
3958
+ # Corresponds to the JSON property `clusterUpgradeDetails`
3959
+ # @return [Array<Google::Apis::AlloydbV1beta::ClusterUpgradeDetails>]
3960
+ attr_accessor :cluster_upgrade_details
3961
+
3962
+ # A user friendly message summarising the upgrade operation details and the next
3963
+ # steps for the user if there is any.
3964
+ # Corresponds to the JSON property `message`
3965
+ # @return [String]
3966
+ attr_accessor :message
3967
+
3968
+ # Status of upgrade operation.
3969
+ # Corresponds to the JSON property `status`
3970
+ # @return [String]
3971
+ attr_accessor :status
3972
+
3973
+ def initialize(**args)
3974
+ update!(**args)
3975
+ end
3976
+
3977
+ # Update properties of this object
3978
+ def update!(**args)
3979
+ @cluster_upgrade_details = args[:cluster_upgrade_details] if args.key?(:cluster_upgrade_details)
3980
+ @message = args[:message] if args.key?(:message)
3981
+ @status = args[:status] if args.key?(:status)
3982
+ end
3983
+ end
3984
+
3436
3985
  # Message describing User object.
3437
3986
  class User
3438
3987
  include Google::Apis::Core::Hashable
@@ -3443,6 +3992,13 @@ module Google
3443
3992
  # @return [Array<String>]
3444
3993
  attr_accessor :database_roles
3445
3994
 
3995
+ # Input only. If the user already exists and it has additional roles, keep them
3996
+ # granted.
3997
+ # Corresponds to the JSON property `keepExtraRoles`
3998
+ # @return [Boolean]
3999
+ attr_accessor :keep_extra_roles
4000
+ alias_method :keep_extra_roles?, :keep_extra_roles
4001
+
3446
4002
  # Output only. Name of the resource in the form of projects/`project`/locations/`
3447
4003
  # location`/cluster/`cluster`/users/`user`.
3448
4004
  # Corresponds to the JSON property `name`
@@ -3466,6 +4022,7 @@ module Google
3466
4022
  # Update properties of this object
3467
4023
  def update!(**args)
3468
4024
  @database_roles = args[:database_roles] if args.key?(:database_roles)
4025
+ @keep_extra_roles = args[:keep_extra_roles] if args.key?(:keep_extra_roles)
3469
4026
  @name = args[:name] if args.key?(:name)
3470
4027
  @password = args[:password] if args.key?(:password)
3471
4028
  @user_type = args[:user_type] if args.key?(:user_type)