google-cloud-sql-v1 0.a → 0.1.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.
Files changed (129) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +12 -0
  3. data/AUTHENTICATION.md +122 -0
  4. data/README.md +146 -8
  5. data/lib/google/cloud/sql/v1/cloud_sql_available_database_versions_pb.rb +25 -0
  6. data/lib/google/cloud/sql/v1/cloud_sql_available_database_versions_services_pb.rb +29 -0
  7. data/lib/google/cloud/sql/v1/cloud_sql_backup_runs_pb.rb +35 -0
  8. data/lib/google/cloud/sql/v1/cloud_sql_backup_runs_services_pb.rb +53 -0
  9. data/lib/google/cloud/sql/v1/cloud_sql_backups_pb.rb +41 -0
  10. data/lib/google/cloud/sql/v1/cloud_sql_backups_services_pb.rb +54 -0
  11. data/lib/google/cloud/sql/v1/cloud_sql_connect_pb.rb +34 -0
  12. data/lib/google/cloud/sql/v1/cloud_sql_connect_services_pb.rb +50 -0
  13. data/lib/google/cloud/sql/v1/cloud_sql_databases_pb.rb +30 -0
  14. data/lib/google/cloud/sql/v1/cloud_sql_databases_services_pb.rb +61 -0
  15. data/lib/google/cloud/sql/v1/cloud_sql_events_pb.rb +25 -0
  16. data/lib/google/cloud/sql/v1/cloud_sql_events_services_pb.rb +29 -0
  17. data/lib/google/cloud/sql/v1/cloud_sql_feature_eligibility_pb.rb +24 -0
  18. data/lib/google/cloud/sql/v1/cloud_sql_feature_eligibility_services_pb.rb +29 -0
  19. data/lib/google/cloud/sql/v1/cloud_sql_flags_pb.rb +31 -0
  20. data/lib/google/cloud/sql/v1/cloud_sql_flags_services_pb.rb +45 -0
  21. data/lib/google/cloud/sql/v1/cloud_sql_iam_policies_pb.rb +23 -0
  22. data/lib/google/cloud/sql/v1/cloud_sql_iam_policies_services_pb.rb +29 -0
  23. data/lib/google/cloud/sql/v1/cloud_sql_instance_names_pb.rb +24 -0
  24. data/lib/google/cloud/sql/v1/cloud_sql_instance_names_services_pb.rb +29 -0
  25. data/lib/google/cloud/sql/v1/cloud_sql_instances_pb.rb +146 -0
  26. data/lib/google/cloud/sql/v1/cloud_sql_instances_services_pb.rb +184 -0
  27. data/lib/google/cloud/sql/v1/cloud_sql_operations_pb.rb +30 -0
  28. data/lib/google/cloud/sql/v1/cloud_sql_operations_services_pb.rb +50 -0
  29. data/lib/google/cloud/sql/v1/cloud_sql_regions_pb.rb +25 -0
  30. data/lib/google/cloud/sql/v1/cloud_sql_regions_services_pb.rb +29 -0
  31. data/lib/google/cloud/sql/v1/cloud_sql_resources_pb.rb +119 -0
  32. data/lib/google/cloud/sql/v1/cloud_sql_ssl_certs_pb.rb +31 -0
  33. data/lib/google/cloud/sql/v1/cloud_sql_ssl_certs_services_pb.rb +56 -0
  34. data/lib/google/cloud/sql/v1/cloud_sql_tiers_pb.rb +26 -0
  35. data/lib/google/cloud/sql/v1/cloud_sql_tiers_services_pb.rb +47 -0
  36. data/lib/google/cloud/sql/v1/cloud_sql_users_pb.rb +41 -0
  37. data/lib/google/cloud/sql/v1/cloud_sql_users_services_pb.rb +53 -0
  38. data/lib/google/cloud/sql/v1/rest.rb +46 -0
  39. data/lib/google/cloud/sql/v1/sql_backup_runs_service/client.rb +809 -0
  40. data/lib/google/cloud/sql/v1/sql_backup_runs_service/credentials.rb +48 -0
  41. data/lib/google/cloud/sql/v1/sql_backup_runs_service/rest/client.rb +720 -0
  42. data/lib/google/cloud/sql/v1/sql_backup_runs_service/rest/service_stub.rb +332 -0
  43. data/lib/google/cloud/sql/v1/sql_backup_runs_service/rest.rb +51 -0
  44. data/lib/google/cloud/sql/v1/sql_backup_runs_service.rb +54 -0
  45. data/lib/google/cloud/sql/v1/sql_backups_service/client.rb +896 -0
  46. data/lib/google/cloud/sql/v1/sql_backups_service/credentials.rb +48 -0
  47. data/lib/google/cloud/sql/v1/sql_backups_service/paths.rb +64 -0
  48. data/lib/google/cloud/sql/v1/sql_backups_service/rest/client.rb +818 -0
  49. data/lib/google/cloud/sql/v1/sql_backups_service/rest/service_stub.rb +388 -0
  50. data/lib/google/cloud/sql/v1/sql_backups_service/rest.rb +50 -0
  51. data/lib/google/cloud/sql/v1/sql_backups_service.rb +53 -0
  52. data/lib/google/cloud/sql/v1/sql_connect_service/client.rb +607 -0
  53. data/lib/google/cloud/sql/v1/sql_connect_service/credentials.rb +48 -0
  54. data/lib/google/cloud/sql/v1/sql_connect_service/rest/client.rb +544 -0
  55. data/lib/google/cloud/sql/v1/sql_connect_service/rest/service_stub.rb +206 -0
  56. data/lib/google/cloud/sql/v1/sql_connect_service/rest.rb +51 -0
  57. data/lib/google/cloud/sql/v1/sql_connect_service.rb +54 -0
  58. data/lib/google/cloud/sql/v1/sql_databases_service/client.rb +1011 -0
  59. data/lib/google/cloud/sql/v1/sql_databases_service/credentials.rb +48 -0
  60. data/lib/google/cloud/sql/v1/sql_databases_service/rest/client.rb +896 -0
  61. data/lib/google/cloud/sql/v1/sql_databases_service/rest/service_stub.rb +460 -0
  62. data/lib/google/cloud/sql/v1/sql_databases_service/rest.rb +51 -0
  63. data/lib/google/cloud/sql/v1/sql_databases_service.rb +54 -0
  64. data/lib/google/cloud/sql/v1/sql_flags_service/client.rb +488 -0
  65. data/lib/google/cloud/sql/v1/sql_flags_service/credentials.rb +48 -0
  66. data/lib/google/cloud/sql/v1/sql_flags_service/rest/client.rb +446 -0
  67. data/lib/google/cloud/sql/v1/sql_flags_service/rest/service_stub.rb +140 -0
  68. data/lib/google/cloud/sql/v1/sql_flags_service/rest.rb +51 -0
  69. data/lib/google/cloud/sql/v1/sql_flags_service.rb +54 -0
  70. data/lib/google/cloud/sql/v1/sql_instances_service/client.rb +4738 -0
  71. data/lib/google/cloud/sql/v1/sql_instances_service/credentials.rb +48 -0
  72. data/lib/google/cloud/sql/v1/sql_instances_service/paths.rb +95 -0
  73. data/lib/google/cloud/sql/v1/sql_instances_service/rest/client.rb +4274 -0
  74. data/lib/google/cloud/sql/v1/sql_instances_service/rest/service_stub.rb +2769 -0
  75. data/lib/google/cloud/sql/v1/sql_instances_service/rest.rb +50 -0
  76. data/lib/google/cloud/sql/v1/sql_instances_service.rb +53 -0
  77. data/lib/google/cloud/sql/v1/sql_operations_service/client.rb +694 -0
  78. data/lib/google/cloud/sql/v1/sql_operations_service/credentials.rb +48 -0
  79. data/lib/google/cloud/sql/v1/sql_operations_service/rest/client.rb +624 -0
  80. data/lib/google/cloud/sql/v1/sql_operations_service/rest/service_stub.rb +266 -0
  81. data/lib/google/cloud/sql/v1/sql_operations_service/rest.rb +51 -0
  82. data/lib/google/cloud/sql/v1/sql_operations_service.rb +54 -0
  83. data/lib/google/cloud/sql/v1/sql_ssl_certs_service/client.rb +804 -0
  84. data/lib/google/cloud/sql/v1/sql_ssl_certs_service/credentials.rb +48 -0
  85. data/lib/google/cloud/sql/v1/sql_ssl_certs_service/rest/client.rb +715 -0
  86. data/lib/google/cloud/sql/v1/sql_ssl_certs_service/rest/service_stub.rb +332 -0
  87. data/lib/google/cloud/sql/v1/sql_ssl_certs_service/rest.rb +51 -0
  88. data/lib/google/cloud/sql/v1/sql_ssl_certs_service.rb +54 -0
  89. data/lib/google/cloud/sql/v1/sql_tiers_service/client.rb +494 -0
  90. data/lib/google/cloud/sql/v1/sql_tiers_service/credentials.rb +48 -0
  91. data/lib/google/cloud/sql/v1/sql_tiers_service/rest/client.rb +444 -0
  92. data/lib/google/cloud/sql/v1/sql_tiers_service/rest/service_stub.rb +142 -0
  93. data/lib/google/cloud/sql/v1/sql_tiers_service/rest.rb +51 -0
  94. data/lib/google/cloud/sql/v1/sql_tiers_service.rb +54 -0
  95. data/lib/google/cloud/sql/v1/sql_users_service/client.rb +909 -0
  96. data/lib/google/cloud/sql/v1/sql_users_service/credentials.rb +48 -0
  97. data/lib/google/cloud/sql/v1/sql_users_service/rest/client.rb +813 -0
  98. data/lib/google/cloud/sql/v1/sql_users_service/rest/service_stub.rb +394 -0
  99. data/lib/google/cloud/sql/v1/sql_users_service/rest.rb +51 -0
  100. data/lib/google/cloud/sql/v1/sql_users_service.rb +54 -0
  101. data/lib/google/cloud/sql/v1/version.rb +8 -3
  102. data/lib/google/cloud/sql/v1.rb +60 -0
  103. data/lib/google-cloud-sql-v1.rb +21 -0
  104. data/proto_docs/README.md +4 -0
  105. data/proto_docs/google/api/client.rb +593 -0
  106. data/proto_docs/google/api/field_behavior.rb +85 -0
  107. data/proto_docs/google/api/field_info.rb +88 -0
  108. data/proto_docs/google/api/launch_stage.rb +71 -0
  109. data/proto_docs/google/api/resource.rb +227 -0
  110. data/proto_docs/google/cloud/sql/v1/cloud_sql_backup_runs.rb +245 -0
  111. data/proto_docs/google/cloud/sql/v1/cloud_sql_backups.rb +259 -0
  112. data/proto_docs/google/cloud/sql/v1/cloud_sql_connect.rb +190 -0
  113. data/proto_docs/google/cloud/sql/v1/cloud_sql_databases.rb +111 -0
  114. data/proto_docs/google/cloud/sql/v1/cloud_sql_flags.rb +154 -0
  115. data/proto_docs/google/cloud/sql/v1/cloud_sql_instances.rb +2357 -0
  116. data/proto_docs/google/cloud/sql/v1/cloud_sql_operations.rb +85 -0
  117. data/proto_docs/google/cloud/sql/v1/cloud_sql_resources.rb +2522 -0
  118. data/proto_docs/google/cloud/sql/v1/cloud_sql_ssl_certs.rb +120 -0
  119. data/proto_docs/google/cloud/sql/v1/cloud_sql_tiers.rb +69 -0
  120. data/proto_docs/google/cloud/sql/v1/cloud_sql_users.rb +291 -0
  121. data/proto_docs/google/protobuf/any.rb +145 -0
  122. data/proto_docs/google/protobuf/duration.rb +98 -0
  123. data/proto_docs/google/protobuf/empty.rb +34 -0
  124. data/proto_docs/google/protobuf/field_mask.rb +229 -0
  125. data/proto_docs/google/protobuf/timestamp.rb +127 -0
  126. data/proto_docs/google/protobuf/wrappers.rb +148 -0
  127. data/proto_docs/google/rpc/status.rb +48 -0
  128. data/proto_docs/google/type/interval.rb +45 -0
  129. metadata +176 -14
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8339eb093f74ab12e201be558d0cb1b631d51f764ec543948cecc20de455bc4b
4
- data.tar.gz: e799ca3874fa7194a94bfa888b6e49946a284496eb74001d33502e657961b7ba
3
+ metadata.gz: 88465cfde45e8c6c172d1b8acdd2af8253f65a6542134b2626fa25e8a0b6123e
4
+ data.tar.gz: 7e92bed4f8b0479a446ba6ea277ef6c6bd3cad4bbd890800d694eca8376bbd4d
5
5
  SHA512:
6
- metadata.gz: f7fc770a1e566ca68b97a85fdc7d5679fbd71873795b2d8112033179608749d7cbef8138aba09d9630d87379057c01928795576d29b3bb874c96d5d177c42f9a
7
- data.tar.gz: f70ac2b31ee81b83ec08151868b89b658da91121da9eff09880f52a7a9a298fd778b5e66c73d5e9172333fe00a8cb98ebcf8db0b9ac8c0e7b0b0e6001afec385
6
+ metadata.gz: d4200fd01d7c32ff34a0f5368359c0de4960f80485cfc4defb0477307a5b1808fe6d551f34c46986a7f79e7565c9e4e4d456784ade126f5ab0e5cf4bf6ffddcc
7
+ data.tar.gz: 1855011e9b4bcdc1291e259172d5dba9905bc5eb4bd32fd81af5152424a09a70ac04f24d66034893df466d6590f3771e7a908d8053520484bdc596b850043896
data/.yardopts ADDED
@@ -0,0 +1,12 @@
1
+ --no-private
2
+ --title="Cloud SQL Admin V1 API"
3
+ --exclude _pb\.rb$
4
+ --markup markdown
5
+ --markup-provider redcarpet
6
+
7
+ ./lib/**/*.rb
8
+ ./proto_docs/**/*.rb
9
+ -
10
+ README.md
11
+ LICENSE.md
12
+ AUTHENTICATION.md
data/AUTHENTICATION.md ADDED
@@ -0,0 +1,122 @@
1
+ # Authentication
2
+
3
+ The recommended way to authenticate to the google-cloud-sql-v1 library is to use
4
+ [Application Default Credentials (ADC)](https://cloud.google.com/docs/authentication/application-default-credentials).
5
+ To review all of your authentication options, see [Credentials lookup](#credential-lookup).
6
+
7
+ ## Quickstart
8
+
9
+ The following example shows how to set up authentication for a local development
10
+ environment with your user credentials.
11
+
12
+ **NOTE:** This method is _not_ recommended for running in production. User credentials
13
+ should be used only during development.
14
+
15
+ 1. [Download and install the Google Cloud CLI](https://cloud.google.com/sdk).
16
+ 2. Set up a local ADC file with your user credentials:
17
+
18
+ ```sh
19
+ gcloud auth application-default login
20
+ ```
21
+
22
+ 3. Write code as if already authenticated.
23
+
24
+ For more information about setting up authentication for a local development environment, see
25
+ [Set up Application Default Credentials](https://cloud.google.com/docs/authentication/provide-credentials-adc#local-dev).
26
+
27
+ ## Credential Lookup
28
+
29
+ The google-cloud-sql-v1 library provides several mechanisms to configure your system.
30
+ Generally, using Application Default Credentials to facilitate automatic
31
+ credentials discovery is the easist method. But if you need to explicitly specify
32
+ credentials, there are several methods available to you.
33
+
34
+ Credentials are accepted in the following ways, in the following order or precedence:
35
+
36
+ 1. Credentials specified in method arguments
37
+ 2. Credentials specified in configuration
38
+ 3. Credentials pointed to or included in environment variables
39
+ 4. Credentials found in local ADC file
40
+ 5. Credentials returned by the metadata server for the attached service account (GCP)
41
+
42
+ ### Configuration
43
+
44
+ You can configure a path to a JSON credentials file, either for an individual client object or
45
+ globally, for all client objects. The JSON file can contain credentials created for
46
+ [workload identity federation](https://cloud.google.com/iam/docs/workload-identity-federation),
47
+ [workforce identity federation](https://cloud.google.com/iam/docs/workforce-identity-federation), or a
48
+ [service account key](https://cloud.google.com/docs/authentication/provide-credentials-adc#local-key).
49
+
50
+ Note: Service account keys are a security risk if not managed correctly. You should
51
+ [choose a more secure alternative to service account keys](https://cloud.google.com/docs/authentication#auth-decision-tree)
52
+ whenever possible.
53
+
54
+ To configure a credentials file for an individual client initialization:
55
+
56
+ ```ruby
57
+ require "google/cloud/sql/v1"
58
+
59
+ client = ::Google::Cloud::Sql::V1::SqlAvailableDatabaseVersionsService::Client.new do |config|
60
+ config.credentials = "path/to/credentialfile.json"
61
+ end
62
+ ```
63
+
64
+ To configure a credentials file globally for all clients:
65
+
66
+ ```ruby
67
+ require "google/cloud/sql/v1"
68
+
69
+ ::Google::Cloud::Sql::V1::SqlAvailableDatabaseVersionsService::Client.configure do |config|
70
+ config.credentials = "path/to/credentialfile.json"
71
+ end
72
+
73
+ client = ::Google::Cloud::Sql::V1::SqlAvailableDatabaseVersionsService::Client.new
74
+ ```
75
+
76
+ ### Environment Variables
77
+
78
+ You can also use an environment variable to provide a JSON credentials file.
79
+ The environment variable can contain a path to the credentials file or, for
80
+ environments such as Docker containers where writing files is not encouraged,
81
+ you can include the credentials file itself.
82
+
83
+ The JSON file can contain credentials created for
84
+ [workload identity federation](https://cloud.google.com/iam/docs/workload-identity-federation),
85
+ [workforce identity federation](https://cloud.google.com/iam/docs/workforce-identity-federation), or a
86
+ [service account key](https://cloud.google.com/docs/authentication/provide-credentials-adc#local-key).
87
+
88
+ Note: Service account keys are a security risk if not managed correctly. You should
89
+ [choose a more secure alternative to service account keys](https://cloud.google.com/docs/authentication#auth-decision-tree)
90
+ whenever possible.
91
+
92
+ The environment variables that google-cloud-sql-v1
93
+ checks for credentials are:
94
+
95
+ * `GOOGLE_CLOUD_CREDENTIALS` - Path to JSON file, or JSON contents
96
+ * `GOOGLE_APPLICATION_CREDENTIALS` - Path to JSON file
97
+
98
+ ```ruby
99
+ require "google/cloud/sql/v1"
100
+
101
+ ENV["GOOGLE_APPLICATION_CREDENTIALS"] = "path/to/credentialfile.json"
102
+
103
+ client = ::Google::Cloud::Sql::V1::SqlAvailableDatabaseVersionsService::Client.new
104
+ ```
105
+
106
+ ### Local ADC file
107
+
108
+ You can set up a local ADC file with your user credentials for authentication during
109
+ development. If credentials are not provided in code or in environment variables,
110
+ then the local ADC credentials are discovered.
111
+
112
+ Follow the steps in [Quickstart](#quickstart) to set up a local ADC file.
113
+
114
+ ### Google Cloud Platform environments
115
+
116
+ When running on Google Cloud Platform (GCP), including Google Compute Engine
117
+ (GCE), Google Kubernetes Engine (GKE), Google App Engine (GAE), Google Cloud
118
+ Functions (GCF) and Cloud Run, credentials are retrieved from the attached
119
+ service account automatically. Code should be written as if already authenticated.
120
+
121
+ For more information, see
122
+ [Set up ADC for Google Cloud services](https://cloud.google.com/docs/authentication/provide-credentials-adc#attached-sa).
data/README.md CHANGED
@@ -1,8 +1,146 @@
1
- # Placeholder for Ruby gem google-cloud-sql-v1
2
-
3
- This is a placeholder for the future Google-authored gem google-cloud-sql-v1.
4
- This placeholder is being released on 2024-09-20 in order to reserve the name.
5
- The final gem should be available shortly after that date. If it has not been
6
- released in a timely manner, or if this placeholder interferes with your work,
7
- you can contact the Google Ruby team by opening an issue in the GitHub
8
- repository https://github.com/googleapis/google-cloud-ruby.
1
+ # Ruby Client for the Cloud SQL Admin V1 API
2
+
3
+ API for Cloud SQL database instance management.
4
+
5
+
6
+ https://github.com/googleapis/google-cloud-ruby
7
+
8
+ This gem is a _versioned_ client. It provides basic client classes for a
9
+ specific version of the Cloud SQL Admin V1 API. Most users should consider using
10
+ the main client gem,
11
+ [google-cloud-sql](https://rubygems.org/gems/google-cloud-sql).
12
+ See the section below titled *Which client should I use?* for more information.
13
+
14
+ ## Installation
15
+
16
+ ```
17
+ $ gem install google-cloud-sql-v1
18
+ ```
19
+
20
+ ## Before You Begin
21
+
22
+ In order to use this library, you first need to go through the following steps:
23
+
24
+ 1. [Select or create a Cloud Platform project.](https://console.cloud.google.com/project)
25
+ 1. [Enable billing for your project.](https://cloud.google.com/billing/docs/how-to/modify-project#enable_billing_for_a_project)
26
+ 1. [Enable the API.](https://console.cloud.google.com/apis/library/sqladmin.googleapis.com)
27
+ 1. {file:AUTHENTICATION.md Set up authentication.}
28
+
29
+ ## Quick Start
30
+
31
+ ```ruby
32
+ require "google/cloud/sql/v1"
33
+ ```
34
+
35
+ View the [Client Library Documentation](https://cloud.google.com/ruby/docs/reference/google-cloud-sql-v1/latest)
36
+ for class and method documentation.
37
+
38
+ ## Debug Logging
39
+
40
+ This library comes with opt-in Debug Logging that can help you troubleshoot
41
+ your application's integration with the API. When logging is activated, key
42
+ events such as requests and responses, along with data payloads and metadata
43
+ such as headers and client configuration, are logged to the standard error
44
+ stream.
45
+
46
+ **WARNING:** Client Library Debug Logging includes your data payloads in
47
+ plaintext, which could include sensitive data such as PII for yourself or your
48
+ customers, private keys, or other security data that could be compromising if
49
+ leaked. Always practice good data hygiene with your application logs, and follow
50
+ the principle of least access. Google also recommends that Client Library Debug
51
+ Logging be enabled only temporarily during active debugging, and not used
52
+ permanently in production.
53
+
54
+ To enable logging, set the environment variable `GOOGLE_SDK_RUBY_LOGGING_GEMS`
55
+ to the value `all`. Alternatively, you can set the value to a comma-delimited
56
+ list of client library gem names. This will select the default logging behavior,
57
+ which writes logs to the standard error stream. On a local workstation, this may
58
+ result in logs appearing on the console. When running on a Google Cloud hosting
59
+ service such as [Google Cloud Run](https://cloud.google.com/run), this generally
60
+ results in logs appearing alongside your application logs in the
61
+ [Google Cloud Logging](https://cloud.google.com/logging/) service.
62
+
63
+ You can customize logging by modifying the `logger` configuration when
64
+ constructing a client object. For example:
65
+
66
+ ```ruby
67
+ require "google/cloud/sql/v1"
68
+ require "logger"
69
+
70
+ client = ::Google::Cloud::Sql::V1::SqlAvailableDatabaseVersionsService::Client.new do |config|
71
+ config.logger = Logger.new "my-app.log"
72
+ end
73
+ ```
74
+
75
+ ## Google Cloud Samples
76
+
77
+ To browse ready to use code samples check [Google Cloud Samples](https://cloud.google.com/docs/samples).
78
+
79
+ ## Supported Ruby Versions
80
+
81
+ This library is supported on Ruby 3.2+.
82
+
83
+ Google provides official support for Ruby versions that are actively supported
84
+ by Ruby Core—that is, Ruby versions that are either in normal maintenance or
85
+ in security maintenance, and not end of life. Older versions of Ruby _may_
86
+ still work, but are unsupported and not recommended. See
87
+ https://www.ruby-lang.org/en/downloads/branches/ for details about the Ruby
88
+ support schedule.
89
+
90
+ ## Which client should I use?
91
+
92
+ Most modern Ruby client libraries for Google APIs come in two flavors: the main
93
+ client library with a name such as `google-cloud-sql`,
94
+ and lower-level _versioned_ client libraries with names such as
95
+ `google-cloud-sql-v1`.
96
+ _In most cases, you should install the main client._
97
+
98
+ ### What's the difference between the main client and a versioned client?
99
+
100
+ A _versioned client_ provides a basic set of data types and client classes for
101
+ a _single version_ of a specific service. (That is, for a service with multiple
102
+ versions, there might be a separate versioned client for each service version.)
103
+ Most versioned clients are written and maintained by a code generator.
104
+
105
+ The _main client_ is designed to provide you with the _recommended_ client
106
+ interfaces for the service. There will be only one main client for any given
107
+ service, even a service with multiple versions. The main client includes
108
+ factory methods for constructing the client objects we recommend for most
109
+ users. In some cases, those will be classes provided by an underlying versioned
110
+ client; in other cases, they will be handwritten higher-level client objects
111
+ with additional capabilities, convenience methods, or best practices built in.
112
+ Generally, the main client will default to a recommended service version,
113
+ although in some cases you can override this if you need to talk to a specific
114
+ service version.
115
+
116
+ ### Why would I want to use the main client?
117
+
118
+ We recommend that most users install the main client gem for a service. You can
119
+ identify this gem as the one _without_ a version in its name, e.g.
120
+ `google-cloud-sql`.
121
+ The main client is recommended because it will embody the best practices for
122
+ accessing the service, and may also provide more convenient interfaces or
123
+ tighter integration into frameworks and third-party libraries. In addition, the
124
+ documentation and samples published by Google will generally demonstrate use of
125
+ the main client.
126
+
127
+ ### Why would I want to use a versioned client?
128
+
129
+ You can use a versioned client if you are content with a possibly lower-level
130
+ class interface, you explicitly want to avoid features provided by the main
131
+ client, or you want to access a specific service version not be covered by the
132
+ main client. You can identify versioned client gems because the service version
133
+ is part of the name, e.g. `google-cloud-sql-v1`.
134
+
135
+ ### What about the google-apis-<name> clients?
136
+
137
+ Client library gems with names that begin with `google-apis-` are based on an
138
+ older code generation technology. They talk to a REST/JSON backend (whereas
139
+ most modern clients talk to a [gRPC](https://grpc.io/) backend) and they may
140
+ not offer the same performance, features, and ease of use provided by more
141
+ modern clients.
142
+
143
+ The `google-apis-` clients have wide coverage across Google services, so you
144
+ might need to use one if there is no modern client available for the service.
145
+ However, if a modern client is available, we generally recommend it over the
146
+ older `google-apis-` clients.
@@ -0,0 +1,25 @@
1
+ # frozen_string_literal: true
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # source: google/cloud/sql/v1/cloud_sql_available_database_versions.proto
4
+
5
+ require 'google/protobuf'
6
+
7
+ require 'google/api/annotations_pb'
8
+ require 'google/api/client_pb'
9
+ require 'google/api/field_behavior_pb'
10
+ require 'google/api/resource_pb'
11
+
12
+
13
+ descriptor_data = "\n?google/cloud/sql/v1/cloud_sql_available_database_versions.proto\x12\x13google.cloud.sql.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto2A\n#SqlAvailableDatabaseVersionsService\x1a\x1a\xca\x41\x17sqladmin.googleapis.comBn\n\x17\x63om.google.cloud.sql.v1B&CloudSqlAvailableDatabaseVersionsProtoP\x01Z)cloud.google.com/go/sql/apiv1/sqlpb;sqlpbb\x06proto3"
14
+
15
+ pool = ::Google::Protobuf::DescriptorPool.generated_pool
16
+ pool.add_serialized_file(descriptor_data)
17
+
18
+ module Google
19
+ module Cloud
20
+ module Sql
21
+ module V1
22
+ end
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,29 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # Source: google/cloud/sql/v1/cloud_sql_available_database_versions.proto for package 'google.cloud.sql.v1'
3
+ # Original file comments:
4
+ # Copyright 2026 Google LLC
5
+ #
6
+ # Licensed under the Apache License, Version 2.0 (the "License");
7
+ # you may not use this file except in compliance with the License.
8
+ # You may obtain a copy of the License at
9
+ #
10
+ # http://www.apache.org/licenses/LICENSE-2.0
11
+ #
12
+ # Unless required by applicable law or agreed to in writing, software
13
+ # distributed under the License is distributed on an "AS IS" BASIS,
14
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
+ # See the License for the specific language governing permissions and
16
+ # limitations under the License.
17
+ #
18
+
19
+ require 'grpc'
20
+ require 'google/cloud/sql/v1/cloud_sql_available_database_versions_pb'
21
+
22
+ module Google
23
+ module Cloud
24
+ module Sql
25
+ module V1
26
+ end
27
+ end
28
+ end
29
+ end
@@ -0,0 +1,35 @@
1
+ # frozen_string_literal: true
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # source: google/cloud/sql/v1/cloud_sql_backup_runs.proto
4
+
5
+ require 'google/protobuf'
6
+
7
+ require 'google/api/annotations_pb'
8
+ require 'google/api/client_pb'
9
+ require 'google/api/field_behavior_pb'
10
+ require 'google/cloud/sql/v1/cloud_sql_resources_pb'
11
+ require 'google/protobuf/timestamp_pb'
12
+
13
+
14
+ descriptor_data = "\n/google/cloud/sql/v1/cloud_sql_backup_runs.proto\x12\x13google.cloud.sql.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a-google/cloud/sql/v1/cloud_sql_resources.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"K\n\x1aSqlBackupRunsDeleteRequest\x12\n\n\x02id\x18\x01 \x01(\x03\x12\x10\n\x08instance\x18\x02 \x01(\t\x12\x0f\n\x07project\x18\x03 \x01(\t\"H\n\x17SqlBackupRunsGetRequest\x12\n\n\x02id\x18\x01 \x01(\x03\x12\x10\n\x08instance\x18\x02 \x01(\t\x12\x0f\n\x07project\x18\x03 \x01(\t\"m\n\x1aSqlBackupRunsInsertRequest\x12\x10\n\x08instance\x18\x01 \x01(\t\x12\x0f\n\x07project\x18\x02 \x01(\t\x12,\n\x04\x62ody\x18\x64 \x01(\x0b\x32\x1e.google.cloud.sql.v1.BackupRun\"f\n\x18SqlBackupRunsListRequest\x12\x10\n\x08instance\x18\x01 \x01(\t\x12\x13\n\x0bmax_results\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\x12\x0f\n\x07project\x18\x04 \x01(\t\"\xd4\x06\n\tBackupRun\x12\x0c\n\x04kind\x18\x01 \x01(\t\x12\x37\n\x06status\x18\x02 \x01(\x0e\x32\'.google.cloud.sql.v1.SqlBackupRunStatus\x12\x31\n\renqueued_time\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\n\n\x02id\x18\x04 \x01(\x03\x12.\n\nstart_time\x18\x05 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12,\n\x08\x65nd_time\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x32\n\x05\x65rror\x18\x07 \x01(\x0b\x32#.google.cloud.sql.v1.OperationError\x12\x33\n\x04type\x18\x08 \x01(\x0e\x32%.google.cloud.sql.v1.SqlBackupRunType\x12\x13\n\x0b\x64\x65scription\x18\t \x01(\t\x12\x35\n\x11window_start_time\x18\n \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x10\n\x08instance\x18\x0b \x01(\t\x12\x11\n\tself_link\x18\x0c \x01(\t\x12\x10\n\x08location\x18\r \x01(\t\x12\x46\n\x10\x64\x61tabase_version\x18\x0f \x01(\x0e\x32\'.google.cloud.sql.v1.SqlDatabaseVersionB\x03\xe0\x41\x03\x12W\n\x1d\x64isk_encryption_configuration\x18\x10 \x01(\x0b\x32\x30.google.cloud.sql.v1.DiskEncryptionConfiguration\x12I\n\x16\x64isk_encryption_status\x18\x11 \x01(\x0b\x32).google.cloud.sql.v1.DiskEncryptionStatus\x12\x37\n\x0b\x62\x61\x63kup_kind\x18\x13 \x01(\x0e\x32\".google.cloud.sql.v1.SqlBackupKind\x12\x11\n\ttime_zone\x18\x17 \x01(\t\x12&\n\x14max_chargeable_bytes\x18\x18 \x01(\x03\x42\x03\xe0\x41\x03H\x00\x88\x01\x01\x42\x17\n\x15_max_chargeable_bytes\"n\n\x16\x42\x61\x63kupRunsListResponse\x12\x0c\n\x04kind\x18\x01 \x01(\t\x12-\n\x05items\x18\x02 \x03(\x0b\x32\x1e.google.cloud.sql.v1.BackupRun\x12\x17\n\x0fnext_page_token\x18\x03 \x01(\t*\xc4\x01\n\x12SqlBackupRunStatus\x12%\n!SQL_BACKUP_RUN_STATUS_UNSPECIFIED\x10\x00\x12\x0c\n\x08\x45NQUEUED\x10\x01\x12\x0b\n\x07OVERDUE\x10\x02\x12\x0b\n\x07RUNNING\x10\x03\x12\n\n\x06\x46\x41ILED\x10\x04\x12\x0e\n\nSUCCESSFUL\x10\x05\x12\x0b\n\x07SKIPPED\x10\x06\x12\x14\n\x10\x44\x45LETION_PENDING\x10\x07\x12\x13\n\x0f\x44\x45LETION_FAILED\x10\x08\x12\x0b\n\x07\x44\x45LETED\x10\t*L\n\rSqlBackupKind\x12\x1f\n\x1bSQL_BACKUP_KIND_UNSPECIFIED\x10\x00\x12\x0c\n\x08SNAPSHOT\x10\x01\x12\x0c\n\x08PHYSICAL\x10\x02*U\n\x10SqlBackupRunType\x12#\n\x1fSQL_BACKUP_RUN_TYPE_UNSPECIFIED\x10\x00\x12\r\n\tAUTOMATED\x10\x01\x12\r\n\tON_DEMAND\x10\x02\x32\x97\x06\n\x14SqlBackupRunsService\x12\x9e\x01\n\x06\x44\x65lete\x12/.google.cloud.sql.v1.SqlBackupRunsDeleteRequest\x1a\x1e.google.cloud.sql.v1.Operation\"C\x82\xd3\xe4\x93\x02=*;/v1/projects/{project}/instances/{instance}/backupRuns/{id}\x12\x98\x01\n\x03Get\x12,.google.cloud.sql.v1.SqlBackupRunsGetRequest\x1a\x1e.google.cloud.sql.v1.BackupRun\"C\x82\xd3\xe4\x93\x02=\x12;/v1/projects/{project}/instances/{instance}/backupRuns/{id}\x12\x9f\x01\n\x06Insert\x12/.google.cloud.sql.v1.SqlBackupRunsInsertRequest\x1a\x1e.google.cloud.sql.v1.Operation\"D\x82\xd3\xe4\x93\x02>\"6/v1/projects/{project}/instances/{instance}/backupRuns:\x04\x62ody\x12\xa2\x01\n\x04List\x12-.google.cloud.sql.v1.SqlBackupRunsListRequest\x1a+.google.cloud.sql.v1.BackupRunsListResponse\">\x82\xd3\xe4\x93\x02\x38\x12\x36/v1/projects/{project}/instances/{instance}/backupRuns\x1a|\xca\x41\x17sqladmin.googleapis.com\xd2\x41_https://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/sqlservice.adminB_\n\x17\x63om.google.cloud.sql.v1B\x17\x43loudSqlBackupRunsProtoP\x01Z)cloud.google.com/go/sql/apiv1/sqlpb;sqlpbb\x06proto3"
15
+
16
+ pool = ::Google::Protobuf::DescriptorPool.generated_pool
17
+ pool.add_serialized_file(descriptor_data)
18
+
19
+ module Google
20
+ module Cloud
21
+ module Sql
22
+ module V1
23
+ SqlBackupRunsDeleteRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.sql.v1.SqlBackupRunsDeleteRequest").msgclass
24
+ SqlBackupRunsGetRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.sql.v1.SqlBackupRunsGetRequest").msgclass
25
+ SqlBackupRunsInsertRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.sql.v1.SqlBackupRunsInsertRequest").msgclass
26
+ SqlBackupRunsListRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.sql.v1.SqlBackupRunsListRequest").msgclass
27
+ BackupRun = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.sql.v1.BackupRun").msgclass
28
+ BackupRunsListResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.sql.v1.BackupRunsListResponse").msgclass
29
+ SqlBackupRunStatus = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.sql.v1.SqlBackupRunStatus").enummodule
30
+ SqlBackupKind = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.sql.v1.SqlBackupKind").enummodule
31
+ SqlBackupRunType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.sql.v1.SqlBackupRunType").enummodule
32
+ end
33
+ end
34
+ end
35
+ end
@@ -0,0 +1,53 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # Source: google/cloud/sql/v1/cloud_sql_backup_runs.proto for package 'google.cloud.sql.v1'
3
+ # Original file comments:
4
+ # Copyright 2026 Google LLC
5
+ #
6
+ # Licensed under the Apache License, Version 2.0 (the "License");
7
+ # you may not use this file except in compliance with the License.
8
+ # You may obtain a copy of the License at
9
+ #
10
+ # http://www.apache.org/licenses/LICENSE-2.0
11
+ #
12
+ # Unless required by applicable law or agreed to in writing, software
13
+ # distributed under the License is distributed on an "AS IS" BASIS,
14
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
+ # See the License for the specific language governing permissions and
16
+ # limitations under the License.
17
+ #
18
+
19
+ require 'grpc'
20
+ require 'google/cloud/sql/v1/cloud_sql_backup_runs_pb'
21
+
22
+ module Google
23
+ module Cloud
24
+ module Sql
25
+ module V1
26
+ module SqlBackupRunsService
27
+ # Service for managing database backups.
28
+ class Service
29
+
30
+ include ::GRPC::GenericService
31
+
32
+ self.marshal_class_method = :encode
33
+ self.unmarshal_class_method = :decode
34
+ self.service_name = 'google.cloud.sql.v1.SqlBackupRunsService'
35
+
36
+ # Deletes the backup taken by a backup run.
37
+ rpc :Delete, ::Google::Cloud::Sql::V1::SqlBackupRunsDeleteRequest, ::Google::Cloud::Sql::V1::Operation
38
+ # Retrieves a resource containing information about a backup run.
39
+ rpc :Get, ::Google::Cloud::Sql::V1::SqlBackupRunsGetRequest, ::Google::Cloud::Sql::V1::BackupRun
40
+ # Creates a new backup run on demand.
41
+ rpc :Insert, ::Google::Cloud::Sql::V1::SqlBackupRunsInsertRequest, ::Google::Cloud::Sql::V1::Operation
42
+ # Lists all backup runs associated with the project or a given instance
43
+ # and configuration in the reverse chronological order of the backup
44
+ # initiation time.
45
+ rpc :List, ::Google::Cloud::Sql::V1::SqlBackupRunsListRequest, ::Google::Cloud::Sql::V1::BackupRunsListResponse
46
+ end
47
+
48
+ Stub = Service.rpc_stub_class
49
+ end
50
+ end
51
+ end
52
+ end
53
+ end
@@ -0,0 +1,41 @@
1
+ # frozen_string_literal: true
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # source: google/cloud/sql/v1/cloud_sql_backups.proto
4
+
5
+ require 'google/protobuf'
6
+
7
+ require 'google/api/annotations_pb'
8
+ require 'google/api/client_pb'
9
+ require 'google/api/field_behavior_pb'
10
+ require 'google/api/resource_pb'
11
+ require 'google/cloud/sql/v1/cloud_sql_backup_runs_pb'
12
+ require 'google/cloud/sql/v1/cloud_sql_instances_pb'
13
+ require 'google/cloud/sql/v1/cloud_sql_resources_pb'
14
+ require 'google/protobuf/field_mask_pb'
15
+ require 'google/protobuf/timestamp_pb'
16
+ require 'google/protobuf/wrappers_pb'
17
+ require 'google/type/interval_pb'
18
+
19
+
20
+ descriptor_data = "\n+google/cloud/sql/v1/cloud_sql_backups.proto\x12\x13google.cloud.sql.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a/google/cloud/sql/v1/cloud_sql_backup_runs.proto\x1a-google/cloud/sql/v1/cloud_sql_instances.proto\x1a-google/cloud/sql/v1/cloud_sql_resources.proto\x1a google/protobuf/field_mask.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x1egoogle/protobuf/wrappers.proto\x1a\x1agoogle/type/interval.proto\"\x7f\n\x13\x43reateBackupRequest\x12\x36\n\x06parent\x18\x01 \x01(\tB&\xe0\x41\x02\xfa\x41 \x12\x1esqladmin.googleapis.com/Backup\x12\x30\n\x06\x62\x61\x63kup\x18\x02 \x01(\x0b\x32\x1b.google.cloud.sql.v1.BackupB\x03\xe0\x41\x02\"H\n\x10GetBackupRequest\x12\x34\n\x04name\x18\x01 \x01(\tB&\xe0\x41\x02\xfa\x41 \n\x1esqladmin.googleapis.com/Backup\"\x83\x01\n\x12ListBackupsRequest\x12\x36\n\x06parent\x18\x01 \x01(\tB&\xe0\x41\x02\xfa\x41 \x12\x1esqladmin.googleapis.com/Backup\x12\x11\n\tpage_size\x18\x02 \x01(\x05\x12\x12\n\npage_token\x18\x03 \x01(\t\x12\x0e\n\x06\x66ilter\x18\x04 \x01(\t\"\x8f\x01\n\x13ListBackupsResponse\x12,\n\x07\x62\x61\x63kups\x18\x01 \x03(\x0b\x32\x1b.google.cloud.sql.v1.Backup\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\x12\x31\n\x08warnings\x18\x03 \x03(\x0b\x32\x1f.google.cloud.sql.v1.ApiWarning\"x\n\x13UpdateBackupRequest\x12\x30\n\x06\x62\x61\x63kup\x18\x01 \x01(\x0b\x32\x1b.google.cloud.sql.v1.BackupB\x03\xe0\x41\x02\x12/\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMask\"K\n\x13\x44\x65leteBackupRequest\x12\x34\n\x04name\x18\x01 \x01(\tB&\xe0\x41\x02\xfa\x41 \n\x1esqladmin.googleapis.com/Backup\"\xa3\n\n\x06\x42\x61\x63kup\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x03\x12\x11\n\x04kind\x18\x02 \x01(\tB\x03\xe0\x41\x03\x12\x16\n\tself_link\x18\x03 \x01(\tB\x03\xe0\x41\x03\x12<\n\x04type\x18\x04 \x01(\x0e\x32).google.cloud.sql.v1.Backup.SqlBackupTypeB\x03\xe0\x41\x03\x12\x13\n\x0b\x64\x65scription\x18\x05 \x01(\t\x12\x10\n\x08instance\x18\x06 \x01(\t\x12\x10\n\x08location\x18\x07 \x01(\t\x12\x33\n\x0f\x62\x61\x63kup_interval\x18\x08 \x01(\x0b\x32\x15.google.type.IntervalB\x03\xe0\x41\x03\x12>\n\x05state\x18\t \x01(\x0e\x32*.google.cloud.sql.v1.Backup.SqlBackupStateB\x03\xe0\x41\x03\x12\x37\n\x05\x65rror\x18\n \x01(\x0b\x32#.google.cloud.sql.v1.OperationErrorB\x03\xe0\x41\x03\x12\x14\n\x07kms_key\x18\x0b \x01(\tB\x03\xe0\x41\x03\x12\x1c\n\x0fkms_key_version\x18\x0c \x01(\tB\x03\xe0\x41\x03\x12<\n\x0b\x62\x61\x63kup_kind\x18\r \x01(\x0e\x32\".google.cloud.sql.v1.SqlBackupKindB\x03\xe0\x41\x03\x12\x16\n\ttime_zone\x18\x0f \x01(\tB\x03\xe0\x41\x03\x12\x17\n\x08ttl_days\x18\x10 \x01(\x03\x42\x03\xe0\x41\x04H\x00\x12\x31\n\x0b\x65xpiry_time\x18\x11 \x01(\x0b\x32\x1a.google.protobuf.TimestampH\x00\x12\x46\n\x10\x64\x61tabase_version\x18\x14 \x01(\x0e\x32\'.google.cloud.sql.v1.SqlDatabaseVersionB\x03\xe0\x41\x03\x12&\n\x14max_chargeable_bytes\x18\x17 \x01(\x03\x42\x03\xe0\x41\x03H\x01\x88\x01\x01\x12\x42\n\x16instance_deletion_time\x18\x18 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x06\xe0\x41\x01\xe0\x41\x03\x12H\n\x11instance_settings\x18\x19 \x01(\x0b\x32%.google.cloud.sql.v1.DatabaseInstanceB\x06\xe0\x41\x01\xe0\x41\x03\x12\x17\n\nbackup_run\x18\x1a \x01(\tB\x03\xe0\x41\x03\x12\x36\n\rsatisfies_pzs\x18\x1b \x01(\x0b\x32\x1a.google.protobuf.BoolValueB\x03\xe0\x41\x03\x12\x36\n\rsatisfies_pzi\x18\x1c \x01(\x0b\x32\x1a.google.protobuf.BoolValueB\x03\xe0\x41\x03\"Y\n\rSqlBackupType\x12\x1f\n\x1bSQL_BACKUP_TYPE_UNSPECIFIED\x10\x00\x12\r\n\tAUTOMATED\x10\x01\x12\r\n\tON_DEMAND\x10\x02\x12\t\n\x05\x46INAL\x10\x03\"\x8c\x01\n\x0eSqlBackupState\x12 \n\x1cSQL_BACKUP_STATE_UNSPECIFIED\x10\x00\x12\x0c\n\x08\x45NQUEUED\x10\x01\x12\x0b\n\x07RUNNING\x10\x02\x12\n\n\x06\x46\x41ILED\x10\x03\x12\x0e\n\nSUCCESSFUL\x10\x04\x12\x0c\n\x08\x44\x45LETING\x10\x05\x12\x13\n\x0f\x44\x45LETION_FAILED\x10\x06:H\xea\x41\x45\n\x1esqladmin.googleapis.com/Backup\x12#projects/{project}/backups/{backup}B\x0c\n\nexpirationB\x17\n\x15_max_chargeable_bytes2\xf8\x06\n\x11SqlBackupsService\x12\x9a\x01\n\x0c\x43reateBackup\x12(.google.cloud.sql.v1.CreateBackupRequest\x1a\x1e.google.cloud.sql.v1.Operation\"@\xda\x41\x0eparent, backup\x82\xd3\xe4\x93\x02)\"\x1f/v1/{parent=projects/*}/backups:\x06\x62\x61\x63kup\x12\x7f\n\tGetBackup\x12%.google.cloud.sql.v1.GetBackupRequest\x1a\x1b.google.cloud.sql.v1.Backup\".\xda\x41\x04name\x82\xd3\xe4\x93\x02!\x12\x1f/v1/{name=projects/*/backups/*}\x12\x92\x01\n\x0bListBackups\x12\'.google.cloud.sql.v1.ListBackupsRequest\x1a(.google.cloud.sql.v1.ListBackupsResponse\"0\xda\x41\x06parent\x82\xd3\xe4\x93\x02!\x12\x1f/v1/{parent=projects/*}/backups\x12\xa6\x01\n\x0cUpdateBackup\x12(.google.cloud.sql.v1.UpdateBackupRequest\x1a\x1e.google.cloud.sql.v1.Operation\"L\xda\x41\x13\x62\x61\x63kup, update_mask\x82\xd3\xe4\x93\x02\x30\x32&/v1/{backup.name=projects/*/backups/*}:\x06\x62\x61\x63kup\x12\x88\x01\n\x0c\x44\x65leteBackup\x12(.google.cloud.sql.v1.DeleteBackupRequest\x1a\x1e.google.cloud.sql.v1.Operation\".\xda\x41\x04name\x82\xd3\xe4\x93\x02!*\x1f/v1/{name=projects/*/backups/*}\x1a|\xca\x41\x17sqladmin.googleapis.com\xd2\x41_https://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/sqlservice.adminB\\\n\x17\x63om.google.cloud.sql.v1B\x14\x43loudSqlBackupsProtoP\x01Z)cloud.google.com/go/sql/apiv1/sqlpb;sqlpbb\x06proto3"
21
+
22
+ pool = ::Google::Protobuf::DescriptorPool.generated_pool
23
+ pool.add_serialized_file(descriptor_data)
24
+
25
+ module Google
26
+ module Cloud
27
+ module Sql
28
+ module V1
29
+ CreateBackupRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.sql.v1.CreateBackupRequest").msgclass
30
+ GetBackupRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.sql.v1.GetBackupRequest").msgclass
31
+ ListBackupsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.sql.v1.ListBackupsRequest").msgclass
32
+ ListBackupsResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.sql.v1.ListBackupsResponse").msgclass
33
+ UpdateBackupRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.sql.v1.UpdateBackupRequest").msgclass
34
+ DeleteBackupRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.sql.v1.DeleteBackupRequest").msgclass
35
+ Backup = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.sql.v1.Backup").msgclass
36
+ Backup::SqlBackupType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.sql.v1.Backup.SqlBackupType").enummodule
37
+ Backup::SqlBackupState = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.sql.v1.Backup.SqlBackupState").enummodule
38
+ end
39
+ end
40
+ end
41
+ end
@@ -0,0 +1,54 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # Source: google/cloud/sql/v1/cloud_sql_backups.proto for package 'google.cloud.sql.v1'
3
+ # Original file comments:
4
+ # Copyright 2026 Google LLC
5
+ #
6
+ # Licensed under the Apache License, Version 2.0 (the "License");
7
+ # you may not use this file except in compliance with the License.
8
+ # You may obtain a copy of the License at
9
+ #
10
+ # http://www.apache.org/licenses/LICENSE-2.0
11
+ #
12
+ # Unless required by applicable law or agreed to in writing, software
13
+ # distributed under the License is distributed on an "AS IS" BASIS,
14
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
+ # See the License for the specific language governing permissions and
16
+ # limitations under the License.
17
+ #
18
+
19
+ require 'grpc'
20
+ require 'google/cloud/sql/v1/cloud_sql_backups_pb'
21
+
22
+ module Google
23
+ module Cloud
24
+ module Sql
25
+ module V1
26
+ module SqlBackupsService
27
+ class Service
28
+
29
+ include ::GRPC::GenericService
30
+
31
+ self.marshal_class_method = :encode
32
+ self.unmarshal_class_method = :decode
33
+ self.service_name = 'google.cloud.sql.v1.SqlBackupsService'
34
+
35
+ # Creates a backup for a Cloud SQL instance. This API can be used only to
36
+ # create on-demand backups.
37
+ rpc :CreateBackup, ::Google::Cloud::Sql::V1::CreateBackupRequest, ::Google::Cloud::Sql::V1::Operation
38
+ # Retrieves a resource containing information about a backup.
39
+ rpc :GetBackup, ::Google::Cloud::Sql::V1::GetBackupRequest, ::Google::Cloud::Sql::V1::Backup
40
+ # Lists all backups associated with the project.
41
+ rpc :ListBackups, ::Google::Cloud::Sql::V1::ListBackupsRequest, ::Google::Cloud::Sql::V1::ListBackupsResponse
42
+ # Updates the retention period and description of the backup. You can use
43
+ # this API to update final backups only.
44
+ rpc :UpdateBackup, ::Google::Cloud::Sql::V1::UpdateBackupRequest, ::Google::Cloud::Sql::V1::Operation
45
+ # Deletes the backup.
46
+ rpc :DeleteBackup, ::Google::Cloud::Sql::V1::DeleteBackupRequest, ::Google::Cloud::Sql::V1::Operation
47
+ end
48
+
49
+ Stub = Service.rpc_stub_class
50
+ end
51
+ end
52
+ end
53
+ end
54
+ end
@@ -0,0 +1,34 @@
1
+ # frozen_string_literal: true
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # source: google/cloud/sql/v1/cloud_sql_connect.proto
4
+
5
+ require 'google/protobuf'
6
+
7
+ require 'google/api/annotations_pb'
8
+ require 'google/api/client_pb'
9
+ require 'google/api/field_behavior_pb'
10
+ require 'google/cloud/sql/v1/cloud_sql_resources_pb'
11
+ require 'google/protobuf/duration_pb'
12
+ require 'google/protobuf/timestamp_pb'
13
+
14
+
15
+ descriptor_data = "\n+google/cloud/sql/v1/cloud_sql_connect.proto\x12\x13google.cloud.sql.v1\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a-google/cloud/sql/v1/cloud_sql_resources.proto\x1a\x1egoogle/protobuf/duration.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"r\n\x19GetConnectSettingsRequest\x12\x10\n\x08instance\x18\x01 \x01(\t\x12\x0f\n\x07project\x18\x02 \x01(\t\x12\x32\n\tread_time\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x01\"\xf0\x08\n\x0f\x43onnectSettings\x12\x0c\n\x04kind\x18\x01 \x01(\t\x12\x34\n\x0eserver_ca_cert\x18\x02 \x01(\x0b\x32\x1c.google.cloud.sql.v1.SslCert\x12\x34\n\x0cip_addresses\x18\x03 \x03(\x0b\x32\x1e.google.cloud.sql.v1.IpMapping\x12\x0e\n\x06region\x18\x04 \x01(\t\x12\x41\n\x10\x64\x61tabase_version\x18\x1f \x01(\x0e\x32\'.google.cloud.sql.v1.SqlDatabaseVersion\x12\x39\n\x0c\x62\x61\x63kend_type\x18 \x01(\x0e\x32#.google.cloud.sql.v1.SqlBackendType\x12\x13\n\x0bpsc_enabled\x18! \x01(\x08\x12\x10\n\x08\x64ns_name\x18\" \x01(\t\x12\x43\n\x0eserver_ca_mode\x18# \x01(\x0e\x32+.google.cloud.sql.v1.ConnectSettings.CaMode\x12(\n custom_subject_alternative_names\x18% \x03(\t\x12;\n\tdns_names\x18& \x03(\x0b\x32#.google.cloud.sql.v1.DnsNameMappingB\x03\xe0\x41\x03\x12\x17\n\nnode_count\x18? \x01(\x05H\x00\x88\x01\x01\x12N\n\x05nodes\x18@ \x03(\x0b\x32:.google.cloud.sql.v1.ConnectSettings.ConnectPoolNodeConfigB\x03\xe0\x41\x03\x12]\n\x14mdx_protocol_support\x18\' \x03(\x0e\x32\x37.google.cloud.sql.v1.ConnectSettings.MdxProtocolSupportB\x06\xe0\x41\x03\xe0\x41\x01\x1a\xd9\x01\n\x15\x43onnectPoolNodeConfig\x12\x16\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x03H\x00\x88\x01\x01\x12\x39\n\x0cip_addresses\x18\x02 \x03(\x0b\x32\x1e.google.cloud.sql.v1.IpMappingB\x03\xe0\x41\x03\x12\x1a\n\x08\x64ns_name\x18\x03 \x01(\tB\x03\xe0\x41\x03H\x01\x88\x01\x01\x12;\n\tdns_names\x18\x04 \x03(\x0b\x32#.google.cloud.sql.v1.DnsNameMappingB\x03\xe0\x41\x03\x42\x07\n\x05_nameB\x0b\n\t_dns_name\"y\n\x06\x43\x61Mode\x12\x17\n\x13\x43\x41_MODE_UNSPECIFIED\x10\x00\x12\x1e\n\x1aGOOGLE_MANAGED_INTERNAL_CA\x10\x01\x12\x19\n\x15GOOGLE_MANAGED_CAS_CA\x10\x02\x12\x1b\n\x17\x43USTOMER_MANAGED_CAS_CA\x10\x03\"T\n\x12MdxProtocolSupport\x12$\n MDX_PROTOCOL_SUPPORT_UNSPECIFIED\x10\x00\x12\x18\n\x14\x43LIENT_PROTOCOL_TYPE\x10\x01\x42\r\n\x0b_node_count\"\xf6\x01\n\x1cGenerateEphemeralCertRequest\x12\x10\n\x08instance\x18\x01 \x01(\t\x12\x0f\n\x07project\x18\x02 \x01(\t\x12\x1e\n\npublic_key\x18\x03 \x01(\tR\npublic_key\x12\'\n\x0c\x61\x63\x63\x65ss_token\x18\x04 \x01(\tB\x03\xe0\x41\x01R\x0c\x61\x63\x63\x65ss_token\x12\x32\n\tread_time\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x01\x12\x36\n\x0evalid_duration\x18\x0c \x01(\x0b\x32\x19.google.protobuf.DurationB\x03\xe0\x41\x01\"U\n\x1dGenerateEphemeralCertResponse\x12\x34\n\x0e\x65phemeral_cert\x18\x01 \x01(\x0b\x32\x1c.google.cloud.sql.v1.SslCert2\x92\x04\n\x11SqlConnectService\x12\xaf\x01\n\x12GetConnectSettings\x12..google.cloud.sql.v1.GetConnectSettingsRequest\x1a$.google.cloud.sql.v1.ConnectSettings\"C\x82\xd3\xe4\x93\x02=\x12;/v1/projects/{project}/instances/{instance}/connectSettings\x12\xcc\x01\n\x15GenerateEphemeralCert\x12\x31.google.cloud.sql.v1.GenerateEphemeralCertRequest\x1a\x32.google.cloud.sql.v1.GenerateEphemeralCertResponse\"L\x82\xd3\xe4\x93\x02\x46\"A/v1/projects/{project}/instances/{instance}:generateEphemeralCert:\x01*\x1a|\xca\x41\x17sqladmin.googleapis.com\xd2\x41_https://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/sqlservice.adminB\\\n\x17\x63om.google.cloud.sql.v1B\x14\x43loudSqlConnectProtoP\x01Z)cloud.google.com/go/sql/apiv1/sqlpb;sqlpbb\x06proto3"
16
+
17
+ pool = ::Google::Protobuf::DescriptorPool.generated_pool
18
+ pool.add_serialized_file(descriptor_data)
19
+
20
+ module Google
21
+ module Cloud
22
+ module Sql
23
+ module V1
24
+ GetConnectSettingsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.sql.v1.GetConnectSettingsRequest").msgclass
25
+ ConnectSettings = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.sql.v1.ConnectSettings").msgclass
26
+ ConnectSettings::ConnectPoolNodeConfig = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.sql.v1.ConnectSettings.ConnectPoolNodeConfig").msgclass
27
+ ConnectSettings::CaMode = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.sql.v1.ConnectSettings.CaMode").enummodule
28
+ ConnectSettings::MdxProtocolSupport = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.sql.v1.ConnectSettings.MdxProtocolSupport").enummodule
29
+ GenerateEphemeralCertRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.sql.v1.GenerateEphemeralCertRequest").msgclass
30
+ GenerateEphemeralCertResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.sql.v1.GenerateEphemeralCertResponse").msgclass
31
+ end
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,50 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # Source: google/cloud/sql/v1/cloud_sql_connect.proto for package 'google.cloud.sql.v1'
3
+ # Original file comments:
4
+ # Copyright 2026 Google LLC
5
+ #
6
+ # Licensed under the Apache License, Version 2.0 (the "License");
7
+ # you may not use this file except in compliance with the License.
8
+ # You may obtain a copy of the License at
9
+ #
10
+ # http://www.apache.org/licenses/LICENSE-2.0
11
+ #
12
+ # Unless required by applicable law or agreed to in writing, software
13
+ # distributed under the License is distributed on an "AS IS" BASIS,
14
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
+ # See the License for the specific language governing permissions and
16
+ # limitations under the License.
17
+ #
18
+
19
+ require 'grpc'
20
+ require 'google/cloud/sql/v1/cloud_sql_connect_pb'
21
+
22
+ module Google
23
+ module Cloud
24
+ module Sql
25
+ module V1
26
+ module SqlConnectService
27
+ # Cloud SQL connect service.
28
+ class Service
29
+
30
+ include ::GRPC::GenericService
31
+
32
+ self.marshal_class_method = :encode
33
+ self.unmarshal_class_method = :decode
34
+ self.service_name = 'google.cloud.sql.v1.SqlConnectService'
35
+
36
+ # Retrieves connect settings about a Cloud SQL instance.
37
+ rpc :GetConnectSettings, ::Google::Cloud::Sql::V1::GetConnectSettingsRequest, ::Google::Cloud::Sql::V1::ConnectSettings
38
+ # Generates a short-lived X509 certificate containing the provided public key
39
+ # and signed by a private key specific to the target instance. Users may use
40
+ # the certificate to authenticate as themselves when connecting to the
41
+ # database.
42
+ rpc :GenerateEphemeralCert, ::Google::Cloud::Sql::V1::GenerateEphemeralCertRequest, ::Google::Cloud::Sql::V1::GenerateEphemeralCertResponse
43
+ end
44
+
45
+ Stub = Service.rpc_stub_class
46
+ end
47
+ end
48
+ end
49
+ end
50
+ end