google-cloud-backupdr-v1 1.1.0 → 1.2.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.
@@ -59,7 +59,8 @@ module Google
59
59
  # @return [::String]
60
60
  # Required. The resource type to which the `BackupPlan` will be applied.
61
61
  # Examples include, "compute.googleapis.com/Instance",
62
- # "sqladmin.googleapis.com/Instance", or "alloydb.googleapis.com/Cluster".
62
+ # "sqladmin.googleapis.com/Instance", "alloydb.googleapis.com/Cluster",
63
+ # "compute.googleapis.com/Disk".
63
64
  # @!attribute [rw] etag
64
65
  # @return [::String]
65
66
  # Optional. `etag` is returned from the service in the response. As a user of
@@ -75,6 +76,27 @@ module Google
75
76
  # Output only. The Google Cloud Platform Service Account to be used by the
76
77
  # BackupVault for taking backups. Specify the email address of the Backup
77
78
  # Vault Service Account.
79
+ # @!attribute [rw] log_retention_days
80
+ # @return [::Integer]
81
+ # Optional. Applicable only for CloudSQL resource_type.
82
+ #
83
+ # Configures how long logs will be stored. It is defined in “days”. This
84
+ # value should be greater than or equal to minimum enforced log retention
85
+ # duration of the backup vault.
86
+ # @!attribute [r] supported_resource_types
87
+ # @return [::Array<::String>]
88
+ # Output only. All resource types to which backupPlan can be applied.
89
+ # @!attribute [r] revision_id
90
+ # @return [::String]
91
+ # Output only. The user friendly revision ID of the `BackupPlanRevision`.
92
+ #
93
+ # Example: v0, v1, v2, etc.
94
+ # @!attribute [r] revision_name
95
+ # @return [::String]
96
+ # Output only. The resource id of the `BackupPlanRevision`.
97
+ #
98
+ # Format:
99
+ # `projects/{project}/locations/{location}/backupPlans/{backup_plan}/revisions/{revision_id}`
78
100
  class BackupPlan
79
101
  include ::Google::Protobuf::MessageExts
80
102
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -104,6 +126,9 @@ module Google
104
126
 
105
127
  # The resource has been created but is not usable.
106
128
  INACTIVE = 4
129
+
130
+ # The resource is being updated.
131
+ UPDATING = 5
107
132
  end
108
133
  end
109
134
 
@@ -120,14 +145,12 @@ module Google
120
145
  # defined in “days”. The value should be greater than or equal to minimum
121
146
  # enforced retention of the backup vault.
122
147
  #
123
- # Minimum value is 1 and maximum value is 90 for hourly backups.
124
- # Minimum value is 1 and maximum value is 90 for daily backups.
125
- # Minimum value is 7 and maximum value is 186 for weekly backups.
126
- # Minimum value is 30 and maximum value is 732 for monthly backups.
127
- # Minimum value is 365 and maximum value is 36159 for yearly backups.
148
+ # Minimum value is 1 and maximum value is 36159 for custom retention
149
+ # on-demand backup.
150
+ # Minimum and maximum values are workload specific for all other rules.
128
151
  # @!attribute [rw] standard_schedule
129
152
  # @return [::Google::Cloud::BackupDR::V1::StandardSchedule]
130
- # Required. Defines a schedule that runs within the confines of a defined
153
+ # Optional. Defines a schedule that runs within the confines of a defined
131
154
  # window of time.
132
155
  class BackupRule
133
156
  include ::Google::Protobuf::MessageExts
@@ -149,7 +172,7 @@ module Google
149
172
  # otherwise. A validation error will occur if a value is supplied and
150
173
  # `recurrence_type` is not `HOURLY`.
151
174
  #
152
- # Value of hourly frequency should be between 6 and 23.
175
+ # Value of hourly frequency should be between 4 and 23.
153
176
  #
154
177
  # Reason for limit : We found that there is bandwidth limitation of 3GB/S for
155
178
  # GMI while taking a backup and 5GB/S while doing a restore. Given the amount
@@ -414,6 +437,151 @@ module Google
414
437
  include ::Google::Protobuf::MessageExts
415
438
  extend ::Google::Protobuf::MessageExts::ClassMethods
416
439
  end
440
+
441
+ # Request message for updating a backup plan.
442
+ # @!attribute [rw] backup_plan
443
+ # @return [::Google::Cloud::BackupDR::V1::BackupPlan]
444
+ # Required. The resource being updated
445
+ # @!attribute [rw] update_mask
446
+ # @return [::Google::Protobuf::FieldMask]
447
+ # Required. The list of fields to update.
448
+ # Field mask is used to specify the fields to be overwritten in the
449
+ # BackupPlan resource by the update.
450
+ # The fields specified in the update_mask are relative to the resource, not
451
+ # the full request. A field will be overwritten if it is in the mask. If the
452
+ # user does not provide a mask then the request will fail.
453
+ # Currently, these fields are supported in update: description, schedules,
454
+ # retention period, adding and removing Backup Rules.
455
+ # @!attribute [rw] request_id
456
+ # @return [::String]
457
+ # Optional. An optional request ID to identify requests. Specify a unique
458
+ # request ID so that if you must retry your request, the server will know to
459
+ # ignore the request if it has already been completed. The server will
460
+ # guarantee that for at least 60 minutes since the first request.
461
+ #
462
+ # For example, consider a situation where you make an initial request and t
463
+ # he request times out. If you make the request again with the same request
464
+ # ID, the server can check if original operation with the same request ID
465
+ # was received, and if so, will ignore the second request. This prevents
466
+ # clients from accidentally creating duplicate commitments.
467
+ #
468
+ # The request ID must be a valid UUID with the exception that zero UUID is
469
+ # not supported (00000000-0000-0000-0000-000000000000).
470
+ class UpdateBackupPlanRequest
471
+ include ::Google::Protobuf::MessageExts
472
+ extend ::Google::Protobuf::MessageExts::ClassMethods
473
+ end
474
+
475
+ # `BackupPlanRevision` represents a snapshot of a `BackupPlan` at a point in
476
+ # time.
477
+ # @!attribute [r] name
478
+ # @return [::String]
479
+ # Output only. Identifier. The resource name of the `BackupPlanRevision`.
480
+ #
481
+ # Format:
482
+ # `projects/{project}/locations/{location}/backupPlans/{backup_plan}/revisions/{revision}`
483
+ # @!attribute [r] revision_id
484
+ # @return [::String]
485
+ # Output only. The user friendly revision ID of the `BackupPlanRevision`.
486
+ #
487
+ # Example: v0, v1, v2, etc.
488
+ # @!attribute [r] state
489
+ # @return [::Google::Cloud::BackupDR::V1::BackupPlanRevision::State]
490
+ # Output only. Resource State
491
+ # @!attribute [rw] backup_plan_snapshot
492
+ # @return [::Google::Cloud::BackupDR::V1::BackupPlan]
493
+ # The Backup Plan being encompassed by this revision.
494
+ # @!attribute [r] create_time
495
+ # @return [::Google::Protobuf::Timestamp]
496
+ # Output only. The timestamp that the revision was created.
497
+ class BackupPlanRevision
498
+ include ::Google::Protobuf::MessageExts
499
+ extend ::Google::Protobuf::MessageExts::ClassMethods
500
+
501
+ # The state of the `BackupPlanRevision`.
502
+ module State
503
+ # State not set.
504
+ STATE_UNSPECIFIED = 0
505
+
506
+ # The resource is being created.
507
+ CREATING = 1
508
+
509
+ # The resource has been created and is fully usable.
510
+ ACTIVE = 2
511
+
512
+ # The resource is being deleted.
513
+ DELETING = 3
514
+
515
+ # The resource has been created but is not usable.
516
+ INACTIVE = 4
517
+ end
518
+ end
519
+
520
+ # The request message for getting a `BackupPlanRevision`.
521
+ # @!attribute [rw] name
522
+ # @return [::String]
523
+ # Required. The resource name of the `BackupPlanRevision` to retrieve.
524
+ #
525
+ # Format:
526
+ # `projects/{project}/locations/{location}/backupPlans/{backup_plan}/revisions/{revision}`
527
+ class GetBackupPlanRevisionRequest
528
+ include ::Google::Protobuf::MessageExts
529
+ extend ::Google::Protobuf::MessageExts::ClassMethods
530
+ end
531
+
532
+ # The request message for getting a list of `BackupPlanRevision`.
533
+ # @!attribute [rw] parent
534
+ # @return [::String]
535
+ # Required. The project and location for which to retrieve
536
+ # `BackupPlanRevisions` information. Format:
537
+ # `projects/{project}/locations/{location}/backupPlans/{backup_plan}`. In
538
+ # Cloud BackupDR, locations map to GCP regions, for e.g. **us-central1**.
539
+ # @!attribute [rw] page_size
540
+ # @return [::Integer]
541
+ # Optional. The maximum number of `BackupPlans` to return in a single
542
+ # response. If not specified, a default value will be chosen by the service.
543
+ # Note that the response may include a partial list and a caller should
544
+ # only rely on the response's
545
+ # {::Google::Cloud::BackupDR::V1::ListBackupPlansResponse#next_page_token next_page_token}
546
+ # to determine if there are more instances left to be queried.
547
+ # @!attribute [rw] page_token
548
+ # @return [::String]
549
+ # Optional. The value of
550
+ # {::Google::Cloud::BackupDR::V1::ListBackupPlansResponse#next_page_token next_page_token}
551
+ # received from a previous `ListBackupPlans` call.
552
+ # Provide this to retrieve the subsequent page in a multi-page list of
553
+ # results. When paginating, all other parameters provided to
554
+ # `ListBackupPlans` must match the call that provided the page token.
555
+ class ListBackupPlanRevisionsRequest
556
+ include ::Google::Protobuf::MessageExts
557
+ extend ::Google::Protobuf::MessageExts::ClassMethods
558
+ end
559
+
560
+ # The response message for getting a list of `BackupPlanRevision`.
561
+ # @!attribute [rw] backup_plan_revisions
562
+ # @return [::Array<::Google::Cloud::BackupDR::V1::BackupPlanRevision>]
563
+ # The list of `BackupPlanRevisions` in the project for the specified
564
+ # location.
565
+ #
566
+ # If the `{location}` value in the request is "-", the response contains a
567
+ # list of resources from all locations. In case any location is unreachable,
568
+ # the response will only return backup plans in reachable locations and
569
+ # the 'unreachable' field will be populated with a list of unreachable
570
+ # locations.
571
+ # @!attribute [rw] next_page_token
572
+ # @return [::String]
573
+ # A token which may be sent as
574
+ # {::Google::Cloud::BackupDR::V1::ListBackupPlanRevisionsRequest#page_token page_token}
575
+ # in a subsequent `ListBackupPlanRevisions` call to retrieve the next page of
576
+ # results. If this field is omitted or empty, then there are no more results
577
+ # to return.
578
+ # @!attribute [rw] unreachable
579
+ # @return [::Array<::String>]
580
+ # Locations that could not be reached.
581
+ class ListBackupPlanRevisionsResponse
582
+ include ::Google::Protobuf::MessageExts
583
+ extend ::Google::Protobuf::MessageExts::ClassMethods
584
+ end
417
585
  end
418
586
  end
419
587
  end
@@ -34,8 +34,13 @@ module Google
34
34
  # applied
35
35
  # @!attribute [rw] resource
36
36
  # @return [::String]
37
- # Required. Immutable. Resource name of workload on which backupplan is
38
- # applied
37
+ # Required. Immutable. Resource name of workload on which the backup plan is
38
+ # applied.
39
+ #
40
+ # The format can either be the resource name (e.g.,
41
+ # "projects/my-project/zones/us-central1-a/instances/my-instance") or the
42
+ # full resource URI (e.g.,
43
+ # "https://www.googleapis.com/compute/v1/projects/my-project/zones/us-central1-a/instances/my-instance").
39
44
  # @!attribute [rw] backup_plan
40
45
  # @return [::String]
41
46
  # Required. Resource name of backup plan which needs to be applied on
@@ -58,6 +63,20 @@ module Google
58
63
  # Output only. Resource name of data source which will be used as storage
59
64
  # location for backups taken. Format :
60
65
  # projects/\\{project}/locations/\\{location}/backupVaults/\\{backupvault}/dataSources/\\{datasource}
66
+ # @!attribute [r] cloud_sql_instance_backup_plan_association_properties
67
+ # @return [::Google::Cloud::BackupDR::V1::CloudSqlInstanceBackupPlanAssociationProperties]
68
+ # Output only. Cloud SQL instance's backup plan association properties.
69
+ # @!attribute [r] backup_plan_revision_id
70
+ # @return [::String]
71
+ # Output only. The user friendly revision ID of the `BackupPlanRevision`.
72
+ #
73
+ # Example: v0, v1, v2, etc.
74
+ # @!attribute [r] backup_plan_revision_name
75
+ # @return [::String]
76
+ # Output only. The resource id of the `BackupPlanRevision`.
77
+ #
78
+ # Format:
79
+ # `projects/{project}/locations/{location}/backupPlans/{backup_plan}/revisions/{revision_id}`
61
80
  class BackupPlanAssociation
62
81
  include ::Google::Protobuf::MessageExts
63
82
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -78,6 +97,9 @@ module Google
78
97
 
79
98
  # The resource has been created but is not usable.
80
99
  INACTIVE = 4
100
+
101
+ # The resource is being updated.
102
+ UPDATING = 5
81
103
  end
82
104
  end
83
105
 
@@ -198,6 +220,66 @@ module Google
198
220
  extend ::Google::Protobuf::MessageExts::ClassMethods
199
221
  end
200
222
 
223
+ # Request for the FetchBackupPlanAssociationsForResourceType method.
224
+ # @!attribute [rw] parent
225
+ # @return [::String]
226
+ # Required. The parent resource name.
227
+ # Format: projects/\\{project}/locations/\\{location}
228
+ # @!attribute [rw] resource_type
229
+ # @return [::String]
230
+ # Required. The type of the GCP resource.
231
+ # Ex: sql.googleapis.com/Instance
232
+ # @!attribute [rw] page_size
233
+ # @return [::Integer]
234
+ # Optional. The maximum number of BackupPlanAssociations to return. The
235
+ # service may return fewer than this value. If unspecified, at most 50
236
+ # BackupPlanAssociations will be returned. The maximum value is 100; values
237
+ # above 100 will be coerced to 100.
238
+ # @!attribute [rw] page_token
239
+ # @return [::String]
240
+ # Optional. A page token, received from a previous call of
241
+ # `FetchBackupPlanAssociationsForResourceType`.
242
+ # Provide this to retrieve the subsequent page.
243
+ #
244
+ # When paginating, all other parameters provided to
245
+ # `FetchBackupPlanAssociationsForResourceType` must match
246
+ # the call that provided the page token.
247
+ # @!attribute [rw] filter
248
+ # @return [::String]
249
+ # Optional. A filter expression that filters the results fetched in the
250
+ # response. The expression must specify the field name, a comparison
251
+ # operator, and the value that you want to use for filtering. Supported
252
+ # fields:
253
+ # * resource
254
+ # * backup_plan
255
+ # * state
256
+ # * data_source
257
+ # * cloud_sql_instance_backup_plan_association_properties.instance_create_time
258
+ # @!attribute [rw] order_by
259
+ # @return [::String]
260
+ # Optional. A comma-separated list of fields to order by, sorted in ascending
261
+ # order. Use "desc" after a field name for descending.
262
+ #
263
+ # Supported fields:
264
+ # * name
265
+ class FetchBackupPlanAssociationsForResourceTypeRequest
266
+ include ::Google::Protobuf::MessageExts
267
+ extend ::Google::Protobuf::MessageExts::ClassMethods
268
+ end
269
+
270
+ # Response for the FetchBackupPlanAssociationsForResourceType method.
271
+ # @!attribute [r] backup_plan_associations
272
+ # @return [::Array<::Google::Cloud::BackupDR::V1::BackupPlanAssociation>]
273
+ # Output only. The BackupPlanAssociations from the specified parent.
274
+ # @!attribute [r] next_page_token
275
+ # @return [::String]
276
+ # Output only. A token, which can be sent as `page_token` to retrieve the
277
+ # next page. If this field is omitted, there are no subsequent pages.
278
+ class FetchBackupPlanAssociationsForResourceTypeResponse
279
+ include ::Google::Protobuf::MessageExts
280
+ extend ::Google::Protobuf::MessageExts::ClassMethods
281
+ end
282
+
201
283
  # Request message for getting a BackupPlanAssociation resource.
202
284
  # @!attribute [rw] name
203
285
  # @return [::String]
@@ -233,6 +315,39 @@ module Google
233
315
  extend ::Google::Protobuf::MessageExts::ClassMethods
234
316
  end
235
317
 
318
+ # Request message for updating a backup plan association.
319
+ # @!attribute [rw] backup_plan_association
320
+ # @return [::Google::Cloud::BackupDR::V1::BackupPlanAssociation]
321
+ # Required. The resource being updated
322
+ # @!attribute [rw] update_mask
323
+ # @return [::Google::Protobuf::FieldMask]
324
+ # Required. The list of fields to update.
325
+ # Field mask is used to specify the fields to be overwritten in the
326
+ # BackupPlanAssociation resource by the update.
327
+ # The fields specified in the update_mask are relative to the resource, not
328
+ # the full request. A field will be overwritten if it is in the mask. If the
329
+ # user does not provide a mask then the request will fail.
330
+ # Currently backup_plan_association.backup_plan is the only supported field.
331
+ # @!attribute [rw] request_id
332
+ # @return [::String]
333
+ # Optional. An optional request ID to identify requests. Specify a unique
334
+ # request ID so that if you must retry your request, the server will know to
335
+ # ignore the request if it has already been completed. The server will
336
+ # guarantee that for at least 60 minutes since the first request.
337
+ #
338
+ # For example, consider a situation where you make an initial request and t
339
+ # he request times out. If you make the request again with the same request
340
+ # ID, the server can check if original operation with the same request ID
341
+ # was received, and if so, will ignore the second request. This prevents
342
+ # clients from accidentally creating duplicate commitments.
343
+ #
344
+ # The request ID must be a valid UUID with the exception that zero UUID is
345
+ # not supported (00000000-0000-0000-0000-000000000000).
346
+ class UpdateBackupPlanAssociationRequest
347
+ include ::Google::Protobuf::MessageExts
348
+ extend ::Google::Protobuf::MessageExts::ClassMethods
349
+ end
350
+
236
351
  # Request message for triggering a backup.
237
352
  # @!attribute [rw] name
238
353
  # @return [::String]
@@ -124,6 +124,9 @@ module Google
124
124
 
125
125
  # The backup vault is experiencing an issue and might be unusable.
126
126
  ERROR = 4
127
+
128
+ # The backup vault is being updated.
129
+ UPDATING = 5
127
130
  end
128
131
 
129
132
  # Holds the access restriction for the backup vault.
@@ -200,6 +203,10 @@ module Google
200
203
  # The backed up resource is a backup appliance application.
201
204
  #
202
205
  # Note: The following fields are mutually exclusive: `data_source_backup_appliance_application`, `data_source_gcp_resource`. If a field in that set is populated, all other fields in the set will automatically be cleared.
206
+ # @!attribute [r] backup_blocked_by_vault_access_restriction
207
+ # @return [::Boolean]
208
+ # Output only. This field is set to true if the backup is blocked by vault
209
+ # access restriction.
203
210
  class DataSource
204
211
  include ::Google::Protobuf::MessageExts
205
212
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -294,6 +301,13 @@ module Google
294
301
  # @!attribute [rw] backup_plan_rules
295
302
  # @return [::Array<::String>]
296
303
  # The names of the backup plan rules which point to this backupvault
304
+ # @!attribute [rw] backup_plan_revision_name
305
+ # @return [::String]
306
+ # The name of the backup plan revision.
307
+ # @!attribute [rw] backup_plan_revision_id
308
+ # @return [::String]
309
+ # The user friendly id of the backup plan revision.
310
+ # E.g. v0, v1 etc.
297
311
  class GcpBackupConfig
298
312
  include ::Google::Protobuf::MessageExts
299
313
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -345,6 +359,20 @@ module Google
345
359
  # @return [::Google::Cloud::BackupDR::V1::ComputeInstanceDataSourceProperties]
346
360
  # ComputeInstanceDataSourceProperties has a subset of Compute Instance
347
361
  # properties that are useful at the Datasource level.
362
+ #
363
+ # Note: The following fields are mutually exclusive: `compute_instance_datasource_properties`, `cloud_sql_instance_datasource_properties`, `disk_datasource_properties`. If a field in that set is populated, all other fields in the set will automatically be cleared.
364
+ # @!attribute [r] cloud_sql_instance_datasource_properties
365
+ # @return [::Google::Cloud::BackupDR::V1::CloudSqlInstanceDataSourceProperties]
366
+ # Output only. CloudSqlInstanceDataSourceProperties has a subset of Cloud
367
+ # SQL Instance properties that are useful at the Datasource level.
368
+ #
369
+ # Note: The following fields are mutually exclusive: `cloud_sql_instance_datasource_properties`, `compute_instance_datasource_properties`, `disk_datasource_properties`. If a field in that set is populated, all other fields in the set will automatically be cleared.
370
+ # @!attribute [rw] disk_datasource_properties
371
+ # @return [::Google::Cloud::BackupDR::V1::DiskDataSourceProperties]
372
+ # DiskDataSourceProperties has a subset of Disk properties that are useful
373
+ # at the Datasource level.
374
+ #
375
+ # Note: The following fields are mutually exclusive: `disk_datasource_properties`, `compute_instance_datasource_properties`, `cloud_sql_instance_datasource_properties`. If a field in that set is populated, all other fields in the set will automatically be cleared.
348
376
  class DataSourceGcpResource
349
377
  include ::Google::Protobuf::MessageExts
350
378
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -494,12 +522,22 @@ module Google
494
522
  # @return [::Google::Cloud::BackupDR::V1::ComputeInstanceBackupProperties]
495
523
  # Output only. Compute Engine specific backup properties.
496
524
  #
497
- # Note: The following fields are mutually exclusive: `compute_instance_backup_properties`, `backup_appliance_backup_properties`. If a field in that set is populated, all other fields in the set will automatically be cleared.
525
+ # Note: The following fields are mutually exclusive: `compute_instance_backup_properties`, `cloud_sql_instance_backup_properties`, `backup_appliance_backup_properties`, `disk_backup_properties`. If a field in that set is populated, all other fields in the set will automatically be cleared.
526
+ # @!attribute [r] cloud_sql_instance_backup_properties
527
+ # @return [::Google::Cloud::BackupDR::V1::CloudSqlInstanceBackupProperties]
528
+ # Output only. Cloud SQL specific backup properties.
529
+ #
530
+ # Note: The following fields are mutually exclusive: `cloud_sql_instance_backup_properties`, `compute_instance_backup_properties`, `backup_appliance_backup_properties`, `disk_backup_properties`. If a field in that set is populated, all other fields in the set will automatically be cleared.
498
531
  # @!attribute [r] backup_appliance_backup_properties
499
532
  # @return [::Google::Cloud::BackupDR::V1::BackupApplianceBackupProperties]
500
533
  # Output only. Backup Appliance specific backup properties.
501
534
  #
502
- # Note: The following fields are mutually exclusive: `backup_appliance_backup_properties`, `compute_instance_backup_properties`. If a field in that set is populated, all other fields in the set will automatically be cleared.
535
+ # Note: The following fields are mutually exclusive: `backup_appliance_backup_properties`, `compute_instance_backup_properties`, `cloud_sql_instance_backup_properties`, `disk_backup_properties`. If a field in that set is populated, all other fields in the set will automatically be cleared.
536
+ # @!attribute [r] disk_backup_properties
537
+ # @return [::Google::Cloud::BackupDR::V1::DiskBackupProperties]
538
+ # Output only. Disk specific backup properties.
539
+ #
540
+ # Note: The following fields are mutually exclusive: `disk_backup_properties`, `compute_instance_backup_properties`, `cloud_sql_instance_backup_properties`, `backup_appliance_backup_properties`. If a field in that set is populated, all other fields in the set will automatically be cleared.
503
541
  # @!attribute [r] backup_type
504
542
  # @return [::Google::Cloud::BackupDR::V1::Backup::BackupType]
505
543
  # Output only. Type of the backup, unspecified, scheduled or ondemand.
@@ -509,6 +547,12 @@ module Google
509
547
  # @!attribute [r] resource_size_bytes
510
548
  # @return [::Integer]
511
549
  # Output only. source resource size in bytes at the time of the backup.
550
+ # @!attribute [r] satisfies_pzs
551
+ # @return [::Boolean]
552
+ # Optional. Output only. Reserved for future use.
553
+ # @!attribute [r] satisfies_pzi
554
+ # @return [::Boolean]
555
+ # Optional. Output only. Reserved for future use.
512
556
  class Backup
513
557
  include ::Google::Protobuf::MessageExts
514
558
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -525,6 +569,16 @@ module Google
525
569
  # @return [::String]
526
570
  # The rule id of the backup plan which triggered this backup in case of
527
571
  # scheduled backup or used for
572
+ # @!attribute [rw] backup_plan_revision_name
573
+ # @return [::String]
574
+ # Resource name of the backup plan revision which triggered this backup in
575
+ # case of scheduled backup or used for on demand backup.
576
+ # Format:
577
+ # projects/\\{project}/locations/\\{location}/backupPlans/\\{backupPlanId}/revisions/\\{revisionId}
578
+ # @!attribute [rw] backup_plan_revision_id
579
+ # @return [::String]
580
+ # The user friendly id of the backup plan revision which triggered this
581
+ # backup in case of scheduled backup or used for on demand backup.
528
582
  class GCPBackupPlanInfo
529
583
  include ::Google::Protobuf::MessageExts
530
584
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -555,6 +609,9 @@ module Google
555
609
 
556
610
  # The backup is experiencing an issue and might be unusable.
557
611
  ERROR = 4
612
+
613
+ # The backup is being uploaded.
614
+ UPLOADING = 5
558
615
  end
559
616
 
560
617
  # Type of the backup, scheduled or ondemand.
@@ -567,6 +624,9 @@ module Google
567
624
 
568
625
  # On demand backup.
569
626
  ON_DEMAND = 2
627
+
628
+ # Operational backup.
629
+ ON_DEMAND_OPERATIONAL = 3
570
630
  end
571
631
  end
572
632
 
@@ -756,6 +816,10 @@ module Google
756
816
  # @return [::Boolean]
757
817
  # Optional. If set to true, will not check plan duration against backup vault
758
818
  # enforcement duration.
819
+ # @!attribute [rw] force_update_access_restriction
820
+ # @return [::Boolean]
821
+ # Optional. If set to true, we will force update access restriction even if
822
+ # some non compliant data sources are present. The default is 'false'.
759
823
  class UpdateBackupVaultRequest
760
824
  include ::Google::Protobuf::MessageExts
761
825
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -1044,9 +1108,28 @@ module Google
1044
1108
  # @!attribute [rw] compute_instance_target_environment
1045
1109
  # @return [::Google::Cloud::BackupDR::V1::ComputeInstanceTargetEnvironment]
1046
1110
  # Compute Engine target environment to be used during restore.
1111
+ #
1112
+ # Note: The following fields are mutually exclusive: `compute_instance_target_environment`, `disk_target_environment`, `region_disk_target_environment`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1113
+ # @!attribute [rw] disk_target_environment
1114
+ # @return [::Google::Cloud::BackupDR::V1::DiskTargetEnvironment]
1115
+ # Disk target environment to be used during restore.
1116
+ #
1117
+ # Note: The following fields are mutually exclusive: `disk_target_environment`, `compute_instance_target_environment`, `region_disk_target_environment`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1118
+ # @!attribute [rw] region_disk_target_environment
1119
+ # @return [::Google::Cloud::BackupDR::V1::RegionDiskTargetEnvironment]
1120
+ # Region disk target environment to be used during restore.
1121
+ #
1122
+ # Note: The following fields are mutually exclusive: `region_disk_target_environment`, `compute_instance_target_environment`, `disk_target_environment`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1047
1123
  # @!attribute [rw] compute_instance_restore_properties
1048
1124
  # @return [::Google::Cloud::BackupDR::V1::ComputeInstanceRestoreProperties]
1049
1125
  # Compute Engine instance properties to be overridden during restore.
1126
+ #
1127
+ # Note: The following fields are mutually exclusive: `compute_instance_restore_properties`, `disk_restore_properties`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1128
+ # @!attribute [rw] disk_restore_properties
1129
+ # @return [::Google::Cloud::BackupDR::V1::DiskRestoreProperties]
1130
+ # Disk properties to be overridden during restore.
1131
+ #
1132
+ # Note: The following fields are mutually exclusive: `disk_restore_properties`, `compute_instance_restore_properties`. If a field in that set is populated, all other fields in the set will automatically be cleared.
1050
1133
  class RestoreBackupRequest
1051
1134
  include ::Google::Protobuf::MessageExts
1052
1135
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -0,0 +1,125 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2025 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
+ # CloudSqlInstanceDataSourceProperties represents the properties of a
25
+ # Cloud SQL resource that are stored in the DataSource.
26
+ # @!attribute [r] name
27
+ # @return [::String]
28
+ # Output only. Name of the Cloud SQL instance backed up by the datasource.
29
+ # Format:
30
+ # projects/\\{project}/instances/\\{instance}
31
+ # @!attribute [r] database_installed_version
32
+ # @return [::String]
33
+ # Output only. The installed database version of the Cloud SQL instance.
34
+ # @!attribute [r] instance_create_time
35
+ # @return [::Google::Protobuf::Timestamp]
36
+ # Output only. The instance creation timestamp.
37
+ # @!attribute [r] instance_tier
38
+ # @return [::String]
39
+ # Output only. The tier (or machine type) for this instance. Example:
40
+ # `db-custom-1-3840`
41
+ class CloudSqlInstanceDataSourceProperties
42
+ include ::Google::Protobuf::MessageExts
43
+ extend ::Google::Protobuf::MessageExts::ClassMethods
44
+ end
45
+
46
+ # CloudSqlInstanceBackupProperties represents Cloud SQL Instance
47
+ # Backup properties.
48
+ # @!attribute [r] database_installed_version
49
+ # @return [::String]
50
+ # Output only. The installed database version of the Cloud SQL instance
51
+ # when the backup was taken.
52
+ # @!attribute [r] final_backup
53
+ # @return [::Boolean]
54
+ # Output only. Whether the backup is a final backup.
55
+ # @!attribute [r] source_instance
56
+ # @return [::String]
57
+ # Output only. The source instance of the backup.
58
+ # Format:
59
+ # projects/\\{project}/instances/\\{instance}
60
+ # @!attribute [r] instance_tier
61
+ # @return [::String]
62
+ # Output only. The tier (or machine type) for this instance. Example:
63
+ # `db-custom-1-3840`
64
+ class CloudSqlInstanceBackupProperties
65
+ include ::Google::Protobuf::MessageExts
66
+ extend ::Google::Protobuf::MessageExts::ClassMethods
67
+ end
68
+
69
+ # CloudSqlInstanceDataSourceReferenceProperties represents the properties of a
70
+ # Cloud SQL resource that are stored in the DataSourceReference.
71
+ # @!attribute [r] name
72
+ # @return [::String]
73
+ # Output only. Name of the Cloud SQL instance backed up by the datasource.
74
+ # Format:
75
+ # projects/\\{project}/instances/\\{instance}
76
+ # @!attribute [r] database_installed_version
77
+ # @return [::String]
78
+ # Output only. The installed database version of the Cloud SQL instance.
79
+ # @!attribute [r] instance_create_time
80
+ # @return [::Google::Protobuf::Timestamp]
81
+ # Output only. The instance creation timestamp.
82
+ # @!attribute [r] instance_tier
83
+ # @return [::String]
84
+ # Output only. The tier (or machine type) for this instance. Example:
85
+ # `db-custom-1-3840`
86
+ class CloudSqlInstanceDataSourceReferenceProperties
87
+ include ::Google::Protobuf::MessageExts
88
+ extend ::Google::Protobuf::MessageExts::ClassMethods
89
+ end
90
+
91
+ # CloudSqlInstanceInitializationConfig contains the configuration for
92
+ # initializing a Cloud SQL instance.
93
+ # @!attribute [rw] edition
94
+ # @return [::Google::Cloud::BackupDR::V1::CloudSqlInstanceInitializationConfig::Edition]
95
+ # Required. The edition of the Cloud SQL instance.
96
+ class CloudSqlInstanceInitializationConfig
97
+ include ::Google::Protobuf::MessageExts
98
+ extend ::Google::Protobuf::MessageExts::ClassMethods
99
+
100
+ # The edition of the Cloud SQL instance. For details, see
101
+ # https://cloud.google.com/sql/docs/editions-intro.
102
+ module Edition
103
+ # Unspecified edition.
104
+ EDITION_UNSPECIFIED = 0
105
+
106
+ # Enterprise edition.
107
+ ENTERPRISE = 1
108
+
109
+ # Enterprise Plus edition.
110
+ ENTERPRISE_PLUS = 2
111
+ end
112
+ end
113
+
114
+ # Cloud SQL instance's BPA properties.
115
+ # @!attribute [r] instance_create_time
116
+ # @return [::Google::Protobuf::Timestamp]
117
+ # Output only. The time when the instance was created.
118
+ class CloudSqlInstanceBackupPlanAssociationProperties
119
+ include ::Google::Protobuf::MessageExts
120
+ extend ::Google::Protobuf::MessageExts::ClassMethods
121
+ end
122
+ end
123
+ end
124
+ end
125
+ end