google-cloud-alloy_db-v1alpha 0.7.2 → 0.9.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (27) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +31 -21
  3. data/lib/google/cloud/alloy_db/v1alpha/alloy_db_admin/client.rb +560 -184
  4. data/lib/google/cloud/alloy_db/v1alpha/alloy_db_admin/operations.rb +12 -15
  5. data/lib/google/cloud/alloy_db/v1alpha/alloy_db_admin/rest/client.rb +4276 -0
  6. data/lib/google/cloud/alloy_db/v1alpha/alloy_db_admin/rest/operations.rb +907 -0
  7. data/lib/google/cloud/alloy_db/v1alpha/alloy_db_admin/rest/service_stub.rb +2236 -0
  8. data/lib/google/cloud/alloy_db/v1alpha/alloy_db_admin/rest.rb +54 -0
  9. data/lib/google/cloud/alloy_db/v1alpha/alloy_db_admin.rb +6 -0
  10. data/lib/google/cloud/alloy_db/v1alpha/bindings_override.rb +102 -0
  11. data/lib/google/cloud/alloy_db/v1alpha/rest.rb +38 -0
  12. data/lib/google/cloud/alloy_db/v1alpha/version.rb +1 -1
  13. data/lib/google/cloud/alloy_db/v1alpha.rb +5 -0
  14. data/lib/google/cloud/alloydb/v1alpha/csql_resources_pb.rb +44 -0
  15. data/lib/google/cloud/alloydb/v1alpha/data_model_pb.rb +45 -0
  16. data/lib/google/cloud/alloydb/v1alpha/gemini_pb.rb +45 -0
  17. data/lib/google/cloud/alloydb/v1alpha/resources_pb.rb +11 -1
  18. data/lib/google/cloud/alloydb/v1alpha/service_pb.rb +22 -1
  19. data/lib/google/cloud/alloydb/v1alpha/service_services_pb.rb +9 -0
  20. data/proto_docs/google/api/client.rb +39 -0
  21. data/proto_docs/google/cloud/alloydb/v1alpha/csql_resources.rb +42 -0
  22. data/proto_docs/google/cloud/alloydb/v1alpha/data_model.rb +75 -0
  23. data/proto_docs/google/cloud/alloydb/v1alpha/gemini.rb +52 -0
  24. data/proto_docs/google/cloud/alloydb/v1alpha/resources.rb +214 -39
  25. data/proto_docs/google/cloud/alloydb/v1alpha/service.rb +540 -146
  26. data/proto_docs/google/longrunning/operations.rb +19 -14
  27. metadata +18 -6
@@ -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