google-apis-backupdr_v1 0.10.0 → 0.12.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +8 -0
- data/lib/google/apis/backupdr_v1/classes.rb +2150 -137
- data/lib/google/apis/backupdr_v1/gem_version.rb +2 -2
- data/lib/google/apis/backupdr_v1/representations.rb +748 -0
- data/lib/google/apis/backupdr_v1/service.rb +855 -9
- metadata +3 -3
@@ -22,6 +22,273 @@ module Google
|
|
22
22
|
module Apis
|
23
23
|
module BackupdrV1
|
24
24
|
|
25
|
+
# request message for AbandonBackup.
|
26
|
+
class AbandonBackupRequest
|
27
|
+
include Google::Apis::Core::Hashable
|
28
|
+
|
29
|
+
# Optional. An optional request ID to identify requests. Specify a unique
|
30
|
+
# request ID so that if you must retry your request, the server will know to
|
31
|
+
# ignore the request if it has already been completed. The server will guarantee
|
32
|
+
# that for at least 60 minutes since the first request. For example, consider a
|
33
|
+
# situation where you make an initial request and the request times out. If you
|
34
|
+
# make the request again with the same request ID, the server can check if
|
35
|
+
# original operation with the same request ID was received, and if so, will
|
36
|
+
# ignore the second request. This prevents clients from accidentally creating
|
37
|
+
# duplicate commitments. The request ID must be a valid UUID with the exception
|
38
|
+
# that zero UUID is not supported (00000000-0000-0000-0000-000000000000).
|
39
|
+
# Corresponds to the JSON property `requestId`
|
40
|
+
# @return [String]
|
41
|
+
attr_accessor :request_id
|
42
|
+
|
43
|
+
def initialize(**args)
|
44
|
+
update!(**args)
|
45
|
+
end
|
46
|
+
|
47
|
+
# Update properties of this object
|
48
|
+
def update!(**args)
|
49
|
+
@request_id = args[:request_id] if args.key?(:request_id)
|
50
|
+
end
|
51
|
+
end
|
52
|
+
|
53
|
+
# A specification of the type and number of accelerator cards attached to the
|
54
|
+
# instance.
|
55
|
+
class AcceleratorConfig
|
56
|
+
include Google::Apis::Core::Hashable
|
57
|
+
|
58
|
+
# Optional. The number of the guest accelerator cards exposed to this instance.
|
59
|
+
# Corresponds to the JSON property `acceleratorCount`
|
60
|
+
# @return [Fixnum]
|
61
|
+
attr_accessor :accelerator_count
|
62
|
+
|
63
|
+
# Optional. Full or partial URL of the accelerator type resource to attach to
|
64
|
+
# this instance.
|
65
|
+
# Corresponds to the JSON property `acceleratorType`
|
66
|
+
# @return [String]
|
67
|
+
attr_accessor :accelerator_type
|
68
|
+
|
69
|
+
def initialize(**args)
|
70
|
+
update!(**args)
|
71
|
+
end
|
72
|
+
|
73
|
+
# Update properties of this object
|
74
|
+
def update!(**args)
|
75
|
+
@accelerator_count = args[:accelerator_count] if args.key?(:accelerator_count)
|
76
|
+
@accelerator_type = args[:accelerator_type] if args.key?(:accelerator_type)
|
77
|
+
end
|
78
|
+
end
|
79
|
+
|
80
|
+
# An access configuration attached to an instance's network interface. Only one
|
81
|
+
# access config per instance is supported.
|
82
|
+
class AccessConfig
|
83
|
+
include Google::Apis::Core::Hashable
|
84
|
+
|
85
|
+
# Optional. The external IPv6 address of this access configuration.
|
86
|
+
# Corresponds to the JSON property `externalIpv6`
|
87
|
+
# @return [String]
|
88
|
+
attr_accessor :external_ipv6
|
89
|
+
|
90
|
+
# Optional. The prefix length of the external IPv6 range.
|
91
|
+
# Corresponds to the JSON property `externalIpv6PrefixLength`
|
92
|
+
# @return [Fixnum]
|
93
|
+
attr_accessor :external_ipv6_prefix_length
|
94
|
+
|
95
|
+
# Optional. The name of this access configuration.
|
96
|
+
# Corresponds to the JSON property `name`
|
97
|
+
# @return [String]
|
98
|
+
attr_accessor :name
|
99
|
+
|
100
|
+
# Optional. The external IP address of this access configuration.
|
101
|
+
# Corresponds to the JSON property `natIP`
|
102
|
+
# @return [String]
|
103
|
+
attr_accessor :nat_ip
|
104
|
+
|
105
|
+
# Optional. This signifies the networking tier used for configuring this access
|
106
|
+
# Corresponds to the JSON property `networkTier`
|
107
|
+
# @return [String]
|
108
|
+
attr_accessor :network_tier
|
109
|
+
|
110
|
+
# Optional. The DNS domain name for the public PTR record.
|
111
|
+
# Corresponds to the JSON property `publicPtrDomainName`
|
112
|
+
# @return [String]
|
113
|
+
attr_accessor :public_ptr_domain_name
|
114
|
+
|
115
|
+
# Optional. Specifies whether a public DNS 'PTR' record should be created to map
|
116
|
+
# the external IP address of the instance to a DNS domain name.
|
117
|
+
# Corresponds to the JSON property `setPublicPtr`
|
118
|
+
# @return [Boolean]
|
119
|
+
attr_accessor :set_public_ptr
|
120
|
+
alias_method :set_public_ptr?, :set_public_ptr
|
121
|
+
|
122
|
+
# Optional. In accessConfigs (IPv4), the default and only option is
|
123
|
+
# ONE_TO_ONE_NAT. In ipv6AccessConfigs, the default and only option is
|
124
|
+
# DIRECT_IPV6.
|
125
|
+
# Corresponds to the JSON property `type`
|
126
|
+
# @return [String]
|
127
|
+
attr_accessor :type
|
128
|
+
|
129
|
+
def initialize(**args)
|
130
|
+
update!(**args)
|
131
|
+
end
|
132
|
+
|
133
|
+
# Update properties of this object
|
134
|
+
def update!(**args)
|
135
|
+
@external_ipv6 = args[:external_ipv6] if args.key?(:external_ipv6)
|
136
|
+
@external_ipv6_prefix_length = args[:external_ipv6_prefix_length] if args.key?(:external_ipv6_prefix_length)
|
137
|
+
@name = args[:name] if args.key?(:name)
|
138
|
+
@nat_ip = args[:nat_ip] if args.key?(:nat_ip)
|
139
|
+
@network_tier = args[:network_tier] if args.key?(:network_tier)
|
140
|
+
@public_ptr_domain_name = args[:public_ptr_domain_name] if args.key?(:public_ptr_domain_name)
|
141
|
+
@set_public_ptr = args[:set_public_ptr] if args.key?(:set_public_ptr)
|
142
|
+
@type = args[:type] if args.key?(:type)
|
143
|
+
end
|
144
|
+
end
|
145
|
+
|
146
|
+
# An alias IP range attached to an instance's network interface.
|
147
|
+
class AliasIpRange
|
148
|
+
include Google::Apis::Core::Hashable
|
149
|
+
|
150
|
+
# Optional. The IP alias ranges to allocate for this interface.
|
151
|
+
# Corresponds to the JSON property `ipCidrRange`
|
152
|
+
# @return [String]
|
153
|
+
attr_accessor :ip_cidr_range
|
154
|
+
|
155
|
+
# Optional. The name of a subnetwork secondary IP range from which to allocate
|
156
|
+
# an IP alias range. If not specified, the primary range of the subnetwork is
|
157
|
+
# used.
|
158
|
+
# Corresponds to the JSON property `subnetworkRangeName`
|
159
|
+
# @return [String]
|
160
|
+
attr_accessor :subnetwork_range_name
|
161
|
+
|
162
|
+
def initialize(**args)
|
163
|
+
update!(**args)
|
164
|
+
end
|
165
|
+
|
166
|
+
# Update properties of this object
|
167
|
+
def update!(**args)
|
168
|
+
@ip_cidr_range = args[:ip_cidr_range] if args.key?(:ip_cidr_range)
|
169
|
+
@subnetwork_range_name = args[:subnetwork_range_name] if args.key?(:subnetwork_range_name)
|
170
|
+
end
|
171
|
+
end
|
172
|
+
|
173
|
+
# An instance-attached disk resource.
|
174
|
+
class AttachedDisk
|
175
|
+
include Google::Apis::Core::Hashable
|
176
|
+
|
177
|
+
# Optional. Specifies whether the disk will be auto-deleted when the instance is
|
178
|
+
# deleted (but not when the disk is detached from the instance).
|
179
|
+
# Corresponds to the JSON property `autoDelete`
|
180
|
+
# @return [Boolean]
|
181
|
+
attr_accessor :auto_delete
|
182
|
+
alias_method :auto_delete?, :auto_delete
|
183
|
+
|
184
|
+
# Optional. Indicates that this is a boot disk. The virtual machine will use the
|
185
|
+
# first partition of the disk for its root filesystem.
|
186
|
+
# Corresponds to the JSON property `boot`
|
187
|
+
# @return [Boolean]
|
188
|
+
attr_accessor :boot
|
189
|
+
alias_method :boot?, :boot
|
190
|
+
|
191
|
+
# Optional. This is used as an identifier for the disks. This is the unique name
|
192
|
+
# has to provided to modify disk parameters like disk_name and replica_zones (in
|
193
|
+
# case of RePDs)
|
194
|
+
# Corresponds to the JSON property `deviceName`
|
195
|
+
# @return [String]
|
196
|
+
attr_accessor :device_name
|
197
|
+
|
198
|
+
# A customer-supplied encryption key.
|
199
|
+
# Corresponds to the JSON property `diskEncryptionKey`
|
200
|
+
# @return [Google::Apis::BackupdrV1::CustomerEncryptionKey]
|
201
|
+
attr_accessor :disk_encryption_key
|
202
|
+
|
203
|
+
# Optional. Specifies the disk interface to use for attaching this disk.
|
204
|
+
# Corresponds to the JSON property `diskInterface`
|
205
|
+
# @return [String]
|
206
|
+
attr_accessor :disk_interface
|
207
|
+
|
208
|
+
# Optional. The size of the disk in GB.
|
209
|
+
# Corresponds to the JSON property `diskSizeGb`
|
210
|
+
# @return [Fixnum]
|
211
|
+
attr_accessor :disk_size_gb
|
212
|
+
|
213
|
+
# Optional. Specifies the type of the disk.
|
214
|
+
# Corresponds to the JSON property `diskType`
|
215
|
+
# @return [String]
|
216
|
+
attr_accessor :disk_type
|
217
|
+
|
218
|
+
# Optional. Output only. The URI of the disk type resource. For example:
|
219
|
+
# projects/project/zones/zone/diskTypes/pd-standard or pd-ssd
|
220
|
+
# Corresponds to the JSON property `diskTypeUri`
|
221
|
+
# @return [String]
|
222
|
+
attr_accessor :disk_type_uri
|
223
|
+
|
224
|
+
# Optional. A list of features to enable on the guest operating system.
|
225
|
+
# Applicable only for bootable images.
|
226
|
+
# Corresponds to the JSON property `guestOsFeature`
|
227
|
+
# @return [Array<Google::Apis::BackupdrV1::GuestOsFeature>]
|
228
|
+
attr_accessor :guest_os_feature
|
229
|
+
|
230
|
+
# Optional. A zero-based index to this disk, where 0 is reserved for the boot
|
231
|
+
# disk.
|
232
|
+
# Corresponds to the JSON property `index`
|
233
|
+
# @return [Fixnum]
|
234
|
+
attr_accessor :index
|
235
|
+
|
236
|
+
# Specifies the parameters to initialize this disk.
|
237
|
+
# Corresponds to the JSON property `initializeParams`
|
238
|
+
# @return [Google::Apis::BackupdrV1::InitializeParams]
|
239
|
+
attr_accessor :initialize_params
|
240
|
+
|
241
|
+
# Optional. Type of the resource.
|
242
|
+
# Corresponds to the JSON property `kind`
|
243
|
+
# @return [String]
|
244
|
+
attr_accessor :kind
|
245
|
+
|
246
|
+
# Optional. Any valid publicly visible licenses.
|
247
|
+
# Corresponds to the JSON property `license`
|
248
|
+
# @return [Array<String>]
|
249
|
+
attr_accessor :license
|
250
|
+
|
251
|
+
# Optional. The mode in which to attach this disk.
|
252
|
+
# Corresponds to the JSON property `mode`
|
253
|
+
# @return [String]
|
254
|
+
attr_accessor :mode
|
255
|
+
|
256
|
+
# Optional. Output only. The state of the disk.
|
257
|
+
# Corresponds to the JSON property `savedState`
|
258
|
+
# @return [String]
|
259
|
+
attr_accessor :saved_state
|
260
|
+
|
261
|
+
# Optional. Specifies a valid partial or full URL to an existing Persistent Disk
|
262
|
+
# resource.
|
263
|
+
# Corresponds to the JSON property `source`
|
264
|
+
# @return [String]
|
265
|
+
attr_accessor :source
|
266
|
+
|
267
|
+
def initialize(**args)
|
268
|
+
update!(**args)
|
269
|
+
end
|
270
|
+
|
271
|
+
# Update properties of this object
|
272
|
+
def update!(**args)
|
273
|
+
@auto_delete = args[:auto_delete] if args.key?(:auto_delete)
|
274
|
+
@boot = args[:boot] if args.key?(:boot)
|
275
|
+
@device_name = args[:device_name] if args.key?(:device_name)
|
276
|
+
@disk_encryption_key = args[:disk_encryption_key] if args.key?(:disk_encryption_key)
|
277
|
+
@disk_interface = args[:disk_interface] if args.key?(:disk_interface)
|
278
|
+
@disk_size_gb = args[:disk_size_gb] if args.key?(:disk_size_gb)
|
279
|
+
@disk_type = args[:disk_type] if args.key?(:disk_type)
|
280
|
+
@disk_type_uri = args[:disk_type_uri] if args.key?(:disk_type_uri)
|
281
|
+
@guest_os_feature = args[:guest_os_feature] if args.key?(:guest_os_feature)
|
282
|
+
@index = args[:index] if args.key?(:index)
|
283
|
+
@initialize_params = args[:initialize_params] if args.key?(:initialize_params)
|
284
|
+
@kind = args[:kind] if args.key?(:kind)
|
285
|
+
@license = args[:license] if args.key?(:license)
|
286
|
+
@mode = args[:mode] if args.key?(:mode)
|
287
|
+
@saved_state = args[:saved_state] if args.key?(:saved_state)
|
288
|
+
@source = args[:source] if args.key?(:source)
|
289
|
+
end
|
290
|
+
end
|
291
|
+
|
25
292
|
# Specifies the audit configuration for a service. The configuration determines
|
26
293
|
# which permission types are logged, and what identities, if any, are exempted
|
27
294
|
# from logging. An AuditConfig must have one or more AuditLogConfigs. If there
|
@@ -93,94 +360,99 @@ module Google
|
|
93
360
|
end
|
94
361
|
end
|
95
362
|
|
96
|
-
#
|
97
|
-
class
|
363
|
+
# Message describing a Backup object.
|
364
|
+
class Backup
|
98
365
|
include Google::Apis::Core::Hashable
|
99
366
|
|
100
|
-
#
|
101
|
-
#
|
102
|
-
#
|
103
|
-
#
|
104
|
-
|
105
|
-
# Requestor is owner" description: "Determines if requestor is the document
|
106
|
-
# owner" expression: "document.owner == request.auth.claims.email" Example (
|
107
|
-
# Logic): title: "Public documents" description: "Determine whether the document
|
108
|
-
# should be publicly visible" expression: "document.type != 'private' &&
|
109
|
-
# document.type != 'internal'" Example (Data Manipulation): title: "Notification
|
110
|
-
# string" description: "Create a notification string with a timestamp."
|
111
|
-
# expression: "'New message received at ' + string(document.create_time)" The
|
112
|
-
# exact variables and functions that may be referenced within an expression are
|
113
|
-
# determined by the service that evaluates it. See the service documentation for
|
114
|
-
# additional information.
|
115
|
-
# Corresponds to the JSON property `condition`
|
116
|
-
# @return [Google::Apis::BackupdrV1::Expr]
|
117
|
-
attr_accessor :condition
|
367
|
+
# BackupApplianceBackupProperties represents BackupDR backup appliance's
|
368
|
+
# properties.
|
369
|
+
# Corresponds to the JSON property `backupApplianceBackupProperties`
|
370
|
+
# @return [Google::Apis::BackupdrV1::BackupApplianceBackupProperties]
|
371
|
+
attr_accessor :backup_appliance_backup_properties
|
118
372
|
|
119
|
-
#
|
120
|
-
#
|
121
|
-
#
|
122
|
-
|
123
|
-
# anyone who is authenticated with a Google account or a service account. Does
|
124
|
-
# not include identities that come from external identity providers (IdPs)
|
125
|
-
# through identity federation. * `user:`emailid``: An email address that
|
126
|
-
# represents a specific Google account. For example, `alice@example.com` . * `
|
127
|
-
# serviceAccount:`emailid``: An email address that represents a Google service
|
128
|
-
# account. For example, `my-other-app@appspot.gserviceaccount.com`. * `
|
129
|
-
# serviceAccount:`projectid`.svc.id.goog[`namespace`/`kubernetes-sa`]`: An
|
130
|
-
# identifier for a [Kubernetes service account](https://cloud.google.com/
|
131
|
-
# kubernetes-engine/docs/how-to/kubernetes-service-accounts). For example, `my-
|
132
|
-
# project.svc.id.goog[my-namespace/my-kubernetes-sa]`. * `group:`emailid``: An
|
133
|
-
# email address that represents a Google group. For example, `admins@example.com`
|
134
|
-
# . * `domain:`domain``: The G Suite domain (primary) that represents all the
|
135
|
-
# users of that domain. For example, `google.com` or `example.com`. * `principal:
|
136
|
-
# //iam.googleapis.com/locations/global/workforcePools/`pool_id`/subject/`
|
137
|
-
# subject_attribute_value``: A single identity in a workforce identity pool. * `
|
138
|
-
# principalSet://iam.googleapis.com/locations/global/workforcePools/`pool_id`/
|
139
|
-
# group/`group_id``: All workforce identities in a group. * `principalSet://iam.
|
140
|
-
# googleapis.com/locations/global/workforcePools/`pool_id`/attribute.`
|
141
|
-
# attribute_name`/`attribute_value``: All workforce identities with a specific
|
142
|
-
# attribute value. * `principalSet://iam.googleapis.com/locations/global/
|
143
|
-
# workforcePools/`pool_id`/*`: All identities in a workforce identity pool. * `
|
144
|
-
# principal://iam.googleapis.com/projects/`project_number`/locations/global/
|
145
|
-
# workloadIdentityPools/`pool_id`/subject/`subject_attribute_value``: A single
|
146
|
-
# identity in a workload identity pool. * `principalSet://iam.googleapis.com/
|
147
|
-
# projects/`project_number`/locations/global/workloadIdentityPools/`pool_id`/
|
148
|
-
# group/`group_id``: A workload identity pool group. * `principalSet://iam.
|
149
|
-
# googleapis.com/projects/`project_number`/locations/global/
|
150
|
-
# workloadIdentityPools/`pool_id`/attribute.`attribute_name`/`attribute_value``:
|
151
|
-
# All identities in a workload identity pool with a certain attribute. * `
|
152
|
-
# principalSet://iam.googleapis.com/projects/`project_number`/locations/global/
|
153
|
-
# workloadIdentityPools/`pool_id`/*`: All identities in a workload identity pool.
|
154
|
-
# * `deleted:user:`emailid`?uid=`uniqueid``: An email address (plus unique
|
155
|
-
# identifier) representing a user that has been recently deleted. For example, `
|
156
|
-
# alice@example.com?uid=123456789012345678901`. If the user is recovered, this
|
157
|
-
# value reverts to `user:`emailid`` and the recovered user retains the role in
|
158
|
-
# the binding. * `deleted:serviceAccount:`emailid`?uid=`uniqueid``: An email
|
159
|
-
# address (plus unique identifier) representing a service account that has been
|
160
|
-
# recently deleted. For example, `my-other-app@appspot.gserviceaccount.com?uid=
|
161
|
-
# 123456789012345678901`. If the service account is undeleted, this value
|
162
|
-
# reverts to `serviceAccount:`emailid`` and the undeleted service account
|
163
|
-
# retains the role in the binding. * `deleted:group:`emailid`?uid=`uniqueid``:
|
164
|
-
# An email address (plus unique identifier) representing a Google group that has
|
165
|
-
# been recently deleted. For example, `admins@example.com?uid=
|
166
|
-
# 123456789012345678901`. If the group is recovered, this value reverts to `
|
167
|
-
# group:`emailid`` and the recovered group retains the role in the binding. * `
|
168
|
-
# deleted:principal://iam.googleapis.com/locations/global/workforcePools/`
|
169
|
-
# pool_id`/subject/`subject_attribute_value``: Deleted single identity in a
|
170
|
-
# workforce identity pool. For example, `deleted:principal://iam.googleapis.com/
|
171
|
-
# locations/global/workforcePools/my-pool-id/subject/my-subject-attribute-value`.
|
172
|
-
# Corresponds to the JSON property `members`
|
173
|
-
# @return [Array<String>]
|
174
|
-
attr_accessor :members
|
373
|
+
# Optional. The list of BackupLocks taken by the accessor Backup Appliance.
|
374
|
+
# Corresponds to the JSON property `backupApplianceLocks`
|
375
|
+
# @return [Array<Google::Apis::BackupdrV1::BackupLock>]
|
376
|
+
attr_accessor :backup_appliance_locks
|
175
377
|
|
176
|
-
#
|
177
|
-
#
|
178
|
-
# roles and permissions, see the [IAM documentation](https://cloud.google.com/
|
179
|
-
# iam/docs/roles-overview). For a list of the available pre-defined roles, see [
|
180
|
-
# here](https://cloud.google.com/iam/docs/understanding-roles).
|
181
|
-
# Corresponds to the JSON property `role`
|
378
|
+
#
|
379
|
+
# Corresponds to the JSON property `backupType`
|
182
380
|
# @return [String]
|
183
|
-
attr_accessor :
|
381
|
+
attr_accessor :backup_type
|
382
|
+
|
383
|
+
# ComputeInstanceBackupProperties represents Compute Engine instance backup
|
384
|
+
# properties.
|
385
|
+
# Corresponds to the JSON property `computeInstanceBackupProperties`
|
386
|
+
# @return [Google::Apis::BackupdrV1::ComputeInstanceBackupProperties]
|
387
|
+
attr_accessor :compute_instance_backup_properties
|
388
|
+
|
389
|
+
# Output only. The point in time when this backup was captured from the source.
|
390
|
+
# Corresponds to the JSON property `consistencyTime`
|
391
|
+
# @return [String]
|
392
|
+
attr_accessor :consistency_time
|
393
|
+
|
394
|
+
# Output only. The time when the instance was created.
|
395
|
+
# Corresponds to the JSON property `createTime`
|
396
|
+
# @return [String]
|
397
|
+
attr_accessor :create_time
|
398
|
+
|
399
|
+
# Output only. The description of the Backup instance (2048 characters or less).
|
400
|
+
# Corresponds to the JSON property `description`
|
401
|
+
# @return [String]
|
402
|
+
attr_accessor :description
|
403
|
+
|
404
|
+
# Optional. The backup can not be deleted before this time.
|
405
|
+
# Corresponds to the JSON property `enforcedRetentionEndTime`
|
406
|
+
# @return [String]
|
407
|
+
attr_accessor :enforced_retention_end_time
|
408
|
+
|
409
|
+
# Optional. Server specified ETag to prevent updates from overwriting each other.
|
410
|
+
# Corresponds to the JSON property `etag`
|
411
|
+
# @return [String]
|
412
|
+
attr_accessor :etag
|
413
|
+
|
414
|
+
# Optional. When this backup is automatically expired.
|
415
|
+
# Corresponds to the JSON property `expireTime`
|
416
|
+
# @return [String]
|
417
|
+
attr_accessor :expire_time
|
418
|
+
|
419
|
+
# GCPBackupPlanInfo captures the plan configuration details of Google Cloud
|
420
|
+
# resources at the time of backup.
|
421
|
+
# Corresponds to the JSON property `gcpBackupPlanInfo`
|
422
|
+
# @return [Google::Apis::BackupdrV1::GcpBackupPlanInfo]
|
423
|
+
attr_accessor :gcp_backup_plan_info
|
424
|
+
|
425
|
+
# Optional. Resource labels to represent user provided metadata. No labels
|
426
|
+
# currently defined.
|
427
|
+
# Corresponds to the JSON property `labels`
|
428
|
+
# @return [Hash<String,String>]
|
429
|
+
attr_accessor :labels
|
430
|
+
|
431
|
+
# Output only. Name of the resource.
|
432
|
+
# Corresponds to the JSON property `name`
|
433
|
+
# @return [String]
|
434
|
+
attr_accessor :name
|
435
|
+
|
436
|
+
# Output only. source resource size in bytes at the time of the backup.
|
437
|
+
# Corresponds to the JSON property `resourceSizeBytes`
|
438
|
+
# @return [Fixnum]
|
439
|
+
attr_accessor :resource_size_bytes
|
440
|
+
|
441
|
+
# Output only. The list of BackupLocks taken by the service to prevent the
|
442
|
+
# deletion of the backup.
|
443
|
+
# Corresponds to the JSON property `serviceLocks`
|
444
|
+
# @return [Array<Google::Apis::BackupdrV1::BackupLock>]
|
445
|
+
attr_accessor :service_locks
|
446
|
+
|
447
|
+
# Output only. The Backup resource instance state.
|
448
|
+
# Corresponds to the JSON property `state`
|
449
|
+
# @return [String]
|
450
|
+
attr_accessor :state
|
451
|
+
|
452
|
+
# Output only. The time when the instance was updated.
|
453
|
+
# Corresponds to the JSON property `updateTime`
|
454
|
+
# @return [String]
|
455
|
+
attr_accessor :update_time
|
184
456
|
|
185
457
|
def initialize(**args)
|
186
458
|
update!(**args)
|
@@ -188,15 +460,1339 @@ module Google
|
|
188
460
|
|
189
461
|
# Update properties of this object
|
190
462
|
def update!(**args)
|
191
|
-
@
|
192
|
-
@
|
193
|
-
@
|
463
|
+
@backup_appliance_backup_properties = args[:backup_appliance_backup_properties] if args.key?(:backup_appliance_backup_properties)
|
464
|
+
@backup_appliance_locks = args[:backup_appliance_locks] if args.key?(:backup_appliance_locks)
|
465
|
+
@backup_type = args[:backup_type] if args.key?(:backup_type)
|
466
|
+
@compute_instance_backup_properties = args[:compute_instance_backup_properties] if args.key?(:compute_instance_backup_properties)
|
467
|
+
@consistency_time = args[:consistency_time] if args.key?(:consistency_time)
|
468
|
+
@create_time = args[:create_time] if args.key?(:create_time)
|
469
|
+
@description = args[:description] if args.key?(:description)
|
470
|
+
@enforced_retention_end_time = args[:enforced_retention_end_time] if args.key?(:enforced_retention_end_time)
|
471
|
+
@etag = args[:etag] if args.key?(:etag)
|
472
|
+
@expire_time = args[:expire_time] if args.key?(:expire_time)
|
473
|
+
@gcp_backup_plan_info = args[:gcp_backup_plan_info] if args.key?(:gcp_backup_plan_info)
|
474
|
+
@labels = args[:labels] if args.key?(:labels)
|
475
|
+
@name = args[:name] if args.key?(:name)
|
476
|
+
@resource_size_bytes = args[:resource_size_bytes] if args.key?(:resource_size_bytes)
|
477
|
+
@service_locks = args[:service_locks] if args.key?(:service_locks)
|
478
|
+
@state = args[:state] if args.key?(:state)
|
479
|
+
@update_time = args[:update_time] if args.key?(:update_time)
|
194
480
|
end
|
195
481
|
end
|
196
482
|
|
197
|
-
#
|
198
|
-
|
199
|
-
|
483
|
+
# BackupApplianceBackupConfig captures the backup configuration for applications
|
484
|
+
# that are protected by Backup Appliances.
|
485
|
+
class BackupApplianceBackupConfig
|
486
|
+
include Google::Apis::Core::Hashable
|
487
|
+
|
488
|
+
# The name of the application.
|
489
|
+
# Corresponds to the JSON property `applicationName`
|
490
|
+
# @return [String]
|
491
|
+
attr_accessor :application_name
|
492
|
+
|
493
|
+
# The ID of the backup appliance.
|
494
|
+
# Corresponds to the JSON property `backupApplianceId`
|
495
|
+
# @return [Fixnum]
|
496
|
+
attr_accessor :backup_appliance_id
|
497
|
+
|
498
|
+
# The name of the backup appliance.
|
499
|
+
# Corresponds to the JSON property `backupApplianceName`
|
500
|
+
# @return [String]
|
501
|
+
attr_accessor :backup_appliance_name
|
502
|
+
|
503
|
+
# The name of the host where the application is running.
|
504
|
+
# Corresponds to the JSON property `hostName`
|
505
|
+
# @return [String]
|
506
|
+
attr_accessor :host_name
|
507
|
+
|
508
|
+
# The ID of the SLA of this application.
|
509
|
+
# Corresponds to the JSON property `slaId`
|
510
|
+
# @return [Fixnum]
|
511
|
+
attr_accessor :sla_id
|
512
|
+
|
513
|
+
# The name of the SLP associated with the application.
|
514
|
+
# Corresponds to the JSON property `slpName`
|
515
|
+
# @return [String]
|
516
|
+
attr_accessor :slp_name
|
517
|
+
|
518
|
+
# The name of the SLT associated with the application.
|
519
|
+
# Corresponds to the JSON property `sltName`
|
520
|
+
# @return [String]
|
521
|
+
attr_accessor :slt_name
|
522
|
+
|
523
|
+
def initialize(**args)
|
524
|
+
update!(**args)
|
525
|
+
end
|
526
|
+
|
527
|
+
# Update properties of this object
|
528
|
+
def update!(**args)
|
529
|
+
@application_name = args[:application_name] if args.key?(:application_name)
|
530
|
+
@backup_appliance_id = args[:backup_appliance_id] if args.key?(:backup_appliance_id)
|
531
|
+
@backup_appliance_name = args[:backup_appliance_name] if args.key?(:backup_appliance_name)
|
532
|
+
@host_name = args[:host_name] if args.key?(:host_name)
|
533
|
+
@sla_id = args[:sla_id] if args.key?(:sla_id)
|
534
|
+
@slp_name = args[:slp_name] if args.key?(:slp_name)
|
535
|
+
@slt_name = args[:slt_name] if args.key?(:slt_name)
|
536
|
+
end
|
537
|
+
end
|
538
|
+
|
539
|
+
# BackupApplianceBackupProperties represents BackupDR backup appliance's
|
540
|
+
# properties.
|
541
|
+
class BackupApplianceBackupProperties
|
542
|
+
include Google::Apis::Core::Hashable
|
543
|
+
|
544
|
+
# Output only. The time when this backup object was finalized (if none, backup
|
545
|
+
# is not finalized).
|
546
|
+
# Corresponds to the JSON property `finalizeTime`
|
547
|
+
# @return [String]
|
548
|
+
attr_accessor :finalize_time
|
549
|
+
|
550
|
+
# Output only. The numeric generation ID of the backup (monotonically increasing)
|
551
|
+
# .
|
552
|
+
# Corresponds to the JSON property `generationId`
|
553
|
+
# @return [Fixnum]
|
554
|
+
attr_accessor :generation_id
|
555
|
+
|
556
|
+
# Optional. The latest timestamp of data available in this Backup.
|
557
|
+
# Corresponds to the JSON property `recoveryRangeEndTime`
|
558
|
+
# @return [String]
|
559
|
+
attr_accessor :recovery_range_end_time
|
560
|
+
|
561
|
+
# Optional. The earliest timestamp of data available in this Backup.
|
562
|
+
# Corresponds to the JSON property `recoveryRangeStartTime`
|
563
|
+
# @return [String]
|
564
|
+
attr_accessor :recovery_range_start_time
|
565
|
+
|
566
|
+
def initialize(**args)
|
567
|
+
update!(**args)
|
568
|
+
end
|
569
|
+
|
570
|
+
# Update properties of this object
|
571
|
+
def update!(**args)
|
572
|
+
@finalize_time = args[:finalize_time] if args.key?(:finalize_time)
|
573
|
+
@generation_id = args[:generation_id] if args.key?(:generation_id)
|
574
|
+
@recovery_range_end_time = args[:recovery_range_end_time] if args.key?(:recovery_range_end_time)
|
575
|
+
@recovery_range_start_time = args[:recovery_range_start_time] if args.key?(:recovery_range_start_time)
|
576
|
+
end
|
577
|
+
end
|
578
|
+
|
579
|
+
# BackupApplianceLockInfo contains metadata about the backupappliance that
|
580
|
+
# created the lock.
|
581
|
+
class BackupApplianceLockInfo
|
582
|
+
include Google::Apis::Core::Hashable
|
583
|
+
|
584
|
+
# Required. The ID of the backup/recovery appliance that created this lock.
|
585
|
+
# Corresponds to the JSON property `backupApplianceId`
|
586
|
+
# @return [Fixnum]
|
587
|
+
attr_accessor :backup_appliance_id
|
588
|
+
|
589
|
+
# Required. The name of the backup/recovery appliance that created this lock.
|
590
|
+
# Corresponds to the JSON property `backupApplianceName`
|
591
|
+
# @return [String]
|
592
|
+
attr_accessor :backup_appliance_name
|
593
|
+
|
594
|
+
# The image name that depends on this Backup.
|
595
|
+
# Corresponds to the JSON property `backupImage`
|
596
|
+
# @return [String]
|
597
|
+
attr_accessor :backup_image
|
598
|
+
|
599
|
+
# The job name on the backup/recovery appliance that created this lock.
|
600
|
+
# Corresponds to the JSON property `jobName`
|
601
|
+
# @return [String]
|
602
|
+
attr_accessor :job_name
|
603
|
+
|
604
|
+
# Required. The reason for the lock: e.g. MOUNT/RESTORE/BACKUP/etc. The value of
|
605
|
+
# this string is only meaningful to the client and it is not interpreted by the
|
606
|
+
# BackupVault service.
|
607
|
+
# Corresponds to the JSON property `lockReason`
|
608
|
+
# @return [String]
|
609
|
+
attr_accessor :lock_reason
|
610
|
+
|
611
|
+
# The SLA on the backup/recovery appliance that owns the lock.
|
612
|
+
# Corresponds to the JSON property `slaId`
|
613
|
+
# @return [Fixnum]
|
614
|
+
attr_accessor :sla_id
|
615
|
+
|
616
|
+
def initialize(**args)
|
617
|
+
update!(**args)
|
618
|
+
end
|
619
|
+
|
620
|
+
# Update properties of this object
|
621
|
+
def update!(**args)
|
622
|
+
@backup_appliance_id = args[:backup_appliance_id] if args.key?(:backup_appliance_id)
|
623
|
+
@backup_appliance_name = args[:backup_appliance_name] if args.key?(:backup_appliance_name)
|
624
|
+
@backup_image = args[:backup_image] if args.key?(:backup_image)
|
625
|
+
@job_name = args[:job_name] if args.key?(:job_name)
|
626
|
+
@lock_reason = args[:lock_reason] if args.key?(:lock_reason)
|
627
|
+
@sla_id = args[:sla_id] if args.key?(:sla_id)
|
628
|
+
end
|
629
|
+
end
|
630
|
+
|
631
|
+
# BackupConfigInfo has information about how the resource is configured for
|
632
|
+
# Backup and about the most recent backup to this vault.
|
633
|
+
class BackupConfigInfo
|
634
|
+
include Google::Apis::Core::Hashable
|
635
|
+
|
636
|
+
# BackupApplianceBackupConfig captures the backup configuration for applications
|
637
|
+
# that are protected by Backup Appliances.
|
638
|
+
# Corresponds to the JSON property `backupApplianceBackupConfig`
|
639
|
+
# @return [Google::Apis::BackupdrV1::BackupApplianceBackupConfig]
|
640
|
+
attr_accessor :backup_appliance_backup_config
|
641
|
+
|
642
|
+
# GcpBackupConfig captures the Backup configuration details for Google Cloud
|
643
|
+
# resources. All Google Cloud resources regardless of type are protected with
|
644
|
+
# backup plan associations.
|
645
|
+
# Corresponds to the JSON property `gcpBackupConfig`
|
646
|
+
# @return [Google::Apis::BackupdrV1::GcpBackupConfig]
|
647
|
+
attr_accessor :gcp_backup_config
|
648
|
+
|
649
|
+
# The `Status` type defines a logical error model that is suitable for different
|
650
|
+
# programming environments, including REST APIs and RPC APIs. It is used by [
|
651
|
+
# gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
|
652
|
+
# data: error code, error message, and error details. You can find out more
|
653
|
+
# about this error model and how to work with it in the [API Design Guide](https:
|
654
|
+
# //cloud.google.com/apis/design/errors).
|
655
|
+
# Corresponds to the JSON property `lastBackupError`
|
656
|
+
# @return [Google::Apis::BackupdrV1::Status]
|
657
|
+
attr_accessor :last_backup_error
|
658
|
+
|
659
|
+
# Output only. The status of the last backup to this BackupVault
|
660
|
+
# Corresponds to the JSON property `lastBackupState`
|
661
|
+
# @return [String]
|
662
|
+
attr_accessor :last_backup_state
|
663
|
+
|
664
|
+
# Output only. If the last backup were successful, this field has the
|
665
|
+
# consistency date.
|
666
|
+
# Corresponds to the JSON property `lastSuccessfulBackupConsistencyTime`
|
667
|
+
# @return [String]
|
668
|
+
attr_accessor :last_successful_backup_consistency_time
|
669
|
+
|
670
|
+
def initialize(**args)
|
671
|
+
update!(**args)
|
672
|
+
end
|
673
|
+
|
674
|
+
# Update properties of this object
|
675
|
+
def update!(**args)
|
676
|
+
@backup_appliance_backup_config = args[:backup_appliance_backup_config] if args.key?(:backup_appliance_backup_config)
|
677
|
+
@gcp_backup_config = args[:gcp_backup_config] if args.key?(:gcp_backup_config)
|
678
|
+
@last_backup_error = args[:last_backup_error] if args.key?(:last_backup_error)
|
679
|
+
@last_backup_state = args[:last_backup_state] if args.key?(:last_backup_state)
|
680
|
+
@last_successful_backup_consistency_time = args[:last_successful_backup_consistency_time] if args.key?(:last_successful_backup_consistency_time)
|
681
|
+
end
|
682
|
+
end
|
683
|
+
|
684
|
+
# BackupLock represents a single lock on a Backup resource. An unexpired lock on
|
685
|
+
# a Backup prevents the Backup from being deleted.
|
686
|
+
class BackupLock
|
687
|
+
include Google::Apis::Core::Hashable
|
688
|
+
|
689
|
+
# BackupApplianceLockInfo contains metadata about the backupappliance that
|
690
|
+
# created the lock.
|
691
|
+
# Corresponds to the JSON property `backupApplianceLockInfo`
|
692
|
+
# @return [Google::Apis::BackupdrV1::BackupApplianceLockInfo]
|
693
|
+
attr_accessor :backup_appliance_lock_info
|
694
|
+
|
695
|
+
# Required. The time after which this lock is not considered valid and will no
|
696
|
+
# longer protect the Backup from deletion.
|
697
|
+
# Corresponds to the JSON property `lockUntilTime`
|
698
|
+
# @return [String]
|
699
|
+
attr_accessor :lock_until_time
|
700
|
+
|
701
|
+
# ServiceLockInfo represents the details of a lock taken by the service on a
|
702
|
+
# Backup resource.
|
703
|
+
# Corresponds to the JSON property `serviceLockInfo`
|
704
|
+
# @return [Google::Apis::BackupdrV1::ServiceLockInfo]
|
705
|
+
attr_accessor :service_lock_info
|
706
|
+
|
707
|
+
def initialize(**args)
|
708
|
+
update!(**args)
|
709
|
+
end
|
710
|
+
|
711
|
+
# Update properties of this object
|
712
|
+
def update!(**args)
|
713
|
+
@backup_appliance_lock_info = args[:backup_appliance_lock_info] if args.key?(:backup_appliance_lock_info)
|
714
|
+
@lock_until_time = args[:lock_until_time] if args.key?(:lock_until_time)
|
715
|
+
@service_lock_info = args[:service_lock_info] if args.key?(:service_lock_info)
|
716
|
+
end
|
717
|
+
end
|
718
|
+
|
719
|
+
# Message describing a BackupVault object.
|
720
|
+
class BackupVault
|
721
|
+
include Google::Apis::Core::Hashable
|
722
|
+
|
723
|
+
# Optional. User annotations. See https://google.aip.dev/128#annotations Stores
|
724
|
+
# small amounts of arbitrary data.
|
725
|
+
# Corresponds to the JSON property `annotations`
|
726
|
+
# @return [Hash<String,String>]
|
727
|
+
attr_accessor :annotations
|
728
|
+
|
729
|
+
# Output only. The number of backups in this backup vault.
|
730
|
+
# Corresponds to the JSON property `backupCount`
|
731
|
+
# @return [Fixnum]
|
732
|
+
attr_accessor :backup_count
|
733
|
+
|
734
|
+
# Required. The default and minimum enforced retention for each backup within
|
735
|
+
# the backup vault. The enforced retention for each backup can be extended.
|
736
|
+
# Corresponds to the JSON property `backupMinimumEnforcedRetentionDuration`
|
737
|
+
# @return [String]
|
738
|
+
attr_accessor :backup_minimum_enforced_retention_duration
|
739
|
+
|
740
|
+
# Output only. The time when the instance was created.
|
741
|
+
# Corresponds to the JSON property `createTime`
|
742
|
+
# @return [String]
|
743
|
+
attr_accessor :create_time
|
744
|
+
|
745
|
+
# Output only. Set to true when there are no backups nested under this resource.
|
746
|
+
# Corresponds to the JSON property `deletable`
|
747
|
+
# @return [Boolean]
|
748
|
+
attr_accessor :deletable
|
749
|
+
alias_method :deletable?, :deletable
|
750
|
+
|
751
|
+
# Optional. The description of the BackupVault instance (2048 characters or less)
|
752
|
+
# .
|
753
|
+
# Corresponds to the JSON property `description`
|
754
|
+
# @return [String]
|
755
|
+
attr_accessor :description
|
756
|
+
|
757
|
+
# Optional. Time after which the BackupVault resource is locked.
|
758
|
+
# Corresponds to the JSON property `effectiveTime`
|
759
|
+
# @return [String]
|
760
|
+
attr_accessor :effective_time
|
761
|
+
|
762
|
+
# Required. The default retention period for each backup in the backup vault (
|
763
|
+
# Deprecated).
|
764
|
+
# Corresponds to the JSON property `enforcedRetentionDuration`
|
765
|
+
# @return [String]
|
766
|
+
attr_accessor :enforced_retention_duration
|
767
|
+
|
768
|
+
# Optional. Server specified ETag for the backup vault resource to prevent
|
769
|
+
# simultaneous updates from overwiting each other.
|
770
|
+
# Corresponds to the JSON property `etag`
|
771
|
+
# @return [String]
|
772
|
+
attr_accessor :etag
|
773
|
+
|
774
|
+
# Optional. Resource labels to represent user provided metadata. No labels
|
775
|
+
# currently defined:
|
776
|
+
# Corresponds to the JSON property `labels`
|
777
|
+
# @return [Hash<String,String>]
|
778
|
+
attr_accessor :labels
|
779
|
+
|
780
|
+
# Output only. The resource name.
|
781
|
+
# Corresponds to the JSON property `name`
|
782
|
+
# @return [String]
|
783
|
+
attr_accessor :name
|
784
|
+
|
785
|
+
# Output only. Service account used by the BackupVault Service for this
|
786
|
+
# BackupVault. The user should grant this account permissions in their workload
|
787
|
+
# project to enable the service to run backups and restores there.
|
788
|
+
# Corresponds to the JSON property `serviceAccount`
|
789
|
+
# @return [String]
|
790
|
+
attr_accessor :service_account
|
791
|
+
|
792
|
+
# Output only. The BackupVault resource instance state.
|
793
|
+
# Corresponds to the JSON property `state`
|
794
|
+
# @return [String]
|
795
|
+
attr_accessor :state
|
796
|
+
|
797
|
+
# Output only. Total size of the storage used by all backup resources.
|
798
|
+
# Corresponds to the JSON property `totalStoredBytes`
|
799
|
+
# @return [Fixnum]
|
800
|
+
attr_accessor :total_stored_bytes
|
801
|
+
|
802
|
+
# Output only. Output only Immutable after resource creation until resource
|
803
|
+
# deletion.
|
804
|
+
# Corresponds to the JSON property `uid`
|
805
|
+
# @return [String]
|
806
|
+
attr_accessor :uid
|
807
|
+
|
808
|
+
# Output only. The time when the instance was updated.
|
809
|
+
# Corresponds to the JSON property `updateTime`
|
810
|
+
# @return [String]
|
811
|
+
attr_accessor :update_time
|
812
|
+
|
813
|
+
def initialize(**args)
|
814
|
+
update!(**args)
|
815
|
+
end
|
816
|
+
|
817
|
+
# Update properties of this object
|
818
|
+
def update!(**args)
|
819
|
+
@annotations = args[:annotations] if args.key?(:annotations)
|
820
|
+
@backup_count = args[:backup_count] if args.key?(:backup_count)
|
821
|
+
@backup_minimum_enforced_retention_duration = args[:backup_minimum_enforced_retention_duration] if args.key?(:backup_minimum_enforced_retention_duration)
|
822
|
+
@create_time = args[:create_time] if args.key?(:create_time)
|
823
|
+
@deletable = args[:deletable] if args.key?(:deletable)
|
824
|
+
@description = args[:description] if args.key?(:description)
|
825
|
+
@effective_time = args[:effective_time] if args.key?(:effective_time)
|
826
|
+
@enforced_retention_duration = args[:enforced_retention_duration] if args.key?(:enforced_retention_duration)
|
827
|
+
@etag = args[:etag] if args.key?(:etag)
|
828
|
+
@labels = args[:labels] if args.key?(:labels)
|
829
|
+
@name = args[:name] if args.key?(:name)
|
830
|
+
@service_account = args[:service_account] if args.key?(:service_account)
|
831
|
+
@state = args[:state] if args.key?(:state)
|
832
|
+
@total_stored_bytes = args[:total_stored_bytes] if args.key?(:total_stored_bytes)
|
833
|
+
@uid = args[:uid] if args.key?(:uid)
|
834
|
+
@update_time = args[:update_time] if args.key?(:update_time)
|
835
|
+
end
|
836
|
+
end
|
837
|
+
|
838
|
+
# Associates `members`, or principals, with a `role`.
|
839
|
+
class Binding
|
840
|
+
include Google::Apis::Core::Hashable
|
841
|
+
|
842
|
+
# Represents a textual expression in the Common Expression Language (CEL) syntax.
|
843
|
+
# CEL is a C-like expression language. The syntax and semantics of CEL are
|
844
|
+
# documented at https://github.com/google/cel-spec. Example (Comparison): title:
|
845
|
+
# "Summary size limit" description: "Determines if a summary is less than 100
|
846
|
+
# chars" expression: "document.summary.size() < 100" Example (Equality): title: "
|
847
|
+
# Requestor is owner" description: "Determines if requestor is the document
|
848
|
+
# owner" expression: "document.owner == request.auth.claims.email" Example (
|
849
|
+
# Logic): title: "Public documents" description: "Determine whether the document
|
850
|
+
# should be publicly visible" expression: "document.type != 'private' &&
|
851
|
+
# document.type != 'internal'" Example (Data Manipulation): title: "Notification
|
852
|
+
# string" description: "Create a notification string with a timestamp."
|
853
|
+
# expression: "'New message received at ' + string(document.create_time)" The
|
854
|
+
# exact variables and functions that may be referenced within an expression are
|
855
|
+
# determined by the service that evaluates it. See the service documentation for
|
856
|
+
# additional information.
|
857
|
+
# Corresponds to the JSON property `condition`
|
858
|
+
# @return [Google::Apis::BackupdrV1::Expr]
|
859
|
+
attr_accessor :condition
|
860
|
+
|
861
|
+
# Specifies the principals requesting access for a Google Cloud resource. `
|
862
|
+
# members` can have the following values: * `allUsers`: A special identifier
|
863
|
+
# that represents anyone who is on the internet; with or without a Google
|
864
|
+
# account. * `allAuthenticatedUsers`: A special identifier that represents
|
865
|
+
# anyone who is authenticated with a Google account or a service account. Does
|
866
|
+
# not include identities that come from external identity providers (IdPs)
|
867
|
+
# through identity federation. * `user:`emailid``: An email address that
|
868
|
+
# represents a specific Google account. For example, `alice@example.com` . * `
|
869
|
+
# serviceAccount:`emailid``: An email address that represents a Google service
|
870
|
+
# account. For example, `my-other-app@appspot.gserviceaccount.com`. * `
|
871
|
+
# serviceAccount:`projectid`.svc.id.goog[`namespace`/`kubernetes-sa`]`: An
|
872
|
+
# identifier for a [Kubernetes service account](https://cloud.google.com/
|
873
|
+
# kubernetes-engine/docs/how-to/kubernetes-service-accounts). For example, `my-
|
874
|
+
# project.svc.id.goog[my-namespace/my-kubernetes-sa]`. * `group:`emailid``: An
|
875
|
+
# email address that represents a Google group. For example, `admins@example.com`
|
876
|
+
# . * `domain:`domain``: The G Suite domain (primary) that represents all the
|
877
|
+
# users of that domain. For example, `google.com` or `example.com`. * `principal:
|
878
|
+
# //iam.googleapis.com/locations/global/workforcePools/`pool_id`/subject/`
|
879
|
+
# subject_attribute_value``: A single identity in a workforce identity pool. * `
|
880
|
+
# principalSet://iam.googleapis.com/locations/global/workforcePools/`pool_id`/
|
881
|
+
# group/`group_id``: All workforce identities in a group. * `principalSet://iam.
|
882
|
+
# googleapis.com/locations/global/workforcePools/`pool_id`/attribute.`
|
883
|
+
# attribute_name`/`attribute_value``: All workforce identities with a specific
|
884
|
+
# attribute value. * `principalSet://iam.googleapis.com/locations/global/
|
885
|
+
# workforcePools/`pool_id`/*`: All identities in a workforce identity pool. * `
|
886
|
+
# principal://iam.googleapis.com/projects/`project_number`/locations/global/
|
887
|
+
# workloadIdentityPools/`pool_id`/subject/`subject_attribute_value``: A single
|
888
|
+
# identity in a workload identity pool. * `principalSet://iam.googleapis.com/
|
889
|
+
# projects/`project_number`/locations/global/workloadIdentityPools/`pool_id`/
|
890
|
+
# group/`group_id``: A workload identity pool group. * `principalSet://iam.
|
891
|
+
# googleapis.com/projects/`project_number`/locations/global/
|
892
|
+
# workloadIdentityPools/`pool_id`/attribute.`attribute_name`/`attribute_value``:
|
893
|
+
# All identities in a workload identity pool with a certain attribute. * `
|
894
|
+
# principalSet://iam.googleapis.com/projects/`project_number`/locations/global/
|
895
|
+
# workloadIdentityPools/`pool_id`/*`: All identities in a workload identity pool.
|
896
|
+
# * `deleted:user:`emailid`?uid=`uniqueid``: An email address (plus unique
|
897
|
+
# identifier) representing a user that has been recently deleted. For example, `
|
898
|
+
# alice@example.com?uid=123456789012345678901`. If the user is recovered, this
|
899
|
+
# value reverts to `user:`emailid`` and the recovered user retains the role in
|
900
|
+
# the binding. * `deleted:serviceAccount:`emailid`?uid=`uniqueid``: An email
|
901
|
+
# address (plus unique identifier) representing a service account that has been
|
902
|
+
# recently deleted. For example, `my-other-app@appspot.gserviceaccount.com?uid=
|
903
|
+
# 123456789012345678901`. If the service account is undeleted, this value
|
904
|
+
# reverts to `serviceAccount:`emailid`` and the undeleted service account
|
905
|
+
# retains the role in the binding. * `deleted:group:`emailid`?uid=`uniqueid``:
|
906
|
+
# An email address (plus unique identifier) representing a Google group that has
|
907
|
+
# been recently deleted. For example, `admins@example.com?uid=
|
908
|
+
# 123456789012345678901`. If the group is recovered, this value reverts to `
|
909
|
+
# group:`emailid`` and the recovered group retains the role in the binding. * `
|
910
|
+
# deleted:principal://iam.googleapis.com/locations/global/workforcePools/`
|
911
|
+
# pool_id`/subject/`subject_attribute_value``: Deleted single identity in a
|
912
|
+
# workforce identity pool. For example, `deleted:principal://iam.googleapis.com/
|
913
|
+
# locations/global/workforcePools/my-pool-id/subject/my-subject-attribute-value`.
|
914
|
+
# Corresponds to the JSON property `members`
|
915
|
+
# @return [Array<String>]
|
916
|
+
attr_accessor :members
|
917
|
+
|
918
|
+
# Role that is assigned to the list of `members`, or principals. For example, `
|
919
|
+
# roles/viewer`, `roles/editor`, or `roles/owner`. For an overview of the IAM
|
920
|
+
# roles and permissions, see the [IAM documentation](https://cloud.google.com/
|
921
|
+
# iam/docs/roles-overview). For a list of the available pre-defined roles, see [
|
922
|
+
# here](https://cloud.google.com/iam/docs/understanding-roles).
|
923
|
+
# Corresponds to the JSON property `role`
|
924
|
+
# @return [String]
|
925
|
+
attr_accessor :role
|
926
|
+
|
927
|
+
def initialize(**args)
|
928
|
+
update!(**args)
|
929
|
+
end
|
930
|
+
|
931
|
+
# Update properties of this object
|
932
|
+
def update!(**args)
|
933
|
+
@condition = args[:condition] if args.key?(:condition)
|
934
|
+
@members = args[:members] if args.key?(:members)
|
935
|
+
@role = args[:role] if args.key?(:role)
|
936
|
+
end
|
937
|
+
end
|
938
|
+
|
939
|
+
# The request message for Operations.CancelOperation.
|
940
|
+
class CancelOperationRequest
|
941
|
+
include Google::Apis::Core::Hashable
|
942
|
+
|
943
|
+
def initialize(**args)
|
944
|
+
update!(**args)
|
945
|
+
end
|
946
|
+
|
947
|
+
# Update properties of this object
|
948
|
+
def update!(**args)
|
949
|
+
end
|
950
|
+
end
|
951
|
+
|
952
|
+
# ComputeInstanceBackupProperties represents Compute Engine instance backup
|
953
|
+
# properties.
|
954
|
+
class ComputeInstanceBackupProperties
|
955
|
+
include Google::Apis::Core::Hashable
|
956
|
+
|
957
|
+
# Enables instances created based on these properties to send packets with
|
958
|
+
# source IP addresses other than their own and receive packets with destination
|
959
|
+
# IP addresses other than their own. If these instances will be used as an IP
|
960
|
+
# gateway or it will be set as the next-hop in a Route resource, specify `true`.
|
961
|
+
# If unsure, leave this set to `false`. See the https://cloud.google.com/vpc/
|
962
|
+
# docs/using-routes#canipforward documentation for more information.
|
963
|
+
# Corresponds to the JSON property `canIpForward`
|
964
|
+
# @return [Boolean]
|
965
|
+
attr_accessor :can_ip_forward
|
966
|
+
alias_method :can_ip_forward?, :can_ip_forward
|
967
|
+
|
968
|
+
# An optional text description for the instances that are created from these
|
969
|
+
# properties.
|
970
|
+
# Corresponds to the JSON property `description`
|
971
|
+
# @return [String]
|
972
|
+
attr_accessor :description
|
973
|
+
|
974
|
+
# An array of disks that are associated with the instances that are created from
|
975
|
+
# these properties.
|
976
|
+
# Corresponds to the JSON property `disk`
|
977
|
+
# @return [Array<Google::Apis::BackupdrV1::AttachedDisk>]
|
978
|
+
attr_accessor :disk
|
979
|
+
|
980
|
+
# A list of guest accelerator cards' type and count to use for instances created
|
981
|
+
# from these properties.
|
982
|
+
# Corresponds to the JSON property `guestAccelerator`
|
983
|
+
# @return [Array<Google::Apis::BackupdrV1::AcceleratorConfig>]
|
984
|
+
attr_accessor :guest_accelerator
|
985
|
+
|
986
|
+
# KeyRevocationActionType of the instance. Supported options are "STOP" and "
|
987
|
+
# NONE". The default value is "NONE" if it is not specified.
|
988
|
+
# Corresponds to the JSON property `keyRevocationActionType`
|
989
|
+
# @return [String]
|
990
|
+
attr_accessor :key_revocation_action_type
|
991
|
+
|
992
|
+
# The machine type to use for instances that are created from these properties.
|
993
|
+
# Corresponds to the JSON property `machineType`
|
994
|
+
# @return [String]
|
995
|
+
attr_accessor :machine_type
|
996
|
+
|
997
|
+
# A metadata key/value entry.
|
998
|
+
# Corresponds to the JSON property `metadata`
|
999
|
+
# @return [Google::Apis::BackupdrV1::Metadata]
|
1000
|
+
attr_accessor :metadata
|
1001
|
+
|
1002
|
+
# Minimum cpu/platform to be used by instances. The instance may be scheduled on
|
1003
|
+
# the specified or newer cpu/platform. Applicable values are the friendly names
|
1004
|
+
# of CPU platforms, such as `minCpuPlatform: Intel Haswell` or `minCpuPlatform:
|
1005
|
+
# Intel Sandy Bridge`. For more information, read https://cloud.google.com/
|
1006
|
+
# compute/docs/instances/specify-min-cpu-platform.
|
1007
|
+
# Corresponds to the JSON property `minCpuPlatform`
|
1008
|
+
# @return [String]
|
1009
|
+
attr_accessor :min_cpu_platform
|
1010
|
+
|
1011
|
+
# An array of network access configurations for this interface.
|
1012
|
+
# Corresponds to the JSON property `networkInterface`
|
1013
|
+
# @return [Array<Google::Apis::BackupdrV1::NetworkInterface>]
|
1014
|
+
attr_accessor :network_interface
|
1015
|
+
|
1016
|
+
# Sets the scheduling options for an Instance.
|
1017
|
+
# Corresponds to the JSON property `scheduling`
|
1018
|
+
# @return [Google::Apis::BackupdrV1::Scheduling]
|
1019
|
+
attr_accessor :scheduling
|
1020
|
+
|
1021
|
+
# A list of service accounts with specified scopes. Access tokens for these
|
1022
|
+
# service accounts are available to the instances that are created from these
|
1023
|
+
# properties. Use metadata queries to obtain the access tokens for these
|
1024
|
+
# instances.
|
1025
|
+
# Corresponds to the JSON property `serviceAccount`
|
1026
|
+
# @return [Array<Google::Apis::BackupdrV1::ServiceAccount>]
|
1027
|
+
attr_accessor :service_account
|
1028
|
+
|
1029
|
+
# The source instance used to create this backup. This can be a partial or full
|
1030
|
+
# URL to the resource. For example, the following are valid values: -https://www.
|
1031
|
+
# googleapis.com/compute/v1/projects/project/zones/zone/instances/instance -
|
1032
|
+
# projects/project/zones/zone/instances/instance
|
1033
|
+
# Corresponds to the JSON property `sourceInstance`
|
1034
|
+
# @return [String]
|
1035
|
+
attr_accessor :source_instance
|
1036
|
+
|
1037
|
+
# A set of instance tags.
|
1038
|
+
# Corresponds to the JSON property `tags`
|
1039
|
+
# @return [Google::Apis::BackupdrV1::Tags]
|
1040
|
+
attr_accessor :tags
|
1041
|
+
|
1042
|
+
def initialize(**args)
|
1043
|
+
update!(**args)
|
1044
|
+
end
|
1045
|
+
|
1046
|
+
# Update properties of this object
|
1047
|
+
def update!(**args)
|
1048
|
+
@can_ip_forward = args[:can_ip_forward] if args.key?(:can_ip_forward)
|
1049
|
+
@description = args[:description] if args.key?(:description)
|
1050
|
+
@disk = args[:disk] if args.key?(:disk)
|
1051
|
+
@guest_accelerator = args[:guest_accelerator] if args.key?(:guest_accelerator)
|
1052
|
+
@key_revocation_action_type = args[:key_revocation_action_type] if args.key?(:key_revocation_action_type)
|
1053
|
+
@machine_type = args[:machine_type] if args.key?(:machine_type)
|
1054
|
+
@metadata = args[:metadata] if args.key?(:metadata)
|
1055
|
+
@min_cpu_platform = args[:min_cpu_platform] if args.key?(:min_cpu_platform)
|
1056
|
+
@network_interface = args[:network_interface] if args.key?(:network_interface)
|
1057
|
+
@scheduling = args[:scheduling] if args.key?(:scheduling)
|
1058
|
+
@service_account = args[:service_account] if args.key?(:service_account)
|
1059
|
+
@source_instance = args[:source_instance] if args.key?(:source_instance)
|
1060
|
+
@tags = args[:tags] if args.key?(:tags)
|
1061
|
+
end
|
1062
|
+
end
|
1063
|
+
|
1064
|
+
# ComputeInstanceDataSourceProperties represents the properties of a
|
1065
|
+
# ComputeEngine resource that are stored in the DataSource.
|
1066
|
+
class ComputeInstanceDataSourceProperties
|
1067
|
+
include Google::Apis::Core::Hashable
|
1068
|
+
|
1069
|
+
# The description of the Compute Engine instance.
|
1070
|
+
# Corresponds to the JSON property `description`
|
1071
|
+
# @return [String]
|
1072
|
+
attr_accessor :description
|
1073
|
+
|
1074
|
+
# The machine type of the instance.
|
1075
|
+
# Corresponds to the JSON property `machineType`
|
1076
|
+
# @return [String]
|
1077
|
+
attr_accessor :machine_type
|
1078
|
+
|
1079
|
+
# Name of the compute instance backed up by the datasource.
|
1080
|
+
# Corresponds to the JSON property `name`
|
1081
|
+
# @return [String]
|
1082
|
+
attr_accessor :name
|
1083
|
+
|
1084
|
+
# The total number of disks attached to the Instance.
|
1085
|
+
# Corresponds to the JSON property `totalDiskCount`
|
1086
|
+
# @return [Fixnum]
|
1087
|
+
attr_accessor :total_disk_count
|
1088
|
+
|
1089
|
+
# The sum of all the disk sizes.
|
1090
|
+
# Corresponds to the JSON property `totalDiskSizeGb`
|
1091
|
+
# @return [Fixnum]
|
1092
|
+
attr_accessor :total_disk_size_gb
|
1093
|
+
|
1094
|
+
def initialize(**args)
|
1095
|
+
update!(**args)
|
1096
|
+
end
|
1097
|
+
|
1098
|
+
# Update properties of this object
|
1099
|
+
def update!(**args)
|
1100
|
+
@description = args[:description] if args.key?(:description)
|
1101
|
+
@machine_type = args[:machine_type] if args.key?(:machine_type)
|
1102
|
+
@name = args[:name] if args.key?(:name)
|
1103
|
+
@total_disk_count = args[:total_disk_count] if args.key?(:total_disk_count)
|
1104
|
+
@total_disk_size_gb = args[:total_disk_size_gb] if args.key?(:total_disk_size_gb)
|
1105
|
+
end
|
1106
|
+
end
|
1107
|
+
|
1108
|
+
# A customer-supplied encryption key.
|
1109
|
+
class CustomerEncryptionKey
|
1110
|
+
include Google::Apis::Core::Hashable
|
1111
|
+
|
1112
|
+
# Optional. The name of the encryption key that is stored in Google Cloud KMS.
|
1113
|
+
# Corresponds to the JSON property `kmsKeyName`
|
1114
|
+
# @return [String]
|
1115
|
+
attr_accessor :kms_key_name
|
1116
|
+
|
1117
|
+
# Optional. The service account being used for the encryption request for the
|
1118
|
+
# given KMS key. If absent, the Compute Engine default service account is used.
|
1119
|
+
# Corresponds to the JSON property `kmsKeyServiceAccount`
|
1120
|
+
# @return [String]
|
1121
|
+
attr_accessor :kms_key_service_account
|
1122
|
+
|
1123
|
+
# Optional. Specifies a 256-bit customer-supplied encryption key.
|
1124
|
+
# Corresponds to the JSON property `rawKey`
|
1125
|
+
# @return [String]
|
1126
|
+
attr_accessor :raw_key
|
1127
|
+
|
1128
|
+
# Optional. RSA-wrapped 2048-bit customer-supplied encryption key to either
|
1129
|
+
# encrypt or decrypt this resource.
|
1130
|
+
# Corresponds to the JSON property `rsaEncryptedKey`
|
1131
|
+
# @return [String]
|
1132
|
+
attr_accessor :rsa_encrypted_key
|
1133
|
+
|
1134
|
+
def initialize(**args)
|
1135
|
+
update!(**args)
|
1136
|
+
end
|
1137
|
+
|
1138
|
+
# Update properties of this object
|
1139
|
+
def update!(**args)
|
1140
|
+
@kms_key_name = args[:kms_key_name] if args.key?(:kms_key_name)
|
1141
|
+
@kms_key_service_account = args[:kms_key_service_account] if args.key?(:kms_key_service_account)
|
1142
|
+
@raw_key = args[:raw_key] if args.key?(:raw_key)
|
1143
|
+
@rsa_encrypted_key = args[:rsa_encrypted_key] if args.key?(:rsa_encrypted_key)
|
1144
|
+
end
|
1145
|
+
end
|
1146
|
+
|
1147
|
+
# Message describing a DataSource object. Datasource object used to represent
|
1148
|
+
# Datasource details for both admin and basic view.
|
1149
|
+
class DataSource
|
1150
|
+
include Google::Apis::Core::Hashable
|
1151
|
+
|
1152
|
+
# BackupConfigInfo has information about how the resource is configured for
|
1153
|
+
# Backup and about the most recent backup to this vault.
|
1154
|
+
# Corresponds to the JSON property `backupConfigInfo`
|
1155
|
+
# @return [Google::Apis::BackupdrV1::BackupConfigInfo]
|
1156
|
+
attr_accessor :backup_config_info
|
1157
|
+
|
1158
|
+
# Number of backups in the data source.
|
1159
|
+
# Corresponds to the JSON property `backupCount`
|
1160
|
+
# @return [Fixnum]
|
1161
|
+
attr_accessor :backup_count
|
1162
|
+
|
1163
|
+
# The backup configuration state.
|
1164
|
+
# Corresponds to the JSON property `configState`
|
1165
|
+
# @return [String]
|
1166
|
+
attr_accessor :config_state
|
1167
|
+
|
1168
|
+
# Output only. The time when the instance was created.
|
1169
|
+
# Corresponds to the JSON property `createTime`
|
1170
|
+
# @return [String]
|
1171
|
+
attr_accessor :create_time
|
1172
|
+
|
1173
|
+
# BackupApplianceApplication describes a Source Resource when it is an
|
1174
|
+
# application backed up by a BackupAppliance.
|
1175
|
+
# Corresponds to the JSON property `dataSourceBackupApplianceApplication`
|
1176
|
+
# @return [Google::Apis::BackupdrV1::DataSourceBackupApplianceApplication]
|
1177
|
+
attr_accessor :data_source_backup_appliance_application
|
1178
|
+
|
1179
|
+
# DataSourceGcpResource is used for protected resources that are Google Cloud
|
1180
|
+
# Resources. This name is easeier to understand than GcpResourceDataSource or
|
1181
|
+
# GcpDataSourceResource
|
1182
|
+
# Corresponds to the JSON property `dataSourceGcpResource`
|
1183
|
+
# @return [Google::Apis::BackupdrV1::DataSourceGcpResource]
|
1184
|
+
attr_accessor :data_source_gcp_resource
|
1185
|
+
|
1186
|
+
# Server specified ETag for the ManagementServer resource to prevent
|
1187
|
+
# simultaneous updates from overwiting each other.
|
1188
|
+
# Corresponds to the JSON property `etag`
|
1189
|
+
# @return [String]
|
1190
|
+
attr_accessor :etag
|
1191
|
+
|
1192
|
+
# Optional. Resource labels to represent user provided metadata. No labels
|
1193
|
+
# currently defined:
|
1194
|
+
# Corresponds to the JSON property `labels`
|
1195
|
+
# @return [Hash<String,String>]
|
1196
|
+
attr_accessor :labels
|
1197
|
+
|
1198
|
+
# Output only. The resource name.
|
1199
|
+
# Corresponds to the JSON property `name`
|
1200
|
+
# @return [String]
|
1201
|
+
attr_accessor :name
|
1202
|
+
|
1203
|
+
# Output only. The DataSource resource instance state.
|
1204
|
+
# Corresponds to the JSON property `state`
|
1205
|
+
# @return [String]
|
1206
|
+
attr_accessor :state
|
1207
|
+
|
1208
|
+
# The number of bytes (metadata and data) stored in this datasource.
|
1209
|
+
# Corresponds to the JSON property `totalStoredBytes`
|
1210
|
+
# @return [Fixnum]
|
1211
|
+
attr_accessor :total_stored_bytes
|
1212
|
+
|
1213
|
+
# Output only. The time when the instance was updated.
|
1214
|
+
# Corresponds to the JSON property `updateTime`
|
1215
|
+
# @return [String]
|
1216
|
+
attr_accessor :update_time
|
1217
|
+
|
1218
|
+
def initialize(**args)
|
1219
|
+
update!(**args)
|
1220
|
+
end
|
1221
|
+
|
1222
|
+
# Update properties of this object
|
1223
|
+
def update!(**args)
|
1224
|
+
@backup_config_info = args[:backup_config_info] if args.key?(:backup_config_info)
|
1225
|
+
@backup_count = args[:backup_count] if args.key?(:backup_count)
|
1226
|
+
@config_state = args[:config_state] if args.key?(:config_state)
|
1227
|
+
@create_time = args[:create_time] if args.key?(:create_time)
|
1228
|
+
@data_source_backup_appliance_application = args[:data_source_backup_appliance_application] if args.key?(:data_source_backup_appliance_application)
|
1229
|
+
@data_source_gcp_resource = args[:data_source_gcp_resource] if args.key?(:data_source_gcp_resource)
|
1230
|
+
@etag = args[:etag] if args.key?(:etag)
|
1231
|
+
@labels = args[:labels] if args.key?(:labels)
|
1232
|
+
@name = args[:name] if args.key?(:name)
|
1233
|
+
@state = args[:state] if args.key?(:state)
|
1234
|
+
@total_stored_bytes = args[:total_stored_bytes] if args.key?(:total_stored_bytes)
|
1235
|
+
@update_time = args[:update_time] if args.key?(:update_time)
|
1236
|
+
end
|
1237
|
+
end
|
1238
|
+
|
1239
|
+
# BackupApplianceApplication describes a Source Resource when it is an
|
1240
|
+
# application backed up by a BackupAppliance.
|
1241
|
+
class DataSourceBackupApplianceApplication
|
1242
|
+
include Google::Apis::Core::Hashable
|
1243
|
+
|
1244
|
+
# Appliance Id of the Backup Appliance.
|
1245
|
+
# Corresponds to the JSON property `applianceId`
|
1246
|
+
# @return [Fixnum]
|
1247
|
+
attr_accessor :appliance_id
|
1248
|
+
|
1249
|
+
# The appid field of the application within the Backup Appliance.
|
1250
|
+
# Corresponds to the JSON property `applicationId`
|
1251
|
+
# @return [Fixnum]
|
1252
|
+
attr_accessor :application_id
|
1253
|
+
|
1254
|
+
# The name of the Application as known to the Backup Appliance.
|
1255
|
+
# Corresponds to the JSON property `applicationName`
|
1256
|
+
# @return [String]
|
1257
|
+
attr_accessor :application_name
|
1258
|
+
|
1259
|
+
# Appliance name.
|
1260
|
+
# Corresponds to the JSON property `backupAppliance`
|
1261
|
+
# @return [String]
|
1262
|
+
attr_accessor :backup_appliance
|
1263
|
+
|
1264
|
+
# Hostid of the application host.
|
1265
|
+
# Corresponds to the JSON property `hostId`
|
1266
|
+
# @return [Fixnum]
|
1267
|
+
attr_accessor :host_id
|
1268
|
+
|
1269
|
+
# Hostname of the host where the application is running.
|
1270
|
+
# Corresponds to the JSON property `hostname`
|
1271
|
+
# @return [String]
|
1272
|
+
attr_accessor :hostname
|
1273
|
+
|
1274
|
+
# The type of the application. e.g. VMBackup
|
1275
|
+
# Corresponds to the JSON property `type`
|
1276
|
+
# @return [String]
|
1277
|
+
attr_accessor :type
|
1278
|
+
|
1279
|
+
def initialize(**args)
|
1280
|
+
update!(**args)
|
1281
|
+
end
|
1282
|
+
|
1283
|
+
# Update properties of this object
|
1284
|
+
def update!(**args)
|
1285
|
+
@appliance_id = args[:appliance_id] if args.key?(:appliance_id)
|
1286
|
+
@application_id = args[:application_id] if args.key?(:application_id)
|
1287
|
+
@application_name = args[:application_name] if args.key?(:application_name)
|
1288
|
+
@backup_appliance = args[:backup_appliance] if args.key?(:backup_appliance)
|
1289
|
+
@host_id = args[:host_id] if args.key?(:host_id)
|
1290
|
+
@hostname = args[:hostname] if args.key?(:hostname)
|
1291
|
+
@type = args[:type] if args.key?(:type)
|
1292
|
+
end
|
1293
|
+
end
|
1294
|
+
|
1295
|
+
# DataSourceGcpResource is used for protected resources that are Google Cloud
|
1296
|
+
# Resources. This name is easeier to understand than GcpResourceDataSource or
|
1297
|
+
# GcpDataSourceResource
|
1298
|
+
class DataSourceGcpResource
|
1299
|
+
include Google::Apis::Core::Hashable
|
1300
|
+
|
1301
|
+
# ComputeInstanceDataSourceProperties represents the properties of a
|
1302
|
+
# ComputeEngine resource that are stored in the DataSource.
|
1303
|
+
# Corresponds to the JSON property `computeInstanceDatasourceProperties`
|
1304
|
+
# @return [Google::Apis::BackupdrV1::ComputeInstanceDataSourceProperties]
|
1305
|
+
attr_accessor :compute_instance_datasource_properties
|
1306
|
+
|
1307
|
+
# Output only. Full resource pathname URL of the source Google Cloud resource.
|
1308
|
+
# Corresponds to the JSON property `gcpResourcename`
|
1309
|
+
# @return [String]
|
1310
|
+
attr_accessor :gcp_resourcename
|
1311
|
+
|
1312
|
+
# Location of the resource: //"global"/"unspecified".
|
1313
|
+
# Corresponds to the JSON property `location`
|
1314
|
+
# @return [String]
|
1315
|
+
attr_accessor :location
|
1316
|
+
|
1317
|
+
# The type of the Google Cloud resource. Use the Unified Resource Type, eg.
|
1318
|
+
# compute.googleapis.com/Instance.
|
1319
|
+
# Corresponds to the JSON property `type`
|
1320
|
+
# @return [String]
|
1321
|
+
attr_accessor :type
|
1322
|
+
|
1323
|
+
def initialize(**args)
|
1324
|
+
update!(**args)
|
1325
|
+
end
|
1326
|
+
|
1327
|
+
# Update properties of this object
|
1328
|
+
def update!(**args)
|
1329
|
+
@compute_instance_datasource_properties = args[:compute_instance_datasource_properties] if args.key?(:compute_instance_datasource_properties)
|
1330
|
+
@gcp_resourcename = args[:gcp_resourcename] if args.key?(:gcp_resourcename)
|
1331
|
+
@location = args[:location] if args.key?(:location)
|
1332
|
+
@type = args[:type] if args.key?(:type)
|
1333
|
+
end
|
1334
|
+
end
|
1335
|
+
|
1336
|
+
# A generic empty message that you can re-use to avoid defining duplicated empty
|
1337
|
+
# messages in your APIs. A typical example is to use it as the request or the
|
1338
|
+
# response type of an API method. For instance: service Foo ` rpc Bar(google.
|
1339
|
+
# protobuf.Empty) returns (google.protobuf.Empty); `
|
1340
|
+
class Empty
|
1341
|
+
include Google::Apis::Core::Hashable
|
1342
|
+
|
1343
|
+
def initialize(**args)
|
1344
|
+
update!(**args)
|
1345
|
+
end
|
1346
|
+
|
1347
|
+
# Update properties of this object
|
1348
|
+
def update!(**args)
|
1349
|
+
end
|
1350
|
+
end
|
1351
|
+
|
1352
|
+
# A key/value pair to be used for storing metadata.
|
1353
|
+
class Entry
|
1354
|
+
include Google::Apis::Core::Hashable
|
1355
|
+
|
1356
|
+
# Optional. Key for the metadata entry.
|
1357
|
+
# Corresponds to the JSON property `key`
|
1358
|
+
# @return [String]
|
1359
|
+
attr_accessor :key
|
1360
|
+
|
1361
|
+
# Optional. Value for the metadata entry. These are free-form strings, and only
|
1362
|
+
# have meaning as interpreted by the image running in the instance. The only
|
1363
|
+
# restriction placed on values is that their size must be less than or equal to
|
1364
|
+
# 262144 bytes (256 KiB).
|
1365
|
+
# Corresponds to the JSON property `value`
|
1366
|
+
# @return [String]
|
1367
|
+
attr_accessor :value
|
1368
|
+
|
1369
|
+
def initialize(**args)
|
1370
|
+
update!(**args)
|
1371
|
+
end
|
1372
|
+
|
1373
|
+
# Update properties of this object
|
1374
|
+
def update!(**args)
|
1375
|
+
@key = args[:key] if args.key?(:key)
|
1376
|
+
@value = args[:value] if args.key?(:value)
|
1377
|
+
end
|
1378
|
+
end
|
1379
|
+
|
1380
|
+
# Represents a textual expression in the Common Expression Language (CEL) syntax.
|
1381
|
+
# CEL is a C-like expression language. The syntax and semantics of CEL are
|
1382
|
+
# documented at https://github.com/google/cel-spec. Example (Comparison): title:
|
1383
|
+
# "Summary size limit" description: "Determines if a summary is less than 100
|
1384
|
+
# chars" expression: "document.summary.size() < 100" Example (Equality): title: "
|
1385
|
+
# Requestor is owner" description: "Determines if requestor is the document
|
1386
|
+
# owner" expression: "document.owner == request.auth.claims.email" Example (
|
1387
|
+
# Logic): title: "Public documents" description: "Determine whether the document
|
1388
|
+
# should be publicly visible" expression: "document.type != 'private' &&
|
1389
|
+
# document.type != 'internal'" Example (Data Manipulation): title: "Notification
|
1390
|
+
# string" description: "Create a notification string with a timestamp."
|
1391
|
+
# expression: "'New message received at ' + string(document.create_time)" The
|
1392
|
+
# exact variables and functions that may be referenced within an expression are
|
1393
|
+
# determined by the service that evaluates it. See the service documentation for
|
1394
|
+
# additional information.
|
1395
|
+
class Expr
|
1396
|
+
include Google::Apis::Core::Hashable
|
1397
|
+
|
1398
|
+
# Optional. Description of the expression. This is a longer text which describes
|
1399
|
+
# the expression, e.g. when hovered over it in a UI.
|
1400
|
+
# Corresponds to the JSON property `description`
|
1401
|
+
# @return [String]
|
1402
|
+
attr_accessor :description
|
1403
|
+
|
1404
|
+
# Textual representation of an expression in Common Expression Language syntax.
|
1405
|
+
# Corresponds to the JSON property `expression`
|
1406
|
+
# @return [String]
|
1407
|
+
attr_accessor :expression
|
1408
|
+
|
1409
|
+
# Optional. String indicating the location of the expression for error reporting,
|
1410
|
+
# e.g. a file name and a position in the file.
|
1411
|
+
# Corresponds to the JSON property `location`
|
1412
|
+
# @return [String]
|
1413
|
+
attr_accessor :location
|
1414
|
+
|
1415
|
+
# Optional. Title for the expression, i.e. a short string describing its purpose.
|
1416
|
+
# This can be used e.g. in UIs which allow to enter the expression.
|
1417
|
+
# Corresponds to the JSON property `title`
|
1418
|
+
# @return [String]
|
1419
|
+
attr_accessor :title
|
1420
|
+
|
1421
|
+
def initialize(**args)
|
1422
|
+
update!(**args)
|
1423
|
+
end
|
1424
|
+
|
1425
|
+
# Update properties of this object
|
1426
|
+
def update!(**args)
|
1427
|
+
@description = args[:description] if args.key?(:description)
|
1428
|
+
@expression = args[:expression] if args.key?(:expression)
|
1429
|
+
@location = args[:location] if args.key?(:location)
|
1430
|
+
@title = args[:title] if args.key?(:title)
|
1431
|
+
end
|
1432
|
+
end
|
1433
|
+
|
1434
|
+
# Request message for FetchAccessToken.
|
1435
|
+
class FetchAccessTokenRequest
|
1436
|
+
include Google::Apis::Core::Hashable
|
1437
|
+
|
1438
|
+
# Required. The generation of the backup to update.
|
1439
|
+
# Corresponds to the JSON property `generationId`
|
1440
|
+
# @return [Fixnum]
|
1441
|
+
attr_accessor :generation_id
|
1442
|
+
|
1443
|
+
def initialize(**args)
|
1444
|
+
update!(**args)
|
1445
|
+
end
|
1446
|
+
|
1447
|
+
# Update properties of this object
|
1448
|
+
def update!(**args)
|
1449
|
+
@generation_id = args[:generation_id] if args.key?(:generation_id)
|
1450
|
+
end
|
1451
|
+
end
|
1452
|
+
|
1453
|
+
# Response message for FetchAccessToken.
|
1454
|
+
class FetchAccessTokenResponse
|
1455
|
+
include Google::Apis::Core::Hashable
|
1456
|
+
|
1457
|
+
# The token is valid until this time.
|
1458
|
+
# Corresponds to the JSON property `expireTime`
|
1459
|
+
# @return [String]
|
1460
|
+
attr_accessor :expire_time
|
1461
|
+
|
1462
|
+
# The location in bucket that can be used for reading.
|
1463
|
+
# Corresponds to the JSON property `readLocation`
|
1464
|
+
# @return [String]
|
1465
|
+
attr_accessor :read_location
|
1466
|
+
|
1467
|
+
# The downscoped token that was created.
|
1468
|
+
# Corresponds to the JSON property `token`
|
1469
|
+
# @return [String]
|
1470
|
+
attr_accessor :token
|
1471
|
+
|
1472
|
+
# The location in bucket that can be used for writing.
|
1473
|
+
# Corresponds to the JSON property `writeLocation`
|
1474
|
+
# @return [String]
|
1475
|
+
attr_accessor :write_location
|
1476
|
+
|
1477
|
+
def initialize(**args)
|
1478
|
+
update!(**args)
|
1479
|
+
end
|
1480
|
+
|
1481
|
+
# Update properties of this object
|
1482
|
+
def update!(**args)
|
1483
|
+
@expire_time = args[:expire_time] if args.key?(:expire_time)
|
1484
|
+
@read_location = args[:read_location] if args.key?(:read_location)
|
1485
|
+
@token = args[:token] if args.key?(:token)
|
1486
|
+
@write_location = args[:write_location] if args.key?(:write_location)
|
1487
|
+
end
|
1488
|
+
end
|
1489
|
+
|
1490
|
+
# Response message for fetching usable BackupVaults.
|
1491
|
+
class FetchUsableBackupVaultsResponse
|
1492
|
+
include Google::Apis::Core::Hashable
|
1493
|
+
|
1494
|
+
# The list of BackupVault instances in the project for the specified location.
|
1495
|
+
# If the '`location`' value in the request is "-", the response contains a list
|
1496
|
+
# of instances from all locations. In case any location is unreachable, the
|
1497
|
+
# response will only return backup vaults in reachable locations and the '
|
1498
|
+
# unreachable' field will be populated with a list of unreachable locations.
|
1499
|
+
# Corresponds to the JSON property `backupVaults`
|
1500
|
+
# @return [Array<Google::Apis::BackupdrV1::BackupVault>]
|
1501
|
+
attr_accessor :backup_vaults
|
1502
|
+
|
1503
|
+
# A token identifying a page of results the server should return.
|
1504
|
+
# Corresponds to the JSON property `nextPageToken`
|
1505
|
+
# @return [String]
|
1506
|
+
attr_accessor :next_page_token
|
1507
|
+
|
1508
|
+
# Locations that could not be reached.
|
1509
|
+
# Corresponds to the JSON property `unreachable`
|
1510
|
+
# @return [Array<String>]
|
1511
|
+
attr_accessor :unreachable
|
1512
|
+
|
1513
|
+
def initialize(**args)
|
1514
|
+
update!(**args)
|
1515
|
+
end
|
1516
|
+
|
1517
|
+
# Update properties of this object
|
1518
|
+
def update!(**args)
|
1519
|
+
@backup_vaults = args[:backup_vaults] if args.key?(:backup_vaults)
|
1520
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
1521
|
+
@unreachable = args[:unreachable] if args.key?(:unreachable)
|
1522
|
+
end
|
1523
|
+
end
|
1524
|
+
|
1525
|
+
# Message for finalizing a Backup.
|
1526
|
+
class FinalizeBackupRequest
|
1527
|
+
include Google::Apis::Core::Hashable
|
1528
|
+
|
1529
|
+
# Required. Resource ID of the Backup resource to be finalized. This must be the
|
1530
|
+
# same backup_id that was used in the InitiateBackupRequest.
|
1531
|
+
# Corresponds to the JSON property `backupId`
|
1532
|
+
# @return [String]
|
1533
|
+
attr_accessor :backup_id
|
1534
|
+
|
1535
|
+
# The point in time when this backup was captured from the source. This will be
|
1536
|
+
# assigned to the consistency_time field of the newly created Backup.
|
1537
|
+
# Corresponds to the JSON property `consistencyTime`
|
1538
|
+
# @return [String]
|
1539
|
+
attr_accessor :consistency_time
|
1540
|
+
|
1541
|
+
# This will be assigned to the description field of the newly created Backup.
|
1542
|
+
# Corresponds to the JSON property `description`
|
1543
|
+
# @return [String]
|
1544
|
+
attr_accessor :description
|
1545
|
+
|
1546
|
+
# The latest timestamp of data available in this Backup. This will be set on the
|
1547
|
+
# newly created Backup.
|
1548
|
+
# Corresponds to the JSON property `recoveryRangeEndTime`
|
1549
|
+
# @return [String]
|
1550
|
+
attr_accessor :recovery_range_end_time
|
1551
|
+
|
1552
|
+
# The earliest timestamp of data available in this Backup. This will set on the
|
1553
|
+
# newly created Backup.
|
1554
|
+
# Corresponds to the JSON property `recoveryRangeStartTime`
|
1555
|
+
# @return [String]
|
1556
|
+
attr_accessor :recovery_range_start_time
|
1557
|
+
|
1558
|
+
# Optional. An optional request ID to identify requests. Specify a unique
|
1559
|
+
# request ID so that if you must retry your request, the server will know to
|
1560
|
+
# ignore the request if it has already been completed. The server will guarantee
|
1561
|
+
# that for at least 60 minutes after the first request. For example, consider a
|
1562
|
+
# situation where you make an initial request and the request times out. If you
|
1563
|
+
# make the request again with the same request ID, the server can check if
|
1564
|
+
# original operation with the same request ID was received, and if so, will
|
1565
|
+
# ignore the second request. This prevents clients from accidentally creating
|
1566
|
+
# duplicate commitments. The request ID must be a valid UUID with the exception
|
1567
|
+
# that zero UUID is not supported (00000000-0000-0000-0000-000000000000).
|
1568
|
+
# Corresponds to the JSON property `requestId`
|
1569
|
+
# @return [String]
|
1570
|
+
attr_accessor :request_id
|
1571
|
+
|
1572
|
+
# The ExpireTime on the backup will be set to FinalizeTime plus this duration.
|
1573
|
+
# If the resulting ExpireTime is less than EnforcedRetentionEndTime, then
|
1574
|
+
# ExpireTime is set to EnforcedRetentionEndTime.
|
1575
|
+
# Corresponds to the JSON property `retentionDuration`
|
1576
|
+
# @return [String]
|
1577
|
+
attr_accessor :retention_duration
|
1578
|
+
|
1579
|
+
def initialize(**args)
|
1580
|
+
update!(**args)
|
1581
|
+
end
|
1582
|
+
|
1583
|
+
# Update properties of this object
|
1584
|
+
def update!(**args)
|
1585
|
+
@backup_id = args[:backup_id] if args.key?(:backup_id)
|
1586
|
+
@consistency_time = args[:consistency_time] if args.key?(:consistency_time)
|
1587
|
+
@description = args[:description] if args.key?(:description)
|
1588
|
+
@recovery_range_end_time = args[:recovery_range_end_time] if args.key?(:recovery_range_end_time)
|
1589
|
+
@recovery_range_start_time = args[:recovery_range_start_time] if args.key?(:recovery_range_start_time)
|
1590
|
+
@request_id = args[:request_id] if args.key?(:request_id)
|
1591
|
+
@retention_duration = args[:retention_duration] if args.key?(:retention_duration)
|
1592
|
+
end
|
1593
|
+
end
|
1594
|
+
|
1595
|
+
# GCPBackupPlanInfo captures the plan configuration details of Google Cloud
|
1596
|
+
# resources at the time of backup.
|
1597
|
+
class GcpBackupPlanInfo
|
1598
|
+
include Google::Apis::Core::Hashable
|
1599
|
+
|
1600
|
+
# Resource name of backup plan by which workload is protected at the time of the
|
1601
|
+
# backup. Format: projects/`project`/locations/`location`/backupPlans/`
|
1602
|
+
# backupPlanId`
|
1603
|
+
# Corresponds to the JSON property `backupPlan`
|
1604
|
+
# @return [String]
|
1605
|
+
attr_accessor :backup_plan
|
1606
|
+
|
1607
|
+
# The rule id of the backup plan which triggered this backup in case of
|
1608
|
+
# scheduled backup or used for
|
1609
|
+
# Corresponds to the JSON property `backupPlanRuleId`
|
1610
|
+
# @return [String]
|
1611
|
+
attr_accessor :backup_plan_rule_id
|
1612
|
+
|
1613
|
+
def initialize(**args)
|
1614
|
+
update!(**args)
|
1615
|
+
end
|
1616
|
+
|
1617
|
+
# Update properties of this object
|
1618
|
+
def update!(**args)
|
1619
|
+
@backup_plan = args[:backup_plan] if args.key?(:backup_plan)
|
1620
|
+
@backup_plan_rule_id = args[:backup_plan_rule_id] if args.key?(:backup_plan_rule_id)
|
1621
|
+
end
|
1622
|
+
end
|
1623
|
+
|
1624
|
+
# GcpBackupConfig captures the Backup configuration details for Google Cloud
|
1625
|
+
# resources. All Google Cloud resources regardless of type are protected with
|
1626
|
+
# backup plan associations.
|
1627
|
+
class GcpBackupConfig
|
1628
|
+
include Google::Apis::Core::Hashable
|
1629
|
+
|
1630
|
+
# The name of the backup plan.
|
1631
|
+
# Corresponds to the JSON property `backupPlan`
|
1632
|
+
# @return [String]
|
1633
|
+
attr_accessor :backup_plan
|
1634
|
+
|
1635
|
+
# The name of the backup plan association.
|
1636
|
+
# Corresponds to the JSON property `backupPlanAssociation`
|
1637
|
+
# @return [String]
|
1638
|
+
attr_accessor :backup_plan_association
|
1639
|
+
|
1640
|
+
# The description of the backup plan.
|
1641
|
+
# Corresponds to the JSON property `backupPlanDescription`
|
1642
|
+
# @return [String]
|
1643
|
+
attr_accessor :backup_plan_description
|
1644
|
+
|
1645
|
+
# The names of the backup plan rules which point to this backupvault
|
1646
|
+
# Corresponds to the JSON property `backupPlanRules`
|
1647
|
+
# @return [Array<String>]
|
1648
|
+
attr_accessor :backup_plan_rules
|
1649
|
+
|
1650
|
+
def initialize(**args)
|
1651
|
+
update!(**args)
|
1652
|
+
end
|
1653
|
+
|
1654
|
+
# Update properties of this object
|
1655
|
+
def update!(**args)
|
1656
|
+
@backup_plan = args[:backup_plan] if args.key?(:backup_plan)
|
1657
|
+
@backup_plan_association = args[:backup_plan_association] if args.key?(:backup_plan_association)
|
1658
|
+
@backup_plan_description = args[:backup_plan_description] if args.key?(:backup_plan_description)
|
1659
|
+
@backup_plan_rules = args[:backup_plan_rules] if args.key?(:backup_plan_rules)
|
1660
|
+
end
|
1661
|
+
end
|
1662
|
+
|
1663
|
+
# Feature type of the Guest OS.
|
1664
|
+
class GuestOsFeature
|
1665
|
+
include Google::Apis::Core::Hashable
|
1666
|
+
|
1667
|
+
# The ID of a supported feature.
|
1668
|
+
# Corresponds to the JSON property `type`
|
1669
|
+
# @return [String]
|
1670
|
+
attr_accessor :type
|
1671
|
+
|
1672
|
+
def initialize(**args)
|
1673
|
+
update!(**args)
|
1674
|
+
end
|
1675
|
+
|
1676
|
+
# Update properties of this object
|
1677
|
+
def update!(**args)
|
1678
|
+
@type = args[:type] if args.key?(:type)
|
1679
|
+
end
|
1680
|
+
end
|
1681
|
+
|
1682
|
+
# Specifies the parameters to initialize this disk.
|
1683
|
+
class InitializeParams
|
1684
|
+
include Google::Apis::Core::Hashable
|
1685
|
+
|
1686
|
+
# Optional. Specifies the disk name. If not specified, the default is to use the
|
1687
|
+
# name of the instance.
|
1688
|
+
# Corresponds to the JSON property `diskName`
|
1689
|
+
# @return [String]
|
1690
|
+
attr_accessor :disk_name
|
1691
|
+
|
1692
|
+
# Optional. URL of the zone where the disk should be created. Required for each
|
1693
|
+
# regional disk associated with the instance.
|
1694
|
+
# Corresponds to the JSON property `replicaZones`
|
1695
|
+
# @return [Array<String>]
|
1696
|
+
attr_accessor :replica_zones
|
1697
|
+
|
1698
|
+
def initialize(**args)
|
1699
|
+
update!(**args)
|
1700
|
+
end
|
1701
|
+
|
1702
|
+
# Update properties of this object
|
1703
|
+
def update!(**args)
|
1704
|
+
@disk_name = args[:disk_name] if args.key?(:disk_name)
|
1705
|
+
@replica_zones = args[:replica_zones] if args.key?(:replica_zones)
|
1706
|
+
end
|
1707
|
+
end
|
1708
|
+
|
1709
|
+
# request message for InitiateBackup.
|
1710
|
+
class InitiateBackupRequest
|
1711
|
+
include Google::Apis::Core::Hashable
|
1712
|
+
|
1713
|
+
# Required. Resource ID of the Backup resource.
|
1714
|
+
# Corresponds to the JSON property `backupId`
|
1715
|
+
# @return [String]
|
1716
|
+
attr_accessor :backup_id
|
1717
|
+
|
1718
|
+
# Optional. An optional request ID to identify requests. Specify a unique
|
1719
|
+
# request ID so that if you must retry your request, the server will know to
|
1720
|
+
# ignore the request if it has already been completed. The server will guarantee
|
1721
|
+
# that for at least 60 minutes since the first request. For example, consider a
|
1722
|
+
# situation where you make an initial request and the request times out. If you
|
1723
|
+
# make the request again with the same request ID, the server can check if
|
1724
|
+
# original operation with the same request ID was received, and if so, will
|
1725
|
+
# ignore the second request. This prevents clients from accidentally creating
|
1726
|
+
# duplicate commitments. The request ID must be a valid UUID with the exception
|
1727
|
+
# that zero UUID is not supported (00000000-0000-0000-0000-000000000000).
|
1728
|
+
# Corresponds to the JSON property `requestId`
|
1729
|
+
# @return [String]
|
1730
|
+
attr_accessor :request_id
|
1731
|
+
|
1732
|
+
def initialize(**args)
|
1733
|
+
update!(**args)
|
1734
|
+
end
|
1735
|
+
|
1736
|
+
# Update properties of this object
|
1737
|
+
def update!(**args)
|
1738
|
+
@backup_id = args[:backup_id] if args.key?(:backup_id)
|
1739
|
+
@request_id = args[:request_id] if args.key?(:request_id)
|
1740
|
+
end
|
1741
|
+
end
|
1742
|
+
|
1743
|
+
# Response message for InitiateBackup.
|
1744
|
+
class InitiateBackupResponse
|
1745
|
+
include Google::Apis::Core::Hashable
|
1746
|
+
|
1747
|
+
# The name of the backup that was created.
|
1748
|
+
# Corresponds to the JSON property `backup`
|
1749
|
+
# @return [String]
|
1750
|
+
attr_accessor :backup
|
1751
|
+
|
1752
|
+
# The generation id of the base backup. It is needed for the incremental backups.
|
1753
|
+
# Corresponds to the JSON property `baseBackupGenerationId`
|
1754
|
+
# @return [Fixnum]
|
1755
|
+
attr_accessor :base_backup_generation_id
|
1756
|
+
|
1757
|
+
# The generation id of the new backup.
|
1758
|
+
# Corresponds to the JSON property `newBackupGenerationId`
|
1759
|
+
# @return [Fixnum]
|
1760
|
+
attr_accessor :new_backup_generation_id
|
1761
|
+
|
1762
|
+
def initialize(**args)
|
1763
|
+
update!(**args)
|
1764
|
+
end
|
1765
|
+
|
1766
|
+
# Update properties of this object
|
1767
|
+
def update!(**args)
|
1768
|
+
@backup = args[:backup] if args.key?(:backup)
|
1769
|
+
@base_backup_generation_id = args[:base_backup_generation_id] if args.key?(:base_backup_generation_id)
|
1770
|
+
@new_backup_generation_id = args[:new_backup_generation_id] if args.key?(:new_backup_generation_id)
|
1771
|
+
end
|
1772
|
+
end
|
1773
|
+
|
1774
|
+
# Response message for listing BackupVaults.
|
1775
|
+
class ListBackupVaultsResponse
|
1776
|
+
include Google::Apis::Core::Hashable
|
1777
|
+
|
1778
|
+
# The list of BackupVault instances in the project for the specified location.
|
1779
|
+
# If the '`location`' value in the request is "-", the response contains a list
|
1780
|
+
# of instances from all locations. In case any location is unreachable, the
|
1781
|
+
# response will only return backup vaults in reachable locations and the '
|
1782
|
+
# unreachable' field will be populated with a list of unreachable locations.
|
1783
|
+
# Corresponds to the JSON property `backupVaults`
|
1784
|
+
# @return [Array<Google::Apis::BackupdrV1::BackupVault>]
|
1785
|
+
attr_accessor :backup_vaults
|
1786
|
+
|
1787
|
+
# A token identifying a page of results the server should return.
|
1788
|
+
# Corresponds to the JSON property `nextPageToken`
|
1789
|
+
# @return [String]
|
1790
|
+
attr_accessor :next_page_token
|
1791
|
+
|
1792
|
+
# Locations that could not be reached.
|
1793
|
+
# Corresponds to the JSON property `unreachable`
|
1794
|
+
# @return [Array<String>]
|
1795
|
+
attr_accessor :unreachable
|
200
1796
|
|
201
1797
|
def initialize(**args)
|
202
1798
|
update!(**args)
|
@@ -204,65 +1800,69 @@ module Google
|
|
204
1800
|
|
205
1801
|
# Update properties of this object
|
206
1802
|
def update!(**args)
|
1803
|
+
@backup_vaults = args[:backup_vaults] if args.key?(:backup_vaults)
|
1804
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
1805
|
+
@unreachable = args[:unreachable] if args.key?(:unreachable)
|
207
1806
|
end
|
208
1807
|
end
|
209
1808
|
|
210
|
-
#
|
211
|
-
|
212
|
-
# response type of an API method. For instance: service Foo ` rpc Bar(google.
|
213
|
-
# protobuf.Empty) returns (google.protobuf.Empty); `
|
214
|
-
class Empty
|
1809
|
+
# Response message for listing Backups.
|
1810
|
+
class ListBackupsResponse
|
215
1811
|
include Google::Apis::Core::Hashable
|
216
1812
|
|
1813
|
+
# The list of Backup instances in the project for the specified location. If the
|
1814
|
+
# '`location`' value in the request is "-", the response contains a list of
|
1815
|
+
# instances from all locations. In case any location is unreachable, the
|
1816
|
+
# response will only return data sources in reachable locations and the '
|
1817
|
+
# unreachable' field will be populated with a list of unreachable locations.
|
1818
|
+
# Corresponds to the JSON property `backups`
|
1819
|
+
# @return [Array<Google::Apis::BackupdrV1::Backup>]
|
1820
|
+
attr_accessor :backups
|
1821
|
+
|
1822
|
+
# A token identifying a page of results the server should return.
|
1823
|
+
# Corresponds to the JSON property `nextPageToken`
|
1824
|
+
# @return [String]
|
1825
|
+
attr_accessor :next_page_token
|
1826
|
+
|
1827
|
+
# Locations that could not be reached.
|
1828
|
+
# Corresponds to the JSON property `unreachable`
|
1829
|
+
# @return [Array<String>]
|
1830
|
+
attr_accessor :unreachable
|
1831
|
+
|
217
1832
|
def initialize(**args)
|
218
1833
|
update!(**args)
|
219
1834
|
end
|
220
1835
|
|
221
1836
|
# Update properties of this object
|
222
1837
|
def update!(**args)
|
1838
|
+
@backups = args[:backups] if args.key?(:backups)
|
1839
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
1840
|
+
@unreachable = args[:unreachable] if args.key?(:unreachable)
|
223
1841
|
end
|
224
1842
|
end
|
225
1843
|
|
226
|
-
#
|
227
|
-
|
228
|
-
# documented at https://github.com/google/cel-spec. Example (Comparison): title:
|
229
|
-
# "Summary size limit" description: "Determines if a summary is less than 100
|
230
|
-
# chars" expression: "document.summary.size() < 100" Example (Equality): title: "
|
231
|
-
# Requestor is owner" description: "Determines if requestor is the document
|
232
|
-
# owner" expression: "document.owner == request.auth.claims.email" Example (
|
233
|
-
# Logic): title: "Public documents" description: "Determine whether the document
|
234
|
-
# should be publicly visible" expression: "document.type != 'private' &&
|
235
|
-
# document.type != 'internal'" Example (Data Manipulation): title: "Notification
|
236
|
-
# string" description: "Create a notification string with a timestamp."
|
237
|
-
# expression: "'New message received at ' + string(document.create_time)" The
|
238
|
-
# exact variables and functions that may be referenced within an expression are
|
239
|
-
# determined by the service that evaluates it. See the service documentation for
|
240
|
-
# additional information.
|
241
|
-
class Expr
|
1844
|
+
# Response message for listing DataSources.
|
1845
|
+
class ListDataSourcesResponse
|
242
1846
|
include Google::Apis::Core::Hashable
|
243
1847
|
|
244
|
-
#
|
245
|
-
# the
|
246
|
-
#
|
247
|
-
#
|
248
|
-
|
249
|
-
|
250
|
-
#
|
251
|
-
|
252
|
-
# @return [String]
|
253
|
-
attr_accessor :expression
|
1848
|
+
# The list of DataSource instances in the project for the specified location. If
|
1849
|
+
# the '`location`' value in the request is "-", the response contains a list of
|
1850
|
+
# instances from all locations. In case any location is unreachable, the
|
1851
|
+
# response will only return data sources in reachable locations and the '
|
1852
|
+
# unreachable' field will be populated with a list of unreachable locations.
|
1853
|
+
# Corresponds to the JSON property `dataSources`
|
1854
|
+
# @return [Array<Google::Apis::BackupdrV1::DataSource>]
|
1855
|
+
attr_accessor :data_sources
|
254
1856
|
|
255
|
-
#
|
256
|
-
#
|
257
|
-
# Corresponds to the JSON property `location`
|
1857
|
+
# A token identifying a page of results the server should return.
|
1858
|
+
# Corresponds to the JSON property `nextPageToken`
|
258
1859
|
# @return [String]
|
259
|
-
attr_accessor :
|
1860
|
+
attr_accessor :next_page_token
|
260
1861
|
|
261
|
-
#
|
262
|
-
#
|
263
|
-
#
|
264
|
-
|
265
|
-
attr_accessor :title
|
1862
|
+
# Locations that could not be reached.
|
1863
|
+
# Corresponds to the JSON property `unreachable`
|
1864
|
+
# @return [Array<String>]
|
1865
|
+
attr_accessor :unreachable
|
266
1866
|
|
267
1867
|
def initialize(**args)
|
268
1868
|
update!(**args)
|
@@ -270,10 +1870,9 @@ module Google
|
|
270
1870
|
|
271
1871
|
# Update properties of this object
|
272
1872
|
def update!(**args)
|
273
|
-
@
|
274
|
-
@
|
275
|
-
@
|
276
|
-
@title = args[:title] if args.key?(:title)
|
1873
|
+
@data_sources = args[:data_sources] if args.key?(:data_sources)
|
1874
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
1875
|
+
@unreachable = args[:unreachable] if args.key?(:unreachable)
|
277
1876
|
end
|
278
1877
|
end
|
279
1878
|
|
@@ -307,7 +1906,7 @@ module Google
|
|
307
1906
|
include Google::Apis::Core::Hashable
|
308
1907
|
|
309
1908
|
# The list of ManagementServer instances in the project for the specified
|
310
|
-
# location. If the
|
1909
|
+
# location. If the '`location`' value in the request is "-", the response
|
311
1910
|
# contains a list of instances from all locations. In case any location is
|
312
1911
|
# unreachable, the response will only return management servers in reachable
|
313
1912
|
# locations and the 'unreachable' field will be populated with a list of
|
@@ -462,12 +2061,24 @@ module Google
|
|
462
2061
|
|
463
2062
|
# Output only. The OAuth 2.0 client id is required to make API calls to the
|
464
2063
|
# BackupDR instance API of this ManagementServer. This is the value that should
|
465
|
-
# be provided in the
|
2064
|
+
# be provided in the 'aud' field of the OIDC ID Token (see openid specification
|
466
2065
|
# https://openid.net/specs/openid-connect-core-1_0.html#IDToken).
|
467
2066
|
# Corresponds to the JSON property `oauth2ClientId`
|
468
2067
|
# @return [String]
|
469
2068
|
attr_accessor :oauth2_client_id
|
470
2069
|
|
2070
|
+
# Output only. Reserved for future use.
|
2071
|
+
# Corresponds to the JSON property `satisfiesPzi`
|
2072
|
+
# @return [Boolean]
|
2073
|
+
attr_accessor :satisfies_pzi
|
2074
|
+
alias_method :satisfies_pzi?, :satisfies_pzi
|
2075
|
+
|
2076
|
+
# Output only. Reserved for future use.
|
2077
|
+
# Corresponds to the JSON property `satisfiesPzs`
|
2078
|
+
# @return [Boolean]
|
2079
|
+
attr_accessor :satisfies_pzs
|
2080
|
+
alias_method :satisfies_pzs?, :satisfies_pzs
|
2081
|
+
|
471
2082
|
# Output only. The ManagementServer state.
|
472
2083
|
# Corresponds to the JSON property `state`
|
473
2084
|
# @return [String]
|
@@ -508,6 +2119,8 @@ module Google
|
|
508
2119
|
@name = args[:name] if args.key?(:name)
|
509
2120
|
@networks = args[:networks] if args.key?(:networks)
|
510
2121
|
@oauth2_client_id = args[:oauth2_client_id] if args.key?(:oauth2_client_id)
|
2122
|
+
@satisfies_pzi = args[:satisfies_pzi] if args.key?(:satisfies_pzi)
|
2123
|
+
@satisfies_pzs = args[:satisfies_pzs] if args.key?(:satisfies_pzs)
|
511
2124
|
@state = args[:state] if args.key?(:state)
|
512
2125
|
@type = args[:type] if args.key?(:type)
|
513
2126
|
@update_time = args[:update_time] if args.key?(:update_time)
|
@@ -541,6 +2154,26 @@ module Google
|
|
541
2154
|
end
|
542
2155
|
end
|
543
2156
|
|
2157
|
+
# A metadata key/value entry.
|
2158
|
+
class Metadata
|
2159
|
+
include Google::Apis::Core::Hashable
|
2160
|
+
|
2161
|
+
# Optional. Array of key/value pairs. The total size of all keys and values must
|
2162
|
+
# be less than 512 KB.
|
2163
|
+
# Corresponds to the JSON property `items`
|
2164
|
+
# @return [Array<Google::Apis::BackupdrV1::Entry>]
|
2165
|
+
attr_accessor :items
|
2166
|
+
|
2167
|
+
def initialize(**args)
|
2168
|
+
update!(**args)
|
2169
|
+
end
|
2170
|
+
|
2171
|
+
# Update properties of this object
|
2172
|
+
def update!(**args)
|
2173
|
+
@items = args[:items] if args.key?(:items)
|
2174
|
+
end
|
2175
|
+
end
|
2176
|
+
|
544
2177
|
# Network configuration for ManagementServer instance.
|
545
2178
|
class NetworkConfig
|
546
2179
|
include Google::Apis::Core::Hashable
|
@@ -568,6 +2201,154 @@ module Google
|
|
568
2201
|
end
|
569
2202
|
end
|
570
2203
|
|
2204
|
+
# A network interface resource attached to an instance. s
|
2205
|
+
class NetworkInterface
|
2206
|
+
include Google::Apis::Core::Hashable
|
2207
|
+
|
2208
|
+
# Optional. An array of configurations for this interface. Currently, only one
|
2209
|
+
# access config,ONE_TO_ONE_NAT is supported. If there are no accessConfigs
|
2210
|
+
# specified, then this instance will have no external internet access.
|
2211
|
+
# Corresponds to the JSON property `accessConfigs`
|
2212
|
+
# @return [Array<Google::Apis::BackupdrV1::AccessConfig>]
|
2213
|
+
attr_accessor :access_configs
|
2214
|
+
|
2215
|
+
# Optional. An array of alias IP ranges for this network interface. You can only
|
2216
|
+
# specify this field for network interfaces in VPC networks.
|
2217
|
+
# Corresponds to the JSON property `aliasIpRanges`
|
2218
|
+
# @return [Array<Google::Apis::BackupdrV1::AliasIpRange>]
|
2219
|
+
attr_accessor :alias_ip_ranges
|
2220
|
+
|
2221
|
+
# Optional. The prefix length of the primary internal IPv6 range.
|
2222
|
+
# Corresponds to the JSON property `internalIpv6PrefixLength`
|
2223
|
+
# @return [Fixnum]
|
2224
|
+
attr_accessor :internal_ipv6_prefix_length
|
2225
|
+
|
2226
|
+
# Optional. An array of IPv6 access configurations for this interface. Currently,
|
2227
|
+
# only one IPv6 access config, DIRECT_IPV6, is supported. If there is no
|
2228
|
+
# ipv6AccessConfig specified, then this instance will have no external IPv6
|
2229
|
+
# Internet access.
|
2230
|
+
# Corresponds to the JSON property `ipv6AccessConfigs`
|
2231
|
+
# @return [Array<Google::Apis::BackupdrV1::AccessConfig>]
|
2232
|
+
attr_accessor :ipv6_access_configs
|
2233
|
+
|
2234
|
+
# Optional. [Output Only] One of EXTERNAL, INTERNAL to indicate whether the IP
|
2235
|
+
# can be accessed from the Internet. This field is always inherited from its
|
2236
|
+
# subnetwork.
|
2237
|
+
# Corresponds to the JSON property `ipv6AccessType`
|
2238
|
+
# @return [String]
|
2239
|
+
attr_accessor :ipv6_access_type
|
2240
|
+
|
2241
|
+
# Optional. An IPv6 internal network address for this network interface. To use
|
2242
|
+
# a static internal IP address, it must be unused and in the same region as the
|
2243
|
+
# instance's zone. If not specified, Google Cloud will automatically assign an
|
2244
|
+
# internal IPv6 address from the instance's subnetwork.
|
2245
|
+
# Corresponds to the JSON property `ipv6Address`
|
2246
|
+
# @return [String]
|
2247
|
+
attr_accessor :ipv6_address
|
2248
|
+
|
2249
|
+
# Output only. [Output Only] The name of the network interface, which is
|
2250
|
+
# generated by the server.
|
2251
|
+
# Corresponds to the JSON property `name`
|
2252
|
+
# @return [String]
|
2253
|
+
attr_accessor :name
|
2254
|
+
|
2255
|
+
# Optional. URL of the VPC network resource for this instance.
|
2256
|
+
# Corresponds to the JSON property `network`
|
2257
|
+
# @return [String]
|
2258
|
+
attr_accessor :network
|
2259
|
+
|
2260
|
+
# Optional. The URL of the network attachment that this interface should connect
|
2261
|
+
# to in the following format: projects/`project_number`/regions/`region_name`/
|
2262
|
+
# networkAttachments/`network_attachment_name`.
|
2263
|
+
# Corresponds to the JSON property `networkAttachment`
|
2264
|
+
# @return [String]
|
2265
|
+
attr_accessor :network_attachment
|
2266
|
+
|
2267
|
+
# Optional. An IPv4 internal IP address to assign to the instance for this
|
2268
|
+
# network interface. If not specified by the user, an unused internal IP is
|
2269
|
+
# assigned by the system.
|
2270
|
+
# Corresponds to the JSON property `networkIP`
|
2271
|
+
# @return [String]
|
2272
|
+
attr_accessor :network_ip
|
2273
|
+
|
2274
|
+
# Optional. The type of vNIC to be used on this interface. This may be gVNIC or
|
2275
|
+
# VirtioNet.
|
2276
|
+
# Corresponds to the JSON property `nicType`
|
2277
|
+
# @return [String]
|
2278
|
+
attr_accessor :nic_type
|
2279
|
+
|
2280
|
+
# Optional. The networking queue count that's specified by users for the network
|
2281
|
+
# interface. Both Rx and Tx queues will be set to this number. It'll be empty if
|
2282
|
+
# not specified by the users.
|
2283
|
+
# Corresponds to the JSON property `queueCount`
|
2284
|
+
# @return [Fixnum]
|
2285
|
+
attr_accessor :queue_count
|
2286
|
+
|
2287
|
+
# The stack type for this network interface.
|
2288
|
+
# Corresponds to the JSON property `stackType`
|
2289
|
+
# @return [String]
|
2290
|
+
attr_accessor :stack_type
|
2291
|
+
|
2292
|
+
# Optional. The URL of the Subnetwork resource for this instance.
|
2293
|
+
# Corresponds to the JSON property `subnetwork`
|
2294
|
+
# @return [String]
|
2295
|
+
attr_accessor :subnetwork
|
2296
|
+
|
2297
|
+
def initialize(**args)
|
2298
|
+
update!(**args)
|
2299
|
+
end
|
2300
|
+
|
2301
|
+
# Update properties of this object
|
2302
|
+
def update!(**args)
|
2303
|
+
@access_configs = args[:access_configs] if args.key?(:access_configs)
|
2304
|
+
@alias_ip_ranges = args[:alias_ip_ranges] if args.key?(:alias_ip_ranges)
|
2305
|
+
@internal_ipv6_prefix_length = args[:internal_ipv6_prefix_length] if args.key?(:internal_ipv6_prefix_length)
|
2306
|
+
@ipv6_access_configs = args[:ipv6_access_configs] if args.key?(:ipv6_access_configs)
|
2307
|
+
@ipv6_access_type = args[:ipv6_access_type] if args.key?(:ipv6_access_type)
|
2308
|
+
@ipv6_address = args[:ipv6_address] if args.key?(:ipv6_address)
|
2309
|
+
@name = args[:name] if args.key?(:name)
|
2310
|
+
@network = args[:network] if args.key?(:network)
|
2311
|
+
@network_attachment = args[:network_attachment] if args.key?(:network_attachment)
|
2312
|
+
@network_ip = args[:network_ip] if args.key?(:network_ip)
|
2313
|
+
@nic_type = args[:nic_type] if args.key?(:nic_type)
|
2314
|
+
@queue_count = args[:queue_count] if args.key?(:queue_count)
|
2315
|
+
@stack_type = args[:stack_type] if args.key?(:stack_type)
|
2316
|
+
@subnetwork = args[:subnetwork] if args.key?(:subnetwork)
|
2317
|
+
end
|
2318
|
+
end
|
2319
|
+
|
2320
|
+
# Node Affinity: the configuration of desired nodes onto which this Instance
|
2321
|
+
# could be scheduled.
|
2322
|
+
class NodeAffinity
|
2323
|
+
include Google::Apis::Core::Hashable
|
2324
|
+
|
2325
|
+
# Optional. Corresponds to the label key of Node resource.
|
2326
|
+
# Corresponds to the JSON property `key`
|
2327
|
+
# @return [String]
|
2328
|
+
attr_accessor :key
|
2329
|
+
|
2330
|
+
# Optional. Defines the operation of node selection.
|
2331
|
+
# Corresponds to the JSON property `operator`
|
2332
|
+
# @return [String]
|
2333
|
+
attr_accessor :operator
|
2334
|
+
|
2335
|
+
# Optional. Corresponds to the label values of Node resource.
|
2336
|
+
# Corresponds to the JSON property `values`
|
2337
|
+
# @return [Array<String>]
|
2338
|
+
attr_accessor :values
|
2339
|
+
|
2340
|
+
def initialize(**args)
|
2341
|
+
update!(**args)
|
2342
|
+
end
|
2343
|
+
|
2344
|
+
# Update properties of this object
|
2345
|
+
def update!(**args)
|
2346
|
+
@key = args[:key] if args.key?(:key)
|
2347
|
+
@operator = args[:operator] if args.key?(:operator)
|
2348
|
+
@values = args[:values] if args.key?(:values)
|
2349
|
+
end
|
2350
|
+
end
|
2351
|
+
|
571
2352
|
# This resource represents a long-running operation that is the result of a
|
572
2353
|
# network API call.
|
573
2354
|
class Operation
|
@@ -657,8 +2438,8 @@ module Google
|
|
657
2438
|
|
658
2439
|
# Output only. Identifies whether the user has requested cancellation of the
|
659
2440
|
# operation. Operations that have successfully been cancelled have Operation.
|
660
|
-
# error value with a google.rpc.Status.code of 1, corresponding to
|
661
|
-
# CANCELLED
|
2441
|
+
# error value with a google.rpc.Status.code of 1, corresponding to 'Code.
|
2442
|
+
# CANCELLED'.
|
662
2443
|
# Corresponds to the JSON property `requestedCancellation`
|
663
2444
|
# @return [Boolean]
|
664
2445
|
attr_accessor :requested_cancellation
|
@@ -791,6 +2572,177 @@ module Google
|
|
791
2572
|
end
|
792
2573
|
end
|
793
2574
|
|
2575
|
+
# Message for deleting a DataSource.
|
2576
|
+
class RemoveDataSourceRequest
|
2577
|
+
include Google::Apis::Core::Hashable
|
2578
|
+
|
2579
|
+
# Optional. An optional request ID to identify requests. Specify a unique
|
2580
|
+
# request ID so that if you must retry your request, the server will know to
|
2581
|
+
# ignore the request if it has already been completed. The server will guarantee
|
2582
|
+
# that for at least 60 minutes after the first request. For example, consider a
|
2583
|
+
# situation where you make an initial request and the request times out. If you
|
2584
|
+
# make the request again with the same request ID, the server can check if
|
2585
|
+
# original operation with the same request ID was received, and if so, will
|
2586
|
+
# ignore the second request. This prevents clients from accidentally creating
|
2587
|
+
# duplicate commitments. The request ID must be a valid UUID with the exception
|
2588
|
+
# that zero UUID is not supported (00000000-0000-0000-0000-000000000000).
|
2589
|
+
# Corresponds to the JSON property `requestId`
|
2590
|
+
# @return [String]
|
2591
|
+
attr_accessor :request_id
|
2592
|
+
|
2593
|
+
def initialize(**args)
|
2594
|
+
update!(**args)
|
2595
|
+
end
|
2596
|
+
|
2597
|
+
# Update properties of this object
|
2598
|
+
def update!(**args)
|
2599
|
+
@request_id = args[:request_id] if args.key?(:request_id)
|
2600
|
+
end
|
2601
|
+
end
|
2602
|
+
|
2603
|
+
# Sets the scheduling options for an Instance.
|
2604
|
+
class Scheduling
|
2605
|
+
include Google::Apis::Core::Hashable
|
2606
|
+
|
2607
|
+
# Optional. Specifies whether the instance should be automatically restarted if
|
2608
|
+
# it is terminated by Compute Engine (not terminated by a user).
|
2609
|
+
# Corresponds to the JSON property `automaticRestart`
|
2610
|
+
# @return [Boolean]
|
2611
|
+
attr_accessor :automatic_restart
|
2612
|
+
alias_method :automatic_restart?, :automatic_restart
|
2613
|
+
|
2614
|
+
# Optional. Specifies the termination action for the instance.
|
2615
|
+
# Corresponds to the JSON property `instanceTerminationAction`
|
2616
|
+
# @return [String]
|
2617
|
+
attr_accessor :instance_termination_action
|
2618
|
+
|
2619
|
+
# A SchedulingDuration represents a fixed-length span of time represented as a
|
2620
|
+
# count of seconds and fractions of seconds at nanosecond resolution. It is
|
2621
|
+
# independent of any calendar and concepts like "day" or "month". Range is
|
2622
|
+
# approximately 10,000 years.
|
2623
|
+
# Corresponds to the JSON property `localSsdRecoveryTimeout`
|
2624
|
+
# @return [Google::Apis::BackupdrV1::SchedulingDuration]
|
2625
|
+
attr_accessor :local_ssd_recovery_timeout
|
2626
|
+
|
2627
|
+
# Optional. The minimum number of virtual CPUs this instance will consume when
|
2628
|
+
# running on a sole-tenant node.
|
2629
|
+
# Corresponds to the JSON property `minNodeCpus`
|
2630
|
+
# @return [Fixnum]
|
2631
|
+
attr_accessor :min_node_cpus
|
2632
|
+
|
2633
|
+
# Optional. A set of node affinity and anti-affinity configurations. Overrides
|
2634
|
+
# reservationAffinity.
|
2635
|
+
# Corresponds to the JSON property `nodeAffinities`
|
2636
|
+
# @return [Array<Google::Apis::BackupdrV1::NodeAffinity>]
|
2637
|
+
attr_accessor :node_affinities
|
2638
|
+
|
2639
|
+
# Optional. Defines the maintenance behavior for this instance.
|
2640
|
+
# Corresponds to the JSON property `onHostMaintenance`
|
2641
|
+
# @return [String]
|
2642
|
+
attr_accessor :on_host_maintenance
|
2643
|
+
|
2644
|
+
# Optional. Defines whether the instance is preemptible.
|
2645
|
+
# Corresponds to the JSON property `preemptible`
|
2646
|
+
# @return [Boolean]
|
2647
|
+
attr_accessor :preemptible
|
2648
|
+
alias_method :preemptible?, :preemptible
|
2649
|
+
|
2650
|
+
# Optional. Specifies the provisioning model of the instance.
|
2651
|
+
# Corresponds to the JSON property `provisioningModel`
|
2652
|
+
# @return [String]
|
2653
|
+
attr_accessor :provisioning_model
|
2654
|
+
|
2655
|
+
def initialize(**args)
|
2656
|
+
update!(**args)
|
2657
|
+
end
|
2658
|
+
|
2659
|
+
# Update properties of this object
|
2660
|
+
def update!(**args)
|
2661
|
+
@automatic_restart = args[:automatic_restart] if args.key?(:automatic_restart)
|
2662
|
+
@instance_termination_action = args[:instance_termination_action] if args.key?(:instance_termination_action)
|
2663
|
+
@local_ssd_recovery_timeout = args[:local_ssd_recovery_timeout] if args.key?(:local_ssd_recovery_timeout)
|
2664
|
+
@min_node_cpus = args[:min_node_cpus] if args.key?(:min_node_cpus)
|
2665
|
+
@node_affinities = args[:node_affinities] if args.key?(:node_affinities)
|
2666
|
+
@on_host_maintenance = args[:on_host_maintenance] if args.key?(:on_host_maintenance)
|
2667
|
+
@preemptible = args[:preemptible] if args.key?(:preemptible)
|
2668
|
+
@provisioning_model = args[:provisioning_model] if args.key?(:provisioning_model)
|
2669
|
+
end
|
2670
|
+
end
|
2671
|
+
|
2672
|
+
# A SchedulingDuration represents a fixed-length span of time represented as a
|
2673
|
+
# count of seconds and fractions of seconds at nanosecond resolution. It is
|
2674
|
+
# independent of any calendar and concepts like "day" or "month". Range is
|
2675
|
+
# approximately 10,000 years.
|
2676
|
+
class SchedulingDuration
|
2677
|
+
include Google::Apis::Core::Hashable
|
2678
|
+
|
2679
|
+
# Optional. Span of time that's a fraction of a second at nanosecond resolution.
|
2680
|
+
# Corresponds to the JSON property `nanos`
|
2681
|
+
# @return [Fixnum]
|
2682
|
+
attr_accessor :nanos
|
2683
|
+
|
2684
|
+
# Optional. Span of time at a resolution of a second.
|
2685
|
+
# Corresponds to the JSON property `seconds`
|
2686
|
+
# @return [Fixnum]
|
2687
|
+
attr_accessor :seconds
|
2688
|
+
|
2689
|
+
def initialize(**args)
|
2690
|
+
update!(**args)
|
2691
|
+
end
|
2692
|
+
|
2693
|
+
# Update properties of this object
|
2694
|
+
def update!(**args)
|
2695
|
+
@nanos = args[:nanos] if args.key?(:nanos)
|
2696
|
+
@seconds = args[:seconds] if args.key?(:seconds)
|
2697
|
+
end
|
2698
|
+
end
|
2699
|
+
|
2700
|
+
# A service account.
|
2701
|
+
class ServiceAccount
|
2702
|
+
include Google::Apis::Core::Hashable
|
2703
|
+
|
2704
|
+
# Optional. Email address of the service account.
|
2705
|
+
# Corresponds to the JSON property `email`
|
2706
|
+
# @return [String]
|
2707
|
+
attr_accessor :email
|
2708
|
+
|
2709
|
+
# Optional. The list of scopes to be made available for this service account.
|
2710
|
+
# Corresponds to the JSON property `scopes`
|
2711
|
+
# @return [Array<String>]
|
2712
|
+
attr_accessor :scopes
|
2713
|
+
|
2714
|
+
def initialize(**args)
|
2715
|
+
update!(**args)
|
2716
|
+
end
|
2717
|
+
|
2718
|
+
# Update properties of this object
|
2719
|
+
def update!(**args)
|
2720
|
+
@email = args[:email] if args.key?(:email)
|
2721
|
+
@scopes = args[:scopes] if args.key?(:scopes)
|
2722
|
+
end
|
2723
|
+
end
|
2724
|
+
|
2725
|
+
# ServiceLockInfo represents the details of a lock taken by the service on a
|
2726
|
+
# Backup resource.
|
2727
|
+
class ServiceLockInfo
|
2728
|
+
include Google::Apis::Core::Hashable
|
2729
|
+
|
2730
|
+
# Output only. The name of the operation that created this lock. The lock will
|
2731
|
+
# automatically be released when the operation completes.
|
2732
|
+
# Corresponds to the JSON property `operation`
|
2733
|
+
# @return [String]
|
2734
|
+
attr_accessor :operation
|
2735
|
+
|
2736
|
+
def initialize(**args)
|
2737
|
+
update!(**args)
|
2738
|
+
end
|
2739
|
+
|
2740
|
+
# Update properties of this object
|
2741
|
+
def update!(**args)
|
2742
|
+
@operation = args[:operation] if args.key?(:operation)
|
2743
|
+
end
|
2744
|
+
end
|
2745
|
+
|
794
2746
|
# Request message for `SetIamPolicy` method.
|
795
2747
|
class SetIamPolicyRequest
|
796
2748
|
include Google::Apis::Core::Hashable
|
@@ -844,6 +2796,47 @@ module Google
|
|
844
2796
|
end
|
845
2797
|
end
|
846
2798
|
|
2799
|
+
# Request message for SetStatusInternal method.
|
2800
|
+
class SetInternalStatusRequest
|
2801
|
+
include Google::Apis::Core::Hashable
|
2802
|
+
|
2803
|
+
# Required. The new BackupConfigState to set for the DataSource.
|
2804
|
+
# Corresponds to the JSON property `backupConfigState`
|
2805
|
+
# @return [String]
|
2806
|
+
attr_accessor :backup_config_state
|
2807
|
+
|
2808
|
+
# Optional. An optional request ID to identify requests. Specify a unique
|
2809
|
+
# request ID so that if you must retry your request, the server will know to
|
2810
|
+
# ignore the request if it has already been completed. The server will guarantee
|
2811
|
+
# that for at least 60 minutes after the first request. The request ID must be a
|
2812
|
+
# valid UUID with the exception that zero UUID is not supported (00000000-0000-
|
2813
|
+
# 0000-0000-000000000000).
|
2814
|
+
# Corresponds to the JSON property `requestId`
|
2815
|
+
# @return [String]
|
2816
|
+
attr_accessor :request_id
|
2817
|
+
|
2818
|
+
# Required. The value required for this method to work. This field must be the
|
2819
|
+
# 32-byte SHA256 hash of the DataSourceID. The DataSourceID used here is only
|
2820
|
+
# the final piece of the fully qualified resource path for this DataSource (i.e.
|
2821
|
+
# the part after '.../dataSources/'). This field exists to make this method
|
2822
|
+
# difficult to call since it is intended for use only by Backup Appliances.
|
2823
|
+
# Corresponds to the JSON property `value`
|
2824
|
+
# NOTE: Values are automatically base64 encoded/decoded in the client library.
|
2825
|
+
# @return [String]
|
2826
|
+
attr_accessor :value
|
2827
|
+
|
2828
|
+
def initialize(**args)
|
2829
|
+
update!(**args)
|
2830
|
+
end
|
2831
|
+
|
2832
|
+
# Update properties of this object
|
2833
|
+
def update!(**args)
|
2834
|
+
@backup_config_state = args[:backup_config_state] if args.key?(:backup_config_state)
|
2835
|
+
@request_id = args[:request_id] if args.key?(:request_id)
|
2836
|
+
@value = args[:value] if args.key?(:value)
|
2837
|
+
end
|
2838
|
+
end
|
2839
|
+
|
847
2840
|
# The `Status` type defines a logical error model that is suitable for different
|
848
2841
|
# programming environments, including REST APIs and RPC APIs. It is used by [
|
849
2842
|
# gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
|
@@ -883,6 +2876,26 @@ module Google
|
|
883
2876
|
end
|
884
2877
|
end
|
885
2878
|
|
2879
|
+
# A set of instance tags.
|
2880
|
+
class Tags
|
2881
|
+
include Google::Apis::Core::Hashable
|
2882
|
+
|
2883
|
+
# Optional. An array of tags. Each tag must be 1-63 characters long, and comply
|
2884
|
+
# with RFC1035.
|
2885
|
+
# Corresponds to the JSON property `items`
|
2886
|
+
# @return [Array<String>]
|
2887
|
+
attr_accessor :items
|
2888
|
+
|
2889
|
+
def initialize(**args)
|
2890
|
+
update!(**args)
|
2891
|
+
end
|
2892
|
+
|
2893
|
+
# Update properties of this object
|
2894
|
+
def update!(**args)
|
2895
|
+
@items = args[:items] if args.key?(:items)
|
2896
|
+
end
|
2897
|
+
end
|
2898
|
+
|
886
2899
|
# Request message for `TestIamPermissions` method.
|
887
2900
|
class TestIamPermissionsRequest
|
888
2901
|
include Google::Apis::Core::Hashable
|