google-cloud-sql-v1beta4 0.2.0 → 0.3.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 (35) hide show
  1. checksums.yaml +4 -4
  2. data/lib/google/cloud/sql/v1beta4/blue_green_deployments_service/client.rb +906 -0
  3. data/lib/google/cloud/sql/v1beta4/blue_green_deployments_service/credentials.rb +48 -0
  4. data/lib/google/cloud/sql/v1beta4/blue_green_deployments_service/paths.rb +69 -0
  5. data/lib/google/cloud/sql/v1beta4/blue_green_deployments_service/rest/client.rb +828 -0
  6. data/lib/google/cloud/sql/v1beta4/blue_green_deployments_service/rest/service_stub.rb +388 -0
  7. data/lib/google/cloud/sql/v1beta4/blue_green_deployments_service/rest.rb +52 -0
  8. data/lib/google/cloud/sql/v1beta4/blue_green_deployments_service.rb +55 -0
  9. data/lib/google/cloud/sql/v1beta4/cloud_sql_blue_green_deployments_pb.rb +47 -0
  10. data/lib/google/cloud/sql/v1beta4/cloud_sql_blue_green_deployments_services_pb.rb +65 -0
  11. data/lib/google/cloud/sql/v1beta4/cloud_sql_resources_pb.rb +9 -1
  12. data/lib/google/cloud/sql/v1beta4/cloud_sql_workload_captures_pb.rb +35 -0
  13. data/lib/google/cloud/sql/v1beta4/cloud_sql_workload_captures_services_pb.rb +60 -0
  14. data/lib/google/cloud/sql/v1beta4/rest.rb +2 -0
  15. data/lib/google/cloud/sql/v1beta4/sql_backup_runs_service/client.rb +2 -0
  16. data/lib/google/cloud/sql/v1beta4/sql_backup_runs_service/paths.rb +77 -0
  17. data/lib/google/cloud/sql/v1beta4/sql_backup_runs_service/rest/client.rb +2 -0
  18. data/lib/google/cloud/sql/v1beta4/sql_backup_runs_service/rest.rb +1 -0
  19. data/lib/google/cloud/sql/v1beta4/sql_backup_runs_service.rb +1 -0
  20. data/lib/google/cloud/sql/v1beta4/sql_backups_service/paths.rb +63 -0
  21. data/lib/google/cloud/sql/v1beta4/sql_instances_service/paths.rb +63 -0
  22. data/lib/google/cloud/sql/v1beta4/sql_workload_captures_service/client.rb +905 -0
  23. data/lib/google/cloud/sql/v1beta4/sql_workload_captures_service/credentials.rb +48 -0
  24. data/lib/google/cloud/sql/v1beta4/sql_workload_captures_service/rest/client.rb +809 -0
  25. data/lib/google/cloud/sql/v1beta4/sql_workload_captures_service/rest/service_stub.rb +396 -0
  26. data/lib/google/cloud/sql/v1beta4/sql_workload_captures_service/rest.rb +51 -0
  27. data/lib/google/cloud/sql/v1beta4/sql_workload_captures_service.rb +54 -0
  28. data/lib/google/cloud/sql/v1beta4/version.rb +1 -1
  29. data/lib/google/cloud/sql/v1beta4.rb +2 -0
  30. data/proto_docs/google/cloud/sql/v1beta4/cloud_sql.rb +1 -1
  31. data/proto_docs/google/cloud/sql/v1beta4/cloud_sql_blue_green_deployments.rb +428 -0
  32. data/proto_docs/google/cloud/sql/v1beta4/cloud_sql_resources.rb +197 -2
  33. data/proto_docs/google/cloud/sql/v1beta4/cloud_sql_users.rb +4 -4
  34. data/proto_docs/google/cloud/sql/v1beta4/cloud_sql_workload_captures.rb +169 -0
  35. metadata +21 -1
@@ -0,0 +1,428 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2026 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Cloud
22
+ module Sql
23
+ module V1beta4
24
+ # A `BlueGreenDeployment` resource represents a Cloud SQL blue-green deployment
25
+ # setup. It orchestrates the lifecycle of creating a synchronized "green"
26
+ # environment from a "blue" production environment, performing updates, and
27
+ # managing the switchover process to minimize downtime.
28
+ # @!attribute [r] name
29
+ # @return [::String]
30
+ # Output only. Identifier. The full resource name of the deployment.
31
+ # Format:
32
+ # projects/\\{project}/locations/\\{location}/blueGreenDeployments/\\{deployment_id}
33
+ # @!attribute [rw] description
34
+ # @return [::String]
35
+ # Optional. User-provided description for the deployment.
36
+ # @!attribute [r] create_time
37
+ # @return [::Google::Protobuf::Timestamp]
38
+ # Output only. The time when the deployment was created.
39
+ # @!attribute [r] state
40
+ # @return [::Google::Cloud::Sql::V1beta4::BlueGreenDeployment::State]
41
+ # Output only. The current state of the blue-green deployment.
42
+ # @!attribute [rw] source_instance
43
+ # @return [::String]
44
+ # Required. Immutable. The instance ID of the source instance (the "blue"
45
+ # instance). The value for this field does not include the project ID, for
46
+ # example, `my-instance-id`. This field is immutable.
47
+ # @!attribute [rw] target_config
48
+ # @deprecated This field is deprecated and may be removed in the next major version update.
49
+ # @return [::Google::Cloud::Sql::V1beta4::BlueGreenDeployment::TargetConfig]
50
+ # Optional. Immutable. Deprecated: Use requested_config instead.
51
+ # The configuration intended for the target instance(s) when the deployment
52
+ # was created. This field is immutable.
53
+ # @!attribute [r] switchover_target_instance
54
+ # @return [::String]
55
+ # Output only. Details about the primary target instance (the "Green"
56
+ # instance) that will be promoted during switchover.
57
+ # @!attribute [r] paired_nodes
58
+ # @deprecated This field is deprecated and may be removed in the next major version update.
59
+ # @return [::Array<::Google::Cloud::Sql::V1beta4::BlueGreenDeployment::SourceTargetPairedNode>]
60
+ # Output only. Deprecated: Use deployment_mappings instead.
61
+ # Output only. A list representing the pairs of source and target instances
62
+ # in the deployment.
63
+ # @!attribute [r] error_detail
64
+ # @return [::String]
65
+ # Output only. Provides an error message with details on why switchover is
66
+ # not possible.
67
+ # @!attribute [r] deployment_mappings
68
+ # @return [::Array<::Google::Cloud::Sql::V1beta4::BlueGreenDeployment::SourceTargetPairedNode>]
69
+ # Output only. A list representing the pairs of source and target instances
70
+ # in the deployment.
71
+ # @!attribute [r] deployment_tasks
72
+ # @return [::Google::Cloud::Sql::V1beta4::BlueGreenDeployment::DeploymentTasks]
73
+ # Output only. Combined list of tasks for all paired nodes.
74
+ # @!attribute [rw] requested_config
75
+ # @return [::Google::Cloud::Sql::V1beta4::BlueGreenDeployment::RequestedConfig]
76
+ # Optional. Immutable. Optional on create, and immutable. The configuration
77
+ # intended for the target instance(s) when the deployment was created.
78
+ class BlueGreenDeployment
79
+ include ::Google::Protobuf::MessageExts
80
+ extend ::Google::Protobuf::MessageExts::ClassMethods
81
+
82
+ # Deprecated: Use RequestedConfig instead.
83
+ # Configuration specified by the user at creation time for the target (Green)
84
+ # instance.
85
+ # @deprecated This message is deprecated and may be removed in the next major version update.
86
+ # @!attribute [rw] database_version
87
+ # @return [::String]
88
+ # Optional. The target database major version for the upgrade.
89
+ class TargetConfig
90
+ include ::Google::Protobuf::MessageExts
91
+ extend ::Google::Protobuf::MessageExts::ClassMethods
92
+ end
93
+
94
+ # Combined list of tasks for all paired nodes in the deployment.
95
+ # @!attribute [r] task
96
+ # @return [::Array<::Google::Cloud::Sql::V1beta4::BlueGreenDeployment::SourceTargetPairedNode::DeploymentTask>]
97
+ # Output only. Tasks performed or being performed on the paired nodes
98
+ # of the deployment at a consolidated level.
99
+ class DeploymentTasks
100
+ include ::Google::Protobuf::MessageExts
101
+ extend ::Google::Protobuf::MessageExts::ClassMethods
102
+ end
103
+
104
+ # Configuration specified by the user at creation time for the target (Green)
105
+ # instance.
106
+ # @!attribute [rw] database_version
107
+ # @return [::String]
108
+ # Optional. The target database major version for the upgrade.
109
+ class RequestedConfig
110
+ include ::Google::Protobuf::MessageExts
111
+ extend ::Google::Protobuf::MessageExts::ClassMethods
112
+ end
113
+
114
+ # Represents a pairing of a source instance node and a target instance node.
115
+ # @!attribute [r] source
116
+ # @return [::Google::Cloud::Sql::V1beta4::BlueGreenDeployment::SourceTargetPairedNode::NodeInfo]
117
+ # Output only. Resource name of the source instance in this pair.
118
+ # @!attribute [r] target
119
+ # @return [::Google::Cloud::Sql::V1beta4::BlueGreenDeployment::SourceTargetPairedNode::NodeInfo]
120
+ # Output only. Details of the corresponding target instance in this pair.
121
+ # @!attribute [r] state
122
+ # @return [::Google::Cloud::Sql::V1beta4::BlueGreenDeployment::SourceTargetPairedNode::State]
123
+ # Output only. The current state of this specific source-target pair.
124
+ # @!attribute [r] currently_serving_traffic
125
+ # @deprecated This field is deprecated and may be removed in the next major version update.
126
+ # @return [::Google::Cloud::Sql::V1beta4::BlueGreenDeployment::SourceTargetPairedNode::CurrentlyServingTraffic]
127
+ # Output only. Deprecated: Indicates which instance (SOURCE or TARGET) in
128
+ # the pair is currently live. Used for internal implementation and
129
+ # deprecated for external use.
130
+ # @!attribute [r] tasks
131
+ # @return [::Array<::Google::Cloud::Sql::V1beta4::BlueGreenDeployment::SourceTargetPairedNode::DeploymentTask>]
132
+ # Output only. Tasks performed or being performed on the target instance of
133
+ # this pair.
134
+ # @!attribute [r] diffs
135
+ # @return [::Array<::Google::Cloud::Sql::V1beta4::BlueGreenDeployment::SourceTargetPairedNode::ConfigDiff>]
136
+ # Output only. Describes the list of differences for this pair.
137
+ class SourceTargetPairedNode
138
+ include ::Google::Protobuf::MessageExts
139
+ extend ::Google::Protobuf::MessageExts::ClassMethods
140
+
141
+ # Details about an instance within the deployment.
142
+ # @!attribute [r] instance
143
+ # @return [::String]
144
+ # Output only. The full resource name of the instance.
145
+ # Format: projects/\\{project}/instances/\\{instance}
146
+ # @!attribute [r] connection
147
+ # @return [::String]
148
+ # Output only. The instance connection name.
149
+ # @!attribute [r] dns
150
+ # @return [::String]
151
+ # Output only. The unique DNS name for this instance.
152
+ # @!attribute [r] ip_mappings
153
+ # @return [::Array<::Google::Cloud::Sql::V1beta4::IpMapping>]
154
+ # Output only. The list of IP addresses for this instance.
155
+ class NodeInfo
156
+ include ::Google::Protobuf::MessageExts
157
+ extend ::Google::Protobuf::MessageExts::ClassMethods
158
+ end
159
+
160
+ # Represents a task executed as part of the deployment on a target
161
+ # instance.
162
+ # @!attribute [r] type
163
+ # @return [::Google::Cloud::Sql::V1beta4::BlueGreenDeployment::SourceTargetPairedNode::DeploymentTask::Type]
164
+ # Output only. The type of the task.
165
+ # @!attribute [r] state
166
+ # @return [::Google::Cloud::Sql::V1beta4::BlueGreenDeployment::SourceTargetPairedNode::DeploymentTask::State]
167
+ # Output only. The current state of the task.
168
+ # @!attribute [r] start_time
169
+ # @return [::Google::Protobuf::Timestamp]
170
+ # Output only. Task start time.
171
+ # @!attribute [r] end_time
172
+ # @return [::Google::Protobuf::Timestamp]
173
+ # Output only. Task end time (if completed).
174
+ # @!attribute [r] error_message
175
+ # @return [::String]
176
+ # Output only. Optional Error details if the task state is FAILED.
177
+ class DeploymentTask
178
+ include ::Google::Protobuf::MessageExts
179
+ extend ::Google::Protobuf::MessageExts::ClassMethods
180
+
181
+ # The type of the task.
182
+ # This enum is not frozen, and new values may be added in the future.
183
+ module Type
184
+ # The default value. This value is used if the type is omitted.
185
+ TYPE_UNSPECIFIED = 0
186
+
187
+ # Creating target instance.
188
+ PROVISION = 1
189
+
190
+ # e.g., Major Version Upgrade on Target.
191
+ UPGRADE = 2
192
+
193
+ # Promoting Target, Demoting Source for this pair.
194
+ SWITCHOVER = 3
195
+
196
+ # The task is to delete deployment.
197
+ DELETE = 4
198
+
199
+ # Post-switchover operations, including cleaning up resources of the
200
+ # old instance, taking final backups, and updating metadata.
201
+ POST_SWITCHOVER_OPERATIONS = 5
202
+ end
203
+
204
+ # The state of the task.
205
+ # This enum is not frozen, and new values may be added in the future.
206
+ module State
207
+ # The state of the task is unknown.
208
+ STATE_UNSPECIFIED = 0
209
+
210
+ # The task is pending.
211
+ PENDING = 1
212
+
213
+ # The task is running.
214
+ RUNNING = 2
215
+
216
+ # The task has succeeded.
217
+ SUCCEEDED = 3
218
+
219
+ # The task has failed.
220
+ FAILED = 4
221
+ end
222
+ end
223
+
224
+ # Represents a specific configuration difference between Blue and Green
225
+ # instances.
226
+ # @!attribute [r] field
227
+ # @return [::String]
228
+ # Output only. The name of the field that differs, fully-qualified.
229
+ # Example: settings.tier
230
+ # @!attribute [r] source_value
231
+ # @return [::String]
232
+ # Output only. The value on the source instance.
233
+ # @!attribute [r] target_value
234
+ # @return [::String]
235
+ # Output only. The value on the target instance.
236
+ class ConfigDiff
237
+ include ::Google::Protobuf::MessageExts
238
+ extend ::Google::Protobuf::MessageExts::ClassMethods
239
+ end
240
+
241
+ # The state of a pair of source and target instances in deployment (paired
242
+ # node).
243
+ module State
244
+ # The state of the paired node is unknown.
245
+ STATE_UNSPECIFIED = 0
246
+
247
+ # The paired node is being provisioned.
248
+ PROVISIONING = 1
249
+
250
+ # The paired node is provisioned.
251
+ PROVISIONED = 2
252
+
253
+ # The paired node is upgrading.
254
+ UPGRADING = 3
255
+
256
+ # The paired node is upgraded.
257
+ UPGRADED = 4
258
+
259
+ # Upgrade failed on the paired node.
260
+ UPGRADE_FAILED = 5
261
+
262
+ # Switchover is in progress.
263
+ SWITCHOVER_IN_PROGRESS = 6
264
+
265
+ # Switchover failed on the paired node.
266
+ SWITCHOVER_FAILED = 7
267
+
268
+ # Switchover completed successfully.
269
+ SWITCHOVER_SUCCEEDED = 8
270
+
271
+ # The paired node is being deleted.
272
+ DELETING = 11
273
+ end
274
+
275
+ # The instance currently serving traffic.
276
+ module CurrentlyServingTraffic
277
+ # The instance serving traffic is unknown.
278
+ CURRENTLY_SERVING_TRAFFIC_UNSPECIFIED = 0
279
+
280
+ # The source instance is serving traffic.
281
+ SOURCE = 1
282
+
283
+ # The target instance is serving traffic.
284
+ TARGET = 2
285
+ end
286
+ end
287
+
288
+ # The state of the blue-green deployment.
289
+ # This enum is not frozen, and new values may be added in the future.
290
+ module State
291
+ # The state of the deployment is unknown.
292
+ STATE_UNSPECIFIED = 0
293
+
294
+ # The deployment is being provisioned.
295
+ PROVISIONING = 1
296
+
297
+ # The deployment is ready for switchover.
298
+ SWITCHOVER_READY = 2
299
+
300
+ # The deployment is not ready for switchover.
301
+ SWITCHOVER_NOT_READY = 3
302
+
303
+ # The deployment is in the process of switching over.
304
+ SWITCHOVER_IN_PROGRESS = 4
305
+
306
+ # The deployment has completed switchover.
307
+ SWITCHOVER_COMPLETED = 5
308
+
309
+ # The deployment is being deleted.
310
+ DELETING = 6
311
+ end
312
+ end
313
+
314
+ # The request message for creating a `BlueGreenDeployment` resource.
315
+ # @!attribute [rw] parent
316
+ # @return [::String]
317
+ # Required. The parent resource where this blue-green deployment will be
318
+ # created. Format: projects/\\{project}/locations/\\{location}
319
+ # @!attribute [rw] blue_green_deployment_id
320
+ # @return [::String]
321
+ # Required. The ID to use for the blue-green deployment, which will become
322
+ # the final component of the deployment's resource name.
323
+ # @!attribute [rw] blue_green_deployment
324
+ # @return [::Google::Cloud::Sql::V1beta4::BlueGreenDeployment]
325
+ # Required. The `BlueGreenDeployment` resource to create.
326
+ class CreateBlueGreenDeploymentRequest
327
+ include ::Google::Protobuf::MessageExts
328
+ extend ::Google::Protobuf::MessageExts::ClassMethods
329
+ end
330
+
331
+ # The request message for getting a `BlueGreenDeployment` resource.
332
+ # @!attribute [rw] name
333
+ # @return [::String]
334
+ # Required. The name of the blue-green deployment to retrieve.
335
+ # Format:
336
+ # projects/\\{project}/locations/\\{location}/blueGreenDeployments/\\{blue_green_deployment}
337
+ # @!attribute [rw] view
338
+ # @return [::Google::Cloud::Sql::V1beta4::GetBlueGreenDeploymentRequest::BlueGreenDeploymentView]
339
+ # Optional. Specifies whether to return the basic or detailed view of the
340
+ # resource in the response.
341
+ class GetBlueGreenDeploymentRequest
342
+ include ::Google::Protobuf::MessageExts
343
+ extend ::Google::Protobuf::MessageExts::ClassMethods
344
+
345
+ # The view of a `BlueGreenDeployment` resource.
346
+ module BlueGreenDeploymentView
347
+ # Blue-green deployment view enumeration. This allows the caller to specify
348
+ # what view they query. If unspecified
349
+ # (BLUE_GREEN_DEPLOYMENT_VIEW_UNSPECIFIED), the behavior is the same as
350
+ # BASIC.
351
+ BLUE_GREEN_DEPLOYMENT_VIEW_UNSPECIFIED = 0
352
+
353
+ # Includes basic metadata about the blue-green deployment.
354
+ # `BASIC` is the default view.
355
+ BASIC = 1
356
+
357
+ # Includes basic metadata and configuration differences between source and
358
+ # target instances (`database_version`, `tier`, `edition`,
359
+ # `availability_type`, `data_disk_size_gb`, and `data_disk_type`).
360
+ DETAILED = 2
361
+ end
362
+ end
363
+
364
+ # The request message for listing blue-green deployment resources.
365
+ # @!attribute [rw] parent
366
+ # @return [::String]
367
+ # Required. The parent resource whose blue-green deployments are to be
368
+ # listed. Format: projects/\\{project}/locations/\\{location}
369
+ # @!attribute [rw] page_size
370
+ # @return [::Integer]
371
+ # Optional. The maximum number of deployments to return.
372
+ # @!attribute [rw] page_token
373
+ # @return [::String]
374
+ # Optional. A page token, received from a previous `ListBlueGreenDeployments`
375
+ # call. Provide this to retrieve the subsequent page.
376
+ # @!attribute [rw] filter
377
+ # @return [::String]
378
+ # Optional. A filter expression that filters the results.
379
+ # @!attribute [rw] order_by
380
+ # @return [::String]
381
+ # Optional. A comma-separated list of fields to order the results by.
382
+ class ListBlueGreenDeploymentsRequest
383
+ include ::Google::Protobuf::MessageExts
384
+ extend ::Google::Protobuf::MessageExts::ClassMethods
385
+ end
386
+
387
+ # Request message for switching over a `BlueGreenDeployment` resource.
388
+ # @!attribute [rw] name
389
+ # @return [::String]
390
+ # Required. The name of the blue-green deployment to switch over.
391
+ # Format:
392
+ # projects/\\{project}/locations/\\{location}/blueGreenDeployments/\\{blue_green_deployment}
393
+ class SwitchoverBlueGreenDeploymentRequest
394
+ include ::Google::Protobuf::MessageExts
395
+ extend ::Google::Protobuf::MessageExts::ClassMethods
396
+ end
397
+
398
+ # Request message for deleting a `BlueGreenDeployment` resource.
399
+ # @!attribute [rw] name
400
+ # @return [::String]
401
+ # Required. The name of the blue-green deployment to delete.
402
+ # Format:
403
+ # projects/\\{project}/locations/\\{location}/blueGreenDeployments/\\{blue_green_deployment}
404
+ # @!attribute [rw] delete_old_source
405
+ # @return [::Boolean]
406
+ # Optional. If set to true, and the switchover is complete, this deletes the
407
+ # old source instance along with the deployment.
408
+ class DeleteBlueGreenDeploymentRequest
409
+ include ::Google::Protobuf::MessageExts
410
+ extend ::Google::Protobuf::MessageExts::ClassMethods
411
+ end
412
+
413
+ # The response message for listing blue-green deployment resources.
414
+ # @!attribute [rw] blue_green_deployments
415
+ # @return [::Array<::Google::Cloud::Sql::V1beta4::BlueGreenDeployment>]
416
+ # The list of blue-green deployment resources.
417
+ # @!attribute [rw] next_page_token
418
+ # @return [::String]
419
+ # A token to retrieve the next page of results, or empty if there are no
420
+ # more results.
421
+ class ListBlueGreenDeploymentsResponse
422
+ include ::Google::Protobuf::MessageExts
423
+ extend ::Google::Protobuf::MessageExts::ClassMethods
424
+ end
425
+ end
426
+ end
427
+ end
428
+ end