google-cloud-batch-v1 0.6.0 → 0.7.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (32) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1 -1
  3. data/lib/google/cloud/batch/v1/batch_pb.rb +1 -0
  4. data/lib/google/cloud/batch/v1/batch_service/client.rb +16 -34
  5. data/lib/google/cloud/batch/v1/batch_service/operations.rb +12 -14
  6. data/lib/google/cloud/batch/v1/batch_service/rest/client.rb +810 -0
  7. data/lib/google/cloud/batch/v1/batch_service/rest/operations.rb +793 -0
  8. data/lib/google/cloud/batch/v1/batch_service/rest/service_stub.rb +403 -0
  9. data/lib/google/cloud/batch/v1/batch_service/rest.rb +56 -0
  10. data/lib/google/cloud/batch/v1/batch_service.rb +6 -0
  11. data/lib/google/cloud/batch/v1/bindings_override.rb +102 -0
  12. data/lib/google/cloud/batch/v1/rest.rb +38 -0
  13. data/lib/google/cloud/batch/v1/task_pb.rb +1 -0
  14. data/lib/google/cloud/batch/v1/version.rb +1 -1
  15. data/lib/google/cloud/batch/v1.rb +5 -0
  16. data/lib/google/iam/v1/bindings_override.rb +100 -0
  17. data/lib/google/iam/v1/iam_policy/client.rb +639 -0
  18. data/lib/google/iam/v1/iam_policy/credentials.rb +42 -0
  19. data/lib/google/iam/v1/iam_policy/rest/client.rb +558 -0
  20. data/lib/google/iam/v1/iam_policy/rest/service_stub.rb +226 -0
  21. data/lib/google/iam/v1/iam_policy/rest.rb +75 -0
  22. data/lib/google/iam/v1/iam_policy.rb +77 -0
  23. data/lib/google/iam/v1/rest.rb +36 -0
  24. data/lib/google/iam/v1.rb +43 -0
  25. data/lib/google-cloud-batch-v1.rb +1 -0
  26. data/proto_docs/google/cloud/batch/v1/batch.rb +4 -4
  27. data/proto_docs/google/cloud/batch/v1/job.rb +2 -1
  28. data/proto_docs/google/cloud/batch/v1/task.rb +27 -7
  29. data/proto_docs/google/iam/v1/iam_policy.rb +87 -0
  30. data/proto_docs/google/iam/v1/options.rb +50 -0
  31. data/proto_docs/google/iam/v1/policy.rb +418 -0
  32. metadata +32 -20
@@ -0,0 +1,226 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2023 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+ require "google/iam/v1/iam_policy_pb"
20
+
21
+ module Google
22
+ module Iam
23
+ module V1
24
+ module IAMPolicy
25
+ module Rest
26
+ ##
27
+ # REST service stub for the IAMPolicy service.
28
+ # Service stub contains baseline method implementations
29
+ # including transcoding, making the REST call, and deserialing the response.
30
+ #
31
+ class ServiceStub
32
+ def initialize endpoint:, credentials:
33
+ # These require statements are intentionally placed here to initialize
34
+ # the REST modules only when it's required.
35
+ require "gapic/rest"
36
+
37
+ @client_stub = ::Gapic::Rest::ClientStub.new endpoint: endpoint, credentials: credentials,
38
+ numeric_enums: true,
39
+ raise_faraday_errors: false
40
+ end
41
+
42
+ ##
43
+ # Baseline implementation for the set_iam_policy REST call
44
+ #
45
+ # @param request_pb [::Google::Iam::V1::SetIamPolicyRequest]
46
+ # A request object representing the call parameters. Required.
47
+ # @param options [::Gapic::CallOptions]
48
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
49
+ #
50
+ # @yield [result, operation] Access the result along with the TransportOperation object
51
+ # @yieldparam result [::Google::Iam::V1::Policy]
52
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
53
+ #
54
+ # @return [::Google::Iam::V1::Policy]
55
+ # A result object deserialized from the server's reply
56
+ def set_iam_policy request_pb, options = nil
57
+ raise ::ArgumentError, "request must be provided" if request_pb.nil?
58
+
59
+ verb, uri, query_string_params, body = ServiceStub.transcode_set_iam_policy_request request_pb
60
+ query_string_params = if query_string_params.any?
61
+ query_string_params.to_h { |p| p.split("=", 2) }
62
+ else
63
+ {}
64
+ end
65
+
66
+ response = @client_stub.make_http_request(
67
+ verb,
68
+ uri: uri,
69
+ body: body || "",
70
+ params: query_string_params,
71
+ options: options
72
+ )
73
+ operation = ::Gapic::Rest::TransportOperation.new response
74
+ result = ::Google::Iam::V1::Policy.decode_json response.body, ignore_unknown_fields: true
75
+
76
+ yield result, operation if block_given?
77
+ result
78
+ end
79
+
80
+ ##
81
+ # Baseline implementation for the get_iam_policy REST call
82
+ #
83
+ # @param request_pb [::Google::Iam::V1::GetIamPolicyRequest]
84
+ # A request object representing the call parameters. Required.
85
+ # @param options [::Gapic::CallOptions]
86
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
87
+ #
88
+ # @yield [result, operation] Access the result along with the TransportOperation object
89
+ # @yieldparam result [::Google::Iam::V1::Policy]
90
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
91
+ #
92
+ # @return [::Google::Iam::V1::Policy]
93
+ # A result object deserialized from the server's reply
94
+ def get_iam_policy request_pb, options = nil
95
+ raise ::ArgumentError, "request must be provided" if request_pb.nil?
96
+
97
+ verb, uri, query_string_params, body = ServiceStub.transcode_get_iam_policy_request request_pb
98
+ query_string_params = if query_string_params.any?
99
+ query_string_params.to_h { |p| p.split("=", 2) }
100
+ else
101
+ {}
102
+ end
103
+
104
+ response = @client_stub.make_http_request(
105
+ verb,
106
+ uri: uri,
107
+ body: body || "",
108
+ params: query_string_params,
109
+ options: options
110
+ )
111
+ operation = ::Gapic::Rest::TransportOperation.new response
112
+ result = ::Google::Iam::V1::Policy.decode_json response.body, ignore_unknown_fields: true
113
+
114
+ yield result, operation if block_given?
115
+ result
116
+ end
117
+
118
+ ##
119
+ # Baseline implementation for the test_iam_permissions REST call
120
+ #
121
+ # @param request_pb [::Google::Iam::V1::TestIamPermissionsRequest]
122
+ # A request object representing the call parameters. Required.
123
+ # @param options [::Gapic::CallOptions]
124
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
125
+ #
126
+ # @yield [result, operation] Access the result along with the TransportOperation object
127
+ # @yieldparam result [::Google::Iam::V1::TestIamPermissionsResponse]
128
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
129
+ #
130
+ # @return [::Google::Iam::V1::TestIamPermissionsResponse]
131
+ # A result object deserialized from the server's reply
132
+ def test_iam_permissions request_pb, options = nil
133
+ raise ::ArgumentError, "request must be provided" if request_pb.nil?
134
+
135
+ verb, uri, query_string_params, body = ServiceStub.transcode_test_iam_permissions_request request_pb
136
+ query_string_params = if query_string_params.any?
137
+ query_string_params.to_h { |p| p.split("=", 2) }
138
+ else
139
+ {}
140
+ end
141
+
142
+ response = @client_stub.make_http_request(
143
+ verb,
144
+ uri: uri,
145
+ body: body || "",
146
+ params: query_string_params,
147
+ options: options
148
+ )
149
+ operation = ::Gapic::Rest::TransportOperation.new response
150
+ result = ::Google::Iam::V1::TestIamPermissionsResponse.decode_json response.body, ignore_unknown_fields: true
151
+
152
+ yield result, operation if block_given?
153
+ result
154
+ end
155
+
156
+ ##
157
+ # @private
158
+ #
159
+ # GRPC transcoding helper method for the set_iam_policy REST call
160
+ #
161
+ # @param request_pb [::Google::Iam::V1::SetIamPolicyRequest]
162
+ # A request object representing the call parameters. Required.
163
+ # @return [Array(String, [String, nil], Hash{String => String})]
164
+ # Uri, Body, Query string parameters
165
+ def self.transcode_set_iam_policy_request request_pb
166
+ transcoder = Gapic::Rest::GrpcTranscoder.new
167
+ .with_bindings(
168
+ uri_method: :post,
169
+ uri_template: "/v1/{resource}:setIamPolicy",
170
+ body: "*",
171
+ matches: [
172
+ ["resource", %r{^.*$}, true]
173
+ ]
174
+ )
175
+ transcoder.transcode request_pb
176
+ end
177
+
178
+ ##
179
+ # @private
180
+ #
181
+ # GRPC transcoding helper method for the get_iam_policy REST call
182
+ #
183
+ # @param request_pb [::Google::Iam::V1::GetIamPolicyRequest]
184
+ # A request object representing the call parameters. Required.
185
+ # @return [Array(String, [String, nil], Hash{String => String})]
186
+ # Uri, Body, Query string parameters
187
+ def self.transcode_get_iam_policy_request request_pb
188
+ transcoder = Gapic::Rest::GrpcTranscoder.new
189
+ .with_bindings(
190
+ uri_method: :post,
191
+ uri_template: "/v1/{resource}:getIamPolicy",
192
+ body: "*",
193
+ matches: [
194
+ ["resource", %r{^.*$}, true]
195
+ ]
196
+ )
197
+ transcoder.transcode request_pb
198
+ end
199
+
200
+ ##
201
+ # @private
202
+ #
203
+ # GRPC transcoding helper method for the test_iam_permissions REST call
204
+ #
205
+ # @param request_pb [::Google::Iam::V1::TestIamPermissionsRequest]
206
+ # A request object representing the call parameters. Required.
207
+ # @return [Array(String, [String, nil], Hash{String => String})]
208
+ # Uri, Body, Query string parameters
209
+ def self.transcode_test_iam_permissions_request request_pb
210
+ transcoder = Gapic::Rest::GrpcTranscoder.new
211
+ .with_bindings(
212
+ uri_method: :post,
213
+ uri_template: "/v1/{resource}:testIamPermissions",
214
+ body: "*",
215
+ matches: [
216
+ ["resource", %r{^.*$}, true]
217
+ ]
218
+ )
219
+ transcoder.transcode request_pb
220
+ end
221
+ end
222
+ end
223
+ end
224
+ end
225
+ end
226
+ end
@@ -0,0 +1,75 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2023 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+ require "gapic/rest"
20
+ require "gapic/config"
21
+ require "gapic/config/method"
22
+
23
+ require "google/cloud/batch/v1/version"
24
+ require "google/iam/v1/bindings_override"
25
+
26
+ require "google/iam/v1/iam_policy/credentials"
27
+ require "google/iam/v1/iam_policy/rest/client"
28
+
29
+ module Google
30
+ module Iam
31
+ module V1
32
+ ##
33
+ # API Overview
34
+ #
35
+ #
36
+ # Manages Identity and Access Management (IAM) policies.
37
+ #
38
+ # Any implementation of an API that offers access control features
39
+ # implements the google.iam.v1.IAMPolicy interface.
40
+ #
41
+ # ## Data model
42
+ #
43
+ # Access control is applied when a principal (user or service account), takes
44
+ # some action on a resource exposed by a service. Resources, identified by
45
+ # URI-like names, are the unit of access control specification. Service
46
+ # implementations can choose the granularity of access control and the
47
+ # supported permissions for their resources.
48
+ # For example one database service may allow access control to be
49
+ # specified only at the Table level, whereas another might allow access control
50
+ # to also be specified at the Column level.
51
+ #
52
+ # ## Policy Structure
53
+ #
54
+ # See google.iam.v1.Policy
55
+ #
56
+ # This is intentionally not a CRUD style API because access control policies
57
+ # are created and deleted implicitly with the resources to which they are
58
+ # attached.
59
+ #
60
+ # To load this service and instantiate a REST client:
61
+ #
62
+ # require "google/iam/v1/iam_policy/rest"
63
+ # client = ::Google::Iam::V1::IAMPolicy::Rest::Client.new
64
+ #
65
+ module IAMPolicy
66
+ # Client for the REST transport
67
+ module Rest
68
+ end
69
+ end
70
+ end
71
+ end
72
+ end
73
+
74
+ helper_path = ::File.join __dir__, "rest", "helpers.rb"
75
+ require "google/iam/v1/iam_policy/rest/helpers" if ::File.file? helper_path
@@ -0,0 +1,77 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2023 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+ require "gapic/common"
20
+ require "gapic/config"
21
+ require "gapic/config/method"
22
+
23
+ require "google/cloud/batch/v1/version"
24
+
25
+ require "google/iam/v1/iam_policy/credentials"
26
+ require "google/iam/v1/iam_policy/client"
27
+ require "google/iam/v1/iam_policy/rest"
28
+
29
+ module Google
30
+ module Iam
31
+ module V1
32
+ ##
33
+ # API Overview
34
+ #
35
+ #
36
+ # Manages Identity and Access Management (IAM) policies.
37
+ #
38
+ # Any implementation of an API that offers access control features
39
+ # implements the google.iam.v1.IAMPolicy interface.
40
+ #
41
+ # ## Data model
42
+ #
43
+ # Access control is applied when a principal (user or service account), takes
44
+ # some action on a resource exposed by a service. Resources, identified by
45
+ # URI-like names, are the unit of access control specification. Service
46
+ # implementations can choose the granularity of access control and the
47
+ # supported permissions for their resources.
48
+ # For example one database service may allow access control to be
49
+ # specified only at the Table level, whereas another might allow access control
50
+ # to also be specified at the Column level.
51
+ #
52
+ # ## Policy Structure
53
+ #
54
+ # See google.iam.v1.Policy
55
+ #
56
+ # This is intentionally not a CRUD style API because access control policies
57
+ # are created and deleted implicitly with the resources to which they are
58
+ # attached.
59
+ #
60
+ # @example Load this service and instantiate a gRPC client
61
+ #
62
+ # require "google/iam/v1/iam_policy"
63
+ # client = ::Google::Iam::V1::IAMPolicy::Client.new
64
+ #
65
+ # @example Load this service and instantiate a REST client
66
+ #
67
+ # require "google/iam/v1/iam_policy/rest"
68
+ # client = ::Google::Iam::V1::IAMPolicy::Rest::Client.new
69
+ #
70
+ module IAMPolicy
71
+ end
72
+ end
73
+ end
74
+ end
75
+
76
+ helper_path = ::File.join __dir__, "iam_policy", "helpers.rb"
77
+ require "google/iam/v1/iam_policy/helpers" if ::File.file? helper_path
@@ -0,0 +1,36 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2023 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+ require "google/iam/v1/iam_policy/rest"
20
+ require "google/iam/v1/bindings_override"
21
+ require "google/cloud/batch/v1/version"
22
+
23
+ module Google
24
+ module Iam
25
+ ##
26
+ # To load just the REST part of this package, including all its services, and instantiate a REST client:
27
+ #
28
+ # @example
29
+ #
30
+ # require "google/iam/v1/rest"
31
+ # client = ::Google::Iam::V1::IAMPolicy::Rest::Client.new
32
+ #
33
+ module V1
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,43 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2023 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+ require "google/iam/v1/iam_policy"
20
+ require "google/cloud/batch/v1/version"
21
+
22
+ module Google
23
+ module Iam
24
+ ##
25
+ # API client module.
26
+ #
27
+ # @example Load this package, including all its services, and instantiate a gRPC client
28
+ #
29
+ # require "google/iam/v1"
30
+ # client = ::Google::Iam::V1::IAMPolicy::Client.new
31
+ #
32
+ # @example Load this package, including all its services, and instantiate a REST client
33
+ #
34
+ # require "google/iam/v1"
35
+ # client = ::Google::Iam::V1::IAMPolicy::Rest::Client.new
36
+ #
37
+ module V1
38
+ end
39
+ end
40
+ end
41
+
42
+ helper_path = ::File.join __dir__, "v1", "_helpers.rb"
43
+ require "google/iam/v1/_helpers" if ::File.file? helper_path
@@ -19,3 +19,4 @@
19
19
  # This gem does not autoload during Bundler.require. To load this gem,
20
20
  # issue explicit require statements for the packages desired, e.g.:
21
21
  # require "google/cloud/batch/v1"
22
+ # require "google/iam/v1"
@@ -47,8 +47,8 @@ module Google
47
47
  # ignore the request if it has already been completed. The server will
48
48
  # guarantee that for at least 60 minutes since the first request.
49
49
  #
50
- # For example, consider a situation where you make an initial request and t
51
- # he request times out. If you make the request again with the same request
50
+ # For example, consider a situation where you make an initial request and
51
+ # the request times out. If you make the request again with the same request
52
52
  # ID, the server can check if original operation with the same request ID
53
53
  # was received, and if so, will ignore the second request. This prevents
54
54
  # clients from accidentally creating duplicate commitments.
@@ -83,8 +83,8 @@ module Google
83
83
  # ignore the request if it has already been completed. The server will
84
84
  # guarantee that for at least 60 minutes after the first request.
85
85
  #
86
- # For example, consider a situation where you make an initial request and t
87
- # he request times out. If you make the request again with the same request
86
+ # For example, consider a situation where you make an initial request and
87
+ # the request times out. If you make the request again with the same request
88
88
  # ID, the server can check if original operation with the same request ID
89
89
  # was received, and if so, will ignore the second request. This prevents
90
90
  # clients from accidentally creating duplicate commitments.
@@ -32,7 +32,8 @@ module Google
32
32
  # @!attribute [rw] priority
33
33
  # @return [::Integer]
34
34
  # Priority of the Job.
35
- # The valid value range is [0, 100).
35
+ # The valid value range is [0, 100). Default value is 0.
36
+ # Higher value indicates higher priority.
36
37
  # A job with higher priority value is more likely to run earlier if all other
37
38
  # requirements are satisfied.
38
39
  # @!attribute [rw] task_groups
@@ -49,6 +49,9 @@ module Google
49
49
  # @!attribute [rw] task_execution
50
50
  # @return [::Google::Cloud::Batch::V1::TaskExecution]
51
51
  # Task Execution
52
+ # @!attribute [rw] task_state
53
+ # @return [::Google::Cloud::Batch::V1::TaskStatus::State]
54
+ # Task State
52
55
  class StatusEvent
53
56
  include ::Google::Protobuf::MessageExts
54
57
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -184,9 +187,23 @@ module Google
184
187
  # @!attribute [rw] path
185
188
  # @return [::String]
186
189
  # Script file path on the host VM.
190
+ #
191
+ # To specify an interpreter, please add a `#!<interpreter>`(also known as
192
+ # [shebang line](https://en.wikipedia.org/wiki/Shebang_(Unix))) as the
193
+ # first line of the file.(For example, to execute the script using bash,
194
+ # `#!/bin/bash` should be the first line of the file. To execute the
195
+ # script using`Python3`, `#!/usr/bin/env python3` should be the first
196
+ # line of the file.) Otherwise, the file will by default be excuted by
197
+ # `/bin/sh`.
187
198
  # @!attribute [rw] text
188
199
  # @return [::String]
189
200
  # Shell script text.
201
+ #
202
+ # To specify an interpreter, please add a `#!<interpreter>\n` at the
203
+ # beginning of the text.(For example, to execute the script using bash,
204
+ # `#!/bin/bash\n` should be added. To execute the script using`Python3`,
205
+ # `#!/usr/bin/env python3\n` should be added.) Otherwise, the script will
206
+ # by default be excuted by `/bin/sh`.
190
207
  class Script
191
208
  include ::Google::Protobuf::MessageExts
192
209
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -231,13 +248,12 @@ module Google
231
248
  # @!attribute [rw] lifecycle_policies
232
249
  # @return [::Array<::Google::Cloud::Batch::V1::LifecyclePolicy>]
233
250
  # Lifecycle management schema when any task in a task group is failed.
234
- # The valid size of lifecycle policies are [0, 10].
235
- # For each lifecycle policy, when the condition is met,
236
- # the action in that policy will execute.
237
- # If there are multiple policies that the task execution result matches,
238
- # we use the action from the first matched policy. If task execution result
239
- # does not meet with any of the defined lifecycle policy, we consider it as
240
- # the default policy. Default policy means if the exit code is 0, exit task.
251
+ # Currently we only support one lifecycle policy.
252
+ # When the lifecycle policy condition is met,
253
+ # the action in the policy will execute.
254
+ # If task execution result does not meet with the defined lifecycle
255
+ # policy, we consider it as the default policy.
256
+ # Default policy means if the exit code is 0, exit task.
241
257
  # If task ends with non-zero exit code, retry the task with max_retry_count.
242
258
  # @!attribute [rw] environments
243
259
  # @return [::Google::Protobuf::Map{::String => ::String}]
@@ -267,6 +283,10 @@ module Google
267
283
  # @!attribute [rw] action
268
284
  # @return [::Google::Cloud::Batch::V1::LifecyclePolicy::Action]
269
285
  # Action to execute when ActionCondition is true.
286
+ # When RETRY_TASK is specified, we will retry failed tasks
287
+ # if we notice any exit code match and fail tasks if no match is found.
288
+ # Likewise, when FAIL_TASK is specified, we will fail tasks
289
+ # if we notice any exit code match and retry tasks if no match is found.
270
290
  # @!attribute [rw] action_condition
271
291
  # @return [::Google::Cloud::Batch::V1::LifecyclePolicy::ActionCondition]
272
292
  # Conditions that decide why a task failure is dealt with a specific action.
@@ -0,0 +1,87 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2023 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Iam
22
+ module V1
23
+ # Request message for `SetIamPolicy` method.
24
+ # @!attribute [rw] resource
25
+ # @return [::String]
26
+ # REQUIRED: The resource for which the policy is being specified.
27
+ # See the operation documentation for the appropriate value for this field.
28
+ # @!attribute [rw] policy
29
+ # @return [::Google::Iam::V1::Policy]
30
+ # REQUIRED: The complete policy to be applied to the `resource`. The size of
31
+ # the policy is limited to a few 10s of KB. An empty policy is a
32
+ # valid policy but certain Cloud Platform services (such as Projects)
33
+ # might reject them.
34
+ # @!attribute [rw] update_mask
35
+ # @return [::Google::Protobuf::FieldMask]
36
+ # OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only
37
+ # the fields in the mask will be modified. If no mask is provided, the
38
+ # following default mask is used:
39
+ #
40
+ # `paths: "bindings, etag"`
41
+ class SetIamPolicyRequest
42
+ include ::Google::Protobuf::MessageExts
43
+ extend ::Google::Protobuf::MessageExts::ClassMethods
44
+ end
45
+
46
+ # Request message for `GetIamPolicy` method.
47
+ # @!attribute [rw] resource
48
+ # @return [::String]
49
+ # REQUIRED: The resource for which the policy is being requested.
50
+ # See the operation documentation for the appropriate value for this field.
51
+ # @!attribute [rw] options
52
+ # @return [::Google::Iam::V1::GetPolicyOptions]
53
+ # OPTIONAL: A `GetPolicyOptions` object for specifying options to
54
+ # `GetIamPolicy`.
55
+ class GetIamPolicyRequest
56
+ include ::Google::Protobuf::MessageExts
57
+ extend ::Google::Protobuf::MessageExts::ClassMethods
58
+ end
59
+
60
+ # Request message for `TestIamPermissions` method.
61
+ # @!attribute [rw] resource
62
+ # @return [::String]
63
+ # REQUIRED: The resource for which the policy detail is being requested.
64
+ # See the operation documentation for the appropriate value for this field.
65
+ # @!attribute [rw] permissions
66
+ # @return [::Array<::String>]
67
+ # The set of permissions to check for the `resource`. Permissions with
68
+ # wildcards (such as '*' or 'storage.*') are not allowed. For more
69
+ # information see
70
+ # [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).
71
+ class TestIamPermissionsRequest
72
+ include ::Google::Protobuf::MessageExts
73
+ extend ::Google::Protobuf::MessageExts::ClassMethods
74
+ end
75
+
76
+ # Response message for `TestIamPermissions` method.
77
+ # @!attribute [rw] permissions
78
+ # @return [::Array<::String>]
79
+ # A subset of `TestPermissionsRequest.permissions` that the caller is
80
+ # allowed.
81
+ class TestIamPermissionsResponse
82
+ include ::Google::Protobuf::MessageExts
83
+ extend ::Google::Protobuf::MessageExts::ClassMethods
84
+ end
85
+ end
86
+ end
87
+ end