google-apis-saasservicemgmt_v1beta1 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.yardopts +13 -0
- data/CHANGELOG.md +7 -0
- data/LICENSE.md +202 -0
- data/OVERVIEW.md +96 -0
- data/lib/google/apis/saasservicemgmt_v1beta1/classes.rb +1967 -0
- data/lib/google/apis/saasservicemgmt_v1beta1/gem_version.rb +28 -0
- data/lib/google/apis/saasservicemgmt_v1beta1/representations.rb +735 -0
- data/lib/google/apis/saasservicemgmt_v1beta1/service.rb +2034 -0
- data/lib/google/apis/saasservicemgmt_v1beta1.rb +36 -0
- data/lib/google-apis-saasservicemgmt_v1beta1.rb +15 -0
- metadata +79 -0
@@ -0,0 +1,1967 @@
|
|
1
|
+
# Copyright 2020 Google LLC
|
2
|
+
#
|
3
|
+
# Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
+
# you may not use this file except in compliance with the License.
|
5
|
+
# You may obtain a copy of the License at
|
6
|
+
#
|
7
|
+
# http://www.apache.org/licenses/LICENSE-2.0
|
8
|
+
#
|
9
|
+
# Unless required by applicable law or agreed to in writing, software
|
10
|
+
# distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
+
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
+
# See the License for the specific language governing permissions and
|
13
|
+
# limitations under the License.
|
14
|
+
|
15
|
+
require 'date'
|
16
|
+
require 'google/apis/core/base_service'
|
17
|
+
require 'google/apis/core/json_representation'
|
18
|
+
require 'google/apis/core/hashable'
|
19
|
+
require 'google/apis/errors'
|
20
|
+
|
21
|
+
module Google
|
22
|
+
module Apis
|
23
|
+
module SaasservicemgmtV1beta1
|
24
|
+
|
25
|
+
# Represents the aggregation of a set of population of like records by a certain
|
26
|
+
# group. For example, a collection of unit counts can be aggregated and grouped
|
27
|
+
# by their state.
|
28
|
+
class Aggregate
|
29
|
+
include Google::Apis::Core::Hashable
|
30
|
+
|
31
|
+
# Required. Number of records in the group.
|
32
|
+
# Corresponds to the JSON property `count`
|
33
|
+
# @return [Fixnum]
|
34
|
+
attr_accessor :count
|
35
|
+
|
36
|
+
# Required. Group by which to aggregate.
|
37
|
+
# Corresponds to the JSON property `group`
|
38
|
+
# @return [String]
|
39
|
+
attr_accessor :group
|
40
|
+
|
41
|
+
def initialize(**args)
|
42
|
+
update!(**args)
|
43
|
+
end
|
44
|
+
|
45
|
+
# Update properties of this object
|
46
|
+
def update!(**args)
|
47
|
+
@count = args[:count] if args.key?(:count)
|
48
|
+
@group = args[:group] if args.key?(:group)
|
49
|
+
end
|
50
|
+
end
|
51
|
+
|
52
|
+
# Blueprints are OCI Images that contain all of the artifacts needed to
|
53
|
+
# provision a unit. Metadata such as, type of the engine used to actuate the
|
54
|
+
# blueprint (e.g. terraform, helm etc) and version will come from the image
|
55
|
+
# manifest. If the hostname is omitted, it will be assumed to be the regional
|
56
|
+
# path to Artifact Registry (eg. us-east1-docker.pkg.dev).
|
57
|
+
class Blueprint
|
58
|
+
include Google::Apis::Core::Hashable
|
59
|
+
|
60
|
+
# Output only. Type of the engine used to actuate the blueprint. e.g. terraform,
|
61
|
+
# helm etc.
|
62
|
+
# Corresponds to the JSON property `engine`
|
63
|
+
# @return [String]
|
64
|
+
attr_accessor :engine
|
65
|
+
|
66
|
+
# Optional. Immutable. URI to a blueprint used by the Unit (required unless
|
67
|
+
# unitKind or release is set).
|
68
|
+
# Corresponds to the JSON property `package`
|
69
|
+
# @return [String]
|
70
|
+
attr_accessor :package
|
71
|
+
|
72
|
+
# Output only. Version metadata if present on the blueprint.
|
73
|
+
# Corresponds to the JSON property `version`
|
74
|
+
# @return [String]
|
75
|
+
attr_accessor :version
|
76
|
+
|
77
|
+
def initialize(**args)
|
78
|
+
update!(**args)
|
79
|
+
end
|
80
|
+
|
81
|
+
# Update properties of this object
|
82
|
+
def update!(**args)
|
83
|
+
@engine = args[:engine] if args.key?(:engine)
|
84
|
+
@package = args[:package] if args.key?(:package)
|
85
|
+
@version = args[:version] if args.key?(:version)
|
86
|
+
end
|
87
|
+
end
|
88
|
+
|
89
|
+
# Dependency represent a single dependency with another unit kind by alias.
|
90
|
+
class Dependency
|
91
|
+
include Google::Apis::Core::Hashable
|
92
|
+
|
93
|
+
# Required. An alias for the dependency. Used for input variable mapping.
|
94
|
+
# Corresponds to the JSON property `alias`
|
95
|
+
# @return [String]
|
96
|
+
attr_accessor :alias
|
97
|
+
|
98
|
+
# Required. Immutable. The unit kind of the dependency.
|
99
|
+
# Corresponds to the JSON property `unitKind`
|
100
|
+
# @return [String]
|
101
|
+
attr_accessor :unit_kind
|
102
|
+
|
103
|
+
def initialize(**args)
|
104
|
+
update!(**args)
|
105
|
+
end
|
106
|
+
|
107
|
+
# Update properties of this object
|
108
|
+
def update!(**args)
|
109
|
+
@alias = args[:alias] if args.key?(:alias)
|
110
|
+
@unit_kind = args[:unit_kind] if args.key?(:unit_kind)
|
111
|
+
end
|
112
|
+
end
|
113
|
+
|
114
|
+
# Deprovision is the unit operation that deprovision the underlying resources
|
115
|
+
# represented by a Unit. Can only execute if the Unit is currently provisioned.
|
116
|
+
class Deprovision
|
117
|
+
include Google::Apis::Core::Hashable
|
118
|
+
|
119
|
+
def initialize(**args)
|
120
|
+
update!(**args)
|
121
|
+
end
|
122
|
+
|
123
|
+
# Update properties of this object
|
124
|
+
def update!(**args)
|
125
|
+
end
|
126
|
+
end
|
127
|
+
|
128
|
+
# A generic empty message that you can re-use to avoid defining duplicated empty
|
129
|
+
# messages in your APIs. A typical example is to use it as the request or the
|
130
|
+
# response type of an API method. For instance: service Foo ` rpc Bar(google.
|
131
|
+
# protobuf.Empty) returns (google.protobuf.Empty); `
|
132
|
+
class Empty
|
133
|
+
include Google::Apis::Core::Hashable
|
134
|
+
|
135
|
+
def initialize(**args)
|
136
|
+
update!(**args)
|
137
|
+
end
|
138
|
+
|
139
|
+
# Update properties of this object
|
140
|
+
def update!(**args)
|
141
|
+
end
|
142
|
+
end
|
143
|
+
|
144
|
+
# The configuration for error budget. If the number of failed units exceeds max(
|
145
|
+
# allowed_count, allowed_ratio * total_units), the rollout will be paused.
|
146
|
+
class ErrorBudget
|
147
|
+
include Google::Apis::Core::Hashable
|
148
|
+
|
149
|
+
# Optional. The maximum number of failed units allowed in a location without
|
150
|
+
# pausing the rollout.
|
151
|
+
# Corresponds to the JSON property `allowedCount`
|
152
|
+
# @return [Fixnum]
|
153
|
+
attr_accessor :allowed_count
|
154
|
+
|
155
|
+
# Optional. The maximum percentage of units allowed to fail (0, 100] within a
|
156
|
+
# location without pausing the rollout.
|
157
|
+
# Corresponds to the JSON property `allowedPercentage`
|
158
|
+
# @return [Fixnum]
|
159
|
+
attr_accessor :allowed_percentage
|
160
|
+
|
161
|
+
def initialize(**args)
|
162
|
+
update!(**args)
|
163
|
+
end
|
164
|
+
|
165
|
+
# Update properties of this object
|
166
|
+
def update!(**args)
|
167
|
+
@allowed_count = args[:allowed_count] if args.key?(:allowed_count)
|
168
|
+
@allowed_percentage = args[:allowed_percentage] if args.key?(:allowed_percentage)
|
169
|
+
end
|
170
|
+
end
|
171
|
+
|
172
|
+
# Output variables whose values will be passed on to dependencies
|
173
|
+
class FromMapping
|
174
|
+
include Google::Apis::Core::Hashable
|
175
|
+
|
176
|
+
# Required. Alias of the dependency that the outputVariable will pass its value
|
177
|
+
# to
|
178
|
+
# Corresponds to the JSON property `dependency`
|
179
|
+
# @return [String]
|
180
|
+
attr_accessor :dependency
|
181
|
+
|
182
|
+
# Required. Name of the outputVariable on the dependency
|
183
|
+
# Corresponds to the JSON property `outputVariable`
|
184
|
+
# @return [String]
|
185
|
+
attr_accessor :output_variable
|
186
|
+
|
187
|
+
def initialize(**args)
|
188
|
+
update!(**args)
|
189
|
+
end
|
190
|
+
|
191
|
+
# Update properties of this object
|
192
|
+
def update!(**args)
|
193
|
+
@dependency = args[:dependency] if args.key?(:dependency)
|
194
|
+
@output_variable = args[:output_variable] if args.key?(:output_variable)
|
195
|
+
end
|
196
|
+
end
|
197
|
+
|
198
|
+
# A resource that represents a Google Cloud location.
|
199
|
+
class GoogleCloudLocationLocation
|
200
|
+
include Google::Apis::Core::Hashable
|
201
|
+
|
202
|
+
# The friendly name for this location, typically a nearby city name. For example,
|
203
|
+
# "Tokyo".
|
204
|
+
# Corresponds to the JSON property `displayName`
|
205
|
+
# @return [String]
|
206
|
+
attr_accessor :display_name
|
207
|
+
|
208
|
+
# Cross-service attributes for the location. For example `"cloud.googleapis.com/
|
209
|
+
# region": "us-east1"`
|
210
|
+
# Corresponds to the JSON property `labels`
|
211
|
+
# @return [Hash<String,String>]
|
212
|
+
attr_accessor :labels
|
213
|
+
|
214
|
+
# The canonical id for this location. For example: `"us-east1"`.
|
215
|
+
# Corresponds to the JSON property `locationId`
|
216
|
+
# @return [String]
|
217
|
+
attr_accessor :location_id
|
218
|
+
|
219
|
+
# Service-specific metadata. For example the available capacity at the given
|
220
|
+
# location.
|
221
|
+
# Corresponds to the JSON property `metadata`
|
222
|
+
# @return [Hash<String,Object>]
|
223
|
+
attr_accessor :metadata
|
224
|
+
|
225
|
+
# Resource name for the location, which may vary between implementations. For
|
226
|
+
# example: `"projects/example-project/locations/us-east1"`
|
227
|
+
# Corresponds to the JSON property `name`
|
228
|
+
# @return [String]
|
229
|
+
attr_accessor :name
|
230
|
+
|
231
|
+
def initialize(**args)
|
232
|
+
update!(**args)
|
233
|
+
end
|
234
|
+
|
235
|
+
# Update properties of this object
|
236
|
+
def update!(**args)
|
237
|
+
@display_name = args[:display_name] if args.key?(:display_name)
|
238
|
+
@labels = args[:labels] if args.key?(:labels)
|
239
|
+
@location_id = args[:location_id] if args.key?(:location_id)
|
240
|
+
@metadata = args[:metadata] if args.key?(:metadata)
|
241
|
+
@name = args[:name] if args.key?(:name)
|
242
|
+
end
|
243
|
+
end
|
244
|
+
|
245
|
+
# The response message for Locations.ListLocations.
|
246
|
+
class ListLocationsResponse
|
247
|
+
include Google::Apis::Core::Hashable
|
248
|
+
|
249
|
+
# A list of locations that matches the specified filter in the request.
|
250
|
+
# Corresponds to the JSON property `locations`
|
251
|
+
# @return [Array<Google::Apis::SaasservicemgmtV1beta1::GoogleCloudLocationLocation>]
|
252
|
+
attr_accessor :locations
|
253
|
+
|
254
|
+
# The standard List next-page token.
|
255
|
+
# Corresponds to the JSON property `nextPageToken`
|
256
|
+
# @return [String]
|
257
|
+
attr_accessor :next_page_token
|
258
|
+
|
259
|
+
def initialize(**args)
|
260
|
+
update!(**args)
|
261
|
+
end
|
262
|
+
|
263
|
+
# Update properties of this object
|
264
|
+
def update!(**args)
|
265
|
+
@locations = args[:locations] if args.key?(:locations)
|
266
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
267
|
+
end
|
268
|
+
end
|
269
|
+
|
270
|
+
# The response structure for the ListReleases method.
|
271
|
+
class ListReleasesResponse
|
272
|
+
include Google::Apis::Core::Hashable
|
273
|
+
|
274
|
+
# If present, the next page token can be provided to a subsequent ListReleases
|
275
|
+
# call to list the next page. If empty, there are no more pages.
|
276
|
+
# Corresponds to the JSON property `nextPageToken`
|
277
|
+
# @return [String]
|
278
|
+
attr_accessor :next_page_token
|
279
|
+
|
280
|
+
# The resulting releases.
|
281
|
+
# Corresponds to the JSON property `releases`
|
282
|
+
# @return [Array<Google::Apis::SaasservicemgmtV1beta1::Release>]
|
283
|
+
attr_accessor :releases
|
284
|
+
|
285
|
+
# Locations that could not be reached.
|
286
|
+
# Corresponds to the JSON property `unreachable`
|
287
|
+
# @return [Array<String>]
|
288
|
+
attr_accessor :unreachable
|
289
|
+
|
290
|
+
def initialize(**args)
|
291
|
+
update!(**args)
|
292
|
+
end
|
293
|
+
|
294
|
+
# Update properties of this object
|
295
|
+
def update!(**args)
|
296
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
297
|
+
@releases = args[:releases] if args.key?(:releases)
|
298
|
+
@unreachable = args[:unreachable] if args.key?(:unreachable)
|
299
|
+
end
|
300
|
+
end
|
301
|
+
|
302
|
+
# The response structure for the ListRolloutKinds method.
|
303
|
+
class ListRolloutKindsResponse
|
304
|
+
include Google::Apis::Core::Hashable
|
305
|
+
|
306
|
+
# If present, the next page token can be provided to a subsequent
|
307
|
+
# ListRolloutKinds call to list the next page. If empty, there are no more pages.
|
308
|
+
# Corresponds to the JSON property `nextPageToken`
|
309
|
+
# @return [String]
|
310
|
+
attr_accessor :next_page_token
|
311
|
+
|
312
|
+
# The resulting rollout kinds.
|
313
|
+
# Corresponds to the JSON property `rolloutKinds`
|
314
|
+
# @return [Array<Google::Apis::SaasservicemgmtV1beta1::RolloutKind>]
|
315
|
+
attr_accessor :rollout_kinds
|
316
|
+
|
317
|
+
# Locations that could not be reached.
|
318
|
+
# Corresponds to the JSON property `unreachable`
|
319
|
+
# @return [Array<String>]
|
320
|
+
attr_accessor :unreachable
|
321
|
+
|
322
|
+
def initialize(**args)
|
323
|
+
update!(**args)
|
324
|
+
end
|
325
|
+
|
326
|
+
# Update properties of this object
|
327
|
+
def update!(**args)
|
328
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
329
|
+
@rollout_kinds = args[:rollout_kinds] if args.key?(:rollout_kinds)
|
330
|
+
@unreachable = args[:unreachable] if args.key?(:unreachable)
|
331
|
+
end
|
332
|
+
end
|
333
|
+
|
334
|
+
# The response structure for the ListRollouts method.
|
335
|
+
class ListRolloutsResponse
|
336
|
+
include Google::Apis::Core::Hashable
|
337
|
+
|
338
|
+
# If present, the next page token can be provided to a subsequent ListRollouts
|
339
|
+
# call to list the next page. If empty, there are no more pages.
|
340
|
+
# Corresponds to the JSON property `nextPageToken`
|
341
|
+
# @return [String]
|
342
|
+
attr_accessor :next_page_token
|
343
|
+
|
344
|
+
# The resulting rollouts.
|
345
|
+
# Corresponds to the JSON property `rollouts`
|
346
|
+
# @return [Array<Google::Apis::SaasservicemgmtV1beta1::Rollout>]
|
347
|
+
attr_accessor :rollouts
|
348
|
+
|
349
|
+
# Locations that could not be reached.
|
350
|
+
# Corresponds to the JSON property `unreachable`
|
351
|
+
# @return [Array<String>]
|
352
|
+
attr_accessor :unreachable
|
353
|
+
|
354
|
+
def initialize(**args)
|
355
|
+
update!(**args)
|
356
|
+
end
|
357
|
+
|
358
|
+
# Update properties of this object
|
359
|
+
def update!(**args)
|
360
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
361
|
+
@rollouts = args[:rollouts] if args.key?(:rollouts)
|
362
|
+
@unreachable = args[:unreachable] if args.key?(:unreachable)
|
363
|
+
end
|
364
|
+
end
|
365
|
+
|
366
|
+
# The response structure for the ListSaas method.
|
367
|
+
class ListSaasResponse
|
368
|
+
include Google::Apis::Core::Hashable
|
369
|
+
|
370
|
+
# If present, the next page token can be provided to a subsequent ListSaas call
|
371
|
+
# to list the next page. If empty, there are no more pages.
|
372
|
+
# Corresponds to the JSON property `nextPageToken`
|
373
|
+
# @return [String]
|
374
|
+
attr_accessor :next_page_token
|
375
|
+
|
376
|
+
# The resulting saas.
|
377
|
+
# Corresponds to the JSON property `saas`
|
378
|
+
# @return [Array<Google::Apis::SaasservicemgmtV1beta1::Saas>]
|
379
|
+
attr_accessor :saas
|
380
|
+
|
381
|
+
# Locations that could not be reached.
|
382
|
+
# Corresponds to the JSON property `unreachable`
|
383
|
+
# @return [Array<String>]
|
384
|
+
attr_accessor :unreachable
|
385
|
+
|
386
|
+
def initialize(**args)
|
387
|
+
update!(**args)
|
388
|
+
end
|
389
|
+
|
390
|
+
# Update properties of this object
|
391
|
+
def update!(**args)
|
392
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
393
|
+
@saas = args[:saas] if args.key?(:saas)
|
394
|
+
@unreachable = args[:unreachable] if args.key?(:unreachable)
|
395
|
+
end
|
396
|
+
end
|
397
|
+
|
398
|
+
# The response structure for the ListTenants method.
|
399
|
+
class ListTenantsResponse
|
400
|
+
include Google::Apis::Core::Hashable
|
401
|
+
|
402
|
+
# If present, the next page token can be provided to a subsequent ListTenants
|
403
|
+
# call to list the next page. If empty, there are no more pages.
|
404
|
+
# Corresponds to the JSON property `nextPageToken`
|
405
|
+
# @return [String]
|
406
|
+
attr_accessor :next_page_token
|
407
|
+
|
408
|
+
# The resulting tenants.
|
409
|
+
# Corresponds to the JSON property `tenants`
|
410
|
+
# @return [Array<Google::Apis::SaasservicemgmtV1beta1::Tenant>]
|
411
|
+
attr_accessor :tenants
|
412
|
+
|
413
|
+
# Locations that could not be reached.
|
414
|
+
# Corresponds to the JSON property `unreachable`
|
415
|
+
# @return [Array<String>]
|
416
|
+
attr_accessor :unreachable
|
417
|
+
|
418
|
+
def initialize(**args)
|
419
|
+
update!(**args)
|
420
|
+
end
|
421
|
+
|
422
|
+
# Update properties of this object
|
423
|
+
def update!(**args)
|
424
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
425
|
+
@tenants = args[:tenants] if args.key?(:tenants)
|
426
|
+
@unreachable = args[:unreachable] if args.key?(:unreachable)
|
427
|
+
end
|
428
|
+
end
|
429
|
+
|
430
|
+
# The response structure for the ListUnitKinds method.
|
431
|
+
class ListUnitKindsResponse
|
432
|
+
include Google::Apis::Core::Hashable
|
433
|
+
|
434
|
+
# If present, the next page token can be provided to a subsequent ListUnitKinds
|
435
|
+
# call to list the next page. If empty, there are no more pages.
|
436
|
+
# Corresponds to the JSON property `nextPageToken`
|
437
|
+
# @return [String]
|
438
|
+
attr_accessor :next_page_token
|
439
|
+
|
440
|
+
# The resulting unit kinds.
|
441
|
+
# Corresponds to the JSON property `unitKinds`
|
442
|
+
# @return [Array<Google::Apis::SaasservicemgmtV1beta1::UnitKind>]
|
443
|
+
attr_accessor :unit_kinds
|
444
|
+
|
445
|
+
# Locations that could not be reached.
|
446
|
+
# Corresponds to the JSON property `unreachable`
|
447
|
+
# @return [Array<String>]
|
448
|
+
attr_accessor :unreachable
|
449
|
+
|
450
|
+
def initialize(**args)
|
451
|
+
update!(**args)
|
452
|
+
end
|
453
|
+
|
454
|
+
# Update properties of this object
|
455
|
+
def update!(**args)
|
456
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
457
|
+
@unit_kinds = args[:unit_kinds] if args.key?(:unit_kinds)
|
458
|
+
@unreachable = args[:unreachable] if args.key?(:unreachable)
|
459
|
+
end
|
460
|
+
end
|
461
|
+
|
462
|
+
# The response structure for the ListUnitOperations method.
|
463
|
+
class ListUnitOperationsResponse
|
464
|
+
include Google::Apis::Core::Hashable
|
465
|
+
|
466
|
+
# If present, the next page token can be provided to a subsequent
|
467
|
+
# ListUnitOperations call to list the next page. If empty, there are no more
|
468
|
+
# pages.
|
469
|
+
# Corresponds to the JSON property `nextPageToken`
|
470
|
+
# @return [String]
|
471
|
+
attr_accessor :next_page_token
|
472
|
+
|
473
|
+
# The resulting unit operations.
|
474
|
+
# Corresponds to the JSON property `unitOperations`
|
475
|
+
# @return [Array<Google::Apis::SaasservicemgmtV1beta1::UnitOperation>]
|
476
|
+
attr_accessor :unit_operations
|
477
|
+
|
478
|
+
# Locations that could not be reached.
|
479
|
+
# Corresponds to the JSON property `unreachable`
|
480
|
+
# @return [Array<String>]
|
481
|
+
attr_accessor :unreachable
|
482
|
+
|
483
|
+
def initialize(**args)
|
484
|
+
update!(**args)
|
485
|
+
end
|
486
|
+
|
487
|
+
# Update properties of this object
|
488
|
+
def update!(**args)
|
489
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
490
|
+
@unit_operations = args[:unit_operations] if args.key?(:unit_operations)
|
491
|
+
@unreachable = args[:unreachable] if args.key?(:unreachable)
|
492
|
+
end
|
493
|
+
end
|
494
|
+
|
495
|
+
# The response structure for the ListUnits method.
|
496
|
+
class ListUnitsResponse
|
497
|
+
include Google::Apis::Core::Hashable
|
498
|
+
|
499
|
+
# If present, the next page token can be provided to a subsequent ListUnits call
|
500
|
+
# to list the next page. If empty, there are no more pages.
|
501
|
+
# Corresponds to the JSON property `nextPageToken`
|
502
|
+
# @return [String]
|
503
|
+
attr_accessor :next_page_token
|
504
|
+
|
505
|
+
# The resulting units.
|
506
|
+
# Corresponds to the JSON property `units`
|
507
|
+
# @return [Array<Google::Apis::SaasservicemgmtV1beta1::Unit>]
|
508
|
+
attr_accessor :units
|
509
|
+
|
510
|
+
# Locations that could not be reached.
|
511
|
+
# Corresponds to the JSON property `unreachable`
|
512
|
+
# @return [Array<String>]
|
513
|
+
attr_accessor :unreachable
|
514
|
+
|
515
|
+
def initialize(**args)
|
516
|
+
update!(**args)
|
517
|
+
end
|
518
|
+
|
519
|
+
# Update properties of this object
|
520
|
+
def update!(**args)
|
521
|
+
@next_page_token = args[:next_page_token] if args.key?(:next_page_token)
|
522
|
+
@units = args[:units] if args.key?(:units)
|
523
|
+
@unreachable = args[:unreachable] if args.key?(:unreachable)
|
524
|
+
end
|
525
|
+
end
|
526
|
+
|
527
|
+
# Location information that the service is available in.
|
528
|
+
class Location
|
529
|
+
include Google::Apis::Core::Hashable
|
530
|
+
|
531
|
+
# Optional. Name of location.
|
532
|
+
# Corresponds to the JSON property `name`
|
533
|
+
# @return [String]
|
534
|
+
attr_accessor :name
|
535
|
+
|
536
|
+
def initialize(**args)
|
537
|
+
update!(**args)
|
538
|
+
end
|
539
|
+
|
540
|
+
# Update properties of this object
|
541
|
+
def update!(**args)
|
542
|
+
@name = args[:name] if args.key?(:name)
|
543
|
+
end
|
544
|
+
end
|
545
|
+
|
546
|
+
# Captures requested directives for performing future maintenance on the unit.
|
547
|
+
# This includes a request for the unit to skip maintenance for a period of time
|
548
|
+
# and remain pinned to its current release as well as controls for postponing
|
549
|
+
# maintenance scheduled in future.
|
550
|
+
class MaintenanceSettings
|
551
|
+
include Google::Apis::Core::Hashable
|
552
|
+
|
553
|
+
# Optional. If present, it fixes the release on the unit until the given time; i.
|
554
|
+
# e. changes to the release field will be rejected. Rollouts should and will
|
555
|
+
# also respect this by not requesting an upgrade in the first place.
|
556
|
+
# Corresponds to the JSON property `pinnedUntilTime`
|
557
|
+
# @return [String]
|
558
|
+
attr_accessor :pinned_until_time
|
559
|
+
|
560
|
+
def initialize(**args)
|
561
|
+
update!(**args)
|
562
|
+
end
|
563
|
+
|
564
|
+
# Update properties of this object
|
565
|
+
def update!(**args)
|
566
|
+
@pinned_until_time = args[:pinned_until_time] if args.key?(:pinned_until_time)
|
567
|
+
end
|
568
|
+
end
|
569
|
+
|
570
|
+
# Provision is the unit operation that provision the underlying resources
|
571
|
+
# represented by a Unit. Can only execute if the Unit is not currently
|
572
|
+
# provisioned.
|
573
|
+
class Provision
|
574
|
+
include Google::Apis::Core::Hashable
|
575
|
+
|
576
|
+
# Optional. Set of input variables. Maximum 100. (optional)
|
577
|
+
# Corresponds to the JSON property `inputVariables`
|
578
|
+
# @return [Array<Google::Apis::SaasservicemgmtV1beta1::UnitVariable>]
|
579
|
+
attr_accessor :input_variables
|
580
|
+
|
581
|
+
# Optional. Reference to the Release object to use for the Unit. (optional).
|
582
|
+
# Corresponds to the JSON property `release`
|
583
|
+
# @return [String]
|
584
|
+
attr_accessor :release
|
585
|
+
|
586
|
+
def initialize(**args)
|
587
|
+
update!(**args)
|
588
|
+
end
|
589
|
+
|
590
|
+
# Update properties of this object
|
591
|
+
def update!(**args)
|
592
|
+
@input_variables = args[:input_variables] if args.key?(:input_variables)
|
593
|
+
@release = args[:release] if args.key?(:release)
|
594
|
+
end
|
595
|
+
end
|
596
|
+
|
597
|
+
# A new version to be propagated and deployed to units. This includes pointers
|
598
|
+
# to packaged blueprints for actuation (e.g Helm or Terraform configuration
|
599
|
+
# packages) via artifact registry.
|
600
|
+
class Release
|
601
|
+
include Google::Apis::Core::Hashable
|
602
|
+
|
603
|
+
# Optional. Annotations is an unstructured key-value map stored with a resource
|
604
|
+
# that may be set by external tools to store and retrieve arbitrary metadata.
|
605
|
+
# They are not queryable and should be preserved when modifying objects. More
|
606
|
+
# info: https://kubernetes.io/docs/user-guide/annotations
|
607
|
+
# Corresponds to the JSON property `annotations`
|
608
|
+
# @return [Hash<String,String>]
|
609
|
+
attr_accessor :annotations
|
610
|
+
|
611
|
+
# Blueprints are OCI Images that contain all of the artifacts needed to
|
612
|
+
# provision a unit. Metadata such as, type of the engine used to actuate the
|
613
|
+
# blueprint (e.g. terraform, helm etc) and version will come from the image
|
614
|
+
# manifest. If the hostname is omitted, it will be assumed to be the regional
|
615
|
+
# path to Artifact Registry (eg. us-east1-docker.pkg.dev).
|
616
|
+
# Corresponds to the JSON property `blueprint`
|
617
|
+
# @return [Google::Apis::SaasservicemgmtV1beta1::Blueprint]
|
618
|
+
attr_accessor :blueprint
|
619
|
+
|
620
|
+
# Output only. The timestamp when the resource was created.
|
621
|
+
# Corresponds to the JSON property `createTime`
|
622
|
+
# @return [String]
|
623
|
+
attr_accessor :create_time
|
624
|
+
|
625
|
+
# Output only. An opaque value that uniquely identifies a version or generation
|
626
|
+
# of a resource. It can be used to confirm that the client and server agree on
|
627
|
+
# the ordering of a resource being written.
|
628
|
+
# Corresponds to the JSON property `etag`
|
629
|
+
# @return [String]
|
630
|
+
attr_accessor :etag
|
631
|
+
|
632
|
+
# Optional. Mapping of input variables to default values. Maximum 100
|
633
|
+
# Corresponds to the JSON property `inputVariableDefaults`
|
634
|
+
# @return [Array<Google::Apis::SaasservicemgmtV1beta1::UnitVariable>]
|
635
|
+
attr_accessor :input_variable_defaults
|
636
|
+
|
637
|
+
# Optional. Output only. List of input variables declared on the blueprint and
|
638
|
+
# can be present with their values on the unit spec
|
639
|
+
# Corresponds to the JSON property `inputVariables`
|
640
|
+
# @return [Array<Google::Apis::SaasservicemgmtV1beta1::UnitVariable>]
|
641
|
+
attr_accessor :input_variables
|
642
|
+
|
643
|
+
# Optional. The labels on the resource, which can be used for categorization.
|
644
|
+
# similar to Kubernetes resource labels.
|
645
|
+
# Corresponds to the JSON property `labels`
|
646
|
+
# @return [Hash<String,String>]
|
647
|
+
attr_accessor :labels
|
648
|
+
|
649
|
+
# Identifier. The resource name (full URI of the resource) following the
|
650
|
+
# standard naming scheme: "projects/`project`/locations/`location`/releases/`
|
651
|
+
# release`"
|
652
|
+
# Corresponds to the JSON property `name`
|
653
|
+
# @return [String]
|
654
|
+
attr_accessor :name
|
655
|
+
|
656
|
+
# Optional. Output only. List of output variables declared on the blueprint and
|
657
|
+
# can be present with their values on the unit status
|
658
|
+
# Corresponds to the JSON property `outputVariables`
|
659
|
+
# @return [Array<Google::Apis::SaasservicemgmtV1beta1::UnitVariable>]
|
660
|
+
attr_accessor :output_variables
|
661
|
+
|
662
|
+
# Set of requirements to be fulfilled on the Unit when using this Release.
|
663
|
+
# Corresponds to the JSON property `releaseRequirements`
|
664
|
+
# @return [Google::Apis::SaasservicemgmtV1beta1::ReleaseRequirements]
|
665
|
+
attr_accessor :release_requirements
|
666
|
+
|
667
|
+
# Output only. The unique identifier of the resource. UID is unique in the time
|
668
|
+
# and space for this resource within the scope of the service. It is typically
|
669
|
+
# generated by the server on successful creation of a resource and must not be
|
670
|
+
# changed. UID is used to uniquely identify resources with resource name reuses.
|
671
|
+
# This should be a UUID4.
|
672
|
+
# Corresponds to the JSON property `uid`
|
673
|
+
# @return [String]
|
674
|
+
attr_accessor :uid
|
675
|
+
|
676
|
+
# Required. Immutable. Reference to the UnitKind this Release corresponds to (
|
677
|
+
# required and immutable once created).
|
678
|
+
# Corresponds to the JSON property `unitKind`
|
679
|
+
# @return [String]
|
680
|
+
attr_accessor :unit_kind
|
681
|
+
|
682
|
+
# Output only. The timestamp when the resource was last updated. Any change to
|
683
|
+
# the resource made by users must refresh this value. Changes to a resource made
|
684
|
+
# by the service should refresh this value.
|
685
|
+
# Corresponds to the JSON property `updateTime`
|
686
|
+
# @return [String]
|
687
|
+
attr_accessor :update_time
|
688
|
+
|
689
|
+
def initialize(**args)
|
690
|
+
update!(**args)
|
691
|
+
end
|
692
|
+
|
693
|
+
# Update properties of this object
|
694
|
+
def update!(**args)
|
695
|
+
@annotations = args[:annotations] if args.key?(:annotations)
|
696
|
+
@blueprint = args[:blueprint] if args.key?(:blueprint)
|
697
|
+
@create_time = args[:create_time] if args.key?(:create_time)
|
698
|
+
@etag = args[:etag] if args.key?(:etag)
|
699
|
+
@input_variable_defaults = args[:input_variable_defaults] if args.key?(:input_variable_defaults)
|
700
|
+
@input_variables = args[:input_variables] if args.key?(:input_variables)
|
701
|
+
@labels = args[:labels] if args.key?(:labels)
|
702
|
+
@name = args[:name] if args.key?(:name)
|
703
|
+
@output_variables = args[:output_variables] if args.key?(:output_variables)
|
704
|
+
@release_requirements = args[:release_requirements] if args.key?(:release_requirements)
|
705
|
+
@uid = args[:uid] if args.key?(:uid)
|
706
|
+
@unit_kind = args[:unit_kind] if args.key?(:unit_kind)
|
707
|
+
@update_time = args[:update_time] if args.key?(:update_time)
|
708
|
+
end
|
709
|
+
end
|
710
|
+
|
711
|
+
# Set of requirements to be fulfilled on the Unit when using this Release.
|
712
|
+
class ReleaseRequirements
|
713
|
+
include Google::Apis::Core::Hashable
|
714
|
+
|
715
|
+
# Optional. A list of releases from which a unit can be upgraded to this one (
|
716
|
+
# optional). If left empty no constraints will be applied. When provided, unit
|
717
|
+
# upgrade requests to this release will check and enforce this constraint.
|
718
|
+
# Corresponds to the JSON property `upgradeableFromReleases`
|
719
|
+
# @return [Array<String>]
|
720
|
+
attr_accessor :upgradeable_from_releases
|
721
|
+
|
722
|
+
def initialize(**args)
|
723
|
+
update!(**args)
|
724
|
+
end
|
725
|
+
|
726
|
+
# Update properties of this object
|
727
|
+
def update!(**args)
|
728
|
+
@upgradeable_from_releases = args[:upgradeable_from_releases] if args.key?(:upgradeable_from_releases)
|
729
|
+
end
|
730
|
+
end
|
731
|
+
|
732
|
+
# Represents a single rollout execution and its results
|
733
|
+
class Rollout
|
734
|
+
include Google::Apis::Core::Hashable
|
735
|
+
|
736
|
+
# Optional. Annotations is an unstructured key-value map stored with a resource
|
737
|
+
# that may be set by external tools to store and retrieve arbitrary metadata.
|
738
|
+
# They are not queryable and should be preserved when modifying objects. More
|
739
|
+
# info: https://kubernetes.io/docs/user-guide/annotations
|
740
|
+
# Corresponds to the JSON property `annotations`
|
741
|
+
# @return [Hash<String,String>]
|
742
|
+
attr_accessor :annotations
|
743
|
+
|
744
|
+
# RolloutControl provides a way to request a change to the execution of a
|
745
|
+
# Rollout by pausing or canceling it.
|
746
|
+
# Corresponds to the JSON property `control`
|
747
|
+
# @return [Google::Apis::SaasservicemgmtV1beta1::RolloutControl]
|
748
|
+
attr_accessor :control
|
749
|
+
|
750
|
+
# Output only. The timestamp when the resource was created.
|
751
|
+
# Corresponds to the JSON property `createTime`
|
752
|
+
# @return [String]
|
753
|
+
attr_accessor :create_time
|
754
|
+
|
755
|
+
# Optional. Output only. The time when the rollout finished execution (
|
756
|
+
# regardless of success, failure, or cancellation). Will be empty if the rollout
|
757
|
+
# hasn't finished yet. Once set, the rollout is in terminal state and all the
|
758
|
+
# results are final.
|
759
|
+
# Corresponds to the JSON property `endTime`
|
760
|
+
# @return [String]
|
761
|
+
attr_accessor :end_time
|
762
|
+
|
763
|
+
# Output only. An opaque value that uniquely identifies a version or generation
|
764
|
+
# of a resource. It can be used to confirm that the client and server agree on
|
765
|
+
# the ordering of a resource being written.
|
766
|
+
# Corresponds to the JSON property `etag`
|
767
|
+
# @return [String]
|
768
|
+
attr_accessor :etag
|
769
|
+
|
770
|
+
# Optional. The labels on the resource, which can be used for categorization.
|
771
|
+
# similar to Kubernetes resource labels.
|
772
|
+
# Corresponds to the JSON property `labels`
|
773
|
+
# @return [Hash<String,String>]
|
774
|
+
attr_accessor :labels
|
775
|
+
|
776
|
+
# Identifier. The resource name (full URI of the resource) following the
|
777
|
+
# standard naming scheme: "projects/`project`/locations/`location`/rollout/`
|
778
|
+
# rollout_id`"
|
779
|
+
# Corresponds to the JSON property `name`
|
780
|
+
# @return [String]
|
781
|
+
attr_accessor :name
|
782
|
+
|
783
|
+
# Optional. Output only. The direct parent rollout that this rollout is stemming
|
784
|
+
# from. The resource name (full URI of the resource) following the standard
|
785
|
+
# naming scheme: "projects/`project`/locations/`location`/rollouts/`rollout_id`"
|
786
|
+
# Corresponds to the JSON property `parentRollout`
|
787
|
+
# @return [String]
|
788
|
+
attr_accessor :parent_rollout
|
789
|
+
|
790
|
+
# Optional. Immutable. Name of the Release that gets rolled out to target Units.
|
791
|
+
# Required if no other type of release is specified.
|
792
|
+
# Corresponds to the JSON property `release`
|
793
|
+
# @return [String]
|
794
|
+
attr_accessor :release
|
795
|
+
|
796
|
+
# Optional. Immutable. Name of the RolloutKind this rollout is stemming from and
|
797
|
+
# adhering to.
|
798
|
+
# Corresponds to the JSON property `rolloutKind`
|
799
|
+
# @return [String]
|
800
|
+
attr_accessor :rollout_kind
|
801
|
+
|
802
|
+
# Optional. The strategy used for executing this Rollout. This strategy will
|
803
|
+
# override whatever strategy is specified in the RolloutType. If not specified
|
804
|
+
# on creation, the strategy from RolloutType will be used. There are two
|
805
|
+
# supported values strategies which are used to control - "Google.Cloud.Simple.
|
806
|
+
# AllAtOnce" - "Google.Cloud.Simple.OneLocationAtATime" A rollout with one of
|
807
|
+
# these simple strategies will rollout across all locations defined in the
|
808
|
+
# targeted UnitKind's Saas Locations.
|
809
|
+
# Corresponds to the JSON property `rolloutOrchestrationStrategy`
|
810
|
+
# @return [String]
|
811
|
+
attr_accessor :rollout_orchestration_strategy
|
812
|
+
|
813
|
+
# Optional. Output only. The root rollout that this rollout is stemming from.
|
814
|
+
# The resource name (full URI of the resource) following the standard naming
|
815
|
+
# scheme: "projects/`project`/locations/`location`/rollouts/`rollout_id`"
|
816
|
+
# Corresponds to the JSON property `rootRollout`
|
817
|
+
# @return [String]
|
818
|
+
attr_accessor :root_rollout
|
819
|
+
|
820
|
+
# Optional. Output only. The time when the rollout started executing. Will be
|
821
|
+
# empty if the rollout hasn't started yet.
|
822
|
+
# Corresponds to the JSON property `startTime`
|
823
|
+
# @return [String]
|
824
|
+
attr_accessor :start_time
|
825
|
+
|
826
|
+
# Output only. Current state of the rollout.
|
827
|
+
# Corresponds to the JSON property `state`
|
828
|
+
# @return [String]
|
829
|
+
attr_accessor :state
|
830
|
+
|
831
|
+
# Output only. Human readable message indicating details about the last state
|
832
|
+
# transition.
|
833
|
+
# Corresponds to the JSON property `stateMessage`
|
834
|
+
# @return [String]
|
835
|
+
attr_accessor :state_message
|
836
|
+
|
837
|
+
# Optional. Output only. The time when the rollout transitioned into its current
|
838
|
+
# state.
|
839
|
+
# Corresponds to the JSON property `stateTransitionTime`
|
840
|
+
# @return [String]
|
841
|
+
attr_accessor :state_transition_time
|
842
|
+
|
843
|
+
# RolloutStats contains information about the progress of a rollout.
|
844
|
+
# Corresponds to the JSON property `stats`
|
845
|
+
# @return [Google::Apis::SaasservicemgmtV1beta1::RolloutStats]
|
846
|
+
attr_accessor :stats
|
847
|
+
|
848
|
+
# Output only. The unique identifier of the resource. UID is unique in the time
|
849
|
+
# and space for this resource within the scope of the service. It is typically
|
850
|
+
# generated by the server on successful creation of a resource and must not be
|
851
|
+
# changed. UID is used to uniquely identify resources with resource name reuses.
|
852
|
+
# This should be a UUID4.
|
853
|
+
# Corresponds to the JSON property `uid`
|
854
|
+
# @return [String]
|
855
|
+
attr_accessor :uid
|
856
|
+
|
857
|
+
# Optional. CEL(https://github.com/google/cel-spec) formatted filter string
|
858
|
+
# against Unit. The filter will be applied to determine the eligible unit
|
859
|
+
# population. This filter can only reduce, but not expand the scope of the
|
860
|
+
# rollout. If not provided, the unit_filter from the RolloutType will be used.
|
861
|
+
# Corresponds to the JSON property `unitFilter`
|
862
|
+
# @return [String]
|
863
|
+
attr_accessor :unit_filter
|
864
|
+
|
865
|
+
# Output only. The timestamp when the resource was last updated. Any change to
|
866
|
+
# the resource made by users must refresh this value. Changes to a resource made
|
867
|
+
# by the service should refresh this value.
|
868
|
+
# Corresponds to the JSON property `updateTime`
|
869
|
+
# @return [String]
|
870
|
+
attr_accessor :update_time
|
871
|
+
|
872
|
+
def initialize(**args)
|
873
|
+
update!(**args)
|
874
|
+
end
|
875
|
+
|
876
|
+
# Update properties of this object
|
877
|
+
def update!(**args)
|
878
|
+
@annotations = args[:annotations] if args.key?(:annotations)
|
879
|
+
@control = args[:control] if args.key?(:control)
|
880
|
+
@create_time = args[:create_time] if args.key?(:create_time)
|
881
|
+
@end_time = args[:end_time] if args.key?(:end_time)
|
882
|
+
@etag = args[:etag] if args.key?(:etag)
|
883
|
+
@labels = args[:labels] if args.key?(:labels)
|
884
|
+
@name = args[:name] if args.key?(:name)
|
885
|
+
@parent_rollout = args[:parent_rollout] if args.key?(:parent_rollout)
|
886
|
+
@release = args[:release] if args.key?(:release)
|
887
|
+
@rollout_kind = args[:rollout_kind] if args.key?(:rollout_kind)
|
888
|
+
@rollout_orchestration_strategy = args[:rollout_orchestration_strategy] if args.key?(:rollout_orchestration_strategy)
|
889
|
+
@root_rollout = args[:root_rollout] if args.key?(:root_rollout)
|
890
|
+
@start_time = args[:start_time] if args.key?(:start_time)
|
891
|
+
@state = args[:state] if args.key?(:state)
|
892
|
+
@state_message = args[:state_message] if args.key?(:state_message)
|
893
|
+
@state_transition_time = args[:state_transition_time] if args.key?(:state_transition_time)
|
894
|
+
@stats = args[:stats] if args.key?(:stats)
|
895
|
+
@uid = args[:uid] if args.key?(:uid)
|
896
|
+
@unit_filter = args[:unit_filter] if args.key?(:unit_filter)
|
897
|
+
@update_time = args[:update_time] if args.key?(:update_time)
|
898
|
+
end
|
899
|
+
end
|
900
|
+
|
901
|
+
# RolloutControl provides a way to request a change to the execution of a
|
902
|
+
# Rollout by pausing or canceling it.
|
903
|
+
class RolloutControl
|
904
|
+
include Google::Apis::Core::Hashable
|
905
|
+
|
906
|
+
# Required. Action to be performed on the Rollout. The default behavior is to
|
907
|
+
# run the rollout until it naturally reaches a terminal state.
|
908
|
+
# Corresponds to the JSON property `action`
|
909
|
+
# @return [String]
|
910
|
+
attr_accessor :action
|
911
|
+
|
912
|
+
# Parameters for the RUN action controlling the behavior of the rollout when it
|
913
|
+
# is resumed from a PAUSED state.
|
914
|
+
# Corresponds to the JSON property `runParams`
|
915
|
+
# @return [Google::Apis::SaasservicemgmtV1beta1::RunRolloutActionParams]
|
916
|
+
attr_accessor :run_params
|
917
|
+
|
918
|
+
def initialize(**args)
|
919
|
+
update!(**args)
|
920
|
+
end
|
921
|
+
|
922
|
+
# Update properties of this object
|
923
|
+
def update!(**args)
|
924
|
+
@action = args[:action] if args.key?(:action)
|
925
|
+
@run_params = args[:run_params] if args.key?(:run_params)
|
926
|
+
end
|
927
|
+
end
|
928
|
+
|
929
|
+
# An object that describes various settings of Rollout execution. Includes built-
|
930
|
+
# in policies across GCP and GDC, and customizable policies.
|
931
|
+
class RolloutKind
|
932
|
+
include Google::Apis::Core::Hashable
|
933
|
+
|
934
|
+
# Optional. Annotations is an unstructured key-value map stored with a resource
|
935
|
+
# that may be set by external tools to store and retrieve arbitrary metadata.
|
936
|
+
# They are not queryable and should be preserved when modifying objects. More
|
937
|
+
# info: https://kubernetes.io/docs/user-guide/annotations
|
938
|
+
# Corresponds to the JSON property `annotations`
|
939
|
+
# @return [Hash<String,String>]
|
940
|
+
attr_accessor :annotations
|
941
|
+
|
942
|
+
# Output only. The timestamp when the resource was created.
|
943
|
+
# Corresponds to the JSON property `createTime`
|
944
|
+
# @return [String]
|
945
|
+
attr_accessor :create_time
|
946
|
+
|
947
|
+
# The configuration for error budget. If the number of failed units exceeds max(
|
948
|
+
# allowed_count, allowed_ratio * total_units), the rollout will be paused.
|
949
|
+
# Corresponds to the JSON property `errorBudget`
|
950
|
+
# @return [Google::Apis::SaasservicemgmtV1beta1::ErrorBudget]
|
951
|
+
attr_accessor :error_budget
|
952
|
+
|
953
|
+
# Output only. An opaque value that uniquely identifies a version or generation
|
954
|
+
# of a resource. It can be used to confirm that the client and server agree on
|
955
|
+
# the ordering of a resource being written.
|
956
|
+
# Corresponds to the JSON property `etag`
|
957
|
+
# @return [String]
|
958
|
+
attr_accessor :etag
|
959
|
+
|
960
|
+
# Optional. The labels on the resource, which can be used for categorization.
|
961
|
+
# similar to Kubernetes resource labels.
|
962
|
+
# Corresponds to the JSON property `labels`
|
963
|
+
# @return [Hash<String,String>]
|
964
|
+
attr_accessor :labels
|
965
|
+
|
966
|
+
# Identifier. The resource name (full URI of the resource) following the
|
967
|
+
# standard naming scheme: "projects/`project`/locations/`location`/rolloutKinds/`
|
968
|
+
# rollout_kind_id`"
|
969
|
+
# Corresponds to the JSON property `name`
|
970
|
+
# @return [String]
|
971
|
+
attr_accessor :name
|
972
|
+
|
973
|
+
# Optional. The strategy used for executing a Rollout. This is a required field.
|
974
|
+
# There are two supported values strategies which are used to control - "Google.
|
975
|
+
# Cloud.Simple.AllAtOnce" - "Google.Cloud.Simple.OneLocationAtATime" A rollout
|
976
|
+
# with one of these simple strategies will rollout across all locations defined
|
977
|
+
# in the associated UnitKind's Saas Locations.
|
978
|
+
# Corresponds to the JSON property `rolloutOrchestrationStrategy`
|
979
|
+
# @return [String]
|
980
|
+
attr_accessor :rollout_orchestration_strategy
|
981
|
+
|
982
|
+
# Output only. The unique identifier of the resource. UID is unique in the time
|
983
|
+
# and space for this resource within the scope of the service. It is typically
|
984
|
+
# generated by the server on successful creation of a resource and must not be
|
985
|
+
# changed. UID is used to uniquely identify resources with resource name reuses.
|
986
|
+
# This should be a UUID4.
|
987
|
+
# Corresponds to the JSON property `uid`
|
988
|
+
# @return [String]
|
989
|
+
attr_accessor :uid
|
990
|
+
|
991
|
+
# Optional. CEL(https://github.com/google/cel-spec) formatted filter string
|
992
|
+
# against Unit. The filter will be applied to determine the eligible unit
|
993
|
+
# population. This filter can only reduce, but not expand the scope of the
|
994
|
+
# rollout.
|
995
|
+
# Corresponds to the JSON property `unitFilter`
|
996
|
+
# @return [String]
|
997
|
+
attr_accessor :unit_filter
|
998
|
+
|
999
|
+
# Required. Immutable. UnitKind that this rollout kind corresponds to. Rollouts
|
1000
|
+
# stemming from this rollout kind will target the units of this unit kind. In
|
1001
|
+
# other words, this defines the population of target units to be upgraded by
|
1002
|
+
# rollouts.
|
1003
|
+
# Corresponds to the JSON property `unitKind`
|
1004
|
+
# @return [String]
|
1005
|
+
attr_accessor :unit_kind
|
1006
|
+
|
1007
|
+
# Output only. The timestamp when the resource was last updated. Any change to
|
1008
|
+
# the resource made by users must refresh this value. Changes to a resource made
|
1009
|
+
# by the service should refresh this value.
|
1010
|
+
# Corresponds to the JSON property `updateTime`
|
1011
|
+
# @return [String]
|
1012
|
+
attr_accessor :update_time
|
1013
|
+
|
1014
|
+
# Optional. The config for updating the unit kind. By default, the unit kind
|
1015
|
+
# will be updated on the rollout start.
|
1016
|
+
# Corresponds to the JSON property `updateUnitKindStrategy`
|
1017
|
+
# @return [String]
|
1018
|
+
attr_accessor :update_unit_kind_strategy
|
1019
|
+
|
1020
|
+
def initialize(**args)
|
1021
|
+
update!(**args)
|
1022
|
+
end
|
1023
|
+
|
1024
|
+
# Update properties of this object
|
1025
|
+
def update!(**args)
|
1026
|
+
@annotations = args[:annotations] if args.key?(:annotations)
|
1027
|
+
@create_time = args[:create_time] if args.key?(:create_time)
|
1028
|
+
@error_budget = args[:error_budget] if args.key?(:error_budget)
|
1029
|
+
@etag = args[:etag] if args.key?(:etag)
|
1030
|
+
@labels = args[:labels] if args.key?(:labels)
|
1031
|
+
@name = args[:name] if args.key?(:name)
|
1032
|
+
@rollout_orchestration_strategy = args[:rollout_orchestration_strategy] if args.key?(:rollout_orchestration_strategy)
|
1033
|
+
@uid = args[:uid] if args.key?(:uid)
|
1034
|
+
@unit_filter = args[:unit_filter] if args.key?(:unit_filter)
|
1035
|
+
@unit_kind = args[:unit_kind] if args.key?(:unit_kind)
|
1036
|
+
@update_time = args[:update_time] if args.key?(:update_time)
|
1037
|
+
@update_unit_kind_strategy = args[:update_unit_kind_strategy] if args.key?(:update_unit_kind_strategy)
|
1038
|
+
end
|
1039
|
+
end
|
1040
|
+
|
1041
|
+
# RolloutStats contains information about the progress of a rollout.
|
1042
|
+
class RolloutStats
|
1043
|
+
include Google::Apis::Core::Hashable
|
1044
|
+
|
1045
|
+
# Output only. A breakdown of the progress of operations triggered by the
|
1046
|
+
# rollout. Provides a count of Operations by their state. This can be used to
|
1047
|
+
# determine the number of units which have been updated, or are scheduled to be
|
1048
|
+
# updated. There will be at most one entry per group. Possible values for
|
1049
|
+
# operation groups are: - "SCHEDULED" - "PENDING" - "RUNNING" - "SUCCEEDED" - "
|
1050
|
+
# FAILED" - "CANCELLED"
|
1051
|
+
# Corresponds to the JSON property `operationsByState`
|
1052
|
+
# @return [Array<Google::Apis::SaasservicemgmtV1beta1::Aggregate>]
|
1053
|
+
attr_accessor :operations_by_state
|
1054
|
+
|
1055
|
+
def initialize(**args)
|
1056
|
+
update!(**args)
|
1057
|
+
end
|
1058
|
+
|
1059
|
+
# Update properties of this object
|
1060
|
+
def update!(**args)
|
1061
|
+
@operations_by_state = args[:operations_by_state] if args.key?(:operations_by_state)
|
1062
|
+
end
|
1063
|
+
end
|
1064
|
+
|
1065
|
+
# Parameters for the RUN action controlling the behavior of the rollout when it
|
1066
|
+
# is resumed from a PAUSED state.
|
1067
|
+
class RunRolloutActionParams
|
1068
|
+
include Google::Apis::Core::Hashable
|
1069
|
+
|
1070
|
+
# Required. If true, the rollout will retry failed operations when resumed. This
|
1071
|
+
# is applicable only the current state of the Rollout is PAUSED and the
|
1072
|
+
# requested action is RUN.
|
1073
|
+
# Corresponds to the JSON property `retryFailedOperations`
|
1074
|
+
# @return [Boolean]
|
1075
|
+
attr_accessor :retry_failed_operations
|
1076
|
+
alias_method :retry_failed_operations?, :retry_failed_operations
|
1077
|
+
|
1078
|
+
def initialize(**args)
|
1079
|
+
update!(**args)
|
1080
|
+
end
|
1081
|
+
|
1082
|
+
# Update properties of this object
|
1083
|
+
def update!(**args)
|
1084
|
+
@retry_failed_operations = args[:retry_failed_operations] if args.key?(:retry_failed_operations)
|
1085
|
+
end
|
1086
|
+
end
|
1087
|
+
|
1088
|
+
# Saas is a representation of a SaaS service managed by the Producer.
|
1089
|
+
class Saas
|
1090
|
+
include Google::Apis::Core::Hashable
|
1091
|
+
|
1092
|
+
# Optional. Annotations is an unstructured key-value map stored with a resource
|
1093
|
+
# that may be set by external tools to store and retrieve arbitrary metadata.
|
1094
|
+
# They are not queryable and should be preserved when modifying objects. More
|
1095
|
+
# info: https://kubernetes.io/docs/user-guide/annotations
|
1096
|
+
# Corresponds to the JSON property `annotations`
|
1097
|
+
# @return [Hash<String,String>]
|
1098
|
+
attr_accessor :annotations
|
1099
|
+
|
1100
|
+
# Output only. The timestamp when the resource was created.
|
1101
|
+
# Corresponds to the JSON property `createTime`
|
1102
|
+
# @return [String]
|
1103
|
+
attr_accessor :create_time
|
1104
|
+
|
1105
|
+
# Output only. An opaque value that uniquely identifies a version or generation
|
1106
|
+
# of a resource. It can be used to confirm that the client and server agree on
|
1107
|
+
# the ordering of a resource being written.
|
1108
|
+
# Corresponds to the JSON property `etag`
|
1109
|
+
# @return [String]
|
1110
|
+
attr_accessor :etag
|
1111
|
+
|
1112
|
+
# Optional. The labels on the resource, which can be used for categorization.
|
1113
|
+
# similar to Kubernetes resource labels.
|
1114
|
+
# Corresponds to the JSON property `labels`
|
1115
|
+
# @return [Hash<String,String>]
|
1116
|
+
attr_accessor :labels
|
1117
|
+
|
1118
|
+
# Optional. Immutable. List of locations that the service is available in.
|
1119
|
+
# Rollout refers to the list to generate a rollout plan.
|
1120
|
+
# Corresponds to the JSON property `locations`
|
1121
|
+
# @return [Array<Google::Apis::SaasservicemgmtV1beta1::Location>]
|
1122
|
+
attr_accessor :locations
|
1123
|
+
|
1124
|
+
# Identifier. The resource name (full URI of the resource) following the
|
1125
|
+
# standard naming scheme: "projects/`project`/locations/`location`/saas/`saas`"
|
1126
|
+
# Corresponds to the JSON property `name`
|
1127
|
+
# @return [String]
|
1128
|
+
attr_accessor :name
|
1129
|
+
|
1130
|
+
# Output only. The unique identifier of the resource. UID is unique in the time
|
1131
|
+
# and space for this resource within the scope of the service. It is typically
|
1132
|
+
# generated by the server on successful creation of a resource and must not be
|
1133
|
+
# changed. UID is used to uniquely identify resources with resource name reuses.
|
1134
|
+
# This should be a UUID4.
|
1135
|
+
# Corresponds to the JSON property `uid`
|
1136
|
+
# @return [String]
|
1137
|
+
attr_accessor :uid
|
1138
|
+
|
1139
|
+
# Output only. The timestamp when the resource was last updated. Any change to
|
1140
|
+
# the resource made by users must refresh this value. Changes to a resource made
|
1141
|
+
# by the service should refresh this value.
|
1142
|
+
# Corresponds to the JSON property `updateTime`
|
1143
|
+
# @return [String]
|
1144
|
+
attr_accessor :update_time
|
1145
|
+
|
1146
|
+
def initialize(**args)
|
1147
|
+
update!(**args)
|
1148
|
+
end
|
1149
|
+
|
1150
|
+
# Update properties of this object
|
1151
|
+
def update!(**args)
|
1152
|
+
@annotations = args[:annotations] if args.key?(:annotations)
|
1153
|
+
@create_time = args[:create_time] if args.key?(:create_time)
|
1154
|
+
@etag = args[:etag] if args.key?(:etag)
|
1155
|
+
@labels = args[:labels] if args.key?(:labels)
|
1156
|
+
@locations = args[:locations] if args.key?(:locations)
|
1157
|
+
@name = args[:name] if args.key?(:name)
|
1158
|
+
@uid = args[:uid] if args.key?(:uid)
|
1159
|
+
@update_time = args[:update_time] if args.key?(:update_time)
|
1160
|
+
end
|
1161
|
+
end
|
1162
|
+
|
1163
|
+
# A time specification to schedule the maintenance.
|
1164
|
+
class Schedule
|
1165
|
+
include Google::Apis::Core::Hashable
|
1166
|
+
|
1167
|
+
# Optional. Start of operation. If not set, will be set to the start of the next
|
1168
|
+
# window. (optional)
|
1169
|
+
# Corresponds to the JSON property `startTime`
|
1170
|
+
# @return [String]
|
1171
|
+
attr_accessor :start_time
|
1172
|
+
|
1173
|
+
def initialize(**args)
|
1174
|
+
update!(**args)
|
1175
|
+
end
|
1176
|
+
|
1177
|
+
# Update properties of this object
|
1178
|
+
def update!(**args)
|
1179
|
+
@start_time = args[:start_time] if args.key?(:start_time)
|
1180
|
+
end
|
1181
|
+
end
|
1182
|
+
|
1183
|
+
# Tenant represents the service producer side of an instance of the service
|
1184
|
+
# created based on a request from a consumer. In a typical scenario a Tenant has
|
1185
|
+
# a one-to-one mapping with a resource given out to a service consumer. Example:
|
1186
|
+
# tenant: name: "projects/svc1/locations/loc/tenants/inst-068afff8"
|
1187
|
+
# consumer_resource: "projects/gshoe/locations/loc/shoes/black-shoe"
|
1188
|
+
class Tenant
|
1189
|
+
include Google::Apis::Core::Hashable
|
1190
|
+
|
1191
|
+
# Optional. Annotations is an unstructured key-value map stored with a resource
|
1192
|
+
# that may be set by external tools to store and retrieve arbitrary metadata.
|
1193
|
+
# They are not queryable and should be preserved when modifying objects. More
|
1194
|
+
# info: https://kubernetes.io/docs/user-guide/annotations
|
1195
|
+
# Corresponds to the JSON property `annotations`
|
1196
|
+
# @return [Hash<String,String>]
|
1197
|
+
attr_accessor :annotations
|
1198
|
+
|
1199
|
+
# Optional. Immutable. A reference to the consumer resource this SaaS Tenant is
|
1200
|
+
# representing. The relationship with a consumer resource can be used by
|
1201
|
+
# EasySaaS for retrieving consumer-defined settings and policies such as
|
1202
|
+
# maintenance policies (using Unified Maintenance Policy API).
|
1203
|
+
# Corresponds to the JSON property `consumerResource`
|
1204
|
+
# @return [String]
|
1205
|
+
attr_accessor :consumer_resource
|
1206
|
+
|
1207
|
+
# Output only. The timestamp when the resource was created.
|
1208
|
+
# Corresponds to the JSON property `createTime`
|
1209
|
+
# @return [String]
|
1210
|
+
attr_accessor :create_time
|
1211
|
+
|
1212
|
+
# Output only. An opaque value that uniquely identifies a version or generation
|
1213
|
+
# of a resource. It can be used to confirm that the client and server agree on
|
1214
|
+
# the ordering of a resource being written.
|
1215
|
+
# Corresponds to the JSON property `etag`
|
1216
|
+
# @return [String]
|
1217
|
+
attr_accessor :etag
|
1218
|
+
|
1219
|
+
# Optional. The labels on the resource, which can be used for categorization.
|
1220
|
+
# similar to Kubernetes resource labels.
|
1221
|
+
# Corresponds to the JSON property `labels`
|
1222
|
+
# @return [Hash<String,String>]
|
1223
|
+
attr_accessor :labels
|
1224
|
+
|
1225
|
+
# Identifier. The resource name (full URI of the resource) following the
|
1226
|
+
# standard naming scheme: "projects/`project`/locations/`location`/tenants/`
|
1227
|
+
# tenant`"
|
1228
|
+
# Corresponds to the JSON property `name`
|
1229
|
+
# @return [String]
|
1230
|
+
attr_accessor :name
|
1231
|
+
|
1232
|
+
# Required. Immutable. A reference to the Saas that defines the product (managed
|
1233
|
+
# service) that the producer wants to manage with EasySaaS. Part of the EasySaaS
|
1234
|
+
# common data model.
|
1235
|
+
# Corresponds to the JSON property `saas`
|
1236
|
+
# @return [String]
|
1237
|
+
attr_accessor :saas
|
1238
|
+
|
1239
|
+
# Output only. The unique identifier of the resource. UID is unique in the time
|
1240
|
+
# and space for this resource within the scope of the service. It is typically
|
1241
|
+
# generated by the server on successful creation of a resource and must not be
|
1242
|
+
# changed. UID is used to uniquely identify resources with resource name reuses.
|
1243
|
+
# This should be a UUID4.
|
1244
|
+
# Corresponds to the JSON property `uid`
|
1245
|
+
# @return [String]
|
1246
|
+
attr_accessor :uid
|
1247
|
+
|
1248
|
+
# Output only. The timestamp when the resource was last updated. Any change to
|
1249
|
+
# the resource made by users must refresh this value. Changes to a resource made
|
1250
|
+
# by the service should refresh this value.
|
1251
|
+
# Corresponds to the JSON property `updateTime`
|
1252
|
+
# @return [String]
|
1253
|
+
attr_accessor :update_time
|
1254
|
+
|
1255
|
+
def initialize(**args)
|
1256
|
+
update!(**args)
|
1257
|
+
end
|
1258
|
+
|
1259
|
+
# Update properties of this object
|
1260
|
+
def update!(**args)
|
1261
|
+
@annotations = args[:annotations] if args.key?(:annotations)
|
1262
|
+
@consumer_resource = args[:consumer_resource] if args.key?(:consumer_resource)
|
1263
|
+
@create_time = args[:create_time] if args.key?(:create_time)
|
1264
|
+
@etag = args[:etag] if args.key?(:etag)
|
1265
|
+
@labels = args[:labels] if args.key?(:labels)
|
1266
|
+
@name = args[:name] if args.key?(:name)
|
1267
|
+
@saas = args[:saas] if args.key?(:saas)
|
1268
|
+
@uid = args[:uid] if args.key?(:uid)
|
1269
|
+
@update_time = args[:update_time] if args.key?(:update_time)
|
1270
|
+
end
|
1271
|
+
end
|
1272
|
+
|
1273
|
+
# Input variables whose values will be passed on to dependencies
|
1274
|
+
class ToMapping
|
1275
|
+
include Google::Apis::Core::Hashable
|
1276
|
+
|
1277
|
+
# Required. Alias of the dependency that the inputVariable will pass its value
|
1278
|
+
# to
|
1279
|
+
# Corresponds to the JSON property `dependency`
|
1280
|
+
# @return [String]
|
1281
|
+
attr_accessor :dependency
|
1282
|
+
|
1283
|
+
# Optional. Tells EasySaaS if this mapping should be used during lookup or not
|
1284
|
+
# Corresponds to the JSON property `ignoreForLookup`
|
1285
|
+
# @return [Boolean]
|
1286
|
+
attr_accessor :ignore_for_lookup
|
1287
|
+
alias_method :ignore_for_lookup?, :ignore_for_lookup
|
1288
|
+
|
1289
|
+
# Required. Name of the inputVariable on the dependency
|
1290
|
+
# Corresponds to the JSON property `inputVariable`
|
1291
|
+
# @return [String]
|
1292
|
+
attr_accessor :input_variable
|
1293
|
+
|
1294
|
+
def initialize(**args)
|
1295
|
+
update!(**args)
|
1296
|
+
end
|
1297
|
+
|
1298
|
+
# Update properties of this object
|
1299
|
+
def update!(**args)
|
1300
|
+
@dependency = args[:dependency] if args.key?(:dependency)
|
1301
|
+
@ignore_for_lookup = args[:ignore_for_lookup] if args.key?(:ignore_for_lookup)
|
1302
|
+
@input_variable = args[:input_variable] if args.key?(:input_variable)
|
1303
|
+
end
|
1304
|
+
end
|
1305
|
+
|
1306
|
+
# A unit of deployment that has its lifecycle via a CRUD API using an actuation
|
1307
|
+
# engine under the hood (e.g. based on Terraform, Helm or a custom
|
1308
|
+
# implementation provided by a service producer). A building block of a SaaS
|
1309
|
+
# Tenant.
|
1310
|
+
class Unit
|
1311
|
+
include Google::Apis::Core::Hashable
|
1312
|
+
|
1313
|
+
# Optional. Annotations is an unstructured key-value map stored with a resource
|
1314
|
+
# that may be set by external tools to store and retrieve arbitrary metadata.
|
1315
|
+
# They are not queryable and should be preserved when modifying objects. More
|
1316
|
+
# info: https://kubernetes.io/docs/user-guide/annotations
|
1317
|
+
# Corresponds to the JSON property `annotations`
|
1318
|
+
# @return [Hash<String,String>]
|
1319
|
+
attr_accessor :annotations
|
1320
|
+
|
1321
|
+
# Optional. Output only. A set of conditions which indicate the various
|
1322
|
+
# conditions this resource can have.
|
1323
|
+
# Corresponds to the JSON property `conditions`
|
1324
|
+
# @return [Array<Google::Apis::SaasservicemgmtV1beta1::UnitCondition>]
|
1325
|
+
attr_accessor :conditions
|
1326
|
+
|
1327
|
+
# Output only. The timestamp when the resource was created.
|
1328
|
+
# Corresponds to the JSON property `createTime`
|
1329
|
+
# @return [String]
|
1330
|
+
attr_accessor :create_time
|
1331
|
+
|
1332
|
+
# Optional. Output only. Set of dependencies for this unit. Maximum 10.
|
1333
|
+
# Corresponds to the JSON property `dependencies`
|
1334
|
+
# @return [Array<Google::Apis::SaasservicemgmtV1beta1::UnitDependency>]
|
1335
|
+
attr_accessor :dependencies
|
1336
|
+
|
1337
|
+
# Optional. Output only. List of Units that depend on this unit. Unit can only
|
1338
|
+
# be deprovisioned if this list is empty. Maximum 1000.
|
1339
|
+
# Corresponds to the JSON property `dependents`
|
1340
|
+
# @return [Array<Google::Apis::SaasservicemgmtV1beta1::UnitDependency>]
|
1341
|
+
attr_accessor :dependents
|
1342
|
+
|
1343
|
+
# Output only. An opaque value that uniquely identifies a version or generation
|
1344
|
+
# of a resource. It can be used to confirm that the client and server agree on
|
1345
|
+
# the ordering of a resource being written.
|
1346
|
+
# Corresponds to the JSON property `etag`
|
1347
|
+
# @return [String]
|
1348
|
+
attr_accessor :etag
|
1349
|
+
|
1350
|
+
# Optional. Output only. Indicates the current input variables deployed by the
|
1351
|
+
# unit
|
1352
|
+
# Corresponds to the JSON property `inputVariables`
|
1353
|
+
# @return [Array<Google::Apis::SaasservicemgmtV1beta1::UnitVariable>]
|
1354
|
+
attr_accessor :input_variables
|
1355
|
+
|
1356
|
+
# Optional. The labels on the resource, which can be used for categorization.
|
1357
|
+
# similar to Kubernetes resource labels.
|
1358
|
+
# Corresponds to the JSON property `labels`
|
1359
|
+
# @return [Hash<String,String>]
|
1360
|
+
attr_accessor :labels
|
1361
|
+
|
1362
|
+
# Captures requested directives for performing future maintenance on the unit.
|
1363
|
+
# This includes a request for the unit to skip maintenance for a period of time
|
1364
|
+
# and remain pinned to its current release as well as controls for postponing
|
1365
|
+
# maintenance scheduled in future.
|
1366
|
+
# Corresponds to the JSON property `maintenance`
|
1367
|
+
# @return [Google::Apis::SaasservicemgmtV1beta1::MaintenanceSettings]
|
1368
|
+
attr_accessor :maintenance
|
1369
|
+
|
1370
|
+
# Optional. Immutable. Indicates whether the Unit life cycle is controlled by
|
1371
|
+
# the user or by the system. Immutable once created.
|
1372
|
+
# Corresponds to the JSON property `managementMode`
|
1373
|
+
# @return [String]
|
1374
|
+
attr_accessor :management_mode
|
1375
|
+
|
1376
|
+
# Identifier. The resource name (full URI of the resource) following the
|
1377
|
+
# standard naming scheme: "projects/`project`/locations/`location`/units/`unit`"
|
1378
|
+
# Corresponds to the JSON property `name`
|
1379
|
+
# @return [String]
|
1380
|
+
attr_accessor :name
|
1381
|
+
|
1382
|
+
# Optional. Output only. List of concurrent UnitOperations that are operating on
|
1383
|
+
# this Unit.
|
1384
|
+
# Corresponds to the JSON property `ongoingOperations`
|
1385
|
+
# @return [Array<String>]
|
1386
|
+
attr_accessor :ongoing_operations
|
1387
|
+
|
1388
|
+
# Optional. Output only. Set of key/value pairs corresponding to output
|
1389
|
+
# variables from execution of actuation templates. The variables are declared in
|
1390
|
+
# actuation configs (e.g in helm chart or terraform) and the values are fetched
|
1391
|
+
# and returned by the actuation engine upon completion of execution.
|
1392
|
+
# Corresponds to the JSON property `outputVariables`
|
1393
|
+
# @return [Array<Google::Apis::SaasservicemgmtV1beta1::UnitVariable>]
|
1394
|
+
attr_accessor :output_variables
|
1395
|
+
|
1396
|
+
# Optional. Output only. List of pending (wait to be executed) UnitOperations
|
1397
|
+
# for this unit.
|
1398
|
+
# Corresponds to the JSON property `pendingOperations`
|
1399
|
+
# @return [Array<String>]
|
1400
|
+
attr_accessor :pending_operations
|
1401
|
+
|
1402
|
+
# Optional. Output only. The current Release object for this Unit.
|
1403
|
+
# Corresponds to the JSON property `release`
|
1404
|
+
# @return [String]
|
1405
|
+
attr_accessor :release
|
1406
|
+
|
1407
|
+
# Optional. Output only. List of scheduled UnitOperations for this unit.
|
1408
|
+
# Corresponds to the JSON property `scheduledOperations`
|
1409
|
+
# @return [Array<String>]
|
1410
|
+
attr_accessor :scheduled_operations
|
1411
|
+
|
1412
|
+
# Optional. Output only. Current lifecycle state of the resource (e.g. if it's
|
1413
|
+
# being created or ready to use).
|
1414
|
+
# Corresponds to the JSON property `state`
|
1415
|
+
# @return [String]
|
1416
|
+
attr_accessor :state
|
1417
|
+
|
1418
|
+
# Optional. Output only. If set, indicates the time when the system will start
|
1419
|
+
# removing the unit.
|
1420
|
+
# Corresponds to the JSON property `systemCleanupAt`
|
1421
|
+
# @return [String]
|
1422
|
+
attr_accessor :system_cleanup_at
|
1423
|
+
|
1424
|
+
# Optional. Output only. Indicates the system managed state of the unit.
|
1425
|
+
# Corresponds to the JSON property `systemManagedState`
|
1426
|
+
# @return [String]
|
1427
|
+
attr_accessor :system_managed_state
|
1428
|
+
|
1429
|
+
# Optional. Reference to the Saas Tenant resource this unit belongs to. This for
|
1430
|
+
# example informs the maintenance policies to use for scheduling future updates
|
1431
|
+
# on a unit. (optional and immutable once created)
|
1432
|
+
# Corresponds to the JSON property `tenant`
|
1433
|
+
# @return [String]
|
1434
|
+
attr_accessor :tenant
|
1435
|
+
|
1436
|
+
# Output only. The unique identifier of the resource. UID is unique in the time
|
1437
|
+
# and space for this resource within the scope of the service. It is typically
|
1438
|
+
# generated by the server on successful creation of a resource and must not be
|
1439
|
+
# changed. UID is used to uniquely identify resources with resource name reuses.
|
1440
|
+
# This should be a UUID4.
|
1441
|
+
# Corresponds to the JSON property `uid`
|
1442
|
+
# @return [String]
|
1443
|
+
attr_accessor :uid
|
1444
|
+
|
1445
|
+
# Optional. Reference to the UnitKind this Unit belongs to. Immutable once set.
|
1446
|
+
# Corresponds to the JSON property `unitKind`
|
1447
|
+
# @return [String]
|
1448
|
+
attr_accessor :unit_kind
|
1449
|
+
|
1450
|
+
# Output only. The timestamp when the resource was last updated. Any change to
|
1451
|
+
# the resource made by users must refresh this value. Changes to a resource made
|
1452
|
+
# by the service should refresh this value.
|
1453
|
+
# Corresponds to the JSON property `updateTime`
|
1454
|
+
# @return [String]
|
1455
|
+
attr_accessor :update_time
|
1456
|
+
|
1457
|
+
def initialize(**args)
|
1458
|
+
update!(**args)
|
1459
|
+
end
|
1460
|
+
|
1461
|
+
# Update properties of this object
|
1462
|
+
def update!(**args)
|
1463
|
+
@annotations = args[:annotations] if args.key?(:annotations)
|
1464
|
+
@conditions = args[:conditions] if args.key?(:conditions)
|
1465
|
+
@create_time = args[:create_time] if args.key?(:create_time)
|
1466
|
+
@dependencies = args[:dependencies] if args.key?(:dependencies)
|
1467
|
+
@dependents = args[:dependents] if args.key?(:dependents)
|
1468
|
+
@etag = args[:etag] if args.key?(:etag)
|
1469
|
+
@input_variables = args[:input_variables] if args.key?(:input_variables)
|
1470
|
+
@labels = args[:labels] if args.key?(:labels)
|
1471
|
+
@maintenance = args[:maintenance] if args.key?(:maintenance)
|
1472
|
+
@management_mode = args[:management_mode] if args.key?(:management_mode)
|
1473
|
+
@name = args[:name] if args.key?(:name)
|
1474
|
+
@ongoing_operations = args[:ongoing_operations] if args.key?(:ongoing_operations)
|
1475
|
+
@output_variables = args[:output_variables] if args.key?(:output_variables)
|
1476
|
+
@pending_operations = args[:pending_operations] if args.key?(:pending_operations)
|
1477
|
+
@release = args[:release] if args.key?(:release)
|
1478
|
+
@scheduled_operations = args[:scheduled_operations] if args.key?(:scheduled_operations)
|
1479
|
+
@state = args[:state] if args.key?(:state)
|
1480
|
+
@system_cleanup_at = args[:system_cleanup_at] if args.key?(:system_cleanup_at)
|
1481
|
+
@system_managed_state = args[:system_managed_state] if args.key?(:system_managed_state)
|
1482
|
+
@tenant = args[:tenant] if args.key?(:tenant)
|
1483
|
+
@uid = args[:uid] if args.key?(:uid)
|
1484
|
+
@unit_kind = args[:unit_kind] if args.key?(:unit_kind)
|
1485
|
+
@update_time = args[:update_time] if args.key?(:update_time)
|
1486
|
+
end
|
1487
|
+
end
|
1488
|
+
|
1489
|
+
# UnitCondition describes the status of an Unit. UnitCondition is individual
|
1490
|
+
# components that contribute to an overall state.
|
1491
|
+
class UnitCondition
|
1492
|
+
include Google::Apis::Core::Hashable
|
1493
|
+
|
1494
|
+
# Required. Last time the condition transited from one status to another.
|
1495
|
+
# Corresponds to the JSON property `lastTransitionTime`
|
1496
|
+
# @return [String]
|
1497
|
+
attr_accessor :last_transition_time
|
1498
|
+
|
1499
|
+
# Required. Human readable message indicating details about the last transition.
|
1500
|
+
# Corresponds to the JSON property `message`
|
1501
|
+
# @return [String]
|
1502
|
+
attr_accessor :message
|
1503
|
+
|
1504
|
+
# Required. Brief reason for the condition's last transition.
|
1505
|
+
# Corresponds to the JSON property `reason`
|
1506
|
+
# @return [String]
|
1507
|
+
attr_accessor :reason
|
1508
|
+
|
1509
|
+
# Required. Status of the condition.
|
1510
|
+
# Corresponds to the JSON property `status`
|
1511
|
+
# @return [String]
|
1512
|
+
attr_accessor :status
|
1513
|
+
|
1514
|
+
# Required. Type of the condition.
|
1515
|
+
# Corresponds to the JSON property `type`
|
1516
|
+
# @return [String]
|
1517
|
+
attr_accessor :type
|
1518
|
+
|
1519
|
+
def initialize(**args)
|
1520
|
+
update!(**args)
|
1521
|
+
end
|
1522
|
+
|
1523
|
+
# Update properties of this object
|
1524
|
+
def update!(**args)
|
1525
|
+
@last_transition_time = args[:last_transition_time] if args.key?(:last_transition_time)
|
1526
|
+
@message = args[:message] if args.key?(:message)
|
1527
|
+
@reason = args[:reason] if args.key?(:reason)
|
1528
|
+
@status = args[:status] if args.key?(:status)
|
1529
|
+
@type = args[:type] if args.key?(:type)
|
1530
|
+
end
|
1531
|
+
end
|
1532
|
+
|
1533
|
+
# Set of dependencies for this unit. Maximum 10.
|
1534
|
+
class UnitDependency
|
1535
|
+
include Google::Apis::Core::Hashable
|
1536
|
+
|
1537
|
+
# Output only. Alias for the name of the dependency.
|
1538
|
+
# Corresponds to the JSON property `alias`
|
1539
|
+
# @return [String]
|
1540
|
+
attr_accessor :alias
|
1541
|
+
|
1542
|
+
# Output only. A reference to the Unit object.
|
1543
|
+
# Corresponds to the JSON property `unit`
|
1544
|
+
# @return [String]
|
1545
|
+
attr_accessor :unit
|
1546
|
+
|
1547
|
+
def initialize(**args)
|
1548
|
+
update!(**args)
|
1549
|
+
end
|
1550
|
+
|
1551
|
+
# Update properties of this object
|
1552
|
+
def update!(**args)
|
1553
|
+
@alias = args[:alias] if args.key?(:alias)
|
1554
|
+
@unit = args[:unit] if args.key?(:unit)
|
1555
|
+
end
|
1556
|
+
end
|
1557
|
+
|
1558
|
+
# Definition of a Unit. Units belonging to the same UnitKind are managed
|
1559
|
+
# together; for example they follow the same release model (blueprints, versions
|
1560
|
+
# etc.) and are typically rolled out together.
|
1561
|
+
class UnitKind
|
1562
|
+
include Google::Apis::Core::Hashable
|
1563
|
+
|
1564
|
+
# Optional. Annotations is an unstructured key-value map stored with a resource
|
1565
|
+
# that may be set by external tools to store and retrieve arbitrary metadata.
|
1566
|
+
# They are not queryable and should be preserved when modifying objects. More
|
1567
|
+
# info: https://kubernetes.io/docs/user-guide/annotations
|
1568
|
+
# Corresponds to the JSON property `annotations`
|
1569
|
+
# @return [Hash<String,String>]
|
1570
|
+
attr_accessor :annotations
|
1571
|
+
|
1572
|
+
# Output only. The timestamp when the resource was created.
|
1573
|
+
# Corresponds to the JSON property `createTime`
|
1574
|
+
# @return [String]
|
1575
|
+
attr_accessor :create_time
|
1576
|
+
|
1577
|
+
# Optional. A reference to the Release object to use as default for creating new
|
1578
|
+
# units of this UnitKind (optional). If not specified, a new unit must
|
1579
|
+
# explicitly reference which release to use for its creation.
|
1580
|
+
# Corresponds to the JSON property `defaultRelease`
|
1581
|
+
# @return [String]
|
1582
|
+
attr_accessor :default_release
|
1583
|
+
|
1584
|
+
# Optional. Immutable. List of other unit kinds that this release will depend on.
|
1585
|
+
# Dependencies will be automatically provisioned if not found. Maximum 10.
|
1586
|
+
# Corresponds to the JSON property `dependencies`
|
1587
|
+
# @return [Array<Google::Apis::SaasservicemgmtV1beta1::Dependency>]
|
1588
|
+
attr_accessor :dependencies
|
1589
|
+
|
1590
|
+
# Output only. An opaque value that uniquely identifies a version or generation
|
1591
|
+
# of a resource. It can be used to confirm that the client and server agree on
|
1592
|
+
# the ordering of a resource being written.
|
1593
|
+
# Corresponds to the JSON property `etag`
|
1594
|
+
# @return [String]
|
1595
|
+
attr_accessor :etag
|
1596
|
+
|
1597
|
+
# Optional. List of inputVariables for this release that will either be
|
1598
|
+
# retrieved from a dependency’s outputVariables, or will be passed on to a
|
1599
|
+
# dependency’s inputVariables. Maximum 100.
|
1600
|
+
# Corresponds to the JSON property `inputVariableMappings`
|
1601
|
+
# @return [Array<Google::Apis::SaasservicemgmtV1beta1::VariableMapping>]
|
1602
|
+
attr_accessor :input_variable_mappings
|
1603
|
+
|
1604
|
+
# Optional. The labels on the resource, which can be used for categorization.
|
1605
|
+
# similar to Kubernetes resource labels.
|
1606
|
+
# Corresponds to the JSON property `labels`
|
1607
|
+
# @return [Hash<String,String>]
|
1608
|
+
attr_accessor :labels
|
1609
|
+
|
1610
|
+
# Identifier. The resource name (full URI of the resource) following the
|
1611
|
+
# standard naming scheme: "projects/`project`/locations/`location`/unitKinds/`
|
1612
|
+
# unitKind`"
|
1613
|
+
# Corresponds to the JSON property `name`
|
1614
|
+
# @return [String]
|
1615
|
+
attr_accessor :name
|
1616
|
+
|
1617
|
+
# Optional. List of outputVariables for this unit kind will be passed to this
|
1618
|
+
# unit's outputVariables. Maximum 100.
|
1619
|
+
# Corresponds to the JSON property `outputVariableMappings`
|
1620
|
+
# @return [Array<Google::Apis::SaasservicemgmtV1beta1::VariableMapping>]
|
1621
|
+
attr_accessor :output_variable_mappings
|
1622
|
+
|
1623
|
+
# Required. Immutable. A reference to the Saas that defines the product (managed
|
1624
|
+
# service) that the producer wants to manage with EasySaaS. Part of the EasySaaS
|
1625
|
+
# common data model. Immutable once set.
|
1626
|
+
# Corresponds to the JSON property `saas`
|
1627
|
+
# @return [String]
|
1628
|
+
attr_accessor :saas
|
1629
|
+
|
1630
|
+
# Output only. The unique identifier of the resource. UID is unique in the time
|
1631
|
+
# and space for this resource within the scope of the service. It is typically
|
1632
|
+
# generated by the server on successful creation of a resource and must not be
|
1633
|
+
# changed. UID is used to uniquely identify resources with resource name reuses.
|
1634
|
+
# This should be a UUID4.
|
1635
|
+
# Corresponds to the JSON property `uid`
|
1636
|
+
# @return [String]
|
1637
|
+
attr_accessor :uid
|
1638
|
+
|
1639
|
+
# Output only. The timestamp when the resource was last updated. Any change to
|
1640
|
+
# the resource made by users must refresh this value. Changes to a resource made
|
1641
|
+
# by the service should refresh this value.
|
1642
|
+
# Corresponds to the JSON property `updateTime`
|
1643
|
+
# @return [String]
|
1644
|
+
attr_accessor :update_time
|
1645
|
+
|
1646
|
+
def initialize(**args)
|
1647
|
+
update!(**args)
|
1648
|
+
end
|
1649
|
+
|
1650
|
+
# Update properties of this object
|
1651
|
+
def update!(**args)
|
1652
|
+
@annotations = args[:annotations] if args.key?(:annotations)
|
1653
|
+
@create_time = args[:create_time] if args.key?(:create_time)
|
1654
|
+
@default_release = args[:default_release] if args.key?(:default_release)
|
1655
|
+
@dependencies = args[:dependencies] if args.key?(:dependencies)
|
1656
|
+
@etag = args[:etag] if args.key?(:etag)
|
1657
|
+
@input_variable_mappings = args[:input_variable_mappings] if args.key?(:input_variable_mappings)
|
1658
|
+
@labels = args[:labels] if args.key?(:labels)
|
1659
|
+
@name = args[:name] if args.key?(:name)
|
1660
|
+
@output_variable_mappings = args[:output_variable_mappings] if args.key?(:output_variable_mappings)
|
1661
|
+
@saas = args[:saas] if args.key?(:saas)
|
1662
|
+
@uid = args[:uid] if args.key?(:uid)
|
1663
|
+
@update_time = args[:update_time] if args.key?(:update_time)
|
1664
|
+
end
|
1665
|
+
end
|
1666
|
+
|
1667
|
+
# UnitOperation encapsulates the intent of changing/interacting with the service
|
1668
|
+
# component represented by the specific Unit. Multiple UnitOperations can be
|
1669
|
+
# created (requested) and scheduled in the future, however only one will be
|
1670
|
+
# allowed to execute at a time (that can change in the future for non-mutating
|
1671
|
+
# operations). UnitOperations allow different actors interacting with the same
|
1672
|
+
# unit to focus only on the change they have requested. This is a base object
|
1673
|
+
# that contains the common fields in all unit operations.
|
1674
|
+
class UnitOperation
|
1675
|
+
include Google::Apis::Core::Hashable
|
1676
|
+
|
1677
|
+
# Optional. Annotations is an unstructured key-value map stored with a resource
|
1678
|
+
# that may be set by external tools to store and retrieve arbitrary metadata.
|
1679
|
+
# They are not queryable and should be preserved when modifying objects. More
|
1680
|
+
# info: https://kubernetes.io/docs/user-guide/annotations
|
1681
|
+
# Corresponds to the JSON property `annotations`
|
1682
|
+
# @return [Hash<String,String>]
|
1683
|
+
attr_accessor :annotations
|
1684
|
+
|
1685
|
+
# Optional. When true, attempt to cancel the operation. Cancellation may fail if
|
1686
|
+
# the operation is already executing. (Optional)
|
1687
|
+
# Corresponds to the JSON property `cancel`
|
1688
|
+
# @return [Boolean]
|
1689
|
+
attr_accessor :cancel
|
1690
|
+
alias_method :cancel?, :cancel
|
1691
|
+
|
1692
|
+
# Optional. Output only. A set of conditions which indicate the various
|
1693
|
+
# conditions this resource can have.
|
1694
|
+
# Corresponds to the JSON property `conditions`
|
1695
|
+
# @return [Array<Google::Apis::SaasservicemgmtV1beta1::UnitOperationCondition>]
|
1696
|
+
attr_accessor :conditions
|
1697
|
+
|
1698
|
+
# Output only. The timestamp when the resource was created.
|
1699
|
+
# Corresponds to the JSON property `createTime`
|
1700
|
+
# @return [String]
|
1701
|
+
attr_accessor :create_time
|
1702
|
+
|
1703
|
+
# Deprovision is the unit operation that deprovision the underlying resources
|
1704
|
+
# represented by a Unit. Can only execute if the Unit is currently provisioned.
|
1705
|
+
# Corresponds to the JSON property `deprovision`
|
1706
|
+
# @return [Google::Apis::SaasservicemgmtV1beta1::Deprovision]
|
1707
|
+
attr_accessor :deprovision
|
1708
|
+
|
1709
|
+
# Optional. Output only. The engine state for on-going deployment engine
|
1710
|
+
# operation(s). This field is opaque for external usage.
|
1711
|
+
# Corresponds to the JSON property `engineState`
|
1712
|
+
# @return [String]
|
1713
|
+
attr_accessor :engine_state
|
1714
|
+
|
1715
|
+
# Optional. Output only. UnitOperationErrorCategory describe the error category.
|
1716
|
+
# Corresponds to the JSON property `errorCategory`
|
1717
|
+
# @return [String]
|
1718
|
+
attr_accessor :error_category
|
1719
|
+
|
1720
|
+
# Output only. An opaque value that uniquely identifies a version or generation
|
1721
|
+
# of a resource. It can be used to confirm that the client and server agree on
|
1722
|
+
# the ordering of a resource being written.
|
1723
|
+
# Corresponds to the JSON property `etag`
|
1724
|
+
# @return [String]
|
1725
|
+
attr_accessor :etag
|
1726
|
+
|
1727
|
+
# Optional. The labels on the resource, which can be used for categorization.
|
1728
|
+
# similar to Kubernetes resource labels.
|
1729
|
+
# Corresponds to the JSON property `labels`
|
1730
|
+
# @return [Hash<String,String>]
|
1731
|
+
attr_accessor :labels
|
1732
|
+
|
1733
|
+
# Identifier. The resource name (full URI of the resource) following the
|
1734
|
+
# standard naming scheme: "projects/`project`/locations/`location`/
|
1735
|
+
# unitOperations/`unitOperation`"
|
1736
|
+
# Corresponds to the JSON property `name`
|
1737
|
+
# @return [String]
|
1738
|
+
attr_accessor :name
|
1739
|
+
|
1740
|
+
# Optional. Reference to parent resource: UnitOperation. If an operation needs
|
1741
|
+
# to create other operations as part of its workflow, each of the child
|
1742
|
+
# operations should have this field set to the parent. This can be used for
|
1743
|
+
# tracing. (Optional)
|
1744
|
+
# Corresponds to the JSON property `parentUnitOperation`
|
1745
|
+
# @return [String]
|
1746
|
+
attr_accessor :parent_unit_operation
|
1747
|
+
|
1748
|
+
# Provision is the unit operation that provision the underlying resources
|
1749
|
+
# represented by a Unit. Can only execute if the Unit is not currently
|
1750
|
+
# provisioned.
|
1751
|
+
# Corresponds to the JSON property `provision`
|
1752
|
+
# @return [Google::Apis::SaasservicemgmtV1beta1::Provision]
|
1753
|
+
attr_accessor :provision
|
1754
|
+
|
1755
|
+
# Optional. Specifies which rollout created this Unit Operation. This cannot be
|
1756
|
+
# modified and is used for filtering purposes only. If a dependent unit and unit
|
1757
|
+
# operation are created as part of another unit operation, they will use the
|
1758
|
+
# same rolloutId.
|
1759
|
+
# Corresponds to the JSON property `rollout`
|
1760
|
+
# @return [String]
|
1761
|
+
attr_accessor :rollout
|
1762
|
+
|
1763
|
+
# A time specification to schedule the maintenance.
|
1764
|
+
# Corresponds to the JSON property `schedule`
|
1765
|
+
# @return [Google::Apis::SaasservicemgmtV1beta1::Schedule]
|
1766
|
+
attr_accessor :schedule
|
1767
|
+
|
1768
|
+
# Optional. Output only. UnitOperationState describes the current state of the
|
1769
|
+
# unit operation.
|
1770
|
+
# Corresponds to the JSON property `state`
|
1771
|
+
# @return [String]
|
1772
|
+
attr_accessor :state
|
1773
|
+
|
1774
|
+
# Output only. The unique identifier of the resource. UID is unique in the time
|
1775
|
+
# and space for this resource within the scope of the service. It is typically
|
1776
|
+
# generated by the server on successful creation of a resource and must not be
|
1777
|
+
# changed. UID is used to uniquely identify resources with resource name reuses.
|
1778
|
+
# This should be a UUID4.
|
1779
|
+
# Corresponds to the JSON property `uid`
|
1780
|
+
# @return [String]
|
1781
|
+
attr_accessor :uid
|
1782
|
+
|
1783
|
+
# Required. Immutable. The Unit a given UnitOperation will act upon.
|
1784
|
+
# Corresponds to the JSON property `unit`
|
1785
|
+
# @return [String]
|
1786
|
+
attr_accessor :unit
|
1787
|
+
|
1788
|
+
# Output only. The timestamp when the resource was last updated. Any change to
|
1789
|
+
# the resource made by users must refresh this value. Changes to a resource made
|
1790
|
+
# by the service should refresh this value.
|
1791
|
+
# Corresponds to the JSON property `updateTime`
|
1792
|
+
# @return [String]
|
1793
|
+
attr_accessor :update_time
|
1794
|
+
|
1795
|
+
# Upgrade is the unit operation that upgrades a provisioned unit, which may also
|
1796
|
+
# include the underlying resources represented by a Unit. Can only execute if
|
1797
|
+
# the Unit is currently provisioned.
|
1798
|
+
# Corresponds to the JSON property `upgrade`
|
1799
|
+
# @return [Google::Apis::SaasservicemgmtV1beta1::Upgrade]
|
1800
|
+
attr_accessor :upgrade
|
1801
|
+
|
1802
|
+
def initialize(**args)
|
1803
|
+
update!(**args)
|
1804
|
+
end
|
1805
|
+
|
1806
|
+
# Update properties of this object
|
1807
|
+
def update!(**args)
|
1808
|
+
@annotations = args[:annotations] if args.key?(:annotations)
|
1809
|
+
@cancel = args[:cancel] if args.key?(:cancel)
|
1810
|
+
@conditions = args[:conditions] if args.key?(:conditions)
|
1811
|
+
@create_time = args[:create_time] if args.key?(:create_time)
|
1812
|
+
@deprovision = args[:deprovision] if args.key?(:deprovision)
|
1813
|
+
@engine_state = args[:engine_state] if args.key?(:engine_state)
|
1814
|
+
@error_category = args[:error_category] if args.key?(:error_category)
|
1815
|
+
@etag = args[:etag] if args.key?(:etag)
|
1816
|
+
@labels = args[:labels] if args.key?(:labels)
|
1817
|
+
@name = args[:name] if args.key?(:name)
|
1818
|
+
@parent_unit_operation = args[:parent_unit_operation] if args.key?(:parent_unit_operation)
|
1819
|
+
@provision = args[:provision] if args.key?(:provision)
|
1820
|
+
@rollout = args[:rollout] if args.key?(:rollout)
|
1821
|
+
@schedule = args[:schedule] if args.key?(:schedule)
|
1822
|
+
@state = args[:state] if args.key?(:state)
|
1823
|
+
@uid = args[:uid] if args.key?(:uid)
|
1824
|
+
@unit = args[:unit] if args.key?(:unit)
|
1825
|
+
@update_time = args[:update_time] if args.key?(:update_time)
|
1826
|
+
@upgrade = args[:upgrade] if args.key?(:upgrade)
|
1827
|
+
end
|
1828
|
+
end
|
1829
|
+
|
1830
|
+
# UnitOperationCondition describes the status of an Unit Operation.
|
1831
|
+
# UnitOperationCondition is individual components that contribute to an overall
|
1832
|
+
# state.
|
1833
|
+
class UnitOperationCondition
|
1834
|
+
include Google::Apis::Core::Hashable
|
1835
|
+
|
1836
|
+
# Required. Last time the condition transited from one status to another.
|
1837
|
+
# Corresponds to the JSON property `lastTransitionTime`
|
1838
|
+
# @return [String]
|
1839
|
+
attr_accessor :last_transition_time
|
1840
|
+
|
1841
|
+
# Required. Human readable message indicating details about the last transition.
|
1842
|
+
# Corresponds to the JSON property `message`
|
1843
|
+
# @return [String]
|
1844
|
+
attr_accessor :message
|
1845
|
+
|
1846
|
+
# Required. Brief reason for the condition's last transition.
|
1847
|
+
# Corresponds to the JSON property `reason`
|
1848
|
+
# @return [String]
|
1849
|
+
attr_accessor :reason
|
1850
|
+
|
1851
|
+
# Required. Status of the condition.
|
1852
|
+
# Corresponds to the JSON property `status`
|
1853
|
+
# @return [String]
|
1854
|
+
attr_accessor :status
|
1855
|
+
|
1856
|
+
# Required. Type of the condition.
|
1857
|
+
# Corresponds to the JSON property `type`
|
1858
|
+
# @return [String]
|
1859
|
+
attr_accessor :type
|
1860
|
+
|
1861
|
+
def initialize(**args)
|
1862
|
+
update!(**args)
|
1863
|
+
end
|
1864
|
+
|
1865
|
+
# Update properties of this object
|
1866
|
+
def update!(**args)
|
1867
|
+
@last_transition_time = args[:last_transition_time] if args.key?(:last_transition_time)
|
1868
|
+
@message = args[:message] if args.key?(:message)
|
1869
|
+
@reason = args[:reason] if args.key?(:reason)
|
1870
|
+
@status = args[:status] if args.key?(:status)
|
1871
|
+
@type = args[:type] if args.key?(:type)
|
1872
|
+
end
|
1873
|
+
end
|
1874
|
+
|
1875
|
+
# UnitVariable describes a parameter for a Unit.
|
1876
|
+
class UnitVariable
|
1877
|
+
include Google::Apis::Core::Hashable
|
1878
|
+
|
1879
|
+
# Optional. Immutable. Name of a supported variable type. Supported types are
|
1880
|
+
# string, int, bool.
|
1881
|
+
# Corresponds to the JSON property `type`
|
1882
|
+
# @return [String]
|
1883
|
+
attr_accessor :type
|
1884
|
+
|
1885
|
+
# Optional. String encoded value for the variable.
|
1886
|
+
# Corresponds to the JSON property `value`
|
1887
|
+
# @return [String]
|
1888
|
+
attr_accessor :value
|
1889
|
+
|
1890
|
+
# Required. Immutable. Name of the variable from actuation configs.
|
1891
|
+
# Corresponds to the JSON property `variable`
|
1892
|
+
# @return [String]
|
1893
|
+
attr_accessor :variable
|
1894
|
+
|
1895
|
+
def initialize(**args)
|
1896
|
+
update!(**args)
|
1897
|
+
end
|
1898
|
+
|
1899
|
+
# Update properties of this object
|
1900
|
+
def update!(**args)
|
1901
|
+
@type = args[:type] if args.key?(:type)
|
1902
|
+
@value = args[:value] if args.key?(:value)
|
1903
|
+
@variable = args[:variable] if args.key?(:variable)
|
1904
|
+
end
|
1905
|
+
end
|
1906
|
+
|
1907
|
+
# Upgrade is the unit operation that upgrades a provisioned unit, which may also
|
1908
|
+
# include the underlying resources represented by a Unit. Can only execute if
|
1909
|
+
# the Unit is currently provisioned.
|
1910
|
+
class Upgrade
|
1911
|
+
include Google::Apis::Core::Hashable
|
1912
|
+
|
1913
|
+
# Optional. Set of input variables. Maximum 100. (optional)
|
1914
|
+
# Corresponds to the JSON property `inputVariables`
|
1915
|
+
# @return [Array<Google::Apis::SaasservicemgmtV1beta1::UnitVariable>]
|
1916
|
+
attr_accessor :input_variables
|
1917
|
+
|
1918
|
+
# Optional. Reference to the Release object to use for the Unit. (optional).
|
1919
|
+
# Corresponds to the JSON property `release`
|
1920
|
+
# @return [String]
|
1921
|
+
attr_accessor :release
|
1922
|
+
|
1923
|
+
def initialize(**args)
|
1924
|
+
update!(**args)
|
1925
|
+
end
|
1926
|
+
|
1927
|
+
# Update properties of this object
|
1928
|
+
def update!(**args)
|
1929
|
+
@input_variables = args[:input_variables] if args.key?(:input_variables)
|
1930
|
+
@release = args[:release] if args.key?(:release)
|
1931
|
+
end
|
1932
|
+
end
|
1933
|
+
|
1934
|
+
# Mapping of input variables to their respective output variable for
|
1935
|
+
# depedenencies
|
1936
|
+
class VariableMapping
|
1937
|
+
include Google::Apis::Core::Hashable
|
1938
|
+
|
1939
|
+
# Output variables whose values will be passed on to dependencies
|
1940
|
+
# Corresponds to the JSON property `from`
|
1941
|
+
# @return [Google::Apis::SaasservicemgmtV1beta1::FromMapping]
|
1942
|
+
attr_accessor :from
|
1943
|
+
|
1944
|
+
# Input variables whose values will be passed on to dependencies
|
1945
|
+
# Corresponds to the JSON property `to`
|
1946
|
+
# @return [Google::Apis::SaasservicemgmtV1beta1::ToMapping]
|
1947
|
+
attr_accessor :to
|
1948
|
+
|
1949
|
+
# Required. name of the variable
|
1950
|
+
# Corresponds to the JSON property `variable`
|
1951
|
+
# @return [String]
|
1952
|
+
attr_accessor :variable
|
1953
|
+
|
1954
|
+
def initialize(**args)
|
1955
|
+
update!(**args)
|
1956
|
+
end
|
1957
|
+
|
1958
|
+
# Update properties of this object
|
1959
|
+
def update!(**args)
|
1960
|
+
@from = args[:from] if args.key?(:from)
|
1961
|
+
@to = args[:to] if args.key?(:to)
|
1962
|
+
@variable = args[:variable] if args.key?(:variable)
|
1963
|
+
end
|
1964
|
+
end
|
1965
|
+
end
|
1966
|
+
end
|
1967
|
+
end
|