aws-sdk-datapipeline 1.0.0.rc1 → 1.0.0.rc2

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 2575784a4161957210a1dbad13eb7af5061650da
4
- data.tar.gz: 58c81b7f74b08557d7c89daca9e08c8f0ff7ae46
3
+ metadata.gz: 90b23af67851543b2808a76b06333de354c67228
4
+ data.tar.gz: 4cc7488a10c124a19ef4ef14663284c1ed2c7348
5
5
  SHA512:
6
- metadata.gz: f40a0288769213e842b634331b947ab7dab89d25113c6e95d5f6aa708c4bdfa9ff11a46309000678d89516facb9c14fe680cd58b5b168c9b5047125ba79c0870
7
- data.tar.gz: fce42e5ce073cbf527d7f72f0bdad6ad5e51f327be7f2a734574f6ede88fd573404b5dcc22ade1e2026b01cbaccf3c6b6c1c11e4dcf84a51763328f1ea7e809b
6
+ metadata.gz: e1ec2130e8a8cbc631f6d6aad6cc39568cffaa8d2bd4c435d2dbd74eb086023eb208c31c9aaecab50987f84474cdaefecd6bdfb7b416f12591022ff15e72dee3
7
+ data.tar.gz: 6ec4f1cb3b90a859e6535740c455f937647b76353f76e427d9ff3ca4d269f18ff1ad21e9b629332643a08fa7fc44d86d6bd344a79b6fff7946769cdf396f9045
@@ -1,6 +1,6 @@
1
1
  # WARNING ABOUT GENERATED CODE
2
2
  #
3
- # This file is generated. See the contributing for info on making contributions:
3
+ # This file is generated. See the contributing guide for more information:
4
4
  # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
5
  #
6
6
  # WARNING ABOUT GENERATED CODE
@@ -42,6 +42,6 @@ require_relative 'aws-sdk-datapipeline/customizations'
42
42
  # @service
43
43
  module Aws::DataPipeline
44
44
 
45
- GEM_VERSION = '1.0.0.rc1'
45
+ GEM_VERSION = '1.0.0.rc2'
46
46
 
47
47
  end
@@ -1,6 +1,6 @@
1
1
  # WARNING ABOUT GENERATED CODE
2
2
  #
3
- # This file is generated. See the contributing for info on making contributions:
3
+ # This file is generated. See the contributing guide for more information:
4
4
  # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
5
  #
6
6
  # WARNING ABOUT GENERATED CODE
@@ -18,973 +18,1149 @@ require 'aws-sdk-core/plugins/regional_endpoint.rb'
18
18
  require 'aws-sdk-core/plugins/response_paging.rb'
19
19
  require 'aws-sdk-core/plugins/stub_responses.rb'
20
20
  require 'aws-sdk-core/plugins/idempotency_token.rb'
21
+ require 'aws-sdk-core/plugins/jsonvalue_converter.rb'
21
22
  require 'aws-sdk-core/plugins/signature_v4.rb'
22
23
  require 'aws-sdk-core/plugins/protocols/json_rpc.rb'
23
24
 
24
25
  Aws::Plugins::GlobalConfiguration.add_identifier(:datapipeline)
25
26
 
26
- module Aws
27
- module DataPipeline
28
- class Client < Seahorse::Client::Base
29
-
30
- include Aws::ClientStubs
31
-
32
- @identifier = :datapipeline
33
-
34
- set_api(ClientApi::API)
35
-
36
- add_plugin(Seahorse::Client::Plugins::ContentLength)
37
- add_plugin(Aws::Plugins::CredentialsConfiguration)
38
- add_plugin(Aws::Plugins::Logging)
39
- add_plugin(Aws::Plugins::ParamConverter)
40
- add_plugin(Aws::Plugins::ParamValidator)
41
- add_plugin(Aws::Plugins::UserAgent)
42
- add_plugin(Aws::Plugins::HelpfulSocketErrors)
43
- add_plugin(Aws::Plugins::RetryErrors)
44
- add_plugin(Aws::Plugins::GlobalConfiguration)
45
- add_plugin(Aws::Plugins::RegionalEndpoint)
46
- add_plugin(Aws::Plugins::ResponsePaging)
47
- add_plugin(Aws::Plugins::StubResponses)
48
- add_plugin(Aws::Plugins::IdempotencyToken)
49
- add_plugin(Aws::Plugins::SignatureV4)
50
- add_plugin(Aws::Plugins::Protocols::JsonRpc)
51
-
52
- # @option options [required, Aws::CredentialProvider] :credentials
53
- # Your AWS credentials. This can be an instance of any one of the
54
- # following classes:
55
- #
56
- # * `Aws::Credentials` - Used for configuring static, non-refreshing
57
- # credentials.
58
- #
59
- # * `Aws::InstanceProfileCredentials` - Used for loading credentials
60
- # from an EC2 IMDS on an EC2 instance.
61
- #
62
- # * `Aws::SharedCredentials` - Used for loading credentials from a
63
- # shared file, such as `~/.aws/config`.
64
- #
65
- # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
66
- #
67
- # When `:credentials` are not configured directly, the following
68
- # locations will be searched for credentials:
69
- #
70
- # * `Aws.config[:credentials]`
71
- # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
72
- # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
73
- # * `~/.aws/credentials`
74
- # * `~/.aws/config`
75
- # * EC2 IMDS instance profile - When used by default, the timeouts are
76
- # very aggressive. Construct and pass an instance of
77
- # `Aws::InstanceProfileCredentails` to enable retries and extended
78
- # timeouts.
79
- # @option options [required, String] :region
80
- # The AWS region to connect to. The configured `:region` is
81
- # used to determine the service `:endpoint`. When not passed,
82
- # a default `:region` is search for in the following locations:
83
- #
84
- # * `Aws.config[:region]`
85
- # * `ENV['AWS_REGION']`
86
- # * `ENV['AMAZON_REGION']`
87
- # * `ENV['AWS_DEFAULT_REGION']`
88
- # * `~/.aws/credentials`
89
- # * `~/.aws/config`
90
- # @option options [String] :access_key_id
91
- # @option options [Boolean] :convert_params (true)
92
- # When `true`, an attempt is made to coerce request parameters into
93
- # the required types.
94
- # @option options [String] :endpoint
95
- # The client endpoint is normally constructed from the `:region`
96
- # option. You should only configure an `:endpoint` when connecting
97
- # to test endpoints. This should be avalid HTTP(S) URI.
98
- # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
99
- # The log formatter.
100
- # @option options [Symbol] :log_level (:info)
101
- # The log level to send messages to the `:logger` at.
102
- # @option options [Logger] :logger
103
- # The Logger instance to send log messages to. If this option
104
- # is not set, logging will be disabled.
105
- # @option options [String] :profile ("default")
106
- # Used when loading credentials from the shared credentials file
107
- # at HOME/.aws/credentials. When not specified, 'default' is used.
108
- # @option options [Integer] :retry_limit (3)
109
- # The maximum number of times to retry failed requests. Only
110
- # ~ 500 level server errors and certain ~ 400 level client errors
111
- # are retried. Generally, these are throttling errors, data
112
- # checksum errors, networking errors, timeout errors and auth
113
- # errors from expired credentials.
114
- # @option options [String] :secret_access_key
115
- # @option options [String] :session_token
116
- # @option options [Boolean] :simple_json (false)
117
- # Disables request parameter conversion, validation, and formatting.
118
- # Also disable response data type conversions. This option is useful
119
- # when you want to ensure the highest level of performance by
120
- # avoiding overhead of walking request parameters and response data
121
- # structures.
122
- #
123
- # When `:simple_json` is enabled, the request parameters hash must
124
- # be formatted exactly as the DynamoDB API expects.
125
- # @option options [Boolean] :stub_responses (false)
126
- # Causes the client to return stubbed responses. By default
127
- # fake responses are generated and returned. You can specify
128
- # the response data to return or errors to raise by calling
129
- # {ClientStubs#stub_responses}. See {ClientStubs} for more information.
130
- #
131
- # ** Please note ** When response stubbing is enabled, no HTTP
132
- # requests are made, and retries are disabled.
133
- # @option options [Boolean] :validate_params (true)
134
- # When `true`, request parameters are validated before
135
- # sending the request.
136
- def initialize(*args)
137
- super
138
- end
27
+ module Aws::DataPipeline
28
+ class Client < Seahorse::Client::Base
139
29
 
140
- # @!group API Operations
141
-
142
- # Validates the specified pipeline and starts processing pipeline tasks.
143
- # If the pipeline does not pass validation, activation fails.
144
- #
145
- # If you need to pause the pipeline to investigate an issue with a
146
- # component, such as a data source or script, call DeactivatePipeline.
147
- #
148
- # To activate a finished pipeline, modify the end date for the pipeline
149
- # and then activate it.
150
- # @option params [required, String] :pipeline_id
151
- # The ID of the pipeline.
152
- # @option params [Array<Types::ParameterValue>] :parameter_values
153
- # A list of parameter values to pass to the pipeline at activation.
154
- # @option params [Time,DateTime,Date,Integer,String] :start_timestamp
155
- # The date and time to resume the pipeline. By default, the pipeline
156
- # resumes from the last completed execution.
157
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
158
- #
159
- # @example Request syntax with placeholder values
160
- # resp = client.activate_pipeline({
161
- # pipeline_id: "id", # required
162
- # parameter_values: [
163
- # {
164
- # id: "fieldNameString", # required
165
- # string_value: "fieldStringValue", # required
166
- # },
167
- # ],
168
- # start_timestamp: Time.now,
169
- # })
170
- # @overload activate_pipeline(params = {})
171
- # @param [Hash] params ({})
172
- def activate_pipeline(params = {}, options = {})
173
- req = build_request(:activate_pipeline, params)
174
- req.send_request(options)
175
- end
30
+ include Aws::ClientStubs
176
31
 
177
- # Adds or modifies tags for the specified pipeline.
178
- # @option params [required, String] :pipeline_id
179
- # The ID of the pipeline.
180
- # @option params [required, Array<Types::Tag>] :tags
181
- # The tags to add, as key/value pairs.
182
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
183
- #
184
- # @example Request syntax with placeholder values
185
- # resp = client.add_tags({
186
- # pipeline_id: "id", # required
187
- # tags: [ # required
188
- # {
189
- # key: "tagKey", # required
190
- # value: "tagValue", # required
191
- # },
192
- # ],
193
- # })
194
- # @overload add_tags(params = {})
195
- # @param [Hash] params ({})
196
- def add_tags(params = {}, options = {})
197
- req = build_request(:add_tags, params)
198
- req.send_request(options)
199
- end
32
+ @identifier = :datapipeline
200
33
 
201
- # Creates a new, empty pipeline. Use PutPipelineDefinition to populate
202
- # the pipeline.
203
- # @option params [required, String] :name
204
- # The name for the pipeline. You can use the same name for multiple
205
- # pipelines associated with your AWS account, because AWS Data Pipeline
206
- # assigns each pipeline a unique pipeline identifier.
207
- # @option params [required, String] :unique_id
208
- # A unique identifier. This identifier is not the same as the pipeline
209
- # identifier assigned by AWS Data Pipeline. You are responsible for
210
- # defining the format and ensuring the uniqueness of this identifier.
211
- # You use this parameter to ensure idempotency during repeated calls to
212
- # `CreatePipeline`. For example, if the first call to `CreatePipeline`
213
- # does not succeed, you can pass in the same unique identifier and
214
- # pipeline name combination on a subsequent call to `CreatePipeline`.
215
- # `CreatePipeline` ensures that if a pipeline already exists with the
216
- # same name and unique identifier, a new pipeline is not created.
217
- # Instead, you'll receive the pipeline identifier from the previous
218
- # attempt. The uniqueness of the name and unique identifier combination
219
- # is scoped to the AWS account or IAM user credentials.
220
- # @option params [String] :description
221
- # The description for the pipeline.
222
- # @option params [Array<Types::Tag>] :tags
223
- # A list of tags to associate with the pipeline at creation. Tags let
224
- # you control access to pipelines. For more information, see
225
- # [Controlling User Access to Pipelines][1] in the *AWS Data Pipeline
226
- # Developer Guide*.
227
- #
228
- #
229
- #
230
- # [1]: http://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-control-access.html
231
- # @return [Types::CreatePipelineOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
232
- #
233
- # * {Types::CreatePipelineOutput#pipeline_id #pipelineId} => String
234
- #
235
- # @example Request syntax with placeholder values
236
- # resp = client.create_pipeline({
237
- # name: "id", # required
238
- # unique_id: "id", # required
239
- # description: "string",
240
- # tags: [
241
- # {
242
- # key: "tagKey", # required
243
- # value: "tagValue", # required
244
- # },
245
- # ],
246
- # })
247
- #
248
- # @example Response structure
249
- # resp.pipeline_id #=> String
250
- # @overload create_pipeline(params = {})
251
- # @param [Hash] params ({})
252
- def create_pipeline(params = {}, options = {})
253
- req = build_request(:create_pipeline, params)
254
- req.send_request(options)
255
- end
34
+ set_api(ClientApi::API)
256
35
 
257
- # Deactivates the specified running pipeline. The pipeline is set to the
258
- # `DEACTIVATING` state until the deactivation process completes.
259
- #
260
- # To resume a deactivated pipeline, use ActivatePipeline. By default,
261
- # the pipeline resumes from the last completed execution. Optionally,
262
- # you can specify the date and time to resume the pipeline.
263
- # @option params [required, String] :pipeline_id
264
- # The ID of the pipeline.
265
- # @option params [Boolean] :cancel_active
266
- # Indicates whether to cancel any running objects. The default is true,
267
- # which sets the state of any running objects to `CANCELED`. If this
268
- # value is false, the pipeline is deactivated after all running objects
269
- # finish.
270
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
271
- #
272
- # @example Request syntax with placeholder values
273
- # resp = client.deactivate_pipeline({
274
- # pipeline_id: "id", # required
275
- # cancel_active: false,
276
- # })
277
- # @overload deactivate_pipeline(params = {})
278
- # @param [Hash] params ({})
279
- def deactivate_pipeline(params = {}, options = {})
280
- req = build_request(:deactivate_pipeline, params)
281
- req.send_request(options)
282
- end
36
+ add_plugin(Seahorse::Client::Plugins::ContentLength)
37
+ add_plugin(Aws::Plugins::CredentialsConfiguration)
38
+ add_plugin(Aws::Plugins::Logging)
39
+ add_plugin(Aws::Plugins::ParamConverter)
40
+ add_plugin(Aws::Plugins::ParamValidator)
41
+ add_plugin(Aws::Plugins::UserAgent)
42
+ add_plugin(Aws::Plugins::HelpfulSocketErrors)
43
+ add_plugin(Aws::Plugins::RetryErrors)
44
+ add_plugin(Aws::Plugins::GlobalConfiguration)
45
+ add_plugin(Aws::Plugins::RegionalEndpoint)
46
+ add_plugin(Aws::Plugins::ResponsePaging)
47
+ add_plugin(Aws::Plugins::StubResponses)
48
+ add_plugin(Aws::Plugins::IdempotencyToken)
49
+ add_plugin(Aws::Plugins::JsonvalueConverter)
50
+ add_plugin(Aws::Plugins::SignatureV4)
51
+ add_plugin(Aws::Plugins::Protocols::JsonRpc)
283
52
 
284
- # Deletes a pipeline, its pipeline definition, and its run history. AWS
285
- # Data Pipeline attempts to cancel instances associated with the
286
- # pipeline that are currently being processed by task runners.
287
- #
288
- # Deleting a pipeline cannot be undone. You cannot query or restore a
289
- # deleted pipeline. To temporarily pause a pipeline instead of deleting
290
- # it, call SetStatus with the status set to `PAUSE` on individual
291
- # components. Components that are paused by SetStatus can be resumed.
292
- # @option params [required, String] :pipeline_id
293
- # The ID of the pipeline.
294
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
295
- #
296
- # @example Request syntax with placeholder values
297
- # resp = client.delete_pipeline({
298
- # pipeline_id: "id", # required
299
- # })
300
- # @overload delete_pipeline(params = {})
301
- # @param [Hash] params ({})
302
- def delete_pipeline(params = {}, options = {})
303
- req = build_request(:delete_pipeline, params)
304
- req.send_request(options)
305
- end
53
+ # @option options [required, Aws::CredentialProvider] :credentials
54
+ # Your AWS credentials. This can be an instance of any one of the
55
+ # following classes:
56
+ #
57
+ # * `Aws::Credentials` - Used for configuring static, non-refreshing
58
+ # credentials.
59
+ #
60
+ # * `Aws::InstanceProfileCredentials` - Used for loading credentials
61
+ # from an EC2 IMDS on an EC2 instance.
62
+ #
63
+ # * `Aws::SharedCredentials` - Used for loading credentials from a
64
+ # shared file, such as `~/.aws/config`.
65
+ #
66
+ # * `Aws::AssumeRoleCredentials` - Used when you need to assume a role.
67
+ #
68
+ # When `:credentials` are not configured directly, the following
69
+ # locations will be searched for credentials:
70
+ #
71
+ # * `Aws.config[:credentials]`
72
+ # * The `:access_key_id`, `:secret_access_key`, and `:session_token` options.
73
+ # * ENV['AWS_ACCESS_KEY_ID'], ENV['AWS_SECRET_ACCESS_KEY']
74
+ # * `~/.aws/credentials`
75
+ # * `~/.aws/config`
76
+ # * EC2 IMDS instance profile - When used by default, the timeouts are
77
+ # very aggressive. Construct and pass an instance of
78
+ # `Aws::InstanceProfileCredentails` to enable retries and extended
79
+ # timeouts.
80
+ #
81
+ # @option options [required, String] :region
82
+ # The AWS region to connect to. The configured `:region` is
83
+ # used to determine the service `:endpoint`. When not passed,
84
+ # a default `:region` is search for in the following locations:
85
+ #
86
+ # * `Aws.config[:region]`
87
+ # * `ENV['AWS_REGION']`
88
+ # * `ENV['AMAZON_REGION']`
89
+ # * `ENV['AWS_DEFAULT_REGION']`
90
+ # * `~/.aws/credentials`
91
+ # * `~/.aws/config`
92
+ #
93
+ # @option options [String] :access_key_id
94
+ #
95
+ # @option options [Boolean] :convert_params (true)
96
+ # When `true`, an attempt is made to coerce request parameters into
97
+ # the required types.
98
+ #
99
+ # @option options [String] :endpoint
100
+ # The client endpoint is normally constructed from the `:region`
101
+ # option. You should only configure an `:endpoint` when connecting
102
+ # to test endpoints. This should be avalid HTTP(S) URI.
103
+ #
104
+ # @option options [Aws::Log::Formatter] :log_formatter (Aws::Log::Formatter.default)
105
+ # The log formatter.
106
+ #
107
+ # @option options [Symbol] :log_level (:info)
108
+ # The log level to send messages to the `:logger` at.
109
+ #
110
+ # @option options [Logger] :logger
111
+ # The Logger instance to send log messages to. If this option
112
+ # is not set, logging will be disabled.
113
+ #
114
+ # @option options [String] :profile ("default")
115
+ # Used when loading credentials from the shared credentials file
116
+ # at HOME/.aws/credentials. When not specified, 'default' is used.
117
+ #
118
+ # @option options [Integer] :retry_limit (3)
119
+ # The maximum number of times to retry failed requests. Only
120
+ # ~ 500 level server errors and certain ~ 400 level client errors
121
+ # are retried. Generally, these are throttling errors, data
122
+ # checksum errors, networking errors, timeout errors and auth
123
+ # errors from expired credentials.
124
+ #
125
+ # @option options [String] :secret_access_key
126
+ #
127
+ # @option options [String] :session_token
128
+ #
129
+ # @option options [Boolean] :simple_json (false)
130
+ # Disables request parameter conversion, validation, and formatting.
131
+ # Also disable response data type conversions. This option is useful
132
+ # when you want to ensure the highest level of performance by
133
+ # avoiding overhead of walking request parameters and response data
134
+ # structures.
135
+ #
136
+ # When `:simple_json` is enabled, the request parameters hash must
137
+ # be formatted exactly as the DynamoDB API expects.
138
+ #
139
+ # @option options [Boolean] :stub_responses (false)
140
+ # Causes the client to return stubbed responses. By default
141
+ # fake responses are generated and returned. You can specify
142
+ # the response data to return or errors to raise by calling
143
+ # {ClientStubs#stub_responses}. See {ClientStubs} for more information.
144
+ #
145
+ # ** Please note ** When response stubbing is enabled, no HTTP
146
+ # requests are made, and retries are disabled.
147
+ #
148
+ # @option options [Boolean] :validate_params (true)
149
+ # When `true`, request parameters are validated before
150
+ # sending the request.
151
+ #
152
+ def initialize(*args)
153
+ super
154
+ end
306
155
 
307
- # Gets the object definitions for a set of objects associated with the
308
- # pipeline. Object definitions are composed of a set of fields that
309
- # define the properties of the object.
310
- # @option params [required, String] :pipeline_id
311
- # The ID of the pipeline that contains the object definitions.
312
- # @option params [required, Array<String>] :object_ids
313
- # The IDs of the pipeline objects that contain the definitions to be
314
- # described. You can pass as many as 25 identifiers in a single call to
315
- # `DescribeObjects`.
316
- # @option params [Boolean] :evaluate_expressions
317
- # Indicates whether any expressions in the object should be evaluated
318
- # when the object descriptions are returned.
319
- # @option params [String] :marker
320
- # The starting point for the results to be returned. For the first call,
321
- # this value should be empty. As long as there are more results,
322
- # continue to call `DescribeObjects` with the marker value from the
323
- # previous call to retrieve the next set of results.
324
- # @return [Types::DescribeObjectsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
325
- #
326
- # * {Types::DescribeObjectsOutput#pipeline_objects #pipelineObjects} => Array&lt;Types::PipelineObject&gt;
327
- # * {Types::DescribeObjectsOutput#marker #marker} => String
328
- # * {Types::DescribeObjectsOutput#has_more_results #hasMoreResults} => Boolean
329
- #
330
- # @example Request syntax with placeholder values
331
- # resp = client.describe_objects({
332
- # pipeline_id: "id", # required
333
- # object_ids: ["id"], # required
334
- # evaluate_expressions: false,
335
- # marker: "string",
336
- # })
337
- #
338
- # @example Response structure
339
- # resp.pipeline_objects #=> Array
340
- # resp.pipeline_objects[0].id #=> String
341
- # resp.pipeline_objects[0].name #=> String
342
- # resp.pipeline_objects[0].fields #=> Array
343
- # resp.pipeline_objects[0].fields[0].key #=> String
344
- # resp.pipeline_objects[0].fields[0].string_value #=> String
345
- # resp.pipeline_objects[0].fields[0].ref_value #=> String
346
- # resp.marker #=> String
347
- # resp.has_more_results #=> Boolean
348
- # @overload describe_objects(params = {})
349
- # @param [Hash] params ({})
350
- def describe_objects(params = {}, options = {})
351
- req = build_request(:describe_objects, params)
352
- req.send_request(options)
353
- end
156
+ # @!group API Operations
354
157
 
355
- # Retrieves metadata about one or more pipelines. The information
356
- # retrieved includes the name of the pipeline, the pipeline identifier,
357
- # its current state, and the user account that owns the pipeline. Using
358
- # account credentials, you can retrieve metadata about pipelines that
359
- # you or your IAM users have created. If you are using an IAM user
360
- # account, you can retrieve metadata about only those pipelines for
361
- # which you have read permissions.
362
- #
363
- # To retrieve the full pipeline definition instead of metadata about the
364
- # pipeline, call GetPipelineDefinition.
365
- # @option params [required, Array<String>] :pipeline_ids
366
- # The IDs of the pipelines to describe. You can pass as many as 25
367
- # identifiers in a single call. To obtain pipeline IDs, call
368
- # ListPipelines.
369
- # @return [Types::DescribePipelinesOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
370
- #
371
- # * {Types::DescribePipelinesOutput#pipeline_description_list #pipelineDescriptionList} => Array&lt;Types::PipelineDescription&gt;
372
- #
373
- # @example Request syntax with placeholder values
374
- # resp = client.describe_pipelines({
375
- # pipeline_ids: ["id"], # required
376
- # })
377
- #
378
- # @example Response structure
379
- # resp.pipeline_description_list #=> Array
380
- # resp.pipeline_description_list[0].pipeline_id #=> String
381
- # resp.pipeline_description_list[0].name #=> String
382
- # resp.pipeline_description_list[0].fields #=> Array
383
- # resp.pipeline_description_list[0].fields[0].key #=> String
384
- # resp.pipeline_description_list[0].fields[0].string_value #=> String
385
- # resp.pipeline_description_list[0].fields[0].ref_value #=> String
386
- # resp.pipeline_description_list[0].description #=> String
387
- # resp.pipeline_description_list[0].tags #=> Array
388
- # resp.pipeline_description_list[0].tags[0].key #=> String
389
- # resp.pipeline_description_list[0].tags[0].value #=> String
390
- # @overload describe_pipelines(params = {})
391
- # @param [Hash] params ({})
392
- def describe_pipelines(params = {}, options = {})
393
- req = build_request(:describe_pipelines, params)
394
- req.send_request(options)
395
- end
158
+ # Validates the specified pipeline and starts processing pipeline tasks.
159
+ # If the pipeline does not pass validation, activation fails.
160
+ #
161
+ # If you need to pause the pipeline to investigate an issue with a
162
+ # component, such as a data source or script, call DeactivatePipeline.
163
+ #
164
+ # To activate a finished pipeline, modify the end date for the pipeline
165
+ # and then activate it.
166
+ #
167
+ # @option params [required, String] :pipeline_id
168
+ # The ID of the pipeline.
169
+ #
170
+ # @option params [Array<Types::ParameterValue>] :parameter_values
171
+ # A list of parameter values to pass to the pipeline at activation.
172
+ #
173
+ # @option params [Time,DateTime,Date,Integer,String] :start_timestamp
174
+ # The date and time to resume the pipeline. By default, the pipeline
175
+ # resumes from the last completed execution.
176
+ #
177
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
178
+ #
179
+ # @example Request syntax with placeholder values
180
+ #
181
+ # resp = client.activate_pipeline({
182
+ # pipeline_id: "id", # required
183
+ # parameter_values: [
184
+ # {
185
+ # id: "fieldNameString", # required
186
+ # string_value: "fieldStringValue", # required
187
+ # },
188
+ # ],
189
+ # start_timestamp: Time.now,
190
+ # })
191
+ #
192
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datapipeline-2012-10-29/ActivatePipeline AWS API Documentation
193
+ #
194
+ # @overload activate_pipeline(params = {})
195
+ # @param [Hash] params ({})
196
+ def activate_pipeline(params = {}, options = {})
197
+ req = build_request(:activate_pipeline, params)
198
+ req.send_request(options)
199
+ end
396
200
 
397
- # Task runners call `EvaluateExpression` to evaluate a string in the
398
- # context of the specified object. For example, a task runner can
399
- # evaluate SQL queries stored in Amazon S3.
400
- # @option params [required, String] :pipeline_id
401
- # The ID of the pipeline.
402
- # @option params [required, String] :object_id
403
- # The ID of the object.
404
- # @option params [required, String] :expression
405
- # The expression to evaluate.
406
- # @return [Types::EvaluateExpressionOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
407
- #
408
- # * {Types::EvaluateExpressionOutput#evaluated_expression #evaluatedExpression} => String
409
- #
410
- # @example Request syntax with placeholder values
411
- # resp = client.evaluate_expression({
412
- # pipeline_id: "id", # required
413
- # object_id: "id", # required
414
- # expression: "longString", # required
415
- # })
416
- #
417
- # @example Response structure
418
- # resp.evaluated_expression #=> String
419
- # @overload evaluate_expression(params = {})
420
- # @param [Hash] params ({})
421
- def evaluate_expression(params = {}, options = {})
422
- req = build_request(:evaluate_expression, params)
423
- req.send_request(options)
424
- end
201
+ # Adds or modifies tags for the specified pipeline.
202
+ #
203
+ # @option params [required, String] :pipeline_id
204
+ # The ID of the pipeline.
205
+ #
206
+ # @option params [required, Array<Types::Tag>] :tags
207
+ # The tags to add, as key/value pairs.
208
+ #
209
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
210
+ #
211
+ # @example Request syntax with placeholder values
212
+ #
213
+ # resp = client.add_tags({
214
+ # pipeline_id: "id", # required
215
+ # tags: [ # required
216
+ # {
217
+ # key: "tagKey", # required
218
+ # value: "tagValue", # required
219
+ # },
220
+ # ],
221
+ # })
222
+ #
223
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datapipeline-2012-10-29/AddTags AWS API Documentation
224
+ #
225
+ # @overload add_tags(params = {})
226
+ # @param [Hash] params ({})
227
+ def add_tags(params = {}, options = {})
228
+ req = build_request(:add_tags, params)
229
+ req.send_request(options)
230
+ end
425
231
 
426
- # Gets the definition of the specified pipeline. You can call
427
- # `GetPipelineDefinition` to retrieve the pipeline definition that you
428
- # provided using PutPipelineDefinition.
429
- # @option params [required, String] :pipeline_id
430
- # The ID of the pipeline.
431
- # @option params [String] :version
432
- # The version of the pipeline definition to retrieve. Set this parameter
433
- # to `latest` (default) to use the last definition saved to the pipeline
434
- # or `active` to use the last definition that was activated.
435
- # @return [Types::GetPipelineDefinitionOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
436
- #
437
- # * {Types::GetPipelineDefinitionOutput#pipeline_objects #pipelineObjects} => Array&lt;Types::PipelineObject&gt;
438
- # * {Types::GetPipelineDefinitionOutput#parameter_objects #parameterObjects} => Array&lt;Types::ParameterObject&gt;
439
- # * {Types::GetPipelineDefinitionOutput#parameter_values #parameterValues} => Array&lt;Types::ParameterValue&gt;
440
- #
441
- # @example Request syntax with placeholder values
442
- # resp = client.get_pipeline_definition({
443
- # pipeline_id: "id", # required
444
- # version: "string",
445
- # })
446
- #
447
- # @example Response structure
448
- # resp.pipeline_objects #=> Array
449
- # resp.pipeline_objects[0].id #=> String
450
- # resp.pipeline_objects[0].name #=> String
451
- # resp.pipeline_objects[0].fields #=> Array
452
- # resp.pipeline_objects[0].fields[0].key #=> String
453
- # resp.pipeline_objects[0].fields[0].string_value #=> String
454
- # resp.pipeline_objects[0].fields[0].ref_value #=> String
455
- # resp.parameter_objects #=> Array
456
- # resp.parameter_objects[0].id #=> String
457
- # resp.parameter_objects[0].attributes #=> Array
458
- # resp.parameter_objects[0].attributes[0].key #=> String
459
- # resp.parameter_objects[0].attributes[0].string_value #=> String
460
- # resp.parameter_values #=> Array
461
- # resp.parameter_values[0].id #=> String
462
- # resp.parameter_values[0].string_value #=> String
463
- # @overload get_pipeline_definition(params = {})
464
- # @param [Hash] params ({})
465
- def get_pipeline_definition(params = {}, options = {})
466
- req = build_request(:get_pipeline_definition, params)
467
- req.send_request(options)
468
- end
232
+ # Creates a new, empty pipeline. Use PutPipelineDefinition to populate
233
+ # the pipeline.
234
+ #
235
+ # @option params [required, String] :name
236
+ # The name for the pipeline. You can use the same name for multiple
237
+ # pipelines associated with your AWS account, because AWS Data Pipeline
238
+ # assigns each pipeline a unique pipeline identifier.
239
+ #
240
+ # @option params [required, String] :unique_id
241
+ # A unique identifier. This identifier is not the same as the pipeline
242
+ # identifier assigned by AWS Data Pipeline. You are responsible for
243
+ # defining the format and ensuring the uniqueness of this identifier.
244
+ # You use this parameter to ensure idempotency during repeated calls to
245
+ # `CreatePipeline`. For example, if the first call to `CreatePipeline`
246
+ # does not succeed, you can pass in the same unique identifier and
247
+ # pipeline name combination on a subsequent call to `CreatePipeline`.
248
+ # `CreatePipeline` ensures that if a pipeline already exists with the
249
+ # same name and unique identifier, a new pipeline is not created.
250
+ # Instead, you'll receive the pipeline identifier from the previous
251
+ # attempt. The uniqueness of the name and unique identifier combination
252
+ # is scoped to the AWS account or IAM user credentials.
253
+ #
254
+ # @option params [String] :description
255
+ # The description for the pipeline.
256
+ #
257
+ # @option params [Array<Types::Tag>] :tags
258
+ # A list of tags to associate with the pipeline at creation. Tags let
259
+ # you control access to pipelines. For more information, see
260
+ # [Controlling User Access to Pipelines][1] in the *AWS Data Pipeline
261
+ # Developer Guide*.
262
+ #
263
+ #
264
+ #
265
+ # [1]: http://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-control-access.html
266
+ #
267
+ # @return [Types::CreatePipelineOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
268
+ #
269
+ # * {Types::CreatePipelineOutput#pipeline_id #pipeline_id} => String
270
+ #
271
+ # @example Request syntax with placeholder values
272
+ #
273
+ # resp = client.create_pipeline({
274
+ # name: "id", # required
275
+ # unique_id: "id", # required
276
+ # description: "string",
277
+ # tags: [
278
+ # {
279
+ # key: "tagKey", # required
280
+ # value: "tagValue", # required
281
+ # },
282
+ # ],
283
+ # })
284
+ #
285
+ # @example Response structure
286
+ #
287
+ # resp.pipeline_id #=> String
288
+ #
289
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datapipeline-2012-10-29/CreatePipeline AWS API Documentation
290
+ #
291
+ # @overload create_pipeline(params = {})
292
+ # @param [Hash] params ({})
293
+ def create_pipeline(params = {}, options = {})
294
+ req = build_request(:create_pipeline, params)
295
+ req.send_request(options)
296
+ end
469
297
 
470
- # Lists the pipeline identifiers for all active pipelines that you have
471
- # permission to access.
472
- # @option params [String] :marker
473
- # The starting point for the results to be returned. For the first call,
474
- # this value should be empty. As long as there are more results,
475
- # continue to call `ListPipelines` with the marker value from the
476
- # previous call to retrieve the next set of results.
477
- # @return [Types::ListPipelinesOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
478
- #
479
- # * {Types::ListPipelinesOutput#pipeline_id_list #pipelineIdList} => Array&lt;Types::PipelineIdName&gt;
480
- # * {Types::ListPipelinesOutput#marker #marker} => String
481
- # * {Types::ListPipelinesOutput#has_more_results #hasMoreResults} => Boolean
482
- #
483
- # @example Request syntax with placeholder values
484
- # resp = client.list_pipelines({
485
- # marker: "string",
486
- # })
487
- #
488
- # @example Response structure
489
- # resp.pipeline_id_list #=> Array
490
- # resp.pipeline_id_list[0].id #=> String
491
- # resp.pipeline_id_list[0].name #=> String
492
- # resp.marker #=> String
493
- # resp.has_more_results #=> Boolean
494
- # @overload list_pipelines(params = {})
495
- # @param [Hash] params ({})
496
- def list_pipelines(params = {}, options = {})
497
- req = build_request(:list_pipelines, params)
498
- req.send_request(options)
499
- end
298
+ # Deactivates the specified running pipeline. The pipeline is set to the
299
+ # `DEACTIVATING` state until the deactivation process completes.
300
+ #
301
+ # To resume a deactivated pipeline, use ActivatePipeline. By default,
302
+ # the pipeline resumes from the last completed execution. Optionally,
303
+ # you can specify the date and time to resume the pipeline.
304
+ #
305
+ # @option params [required, String] :pipeline_id
306
+ # The ID of the pipeline.
307
+ #
308
+ # @option params [Boolean] :cancel_active
309
+ # Indicates whether to cancel any running objects. The default is true,
310
+ # which sets the state of any running objects to `CANCELED`. If this
311
+ # value is false, the pipeline is deactivated after all running objects
312
+ # finish.
313
+ #
314
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
315
+ #
316
+ # @example Request syntax with placeholder values
317
+ #
318
+ # resp = client.deactivate_pipeline({
319
+ # pipeline_id: "id", # required
320
+ # cancel_active: false,
321
+ # })
322
+ #
323
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datapipeline-2012-10-29/DeactivatePipeline AWS API Documentation
324
+ #
325
+ # @overload deactivate_pipeline(params = {})
326
+ # @param [Hash] params ({})
327
+ def deactivate_pipeline(params = {}, options = {})
328
+ req = build_request(:deactivate_pipeline, params)
329
+ req.send_request(options)
330
+ end
500
331
 
501
- # Task runners call `PollForTask` to receive a task to perform from AWS
502
- # Data Pipeline. The task runner specifies which tasks it can perform by
503
- # setting a value for the `workerGroup` parameter. The task returned can
504
- # come from any of the pipelines that match the `workerGroup` value
505
- # passed in by the task runner and that was launched using the IAM user
506
- # credentials specified by the task runner.
507
- #
508
- # If tasks are ready in the work queue, `PollForTask` returns a response
509
- # immediately. If no tasks are available in the queue, `PollForTask`
510
- # uses long-polling and holds on to a poll connection for up to a 90
511
- # seconds, during which time the first newly scheduled task is handed to
512
- # the task runner. To accomodate this, set the socket timeout in your
513
- # task runner to 90 seconds. The task runner should not call
514
- # `PollForTask` again on the same `workerGroup` until it receives a
515
- # response, and this can take up to 90 seconds.
516
- # @option params [required, String] :worker_group
517
- # The type of task the task runner is configured to accept and process.
518
- # The worker group is set as a field on objects in the pipeline when
519
- # they are created. You can only specify a single value for
520
- # `workerGroup` in the call to `PollForTask`. There are no wildcard
521
- # values permitted in `workerGroup`; the string must be an exact,
522
- # case-sensitive, match.
523
- # @option params [String] :hostname
524
- # The public DNS name of the calling task runner.
525
- # @option params [Types::InstanceIdentity] :instance_identity
526
- # Identity information for the EC2 instance that is hosting the task
527
- # runner. You can get this value from the instance using
528
- # `http://169.254.169.254/latest/meta-data/instance-id`. For more
529
- # information, see [Instance Metadata][1] in the *Amazon Elastic Compute
530
- # Cloud User Guide.* Passing in this value proves that your task runner
531
- # is running on an EC2 instance, and ensures the proper AWS Data
532
- # Pipeline service charges are applied to your pipeline.
533
- #
534
- #
535
- #
536
- # [1]: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AESDG-chapter-instancedata.html
537
- # @return [Types::PollForTaskOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
538
- #
539
- # * {Types::PollForTaskOutput#task_object #taskObject} => Types::TaskObject
540
- #
541
- # @example Request syntax with placeholder values
542
- # resp = client.poll_for_task({
543
- # worker_group: "string", # required
544
- # hostname: "id",
545
- # instance_identity: {
546
- # document: "string",
547
- # signature: "string",
548
- # },
549
- # })
550
- #
551
- # @example Response structure
552
- # resp.task_object.task_id #=> String
553
- # resp.task_object.pipeline_id #=> String
554
- # resp.task_object.attempt_id #=> String
555
- # resp.task_object.objects #=> Hash
556
- # resp.task_object.objects["id"].id #=> String
557
- # resp.task_object.objects["id"].name #=> String
558
- # resp.task_object.objects["id"].fields #=> Array
559
- # resp.task_object.objects["id"].fields[0].key #=> String
560
- # resp.task_object.objects["id"].fields[0].string_value #=> String
561
- # resp.task_object.objects["id"].fields[0].ref_value #=> String
562
- # @overload poll_for_task(params = {})
563
- # @param [Hash] params ({})
564
- def poll_for_task(params = {}, options = {})
565
- req = build_request(:poll_for_task, params)
566
- req.send_request(options)
567
- end
332
+ # Deletes a pipeline, its pipeline definition, and its run history. AWS
333
+ # Data Pipeline attempts to cancel instances associated with the
334
+ # pipeline that are currently being processed by task runners.
335
+ #
336
+ # Deleting a pipeline cannot be undone. You cannot query or restore a
337
+ # deleted pipeline. To temporarily pause a pipeline instead of deleting
338
+ # it, call SetStatus with the status set to `PAUSE` on individual
339
+ # components. Components that are paused by SetStatus can be resumed.
340
+ #
341
+ # @option params [required, String] :pipeline_id
342
+ # The ID of the pipeline.
343
+ #
344
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
345
+ #
346
+ # @example Request syntax with placeholder values
347
+ #
348
+ # resp = client.delete_pipeline({
349
+ # pipeline_id: "id", # required
350
+ # })
351
+ #
352
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datapipeline-2012-10-29/DeletePipeline AWS API Documentation
353
+ #
354
+ # @overload delete_pipeline(params = {})
355
+ # @param [Hash] params ({})
356
+ def delete_pipeline(params = {}, options = {})
357
+ req = build_request(:delete_pipeline, params)
358
+ req.send_request(options)
359
+ end
568
360
 
569
- # Adds tasks, schedules, and preconditions to the specified pipeline.
570
- # You can use `PutPipelineDefinition` to populate a new pipeline.
571
- #
572
- # `PutPipelineDefinition` also validates the configuration as it adds it
573
- # to the pipeline. Changes to the pipeline are saved unless one of the
574
- # following three validation errors exists in the pipeline.
575
- #
576
- # 1. An object is missing a name or identifier field.
577
- # 2. A string or reference field is empty.
578
- # 3. The number of objects in the pipeline exceeds the maximum allowed
579
- # objects.
580
- # 4. The pipeline is in a FINISHED state.
581
- #
582
- # Pipeline object definitions are passed to the `PutPipelineDefinition`
583
- # action and returned by the GetPipelineDefinition action.
584
- # @option params [required, String] :pipeline_id
585
- # The ID of the pipeline.
586
- # @option params [required, Array<Types::PipelineObject>] :pipeline_objects
587
- # The objects that define the pipeline. These objects overwrite the
588
- # existing pipeline definition.
589
- # @option params [Array<Types::ParameterObject>] :parameter_objects
590
- # The parameter objects used with the pipeline.
591
- # @option params [Array<Types::ParameterValue>] :parameter_values
592
- # The parameter values used with the pipeline.
593
- # @return [Types::PutPipelineDefinitionOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
594
- #
595
- # * {Types::PutPipelineDefinitionOutput#validation_errors #validationErrors} => Array&lt;Types::ValidationError&gt;
596
- # * {Types::PutPipelineDefinitionOutput#validation_warnings #validationWarnings} => Array&lt;Types::ValidationWarning&gt;
597
- # * {Types::PutPipelineDefinitionOutput#errored #errored} => Boolean
598
- #
599
- # @example Request syntax with placeholder values
600
- # resp = client.put_pipeline_definition({
601
- # pipeline_id: "id", # required
602
- # pipeline_objects: [ # required
603
- # {
604
- # id: "id", # required
605
- # name: "id", # required
606
- # fields: [ # required
607
- # {
608
- # key: "fieldNameString", # required
609
- # string_value: "fieldStringValue",
610
- # ref_value: "fieldNameString",
611
- # },
612
- # ],
613
- # },
614
- # ],
615
- # parameter_objects: [
616
- # {
617
- # id: "fieldNameString", # required
618
- # attributes: [ # required
619
- # {
620
- # key: "attributeNameString", # required
621
- # string_value: "attributeValueString", # required
622
- # },
623
- # ],
624
- # },
625
- # ],
626
- # parameter_values: [
627
- # {
628
- # id: "fieldNameString", # required
629
- # string_value: "fieldStringValue", # required
630
- # },
631
- # ],
632
- # })
633
- #
634
- # @example Response structure
635
- # resp.validation_errors #=> Array
636
- # resp.validation_errors[0].id #=> String
637
- # resp.validation_errors[0].errors #=> Array
638
- # resp.validation_errors[0].errors[0] #=> String
639
- # resp.validation_warnings #=> Array
640
- # resp.validation_warnings[0].id #=> String
641
- # resp.validation_warnings[0].warnings #=> Array
642
- # resp.validation_warnings[0].warnings[0] #=> String
643
- # resp.errored #=> Boolean
644
- # @overload put_pipeline_definition(params = {})
645
- # @param [Hash] params ({})
646
- def put_pipeline_definition(params = {}, options = {})
647
- req = build_request(:put_pipeline_definition, params)
648
- req.send_request(options)
649
- end
361
+ # Gets the object definitions for a set of objects associated with the
362
+ # pipeline. Object definitions are composed of a set of fields that
363
+ # define the properties of the object.
364
+ #
365
+ # @option params [required, String] :pipeline_id
366
+ # The ID of the pipeline that contains the object definitions.
367
+ #
368
+ # @option params [required, Array<String>] :object_ids
369
+ # The IDs of the pipeline objects that contain the definitions to be
370
+ # described. You can pass as many as 25 identifiers in a single call to
371
+ # `DescribeObjects`.
372
+ #
373
+ # @option params [Boolean] :evaluate_expressions
374
+ # Indicates whether any expressions in the object should be evaluated
375
+ # when the object descriptions are returned.
376
+ #
377
+ # @option params [String] :marker
378
+ # The starting point for the results to be returned. For the first call,
379
+ # this value should be empty. As long as there are more results,
380
+ # continue to call `DescribeObjects` with the marker value from the
381
+ # previous call to retrieve the next set of results.
382
+ #
383
+ # @return [Types::DescribeObjectsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
384
+ #
385
+ # * {Types::DescribeObjectsOutput#pipeline_objects #pipeline_objects} => Array&lt;Types::PipelineObject&gt;
386
+ # * {Types::DescribeObjectsOutput#marker #marker} => String
387
+ # * {Types::DescribeObjectsOutput#has_more_results #has_more_results} => Boolean
388
+ #
389
+ # @example Request syntax with placeholder values
390
+ #
391
+ # resp = client.describe_objects({
392
+ # pipeline_id: "id", # required
393
+ # object_ids: ["id"], # required
394
+ # evaluate_expressions: false,
395
+ # marker: "string",
396
+ # })
397
+ #
398
+ # @example Response structure
399
+ #
400
+ # resp.pipeline_objects #=> Array
401
+ # resp.pipeline_objects[0].id #=> String
402
+ # resp.pipeline_objects[0].name #=> String
403
+ # resp.pipeline_objects[0].fields #=> Array
404
+ # resp.pipeline_objects[0].fields[0].key #=> String
405
+ # resp.pipeline_objects[0].fields[0].string_value #=> String
406
+ # resp.pipeline_objects[0].fields[0].ref_value #=> String
407
+ # resp.marker #=> String
408
+ # resp.has_more_results #=> Boolean
409
+ #
410
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datapipeline-2012-10-29/DescribeObjects AWS API Documentation
411
+ #
412
+ # @overload describe_objects(params = {})
413
+ # @param [Hash] params ({})
414
+ def describe_objects(params = {}, options = {})
415
+ req = build_request(:describe_objects, params)
416
+ req.send_request(options)
417
+ end
650
418
 
651
- # Queries the specified pipeline for the names of objects that match the
652
- # specified set of conditions.
653
- # @option params [required, String] :pipeline_id
654
- # The ID of the pipeline.
655
- # @option params [Types::Query] :query
656
- # The query that defines the objects to be returned. The `Query` object
657
- # can contain a maximum of ten selectors. The conditions in the query
658
- # are limited to top-level String fields in the object. These filters
659
- # can be applied to components, instances, and attempts.
660
- # @option params [required, String] :sphere
661
- # Indicates whether the query applies to components or instances. The
662
- # possible values are: `COMPONENT`, `INSTANCE`, and `ATTEMPT`.
663
- # @option params [String] :marker
664
- # The starting point for the results to be returned. For the first call,
665
- # this value should be empty. As long as there are more results,
666
- # continue to call `QueryObjects` with the marker value from the
667
- # previous call to retrieve the next set of results.
668
- # @option params [Integer] :limit
669
- # The maximum number of object names that `QueryObjects` will return in
670
- # a single call. The default value is 100.
671
- # @return [Types::QueryObjectsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
672
- #
673
- # * {Types::QueryObjectsOutput#ids #ids} => Array&lt;String&gt;
674
- # * {Types::QueryObjectsOutput#marker #marker} => String
675
- # * {Types::QueryObjectsOutput#has_more_results #hasMoreResults} => Boolean
676
- #
677
- # @example Request syntax with placeholder values
678
- # resp = client.query_objects({
679
- # pipeline_id: "id", # required
680
- # query: {
681
- # selectors: [
682
- # {
683
- # field_name: "string",
684
- # operator: {
685
- # type: "EQ", # accepts EQ, REF_EQ, LE, GE, BETWEEN
686
- # values: ["string"],
687
- # },
688
- # },
689
- # ],
690
- # },
691
- # sphere: "string", # required
692
- # marker: "string",
693
- # limit: 1,
694
- # })
695
- #
696
- # @example Response structure
697
- # resp.ids #=> Array
698
- # resp.ids[0] #=> String
699
- # resp.marker #=> String
700
- # resp.has_more_results #=> Boolean
701
- # @overload query_objects(params = {})
702
- # @param [Hash] params ({})
703
- def query_objects(params = {}, options = {})
704
- req = build_request(:query_objects, params)
705
- req.send_request(options)
706
- end
419
+ # Retrieves metadata about one or more pipelines. The information
420
+ # retrieved includes the name of the pipeline, the pipeline identifier,
421
+ # its current state, and the user account that owns the pipeline. Using
422
+ # account credentials, you can retrieve metadata about pipelines that
423
+ # you or your IAM users have created. If you are using an IAM user
424
+ # account, you can retrieve metadata about only those pipelines for
425
+ # which you have read permissions.
426
+ #
427
+ # To retrieve the full pipeline definition instead of metadata about the
428
+ # pipeline, call GetPipelineDefinition.
429
+ #
430
+ # @option params [required, Array<String>] :pipeline_ids
431
+ # The IDs of the pipelines to describe. You can pass as many as 25
432
+ # identifiers in a single call. To obtain pipeline IDs, call
433
+ # ListPipelines.
434
+ #
435
+ # @return [Types::DescribePipelinesOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
436
+ #
437
+ # * {Types::DescribePipelinesOutput#pipeline_description_list #pipeline_description_list} => Array&lt;Types::PipelineDescription&gt;
438
+ #
439
+ # @example Request syntax with placeholder values
440
+ #
441
+ # resp = client.describe_pipelines({
442
+ # pipeline_ids: ["id"], # required
443
+ # })
444
+ #
445
+ # @example Response structure
446
+ #
447
+ # resp.pipeline_description_list #=> Array
448
+ # resp.pipeline_description_list[0].pipeline_id #=> String
449
+ # resp.pipeline_description_list[0].name #=> String
450
+ # resp.pipeline_description_list[0].fields #=> Array
451
+ # resp.pipeline_description_list[0].fields[0].key #=> String
452
+ # resp.pipeline_description_list[0].fields[0].string_value #=> String
453
+ # resp.pipeline_description_list[0].fields[0].ref_value #=> String
454
+ # resp.pipeline_description_list[0].description #=> String
455
+ # resp.pipeline_description_list[0].tags #=> Array
456
+ # resp.pipeline_description_list[0].tags[0].key #=> String
457
+ # resp.pipeline_description_list[0].tags[0].value #=> String
458
+ #
459
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datapipeline-2012-10-29/DescribePipelines AWS API Documentation
460
+ #
461
+ # @overload describe_pipelines(params = {})
462
+ # @param [Hash] params ({})
463
+ def describe_pipelines(params = {}, options = {})
464
+ req = build_request(:describe_pipelines, params)
465
+ req.send_request(options)
466
+ end
707
467
 
708
- # Removes existing tags from the specified pipeline.
709
- # @option params [required, String] :pipeline_id
710
- # The ID of the pipeline.
711
- # @option params [required, Array<String>] :tag_keys
712
- # The keys of the tags to remove.
713
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
714
- #
715
- # @example Request syntax with placeholder values
716
- # resp = client.remove_tags({
717
- # pipeline_id: "id", # required
718
- # tag_keys: ["string"], # required
719
- # })
720
- # @overload remove_tags(params = {})
721
- # @param [Hash] params ({})
722
- def remove_tags(params = {}, options = {})
723
- req = build_request(:remove_tags, params)
724
- req.send_request(options)
725
- end
468
+ # Task runners call `EvaluateExpression` to evaluate a string in the
469
+ # context of the specified object. For example, a task runner can
470
+ # evaluate SQL queries stored in Amazon S3.
471
+ #
472
+ # @option params [required, String] :pipeline_id
473
+ # The ID of the pipeline.
474
+ #
475
+ # @option params [required, String] :object_id
476
+ # The ID of the object.
477
+ #
478
+ # @option params [required, String] :expression
479
+ # The expression to evaluate.
480
+ #
481
+ # @return [Types::EvaluateExpressionOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
482
+ #
483
+ # * {Types::EvaluateExpressionOutput#evaluated_expression #evaluated_expression} => String
484
+ #
485
+ # @example Request syntax with placeholder values
486
+ #
487
+ # resp = client.evaluate_expression({
488
+ # pipeline_id: "id", # required
489
+ # object_id: "id", # required
490
+ # expression: "longString", # required
491
+ # })
492
+ #
493
+ # @example Response structure
494
+ #
495
+ # resp.evaluated_expression #=> String
496
+ #
497
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datapipeline-2012-10-29/EvaluateExpression AWS API Documentation
498
+ #
499
+ # @overload evaluate_expression(params = {})
500
+ # @param [Hash] params ({})
501
+ def evaluate_expression(params = {}, options = {})
502
+ req = build_request(:evaluate_expression, params)
503
+ req.send_request(options)
504
+ end
726
505
 
727
- # Task runners call `ReportTaskProgress` when assigned a task to
728
- # acknowledge that it has the task. If the web service does not receive
729
- # this acknowledgement within 2 minutes, it assigns the task in a
730
- # subsequent PollForTask call. After this initial acknowledgement, the
731
- # task runner only needs to report progress every 15 minutes to maintain
732
- # its ownership of the task. You can change this reporting time from 15
733
- # minutes by specifying a `reportProgressTimeout` field in your
734
- # pipeline.
735
- #
736
- # If a task runner does not report its status after 5 minutes, AWS Data
737
- # Pipeline assumes that the task runner is unable to process the task
738
- # and reassigns the task in a subsequent response to PollForTask. Task
739
- # runners should call `ReportTaskProgress` every 60 seconds.
740
- # @option params [required, String] :task_id
741
- # The ID of the task assigned to the task runner. This value is provided
742
- # in the response for PollForTask.
743
- # @option params [Array<Types::Field>] :fields
744
- # Key-value pairs that define the properties of the
745
- # ReportTaskProgressInput object.
746
- # @return [Types::ReportTaskProgressOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
747
- #
748
- # * {Types::ReportTaskProgressOutput#canceled #canceled} => Boolean
749
- #
750
- # @example Request syntax with placeholder values
751
- # resp = client.report_task_progress({
752
- # task_id: "taskId", # required
753
- # fields: [
754
- # {
755
- # key: "fieldNameString", # required
756
- # string_value: "fieldStringValue",
757
- # ref_value: "fieldNameString",
758
- # },
759
- # ],
760
- # })
761
- #
762
- # @example Response structure
763
- # resp.canceled #=> Boolean
764
- # @overload report_task_progress(params = {})
765
- # @param [Hash] params ({})
766
- def report_task_progress(params = {}, options = {})
767
- req = build_request(:report_task_progress, params)
768
- req.send_request(options)
769
- end
506
+ # Gets the definition of the specified pipeline. You can call
507
+ # `GetPipelineDefinition` to retrieve the pipeline definition that you
508
+ # provided using PutPipelineDefinition.
509
+ #
510
+ # @option params [required, String] :pipeline_id
511
+ # The ID of the pipeline.
512
+ #
513
+ # @option params [String] :version
514
+ # The version of the pipeline definition to retrieve. Set this parameter
515
+ # to `latest` (default) to use the last definition saved to the pipeline
516
+ # or `active` to use the last definition that was activated.
517
+ #
518
+ # @return [Types::GetPipelineDefinitionOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
519
+ #
520
+ # * {Types::GetPipelineDefinitionOutput#pipeline_objects #pipeline_objects} => Array&lt;Types::PipelineObject&gt;
521
+ # * {Types::GetPipelineDefinitionOutput#parameter_objects #parameter_objects} => Array&lt;Types::ParameterObject&gt;
522
+ # * {Types::GetPipelineDefinitionOutput#parameter_values #parameter_values} => Array&lt;Types::ParameterValue&gt;
523
+ #
524
+ # @example Request syntax with placeholder values
525
+ #
526
+ # resp = client.get_pipeline_definition({
527
+ # pipeline_id: "id", # required
528
+ # version: "string",
529
+ # })
530
+ #
531
+ # @example Response structure
532
+ #
533
+ # resp.pipeline_objects #=> Array
534
+ # resp.pipeline_objects[0].id #=> String
535
+ # resp.pipeline_objects[0].name #=> String
536
+ # resp.pipeline_objects[0].fields #=> Array
537
+ # resp.pipeline_objects[0].fields[0].key #=> String
538
+ # resp.pipeline_objects[0].fields[0].string_value #=> String
539
+ # resp.pipeline_objects[0].fields[0].ref_value #=> String
540
+ # resp.parameter_objects #=> Array
541
+ # resp.parameter_objects[0].id #=> String
542
+ # resp.parameter_objects[0].attributes #=> Array
543
+ # resp.parameter_objects[0].attributes[0].key #=> String
544
+ # resp.parameter_objects[0].attributes[0].string_value #=> String
545
+ # resp.parameter_values #=> Array
546
+ # resp.parameter_values[0].id #=> String
547
+ # resp.parameter_values[0].string_value #=> String
548
+ #
549
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datapipeline-2012-10-29/GetPipelineDefinition AWS API Documentation
550
+ #
551
+ # @overload get_pipeline_definition(params = {})
552
+ # @param [Hash] params ({})
553
+ def get_pipeline_definition(params = {}, options = {})
554
+ req = build_request(:get_pipeline_definition, params)
555
+ req.send_request(options)
556
+ end
770
557
 
771
- # Task runners call `ReportTaskRunnerHeartbeat` every 15 minutes to
772
- # indicate that they are operational. If the AWS Data Pipeline Task
773
- # Runner is launched on a resource managed by AWS Data Pipeline, the web
774
- # service can use this call to detect when the task runner application
775
- # has failed and restart a new instance.
776
- # @option params [required, String] :taskrunner_id
777
- # The ID of the task runner. This value should be unique across your AWS
778
- # account. In the case of AWS Data Pipeline Task Runner launched on a
779
- # resource managed by AWS Data Pipeline, the web service provides a
780
- # unique identifier when it launches the application. If you have
781
- # written a custom task runner, you should assign a unique identifier
782
- # for the task runner.
783
- # @option params [String] :worker_group
784
- # The type of task the task runner is configured to accept and process.
785
- # The worker group is set as a field on objects in the pipeline when
786
- # they are created. You can only specify a single value for
787
- # `workerGroup`. There are no wildcard values permitted in
788
- # `workerGroup`; the string must be an exact, case-sensitive, match.
789
- # @option params [String] :hostname
790
- # The public DNS name of the task runner.
791
- # @return [Types::ReportTaskRunnerHeartbeatOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
792
- #
793
- # * {Types::ReportTaskRunnerHeartbeatOutput#terminate #terminate} => Boolean
794
- #
795
- # @example Request syntax with placeholder values
796
- # resp = client.report_task_runner_heartbeat({
797
- # taskrunner_id: "id", # required
798
- # worker_group: "string",
799
- # hostname: "id",
800
- # })
801
- #
802
- # @example Response structure
803
- # resp.terminate #=> Boolean
804
- # @overload report_task_runner_heartbeat(params = {})
805
- # @param [Hash] params ({})
806
- def report_task_runner_heartbeat(params = {}, options = {})
807
- req = build_request(:report_task_runner_heartbeat, params)
808
- req.send_request(options)
809
- end
558
+ # Lists the pipeline identifiers for all active pipelines that you have
559
+ # permission to access.
560
+ #
561
+ # @option params [String] :marker
562
+ # The starting point for the results to be returned. For the first call,
563
+ # this value should be empty. As long as there are more results,
564
+ # continue to call `ListPipelines` with the marker value from the
565
+ # previous call to retrieve the next set of results.
566
+ #
567
+ # @return [Types::ListPipelinesOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
568
+ #
569
+ # * {Types::ListPipelinesOutput#pipeline_id_list #pipeline_id_list} => Array&lt;Types::PipelineIdName&gt;
570
+ # * {Types::ListPipelinesOutput#marker #marker} => String
571
+ # * {Types::ListPipelinesOutput#has_more_results #has_more_results} => Boolean
572
+ #
573
+ # @example Request syntax with placeholder values
574
+ #
575
+ # resp = client.list_pipelines({
576
+ # marker: "string",
577
+ # })
578
+ #
579
+ # @example Response structure
580
+ #
581
+ # resp.pipeline_id_list #=> Array
582
+ # resp.pipeline_id_list[0].id #=> String
583
+ # resp.pipeline_id_list[0].name #=> String
584
+ # resp.marker #=> String
585
+ # resp.has_more_results #=> Boolean
586
+ #
587
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datapipeline-2012-10-29/ListPipelines AWS API Documentation
588
+ #
589
+ # @overload list_pipelines(params = {})
590
+ # @param [Hash] params ({})
591
+ def list_pipelines(params = {}, options = {})
592
+ req = build_request(:list_pipelines, params)
593
+ req.send_request(options)
594
+ end
810
595
 
811
- # Requests that the status of the specified physical or logical pipeline
812
- # objects be updated in the specified pipeline. This update might not
813
- # occur immediately, but is eventually consistent. The status that can
814
- # be set depends on the type of object (for example, DataNode or
815
- # Activity). You cannot perform this operation on `FINISHED` pipelines
816
- # and attempting to do so returns `InvalidRequestException`.
817
- # @option params [required, String] :pipeline_id
818
- # The ID of the pipeline that contains the objects.
819
- # @option params [required, Array<String>] :object_ids
820
- # The IDs of the objects. The corresponding objects can be either
821
- # physical or components, but not a mix of both types.
822
- # @option params [required, String] :status
823
- # The status to be set on all the objects specified in `objectIds`. For
824
- # components, use `PAUSE` or `RESUME`. For instances, use `TRY_CANCEL`,
825
- # `RERUN`, or `MARK_FINISHED`.
826
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
827
- #
828
- # @example Request syntax with placeholder values
829
- # resp = client.set_status({
830
- # pipeline_id: "id", # required
831
- # object_ids: ["id"], # required
832
- # status: "string", # required
833
- # })
834
- # @overload set_status(params = {})
835
- # @param [Hash] params ({})
836
- def set_status(params = {}, options = {})
837
- req = build_request(:set_status, params)
838
- req.send_request(options)
839
- end
596
+ # Task runners call `PollForTask` to receive a task to perform from AWS
597
+ # Data Pipeline. The task runner specifies which tasks it can perform by
598
+ # setting a value for the `workerGroup` parameter. The task returned can
599
+ # come from any of the pipelines that match the `workerGroup` value
600
+ # passed in by the task runner and that was launched using the IAM user
601
+ # credentials specified by the task runner.
602
+ #
603
+ # If tasks are ready in the work queue, `PollForTask` returns a response
604
+ # immediately. If no tasks are available in the queue, `PollForTask`
605
+ # uses long-polling and holds on to a poll connection for up to a 90
606
+ # seconds, during which time the first newly scheduled task is handed to
607
+ # the task runner. To accomodate this, set the socket timeout in your
608
+ # task runner to 90 seconds. The task runner should not call
609
+ # `PollForTask` again on the same `workerGroup` until it receives a
610
+ # response, and this can take up to 90 seconds.
611
+ #
612
+ # @option params [required, String] :worker_group
613
+ # The type of task the task runner is configured to accept and process.
614
+ # The worker group is set as a field on objects in the pipeline when
615
+ # they are created. You can only specify a single value for
616
+ # `workerGroup` in the call to `PollForTask`. There are no wildcard
617
+ # values permitted in `workerGroup`; the string must be an exact,
618
+ # case-sensitive, match.
619
+ #
620
+ # @option params [String] :hostname
621
+ # The public DNS name of the calling task runner.
622
+ #
623
+ # @option params [Types::InstanceIdentity] :instance_identity
624
+ # Identity information for the EC2 instance that is hosting the task
625
+ # runner. You can get this value from the instance using
626
+ # `http://169.254.169.254/latest/meta-data/instance-id`. For more
627
+ # information, see [Instance Metadata][1] in the *Amazon Elastic Compute
628
+ # Cloud User Guide.* Passing in this value proves that your task runner
629
+ # is running on an EC2 instance, and ensures the proper AWS Data
630
+ # Pipeline service charges are applied to your pipeline.
631
+ #
632
+ #
633
+ #
634
+ # [1]: http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AESDG-chapter-instancedata.html
635
+ #
636
+ # @return [Types::PollForTaskOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
637
+ #
638
+ # * {Types::PollForTaskOutput#task_object #task_object} => Types::TaskObject
639
+ #
640
+ # @example Request syntax with placeholder values
641
+ #
642
+ # resp = client.poll_for_task({
643
+ # worker_group: "string", # required
644
+ # hostname: "id",
645
+ # instance_identity: {
646
+ # document: "string",
647
+ # signature: "string",
648
+ # },
649
+ # })
650
+ #
651
+ # @example Response structure
652
+ #
653
+ # resp.task_object.task_id #=> String
654
+ # resp.task_object.pipeline_id #=> String
655
+ # resp.task_object.attempt_id #=> String
656
+ # resp.task_object.objects #=> Hash
657
+ # resp.task_object.objects["id"].id #=> String
658
+ # resp.task_object.objects["id"].name #=> String
659
+ # resp.task_object.objects["id"].fields #=> Array
660
+ # resp.task_object.objects["id"].fields[0].key #=> String
661
+ # resp.task_object.objects["id"].fields[0].string_value #=> String
662
+ # resp.task_object.objects["id"].fields[0].ref_value #=> String
663
+ #
664
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datapipeline-2012-10-29/PollForTask AWS API Documentation
665
+ #
666
+ # @overload poll_for_task(params = {})
667
+ # @param [Hash] params ({})
668
+ def poll_for_task(params = {}, options = {})
669
+ req = build_request(:poll_for_task, params)
670
+ req.send_request(options)
671
+ end
840
672
 
841
- # Task runners call `SetTaskStatus` to notify AWS Data Pipeline that a
842
- # task is completed and provide information about the final status. A
843
- # task runner makes this call regardless of whether the task was
844
- # sucessful. A task runner does not need to call `SetTaskStatus` for
845
- # tasks that are canceled by the web service during a call to
846
- # ReportTaskProgress.
847
- # @option params [required, String] :task_id
848
- # The ID of the task assigned to the task runner. This value is provided
849
- # in the response for PollForTask.
850
- # @option params [required, String] :task_status
851
- # If `FINISHED`, the task successfully completed. If `FAILED`, the task
852
- # ended unsuccessfully. Preconditions use false.
853
- # @option params [String] :error_id
854
- # If an error occurred during the task, this value specifies the error
855
- # code. This value is set on the physical attempt object. It is used to
856
- # display error information to the user. It should not start with string
857
- # "Service\_" which is reserved by the system.
858
- # @option params [String] :error_message
859
- # If an error occurred during the task, this value specifies a text
860
- # description of the error. This value is set on the physical attempt
861
- # object. It is used to display error information to the user. The web
862
- # service does not parse this value.
863
- # @option params [String] :error_stack_trace
864
- # If an error occurred during the task, this value specifies the stack
865
- # trace associated with the error. This value is set on the physical
866
- # attempt object. It is used to display error information to the user.
867
- # The web service does not parse this value.
868
- # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
869
- #
870
- # @example Request syntax with placeholder values
871
- # resp = client.set_task_status({
872
- # task_id: "taskId", # required
873
- # task_status: "FINISHED", # required, accepts FINISHED, FAILED, FALSE
874
- # error_id: "string",
875
- # error_message: "errorMessage",
876
- # error_stack_trace: "string",
877
- # })
878
- # @overload set_task_status(params = {})
879
- # @param [Hash] params ({})
880
- def set_task_status(params = {}, options = {})
881
- req = build_request(:set_task_status, params)
882
- req.send_request(options)
883
- end
673
+ # Adds tasks, schedules, and preconditions to the specified pipeline.
674
+ # You can use `PutPipelineDefinition` to populate a new pipeline.
675
+ #
676
+ # `PutPipelineDefinition` also validates the configuration as it adds it
677
+ # to the pipeline. Changes to the pipeline are saved unless one of the
678
+ # following three validation errors exists in the pipeline.
679
+ #
680
+ # 1. An object is missing a name or identifier field.
681
+ # 2. A string or reference field is empty.
682
+ # 3. The number of objects in the pipeline exceeds the maximum allowed
683
+ # objects.
684
+ # 4. The pipeline is in a FINISHED state.
685
+ #
686
+ # Pipeline object definitions are passed to the `PutPipelineDefinition`
687
+ # action and returned by the GetPipelineDefinition action.
688
+ #
689
+ # @option params [required, String] :pipeline_id
690
+ # The ID of the pipeline.
691
+ #
692
+ # @option params [required, Array<Types::PipelineObject>] :pipeline_objects
693
+ # The objects that define the pipeline. These objects overwrite the
694
+ # existing pipeline definition.
695
+ #
696
+ # @option params [Array<Types::ParameterObject>] :parameter_objects
697
+ # The parameter objects used with the pipeline.
698
+ #
699
+ # @option params [Array<Types::ParameterValue>] :parameter_values
700
+ # The parameter values used with the pipeline.
701
+ #
702
+ # @return [Types::PutPipelineDefinitionOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
703
+ #
704
+ # * {Types::PutPipelineDefinitionOutput#validation_errors #validation_errors} => Array&lt;Types::ValidationError&gt;
705
+ # * {Types::PutPipelineDefinitionOutput#validation_warnings #validation_warnings} => Array&lt;Types::ValidationWarning&gt;
706
+ # * {Types::PutPipelineDefinitionOutput#errored #errored} => Boolean
707
+ #
708
+ # @example Request syntax with placeholder values
709
+ #
710
+ # resp = client.put_pipeline_definition({
711
+ # pipeline_id: "id", # required
712
+ # pipeline_objects: [ # required
713
+ # {
714
+ # id: "id", # required
715
+ # name: "id", # required
716
+ # fields: [ # required
717
+ # {
718
+ # key: "fieldNameString", # required
719
+ # string_value: "fieldStringValue",
720
+ # ref_value: "fieldNameString",
721
+ # },
722
+ # ],
723
+ # },
724
+ # ],
725
+ # parameter_objects: [
726
+ # {
727
+ # id: "fieldNameString", # required
728
+ # attributes: [ # required
729
+ # {
730
+ # key: "attributeNameString", # required
731
+ # string_value: "attributeValueString", # required
732
+ # },
733
+ # ],
734
+ # },
735
+ # ],
736
+ # parameter_values: [
737
+ # {
738
+ # id: "fieldNameString", # required
739
+ # string_value: "fieldStringValue", # required
740
+ # },
741
+ # ],
742
+ # })
743
+ #
744
+ # @example Response structure
745
+ #
746
+ # resp.validation_errors #=> Array
747
+ # resp.validation_errors[0].id #=> String
748
+ # resp.validation_errors[0].errors #=> Array
749
+ # resp.validation_errors[0].errors[0] #=> String
750
+ # resp.validation_warnings #=> Array
751
+ # resp.validation_warnings[0].id #=> String
752
+ # resp.validation_warnings[0].warnings #=> Array
753
+ # resp.validation_warnings[0].warnings[0] #=> String
754
+ # resp.errored #=> Boolean
755
+ #
756
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datapipeline-2012-10-29/PutPipelineDefinition AWS API Documentation
757
+ #
758
+ # @overload put_pipeline_definition(params = {})
759
+ # @param [Hash] params ({})
760
+ def put_pipeline_definition(params = {}, options = {})
761
+ req = build_request(:put_pipeline_definition, params)
762
+ req.send_request(options)
763
+ end
884
764
 
885
- # Validates the specified pipeline definition to ensure that it is well
886
- # formed and can be run without error.
887
- # @option params [required, String] :pipeline_id
888
- # The ID of the pipeline.
889
- # @option params [required, Array<Types::PipelineObject>] :pipeline_objects
890
- # The objects that define the pipeline changes to validate against the
891
- # pipeline.
892
- # @option params [Array<Types::ParameterObject>] :parameter_objects
893
- # The parameter objects used with the pipeline.
894
- # @option params [Array<Types::ParameterValue>] :parameter_values
895
- # The parameter values used with the pipeline.
896
- # @return [Types::ValidatePipelineDefinitionOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
897
- #
898
- # * {Types::ValidatePipelineDefinitionOutput#validation_errors #validationErrors} => Array&lt;Types::ValidationError&gt;
899
- # * {Types::ValidatePipelineDefinitionOutput#validation_warnings #validationWarnings} => Array&lt;Types::ValidationWarning&gt;
900
- # * {Types::ValidatePipelineDefinitionOutput#errored #errored} => Boolean
901
- #
902
- # @example Request syntax with placeholder values
903
- # resp = client.validate_pipeline_definition({
904
- # pipeline_id: "id", # required
905
- # pipeline_objects: [ # required
906
- # {
907
- # id: "id", # required
908
- # name: "id", # required
909
- # fields: [ # required
910
- # {
911
- # key: "fieldNameString", # required
912
- # string_value: "fieldStringValue",
913
- # ref_value: "fieldNameString",
914
- # },
915
- # ],
916
- # },
917
- # ],
918
- # parameter_objects: [
919
- # {
920
- # id: "fieldNameString", # required
921
- # attributes: [ # required
922
- # {
923
- # key: "attributeNameString", # required
924
- # string_value: "attributeValueString", # required
925
- # },
926
- # ],
927
- # },
928
- # ],
929
- # parameter_values: [
930
- # {
931
- # id: "fieldNameString", # required
932
- # string_value: "fieldStringValue", # required
933
- # },
934
- # ],
935
- # })
936
- #
937
- # @example Response structure
938
- # resp.validation_errors #=> Array
939
- # resp.validation_errors[0].id #=> String
940
- # resp.validation_errors[0].errors #=> Array
941
- # resp.validation_errors[0].errors[0] #=> String
942
- # resp.validation_warnings #=> Array
943
- # resp.validation_warnings[0].id #=> String
944
- # resp.validation_warnings[0].warnings #=> Array
945
- # resp.validation_warnings[0].warnings[0] #=> String
946
- # resp.errored #=> Boolean
947
- # @overload validate_pipeline_definition(params = {})
948
- # @param [Hash] params ({})
949
- def validate_pipeline_definition(params = {}, options = {})
950
- req = build_request(:validate_pipeline_definition, params)
951
- req.send_request(options)
952
- end
765
+ # Queries the specified pipeline for the names of objects that match the
766
+ # specified set of conditions.
767
+ #
768
+ # @option params [required, String] :pipeline_id
769
+ # The ID of the pipeline.
770
+ #
771
+ # @option params [Types::Query] :query
772
+ # The query that defines the objects to be returned. The `Query` object
773
+ # can contain a maximum of ten selectors. The conditions in the query
774
+ # are limited to top-level String fields in the object. These filters
775
+ # can be applied to components, instances, and attempts.
776
+ #
777
+ # @option params [required, String] :sphere
778
+ # Indicates whether the query applies to components or instances. The
779
+ # possible values are: `COMPONENT`, `INSTANCE`, and `ATTEMPT`.
780
+ #
781
+ # @option params [String] :marker
782
+ # The starting point for the results to be returned. For the first call,
783
+ # this value should be empty. As long as there are more results,
784
+ # continue to call `QueryObjects` with the marker value from the
785
+ # previous call to retrieve the next set of results.
786
+ #
787
+ # @option params [Integer] :limit
788
+ # The maximum number of object names that `QueryObjects` will return in
789
+ # a single call. The default value is 100.
790
+ #
791
+ # @return [Types::QueryObjectsOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
792
+ #
793
+ # * {Types::QueryObjectsOutput#ids #ids} => Array&lt;String&gt;
794
+ # * {Types::QueryObjectsOutput#marker #marker} => String
795
+ # * {Types::QueryObjectsOutput#has_more_results #has_more_results} => Boolean
796
+ #
797
+ # @example Request syntax with placeholder values
798
+ #
799
+ # resp = client.query_objects({
800
+ # pipeline_id: "id", # required
801
+ # query: {
802
+ # selectors: [
803
+ # {
804
+ # field_name: "string",
805
+ # operator: {
806
+ # type: "EQ", # accepts EQ, REF_EQ, LE, GE, BETWEEN
807
+ # values: ["string"],
808
+ # },
809
+ # },
810
+ # ],
811
+ # },
812
+ # sphere: "string", # required
813
+ # marker: "string",
814
+ # limit: 1,
815
+ # })
816
+ #
817
+ # @example Response structure
818
+ #
819
+ # resp.ids #=> Array
820
+ # resp.ids[0] #=> String
821
+ # resp.marker #=> String
822
+ # resp.has_more_results #=> Boolean
823
+ #
824
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datapipeline-2012-10-29/QueryObjects AWS API Documentation
825
+ #
826
+ # @overload query_objects(params = {})
827
+ # @param [Hash] params ({})
828
+ def query_objects(params = {}, options = {})
829
+ req = build_request(:query_objects, params)
830
+ req.send_request(options)
831
+ end
953
832
 
954
- # @!endgroup
833
+ # Removes existing tags from the specified pipeline.
834
+ #
835
+ # @option params [required, String] :pipeline_id
836
+ # The ID of the pipeline.
837
+ #
838
+ # @option params [required, Array<String>] :tag_keys
839
+ # The keys of the tags to remove.
840
+ #
841
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
842
+ #
843
+ # @example Request syntax with placeholder values
844
+ #
845
+ # resp = client.remove_tags({
846
+ # pipeline_id: "id", # required
847
+ # tag_keys: ["string"], # required
848
+ # })
849
+ #
850
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datapipeline-2012-10-29/RemoveTags AWS API Documentation
851
+ #
852
+ # @overload remove_tags(params = {})
853
+ # @param [Hash] params ({})
854
+ def remove_tags(params = {}, options = {})
855
+ req = build_request(:remove_tags, params)
856
+ req.send_request(options)
857
+ end
955
858
 
956
- # @param params ({})
957
- # @api private
958
- def build_request(operation_name, params = {})
959
- handlers = @handlers.for(operation_name)
960
- context = Seahorse::Client::RequestContext.new(
961
- operation_name: operation_name,
962
- operation: config.api.operation(operation_name),
963
- client: self,
964
- params: params,
965
- config: config)
966
- context[:gem_name] = 'aws-sdk-datapipeline'
967
- context[:gem_version] = '1.0.0.rc1'
968
- Seahorse::Client::Request.new(handlers, context)
969
- end
859
+ # Task runners call `ReportTaskProgress` when assigned a task to
860
+ # acknowledge that it has the task. If the web service does not receive
861
+ # this acknowledgement within 2 minutes, it assigns the task in a
862
+ # subsequent PollForTask call. After this initial acknowledgement, the
863
+ # task runner only needs to report progress every 15 minutes to maintain
864
+ # its ownership of the task. You can change this reporting time from 15
865
+ # minutes by specifying a `reportProgressTimeout` field in your
866
+ # pipeline.
867
+ #
868
+ # If a task runner does not report its status after 5 minutes, AWS Data
869
+ # Pipeline assumes that the task runner is unable to process the task
870
+ # and reassigns the task in a subsequent response to PollForTask. Task
871
+ # runners should call `ReportTaskProgress` every 60 seconds.
872
+ #
873
+ # @option params [required, String] :task_id
874
+ # The ID of the task assigned to the task runner. This value is provided
875
+ # in the response for PollForTask.
876
+ #
877
+ # @option params [Array<Types::Field>] :fields
878
+ # Key-value pairs that define the properties of the
879
+ # ReportTaskProgressInput object.
880
+ #
881
+ # @return [Types::ReportTaskProgressOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
882
+ #
883
+ # * {Types::ReportTaskProgressOutput#canceled #canceled} => Boolean
884
+ #
885
+ # @example Request syntax with placeholder values
886
+ #
887
+ # resp = client.report_task_progress({
888
+ # task_id: "taskId", # required
889
+ # fields: [
890
+ # {
891
+ # key: "fieldNameString", # required
892
+ # string_value: "fieldStringValue",
893
+ # ref_value: "fieldNameString",
894
+ # },
895
+ # ],
896
+ # })
897
+ #
898
+ # @example Response structure
899
+ #
900
+ # resp.canceled #=> Boolean
901
+ #
902
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datapipeline-2012-10-29/ReportTaskProgress AWS API Documentation
903
+ #
904
+ # @overload report_task_progress(params = {})
905
+ # @param [Hash] params ({})
906
+ def report_task_progress(params = {}, options = {})
907
+ req = build_request(:report_task_progress, params)
908
+ req.send_request(options)
909
+ end
970
910
 
971
- # @api private
972
- # @deprecated
973
- def waiter_names
974
- []
975
- end
911
+ # Task runners call `ReportTaskRunnerHeartbeat` every 15 minutes to
912
+ # indicate that they are operational. If the AWS Data Pipeline Task
913
+ # Runner is launched on a resource managed by AWS Data Pipeline, the web
914
+ # service can use this call to detect when the task runner application
915
+ # has failed and restart a new instance.
916
+ #
917
+ # @option params [required, String] :taskrunner_id
918
+ # The ID of the task runner. This value should be unique across your AWS
919
+ # account. In the case of AWS Data Pipeline Task Runner launched on a
920
+ # resource managed by AWS Data Pipeline, the web service provides a
921
+ # unique identifier when it launches the application. If you have
922
+ # written a custom task runner, you should assign a unique identifier
923
+ # for the task runner.
924
+ #
925
+ # @option params [String] :worker_group
926
+ # The type of task the task runner is configured to accept and process.
927
+ # The worker group is set as a field on objects in the pipeline when
928
+ # they are created. You can only specify a single value for
929
+ # `workerGroup`. There are no wildcard values permitted in
930
+ # `workerGroup`; the string must be an exact, case-sensitive, match.
931
+ #
932
+ # @option params [String] :hostname
933
+ # The public DNS name of the task runner.
934
+ #
935
+ # @return [Types::ReportTaskRunnerHeartbeatOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
936
+ #
937
+ # * {Types::ReportTaskRunnerHeartbeatOutput#terminate #terminate} => Boolean
938
+ #
939
+ # @example Request syntax with placeholder values
940
+ #
941
+ # resp = client.report_task_runner_heartbeat({
942
+ # taskrunner_id: "id", # required
943
+ # worker_group: "string",
944
+ # hostname: "id",
945
+ # })
946
+ #
947
+ # @example Response structure
948
+ #
949
+ # resp.terminate #=> Boolean
950
+ #
951
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datapipeline-2012-10-29/ReportTaskRunnerHeartbeat AWS API Documentation
952
+ #
953
+ # @overload report_task_runner_heartbeat(params = {})
954
+ # @param [Hash] params ({})
955
+ def report_task_runner_heartbeat(params = {}, options = {})
956
+ req = build_request(:report_task_runner_heartbeat, params)
957
+ req.send_request(options)
958
+ end
976
959
 
977
- class << self
960
+ # Requests that the status of the specified physical or logical pipeline
961
+ # objects be updated in the specified pipeline. This update might not
962
+ # occur immediately, but is eventually consistent. The status that can
963
+ # be set depends on the type of object (for example, DataNode or
964
+ # Activity). You cannot perform this operation on `FINISHED` pipelines
965
+ # and attempting to do so returns `InvalidRequestException`.
966
+ #
967
+ # @option params [required, String] :pipeline_id
968
+ # The ID of the pipeline that contains the objects.
969
+ #
970
+ # @option params [required, Array<String>] :object_ids
971
+ # The IDs of the objects. The corresponding objects can be either
972
+ # physical or components, but not a mix of both types.
973
+ #
974
+ # @option params [required, String] :status
975
+ # The status to be set on all the objects specified in `objectIds`. For
976
+ # components, use `PAUSE` or `RESUME`. For instances, use `TRY_CANCEL`,
977
+ # `RERUN`, or `MARK_FINISHED`.
978
+ #
979
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
980
+ #
981
+ # @example Request syntax with placeholder values
982
+ #
983
+ # resp = client.set_status({
984
+ # pipeline_id: "id", # required
985
+ # object_ids: ["id"], # required
986
+ # status: "string", # required
987
+ # })
988
+ #
989
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datapipeline-2012-10-29/SetStatus AWS API Documentation
990
+ #
991
+ # @overload set_status(params = {})
992
+ # @param [Hash] params ({})
993
+ def set_status(params = {}, options = {})
994
+ req = build_request(:set_status, params)
995
+ req.send_request(options)
996
+ end
997
+
998
+ # Task runners call `SetTaskStatus` to notify AWS Data Pipeline that a
999
+ # task is completed and provide information about the final status. A
1000
+ # task runner makes this call regardless of whether the task was
1001
+ # sucessful. A task runner does not need to call `SetTaskStatus` for
1002
+ # tasks that are canceled by the web service during a call to
1003
+ # ReportTaskProgress.
1004
+ #
1005
+ # @option params [required, String] :task_id
1006
+ # The ID of the task assigned to the task runner. This value is provided
1007
+ # in the response for PollForTask.
1008
+ #
1009
+ # @option params [required, String] :task_status
1010
+ # If `FINISHED`, the task successfully completed. If `FAILED`, the task
1011
+ # ended unsuccessfully. Preconditions use false.
1012
+ #
1013
+ # @option params [String] :error_id
1014
+ # If an error occurred during the task, this value specifies the error
1015
+ # code. This value is set on the physical attempt object. It is used to
1016
+ # display error information to the user. It should not start with string
1017
+ # "Service\_" which is reserved by the system.
1018
+ #
1019
+ # @option params [String] :error_message
1020
+ # If an error occurred during the task, this value specifies a text
1021
+ # description of the error. This value is set on the physical attempt
1022
+ # object. It is used to display error information to the user. The web
1023
+ # service does not parse this value.
1024
+ #
1025
+ # @option params [String] :error_stack_trace
1026
+ # If an error occurred during the task, this value specifies the stack
1027
+ # trace associated with the error. This value is set on the physical
1028
+ # attempt object. It is used to display error information to the user.
1029
+ # The web service does not parse this value.
1030
+ #
1031
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1032
+ #
1033
+ # @example Request syntax with placeholder values
1034
+ #
1035
+ # resp = client.set_task_status({
1036
+ # task_id: "taskId", # required
1037
+ # task_status: "FINISHED", # required, accepts FINISHED, FAILED, FALSE
1038
+ # error_id: "string",
1039
+ # error_message: "errorMessage",
1040
+ # error_stack_trace: "string",
1041
+ # })
1042
+ #
1043
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datapipeline-2012-10-29/SetTaskStatus AWS API Documentation
1044
+ #
1045
+ # @overload set_task_status(params = {})
1046
+ # @param [Hash] params ({})
1047
+ def set_task_status(params = {}, options = {})
1048
+ req = build_request(:set_task_status, params)
1049
+ req.send_request(options)
1050
+ end
978
1051
 
979
- # @api private
980
- attr_reader :identifier
1052
+ # Validates the specified pipeline definition to ensure that it is well
1053
+ # formed and can be run without error.
1054
+ #
1055
+ # @option params [required, String] :pipeline_id
1056
+ # The ID of the pipeline.
1057
+ #
1058
+ # @option params [required, Array<Types::PipelineObject>] :pipeline_objects
1059
+ # The objects that define the pipeline changes to validate against the
1060
+ # pipeline.
1061
+ #
1062
+ # @option params [Array<Types::ParameterObject>] :parameter_objects
1063
+ # The parameter objects used with the pipeline.
1064
+ #
1065
+ # @option params [Array<Types::ParameterValue>] :parameter_values
1066
+ # The parameter values used with the pipeline.
1067
+ #
1068
+ # @return [Types::ValidatePipelineDefinitionOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1069
+ #
1070
+ # * {Types::ValidatePipelineDefinitionOutput#validation_errors #validation_errors} => Array&lt;Types::ValidationError&gt;
1071
+ # * {Types::ValidatePipelineDefinitionOutput#validation_warnings #validation_warnings} => Array&lt;Types::ValidationWarning&gt;
1072
+ # * {Types::ValidatePipelineDefinitionOutput#errored #errored} => Boolean
1073
+ #
1074
+ # @example Request syntax with placeholder values
1075
+ #
1076
+ # resp = client.validate_pipeline_definition({
1077
+ # pipeline_id: "id", # required
1078
+ # pipeline_objects: [ # required
1079
+ # {
1080
+ # id: "id", # required
1081
+ # name: "id", # required
1082
+ # fields: [ # required
1083
+ # {
1084
+ # key: "fieldNameString", # required
1085
+ # string_value: "fieldStringValue",
1086
+ # ref_value: "fieldNameString",
1087
+ # },
1088
+ # ],
1089
+ # },
1090
+ # ],
1091
+ # parameter_objects: [
1092
+ # {
1093
+ # id: "fieldNameString", # required
1094
+ # attributes: [ # required
1095
+ # {
1096
+ # key: "attributeNameString", # required
1097
+ # string_value: "attributeValueString", # required
1098
+ # },
1099
+ # ],
1100
+ # },
1101
+ # ],
1102
+ # parameter_values: [
1103
+ # {
1104
+ # id: "fieldNameString", # required
1105
+ # string_value: "fieldStringValue", # required
1106
+ # },
1107
+ # ],
1108
+ # })
1109
+ #
1110
+ # @example Response structure
1111
+ #
1112
+ # resp.validation_errors #=> Array
1113
+ # resp.validation_errors[0].id #=> String
1114
+ # resp.validation_errors[0].errors #=> Array
1115
+ # resp.validation_errors[0].errors[0] #=> String
1116
+ # resp.validation_warnings #=> Array
1117
+ # resp.validation_warnings[0].id #=> String
1118
+ # resp.validation_warnings[0].warnings #=> Array
1119
+ # resp.validation_warnings[0].warnings[0] #=> String
1120
+ # resp.errored #=> Boolean
1121
+ #
1122
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datapipeline-2012-10-29/ValidatePipelineDefinition AWS API Documentation
1123
+ #
1124
+ # @overload validate_pipeline_definition(params = {})
1125
+ # @param [Hash] params ({})
1126
+ def validate_pipeline_definition(params = {}, options = {})
1127
+ req = build_request(:validate_pipeline_definition, params)
1128
+ req.send_request(options)
1129
+ end
981
1130
 
982
- # @api private
983
- def errors_module
984
- Errors
985
- end
1131
+ # @!endgroup
986
1132
 
1133
+ # @param params ({})
1134
+ # @api private
1135
+ def build_request(operation_name, params = {})
1136
+ handlers = @handlers.for(operation_name)
1137
+ context = Seahorse::Client::RequestContext.new(
1138
+ operation_name: operation_name,
1139
+ operation: config.api.operation(operation_name),
1140
+ client: self,
1141
+ params: params,
1142
+ config: config)
1143
+ context[:gem_name] = 'aws-sdk-datapipeline'
1144
+ context[:gem_version] = '1.0.0.rc2'
1145
+ Seahorse::Client::Request.new(handlers, context)
1146
+ end
1147
+
1148
+ # @api private
1149
+ # @deprecated
1150
+ def waiter_names
1151
+ []
1152
+ end
1153
+
1154
+ class << self
1155
+
1156
+ # @api private
1157
+ attr_reader :identifier
1158
+
1159
+ # @api private
1160
+ def errors_module
1161
+ Errors
987
1162
  end
1163
+
988
1164
  end
989
1165
  end
990
1166
  end