google-apis-alloydb_v1beta 0.18.0 → 0.20.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -241,6 +241,13 @@ module Google
241
241
  # @return [String]
242
242
  attr_accessor :state
243
243
 
244
+ # Optional. Input only. Immutable. Tag keys/values directly bound to this
245
+ # resource. For example: ``` "123/environment": "production", "123/costCenter": "
246
+ # marketing" ```
247
+ # Corresponds to the JSON property `tags`
248
+ # @return [Hash<String,String>]
249
+ attr_accessor :tags
250
+
244
251
  # The backup type, which suggests the trigger for the backup.
245
252
  # Corresponds to the JSON property `type`
246
253
  # @return [String]
@@ -282,6 +289,7 @@ module Google
282
289
  @satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
283
290
  @size_bytes = args[:size_bytes] if args.key?(:size_bytes)
284
291
  @state = args[:state] if args.key?(:state)
292
+ @tags = args[:tags] if args.key?(:tags)
285
293
  @type = args[:type] if args.key?(:type)
286
294
  @uid = args[:uid] if args.key?(:uid)
287
295
  @update_time = args[:update_time] if args.key?(:update_time)
@@ -369,6 +377,38 @@ module Google
369
377
  end
370
378
  end
371
379
 
380
+ # The source CloudSQL backup resource.
381
+ class CloudSqlBackupRunSource
382
+ include Google::Apis::Core::Hashable
383
+
384
+ # Required. The CloudSQL backup run ID.
385
+ # Corresponds to the JSON property `backupRunId`
386
+ # @return [Fixnum]
387
+ attr_accessor :backup_run_id
388
+
389
+ # Required. The CloudSQL instance ID.
390
+ # Corresponds to the JSON property `instanceId`
391
+ # @return [String]
392
+ attr_accessor :instance_id
393
+
394
+ # The project ID of the source CloudSQL instance. This should be the same as the
395
+ # AlloyDB cluster's project.
396
+ # Corresponds to the JSON property `project`
397
+ # @return [String]
398
+ attr_accessor :project
399
+
400
+ def initialize(**args)
401
+ update!(**args)
402
+ end
403
+
404
+ # Update properties of this object
405
+ def update!(**args)
406
+ @backup_run_id = args[:backup_run_id] if args.key?(:backup_run_id)
407
+ @instance_id = args[:instance_id] if args.key?(:instance_id)
408
+ @project = args[:project] if args.key?(:project)
409
+ end
410
+ end
411
+
372
412
  # A cluster is a collection of regional AlloyDB resources. It can include a
373
413
  # primary instance and one or more read pool instances. All cluster resources
374
414
  # share a storage layer, which scales as needed.
@@ -393,6 +433,11 @@ module Google
393
433
  # @return [Google::Apis::AlloydbV1beta::BackupSource]
394
434
  attr_accessor :backup_source
395
435
 
436
+ # The source CloudSQL backup resource.
437
+ # Corresponds to the JSON property `cloudsqlBackupRunSource`
438
+ # @return [Google::Apis::AlloydbV1beta::CloudSqlBackupRunSource]
439
+ attr_accessor :cloudsql_backup_run_source
440
+
396
441
  # Output only. The type of the cluster. This is an output-only field and it's
397
442
  # populated at the Cluster creation time or the Cluster promotion time. The
398
443
  # cluster type is determined by which RPC was used to create the cluster (i.e. `
@@ -560,6 +605,13 @@ module Google
560
605
  # @return [String]
561
606
  attr_accessor :subscription_type
562
607
 
608
+ # Optional. Input only. Immutable. Tag keys/values directly bound to this
609
+ # resource. For example: ``` "123/environment": "production", "123/costCenter": "
610
+ # marketing" ```
611
+ # Corresponds to the JSON property `tags`
612
+ # @return [Hash<String,String>]
613
+ attr_accessor :tags
614
+
563
615
  # Contains information and all metadata related to TRIAL clusters.
564
616
  # Corresponds to the JSON property `trialMetadata`
565
617
  # @return [Google::Apis::AlloydbV1beta::TrialMetadata]
@@ -585,6 +637,7 @@ module Google
585
637
  @annotations = args[:annotations] if args.key?(:annotations)
586
638
  @automated_backup_policy = args[:automated_backup_policy] if args.key?(:automated_backup_policy)
587
639
  @backup_source = args[:backup_source] if args.key?(:backup_source)
640
+ @cloudsql_backup_run_source = args[:cloudsql_backup_run_source] if args.key?(:cloudsql_backup_run_source)
588
641
  @cluster_type = args[:cluster_type] if args.key?(:cluster_type)
589
642
  @continuous_backup_config = args[:continuous_backup_config] if args.key?(:continuous_backup_config)
590
643
  @continuous_backup_info = args[:continuous_backup_info] if args.key?(:continuous_backup_info)
@@ -612,12 +665,64 @@ module Google
612
665
  @ssl_config = args[:ssl_config] if args.key?(:ssl_config)
613
666
  @state = args[:state] if args.key?(:state)
614
667
  @subscription_type = args[:subscription_type] if args.key?(:subscription_type)
668
+ @tags = args[:tags] if args.key?(:tags)
615
669
  @trial_metadata = args[:trial_metadata] if args.key?(:trial_metadata)
616
670
  @uid = args[:uid] if args.key?(:uid)
617
671
  @update_time = args[:update_time] if args.key?(:update_time)
618
672
  end
619
673
  end
620
674
 
675
+ # Upgrade details of a cluster. This cluster can be primary or secondary.
676
+ class ClusterUpgradeDetails
677
+ include Google::Apis::Core::Hashable
678
+
679
+ # Cluster type which can either be primary or secondary.
680
+ # Corresponds to the JSON property `clusterType`
681
+ # @return [String]
682
+ attr_accessor :cluster_type
683
+
684
+ # Database version of the cluster after the upgrade operation. This will be the
685
+ # target version if the upgrade was successful otherwise it remains the same as
686
+ # that before the upgrade operation.
687
+ # Corresponds to the JSON property `databaseVersion`
688
+ # @return [String]
689
+ attr_accessor :database_version
690
+
691
+ # Upgrade details of the instances directly associated with this cluster.
692
+ # Corresponds to the JSON property `instanceUpgradeDetails`
693
+ # @return [Array<Google::Apis::AlloydbV1beta::InstanceUpgradeDetails>]
694
+ attr_accessor :instance_upgrade_details
695
+
696
+ # Normalized name of the cluster
697
+ # Corresponds to the JSON property `name`
698
+ # @return [String]
699
+ attr_accessor :name
700
+
701
+ # Array containing stage info associated with this cluster.
702
+ # Corresponds to the JSON property `stageInfo`
703
+ # @return [Array<Google::Apis::AlloydbV1beta::StageInfo>]
704
+ attr_accessor :stage_info
705
+
706
+ # Upgrade status of the cluster.
707
+ # Corresponds to the JSON property `upgradeStatus`
708
+ # @return [String]
709
+ attr_accessor :upgrade_status
710
+
711
+ def initialize(**args)
712
+ update!(**args)
713
+ end
714
+
715
+ # Update properties of this object
716
+ def update!(**args)
717
+ @cluster_type = args[:cluster_type] if args.key?(:cluster_type)
718
+ @database_version = args[:database_version] if args.key?(:database_version)
719
+ @instance_upgrade_details = args[:instance_upgrade_details] if args.key?(:instance_upgrade_details)
720
+ @name = args[:name] if args.key?(:name)
721
+ @stage_info = args[:stage_info] if args.key?(:stage_info)
722
+ @upgrade_status = args[:upgrade_status] if args.key?(:upgrade_status)
723
+ end
724
+ end
725
+
621
726
  # ConnectionInfo singleton resource. https://google.aip.dev/156
622
727
  class ConnectionInfo
623
728
  include Google::Apis::Core::Hashable
@@ -777,6 +882,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)