google-apis-alloydb_v1 0.29.0 → 0.31.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.
@@ -390,6 +390,38 @@ module Google
390
390
  end
391
391
  end
392
392
 
393
+ # The source CloudSQL backup resource.
394
+ class CloudSqlBackupRunSource
395
+ include Google::Apis::Core::Hashable
396
+
397
+ # Required. The CloudSQL backup run ID.
398
+ # Corresponds to the JSON property `backupRunId`
399
+ # @return [Fixnum]
400
+ attr_accessor :backup_run_id
401
+
402
+ # Required. The CloudSQL instance ID.
403
+ # Corresponds to the JSON property `instanceId`
404
+ # @return [String]
405
+ attr_accessor :instance_id
406
+
407
+ # The project ID of the source CloudSQL instance. This should be the same as the
408
+ # AlloyDB cluster's project.
409
+ # Corresponds to the JSON property `project`
410
+ # @return [String]
411
+ attr_accessor :project
412
+
413
+ def initialize(**args)
414
+ update!(**args)
415
+ end
416
+
417
+ # Update properties of this object
418
+ def update!(**args)
419
+ @backup_run_id = args[:backup_run_id] if args.key?(:backup_run_id)
420
+ @instance_id = args[:instance_id] if args.key?(:instance_id)
421
+ @project = args[:project] if args.key?(:project)
422
+ end
423
+ end
424
+
393
425
  # A cluster is a collection of regional AlloyDB resources. It can include a
394
426
  # primary instance and one or more read pool instances. All cluster resources
395
427
  # share a storage layer, which scales as needed.
@@ -414,6 +446,11 @@ module Google
414
446
  # @return [Google::Apis::AlloydbV1::BackupSource]
415
447
  attr_accessor :backup_source
416
448
 
449
+ # The source CloudSQL backup resource.
450
+ # Corresponds to the JSON property `cloudsqlBackupRunSource`
451
+ # @return [Google::Apis::AlloydbV1::CloudSqlBackupRunSource]
452
+ attr_accessor :cloudsql_backup_run_source
453
+
417
454
  # Output only. The type of the cluster. This is an output-only field and it's
418
455
  # populated at the Cluster creation time or the Cluster promotion time. The
419
456
  # cluster type is determined by which RPC was used to create the cluster (i.e. `
@@ -607,6 +644,7 @@ module Google
607
644
  @annotations = args[:annotations] if args.key?(:annotations)
608
645
  @automated_backup_policy = args[:automated_backup_policy] if args.key?(:automated_backup_policy)
609
646
  @backup_source = args[:backup_source] if args.key?(:backup_source)
647
+ @cloudsql_backup_run_source = args[:cloudsql_backup_run_source] if args.key?(:cloudsql_backup_run_source)
610
648
  @cluster_type = args[:cluster_type] if args.key?(:cluster_type)
611
649
  @continuous_backup_config = args[:continuous_backup_config] if args.key?(:continuous_backup_config)
612
650
  @continuous_backup_info = args[:continuous_backup_info] if args.key?(:continuous_backup_info)
@@ -880,6 +918,56 @@ module Google
880
918
  end
881
919
  end
882
920
 
921
+ # Options for importing data in CSV format.
922
+ class CsvImportOptions
923
+ include Google::Apis::Core::Hashable
924
+
925
+ # Optional. The columns to which CSV data is imported. If not specified, all
926
+ # columns of the database table are loaded with CSV data.
927
+ # Corresponds to the JSON property `columns`
928
+ # @return [Array<String>]
929
+ attr_accessor :columns
930
+
931
+ # Optional. Specifies the character that should appear before a data character
932
+ # that needs to be escaped. The default is same as quote character. The value of
933
+ # this argument has to be a character in Hex ASCII Code.
934
+ # Corresponds to the JSON property `escapeCharacter`
935
+ # @return [String]
936
+ attr_accessor :escape_character
937
+
938
+ # Optional. Specifies the character that separates columns within each row (line)
939
+ # of the file. The default is comma. The value of this argument has to be a
940
+ # character in Hex ASCII Code.
941
+ # Corresponds to the JSON property `fieldDelimiter`
942
+ # @return [String]
943
+ attr_accessor :field_delimiter
944
+
945
+ # Optional. Specifies the quoting character to be used when a data value is
946
+ # quoted. The default is double-quote. The value of this argument has to be a
947
+ # character in Hex ASCII Code.
948
+ # Corresponds to the JSON property `quoteCharacter`
949
+ # @return [String]
950
+ attr_accessor :quote_character
951
+
952
+ # Required. The database table to import CSV file into.
953
+ # Corresponds to the JSON property `table`
954
+ # @return [String]
955
+ attr_accessor :table
956
+
957
+ def initialize(**args)
958
+ update!(**args)
959
+ end
960
+
961
+ # Update properties of this object
962
+ def update!(**args)
963
+ @columns = args[:columns] if args.key?(:columns)
964
+ @escape_character = args[:escape_character] if args.key?(:escape_character)
965
+ @field_delimiter = args[:field_delimiter] if args.key?(:field_delimiter)
966
+ @quote_character = args[:quote_character] if args.key?(:quote_character)
967
+ @table = args[:table] if args.key?(:table)
968
+ end
969
+ end
970
+
883
971
  # A generic empty message that you can re-use to avoid defining duplicated empty
884
972
  # messages in your APIs. A typical example is to use it as the request or the
885
973
  # response type of an API method. For instance: service Foo ` rpc Bar(google.
@@ -1176,6 +1264,74 @@ module Google
1176
1264
  end
1177
1265
  end
1178
1266
 
1267
+ # Import cluster request.
1268
+ class ImportClusterRequest
1269
+ include Google::Apis::Core::Hashable
1270
+
1271
+ # Options for importing data in CSV format.
1272
+ # Corresponds to the JSON property `csvImportOptions`
1273
+ # @return [Google::Apis::AlloydbV1::CsvImportOptions]
1274
+ attr_accessor :csv_import_options
1275
+
1276
+ # Optional. Name of the database to which the import will be done. For import
1277
+ # from SQL file, this is required only if the file does not specify a database.
1278
+ # Note - Value provided should be the same as expected from `SELECT
1279
+ # current_database();` and NOT as a resource reference.
1280
+ # Corresponds to the JSON property `database`
1281
+ # @return [String]
1282
+ attr_accessor :database
1283
+
1284
+ # Required. The path to the file in Google Cloud Storage where the source file
1285
+ # for import will be stored. The URI is in the form `gs://bucketName/fileName`.
1286
+ # Corresponds to the JSON property `gcsUri`
1287
+ # @return [String]
1288
+ attr_accessor :gcs_uri
1289
+
1290
+ # Options for importing data in SQL format.
1291
+ # Corresponds to the JSON property `sqlImportOptions`
1292
+ # @return [Google::Apis::AlloydbV1::SqlImportOptions]
1293
+ attr_accessor :sql_import_options
1294
+
1295
+ # Optional. Database user to be used for importing the data. Note - Value
1296
+ # provided should be the same as expected from `SELECT current_user;` and NOT as
1297
+ # a resource reference.
1298
+ # Corresponds to the JSON property `user`
1299
+ # @return [String]
1300
+ attr_accessor :user
1301
+
1302
+ def initialize(**args)
1303
+ update!(**args)
1304
+ end
1305
+
1306
+ # Update properties of this object
1307
+ def update!(**args)
1308
+ @csv_import_options = args[:csv_import_options] if args.key?(:csv_import_options)
1309
+ @database = args[:database] if args.key?(:database)
1310
+ @gcs_uri = args[:gcs_uri] if args.key?(:gcs_uri)
1311
+ @sql_import_options = args[:sql_import_options] if args.key?(:sql_import_options)
1312
+ @user = args[:user] if args.key?(:user)
1313
+ end
1314
+ end
1315
+
1316
+ # Response of import rpc.
1317
+ class ImportClusterResponse
1318
+ include Google::Apis::Core::Hashable
1319
+
1320
+ # Required. Size of the object downloaded from Google Cloud Storage in bytes.
1321
+ # Corresponds to the JSON property `bytesDownloaded`
1322
+ # @return [Fixnum]
1323
+ attr_accessor :bytes_downloaded
1324
+
1325
+ def initialize(**args)
1326
+ update!(**args)
1327
+ end
1328
+
1329
+ # Update properties of this object
1330
+ def update!(**args)
1331
+ @bytes_downloaded = args[:bytes_downloaded] if args.key?(:bytes_downloaded)
1332
+ end
1333
+ end
1334
+
1179
1335
  # Message for triggering fault injection on an instance
1180
1336
  class InjectFaultRequest
1181
1337
  include Google::Apis::Core::Hashable
@@ -1332,6 +1488,11 @@ module Google
1332
1488
  # @return [Array<Google::Apis::AlloydbV1::Node>]
1333
1489
  attr_accessor :nodes
1334
1490
 
1491
+ # Observability Instance specific configuration.
1492
+ # Corresponds to the JSON property `observabilityConfig`
1493
+ # @return [Google::Apis::AlloydbV1::ObservabilityInstanceConfig]
1494
+ attr_accessor :observability_config
1495
+
1335
1496
  # Output only. All outbound public IP addresses configured for the instance.
1336
1497
  # Corresponds to the JSON property `outboundPublicIpAddresses`
1337
1498
  # @return [Array<String>]
@@ -1392,7 +1553,7 @@ module Google
1392
1553
  attr_accessor :update_time
1393
1554
 
1394
1555
  # Details of a single node in the instance. Nodes in an AlloyDB instance are
1395
- # ephemereal, they can change during update, failover, autohealing and resize
1556
+ # ephemeral, they can change during update, failover, autohealing and resize
1396
1557
  # operations.
1397
1558
  # Corresponds to the JSON property `writableNode`
1398
1559
  # @return [Google::Apis::AlloydbV1::Node]
@@ -1420,6 +1581,7 @@ module Google
1420
1581
  @name = args[:name] if args.key?(:name)
1421
1582
  @network_config = args[:network_config] if args.key?(:network_config)
1422
1583
  @nodes = args[:nodes] if args.key?(:nodes)
1584
+ @observability_config = args[:observability_config] if args.key?(:observability_config)
1423
1585
  @outbound_public_ip_addresses = args[:outbound_public_ip_addresses] if args.key?(:outbound_public_ip_addresses)
1424
1586
  @psc_instance_config = args[:psc_instance_config] if args.key?(:psc_instance_config)
1425
1587
  @public_ip_address = args[:public_ip_address] if args.key?(:public_ip_address)
@@ -1854,7 +2016,7 @@ module Google
1854
2016
  end
1855
2017
 
1856
2018
  # Details of a single node in the instance. Nodes in an AlloyDB instance are
1857
- # ephemereal, they can change during update, failover, autohealing and resize
2019
+ # ephemeral, they can change during update, failover, autohealing and resize
1858
2020
  # operations.
1859
2021
  class Node
1860
2022
  include Google::Apis::Core::Hashable
@@ -1895,6 +2057,83 @@ module Google
1895
2057
  end
1896
2058
  end
1897
2059
 
2060
+ # Observability Instance specific configuration.
2061
+ class ObservabilityInstanceConfig
2062
+ include Google::Apis::Core::Hashable
2063
+
2064
+ # Observability feature status for an instance. This flag is turned "off" by
2065
+ # default.
2066
+ # Corresponds to the JSON property `enabled`
2067
+ # @return [Boolean]
2068
+ attr_accessor :enabled
2069
+ alias_method :enabled?, :enabled
2070
+
2071
+ # Query string length. The default value is 10k.
2072
+ # Corresponds to the JSON property `maxQueryStringLength`
2073
+ # @return [Fixnum]
2074
+ attr_accessor :max_query_string_length
2075
+
2076
+ # Preserve comments in query string for an instance. This flag is turned "off"
2077
+ # by default.
2078
+ # Corresponds to the JSON property `preserveComments`
2079
+ # @return [Boolean]
2080
+ attr_accessor :preserve_comments
2081
+ alias_method :preserve_comments?, :preserve_comments
2082
+
2083
+ # Number of query execution plans captured by Insights per minute for all
2084
+ # queries combined. The default value is 200. Any integer between 0 to 200 is
2085
+ # considered valid.
2086
+ # Corresponds to the JSON property `queryPlansPerMinute`
2087
+ # @return [Fixnum]
2088
+ attr_accessor :query_plans_per_minute
2089
+
2090
+ # Record application tags for an instance. This flag is turned "off" by default.
2091
+ # Corresponds to the JSON property `recordApplicationTags`
2092
+ # @return [Boolean]
2093
+ attr_accessor :record_application_tags
2094
+ alias_method :record_application_tags?, :record_application_tags
2095
+
2096
+ # Track actively running queries on the instance. If not set, this flag is "off"
2097
+ # by default.
2098
+ # Corresponds to the JSON property `trackActiveQueries`
2099
+ # @return [Boolean]
2100
+ attr_accessor :track_active_queries
2101
+ alias_method :track_active_queries?, :track_active_queries
2102
+
2103
+ # Output only. Track wait event types during query execution for an instance.
2104
+ # This flag is turned "on" by default but tracking is enabled only after
2105
+ # observability enabled flag is also turned on. This is read-only flag and only
2106
+ # modifiable by internal API.
2107
+ # Corresponds to the JSON property `trackWaitEventTypes`
2108
+ # @return [Boolean]
2109
+ attr_accessor :track_wait_event_types
2110
+ alias_method :track_wait_event_types?, :track_wait_event_types
2111
+
2112
+ # Track wait events during query execution for an instance. This flag is turned "
2113
+ # on" by default but tracking is enabled only after observability enabled flag
2114
+ # is also turned on.
2115
+ # Corresponds to the JSON property `trackWaitEvents`
2116
+ # @return [Boolean]
2117
+ attr_accessor :track_wait_events
2118
+ alias_method :track_wait_events?, :track_wait_events
2119
+
2120
+ def initialize(**args)
2121
+ update!(**args)
2122
+ end
2123
+
2124
+ # Update properties of this object
2125
+ def update!(**args)
2126
+ @enabled = args[:enabled] if args.key?(:enabled)
2127
+ @max_query_string_length = args[:max_query_string_length] if args.key?(:max_query_string_length)
2128
+ @preserve_comments = args[:preserve_comments] if args.key?(:preserve_comments)
2129
+ @query_plans_per_minute = args[:query_plans_per_minute] if args.key?(:query_plans_per_minute)
2130
+ @record_application_tags = args[:record_application_tags] if args.key?(:record_application_tags)
2131
+ @track_active_queries = args[:track_active_queries] if args.key?(:track_active_queries)
2132
+ @track_wait_event_types = args[:track_wait_event_types] if args.key?(:track_wait_event_types)
2133
+ @track_wait_events = args[:track_wait_events] if args.key?(:track_wait_events)
2134
+ end
2135
+ end
2136
+
1898
2137
  # This resource represents a long-running operation that is the result of a
1899
2138
  # network API call.
1900
2139
  class Operation
@@ -1995,6 +2234,11 @@ module Google
1995
2234
  # @return [String]
1996
2235
  attr_accessor :target
1997
2236
 
2237
+ # Message for current status of the Major Version Upgrade operation.
2238
+ # Corresponds to the JSON property `upgradeClusterStatus`
2239
+ # @return [Google::Apis::AlloydbV1::UpgradeClusterStatus]
2240
+ attr_accessor :upgrade_cluster_status
2241
+
1998
2242
  # Output only. Name of the verb executed by the operation.
1999
2243
  # Corresponds to the JSON property `verb`
2000
2244
  # @return [String]
@@ -2012,6 +2256,7 @@ module Google
2012
2256
  @requested_cancellation = args[:requested_cancellation] if args.key?(:requested_cancellation)
2013
2257
  @status_message = args[:status_message] if args.key?(:status_message)
2014
2258
  @target = args[:target] if args.key?(:target)
2259
+ @upgrade_cluster_status = args[:upgrade_cluster_status] if args.key?(:upgrade_cluster_status)
2015
2260
  @verb = args[:verb] if args.key?(:verb)
2016
2261
  end
2017
2262
  end
@@ -2082,6 +2327,53 @@ module Google
2082
2327
  end
2083
2328
  end
2084
2329
 
2330
+ # Configuration for setting up PSC service automation. Consumer projects in the
2331
+ # configs will be allowlisted automatically for the instance.
2332
+ class PscAutoConnectionConfig
2333
+ include Google::Apis::Core::Hashable
2334
+
2335
+ # The consumer network for the PSC service automation, example: "projects/vpc-
2336
+ # host-project/global/networks/default". The consumer network might be hosted a
2337
+ # different project than the consumer project.
2338
+ # Corresponds to the JSON property `consumerNetwork`
2339
+ # @return [String]
2340
+ attr_accessor :consumer_network
2341
+
2342
+ # Output only. The status of the service connection policy.
2343
+ # Corresponds to the JSON property `consumerNetworkStatus`
2344
+ # @return [String]
2345
+ attr_accessor :consumer_network_status
2346
+
2347
+ # The consumer project to which the PSC service automation endpoint will be
2348
+ # created.
2349
+ # Corresponds to the JSON property `consumerProject`
2350
+ # @return [String]
2351
+ attr_accessor :consumer_project
2352
+
2353
+ # Output only. The IP address of the PSC service automation endpoint.
2354
+ # Corresponds to the JSON property `ipAddress`
2355
+ # @return [String]
2356
+ attr_accessor :ip_address
2357
+
2358
+ # Output only. The status of the PSC service automation connection.
2359
+ # Corresponds to the JSON property `status`
2360
+ # @return [String]
2361
+ attr_accessor :status
2362
+
2363
+ def initialize(**args)
2364
+ update!(**args)
2365
+ end
2366
+
2367
+ # Update properties of this object
2368
+ def update!(**args)
2369
+ @consumer_network = args[:consumer_network] if args.key?(:consumer_network)
2370
+ @consumer_network_status = args[:consumer_network_status] if args.key?(:consumer_network_status)
2371
+ @consumer_project = args[:consumer_project] if args.key?(:consumer_project)
2372
+ @ip_address = args[:ip_address] if args.key?(:ip_address)
2373
+ @status = args[:status] if args.key?(:status)
2374
+ end
2375
+ end
2376
+
2085
2377
  # PscConfig contains PSC related configuration at a cluster level.
2086
2378
  class PscConfig
2087
2379
  include Google::Apis::Core::Hashable
@@ -2093,6 +2385,12 @@ module Google
2093
2385
  attr_accessor :psc_enabled
2094
2386
  alias_method :psc_enabled?, :psc_enabled
2095
2387
 
2388
+ # Output only. The project number that needs to be allowlisted on the network
2389
+ # attachment to enable outbound connectivity.
2390
+ # Corresponds to the JSON property `serviceOwnedProjectNumber`
2391
+ # @return [Fixnum]
2392
+ attr_accessor :service_owned_project_number
2393
+
2096
2394
  def initialize(**args)
2097
2395
  update!(**args)
2098
2396
  end
@@ -2100,6 +2398,7 @@ module Google
2100
2398
  # Update properties of this object
2101
2399
  def update!(**args)
2102
2400
  @psc_enabled = args[:psc_enabled] if args.key?(:psc_enabled)
2401
+ @service_owned_project_number = args[:service_owned_project_number] if args.key?(:service_owned_project_number)
2103
2402
  end
2104
2403
  end
2105
2404
 
@@ -2113,12 +2412,24 @@ module Google
2113
2412
  # @return [Array<String>]
2114
2413
  attr_accessor :allowed_consumer_projects
2115
2414
 
2415
+ # Optional. Configurations for setting up PSC service automation.
2416
+ # Corresponds to the JSON property `pscAutoConnections`
2417
+ # @return [Array<Google::Apis::AlloydbV1::PscAutoConnectionConfig>]
2418
+ attr_accessor :psc_auto_connections
2419
+
2116
2420
  # Output only. The DNS name of the instance for PSC connectivity. Name
2117
2421
  # convention: ...alloydb-psc.goog
2118
2422
  # Corresponds to the JSON property `pscDnsName`
2119
2423
  # @return [String]
2120
2424
  attr_accessor :psc_dns_name
2121
2425
 
2426
+ # Optional. Configurations for setting up PSC interfaces attached to the
2427
+ # instance which are used for outbound connectivity. Only primary instances can
2428
+ # have PSC interface attached. Currently we only support 0 or 1 PSC interface.
2429
+ # Corresponds to the JSON property `pscInterfaceConfigs`
2430
+ # @return [Array<Google::Apis::AlloydbV1::PscInterfaceConfig>]
2431
+ attr_accessor :psc_interface_configs
2432
+
2122
2433
  # Output only. The service attachment created when Private Service Connect (PSC)
2123
2434
  # is enabled for the instance. The name of the resource will be in the format of
2124
2435
  # `projects//regions//serviceAttachments/`
@@ -2133,11 +2444,36 @@ module Google
2133
2444
  # Update properties of this object
2134
2445
  def update!(**args)
2135
2446
  @allowed_consumer_projects = args[:allowed_consumer_projects] if args.key?(:allowed_consumer_projects)
2447
+ @psc_auto_connections = args[:psc_auto_connections] if args.key?(:psc_auto_connections)
2136
2448
  @psc_dns_name = args[:psc_dns_name] if args.key?(:psc_dns_name)
2449
+ @psc_interface_configs = args[:psc_interface_configs] if args.key?(:psc_interface_configs)
2137
2450
  @service_attachment_link = args[:service_attachment_link] if args.key?(:service_attachment_link)
2138
2451
  end
2139
2452
  end
2140
2453
 
2454
+ # Configuration for setting up a PSC interface to enable outbound connectivity.
2455
+ class PscInterfaceConfig
2456
+ include Google::Apis::Core::Hashable
2457
+
2458
+ # The network attachment resource created in the consumer network to which the
2459
+ # PSC interface will be linked. This is of the format: "projects/$`
2460
+ # CONSUMER_PROJECT`/regions/$`REGION`/networkAttachments/$`
2461
+ # NETWORK_ATTACHMENT_NAME`". The network attachment must be in the same region
2462
+ # as the instance.
2463
+ # Corresponds to the JSON property `networkAttachmentResource`
2464
+ # @return [String]
2465
+ attr_accessor :network_attachment_resource
2466
+
2467
+ def initialize(**args)
2468
+ update!(**args)
2469
+ end
2470
+
2471
+ # Update properties of this object
2472
+ def update!(**args)
2473
+ @network_attachment_resource = args[:network_attachment_resource] if args.key?(:network_attachment_resource)
2474
+ end
2475
+ end
2476
+
2141
2477
  # A backup's position in a quantity-based retention queue, of backups with the
2142
2478
  # same source cluster and type, with length, retention, specified by the backup'
2143
2479
  # s retention policy. Once the position is greater than the retention, the
@@ -2254,6 +2590,25 @@ module Google
2254
2590
  end
2255
2591
  end
2256
2592
 
2593
+ # Read pool instances upgrade specific status.
2594
+ class ReadPoolInstancesUpgradeStageStatus
2595
+ include Google::Apis::Core::Hashable
2596
+
2597
+ # Upgrade stats for read pool instances.
2598
+ # Corresponds to the JSON property `upgradeStats`
2599
+ # @return [Google::Apis::AlloydbV1::Stats]
2600
+ attr_accessor :upgrade_stats
2601
+
2602
+ def initialize(**args)
2603
+ update!(**args)
2604
+ end
2605
+
2606
+ # Update properties of this object
2607
+ def update!(**args)
2608
+ @upgrade_stats = args[:upgrade_stats] if args.key?(:upgrade_stats)
2609
+ end
2610
+ end
2611
+
2257
2612
  #
2258
2613
  class RestartInstanceRequest
2259
2614
  include Google::Apis::Core::Hashable
@@ -2362,6 +2717,39 @@ module Google
2362
2717
  end
2363
2718
  end
2364
2719
 
2720
+ # Message for registering Restoring from CloudSQL resource.
2721
+ class RestoreFromCloudSqlRequest
2722
+ include Google::Apis::Core::Hashable
2723
+
2724
+ # The source CloudSQL backup resource.
2725
+ # Corresponds to the JSON property `cloudsqlBackupRunSource`
2726
+ # @return [Google::Apis::AlloydbV1::CloudSqlBackupRunSource]
2727
+ attr_accessor :cloudsql_backup_run_source
2728
+
2729
+ # A cluster is a collection of regional AlloyDB resources. It can include a
2730
+ # primary instance and one or more read pool instances. All cluster resources
2731
+ # share a storage layer, which scales as needed.
2732
+ # Corresponds to the JSON property `cluster`
2733
+ # @return [Google::Apis::AlloydbV1::Cluster]
2734
+ attr_accessor :cluster
2735
+
2736
+ # Required. ID of the requesting object.
2737
+ # Corresponds to the JSON property `clusterId`
2738
+ # @return [String]
2739
+ attr_accessor :cluster_id
2740
+
2741
+ def initialize(**args)
2742
+ update!(**args)
2743
+ end
2744
+
2745
+ # Update properties of this object
2746
+ def update!(**args)
2747
+ @cloudsql_backup_run_source = args[:cloudsql_backup_run_source] if args.key?(:cloudsql_backup_run_source)
2748
+ @cluster = args[:cluster] if args.key?(:cluster)
2749
+ @cluster_id = args[:cluster_id] if args.key?(:cluster_id)
2750
+ end
2751
+ end
2752
+
2365
2753
  # Configuration information for the secondary cluster. This should be set if and
2366
2754
  # only if the cluster is of type SECONDARY.
2367
2755
  class SecondaryConfig
@@ -2425,6 +2813,19 @@ module Google
2425
2813
  end
2426
2814
  end
2427
2815
 
2816
+ # Options for importing data in SQL format.
2817
+ class SqlImportOptions
2818
+ include Google::Apis::Core::Hashable
2819
+
2820
+ def initialize(**args)
2821
+ update!(**args)
2822
+ end
2823
+
2824
+ # Update properties of this object
2825
+ def update!(**args)
2826
+ end
2827
+ end
2828
+
2428
2829
  # SSL configuration.
2429
2830
  class SslConfig
2430
2831
  include Google::Apis::Core::Hashable
@@ -2484,6 +2885,74 @@ module Google
2484
2885
  end
2485
2886
  end
2486
2887
 
2888
+ # Status of an upgrade stage.
2889
+ class StageStatus
2890
+ include Google::Apis::Core::Hashable
2891
+
2892
+ # Read pool instances upgrade specific status.
2893
+ # Corresponds to the JSON property `readPoolInstancesUpgrade`
2894
+ # @return [Google::Apis::AlloydbV1::ReadPoolInstancesUpgradeStageStatus]
2895
+ attr_accessor :read_pool_instances_upgrade
2896
+
2897
+ # Upgrade stage.
2898
+ # Corresponds to the JSON property `stage`
2899
+ # @return [String]
2900
+ attr_accessor :stage
2901
+
2902
+ # State of this stage.
2903
+ # Corresponds to the JSON property `state`
2904
+ # @return [String]
2905
+ attr_accessor :state
2906
+
2907
+ def initialize(**args)
2908
+ update!(**args)
2909
+ end
2910
+
2911
+ # Update properties of this object
2912
+ def update!(**args)
2913
+ @read_pool_instances_upgrade = args[:read_pool_instances_upgrade] if args.key?(:read_pool_instances_upgrade)
2914
+ @stage = args[:stage] if args.key?(:stage)
2915
+ @state = args[:state] if args.key?(:state)
2916
+ end
2917
+ end
2918
+
2919
+ # Upgrade stats for read pool instances.
2920
+ class Stats
2921
+ include Google::Apis::Core::Hashable
2922
+
2923
+ # Number of read pool instances which failed to upgrade.
2924
+ # Corresponds to the JSON property `failed`
2925
+ # @return [Fixnum]
2926
+ attr_accessor :failed
2927
+
2928
+ # Number of read pool instances for which upgrade has not started.
2929
+ # Corresponds to the JSON property `notStarted`
2930
+ # @return [Fixnum]
2931
+ attr_accessor :not_started
2932
+
2933
+ # Number of read pool instances undergoing upgrade.
2934
+ # Corresponds to the JSON property `ongoing`
2935
+ # @return [Fixnum]
2936
+ attr_accessor :ongoing
2937
+
2938
+ # Number of read pool instances successfully upgraded.
2939
+ # Corresponds to the JSON property `success`
2940
+ # @return [Fixnum]
2941
+ attr_accessor :success
2942
+
2943
+ def initialize(**args)
2944
+ update!(**args)
2945
+ end
2946
+
2947
+ # Update properties of this object
2948
+ def update!(**args)
2949
+ @failed = args[:failed] if args.key?(:failed)
2950
+ @not_started = args[:not_started] if args.key?(:not_started)
2951
+ @ongoing = args[:ongoing] if args.key?(:ongoing)
2952
+ @success = args[:success] if args.key?(:success)
2953
+ end
2954
+ end
2955
+
2487
2956
  # The `Status` type defines a logical error model that is suitable for different
2488
2957
  # programming environments, including REST APIs and RPC APIs. It is used by [
2489
2958
  # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
@@ -2731,7 +3200,7 @@ module Google
2731
3200
  # @return [Google::Apis::AlloydbV1::StorageDatabasecenterPartnerapiV1mainDatabaseResourceId]
2732
3201
  attr_accessor :resource_id
2733
3202
 
2734
- # Common model for database resource instance metadata. Next ID: 23
3203
+ # Common model for database resource instance metadata. Next ID: 25
2735
3204
  # Corresponds to the JSON property `resourceMetadata`
2736
3205
  # @return [Google::Apis::AlloydbV1::StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata]
2737
3206
  attr_accessor :resource_metadata
@@ -2906,7 +3375,7 @@ module Google
2906
3375
  end
2907
3376
  end
2908
3377
 
2909
- # Common model for database resource instance metadata. Next ID: 23
3378
+ # Common model for database resource instance metadata. Next ID: 25
2910
3379
  class StorageDatabasecenterPartnerapiV1mainDatabaseResourceMetadata
2911
3380
  include Google::Apis::Core::Hashable
2912
3381
 
@@ -2962,6 +3431,11 @@ module Google
2962
3431
  # @return [String]
2963
3432
  attr_accessor :expected_state
2964
3433
 
3434
+ # GCBDR Configuration for the resource.
3435
+ # Corresponds to the JSON property `gcbdrConfiguration`
3436
+ # @return [Google::Apis::AlloydbV1::StorageDatabasecenterPartnerapiV1mainGcbdrConfiguration]
3437
+ attr_accessor :gcbdr_configuration
3438
+
2965
3439
  # DatabaseResourceId will serve as primary key for any resource ingestion event.
2966
3440
  # Corresponds to the JSON property `id`
2967
3441
  # @return [Google::Apis::AlloydbV1::StorageDatabasecenterPartnerapiV1mainDatabaseResourceId]
@@ -3015,6 +3489,11 @@ module Google
3015
3489
  # @return [String]
3016
3490
  attr_accessor :resource_name
3017
3491
 
3492
+ # Optional. Suspension reason for the resource.
3493
+ # Corresponds to the JSON property `suspensionReason`
3494
+ # @return [String]
3495
+ attr_accessor :suspension_reason
3496
+
3018
3497
  # Message type for storing tags. Tags provide a way to create annotations for
3019
3498
  # resources, and in some cases conditionally allow or deny policies based on
3020
3499
  # whether a resource has a specific tag.
@@ -3049,6 +3528,7 @@ module Google
3049
3528
  @edition = args[:edition] if args.key?(:edition)
3050
3529
  @entitlements = args[:entitlements] if args.key?(:entitlements)
3051
3530
  @expected_state = args[:expected_state] if args.key?(:expected_state)
3531
+ @gcbdr_configuration = args[:gcbdr_configuration] if args.key?(:gcbdr_configuration)
3052
3532
  @id = args[:id] if args.key?(:id)
3053
3533
  @instance_type = args[:instance_type] if args.key?(:instance_type)
3054
3534
  @location = args[:location] if args.key?(:location)
@@ -3058,6 +3538,7 @@ module Google
3058
3538
  @product = args[:product] if args.key?(:product)
3059
3539
  @resource_container = args[:resource_container] if args.key?(:resource_container)
3060
3540
  @resource_name = args[:resource_name] if args.key?(:resource_name)
3541
+ @suspension_reason = args[:suspension_reason] if args.key?(:suspension_reason)
3061
3542
  @tags_set = args[:tags_set] if args.key?(:tags_set)
3062
3543
  @updation_time = args[:updation_time] if args.key?(:updation_time)
3063
3544
  @user_label_set = args[:user_label_set] if args.key?(:user_label_set)
@@ -3163,6 +3644,26 @@ module Google
3163
3644
  end
3164
3645
  end
3165
3646
 
3647
+ # GCBDR Configuration for the resource.
3648
+ class StorageDatabasecenterPartnerapiV1mainGcbdrConfiguration
3649
+ include Google::Apis::Core::Hashable
3650
+
3651
+ # Whether the resource is managed by GCBDR.
3652
+ # Corresponds to the JSON property `gcbdrManaged`
3653
+ # @return [Boolean]
3654
+ attr_accessor :gcbdr_managed
3655
+ alias_method :gcbdr_managed?, :gcbdr_managed
3656
+
3657
+ def initialize(**args)
3658
+ update!(**args)
3659
+ end
3660
+
3661
+ # Update properties of this object
3662
+ def update!(**args)
3663
+ @gcbdr_managed = args[:gcbdr_managed] if args.key?(:gcbdr_managed)
3664
+ end
3665
+ end
3666
+
3166
3667
  # Metadata for individual internal resources in an instance. e.g. spanner
3167
3668
  # instance can have multiple databases with unique configuration settings.
3168
3669
  # Similarly bigtable can have multiple clusters within same bigtable instance.
@@ -3179,6 +3680,12 @@ module Google
3179
3680
  # @return [Google::Apis::AlloydbV1::StorageDatabasecenterPartnerapiV1mainBackupRun]
3180
3681
  attr_accessor :backup_run
3181
3682
 
3683
+ # Whether deletion protection is enabled for this internal resource.
3684
+ # Corresponds to the JSON property `isDeletionProtectionEnabled`
3685
+ # @return [Boolean]
3686
+ attr_accessor :is_deletion_protection_enabled
3687
+ alias_method :is_deletion_protection_enabled?, :is_deletion_protection_enabled
3688
+
3182
3689
  # Product specification for Condor resources.
3183
3690
  # Corresponds to the JSON property `product`
3184
3691
  # @return [Google::Apis::AlloydbV1::StorageDatabasecenterProtoCommonProduct]
@@ -3203,6 +3710,7 @@ module Google
3203
3710
  def update!(**args)
3204
3711
  @backup_configuration = args[:backup_configuration] if args.key?(:backup_configuration)
3205
3712
  @backup_run = args[:backup_run] if args.key?(:backup_run)
3713
+ @is_deletion_protection_enabled = args[:is_deletion_protection_enabled] if args.key?(:is_deletion_protection_enabled)
3206
3714
  @product = args[:product] if args.key?(:product)
3207
3715
  @resource_id = args[:resource_id] if args.key?(:resource_id)
3208
3716
  @resource_name = args[:resource_name] if args.key?(:resource_name)
@@ -3214,14 +3722,14 @@ module Google
3214
3722
  class StorageDatabasecenterPartnerapiV1mainMachineConfiguration
3215
3723
  include Google::Apis::Core::Hashable
3216
3724
 
3217
- # The number of CPUs. Deprecated. Use vcpu_count instead. TODO(b/342344482, b/
3218
- # 342346271) add proto validations again after bug fix.
3725
+ # The number of CPUs. Deprecated. Use vcpu_count instead. TODO(b/342344482) add
3726
+ # proto validations again after bug fix.
3219
3727
  # Corresponds to the JSON property `cpuCount`
3220
3728
  # @return [Fixnum]
3221
3729
  attr_accessor :cpu_count
3222
3730
 
3223
- # Memory size in bytes. TODO(b/342344482, b/342346271) add proto validations
3224
- # again after bug fix.
3731
+ # Memory size in bytes. TODO(b/342344482) add proto validations again after bug
3732
+ # fix.
3225
3733
  # Corresponds to the JSON property `memorySizeInBytes`
3226
3734
  # @return [Fixnum]
3227
3735
  attr_accessor :memory_size_in_bytes
@@ -3231,8 +3739,8 @@ module Google
3231
3739
  # @return [Fixnum]
3232
3740
  attr_accessor :shard_count
3233
3741
 
3234
- # Optional. The number of vCPUs. TODO(b/342344482, b/342346271) add proto
3235
- # validations again after bug fix.
3742
+ # Optional. The number of vCPUs. TODO(b/342344482) add proto validations again
3743
+ # after bug fix.
3236
3744
  # Corresponds to the JSON property `vcpuCount`
3237
3745
  # @return [Float]
3238
3746
  attr_accessor :vcpu_count
@@ -3534,6 +4042,16 @@ module Google
3534
4042
  # @return [String]
3535
4043
  attr_accessor :name
3536
4044
 
4045
+ # The recommended value for an INTEGER flag.
4046
+ # Corresponds to the JSON property `recommendedIntegerValue`
4047
+ # @return [Fixnum]
4048
+ attr_accessor :recommended_integer_value
4049
+
4050
+ # The recommended value for a STRING flag.
4051
+ # Corresponds to the JSON property `recommendedStringValue`
4052
+ # @return [String]
4053
+ attr_accessor :recommended_string_value
4054
+
3537
4055
  # Whether setting or updating this flag on an Instance requires a database
3538
4056
  # restart. If a flag that requires database restart is set, the backend will
3539
4057
  # automatically restart the database (making sure to satisfy any availability
@@ -3543,6 +4061,11 @@ module Google
3543
4061
  attr_accessor :requires_db_restart
3544
4062
  alias_method :requires_db_restart?, :requires_db_restart
3545
4063
 
4064
+ # The scope of the flag.
4065
+ # Corresponds to the JSON property `scope`
4066
+ # @return [String]
4067
+ attr_accessor :scope
4068
+
3546
4069
  # Restrictions on STRING type values
3547
4070
  # Corresponds to the JSON property `stringRestrictions`
3548
4071
  # @return [Google::Apis::AlloydbV1::StringRestrictions]
@@ -3568,7 +4091,10 @@ module Google
3568
4091
  @flag_name = args[:flag_name] if args.key?(:flag_name)
3569
4092
  @integer_restrictions = args[:integer_restrictions] if args.key?(:integer_restrictions)
3570
4093
  @name = args[:name] if args.key?(:name)
4094
+ @recommended_integer_value = args[:recommended_integer_value] if args.key?(:recommended_integer_value)
4095
+ @recommended_string_value = args[:recommended_string_value] if args.key?(:recommended_string_value)
3571
4096
  @requires_db_restart = args[:requires_db_restart] if args.key?(:requires_db_restart)
4097
+ @scope = args[:scope] if args.key?(:scope)
3572
4098
  @string_restrictions = args[:string_restrictions] if args.key?(:string_restrictions)
3573
4099
  @supported_db_versions = args[:supported_db_versions] if args.key?(:supported_db_versions)
3574
4100
  @value_type = args[:value_type] if args.key?(:value_type)
@@ -3753,6 +4279,50 @@ module Google
3753
4279
  end
3754
4280
  end
3755
4281
 
4282
+ # Message for current status of the Major Version Upgrade operation.
4283
+ class UpgradeClusterStatus
4284
+ include Google::Apis::Core::Hashable
4285
+
4286
+ # Whether the operation is cancellable.
4287
+ # Corresponds to the JSON property `cancellable`
4288
+ # @return [Boolean]
4289
+ attr_accessor :cancellable
4290
+ alias_method :cancellable?, :cancellable
4291
+
4292
+ # Source database major version.
4293
+ # Corresponds to the JSON property `sourceVersion`
4294
+ # @return [String]
4295
+ attr_accessor :source_version
4296
+
4297
+ # Status of all upgrade stages.
4298
+ # Corresponds to the JSON property `stages`
4299
+ # @return [Array<Google::Apis::AlloydbV1::StageStatus>]
4300
+ attr_accessor :stages
4301
+
4302
+ # Cluster Major Version Upgrade state.
4303
+ # Corresponds to the JSON property `state`
4304
+ # @return [String]
4305
+ attr_accessor :state
4306
+
4307
+ # Target database major version.
4308
+ # Corresponds to the JSON property `targetVersion`
4309
+ # @return [String]
4310
+ attr_accessor :target_version
4311
+
4312
+ def initialize(**args)
4313
+ update!(**args)
4314
+ end
4315
+
4316
+ # Update properties of this object
4317
+ def update!(**args)
4318
+ @cancellable = args[:cancellable] if args.key?(:cancellable)
4319
+ @source_version = args[:source_version] if args.key?(:source_version)
4320
+ @stages = args[:stages] if args.key?(:stages)
4321
+ @state = args[:state] if args.key?(:state)
4322
+ @target_version = args[:target_version] if args.key?(:target_version)
4323
+ end
4324
+ end
4325
+
3756
4326
  # Message describing User object.
3757
4327
  class User
3758
4328
  include Google::Apis::Core::Hashable