google-cloud-backupdr-v1beta 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 (74) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +12 -0
  3. data/AUTHENTICATION.md +122 -0
  4. data/README.md +154 -8
  5. data/lib/google/cloud/backupdr/v1beta/appliedautoprotectionpolicy_pb.rb +30 -0
  6. data/lib/google/cloud/backupdr/v1beta/autoprotectionpolicy_pb.rb +39 -0
  7. data/lib/google/cloud/backupdr/v1beta/autoprotectionpolicybinding_pb.rb +32 -0
  8. data/lib/google/cloud/backupdr/v1beta/backup_dr_protection_summary/client.rb +532 -0
  9. data/lib/google/cloud/backupdr/v1beta/backup_dr_protection_summary/credentials.rb +48 -0
  10. data/lib/google/cloud/backupdr/v1beta/backup_dr_protection_summary/paths.rb +50 -0
  11. data/lib/google/cloud/backupdr/v1beta/backup_dr_protection_summary/rest/client.rb +491 -0
  12. data/lib/google/cloud/backupdr/v1beta/backup_dr_protection_summary/rest/service_stub.rb +142 -0
  13. data/lib/google/cloud/backupdr/v1beta/backup_dr_protection_summary/rest.rb +53 -0
  14. data/lib/google/cloud/backupdr/v1beta/backup_dr_protection_summary.rb +55 -0
  15. data/lib/google/cloud/backupdr/v1beta/backupdr/client.rb +6101 -0
  16. data/lib/google/cloud/backupdr/v1beta/backupdr/credentials.rb +48 -0
  17. data/lib/google/cloud/backupdr/v1beta/backupdr/operations.rb +843 -0
  18. data/lib/google/cloud/backupdr/v1beta/backupdr/paths.rb +372 -0
  19. data/lib/google/cloud/backupdr/v1beta/backupdr/rest/client.rb +5724 -0
  20. data/lib/google/cloud/backupdr/v1beta/backupdr/rest/operations.rb +927 -0
  21. data/lib/google/cloud/backupdr/v1beta/backupdr/rest/service_stub.rb +3086 -0
  22. data/lib/google/cloud/backupdr/v1beta/backupdr/rest.rb +54 -0
  23. data/lib/google/cloud/backupdr/v1beta/backupdr.rb +56 -0
  24. data/lib/google/cloud/backupdr/v1beta/backupdr_pb.rb +55 -0
  25. data/lib/google/cloud/backupdr/v1beta/backupdr_services_pb.rb +145 -0
  26. data/lib/google/cloud/backupdr/v1beta/backupplan_pb.rb +49 -0
  27. data/lib/google/cloud/backupdr/v1beta/backupplanassociation_pb.rb +42 -0
  28. data/lib/google/cloud/backupdr/v1beta/backupvault_alloydb_pb.rb +30 -0
  29. data/lib/google/cloud/backupdr/v1beta/backupvault_ba_pb.rb +24 -0
  30. data/lib/google/cloud/backupdr/v1beta/backupvault_cloudsql_pb.rb +30 -0
  31. data/lib/google/cloud/backupdr/v1beta/backupvault_disk_pb.rb +33 -0
  32. data/lib/google/cloud/backupdr/v1beta/backupvault_gce_pb.rb +66 -0
  33. data/lib/google/cloud/backupdr/v1beta/backupvault_pb.rb +80 -0
  34. data/lib/google/cloud/backupdr/v1beta/bindingmatchingresource_pb.rb +31 -0
  35. data/lib/google/cloud/backupdr/v1beta/bindings_override.rb +108 -0
  36. data/lib/google/cloud/backupdr/v1beta/datasourcereference_pb.rb +35 -0
  37. data/lib/google/cloud/backupdr/v1beta/protection_summary_pb.rb +40 -0
  38. data/lib/google/cloud/backupdr/v1beta/protection_summary_services_pb.rb +45 -0
  39. data/lib/google/cloud/backupdr/v1beta/rest.rb +39 -0
  40. data/lib/google/cloud/backupdr/v1beta/version.rb +8 -3
  41. data/lib/google/cloud/backupdr/v1beta.rb +46 -0
  42. data/lib/google-cloud-backupdr-v1beta.rb +21 -0
  43. data/proto_docs/README.md +4 -0
  44. data/proto_docs/google/api/client.rb +593 -0
  45. data/proto_docs/google/api/field_behavior.rb +85 -0
  46. data/proto_docs/google/api/field_info.rb +88 -0
  47. data/proto_docs/google/api/launch_stage.rb +71 -0
  48. data/proto_docs/google/api/resource.rb +227 -0
  49. data/proto_docs/google/cloud/backupdr/v1beta/appliedautoprotectionpolicy.rb +121 -0
  50. data/proto_docs/google/cloud/backupdr/v1beta/autoprotectionpolicy.rb +277 -0
  51. data/proto_docs/google/cloud/backupdr/v1beta/autoprotectionpolicybinding.rb +180 -0
  52. data/proto_docs/google/cloud/backupdr/v1beta/backupdr.rb +428 -0
  53. data/proto_docs/google/cloud/backupdr/v1beta/backupplan.rb +637 -0
  54. data/proto_docs/google/cloud/backupdr/v1beta/backupplanassociation.rb +423 -0
  55. data/proto_docs/google/cloud/backupdr/v1beta/backupvault.rb +1391 -0
  56. data/proto_docs/google/cloud/backupdr/v1beta/backupvault_alloydb.rb +105 -0
  57. data/proto_docs/google/cloud/backupdr/v1beta/backupvault_ba.rb +47 -0
  58. data/proto_docs/google/cloud/backupdr/v1beta/backupvault_cloudsql.rb +131 -0
  59. data/proto_docs/google/cloud/backupdr/v1beta/backupvault_disk.rb +301 -0
  60. data/proto_docs/google/cloud/backupdr/v1beta/backupvault_gce.rb +1010 -0
  61. data/proto_docs/google/cloud/backupdr/v1beta/bindingmatchingresource.rb +160 -0
  62. data/proto_docs/google/cloud/backupdr/v1beta/datasourcereference.rb +236 -0
  63. data/proto_docs/google/cloud/backupdr/v1beta/protection_summary.rb +309 -0
  64. data/proto_docs/google/longrunning/operations.rb +191 -0
  65. data/proto_docs/google/protobuf/any.rb +145 -0
  66. data/proto_docs/google/protobuf/duration.rb +98 -0
  67. data/proto_docs/google/protobuf/empty.rb +34 -0
  68. data/proto_docs/google/protobuf/field_mask.rb +229 -0
  69. data/proto_docs/google/protobuf/timestamp.rb +128 -0
  70. data/proto_docs/google/protobuf/wrappers.rb +148 -0
  71. data/proto_docs/google/rpc/status.rb +48 -0
  72. data/proto_docs/google/type/dayofweek.rb +49 -0
  73. data/proto_docs/google/type/month.rb +64 -0
  74. metadata +134 -9
@@ -0,0 +1,637 @@
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 V1beta
24
+ # A `BackupPlan` specifies some common fields, such as `description` as well
25
+ # as one or more `BackupRule` messages. Each `BackupRule` has a retention
26
+ # policy and defines a schedule by which the system is to perform backup
27
+ # workloads.
28
+ # @!attribute [rw] disk_backup_plan_properties
29
+ # @return [::Google::Cloud::BackupDR::V1beta::DiskBackupPlanProperties]
30
+ # Optional. Defines optional properties specific to backups of disk-based
31
+ # resources, such as Compute Engine Persistent Disks. This includes
32
+ # settings like whether to perform a guest flush.
33
+ #
34
+ # Note: The following fields are mutually exclusive: `disk_backup_plan_properties`, `compute_instance_backup_plan_properties`. If a field in that set is populated, all other fields in the set will automatically be cleared.
35
+ # @!attribute [rw] compute_instance_backup_plan_properties
36
+ # @return [::Google::Cloud::BackupDR::V1beta::ComputeInstanceBackupPlanProperties]
37
+ # Optional. Defines optional properties specific to backups of compute
38
+ # instance based resources, such as Compute Engine Instances. This includes
39
+ # settings like whether to perform a guest flush.
40
+ #
41
+ # Note: The following fields are mutually exclusive: `compute_instance_backup_plan_properties`, `disk_backup_plan_properties`. If a field in that set is populated, all other fields in the set will automatically be cleared.
42
+ # @!attribute [r] name
43
+ # @return [::String]
44
+ # Output only. Identifier. The resource name of the `BackupPlan`.
45
+ #
46
+ # Format: `projects/{project}/locations/{location}/backupPlans/{backup_plan}`
47
+ # @!attribute [rw] description
48
+ # @return [::String]
49
+ # Optional. The description of the `BackupPlan` resource.
50
+ #
51
+ # The description allows for additional details about `BackupPlan` and its
52
+ # use cases to be provided. An example description is the following: "This
53
+ # is a backup plan that performs a daily backup at 6pm and retains data for 3
54
+ # months". The description must be at most 2048 characters.
55
+ # @!attribute [rw] labels
56
+ # @return [::Google::Protobuf::Map{::String => ::String}]
57
+ # Optional. This collection of key/value pairs allows for custom labels to be
58
+ # supplied by the user. Example, \\{"tag": "Weekly"}.
59
+ # @!attribute [r] create_time
60
+ # @return [::Google::Protobuf::Timestamp]
61
+ # Output only. When the `BackupPlan` was created.
62
+ # @!attribute [r] update_time
63
+ # @return [::Google::Protobuf::Timestamp]
64
+ # Output only. When the `BackupPlan` was last updated.
65
+ # @!attribute [rw] backup_rules
66
+ # @return [::Array<::Google::Cloud::BackupDR::V1beta::BackupRule>]
67
+ # Optional. The backup rules for this `BackupPlan`.
68
+ # @!attribute [rw] max_custom_on_demand_retention_days
69
+ # @return [::Integer]
70
+ # Optional. Optional field to configure the maximum number of days for which
71
+ # a backup can be retained. This field is only applicable for on-demand
72
+ # backups taken with custom retention value.
73
+ # @!attribute [r] state
74
+ # @return [::Google::Cloud::BackupDR::V1beta::BackupPlan::State]
75
+ # Output only. The `State` for the `BackupPlan`.
76
+ # @!attribute [rw] resource_type
77
+ # @return [::String]
78
+ # Required. The resource type to which the `BackupPlan` will be applied.
79
+ # Examples include, "compute.googleapis.com/Instance",
80
+ # "sqladmin.googleapis.com/Instance", "alloydb.googleapis.com/Cluster",
81
+ # "compute.googleapis.com/Disk".
82
+ # @!attribute [rw] etag
83
+ # @return [::String]
84
+ # Optional. `etag` is returned from the service in the response. As a user of
85
+ # the service, you may provide an etag value in this field to prevent stale
86
+ # resources.
87
+ # @!attribute [rw] backup_vault
88
+ # @return [::String]
89
+ # Required. Resource name of backup vault which will be used as storage
90
+ # location for backups. Format:
91
+ # projects/\\{project}/locations/\\{location}/backupVaults/\\{backupvault}
92
+ # @!attribute [r] backup_vault_service_account
93
+ # @return [::String]
94
+ # Output only. The Google Cloud service account to be used by the BackupVault
95
+ # for taking backups. Specify the email address of the Backup Vault Service
96
+ # Account.
97
+ # @!attribute [rw] log_retention_days
98
+ # @return [::Integer]
99
+ # Optional. Applicable only for Cloud SQL resource_type.
100
+ #
101
+ # Configures how long logs will be stored. It is defined in “days”. This
102
+ # value should be greater than or equal to minimum enforced log retention
103
+ # duration of the backup vault.
104
+ # @!attribute [r] supported_resource_types
105
+ # @return [::Array<::String>]
106
+ # Output only. All resource types to which backupPlan can be applied.
107
+ # @!attribute [r] revision_id
108
+ # @return [::String]
109
+ # Output only. The user friendly revision ID of the `BackupPlanRevision`.
110
+ #
111
+ # Example: v0, v1, v2, etc.
112
+ # @!attribute [r] revision_name
113
+ # @return [::String]
114
+ # Output only. The resource id of the `BackupPlanRevision`.
115
+ #
116
+ # Format:
117
+ # `projects/{project}/locations/{location}/backupPlans/{backup_plan}/revisions/{revision_id}`
118
+ class BackupPlan
119
+ include ::Google::Protobuf::MessageExts
120
+ extend ::Google::Protobuf::MessageExts::ClassMethods
121
+
122
+ # @!attribute [rw] key
123
+ # @return [::String]
124
+ # @!attribute [rw] value
125
+ # @return [::String]
126
+ class LabelsEntry
127
+ include ::Google::Protobuf::MessageExts
128
+ extend ::Google::Protobuf::MessageExts::ClassMethods
129
+ end
130
+
131
+ # `State` enumerates the possible states for a `BackupPlan`.
132
+ module State
133
+ # State not set.
134
+ STATE_UNSPECIFIED = 0
135
+
136
+ # The resource is being created.
137
+ CREATING = 1
138
+
139
+ # The resource has been created and is fully usable.
140
+ ACTIVE = 2
141
+
142
+ # The resource is being deleted.
143
+ DELETING = 3
144
+
145
+ # The resource has been created but is not usable.
146
+ INACTIVE = 4
147
+
148
+ # The resource is being updated.
149
+ UPDATING = 5
150
+ end
151
+ end
152
+
153
+ # `BackupRule` binds the backup schedule to a retention policy.
154
+ # @!attribute [rw] standard_schedule
155
+ # @return [::Google::Cloud::BackupDR::V1beta::StandardSchedule]
156
+ # Optional. Defines a schedule that runs within the confines of a defined
157
+ # window of time.
158
+ # @!attribute [rw] rule_id
159
+ # @return [::String]
160
+ # Required. Immutable. The unique id of this `BackupRule`. The `rule_id` is
161
+ # unique per `BackupPlan`.The `rule_id` must start with a lowercase letter
162
+ # followed by up to 62 lowercase letters, numbers, or hyphens. Pattern,
163
+ # /[a-z][a-z0-9-]\\{,62}/.
164
+ # @!attribute [rw] backup_retention_days
165
+ # @return [::Integer]
166
+ # Required. Configures the duration for which backup data will be kept. It is
167
+ # defined in “days”. The value should be greater than or equal to minimum
168
+ # enforced retention of the backup vault.
169
+ #
170
+ # Minimum value is 1 and maximum value is 36159 for custom retention
171
+ # on-demand backup.
172
+ # Minimum and maximum values are workload specific for all other rules.
173
+ # Note: Longer retention can lead to higher storage costs post introductory
174
+ # trial. We recommend starting with a short duration of 3 days or less.
175
+ class BackupRule
176
+ include ::Google::Protobuf::MessageExts
177
+ extend ::Google::Protobuf::MessageExts::ClassMethods
178
+ end
179
+
180
+ # `StandardSchedule` defines a schedule that run within the confines of a
181
+ # defined window of days. We can define recurrence type for schedule as
182
+ # HOURLY, DAILY, WEEKLY, MONTHLY or YEARLY.
183
+ # @!attribute [rw] recurrence_type
184
+ # @return [::Google::Cloud::BackupDR::V1beta::StandardSchedule::RecurrenceType]
185
+ # Required. Specifies the `RecurrenceType` for the schedule.
186
+ # @!attribute [rw] hourly_frequency
187
+ # @return [::Integer]
188
+ # Optional. Specifies frequency for hourly backups. A hourly frequency of 2
189
+ # means jobs will run every 2 hours from start time till end time defined.
190
+ #
191
+ # This is required for `recurrence_type`, `HOURLY` and is not applicable
192
+ # otherwise. A validation error will occur if a value is supplied and
193
+ # `recurrence_type` is not `HOURLY`.
194
+ #
195
+ # The supported values for each resource type are as follows:
196
+ #
197
+ # * `compute.googleapis.com/Instance`: 1-23
198
+ # * `compute.googleapis.com/Disk`: 1-23
199
+ # * `sqladmin.googleapis.com/Instance`: 6-23
200
+ # * `alloydb.googleapis.com/Cluster`: 1-23
201
+ # * `file.googleapis.com/Instance`: 1-23
202
+ #
203
+ # Refer to link
204
+ # https://cloud.google.com/backup-disaster-recovery/docs/concepts/cloud_best_practices
205
+ # for more details.
206
+ # @!attribute [rw] days_of_week
207
+ # @return [::Array<::Google::Type::DayOfWeek>]
208
+ # Optional. Specifies days of week like, MONDAY or TUESDAY, on which jobs
209
+ # will run.
210
+ #
211
+ # This is required for `recurrence_type`, `WEEKLY` and is not applicable
212
+ # otherwise. A validation error will occur if a value is supplied and
213
+ # `recurrence_type` is not `WEEKLY`.
214
+ # @!attribute [rw] days_of_month
215
+ # @return [::Array<::Integer>]
216
+ # Optional. Specifies days of months like 1, 5, or 14 on which jobs will run.
217
+ #
218
+ # Values for `days_of_month` are only applicable for `recurrence_type`,
219
+ # `MONTHLY` and `YEARLY`. A validation error will occur if other values are
220
+ # supplied.
221
+ # @!attribute [rw] week_day_of_month
222
+ # @return [::Google::Cloud::BackupDR::V1beta::WeekDayOfMonth]
223
+ # Optional. Specifies a week day of the month like, FIRST SUNDAY or LAST
224
+ # MONDAY, on which jobs will run. This will be specified by two fields in
225
+ # `WeekDayOfMonth`, one for the day, e.g. `MONDAY`, and one for the week,
226
+ # e.g. `LAST`.
227
+ #
228
+ # This field is only applicable for `recurrence_type`, `MONTHLY` and
229
+ # `YEARLY`. A validation error will occur if other values are supplied.
230
+ # @!attribute [rw] months
231
+ # @return [::Array<::Google::Type::Month>]
232
+ # Optional. Specifies the months of year, like `FEBRUARY` and/or `MAY`, on
233
+ # which jobs will run.
234
+ #
235
+ # This field is only applicable when `recurrence_type` is `YEARLY`. A
236
+ # validation error will occur if other values are supplied.
237
+ # @!attribute [rw] backup_window
238
+ # @return [::Google::Cloud::BackupDR::V1beta::BackupWindow]
239
+ # Required. A BackupWindow defines the window of day during which backup jobs
240
+ # will run. Jobs are queued at the beginning of the window and will be marked
241
+ # as `NOT_RUN` if they do not start by the end of the window.
242
+ #
243
+ # Note: running jobs will not be cancelled at the end of the window.
244
+ # @!attribute [rw] time_zone
245
+ # @return [::String]
246
+ # Required. The time zone to be used when interpreting the schedule.
247
+ # The value of this field must be a time zone name from the IANA tz database.
248
+ # See https://en.wikipedia.org/wiki/List_of_tz_database_time_zones for the
249
+ # list of valid timezone names. For e.g., Europe/Paris.
250
+ class StandardSchedule
251
+ include ::Google::Protobuf::MessageExts
252
+ extend ::Google::Protobuf::MessageExts::ClassMethods
253
+
254
+ # `RecurrenceTypes` enumerates the applicable periodicity for the schedule.
255
+ module RecurrenceType
256
+ # recurrence type not set
257
+ RECURRENCE_TYPE_UNSPECIFIED = 0
258
+
259
+ # The `BackupRule` is to be applied hourly.
260
+ HOURLY = 1
261
+
262
+ # The `BackupRule` is to be applied daily.
263
+ DAILY = 2
264
+
265
+ # The `BackupRule` is to be applied weekly.
266
+ WEEKLY = 3
267
+
268
+ # The `BackupRule` is to be applied monthly.
269
+ MONTHLY = 4
270
+
271
+ # The `BackupRule` is to be applied yearly.
272
+ YEARLY = 5
273
+ end
274
+ end
275
+
276
+ # `BackupWindow` defines a window of the day during which backup jobs will run.
277
+ # @!attribute [rw] start_hour_of_day
278
+ # @return [::Integer]
279
+ # Required. The hour of day (0-23) when the window starts for e.g. if value
280
+ # of start hour of day is 6 that mean backup window start at 6:00.
281
+ # @!attribute [rw] end_hour_of_day
282
+ # @return [::Integer]
283
+ # Required. The hour of day (1-24) when the window end for e.g. if value of
284
+ # end hour of day is 10 that mean backup window end time is 10:00.
285
+ #
286
+ # End hour of day should be greater than start hour of day.
287
+ # 0 <= start_hour_of_day < end_hour_of_day <= 24
288
+ #
289
+ # End hour of day is not include in backup window that mean if
290
+ # end_hour_of_day= 10 jobs should start before 10:00.
291
+ class BackupWindow
292
+ include ::Google::Protobuf::MessageExts
293
+ extend ::Google::Protobuf::MessageExts::ClassMethods
294
+ end
295
+
296
+ # `WeekDayOfMonth` defines the week day of the month on which the backups will
297
+ # run. The message combines a `WeekOfMonth` and `DayOfWeek` to produce values
298
+ # like `FIRST`/`MONDAY` or `LAST`/`FRIDAY`.
299
+ # @!attribute [rw] week_of_month
300
+ # @return [::Google::Cloud::BackupDR::V1beta::WeekDayOfMonth::WeekOfMonth]
301
+ # Required. Specifies the week of the month.
302
+ # @!attribute [rw] day_of_week
303
+ # @return [::Google::Type::DayOfWeek]
304
+ # Required. Specifies the day of the week.
305
+ class WeekDayOfMonth
306
+ include ::Google::Protobuf::MessageExts
307
+ extend ::Google::Protobuf::MessageExts::ClassMethods
308
+
309
+ # `WeekOfMonth` enumerates possible weeks in the month, e.g. the first,
310
+ # third, or last week of the month.
311
+ module WeekOfMonth
312
+ # The zero value. Do not use.
313
+ WEEK_OF_MONTH_UNSPECIFIED = 0
314
+
315
+ # The first week of the month.
316
+ FIRST = 1
317
+
318
+ # The second week of the month.
319
+ SECOND = 2
320
+
321
+ # The third week of the month.
322
+ THIRD = 3
323
+
324
+ # The fourth week of the month.
325
+ FOURTH = 4
326
+
327
+ # The last week of the month.
328
+ LAST = 5
329
+ end
330
+ end
331
+
332
+ # The request message for creating a `BackupPlan`.
333
+ # @!attribute [rw] parent
334
+ # @return [::String]
335
+ # Required. The `BackupPlan` project and location in the format
336
+ # `projects/{project}/locations/{location}`. In Google Cloud Backup and DR
337
+ # locations map to Google Cloud regions, for example **us-central1**.
338
+ # @!attribute [rw] backup_plan_id
339
+ # @return [::String]
340
+ # Required. The name of the `BackupPlan` to create. The name must be unique
341
+ # for the specified project and location.The name must start with a lowercase
342
+ # letter followed by up to 62 lowercase letters, numbers, or hyphens.
343
+ # Pattern, /[a-z][a-z0-9-]\\{,62}/.
344
+ # @!attribute [rw] backup_plan
345
+ # @return [::Google::Cloud::BackupDR::V1beta::BackupPlan]
346
+ # Required. The `BackupPlan` resource object to create.
347
+ # @!attribute [rw] request_id
348
+ # @return [::String]
349
+ # Optional. An optional request ID to identify requests. Specify a unique
350
+ # request ID so that if you must retry your request, the server will know to
351
+ # ignore the request if it has already been completed. The server will
352
+ # guarantee that for at least 60 minutes since the first request.
353
+ #
354
+ # For example, consider a situation where you make an initial request and t
355
+ # he request times out. If you make the request again with the same request
356
+ # ID, the server can check if original operation with the same request ID
357
+ # was received, and if so, will ignore the second request. This prevents
358
+ # clients from accidentally creating duplicate commitments.
359
+ #
360
+ # The request ID must be a valid UUID with the exception that zero UUID is
361
+ # not supported (00000000-0000-0000-0000-000000000000).
362
+ class CreateBackupPlanRequest
363
+ include ::Google::Protobuf::MessageExts
364
+ extend ::Google::Protobuf::MessageExts::ClassMethods
365
+ end
366
+
367
+ # The request message for getting a list `BackupPlan`.
368
+ # @!attribute [rw] parent
369
+ # @return [::String]
370
+ # Required. The project and location for which to retrieve `BackupPlans`
371
+ # information. Format: `projects/{project}/locations/{location}`. In Google
372
+ # Cloud Backup and DR, locations map to Google Cloud regions, for e.g.
373
+ # **us-central1**. To retrieve backup plans for all locations, use "-" for
374
+ # the
375
+ # `{location}` value.
376
+ # @!attribute [rw] page_size
377
+ # @return [::Integer]
378
+ # Optional. The maximum number of `BackupPlans` to return in a single
379
+ # response. If not specified, a default value will be chosen by the service.
380
+ # Note that the response may include a partial list and a caller should
381
+ # only rely on the response's
382
+ # {::Google::Cloud::BackupDR::V1beta::ListBackupPlansResponse#next_page_token next_page_token}
383
+ # to determine if there are more instances left to be queried.
384
+ # @!attribute [rw] page_token
385
+ # @return [::String]
386
+ # Optional. The value of
387
+ # {::Google::Cloud::BackupDR::V1beta::ListBackupPlansResponse#next_page_token next_page_token}
388
+ # received from a previous `ListBackupPlans` call.
389
+ # Provide this to retrieve the subsequent page in a multi-page list of
390
+ # results. When paginating, all other parameters provided to
391
+ # `ListBackupPlans` must match the call that provided the page token.
392
+ # @!attribute [rw] filter
393
+ # @return [::String]
394
+ # Optional. Field match expression used to filter the results.
395
+ # @!attribute [rw] order_by
396
+ # @return [::String]
397
+ # Optional. Field by which to sort the results.
398
+ class ListBackupPlansRequest
399
+ include ::Google::Protobuf::MessageExts
400
+ extend ::Google::Protobuf::MessageExts::ClassMethods
401
+ end
402
+
403
+ # The response message for getting a list of `BackupPlan`.
404
+ # @!attribute [rw] backup_plans
405
+ # @return [::Array<::Google::Cloud::BackupDR::V1beta::BackupPlan>]
406
+ # The list of `BackupPlans` in the project for the specified
407
+ # location.
408
+ #
409
+ # If the `{location}` value in the request is "-", the response contains a
410
+ # list of resources from all locations. In case any location is unreachable,
411
+ # the response will only return backup plans in reachable locations and
412
+ # the 'unreachable' field will be populated with a list of unreachable
413
+ # locations.
414
+ # BackupPlan
415
+ # @!attribute [rw] next_page_token
416
+ # @return [::String]
417
+ # A token which may be sent as
418
+ # {::Google::Cloud::BackupDR::V1beta::ListBackupPlansRequest#page_token page_token}
419
+ # in a subsequent `ListBackupPlans` call to retrieve the next page of
420
+ # results. If this field is omitted or empty, then there are no more results
421
+ # to return.
422
+ # @!attribute [rw] unreachable
423
+ # @return [::Array<::String>]
424
+ # Locations that could not be reached.
425
+ class ListBackupPlansResponse
426
+ include ::Google::Protobuf::MessageExts
427
+ extend ::Google::Protobuf::MessageExts::ClassMethods
428
+ end
429
+
430
+ # The request message for getting a `BackupPlan`.
431
+ # @!attribute [rw] name
432
+ # @return [::String]
433
+ # Required. The resource name of the `BackupPlan` to retrieve.
434
+ #
435
+ # Format: `projects/{project}/locations/{location}/backupPlans/{backup_plan}`
436
+ class GetBackupPlanRequest
437
+ include ::Google::Protobuf::MessageExts
438
+ extend ::Google::Protobuf::MessageExts::ClassMethods
439
+ end
440
+
441
+ # The request message for deleting a `BackupPlan`.
442
+ # @!attribute [rw] name
443
+ # @return [::String]
444
+ # Required. The resource name of the `BackupPlan` to delete.
445
+ #
446
+ # Format: `projects/{project}/locations/{location}/backupPlans/{backup_plan}`
447
+ # @!attribute [rw] request_id
448
+ # @return [::String]
449
+ # Optional. An optional request ID to identify requests. Specify a unique
450
+ # request ID so that if you must retry your request, the server will know to
451
+ # ignore the request if it has already been completed. The server will
452
+ # guarantee that for at least 60 minutes after the first request.
453
+ #
454
+ # For example, consider a situation where you make an initial request and
455
+ # the request times out. If you make the request again with the same request
456
+ # ID, the server can check if original operation with the same request ID
457
+ # was received, and if so, will ignore the second request. This prevents
458
+ # clients from accidentally creating duplicate commitments.
459
+ #
460
+ # The request ID must be a valid UUID with the exception that zero UUID is
461
+ # not supported (00000000-0000-0000-0000-000000000000).
462
+ class DeleteBackupPlanRequest
463
+ include ::Google::Protobuf::MessageExts
464
+ extend ::Google::Protobuf::MessageExts::ClassMethods
465
+ end
466
+
467
+ # Request message for updating a backup plan.
468
+ # @!attribute [rw] backup_plan
469
+ # @return [::Google::Cloud::BackupDR::V1beta::BackupPlan]
470
+ # Required. The resource being updated
471
+ # @!attribute [rw] update_mask
472
+ # @return [::Google::Protobuf::FieldMask]
473
+ # Required. The list of fields to update.
474
+ # Field mask is used to specify the fields to be overwritten in the
475
+ # BackupPlan resource by the update.
476
+ # The fields specified in the update_mask are relative to the resource, not
477
+ # the full request. A field will be overwritten if it is in the mask. If the
478
+ # user does not provide a mask then the request will fail.
479
+ # Currently, these fields are supported in update: description, schedules,
480
+ # retention period, adding and removing Backup Rules.
481
+ # @!attribute [rw] request_id
482
+ # @return [::String]
483
+ # Optional. An optional request ID to identify requests. Specify a unique
484
+ # request ID so that if you must retry your request, the server will know to
485
+ # ignore the request if it has already been completed. The server will
486
+ # guarantee that for at least 60 minutes since the first request.
487
+ #
488
+ # For example, consider a situation where you make an initial request and t
489
+ # he request times out. If you make the request again with the same request
490
+ # ID, the server can check if original operation with the same request ID
491
+ # was received, and if so, will ignore the second request. This prevents
492
+ # clients from accidentally creating duplicate commitments.
493
+ #
494
+ # The request ID must be a valid UUID with the exception that zero UUID is
495
+ # not supported (00000000-0000-0000-0000-000000000000).
496
+ class UpdateBackupPlanRequest
497
+ include ::Google::Protobuf::MessageExts
498
+ extend ::Google::Protobuf::MessageExts::ClassMethods
499
+ end
500
+
501
+ # `BackupPlanRevision` represents a snapshot of a `BackupPlan` at a point in
502
+ # time.
503
+ # @!attribute [r] name
504
+ # @return [::String]
505
+ # Output only. Identifier. The resource name of the `BackupPlanRevision`.
506
+ #
507
+ # Format:
508
+ # `projects/{project}/locations/{location}/backupPlans/{backup_plan}/revisions/{revision}`
509
+ # @!attribute [r] revision_id
510
+ # @return [::String]
511
+ # Output only. The user friendly revision ID of the `BackupPlanRevision`.
512
+ #
513
+ # Example: v0, v1, v2, etc.
514
+ # @!attribute [r] state
515
+ # @return [::Google::Cloud::BackupDR::V1beta::BackupPlanRevision::State]
516
+ # Output only. Resource State
517
+ # @!attribute [rw] backup_plan_snapshot
518
+ # @return [::Google::Cloud::BackupDR::V1beta::BackupPlan]
519
+ # The Backup Plan being encompassed by this revision.
520
+ # @!attribute [r] create_time
521
+ # @return [::Google::Protobuf::Timestamp]
522
+ # Output only. The timestamp that the revision was created.
523
+ class BackupPlanRevision
524
+ include ::Google::Protobuf::MessageExts
525
+ extend ::Google::Protobuf::MessageExts::ClassMethods
526
+
527
+ # The state of the `BackupPlanRevision`.
528
+ module State
529
+ # State not set.
530
+ STATE_UNSPECIFIED = 0
531
+
532
+ # The resource is being created.
533
+ CREATING = 1
534
+
535
+ # The resource has been created and is fully usable.
536
+ ACTIVE = 2
537
+
538
+ # The resource is being deleted.
539
+ DELETING = 3
540
+
541
+ # The resource has been created but is not usable.
542
+ INACTIVE = 4
543
+ end
544
+ end
545
+
546
+ # The request message for getting a `BackupPlanRevision`.
547
+ # @!attribute [rw] name
548
+ # @return [::String]
549
+ # Required. The resource name of the `BackupPlanRevision` to retrieve.
550
+ #
551
+ # Format:
552
+ # `projects/{project}/locations/{location}/backupPlans/{backup_plan}/revisions/{revision}`
553
+ class GetBackupPlanRevisionRequest
554
+ include ::Google::Protobuf::MessageExts
555
+ extend ::Google::Protobuf::MessageExts::ClassMethods
556
+ end
557
+
558
+ # The request message for getting a list of `BackupPlanRevision`.
559
+ # @!attribute [rw] parent
560
+ # @return [::String]
561
+ # Required. The project and location for which to retrieve
562
+ # `BackupPlanRevisions` information. Format:
563
+ # `projects/{project}/locations/{location}/backupPlans/{backup_plan}`. In
564
+ # Google Cloud Backup and DR, locations map to Google Cloud regions, for e.g.
565
+ # **us-central1**.
566
+ # @!attribute [rw] page_size
567
+ # @return [::Integer]
568
+ # Optional. The maximum number of `BackupPlans` to return in a single
569
+ # response. If not specified, a default value will be chosen by the service.
570
+ # Note that the response may include a partial list and a caller should
571
+ # only rely on the response's
572
+ # {::Google::Cloud::BackupDR::V1beta::ListBackupPlansResponse#next_page_token next_page_token}
573
+ # to determine if there are more instances left to be queried.
574
+ # @!attribute [rw] page_token
575
+ # @return [::String]
576
+ # Optional. The value of
577
+ # {::Google::Cloud::BackupDR::V1beta::ListBackupPlansResponse#next_page_token next_page_token}
578
+ # received from a previous `ListBackupPlans` call.
579
+ # Provide this to retrieve the subsequent page in a multi-page list of
580
+ # results. When paginating, all other parameters provided to
581
+ # `ListBackupPlans` must match the call that provided the page token.
582
+ class ListBackupPlanRevisionsRequest
583
+ include ::Google::Protobuf::MessageExts
584
+ extend ::Google::Protobuf::MessageExts::ClassMethods
585
+ end
586
+
587
+ # The response message for getting a list of `BackupPlanRevision`.
588
+ # @!attribute [rw] backup_plan_revisions
589
+ # @return [::Array<::Google::Cloud::BackupDR::V1beta::BackupPlanRevision>]
590
+ # The list of `BackupPlanRevisions` in the project for the specified
591
+ # location.
592
+ #
593
+ # If the `{location}` value in the request is "-", the response contains a
594
+ # list of resources from all locations. In case any location is unreachable,
595
+ # the response will only return backup plans in reachable locations and
596
+ # the 'unreachable' field will be populated with a list of unreachable
597
+ # locations.
598
+ # @!attribute [rw] next_page_token
599
+ # @return [::String]
600
+ # A token which may be sent as
601
+ # {::Google::Cloud::BackupDR::V1beta::ListBackupPlanRevisionsRequest#page_token page_token}
602
+ # in a subsequent `ListBackupPlanRevisions` call to retrieve the next page of
603
+ # results. If this field is omitted or empty, then there are no more results
604
+ # to return.
605
+ # @!attribute [rw] unreachable
606
+ # @return [::Array<::String>]
607
+ # Locations that could not be reached.
608
+ class ListBackupPlanRevisionsResponse
609
+ include ::Google::Protobuf::MessageExts
610
+ extend ::Google::Protobuf::MessageExts::ClassMethods
611
+ end
612
+
613
+ # Properties for a disk backup plan.
614
+ # @!attribute [rw] guest_flush
615
+ # @return [::Boolean]
616
+ # Optional. Indicates whether to perform a guest flush operation before
617
+ # taking a disk backup. When set to false, the system will create
618
+ # crash-consistent backups. Default value is false.
619
+ class DiskBackupPlanProperties
620
+ include ::Google::Protobuf::MessageExts
621
+ extend ::Google::Protobuf::MessageExts::ClassMethods
622
+ end
623
+
624
+ # Properties for a compute instance backup plan.
625
+ # @!attribute [rw] guest_flush
626
+ # @return [::Boolean]
627
+ # Optional. Indicates whether to perform a guest flush operation before
628
+ # taking a compute backup. When set to false, the system will create
629
+ # crash-consistent backups. Default value is false.
630
+ class ComputeInstanceBackupPlanProperties
631
+ include ::Google::Protobuf::MessageExts
632
+ extend ::Google::Protobuf::MessageExts::ClassMethods
633
+ end
634
+ end
635
+ end
636
+ end
637
+ end