google-cloud-backupdr-v1 1.12.0 → 1.13.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 (33) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +4 -6
  3. data/lib/google/cloud/backupdr/v1/appliedautoprotectionpolicy_pb.rb +30 -0
  4. data/lib/google/cloud/backupdr/v1/autoprotectionpolicy_pb.rb +40 -0
  5. data/lib/google/cloud/backupdr/v1/autoprotectionpolicybinding_pb.rb +33 -0
  6. data/lib/google/cloud/backupdr/v1/backupdr/client.rb +3484 -150
  7. data/lib/google/cloud/backupdr/v1/backupdr/paths.rb +139 -0
  8. data/lib/google/cloud/backupdr/v1/backupdr/rest/client.rb +3268 -137
  9. data/lib/google/cloud/backupdr/v1/backupdr/rest/service_stub.rb +1989 -209
  10. data/lib/google/cloud/backupdr/v1/backupdr_pb.rb +9 -1
  11. data/lib/google/cloud/backupdr/v1/backupdr_services_pb.rb +69 -0
  12. data/lib/google/cloud/backupdr/v1/backupplanassociation_pb.rb +1 -1
  13. data/lib/google/cloud/backupdr/v1/backupvault_pb.rb +3 -1
  14. data/lib/google/cloud/backupdr/v1/bindingmatchingresource_pb.rb +30 -0
  15. data/lib/google/cloud/backupdr/v1/restore_template_common_pb.rb +28 -0
  16. data/lib/google/cloud/backupdr/v1/restore_template_execution_pb.rb +45 -0
  17. data/lib/google/cloud/backupdr/v1/restore_template_pb.rb +40 -0
  18. data/lib/google/cloud/backupdr/v1/restore_verification_plan_association_pb.rb +36 -0
  19. data/lib/google/cloud/backupdr/v1/restore_verification_plan_pb.rb +34 -0
  20. data/lib/google/cloud/backupdr/v1/version.rb +1 -1
  21. data/proto_docs/google/cloud/backupdr/v1/appliedautoprotectionpolicy.rb +123 -0
  22. data/proto_docs/google/cloud/backupdr/v1/autoprotectionpolicy.rb +307 -0
  23. data/proto_docs/google/cloud/backupdr/v1/autoprotectionpolicybinding.rb +207 -0
  24. data/proto_docs/google/cloud/backupdr/v1/backupplanassociation.rb +13 -1
  25. data/proto_docs/google/cloud/backupdr/v1/backupvault.rb +37 -0
  26. data/proto_docs/google/cloud/backupdr/v1/bindingmatchingresource.rb +149 -0
  27. data/proto_docs/google/cloud/backupdr/v1/restore_template.rb +292 -0
  28. data/proto_docs/google/cloud/backupdr/v1/restore_template_common.rb +80 -0
  29. data/proto_docs/google/cloud/backupdr/v1/restore_template_execution.rb +399 -0
  30. data/proto_docs/google/cloud/backupdr/v1/restore_verification_plan.rb +270 -0
  31. data/proto_docs/google/cloud/backupdr/v1/restore_verification_plan_association.rb +264 -0
  32. data/proto_docs/google/protobuf/struct.rb +108 -0
  33. metadata +20 -1
@@ -0,0 +1,292 @@
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 BackupDR
23
+ module V1
24
+ # A `RestoreTemplate` encapsulates DR readiness configurations for validating
25
+ # backups.
26
+ # @!attribute [rw] name
27
+ # @return [::String]
28
+ # Identifier. The resource name of the RestoreTemplate.
29
+ # @!attribute [rw] description
30
+ # @return [::String]
31
+ # Optional. User-provided description of the restore template.
32
+ # @!attribute [r] create_time
33
+ # @return [::Google::Protobuf::Timestamp]
34
+ # Output only. The time when the restore template was created.
35
+ # @!attribute [r] update_time
36
+ # @return [::Google::Protobuf::Timestamp]
37
+ # Output only. The time when the restore template was last updated.
38
+ # @!attribute [rw] resource_type
39
+ # @return [::String]
40
+ # Required. Immutable. The specific type of the workload being restored.
41
+ # The format is "\\{service_name}/\\{resource_kind}", for example,
42
+ # "compute.googleapis.com/Instance".
43
+ # @!attribute [rw] labels
44
+ # @return [::Google::Protobuf::Map{::String => ::String}]
45
+ # Optional. User-defined labels.
46
+ # @!attribute [rw] backup_selection_config
47
+ # @return [::Google::Cloud::BackupDR::V1::BackupSelectionConfig]
48
+ # Required. Backup selection configuration.
49
+ # @!attribute [rw] pre_restore_config
50
+ # @return [::Google::Cloud::BackupDR::V1::PreRestoreConfig]
51
+ # Optional. Pre-restore configuration.
52
+ # @!attribute [rw] post_restore_config
53
+ # @return [::Google::Cloud::BackupDR::V1::PostRestoreConfig]
54
+ # Optional. Post-restore configuration.
55
+ # @!attribute [rw] verification_config
56
+ # @return [::Google::Cloud::BackupDR::V1::VerificationConfig]
57
+ # Optional. Verification configuration.
58
+ # @!attribute [rw] restore_properties
59
+ # @return [::Google::Protobuf::Struct]
60
+ # Required. Defines target environments where the resource will be restored.
61
+ #
62
+ # The target resource name in `restore_properties` supports the
63
+ # `{EXECUTION_ID}` token to dynamically generate unique resource names for
64
+ # each execution. During restore execution, every occurrence of
65
+ # `{EXECUTION_ID}` in the target resource name is replaced with the
66
+ # 8-character `RestoreTemplateExecution` ID (for example,
67
+ # `"restored-resource-{EXECUTION_ID}"` or
68
+ # `"restored-{EXECUTION_ID}-resource"` resolves to
69
+ # `"restored-resource-5d437b06"` or `"restored-5d437b06-resource"`).
70
+ # @!attribute [r] state
71
+ # @return [::Google::Cloud::BackupDR::V1::RestoreTemplate::State]
72
+ # Output only. The state of the restore template.
73
+ # @!attribute [r] execution_summary
74
+ # @return [::Google::Cloud::BackupDR::V1::ExecutionSummary]
75
+ # Output only. Summary of the last execution.
76
+ # @!attribute [rw] etag
77
+ # @return [::String]
78
+ # Optional. Etag for concurrency control.
79
+ class RestoreTemplate
80
+ include ::Google::Protobuf::MessageExts
81
+ extend ::Google::Protobuf::MessageExts::ClassMethods
82
+
83
+ # @!attribute [rw] key
84
+ # @return [::String]
85
+ # @!attribute [rw] value
86
+ # @return [::String]
87
+ class LabelsEntry
88
+ include ::Google::Protobuf::MessageExts
89
+ extend ::Google::Protobuf::MessageExts::ClassMethods
90
+ end
91
+
92
+ # The state of the RestoreTemplate.
93
+ module State
94
+ # State not specified.
95
+ STATE_UNSPECIFIED = 0
96
+
97
+ # The template is being created.
98
+ CREATING = 1
99
+
100
+ # The template is active and ready to use.
101
+ ACTIVE = 2
102
+
103
+ # The template is being updated.
104
+ UPDATING = 3
105
+
106
+ # The template is being deleted.
107
+ DELETING = 4
108
+ end
109
+ end
110
+
111
+ # Summary of the last execution.
112
+ # @!attribute [r] last_execution
113
+ # @return [::String]
114
+ # Output only. The resource name of the last execution.
115
+ # Format:
116
+ # `projects/{project}/locations/{location}/restoreTemplates/{restore_template}/executions/{execution}`
117
+ # @!attribute [r] last_execution_state
118
+ # @return [::Google::Cloud::BackupDR::V1::RestoreTemplateExecution::ExecutionState]
119
+ # Output only. The state of the last execution.
120
+ class ExecutionSummary
121
+ include ::Google::Protobuf::MessageExts
122
+ extend ::Google::Protobuf::MessageExts::ClassMethods
123
+ end
124
+
125
+ # Request message for creating a RestoreTemplate instance.
126
+ # @!attribute [rw] parent
127
+ # @return [::String]
128
+ # Required. The restore template project and location in the format
129
+ # 'projects/\\{project_id}/locations/\\{location}'.
130
+ # @!attribute [rw] restore_template_id
131
+ # @return [::String]
132
+ # Required. The ID of the restore template to create. The ID must be
133
+ # unique for the specified project and location.
134
+ # @!attribute [rw] restore_template
135
+ # @return [::Google::Cloud::BackupDR::V1::RestoreTemplate]
136
+ # Required. A RestoreTemplate resource.
137
+ # @!attribute [rw] request_id
138
+ # @return [::String]
139
+ # Optional. An optional request ID to identify requests. Specify a unique
140
+ # request ID so that if you must retry your request, the server will know to
141
+ # ignore the request if it has already been completed.
142
+ #
143
+ # The request ID must be a valid UUID with the exception that zero UUID is
144
+ # not supported (00000000-0000-0000-0000-000000000000).
145
+ class CreateRestoreTemplateRequest
146
+ include ::Google::Protobuf::MessageExts
147
+ extend ::Google::Protobuf::MessageExts::ClassMethods
148
+ end
149
+
150
+ # Request message for getting a RestoreTemplate instance.
151
+ # @!attribute [rw] name
152
+ # @return [::String]
153
+ # Required. The name of the restore template to retrieve.
154
+ # Format:
155
+ # 'projects/\\{project_id}/locations/\\{location}/restoreTemplates/\\{restore_template_id}'
156
+ class GetRestoreTemplateRequest
157
+ include ::Google::Protobuf::MessageExts
158
+ extend ::Google::Protobuf::MessageExts::ClassMethods
159
+ end
160
+
161
+ # Request message for updating a RestoreTemplate instance.
162
+ # @!attribute [rw] update_mask
163
+ # @return [::Google::Protobuf::FieldMask]
164
+ # Optional. The list of fields to update.
165
+ # Field mask is used to specify the fields to be overwritten in the
166
+ # RestoreTemplate resource by the update.
167
+ # The fields specified in the update_mask are relative to the resource, not
168
+ # the full request. A field will be overwritten if it is in the mask.
169
+ # @!attribute [rw] restore_template
170
+ # @return [::Google::Cloud::BackupDR::V1::RestoreTemplate]
171
+ # Required. The restore template to update.
172
+ # @!attribute [rw] request_id
173
+ # @return [::String]
174
+ # Optional. An optional request ID to identify requests. Specify a unique
175
+ # request ID so that if you must retry your request, the server will know to
176
+ # ignore the request if it has already been completed.
177
+ #
178
+ # The request ID must be a valid UUID with the exception that zero UUID is
179
+ # not supported (00000000-0000-0000-0000-000000000000).
180
+ # @!attribute [rw] validate_only
181
+ # @return [::Boolean]
182
+ # Optional. Only validate the request, but do not perform mutations.
183
+ # The default is 'false'.
184
+ class UpdateRestoreTemplateRequest
185
+ include ::Google::Protobuf::MessageExts
186
+ extend ::Google::Protobuf::MessageExts::ClassMethods
187
+ end
188
+
189
+ # Request message for deleting a RestoreTemplate instance.
190
+ # @!attribute [rw] name
191
+ # @return [::String]
192
+ # Required. The name of the restore template to delete.
193
+ # Format:
194
+ # 'projects/\\{project_id}/locations/\\{location}/restoreTemplates/\\{restore_template_id}'
195
+ # @!attribute [rw] request_id
196
+ # @return [::String]
197
+ # Optional. An optional request ID to identify requests. Specify a unique
198
+ # request ID so that if you must retry your request, the server will know to
199
+ # ignore the request if it has already been completed.
200
+ #
201
+ # The request ID must be a valid UUID with the exception that zero UUID is
202
+ # not supported (00000000-0000-0000-0000-000000000000).
203
+ # @!attribute [rw] force
204
+ # @return [::Boolean]
205
+ # Optional. If set to true, any child RestoreTemplateExecutions will also be
206
+ # deleted. If false and the RestoreTemplate has any child executions, the
207
+ # request will fail.
208
+ class DeleteRestoreTemplateRequest
209
+ include ::Google::Protobuf::MessageExts
210
+ extend ::Google::Protobuf::MessageExts::ClassMethods
211
+ end
212
+
213
+ # Request message for running a RestoreTemplate.
214
+ # @!attribute [rw] name
215
+ # @return [::String]
216
+ # Required. The name of the restore template to run.
217
+ # Format:
218
+ # 'projects/\\{project_id}/locations/\\{location}/restoreTemplates/\\{restore_template_id}'
219
+ # @!attribute [rw] backup
220
+ # @return [::String]
221
+ # Optional. The resource name of the Backup to restore from.
222
+ # If not specified, the latest backup matching the backup selection
223
+ # configuration in the RestoreTemplate will be used.
224
+ # Format:
225
+ # 'projects/\\{project}/locations/\\{location}/backupVaults/\\{backup_vault}/dataSources/\\{data_source}/backups/\\{backup}'
226
+ # @!attribute [rw] request_id
227
+ # @return [::String]
228
+ # Optional. An optional request ID to identify requests. Specify a unique
229
+ # request ID so that if you must retry your request, the server will know to
230
+ # ignore the request if it has already been completed.
231
+ #
232
+ # The request ID must be a valid UUID with the exception that zero UUID is
233
+ # not supported (00000000-0000-0000-0000-000000000000).
234
+ class RunRestoreTemplateRequest
235
+ include ::Google::Protobuf::MessageExts
236
+ extend ::Google::Protobuf::MessageExts::ClassMethods
237
+ end
238
+
239
+ # Response message for RunRestoreTemplate.
240
+ # @!attribute [r] restore_template_execution
241
+ # @return [::String]
242
+ # Output only. The resource name of the initiated RestoreTemplateExecution.
243
+ # Format:
244
+ # `projects/{project}/locations/{location}/restoreTemplates/{restore_template}/executions/{execution}`
245
+ class RunRestoreTemplateResponse
246
+ include ::Google::Protobuf::MessageExts
247
+ extend ::Google::Protobuf::MessageExts::ClassMethods
248
+ end
249
+
250
+ # Request message for listing RestoreTemplates.
251
+ # @!attribute [rw] parent
252
+ # @return [::String]
253
+ # Required. The project and location from which to list the restore
254
+ # templates.
255
+ # Format: `projects/{project}/locations/{location}`.
256
+ # @!attribute [rw] page_size
257
+ # @return [::Integer]
258
+ # Optional. The maximum number of items to return.
259
+ # @!attribute [rw] page_token
260
+ # @return [::String]
261
+ # Optional. A page token, received from a previous `ListRestoreTemplates`
262
+ # call.
263
+ # @!attribute [rw] filter
264
+ # @return [::String]
265
+ # Optional. Field match expression used to filter the results.
266
+ # @!attribute [rw] order_by
267
+ # @return [::String]
268
+ # Optional. Field by which to sort the results.
269
+ class ListRestoreTemplatesRequest
270
+ include ::Google::Protobuf::MessageExts
271
+ extend ::Google::Protobuf::MessageExts::ClassMethods
272
+ end
273
+
274
+ # Response message for listing RestoreTemplates.
275
+ # @!attribute [rw] restore_templates
276
+ # @return [::Array<::Google::Cloud::BackupDR::V1::RestoreTemplate>]
277
+ # The list of RestoreTemplates.
278
+ # @!attribute [rw] next_page_token
279
+ # @return [::String]
280
+ # A token which may be sent as `page_token` in a subsequent
281
+ # `ListRestoreTemplates` call.
282
+ # @!attribute [rw] unreachable
283
+ # @return [::Array<::String>]
284
+ # Locations that could not be reached.
285
+ class ListRestoreTemplatesResponse
286
+ include ::Google::Protobuf::MessageExts
287
+ extend ::Google::Protobuf::MessageExts::ClassMethods
288
+ end
289
+ end
290
+ end
291
+ end
292
+ end
@@ -0,0 +1,80 @@
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 BackupDR
23
+ module V1
24
+ # Configuration for selecting a backup.
25
+ # @!attribute [rw] data_source
26
+ # @return [::String]
27
+ # Required. Immutable. The fully qualified URI of the backupdr data source.
28
+ class BackupSelectionConfig
29
+ include ::Google::Protobuf::MessageExts
30
+ extend ::Google::Protobuf::MessageExts::ClassMethods
31
+ end
32
+
33
+ # Configuration for Pre-Restore.
34
+ # @!attribute [rw] timeout
35
+ # @return [::Google::Protobuf::Duration]
36
+ # Optional. The `timeout` for this phase.
37
+ # If set, the `timeout` must be positive and less than or equal to 24 hours
38
+ # (86400s).
39
+ # @!attribute [rw] cloud_run_job
40
+ # @return [::String]
41
+ # Cloud Run job action to execute.
42
+ # Format: `projects/{project}/locations/{location}/jobs/{job}`
43
+ class PreRestoreConfig
44
+ include ::Google::Protobuf::MessageExts
45
+ extend ::Google::Protobuf::MessageExts::ClassMethods
46
+ end
47
+
48
+ # Configuration for Post-Restore.
49
+ # @!attribute [rw] timeout
50
+ # @return [::Google::Protobuf::Duration]
51
+ # Optional. The `timeout` for this phase.
52
+ # If set, the `timeout` must be positive and less than or equal to 24 hours
53
+ # (86400s).
54
+ # @!attribute [rw] cloud_run_job
55
+ # @return [::String]
56
+ # Cloud Run job action to execute.
57
+ # Format: `projects/{project}/locations/{location}/jobs/{job}`
58
+ class PostRestoreConfig
59
+ include ::Google::Protobuf::MessageExts
60
+ extend ::Google::Protobuf::MessageExts::ClassMethods
61
+ end
62
+
63
+ # Configuration for Verification.
64
+ # @!attribute [rw] timeout
65
+ # @return [::Google::Protobuf::Duration]
66
+ # Optional. The `timeout` for this phase.
67
+ # If set, the `timeout` must be positive and less than or equal to 24 hours
68
+ # (86400s).
69
+ # @!attribute [rw] cloud_run_job
70
+ # @return [::String]
71
+ # Cloud Run job action to execute.
72
+ # Format: `projects/{project}/locations/{location}/jobs/{job}`
73
+ class VerificationConfig
74
+ include ::Google::Protobuf::MessageExts
75
+ extend ::Google::Protobuf::MessageExts::ClassMethods
76
+ end
77
+ end
78
+ end
79
+ end
80
+ end