google-cloud-alloy_db-v1alpha 0.7.2 → 0.8.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.
@@ -114,7 +114,7 @@ module Google
114
114
 
115
115
  # SSL mode options.
116
116
  module SslMode
117
- # SSL mode not specified. Defaults to ENCRYPTED_ONLY.
117
+ # SSL mode is not specified. Defaults to ENCRYPTED_ONLY.
118
118
  SSL_MODE_UNSPECIFIED = 0
119
119
 
120
120
  # SSL connections are optional. CA verification not enforced.
@@ -126,7 +126,7 @@ module Google
126
126
  SSL_MODE_REQUIRE = 2
127
127
 
128
128
  # SSL connections are required. CA verification enforced.
129
- # Clients must have certificates signed by a Cluster CA, e.g. via
129
+ # Clients must have certificates signed by a Cluster CA, for example, using
130
130
  # GenerateClientCertificate.
131
131
  SSL_MODE_VERIFY_CA = 3
132
132
 
@@ -320,6 +320,41 @@ module Google
320
320
  extend ::Google::Protobuf::MessageExts::ClassMethods
321
321
  end
322
322
 
323
+ # MaintenanceUpdatePolicy defines the policy for system updates.
324
+ # @!attribute [rw] maintenance_windows
325
+ # @return [::Array<::Google::Cloud::AlloyDB::V1alpha::MaintenanceUpdatePolicy::MaintenanceWindow>]
326
+ # Preferred windows to perform maintenance. Currently limited to 1.
327
+ class MaintenanceUpdatePolicy
328
+ include ::Google::Protobuf::MessageExts
329
+ extend ::Google::Protobuf::MessageExts::ClassMethods
330
+
331
+ # MaintenanceWindow specifies a preferred day and time for maintenance.
332
+ # @!attribute [rw] day
333
+ # @return [::Google::Type::DayOfWeek]
334
+ # Preferred day of the week for maintenance, e.g. MONDAY, TUESDAY, etc.
335
+ # @!attribute [rw] start_time
336
+ # @return [::Google::Type::TimeOfDay]
337
+ # Preferred time to start the maintenance operation on the specified day.
338
+ # Maintenance will start within 1 hour of this time.
339
+ class MaintenanceWindow
340
+ include ::Google::Protobuf::MessageExts
341
+ extend ::Google::Protobuf::MessageExts::ClassMethods
342
+ end
343
+ end
344
+
345
+ # MaintenanceSchedule stores the maintenance schedule generated from
346
+ # the MaintenanceUpdatePolicy, once a maintenance rollout is triggered, if
347
+ # MaintenanceWindow is set, and if there is no conflicting DenyPeriod.
348
+ # The schedule is cleared once the update takes place. This field cannot be
349
+ # manually changed; modify the MaintenanceUpdatePolicy instead.
350
+ # @!attribute [r] start_time
351
+ # @return [::Google::Protobuf::Timestamp]
352
+ # Output only. The scheduled start time for the maintenance.
353
+ class MaintenanceSchedule
354
+ include ::Google::Protobuf::MessageExts
355
+ extend ::Google::Protobuf::MessageExts::ClassMethods
356
+ end
357
+
323
358
  # A cluster is a collection of regional AlloyDB resources. It can include a
324
359
  # primary instance and one or more read pool instances.
325
360
  # All cluster resources share a storage layer, which scales as needed.
@@ -329,6 +364,9 @@ module Google
329
364
  # @!attribute [r] migration_source
330
365
  # @return [::Google::Cloud::AlloyDB::V1alpha::MigrationSource]
331
366
  # Output only. Cluster created via DMS migration.
367
+ # @!attribute [r] cloudsql_backup_run_source
368
+ # @return [::Google::Cloud::AlloyDB::V1alpha::CloudSQLBackupRunSource]
369
+ # Output only. Cluster created from CloudSQL snapshot.
332
370
  # @!attribute [r] name
333
371
  # @return [::String]
334
372
  # Output only. The name of the cluster resource with the format:
@@ -379,7 +417,7 @@ module Google
379
417
  # Required. The resource link for the VPC network in which cluster resources
380
418
  # are created and from which they are accessible via Private IP. The network
381
419
  # must belong to the same project as the cluster. It is specified in the
382
- # form: "projects/\\{project}/global/networks/\\{network_id}". This is required
420
+ # form: `projects/{project}/global/networks/{network_id}`. This is required
383
421
  # to create a cluster. Deprecated, use network_config.network instead.
384
422
  # @!attribute [rw] etag
385
423
  # @return [::String]
@@ -445,6 +483,32 @@ module Google
445
483
  # @return [::Google::Cloud::AlloyDB::V1alpha::Cluster::PscConfig]
446
484
  # Optional. The configuration for Private Service Connect (PSC) for the
447
485
  # cluster.
486
+ # @!attribute [rw] maintenance_update_policy
487
+ # @return [::Google::Cloud::AlloyDB::V1alpha::MaintenanceUpdatePolicy]
488
+ # Optional. The maintenance update policy determines when to allow or deny
489
+ # updates.
490
+ # @!attribute [r] maintenance_schedule
491
+ # @return [::Google::Cloud::AlloyDB::V1alpha::MaintenanceSchedule]
492
+ # Output only. The maintenance schedule for the cluster, generated for a
493
+ # specific rollout if a maintenance window is set.
494
+ # @!attribute [rw] gemini_config
495
+ # @return [::Google::Cloud::AlloyDB::V1alpha::GeminiClusterConfig]
496
+ # Optional. Configuration parameters related to the Gemini in Databases
497
+ # add-on.
498
+ # @!attribute [rw] subscription_type
499
+ # @return [::Google::Cloud::AlloyDB::V1alpha::SubscriptionType]
500
+ # Optional. Subscription type of the cluster.
501
+ # @!attribute [r] trial_metadata
502
+ # @return [::Google::Cloud::AlloyDB::V1alpha::Cluster::TrialMetadata]
503
+ # Output only. Metadata for free trial clusters
504
+ # @!attribute [rw] tags
505
+ # @return [::Google::Protobuf::Map{::String => ::String}]
506
+ # Optional. Input only. Immutable. Tag keys/values directly bound to this
507
+ # resource. For example:
508
+ # ```
509
+ # "123/environment": "production",
510
+ # "123/costCenter": "marketing"
511
+ # ```
448
512
  class Cluster
449
513
  include ::Google::Protobuf::MessageExts
450
514
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -456,7 +520,7 @@ module Google
456
520
  # resources are created and from which they are accessible via Private IP.
457
521
  # The network must belong to the same project as the cluster. It is
458
522
  # specified in the form:
459
- # "projects/\\{project_number}/global/networks/\\{network_id}". This is
523
+ # `projects/{project_number}/global/networks/{network_id}`. This is
460
524
  # required to create a cluster.
461
525
  # @!attribute [rw] allocated_ip_range
462
526
  # @return [::String]
@@ -500,11 +564,33 @@ module Google
500
564
  # @return [::Boolean]
501
565
  # Optional. Create an instance that allows connections from Private Service
502
566
  # Connect endpoints to the instance.
567
+ # @!attribute [r] service_owned_project_number
568
+ # @return [::Integer]
569
+ # Output only. The project number that needs to be allowlisted on the
570
+ # network attachment to enable outbound connectivity.
503
571
  class PscConfig
504
572
  include ::Google::Protobuf::MessageExts
505
573
  extend ::Google::Protobuf::MessageExts::ClassMethods
506
574
  end
507
575
 
576
+ # Contains information and all metadata related to TRIAL clusters.
577
+ # @!attribute [rw] start_time
578
+ # @return [::Google::Protobuf::Timestamp]
579
+ # start time of the trial cluster.
580
+ # @!attribute [rw] end_time
581
+ # @return [::Google::Protobuf::Timestamp]
582
+ # End time of the trial cluster.
583
+ # @!attribute [rw] upgrade_time
584
+ # @return [::Google::Protobuf::Timestamp]
585
+ # Upgrade time of trial cluster to Standard cluster.
586
+ # @!attribute [rw] grace_end_time
587
+ # @return [::Google::Protobuf::Timestamp]
588
+ # grace end time of the cluster.
589
+ class TrialMetadata
590
+ include ::Google::Protobuf::MessageExts
591
+ extend ::Google::Protobuf::MessageExts::ClassMethods
592
+ end
593
+
508
594
  # @!attribute [rw] key
509
595
  # @return [::String]
510
596
  # @!attribute [rw] value
@@ -523,6 +609,15 @@ module Google
523
609
  extend ::Google::Protobuf::MessageExts::ClassMethods
524
610
  end
525
611
 
612
+ # @!attribute [rw] key
613
+ # @return [::String]
614
+ # @!attribute [rw] value
615
+ # @return [::String]
616
+ class TagsEntry
617
+ include ::Google::Protobuf::MessageExts
618
+ extend ::Google::Protobuf::MessageExts::ClassMethods
619
+ end
620
+
526
621
  # Cluster State
527
622
  module State
528
623
  # The state of the cluster is unknown.
@@ -663,6 +758,9 @@ module Google
663
758
  # @!attribute [rw] query_insights_config
664
759
  # @return [::Google::Cloud::AlloyDB::V1alpha::Instance::QueryInsightsInstanceConfig]
665
760
  # Configuration for query insights.
761
+ # @!attribute [rw] observability_config
762
+ # @return [::Google::Cloud::AlloyDB::V1alpha::Instance::ObservabilityInstanceConfig]
763
+ # Configuration for observability.
666
764
  # @!attribute [rw] read_pool_config
667
765
  # @return [::Google::Cloud::AlloyDB::V1alpha::Instance::ReadPoolConfig]
668
766
  # Read pool instance configuration.
@@ -712,7 +810,14 @@ module Google
712
810
  # instance.
713
811
  # @!attribute [rw] network_config
714
812
  # @return [::Google::Cloud::AlloyDB::V1alpha::Instance::InstanceNetworkConfig]
715
- # Optional. Instance level network configuration.
813
+ # Optional. Instance-level network configuration.
814
+ # @!attribute [rw] gemini_config
815
+ # @return [::Google::Cloud::AlloyDB::V1alpha::GeminiInstanceConfig]
816
+ # Optional. Configuration parameters related to the Gemini in Databases
817
+ # add-on.
818
+ # @!attribute [r] outbound_public_ip_addresses
819
+ # @return [::Array<::String>]
820
+ # Output only. All outbound public IP addresses configured for the instance.
716
821
  class Instance
717
822
  include ::Google::Protobuf::MessageExts
718
823
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -772,6 +877,51 @@ module Google
772
877
  extend ::Google::Protobuf::MessageExts::ClassMethods
773
878
  end
774
879
 
880
+ # Observability Instance specific configuration.
881
+ # @!attribute [rw] enabled
882
+ # @return [::Boolean]
883
+ # Observability feature status for an instance.
884
+ # This flag is turned "off" by default.
885
+ # @!attribute [rw] preserve_comments
886
+ # @return [::Boolean]
887
+ # Preserve comments in query string for an instance.
888
+ # This flag is turned "off" by default.
889
+ # @!attribute [rw] track_wait_events
890
+ # @return [::Boolean]
891
+ # Track wait events during query execution for an instance.
892
+ # This flag is turned "on" by default but tracking is enabled only after
893
+ # observability enabled flag is also turned on.
894
+ # @!attribute [r] track_wait_event_types
895
+ # @return [::Boolean]
896
+ # Output only. Track wait event types during query execution for an
897
+ # instance. This flag is turned "on" by default but tracking is enabled
898
+ # only after observability enabled flag is also turned on. This is
899
+ # read-only flag and only modifiable by producer API.
900
+ # @!attribute [rw] max_query_string_length
901
+ # @return [::Integer]
902
+ # Query string length. The default value is 10k.
903
+ # @!attribute [rw] record_application_tags
904
+ # @return [::Boolean]
905
+ # Record application tags for an instance.
906
+ # This flag is turned "off" by default.
907
+ # @!attribute [rw] query_plans_per_minute
908
+ # @return [::Integer]
909
+ # Number of query execution plans captured by Insights per minute
910
+ # for all queries combined. The default value is 200.
911
+ # Any integer between 0 to 200 is considered valid.
912
+ # @!attribute [rw] track_active_queries
913
+ # @return [::Boolean]
914
+ # Track actively running queries on the instance.
915
+ # If not set, this flag is "off" by default.
916
+ # @!attribute [rw] track_client_address
917
+ # @return [::Boolean]
918
+ # Track client address for an instance.
919
+ # If not set, default value is "off".
920
+ class ObservabilityInstanceConfig
921
+ include ::Google::Protobuf::MessageExts
922
+ extend ::Google::Protobuf::MessageExts::ClassMethods
923
+ end
924
+
775
925
  # Configuration for a read pool instance.
776
926
  # @!attribute [rw] node_count
777
927
  # @return [::Integer]
@@ -810,28 +960,20 @@ module Google
810
960
  # connections to the database.
811
961
  # @!attribute [rw] ssl_config
812
962
  # @return [::Google::Cloud::AlloyDB::V1alpha::SslConfig]
813
- # Optional. SSL config option for this instance.
963
+ # Optional. SSL configuration option for this instance.
814
964
  class ClientConnectionConfig
815
965
  include ::Google::Protobuf::MessageExts
816
966
  extend ::Google::Protobuf::MessageExts::ClassMethods
817
967
  end
818
968
 
819
- # Configuration for setting up a PSC interface. This information needs to be
820
- # provided by the customer.
821
- # PSC interfaces will be created and added to VMs via SLM (adding a network
822
- # interface will require recreating the VM). For HA instances this will be
823
- # done via LDTM.
824
- # @!attribute [rw] consumer_endpoint_ips
825
- # @return [::Array<::String>]
826
- # A list of endpoints in the consumer VPC the interface might initiate
827
- # outbound connections to. This list has to be provided when the PSC
828
- # interface is created.
829
- # @!attribute [rw] network_attachment
969
+ # Configuration for setting up a PSC interface to enable outbound
970
+ # connectivity.
971
+ # @!attribute [rw] network_attachment_resource
830
972
  # @return [::String]
831
- # The NetworkAttachment resource created in the consumer VPC to which the
832
- # PSC interface will be linked, in the form of:
973
+ # The network attachment resource created in the consumer network to which
974
+ # the PSC interface will be linked. This is of the format:
833
975
  # "projects/$\\{CONSUMER_PROJECT}/regions/$\\{REGION}/networkAttachments/$\\{NETWORK_ATTACHMENT_NAME}".
834
- # NetworkAttachment has to be provided when the PSC interface is created.
976
+ # The network attachment must be in the same region as the instance.
835
977
  class PscInterfaceConfig
836
978
  include ::Google::Protobuf::MessageExts
837
979
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -844,43 +986,37 @@ module Google
844
986
  # Output only. The service attachment created when Private
845
987
  # Service Connect (PSC) is enabled for the instance.
846
988
  # The name of the resource will be in the format of
847
- # projects/<alloydb-tenant-project-number>/regions/<region-name>/serviceAttachments/<service-attachment-name>
989
+ # `projects/<alloydb-tenant-project-number>/regions/<region-name>/serviceAttachments/<service-attachment-name>`
848
990
  # @!attribute [rw] allowed_consumer_projects
849
991
  # @return [::Array<::String>]
850
992
  # Optional. List of consumer projects that are allowed to create
851
993
  # PSC endpoints to service-attachments to this instance.
852
- # @!attribute [rw] allowed_consumer_networks
853
- # @return [::Array<::String>]
854
- # Optional. List of consumer networks that are allowed to create
855
- # PSC endpoints to service-attachments to this instance.
994
+ # @!attribute [r] psc_dns_name
995
+ # @return [::String]
996
+ # Output only. The DNS name of the instance for PSC connectivity.
997
+ # Name convention: <uid>.<uid>.<region>.alloydb-psc.goog
856
998
  # @!attribute [rw] psc_interface_configs
857
999
  # @return [::Array<::Google::Cloud::AlloyDB::V1alpha::Instance::PscInterfaceConfig>]
858
1000
  # Optional. Configurations for setting up PSC interfaces attached to the
859
1001
  # instance which are used for outbound connectivity. Only primary instances
860
- # can have PSC interface attached. All the VMs created for the primary
861
- # instance will share the same configurations. Currently we only support 0
862
- # or 1 PSC interface.
863
- # @!attribute [rw] outgoing_service_attachment_links
864
- # @return [::Array<::String>]
865
- # Optional. List of service attachments that this instance has created
866
- # endpoints to connect with. Currently, only a single outgoing service
867
- # attachment is supported per instance.
868
- # @!attribute [rw] psc_enabled
869
- # @return [::Boolean]
870
- # Optional. Whether PSC connectivity is enabled for this instance.
871
- # This is populated by referencing the value from the parent cluster.
1002
+ # can have PSC interface attached. Currently we only support 0 or 1 PSC
1003
+ # interface.
872
1004
  class PscInstanceConfig
873
1005
  include ::Google::Protobuf::MessageExts
874
1006
  extend ::Google::Protobuf::MessageExts::ClassMethods
875
1007
  end
876
1008
 
877
- # Metadata related to instance level network configuration.
1009
+ # Metadata related to instance-level network configuration.
878
1010
  # @!attribute [rw] authorized_external_networks
879
1011
  # @return [::Array<::Google::Cloud::AlloyDB::V1alpha::Instance::InstanceNetworkConfig::AuthorizedNetwork>]
880
1012
  # Optional. A list of external network authorized to access this instance.
881
1013
  # @!attribute [rw] enable_public_ip
882
1014
  # @return [::Boolean]
883
1015
  # Optional. Enabling public ip for the instance.
1016
+ # @!attribute [rw] enable_outbound_public_ip
1017
+ # @return [::Boolean]
1018
+ # Optional. Enabling an outbound public IP address to support a database
1019
+ # server sending requests out into the internet.
884
1020
  class InstanceNetworkConfig
885
1021
  include ::Google::Protobuf::MessageExts
886
1022
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -1124,6 +1260,14 @@ module Google
1124
1260
  # Output only. The database engine major version of the cluster this backup
1125
1261
  # was created from. Any restored cluster created from this backup will have
1126
1262
  # the same database version.
1263
+ # @!attribute [rw] tags
1264
+ # @return [::Google::Protobuf::Map{::String => ::String}]
1265
+ # Optional. Input only. Immutable. Tag keys/values directly bound to this
1266
+ # resource. For example:
1267
+ # ```
1268
+ # "123/environment": "production",
1269
+ # "123/costCenter": "marketing"
1270
+ # ```
1127
1271
  class Backup
1128
1272
  include ::Google::Protobuf::MessageExts
1129
1273
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -1172,6 +1316,15 @@ module Google
1172
1316
  extend ::Google::Protobuf::MessageExts::ClassMethods
1173
1317
  end
1174
1318
 
1319
+ # @!attribute [rw] key
1320
+ # @return [::String]
1321
+ # @!attribute [rw] value
1322
+ # @return [::String]
1323
+ class TagsEntry
1324
+ include ::Google::Protobuf::MessageExts
1325
+ extend ::Google::Protobuf::MessageExts::ClassMethods
1326
+ end
1327
+
1175
1328
  # Backup State
1176
1329
  module State
1177
1330
  # The state of the backup is unknown.
@@ -1306,6 +1459,10 @@ module Google
1306
1459
  # @!attribute [rw] user_type
1307
1460
  # @return [::Google::Cloud::AlloyDB::V1alpha::User::UserType]
1308
1461
  # Optional. Type of this user.
1462
+ # @!attribute [rw] keep_extra_roles
1463
+ # @return [::Boolean]
1464
+ # Input only. If the user already exists and it has additional roles, keep
1465
+ # them granted.
1309
1466
  class User
1310
1467
  include ::Google::Protobuf::MessageExts
1311
1468
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -1328,7 +1485,7 @@ module Google
1328
1485
  # @!attribute [rw] name
1329
1486
  # @return [::String]
1330
1487
  # Identifier. Name of the resource in the form of
1331
- # projects/\\{project}/locations/\\{location}/clusters/\\{cluster}/databases/\\{database}.
1488
+ # `projects/{project}/locations/{location}/clusters/{cluster}/databases/{database}`.
1332
1489
  # @!attribute [rw] charset
1333
1490
  # @return [::String]
1334
1491
  # Optional. Charset for the database.
@@ -1390,6 +1547,24 @@ module Google
1390
1547
 
1391
1548
  # The database version is Postgres 15.
1392
1549
  POSTGRES_15 = 3
1550
+
1551
+ # The database version is Postgres 16.
1552
+ POSTGRES_16 = 4
1553
+ end
1554
+
1555
+ # Subscription_type added to distinguish between Standard and Trial
1556
+ # subscriptions. By default, a subscription type is considered STANDARD unless
1557
+ # explicitly specified.
1558
+ module SubscriptionType
1559
+ # This is an unknown subscription type. By default, the subscription type is
1560
+ # STANDARD.
1561
+ SUBSCRIPTION_TYPE_UNSPECIFIED = 0
1562
+
1563
+ # Standard subscription.
1564
+ STANDARD = 1
1565
+
1566
+ # Trial subscription.
1567
+ TRIAL = 2
1393
1568
  end
1394
1569
  end
1395
1570
  end