google-api-client 0.44.0 → 0.44.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 64ca536de48cc4c17f4a9aecf6032e7c13d020e7f75a170eff19f3dd13e176c8
4
- data.tar.gz: f9a96a1b6ff6ae9ab206402c9b8c4c7f649982e3d061fb04230a45d46b431dcb
3
+ metadata.gz: f4f7c808bc2dad27ef3556c87746aefecbcde173211986f93852c9dbf2445805
4
+ data.tar.gz: 6dc1511f2f9306caf94526edee2c9fac9224e9d553d9a2e475c02a2a4d684a7f
5
5
  SHA512:
6
- metadata.gz: 37925bdd80d002f733e29c0aa89dba25f55cff88a0894646e710e3003c4ce2d2dea8a43821bd9da7a8218d76b1849c955c1ddb95ad68e8a170c9dcb634fcbf43
7
- data.tar.gz: 689be5bea46d097010ad7e30e28d9bfeb3785bc8c8e74315d36aa880bc142f77acd903d5fe7e3caecd586c197795bc9126a8404451709d144fc30677c7bc4816
6
+ metadata.gz: 4dbb661ceb76f948b964de21ec80024c2869130e527c0725698635c7c2011e32b651ff917dee9b3ce2911b21fd6603f2a9a84bf100db56a45f990a49125f838e
7
+ data.tar.gz: 5e3fa7f938baf3faf759686c880259cfca434b6eb271eda6491018d2caf1f34c04893d6ef7a52355e5902da58aed2c5733f017a2580d871cf198482e051849b3
@@ -1,3 +1,11 @@
1
+ # 0.44.1
2
+ * Backwards compatible changes:
3
+ * Added `workflows_v1beta`
4
+ * Updated `androidmanagement_v1`
5
+ * Updated `apigee_v1`
6
+ * Updated `websecurityscanner_v1alpha`
7
+ * Updated `websecurityscanner_v1beta`
8
+
1
9
  # 0.44.0
2
10
  * Breaking changes:
3
11
  * Deleted `dns_v2beta1`
@@ -26,7 +26,7 @@ module Google
26
26
  # @see https://developers.google.com/android/management
27
27
  module AndroidmanagementV1
28
28
  VERSION = 'V1'
29
- REVISION = '20200817'
29
+ REVISION = '20200824'
30
30
 
31
31
  # Manage Android devices and apps for your customers
32
32
  AUTH_ANDROIDMANAGEMENT = 'https://www.googleapis.com/auth/androidmanagement'
@@ -2226,7 +2226,7 @@ module Google
2226
2226
  end
2227
2227
  end
2228
2228
 
2229
- # Policies for apps on the personal profile of a company-owned device with a
2229
+ # Policies for apps in the personal profile of a company-owned device with a
2230
2230
  # work profile.
2231
2231
  class PersonalApplicationPolicy
2232
2232
  include Google::Apis::Core::Hashable
@@ -2273,12 +2273,13 @@ module Google
2273
2273
  # @return [Fixnum]
2274
2274
  attr_accessor :max_days_with_work_off
2275
2275
 
2276
- # Policy applied to applications on the personal profile.
2276
+ # Policy applied to applications in the personal profile.
2277
2277
  # Corresponds to the JSON property `personalApplications`
2278
2278
  # @return [Array<Google::Apis::AndroidmanagementV1::PersonalApplicationPolicy>]
2279
2279
  attr_accessor :personal_applications
2280
2280
 
2281
- # Controls how apps on the personal profile are allowed or blocked.
2281
+ # Used together with personal_applications to control how apps in the personal
2282
+ # profile are allowed or blocked.
2282
2283
  # Corresponds to the JSON property `personalPlayStoreMode`
2283
2284
  # @return [String]
2284
2285
  attr_accessor :personal_play_store_mode
@@ -29,7 +29,7 @@ module Google
29
29
  # @see https://cloud.google.com/apigee-api-management/
30
30
  module ApigeeV1
31
31
  VERSION = 'V1'
32
- REVISION = '20200821'
32
+ REVISION = '20200827'
33
33
 
34
34
  # View and manage your data across Google Cloud Platform services
35
35
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
@@ -3520,6 +3520,34 @@ module Google
3520
3520
  end
3521
3521
  end
3522
3522
 
3523
+ # Operation represents the pairing of REST resource path and the actions (verbs)
3524
+ # allowed on the resource path.
3525
+ class GoogleCloudApigeeV1Operation
3526
+ include Google::Apis::Core::Hashable
3527
+
3528
+ # methods refers to the REST verbs as in https://www.w3.org/Protocols/rfc2616/
3529
+ # rfc2616-sec9.html. When none specified, all verb types are allowed.
3530
+ # Corresponds to the JSON property `methods`
3531
+ # @return [Array<String>]
3532
+ attr_accessor :methods_prop
3533
+
3534
+ # Required. resource represents REST resource path associated with the proxy/
3535
+ # remote service.
3536
+ # Corresponds to the JSON property `resource`
3537
+ # @return [String]
3538
+ attr_accessor :resource
3539
+
3540
+ def initialize(**args)
3541
+ update!(**args)
3542
+ end
3543
+
3544
+ # Update properties of this object
3545
+ def update!(**args)
3546
+ @methods_prop = args[:methods_prop] if args.key?(:methods_prop)
3547
+ @resource = args[:resource] if args.key?(:resource)
3548
+ end
3549
+ end
3550
+
3523
3551
  # OperationConfig binds the resources in a proxy or remote service with the
3524
3552
  # allowed REST methods and its associated quota enforcement.
3525
3553
  class GoogleCloudApigeeV1OperationConfig
@@ -3536,11 +3564,12 @@ module Google
3536
3564
  # @return [Array<Google::Apis::ApigeeV1::GoogleCloudApigeeV1Attribute>]
3537
3565
  attr_accessor :attributes
3538
3566
 
3539
- # methods refers to the REST verbs as in https://www.w3.org/Protocols/rfc2616/
3540
- # rfc2616-sec9.html. When none specified, all verb types are allowed.
3541
- # Corresponds to the JSON property `methods`
3542
- # @return [Array<String>]
3543
- attr_accessor :methods_prop
3567
+ # operations is the list of resource/methods pair, belonging to proxy/remote
3568
+ # service, upon which quota will applied on. Note that currently we allow only a
3569
+ # single operation. The call will fail if more than one is provided.
3570
+ # Corresponds to the JSON property `operations`
3571
+ # @return [Array<Google::Apis::ApigeeV1::GoogleCloudApigeeV1Operation>]
3572
+ attr_accessor :operations
3544
3573
 
3545
3574
  # Quota contains the essential parameters needed that can be applied on a proxy/
3546
3575
  # remote service, resources and methods combination associated with this API
@@ -3550,12 +3579,6 @@ module Google
3550
3579
  # @return [Google::Apis::ApigeeV1::GoogleCloudApigeeV1Quota]
3551
3580
  attr_accessor :quota
3552
3581
 
3553
- # Required. resources represents a list of REST resource path associated with
3554
- # the proxy/remote service.
3555
- # Corresponds to the JSON property `resources`
3556
- # @return [Array<String>]
3557
- attr_accessor :resources
3558
-
3559
3582
  def initialize(**args)
3560
3583
  update!(**args)
3561
3584
  end
@@ -3564,9 +3587,8 @@ module Google
3564
3587
  def update!(**args)
3565
3588
  @api_source = args[:api_source] if args.key?(:api_source)
3566
3589
  @attributes = args[:attributes] if args.key?(:attributes)
3567
- @methods_prop = args[:methods_prop] if args.key?(:methods_prop)
3590
+ @operations = args[:operations] if args.key?(:operations)
3568
3591
  @quota = args[:quota] if args.key?(:quota)
3569
- @resources = args[:resources] if args.key?(:resources)
3570
3592
  end
3571
3593
  end
3572
3594
 
@@ -3802,7 +3824,7 @@ module Google
3802
3824
  # @return [Google::Apis::ApigeeV1::GoogleCloudApigeeV1Properties]
3803
3825
  attr_accessor :properties
3804
3826
 
3805
- # Output only. Runtime type of the Apigee organization based on the Apigee
3827
+ # Required. Runtime type of the Apigee organization based on the Apigee
3806
3828
  # subscription purchased.
3807
3829
  # Corresponds to the JSON property `runtimeType`
3808
3830
  # @return [String]
@@ -520,6 +520,12 @@ module Google
520
520
  include Google::Apis::Core::JsonObjectSupport
521
521
  end
522
522
 
523
+ class GoogleCloudApigeeV1Operation
524
+ class Representation < Google::Apis::Core::JsonRepresentation; end
525
+
526
+ include Google::Apis::Core::JsonObjectSupport
527
+ end
528
+
523
529
  class GoogleCloudApigeeV1OperationConfig
524
530
  class Representation < Google::Apis::Core::JsonRepresentation; end
525
531
 
@@ -1812,16 +1818,24 @@ module Google
1812
1818
  end
1813
1819
  end
1814
1820
 
1821
+ class GoogleCloudApigeeV1Operation
1822
+ # @private
1823
+ class Representation < Google::Apis::Core::JsonRepresentation
1824
+ collection :methods_prop, as: 'methods'
1825
+ property :resource, as: 'resource'
1826
+ end
1827
+ end
1828
+
1815
1829
  class GoogleCloudApigeeV1OperationConfig
1816
1830
  # @private
1817
1831
  class Representation < Google::Apis::Core::JsonRepresentation
1818
1832
  property :api_source, as: 'apiSource'
1819
1833
  collection :attributes, as: 'attributes', class: Google::Apis::ApigeeV1::GoogleCloudApigeeV1Attribute, decorator: Google::Apis::ApigeeV1::GoogleCloudApigeeV1Attribute::Representation
1820
1834
 
1821
- collection :methods_prop, as: 'methods'
1835
+ collection :operations, as: 'operations', class: Google::Apis::ApigeeV1::GoogleCloudApigeeV1Operation, decorator: Google::Apis::ApigeeV1::GoogleCloudApigeeV1Operation::Representation
1836
+
1822
1837
  property :quota, as: 'quota', class: Google::Apis::ApigeeV1::GoogleCloudApigeeV1Quota, decorator: Google::Apis::ApigeeV1::GoogleCloudApigeeV1Quota::Representation
1823
1838
 
1824
- collection :resources, as: 'resources'
1825
1839
  end
1826
1840
  end
1827
1841
 
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://cloud.google.com/security-command-center/docs/concepts-web-security-scanner-overview/
26
26
  module WebsecurityscannerV1alpha
27
27
  VERSION = 'V1alpha'
28
- REVISION = '20200801'
28
+ REVISION = '20200826'
29
29
 
30
30
  # View and manage your data across Google Cloud Platform services
31
31
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://cloud.google.com/security-command-center/docs/concepts-web-security-scanner-overview/
26
26
  module WebsecurityscannerV1beta
27
27
  VERSION = 'V1beta'
28
- REVISION = '20200801'
28
+ REVISION = '20200826'
29
29
 
30
30
  # View and manage your data across Google Cloud Platform services
31
31
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
@@ -0,0 +1,34 @@
1
+ # Copyright 2015 Google Inc.
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 'google/apis/workflows_v1beta/service.rb'
16
+ require 'google/apis/workflows_v1beta/classes.rb'
17
+ require 'google/apis/workflows_v1beta/representations.rb'
18
+
19
+ module Google
20
+ module Apis
21
+ # Workflows API
22
+ #
23
+ #
24
+ #
25
+ # @see https://cloud.google.com/workflows
26
+ module WorkflowsV1beta
27
+ VERSION = 'V1beta'
28
+ REVISION = '20200828'
29
+
30
+ # View and manage your data across Google Cloud Platform services
31
+ AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,406 @@
1
+ # Copyright 2015 Google Inc.
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 WorkflowsV1beta
24
+
25
+ # A generic empty message that you can re-use to avoid defining duplicated empty
26
+ # messages in your APIs. A typical example is to use it as the request or the
27
+ # response type of an API method. For instance: service Foo ` rpc Bar(google.
28
+ # protobuf.Empty) returns (google.protobuf.Empty); ` The JSON representation for
29
+ # `Empty` is empty JSON object ````.
30
+ class Empty
31
+ include Google::Apis::Core::Hashable
32
+
33
+ def initialize(**args)
34
+ update!(**args)
35
+ end
36
+
37
+ # Update properties of this object
38
+ def update!(**args)
39
+ end
40
+ end
41
+
42
+ # The response message for Locations.ListLocations.
43
+ class ListLocationsResponse
44
+ include Google::Apis::Core::Hashable
45
+
46
+ # A list of locations that matches the specified filter in the request.
47
+ # Corresponds to the JSON property `locations`
48
+ # @return [Array<Google::Apis::WorkflowsV1beta::Location>]
49
+ attr_accessor :locations
50
+
51
+ # The standard List next-page token.
52
+ # Corresponds to the JSON property `nextPageToken`
53
+ # @return [String]
54
+ attr_accessor :next_page_token
55
+
56
+ def initialize(**args)
57
+ update!(**args)
58
+ end
59
+
60
+ # Update properties of this object
61
+ def update!(**args)
62
+ @locations = args[:locations] if args.key?(:locations)
63
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
64
+ end
65
+ end
66
+
67
+ # The response message for Operations.ListOperations.
68
+ class ListOperationsResponse
69
+ include Google::Apis::Core::Hashable
70
+
71
+ # The standard List next-page token.
72
+ # Corresponds to the JSON property `nextPageToken`
73
+ # @return [String]
74
+ attr_accessor :next_page_token
75
+
76
+ # A list of operations that matches the specified filter in the request.
77
+ # Corresponds to the JSON property `operations`
78
+ # @return [Array<Google::Apis::WorkflowsV1beta::Operation>]
79
+ attr_accessor :operations
80
+
81
+ def initialize(**args)
82
+ update!(**args)
83
+ end
84
+
85
+ # Update properties of this object
86
+ def update!(**args)
87
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
88
+ @operations = args[:operations] if args.key?(:operations)
89
+ end
90
+ end
91
+
92
+ # Response for the ListWorkflows method.
93
+ class ListWorkflowsResponse
94
+ include Google::Apis::Core::Hashable
95
+
96
+ # A token, which can be sent as `page_token` to retrieve the next page. If this
97
+ # field is omitted, there are no subsequent pages.
98
+ # Corresponds to the JSON property `nextPageToken`
99
+ # @return [String]
100
+ attr_accessor :next_page_token
101
+
102
+ # Unreachable resources.
103
+ # Corresponds to the JSON property `unreachable`
104
+ # @return [Array<String>]
105
+ attr_accessor :unreachable
106
+
107
+ # The workflows which match the request.
108
+ # Corresponds to the JSON property `workflows`
109
+ # @return [Array<Google::Apis::WorkflowsV1beta::Workflow>]
110
+ attr_accessor :workflows
111
+
112
+ def initialize(**args)
113
+ update!(**args)
114
+ end
115
+
116
+ # Update properties of this object
117
+ def update!(**args)
118
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
119
+ @unreachable = args[:unreachable] if args.key?(:unreachable)
120
+ @workflows = args[:workflows] if args.key?(:workflows)
121
+ end
122
+ end
123
+
124
+ # A resource that represents Google Cloud Platform location.
125
+ class Location
126
+ include Google::Apis::Core::Hashable
127
+
128
+ # The friendly name for this location, typically a nearby city name. For example,
129
+ # "Tokyo".
130
+ # Corresponds to the JSON property `displayName`
131
+ # @return [String]
132
+ attr_accessor :display_name
133
+
134
+ # Cross-service attributes for the location. For example `"cloud.googleapis.com/
135
+ # region": "us-east1"`
136
+ # Corresponds to the JSON property `labels`
137
+ # @return [Hash<String,String>]
138
+ attr_accessor :labels
139
+
140
+ # The canonical id for this location. For example: `"us-east1"`.
141
+ # Corresponds to the JSON property `locationId`
142
+ # @return [String]
143
+ attr_accessor :location_id
144
+
145
+ # Service-specific metadata. For example the available capacity at the given
146
+ # location.
147
+ # Corresponds to the JSON property `metadata`
148
+ # @return [Hash<String,Object>]
149
+ attr_accessor :metadata
150
+
151
+ # Resource name for the location, which may vary between implementations. For
152
+ # example: `"projects/example-project/locations/us-east1"`
153
+ # Corresponds to the JSON property `name`
154
+ # @return [String]
155
+ attr_accessor :name
156
+
157
+ def initialize(**args)
158
+ update!(**args)
159
+ end
160
+
161
+ # Update properties of this object
162
+ def update!(**args)
163
+ @display_name = args[:display_name] if args.key?(:display_name)
164
+ @labels = args[:labels] if args.key?(:labels)
165
+ @location_id = args[:location_id] if args.key?(:location_id)
166
+ @metadata = args[:metadata] if args.key?(:metadata)
167
+ @name = args[:name] if args.key?(:name)
168
+ end
169
+ end
170
+
171
+ # This resource represents a long-running operation that is the result of a
172
+ # network API call.
173
+ class Operation
174
+ include Google::Apis::Core::Hashable
175
+
176
+ # If the value is `false`, it means the operation is still in progress. If `true`
177
+ # , the operation is completed, and either `error` or `response` is available.
178
+ # Corresponds to the JSON property `done`
179
+ # @return [Boolean]
180
+ attr_accessor :done
181
+ alias_method :done?, :done
182
+
183
+ # The `Status` type defines a logical error model that is suitable for different
184
+ # programming environments, including REST APIs and RPC APIs. It is used by [
185
+ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
186
+ # data: error code, error message, and error details. You can find out more
187
+ # about this error model and how to work with it in the [API Design Guide](https:
188
+ # //cloud.google.com/apis/design/errors).
189
+ # Corresponds to the JSON property `error`
190
+ # @return [Google::Apis::WorkflowsV1beta::Status]
191
+ attr_accessor :error
192
+
193
+ # Service-specific metadata associated with the operation. It typically contains
194
+ # progress information and common metadata such as create time. Some services
195
+ # might not provide such metadata. Any method that returns a long-running
196
+ # operation should document the metadata type, if any.
197
+ # Corresponds to the JSON property `metadata`
198
+ # @return [Hash<String,Object>]
199
+ attr_accessor :metadata
200
+
201
+ # The server-assigned name, which is only unique within the same service that
202
+ # originally returns it. If you use the default HTTP mapping, the `name` should
203
+ # be a resource name ending with `operations/`unique_id``.
204
+ # Corresponds to the JSON property `name`
205
+ # @return [String]
206
+ attr_accessor :name
207
+
208
+ # The normal response of the operation in case of success. If the original
209
+ # method returns no data on success, such as `Delete`, the response is `google.
210
+ # protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`,
211
+ # the response should be the resource. For other methods, the response should
212
+ # have the type `XxxResponse`, where `Xxx` is the original method name. For
213
+ # example, if the original method name is `TakeSnapshot()`, the inferred
214
+ # response type is `TakeSnapshotResponse`.
215
+ # Corresponds to the JSON property `response`
216
+ # @return [Hash<String,Object>]
217
+ attr_accessor :response
218
+
219
+ def initialize(**args)
220
+ update!(**args)
221
+ end
222
+
223
+ # Update properties of this object
224
+ def update!(**args)
225
+ @done = args[:done] if args.key?(:done)
226
+ @error = args[:error] if args.key?(:error)
227
+ @metadata = args[:metadata] if args.key?(:metadata)
228
+ @name = args[:name] if args.key?(:name)
229
+ @response = args[:response] if args.key?(:response)
230
+ end
231
+ end
232
+
233
+ # Represents the metadata of the long-running operation.
234
+ class OperationMetadata
235
+ include Google::Apis::Core::Hashable
236
+
237
+ # API version used to start the operation.
238
+ # Corresponds to the JSON property `apiVersion`
239
+ # @return [String]
240
+ attr_accessor :api_version
241
+
242
+ # The time the operation was created.
243
+ # Corresponds to the JSON property `createTime`
244
+ # @return [String]
245
+ attr_accessor :create_time
246
+
247
+ # The time the operation finished running.
248
+ # Corresponds to the JSON property `endTime`
249
+ # @return [String]
250
+ attr_accessor :end_time
251
+
252
+ # Server-defined resource path for the target of the operation.
253
+ # Corresponds to the JSON property `target`
254
+ # @return [String]
255
+ attr_accessor :target
256
+
257
+ # Name of the verb executed by the operation.
258
+ # Corresponds to the JSON property `verb`
259
+ # @return [String]
260
+ attr_accessor :verb
261
+
262
+ def initialize(**args)
263
+ update!(**args)
264
+ end
265
+
266
+ # Update properties of this object
267
+ def update!(**args)
268
+ @api_version = args[:api_version] if args.key?(:api_version)
269
+ @create_time = args[:create_time] if args.key?(:create_time)
270
+ @end_time = args[:end_time] if args.key?(:end_time)
271
+ @target = args[:target] if args.key?(:target)
272
+ @verb = args[:verb] if args.key?(:verb)
273
+ end
274
+ end
275
+
276
+ # The `Status` type defines a logical error model that is suitable for different
277
+ # programming environments, including REST APIs and RPC APIs. It is used by [
278
+ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
279
+ # data: error code, error message, and error details. You can find out more
280
+ # about this error model and how to work with it in the [API Design Guide](https:
281
+ # //cloud.google.com/apis/design/errors).
282
+ class Status
283
+ include Google::Apis::Core::Hashable
284
+
285
+ # The status code, which should be an enum value of google.rpc.Code.
286
+ # Corresponds to the JSON property `code`
287
+ # @return [Fixnum]
288
+ attr_accessor :code
289
+
290
+ # A list of messages that carry the error details. There is a common set of
291
+ # message types for APIs to use.
292
+ # Corresponds to the JSON property `details`
293
+ # @return [Array<Hash<String,Object>>]
294
+ attr_accessor :details
295
+
296
+ # A developer-facing error message, which should be in English. Any user-facing
297
+ # error message should be localized and sent in the google.rpc.Status.details
298
+ # field, or localized by the client.
299
+ # Corresponds to the JSON property `message`
300
+ # @return [String]
301
+ attr_accessor :message
302
+
303
+ def initialize(**args)
304
+ update!(**args)
305
+ end
306
+
307
+ # Update properties of this object
308
+ def update!(**args)
309
+ @code = args[:code] if args.key?(:code)
310
+ @details = args[:details] if args.key?(:details)
311
+ @message = args[:message] if args.key?(:message)
312
+ end
313
+ end
314
+
315
+ # Workflow program to be executed by Workflows.
316
+ class Workflow
317
+ include Google::Apis::Core::Hashable
318
+
319
+ # Output only. The timestamp of when the workflow was created.
320
+ # Corresponds to the JSON property `createTime`
321
+ # @return [String]
322
+ attr_accessor :create_time
323
+
324
+ # Description of the workflow provided by the user. Must be at most 1000 unicode
325
+ # characters long.
326
+ # Corresponds to the JSON property `description`
327
+ # @return [String]
328
+ attr_accessor :description
329
+
330
+ # Labels associated with this workflow. Labels can contain at most 64 entries.
331
+ # Keys and values can be no longer than 63 characters and can only contain
332
+ # lowercase letters, numeric characters, underscores and dashes. Label keys must
333
+ # start with a letter. International characters are allowed.
334
+ # Corresponds to the JSON property `labels`
335
+ # @return [Hash<String,String>]
336
+ attr_accessor :labels
337
+
338
+ # The resource name of the workflow. Format: projects/`project`/locations/`
339
+ # location`/workflows/`workflow`
340
+ # Corresponds to the JSON property `name`
341
+ # @return [String]
342
+ attr_accessor :name
343
+
344
+ # Output only. The timestamp that the latest revision of the workflow was
345
+ # created.
346
+ # Corresponds to the JSON property `revisionCreateTime`
347
+ # @return [String]
348
+ attr_accessor :revision_create_time
349
+
350
+ # Output only. The revision of the workflow. A new revision of a workflow is
351
+ # created as a result of updating the following fields of a workflow: - `
352
+ # source_code` - `service_account` The format is "000001-a4d", where the first 6
353
+ # characters define the zero-padded revision ordinal number. They are followed
354
+ # by a hyphen and 3 hexadecimal random characters.
355
+ # Corresponds to the JSON property `revisionId`
356
+ # @return [String]
357
+ attr_accessor :revision_id
358
+
359
+ # Name of the service account associated with the latest workflow version. This
360
+ # service account represents the identity of the workflow and determines what
361
+ # permissions the workflow has. Format: projects/`project`/serviceAccounts/`
362
+ # account` Using `-` as a wildcard for the ``project`` will infer the project
363
+ # from the account. The ``account`` value can be the `email` address or the `
364
+ # unique_id` of the service account. If not provided, workflow will use the
365
+ # project's default service account. Modifying this field for an existing
366
+ # workflow results in a new workflow revision.
367
+ # Corresponds to the JSON property `serviceAccount`
368
+ # @return [String]
369
+ attr_accessor :service_account
370
+
371
+ # Workflow code to be executed. The size limit is 32KB.
372
+ # Corresponds to the JSON property `sourceContents`
373
+ # @return [String]
374
+ attr_accessor :source_contents
375
+
376
+ # Output only. State of the workflow deployment.
377
+ # Corresponds to the JSON property `state`
378
+ # @return [String]
379
+ attr_accessor :state
380
+
381
+ # Output only. The last update timestamp of the workflow.
382
+ # Corresponds to the JSON property `updateTime`
383
+ # @return [String]
384
+ attr_accessor :update_time
385
+
386
+ def initialize(**args)
387
+ update!(**args)
388
+ end
389
+
390
+ # Update properties of this object
391
+ def update!(**args)
392
+ @create_time = args[:create_time] if args.key?(:create_time)
393
+ @description = args[:description] if args.key?(:description)
394
+ @labels = args[:labels] if args.key?(:labels)
395
+ @name = args[:name] if args.key?(:name)
396
+ @revision_create_time = args[:revision_create_time] if args.key?(:revision_create_time)
397
+ @revision_id = args[:revision_id] if args.key?(:revision_id)
398
+ @service_account = args[:service_account] if args.key?(:service_account)
399
+ @source_contents = args[:source_contents] if args.key?(:source_contents)
400
+ @state = args[:state] if args.key?(:state)
401
+ @update_time = args[:update_time] if args.key?(:update_time)
402
+ end
403
+ end
404
+ end
405
+ end
406
+ end