aws-sdk-codepipeline 1.0.0.rc1

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,7 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing for info on making contributions:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
@@ -0,0 +1,23 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing for info on making contributions:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws
9
+ module CodePipeline
10
+ module Errors
11
+
12
+ extend Aws::Errors::DynamicErrors
13
+
14
+ # Raised when calling #load or #data on a resource class that can not be
15
+ # loaded. This can happen when:
16
+ #
17
+ # * A resource class has identifiers, but no data attributes.
18
+ # * Resource data is only available when making an API call that
19
+ # enumerates all resources of that type.
20
+ class ResourceNotLoadable < RuntimeError; end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,25 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing for info on making contributions:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws
9
+ module CodePipeline
10
+ class Resource
11
+
12
+ # @param options ({})
13
+ # @option options [Client] :client
14
+ def initialize(options = {})
15
+ @client = options[:client] || Client.new(options)
16
+ end
17
+
18
+ # @return [Client]
19
+ def client
20
+ @client
21
+ end
22
+
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,2425 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing for info on making contributions:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/master/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws
9
+ module CodePipeline
10
+ module Types
11
+
12
+ # Represents an AWS session credentials object. These credentials are
13
+ # temporary credentials that are issued by AWS Secure Token Service
14
+ # (STS). They can be used to access input and output artifacts in the
15
+ # Amazon S3 bucket used to store artifact for the pipeline in AWS
16
+ # CodePipeline.
17
+ # @!attribute [rw] access_key_id
18
+ # The access key for the session.
19
+ # @return [String]
20
+ #
21
+ # @!attribute [rw] secret_access_key
22
+ # The secret access key for the session.
23
+ # @return [String]
24
+ #
25
+ # @!attribute [rw] session_token
26
+ # The token for the session.
27
+ # @return [String]
28
+ class AWSSessionCredentials < Struct.new(
29
+ :access_key_id,
30
+ :secret_access_key,
31
+ :session_token)
32
+ include Aws::Structure
33
+ end
34
+
35
+ # Represents the input of an acknowledge job action.
36
+ # @note When making an API call, pass AcknowledgeJobInput
37
+ # data as a hash:
38
+ #
39
+ # {
40
+ # job_id: "JobId", # required
41
+ # nonce: "Nonce", # required
42
+ # }
43
+ # @!attribute [rw] job_id
44
+ # The unique system-generated ID of the job for which you want to
45
+ # confirm receipt.
46
+ # @return [String]
47
+ #
48
+ # @!attribute [rw] nonce
49
+ # A system-generated random number that AWS CodePipeline uses to
50
+ # ensure that the job is being worked on by only one job worker. This
51
+ # number must be returned in the response.
52
+ # @return [String]
53
+ class AcknowledgeJobInput < Struct.new(
54
+ :job_id,
55
+ :nonce)
56
+ include Aws::Structure
57
+ end
58
+
59
+ # Represents the output of an acknowledge job action.
60
+ # @!attribute [rw] status
61
+ # Whether the job worker has received the specified job.
62
+ # @return [String]
63
+ class AcknowledgeJobOutput < Struct.new(
64
+ :status)
65
+ include Aws::Structure
66
+ end
67
+
68
+ # Represents the input of an acknowledge third party job action.
69
+ # @note When making an API call, pass AcknowledgeThirdPartyJobInput
70
+ # data as a hash:
71
+ #
72
+ # {
73
+ # job_id: "ThirdPartyJobId", # required
74
+ # nonce: "Nonce", # required
75
+ # client_token: "ClientToken", # required
76
+ # }
77
+ # @!attribute [rw] job_id
78
+ # The unique system-generated ID of the job.
79
+ # @return [String]
80
+ #
81
+ # @!attribute [rw] nonce
82
+ # A system-generated random number that AWS CodePipeline uses to
83
+ # ensure that the job is being worked on by only one job worker. This
84
+ # number must be returned in the response.
85
+ # @return [String]
86
+ #
87
+ # @!attribute [rw] client_token
88
+ # The clientToken portion of the clientId and clientToken pair used to
89
+ # verify that the calling entity is allowed access to the job and its
90
+ # details.
91
+ # @return [String]
92
+ class AcknowledgeThirdPartyJobInput < Struct.new(
93
+ :job_id,
94
+ :nonce,
95
+ :client_token)
96
+ include Aws::Structure
97
+ end
98
+
99
+ # Represents the output of an acknowledge third party job action.
100
+ # @!attribute [rw] status
101
+ # The status information for the third party job, if any.
102
+ # @return [String]
103
+ class AcknowledgeThirdPartyJobOutput < Struct.new(
104
+ :status)
105
+ include Aws::Structure
106
+ end
107
+
108
+ # Represents information about an action configuration.
109
+ # @!attribute [rw] configuration
110
+ # The configuration data for the action.
111
+ # @return [Hash<String,String>]
112
+ class ActionConfiguration < Struct.new(
113
+ :configuration)
114
+ include Aws::Structure
115
+ end
116
+
117
+ # Represents information about an action configuration property.
118
+ # @note When making an API call, pass ActionConfigurationProperty
119
+ # data as a hash:
120
+ #
121
+ # {
122
+ # name: "ActionConfigurationKey", # required
123
+ # required: false, # required
124
+ # key: false, # required
125
+ # secret: false, # required
126
+ # queryable: false,
127
+ # description: "Description",
128
+ # type: "String", # accepts String, Number, Boolean
129
+ # }
130
+ # @!attribute [rw] name
131
+ # The name of the action configuration property.
132
+ # @return [String]
133
+ #
134
+ # @!attribute [rw] required
135
+ # Whether the configuration property is a required value.
136
+ # @return [Boolean]
137
+ #
138
+ # @!attribute [rw] key
139
+ # Whether the configuration property is a key.
140
+ # @return [Boolean]
141
+ #
142
+ # @!attribute [rw] secret
143
+ # Whether the configuration property is secret. Secrets are hidden
144
+ # from all calls except for GetJobDetails, GetThirdPartyJobDetails,
145
+ # PollForJobs, and PollForThirdPartyJobs.
146
+ #
147
+ # When updating a pipeline, passing * * * * * without changing
148
+ # any other values of the action will preserve the prior value of the
149
+ # secret.
150
+ # @return [Boolean]
151
+ #
152
+ # @!attribute [rw] queryable
153
+ # Indicates that the proprety will be used in conjunction with
154
+ # PollForJobs. When creating a custom action, an action can have up to
155
+ # one queryable property. If it has one, that property must be both
156
+ # required and not secret.
157
+ #
158
+ # If you create a pipeline with a custom action type, and that custom
159
+ # action contains a queryable property, the value for that
160
+ # configuration property is subject to additional restrictions. The
161
+ # value must be less than or equal to twenty (20) characters. The
162
+ # value can contain only alphanumeric characters, underscores, and
163
+ # hyphens.
164
+ # @return [Boolean]
165
+ #
166
+ # @!attribute [rw] description
167
+ # The description of the action configuration property that will be
168
+ # displayed to users.
169
+ # @return [String]
170
+ #
171
+ # @!attribute [rw] type
172
+ # The type of the configuration property.
173
+ # @return [String]
174
+ class ActionConfigurationProperty < Struct.new(
175
+ :name,
176
+ :required,
177
+ :key,
178
+ :secret,
179
+ :queryable,
180
+ :description,
181
+ :type)
182
+ include Aws::Structure
183
+ end
184
+
185
+ # Represents the context of an action within the stage of a pipeline to
186
+ # a job worker.
187
+ # @!attribute [rw] name
188
+ # The name of the action within the context of a job.
189
+ # @return [String]
190
+ class ActionContext < Struct.new(
191
+ :name)
192
+ include Aws::Structure
193
+ end
194
+
195
+ # Represents information about an action declaration.
196
+ # @note When making an API call, pass ActionDeclaration
197
+ # data as a hash:
198
+ #
199
+ # {
200
+ # name: "ActionName", # required
201
+ # action_type_id: { # required
202
+ # category: "Source", # required, accepts Source, Build, Deploy, Test, Invoke, Approval
203
+ # owner: "AWS", # required, accepts AWS, ThirdParty, Custom
204
+ # provider: "ActionProvider", # required
205
+ # version: "Version", # required
206
+ # },
207
+ # run_order: 1,
208
+ # configuration: {
209
+ # "ActionConfigurationKey" => "ActionConfigurationValue",
210
+ # },
211
+ # output_artifacts: [
212
+ # {
213
+ # name: "ArtifactName", # required
214
+ # },
215
+ # ],
216
+ # input_artifacts: [
217
+ # {
218
+ # name: "ArtifactName", # required
219
+ # },
220
+ # ],
221
+ # role_arn: "RoleArn",
222
+ # }
223
+ # @!attribute [rw] name
224
+ # The action declaration's name.
225
+ # @return [String]
226
+ #
227
+ # @!attribute [rw] action_type_id
228
+ # The configuration information for the action type.
229
+ # @return [Types::ActionTypeId]
230
+ #
231
+ # @!attribute [rw] run_order
232
+ # The order in which actions are run.
233
+ # @return [Integer]
234
+ #
235
+ # @!attribute [rw] configuration
236
+ # The action declaration's configuration.
237
+ # @return [Hash<String,String>]
238
+ #
239
+ # @!attribute [rw] output_artifacts
240
+ # The name or ID of the result of the action declaration, such as a
241
+ # test or build artifact.
242
+ # @return [Array<Types::OutputArtifact>]
243
+ #
244
+ # @!attribute [rw] input_artifacts
245
+ # The name or ID of the artifact consumed by the action, such as a
246
+ # test or build artifact.
247
+ # @return [Array<Types::InputArtifact>]
248
+ #
249
+ # @!attribute [rw] role_arn
250
+ # The ARN of the IAM service role that will perform the declared
251
+ # action. This is assumed through the roleArn for the pipeline.
252
+ # @return [String]
253
+ class ActionDeclaration < Struct.new(
254
+ :name,
255
+ :action_type_id,
256
+ :run_order,
257
+ :configuration,
258
+ :output_artifacts,
259
+ :input_artifacts,
260
+ :role_arn)
261
+ include Aws::Structure
262
+ end
263
+
264
+ # Represents information about the run of an action.
265
+ # @!attribute [rw] status
266
+ # The status of the action, or for a completed action, the last status
267
+ # of the action.
268
+ # @return [String]
269
+ #
270
+ # @!attribute [rw] summary
271
+ # A summary of the run of the action.
272
+ # @return [String]
273
+ #
274
+ # @!attribute [rw] last_status_change
275
+ # The last status change of the action.
276
+ # @return [Time]
277
+ #
278
+ # @!attribute [rw] token
279
+ # The system-generated token used to identify a unique approval
280
+ # request. The token for each open approval request can be obtained
281
+ # using the GetPipelineState command and is used to validate that the
282
+ # approval request corresponding to this token is still valid.
283
+ # @return [String]
284
+ #
285
+ # @!attribute [rw] last_updated_by
286
+ # The ARN of the user who last changed the pipeline.
287
+ # @return [String]
288
+ #
289
+ # @!attribute [rw] external_execution_id
290
+ # The external ID of the run of the action.
291
+ # @return [String]
292
+ #
293
+ # @!attribute [rw] external_execution_url
294
+ # The URL of a resource external to AWS that will be used when running
295
+ # the action, for example an external repository URL.
296
+ # @return [String]
297
+ #
298
+ # @!attribute [rw] percent_complete
299
+ # A percentage of completeness of the action as it runs.
300
+ # @return [Integer]
301
+ #
302
+ # @!attribute [rw] error_details
303
+ # The details of an error returned by a URL external to AWS.
304
+ # @return [Types::ErrorDetails]
305
+ class ActionExecution < Struct.new(
306
+ :status,
307
+ :summary,
308
+ :last_status_change,
309
+ :token,
310
+ :last_updated_by,
311
+ :external_execution_id,
312
+ :external_execution_url,
313
+ :percent_complete,
314
+ :error_details)
315
+ include Aws::Structure
316
+ end
317
+
318
+ # Represents information about the version (or revision) of an action.
319
+ # @note When making an API call, pass ActionRevision
320
+ # data as a hash:
321
+ #
322
+ # {
323
+ # revision_id: "Revision", # required
324
+ # revision_change_id: "RevisionChangeIdentifier", # required
325
+ # created: Time.now, # required
326
+ # }
327
+ # @!attribute [rw] revision_id
328
+ # The system-generated unique ID that identifies the revision number
329
+ # of the action.
330
+ # @return [String]
331
+ #
332
+ # @!attribute [rw] revision_change_id
333
+ # The unique identifier of the change that set the state to this
334
+ # revision, for example a deployment ID or timestamp.
335
+ # @return [String]
336
+ #
337
+ # @!attribute [rw] created
338
+ # The date and time when the most recent version of the action was
339
+ # created, in timestamp format.
340
+ # @return [Time]
341
+ class ActionRevision < Struct.new(
342
+ :revision_id,
343
+ :revision_change_id,
344
+ :created)
345
+ include Aws::Structure
346
+ end
347
+
348
+ # Represents information about the state of an action.
349
+ # @!attribute [rw] action_name
350
+ # The name of the action.
351
+ # @return [String]
352
+ #
353
+ # @!attribute [rw] current_revision
354
+ # Represents information about the version (or revision) of an action.
355
+ # @return [Types::ActionRevision]
356
+ #
357
+ # @!attribute [rw] latest_execution
358
+ # Represents information about the run of an action.
359
+ # @return [Types::ActionExecution]
360
+ #
361
+ # @!attribute [rw] entity_url
362
+ # A URL link for more information about the state of the action, such
363
+ # as a deployment group details page.
364
+ # @return [String]
365
+ #
366
+ # @!attribute [rw] revision_url
367
+ # A URL link for more information about the revision, such as a commit
368
+ # details page.
369
+ # @return [String]
370
+ class ActionState < Struct.new(
371
+ :action_name,
372
+ :current_revision,
373
+ :latest_execution,
374
+ :entity_url,
375
+ :revision_url)
376
+ include Aws::Structure
377
+ end
378
+
379
+ # Returns information about the details of an action type.
380
+ # @!attribute [rw] id
381
+ # Represents information about an action type.
382
+ # @return [Types::ActionTypeId]
383
+ #
384
+ # @!attribute [rw] settings
385
+ # The settings for the action type.
386
+ # @return [Types::ActionTypeSettings]
387
+ #
388
+ # @!attribute [rw] action_configuration_properties
389
+ # The configuration properties for the action type.
390
+ # @return [Array<Types::ActionConfigurationProperty>]
391
+ #
392
+ # @!attribute [rw] input_artifact_details
393
+ # The details of the input artifact for the action, such as its commit
394
+ # ID.
395
+ # @return [Types::ArtifactDetails]
396
+ #
397
+ # @!attribute [rw] output_artifact_details
398
+ # The details of the output artifact of the action, such as its commit
399
+ # ID.
400
+ # @return [Types::ArtifactDetails]
401
+ class ActionType < Struct.new(
402
+ :id,
403
+ :settings,
404
+ :action_configuration_properties,
405
+ :input_artifact_details,
406
+ :output_artifact_details)
407
+ include Aws::Structure
408
+ end
409
+
410
+ # Represents information about an action type.
411
+ # @note When making an API call, pass ActionTypeId
412
+ # data as a hash:
413
+ #
414
+ # {
415
+ # category: "Source", # required, accepts Source, Build, Deploy, Test, Invoke, Approval
416
+ # owner: "AWS", # required, accepts AWS, ThirdParty, Custom
417
+ # provider: "ActionProvider", # required
418
+ # version: "Version", # required
419
+ # }
420
+ # @!attribute [rw] category
421
+ # A category defines what kind of action can be taken in the stage,
422
+ # and constrains the provider type for the action. Valid categories
423
+ # are limited to one of the values below.
424
+ # @return [String]
425
+ #
426
+ # @!attribute [rw] owner
427
+ # The creator of the action being called.
428
+ # @return [String]
429
+ #
430
+ # @!attribute [rw] provider
431
+ # The provider of the service being called by the action. Valid
432
+ # providers are determined by the action category. For example, an
433
+ # action in the Deploy category type might have a provider of AWS
434
+ # CodeDeploy, which would be specified as CodeDeploy.
435
+ # @return [String]
436
+ #
437
+ # @!attribute [rw] version
438
+ # A string that identifies the action type.
439
+ # @return [String]
440
+ class ActionTypeId < Struct.new(
441
+ :category,
442
+ :owner,
443
+ :provider,
444
+ :version)
445
+ include Aws::Structure
446
+ end
447
+
448
+ # Returns information about the settings for an action type.
449
+ # @note When making an API call, pass ActionTypeSettings
450
+ # data as a hash:
451
+ #
452
+ # {
453
+ # third_party_configuration_url: "Url",
454
+ # entity_url_template: "UrlTemplate",
455
+ # execution_url_template: "UrlTemplate",
456
+ # revision_url_template: "UrlTemplate",
457
+ # }
458
+ # @!attribute [rw] third_party_configuration_url
459
+ # The URL of a sign-up page where users can sign up for an external
460
+ # service and perform initial configuration of the action provided by
461
+ # that service.
462
+ # @return [String]
463
+ #
464
+ # @!attribute [rw] entity_url_template
465
+ # The URL returned to the AWS CodePipeline console that provides a
466
+ # deep link to the resources of the external system, such as the
467
+ # configuration page for an AWS CodeDeploy deployment group. This link
468
+ # is provided as part of the action display within the pipeline.
469
+ # @return [String]
470
+ #
471
+ # @!attribute [rw] execution_url_template
472
+ # The URL returned to the AWS CodePipeline console that contains a
473
+ # link to the top-level landing page for the external system, such as
474
+ # console page for AWS CodeDeploy. This link is shown on the pipeline
475
+ # view page in the AWS CodePipeline console and provides a link to the
476
+ # execution entity of the external action.
477
+ # @return [String]
478
+ #
479
+ # @!attribute [rw] revision_url_template
480
+ # The URL returned to the AWS CodePipeline console that contains a
481
+ # link to the page where customers can update or change the
482
+ # configuration of the external action.
483
+ # @return [String]
484
+ class ActionTypeSettings < Struct.new(
485
+ :third_party_configuration_url,
486
+ :entity_url_template,
487
+ :execution_url_template,
488
+ :revision_url_template)
489
+ include Aws::Structure
490
+ end
491
+
492
+ # Represents information about the result of an approval request.
493
+ # @note When making an API call, pass ApprovalResult
494
+ # data as a hash:
495
+ #
496
+ # {
497
+ # summary: "ApprovalSummary", # required
498
+ # status: "Approved", # required, accepts Approved, Rejected
499
+ # }
500
+ # @!attribute [rw] summary
501
+ # The summary of the current status of the approval request.
502
+ # @return [String]
503
+ #
504
+ # @!attribute [rw] status
505
+ # The response submitted by a reviewer assigned to an approval action
506
+ # request.
507
+ # @return [String]
508
+ class ApprovalResult < Struct.new(
509
+ :summary,
510
+ :status)
511
+ include Aws::Structure
512
+ end
513
+
514
+ # Represents information about an artifact that will be worked upon by
515
+ # actions in the pipeline.
516
+ # @!attribute [rw] name
517
+ # The artifact's name.
518
+ # @return [String]
519
+ #
520
+ # @!attribute [rw] revision
521
+ # The artifact's revision ID. Depending on the type of object, this
522
+ # could be a commit ID (GitHub) or a revision ID (Amazon S3).
523
+ # @return [String]
524
+ #
525
+ # @!attribute [rw] location
526
+ # The location of an artifact.
527
+ # @return [Types::ArtifactLocation]
528
+ class Artifact < Struct.new(
529
+ :name,
530
+ :revision,
531
+ :location)
532
+ include Aws::Structure
533
+ end
534
+
535
+ # Returns information about the details of an artifact.
536
+ # @note When making an API call, pass ArtifactDetails
537
+ # data as a hash:
538
+ #
539
+ # {
540
+ # minimum_count: 1, # required
541
+ # maximum_count: 1, # required
542
+ # }
543
+ # @!attribute [rw] minimum_count
544
+ # The minimum number of artifacts allowed for the action type.
545
+ # @return [Integer]
546
+ #
547
+ # @!attribute [rw] maximum_count
548
+ # The maximum number of artifacts allowed for the action type.
549
+ # @return [Integer]
550
+ class ArtifactDetails < Struct.new(
551
+ :minimum_count,
552
+ :maximum_count)
553
+ include Aws::Structure
554
+ end
555
+
556
+ # Represents information about the location of an artifact.
557
+ # @!attribute [rw] type
558
+ # The type of artifact in the location.
559
+ # @return [String]
560
+ #
561
+ # @!attribute [rw] s3_location
562
+ # The Amazon S3 bucket that contains the artifact.
563
+ # @return [Types::S3ArtifactLocation]
564
+ class ArtifactLocation < Struct.new(
565
+ :type,
566
+ :s3_location)
567
+ include Aws::Structure
568
+ end
569
+
570
+ # Represents revision details of an artifact.
571
+ # @!attribute [rw] name
572
+ # The name of an artifact. This name might be system-generated, such
573
+ # as "MyApp", or might be defined by the user when an action is
574
+ # created.
575
+ # @return [String]
576
+ #
577
+ # @!attribute [rw] revision_id
578
+ # The revision ID of the artifact.
579
+ # @return [String]
580
+ #
581
+ # @!attribute [rw] revision_change_identifier
582
+ # An additional identifier for a revision, such as a commit date or,
583
+ # for artifacts stored in Amazon S3 buckets, the ETag value.
584
+ # @return [String]
585
+ #
586
+ # @!attribute [rw] revision_summary
587
+ # Summary information about the most recent revision of the artifact.
588
+ # For GitHub and AWS CodeCommit repositories, the commit message. For
589
+ # Amazon S3 buckets or actions, the user-provided content of a
590
+ # `codepipeline-artifact-revision-summary` key specified in the object
591
+ # metadata.
592
+ # @return [String]
593
+ #
594
+ # @!attribute [rw] created
595
+ # The date and time when the most recent revision of the artifact was
596
+ # created, in timestamp format.
597
+ # @return [Time]
598
+ #
599
+ # @!attribute [rw] revision_url
600
+ # The commit ID for the artifact revision. For artifacts stored in
601
+ # GitHub or AWS CodeCommit repositories, the commit ID is linked to a
602
+ # commit details page.
603
+ # @return [String]
604
+ class ArtifactRevision < Struct.new(
605
+ :name,
606
+ :revision_id,
607
+ :revision_change_identifier,
608
+ :revision_summary,
609
+ :created,
610
+ :revision_url)
611
+ include Aws::Structure
612
+ end
613
+
614
+ # The Amazon S3 location where artifacts are stored for the pipeline. If
615
+ # this Amazon S3 bucket is created manually, it must meet the
616
+ # requirements for AWS CodePipeline. For more information, see the
617
+ # [Concepts][1].
618
+ #
619
+ #
620
+ #
621
+ # [1]: http://docs.aws.amazon.com/codepipeline/latest/userguide/concepts.html#CPS3Bucket
622
+ # @note When making an API call, pass ArtifactStore
623
+ # data as a hash:
624
+ #
625
+ # {
626
+ # type: "S3", # required, accepts S3
627
+ # location: "ArtifactStoreLocation", # required
628
+ # encryption_key: {
629
+ # id: "EncryptionKeyId", # required
630
+ # type: "KMS", # required, accepts KMS
631
+ # },
632
+ # }
633
+ # @!attribute [rw] type
634
+ # The type of the artifact store, such as S3.
635
+ # @return [String]
636
+ #
637
+ # @!attribute [rw] location
638
+ # The location for storing the artifacts for a pipeline, such as an S3
639
+ # bucket or folder.
640
+ # @return [String]
641
+ #
642
+ # @!attribute [rw] encryption_key
643
+ # The encryption key used to encrypt the data in the artifact store,
644
+ # such as an AWS Key Management Service (AWS KMS) key. If this is
645
+ # undefined, the default key for Amazon S3 is used.
646
+ # @return [Types::EncryptionKey]
647
+ class ArtifactStore < Struct.new(
648
+ :type,
649
+ :location,
650
+ :encryption_key)
651
+ include Aws::Structure
652
+ end
653
+
654
+ # Reserved for future use.
655
+ # @note When making an API call, pass BlockerDeclaration
656
+ # data as a hash:
657
+ #
658
+ # {
659
+ # name: "BlockerName", # required
660
+ # type: "Schedule", # required, accepts Schedule
661
+ # }
662
+ # @!attribute [rw] name
663
+ # Reserved for future use.
664
+ # @return [String]
665
+ #
666
+ # @!attribute [rw] type
667
+ # Reserved for future use.
668
+ # @return [String]
669
+ class BlockerDeclaration < Struct.new(
670
+ :name,
671
+ :type)
672
+ include Aws::Structure
673
+ end
674
+
675
+ # Represents the input of a create custom action operation.
676
+ # @note When making an API call, pass CreateCustomActionTypeInput
677
+ # data as a hash:
678
+ #
679
+ # {
680
+ # category: "Source", # required, accepts Source, Build, Deploy, Test, Invoke, Approval
681
+ # provider: "ActionProvider", # required
682
+ # version: "Version", # required
683
+ # settings: {
684
+ # third_party_configuration_url: "Url",
685
+ # entity_url_template: "UrlTemplate",
686
+ # execution_url_template: "UrlTemplate",
687
+ # revision_url_template: "UrlTemplate",
688
+ # },
689
+ # configuration_properties: [
690
+ # {
691
+ # name: "ActionConfigurationKey", # required
692
+ # required: false, # required
693
+ # key: false, # required
694
+ # secret: false, # required
695
+ # queryable: false,
696
+ # description: "Description",
697
+ # type: "String", # accepts String, Number, Boolean
698
+ # },
699
+ # ],
700
+ # input_artifact_details: { # required
701
+ # minimum_count: 1, # required
702
+ # maximum_count: 1, # required
703
+ # },
704
+ # output_artifact_details: { # required
705
+ # minimum_count: 1, # required
706
+ # maximum_count: 1, # required
707
+ # },
708
+ # }
709
+ # @!attribute [rw] category
710
+ # The category of the custom action, such as a build action or a test
711
+ # action.
712
+ #
713
+ # <note markdown="1"> Although Source and Approval are listed as valid values, they are
714
+ # not currently functional. These values are reserved for future use.
715
+ #
716
+ # </note>
717
+ # @return [String]
718
+ #
719
+ # @!attribute [rw] provider
720
+ # The provider of the service used in the custom action, such as AWS
721
+ # CodeDeploy.
722
+ # @return [String]
723
+ #
724
+ # @!attribute [rw] version
725
+ # The version identifier of the custom action.
726
+ # @return [String]
727
+ #
728
+ # @!attribute [rw] settings
729
+ # Returns information about the settings for an action type.
730
+ # @return [Types::ActionTypeSettings]
731
+ #
732
+ # @!attribute [rw] configuration_properties
733
+ # The configuration properties for the custom action.
734
+ #
735
+ # <note markdown="1"> You can refer to a name in the configuration properties of the
736
+ # custom action within the URL templates by following the format of
737
+ # \\\{Config:name\\}, as long as the configuration property is both
738
+ # required and not secret. For more information, see [Create a Custom
739
+ # Action for a Pipeline][1].
740
+ #
741
+ # </note>
742
+ #
743
+ #
744
+ #
745
+ # [1]: http://docs.aws.amazon.com/codepipeline/latest/userguide/how-to-create-custom-action.html
746
+ # @return [Array<Types::ActionConfigurationProperty>]
747
+ #
748
+ # @!attribute [rw] input_artifact_details
749
+ # Returns information about the details of an artifact.
750
+ # @return [Types::ArtifactDetails]
751
+ #
752
+ # @!attribute [rw] output_artifact_details
753
+ # Returns information about the details of an artifact.
754
+ # @return [Types::ArtifactDetails]
755
+ class CreateCustomActionTypeInput < Struct.new(
756
+ :category,
757
+ :provider,
758
+ :version,
759
+ :settings,
760
+ :configuration_properties,
761
+ :input_artifact_details,
762
+ :output_artifact_details)
763
+ include Aws::Structure
764
+ end
765
+
766
+ # Represents the output of a create custom action operation.
767
+ # @!attribute [rw] action_type
768
+ # Returns information about the details of an action type.
769
+ # @return [Types::ActionType]
770
+ class CreateCustomActionTypeOutput < Struct.new(
771
+ :action_type)
772
+ include Aws::Structure
773
+ end
774
+
775
+ # Represents the input of a create pipeline action.
776
+ # @note When making an API call, pass CreatePipelineInput
777
+ # data as a hash:
778
+ #
779
+ # {
780
+ # pipeline: { # required
781
+ # name: "PipelineName", # required
782
+ # role_arn: "RoleArn", # required
783
+ # artifact_store: { # required
784
+ # type: "S3", # required, accepts S3
785
+ # location: "ArtifactStoreLocation", # required
786
+ # encryption_key: {
787
+ # id: "EncryptionKeyId", # required
788
+ # type: "KMS", # required, accepts KMS
789
+ # },
790
+ # },
791
+ # stages: [ # required
792
+ # {
793
+ # name: "StageName", # required
794
+ # blockers: [
795
+ # {
796
+ # name: "BlockerName", # required
797
+ # type: "Schedule", # required, accepts Schedule
798
+ # },
799
+ # ],
800
+ # actions: [ # required
801
+ # {
802
+ # name: "ActionName", # required
803
+ # action_type_id: { # required
804
+ # category: "Source", # required, accepts Source, Build, Deploy, Test, Invoke, Approval
805
+ # owner: "AWS", # required, accepts AWS, ThirdParty, Custom
806
+ # provider: "ActionProvider", # required
807
+ # version: "Version", # required
808
+ # },
809
+ # run_order: 1,
810
+ # configuration: {
811
+ # "ActionConfigurationKey" => "ActionConfigurationValue",
812
+ # },
813
+ # output_artifacts: [
814
+ # {
815
+ # name: "ArtifactName", # required
816
+ # },
817
+ # ],
818
+ # input_artifacts: [
819
+ # {
820
+ # name: "ArtifactName", # required
821
+ # },
822
+ # ],
823
+ # role_arn: "RoleArn",
824
+ # },
825
+ # ],
826
+ # },
827
+ # ],
828
+ # version: 1,
829
+ # },
830
+ # }
831
+ # @!attribute [rw] pipeline
832
+ # Represents the structure of actions and stages to be performed in
833
+ # the pipeline.
834
+ # @return [Types::PipelineDeclaration]
835
+ class CreatePipelineInput < Struct.new(
836
+ :pipeline)
837
+ include Aws::Structure
838
+ end
839
+
840
+ # Represents the output of a create pipeline action.
841
+ # @!attribute [rw] pipeline
842
+ # Represents the structure of actions and stages to be performed in
843
+ # the pipeline.
844
+ # @return [Types::PipelineDeclaration]
845
+ class CreatePipelineOutput < Struct.new(
846
+ :pipeline)
847
+ include Aws::Structure
848
+ end
849
+
850
+ # Represents information about a current revision.
851
+ # @note When making an API call, pass CurrentRevision
852
+ # data as a hash:
853
+ #
854
+ # {
855
+ # revision: "Revision", # required
856
+ # change_identifier: "RevisionChangeIdentifier", # required
857
+ # created: Time.now,
858
+ # revision_summary: "RevisionSummary",
859
+ # }
860
+ # @!attribute [rw] revision
861
+ # The revision ID of the current version of an artifact.
862
+ # @return [String]
863
+ #
864
+ # @!attribute [rw] change_identifier
865
+ # The change identifier for the current revision.
866
+ # @return [String]
867
+ #
868
+ # @!attribute [rw] created
869
+ # The date and time when the most recent revision of the artifact was
870
+ # created, in timestamp format.
871
+ # @return [Time]
872
+ #
873
+ # @!attribute [rw] revision_summary
874
+ # The summary of the most recent revision of the artifact.
875
+ # @return [String]
876
+ class CurrentRevision < Struct.new(
877
+ :revision,
878
+ :change_identifier,
879
+ :created,
880
+ :revision_summary)
881
+ include Aws::Structure
882
+ end
883
+
884
+ # Represents the input of a delete custom action operation. The custom
885
+ # action will be marked as deleted.
886
+ # @note When making an API call, pass DeleteCustomActionTypeInput
887
+ # data as a hash:
888
+ #
889
+ # {
890
+ # category: "Source", # required, accepts Source, Build, Deploy, Test, Invoke, Approval
891
+ # provider: "ActionProvider", # required
892
+ # version: "Version", # required
893
+ # }
894
+ # @!attribute [rw] category
895
+ # The category of the custom action that you want to delete, such as
896
+ # source or deploy.
897
+ # @return [String]
898
+ #
899
+ # @!attribute [rw] provider
900
+ # The provider of the service used in the custom action, such as AWS
901
+ # CodeDeploy.
902
+ # @return [String]
903
+ #
904
+ # @!attribute [rw] version
905
+ # The version of the custom action to delete.
906
+ # @return [String]
907
+ class DeleteCustomActionTypeInput < Struct.new(
908
+ :category,
909
+ :provider,
910
+ :version)
911
+ include Aws::Structure
912
+ end
913
+
914
+ # Represents the input of a delete pipeline action.
915
+ # @note When making an API call, pass DeletePipelineInput
916
+ # data as a hash:
917
+ #
918
+ # {
919
+ # name: "PipelineName", # required
920
+ # }
921
+ # @!attribute [rw] name
922
+ # The name of the pipeline to be deleted.
923
+ # @return [String]
924
+ class DeletePipelineInput < Struct.new(
925
+ :name)
926
+ include Aws::Structure
927
+ end
928
+
929
+ # Represents the input of a disable stage transition input action.
930
+ # @note When making an API call, pass DisableStageTransitionInput
931
+ # data as a hash:
932
+ #
933
+ # {
934
+ # pipeline_name: "PipelineName", # required
935
+ # stage_name: "StageName", # required
936
+ # transition_type: "Inbound", # required, accepts Inbound, Outbound
937
+ # reason: "DisabledReason", # required
938
+ # }
939
+ # @!attribute [rw] pipeline_name
940
+ # The name of the pipeline in which you want to disable the flow of
941
+ # artifacts from one stage to another.
942
+ # @return [String]
943
+ #
944
+ # @!attribute [rw] stage_name
945
+ # The name of the stage where you want to disable the inbound or
946
+ # outbound transition of artifacts.
947
+ # @return [String]
948
+ #
949
+ # @!attribute [rw] transition_type
950
+ # Specifies whether artifacts will be prevented from transitioning
951
+ # into the stage and being processed by the actions in that stage
952
+ # (inbound), or prevented from transitioning from the stage after they
953
+ # have been processed by the actions in that stage (outbound).
954
+ # @return [String]
955
+ #
956
+ # @!attribute [rw] reason
957
+ # The reason given to the user why a stage is disabled, such as
958
+ # waiting for manual approval or manual tests. This message is
959
+ # displayed in the pipeline console UI.
960
+ # @return [String]
961
+ class DisableStageTransitionInput < Struct.new(
962
+ :pipeline_name,
963
+ :stage_name,
964
+ :transition_type,
965
+ :reason)
966
+ include Aws::Structure
967
+ end
968
+
969
+ # Represents the input of an enable stage transition action.
970
+ # @note When making an API call, pass EnableStageTransitionInput
971
+ # data as a hash:
972
+ #
973
+ # {
974
+ # pipeline_name: "PipelineName", # required
975
+ # stage_name: "StageName", # required
976
+ # transition_type: "Inbound", # required, accepts Inbound, Outbound
977
+ # }
978
+ # @!attribute [rw] pipeline_name
979
+ # The name of the pipeline in which you want to enable the flow of
980
+ # artifacts from one stage to another.
981
+ # @return [String]
982
+ #
983
+ # @!attribute [rw] stage_name
984
+ # The name of the stage where you want to enable the transition of
985
+ # artifacts, either into the stage (inbound) or from that stage to the
986
+ # next stage (outbound).
987
+ # @return [String]
988
+ #
989
+ # @!attribute [rw] transition_type
990
+ # Specifies whether artifacts will be allowed to enter the stage and
991
+ # be processed by the actions in that stage (inbound) or whether
992
+ # already-processed artifacts will be allowed to transition to the
993
+ # next stage (outbound).
994
+ # @return [String]
995
+ class EnableStageTransitionInput < Struct.new(
996
+ :pipeline_name,
997
+ :stage_name,
998
+ :transition_type)
999
+ include Aws::Structure
1000
+ end
1001
+
1002
+ # Represents information about the key used to encrypt data in the
1003
+ # artifact store, such as an AWS Key Management Service (AWS KMS) key.
1004
+ # @note When making an API call, pass EncryptionKey
1005
+ # data as a hash:
1006
+ #
1007
+ # {
1008
+ # id: "EncryptionKeyId", # required
1009
+ # type: "KMS", # required, accepts KMS
1010
+ # }
1011
+ # @!attribute [rw] id
1012
+ # The ID used to identify the key. For an AWS KMS key, this is the key
1013
+ # ID or key ARN.
1014
+ # @return [String]
1015
+ #
1016
+ # @!attribute [rw] type
1017
+ # The type of encryption key, such as an AWS Key Management Service
1018
+ # (AWS KMS) key. When creating or updating a pipeline, the value must
1019
+ # be set to 'KMS'.
1020
+ # @return [String]
1021
+ class EncryptionKey < Struct.new(
1022
+ :id,
1023
+ :type)
1024
+ include Aws::Structure
1025
+ end
1026
+
1027
+ # Represents information about an error in AWS CodePipeline.
1028
+ # @!attribute [rw] code
1029
+ # The system ID or error number code of the error.
1030
+ # @return [String]
1031
+ #
1032
+ # @!attribute [rw] message
1033
+ # The text of the error message.
1034
+ # @return [String]
1035
+ class ErrorDetails < Struct.new(
1036
+ :code,
1037
+ :message)
1038
+ include Aws::Structure
1039
+ end
1040
+
1041
+ # The details of the actions taken and results produced on an artifact
1042
+ # as it passes through stages in the pipeline.
1043
+ # @note When making an API call, pass ExecutionDetails
1044
+ # data as a hash:
1045
+ #
1046
+ # {
1047
+ # summary: "ExecutionSummary",
1048
+ # external_execution_id: "ExecutionId",
1049
+ # percent_complete: 1,
1050
+ # }
1051
+ # @!attribute [rw] summary
1052
+ # The summary of the current status of the actions.
1053
+ # @return [String]
1054
+ #
1055
+ # @!attribute [rw] external_execution_id
1056
+ # The system-generated unique ID of this action used to identify this
1057
+ # job worker in any external systems, such as AWS CodeDeploy.
1058
+ # @return [String]
1059
+ #
1060
+ # @!attribute [rw] percent_complete
1061
+ # The percentage of work completed on the action, represented on a
1062
+ # scale of zero to one hundred percent.
1063
+ # @return [Integer]
1064
+ class ExecutionDetails < Struct.new(
1065
+ :summary,
1066
+ :external_execution_id,
1067
+ :percent_complete)
1068
+ include Aws::Structure
1069
+ end
1070
+
1071
+ # Represents information about failure details.
1072
+ # @note When making an API call, pass FailureDetails
1073
+ # data as a hash:
1074
+ #
1075
+ # {
1076
+ # type: "JobFailed", # required, accepts JobFailed, ConfigurationError, PermissionError, RevisionOutOfSync, RevisionUnavailable, SystemUnavailable
1077
+ # message: "Message", # required
1078
+ # external_execution_id: "ExecutionId",
1079
+ # }
1080
+ # @!attribute [rw] type
1081
+ # The type of the failure.
1082
+ # @return [String]
1083
+ #
1084
+ # @!attribute [rw] message
1085
+ # The message about the failure.
1086
+ # @return [String]
1087
+ #
1088
+ # @!attribute [rw] external_execution_id
1089
+ # The external ID of the run of the action that failed.
1090
+ # @return [String]
1091
+ class FailureDetails < Struct.new(
1092
+ :type,
1093
+ :message,
1094
+ :external_execution_id)
1095
+ include Aws::Structure
1096
+ end
1097
+
1098
+ # Represents the input of a get job details action.
1099
+ # @note When making an API call, pass GetJobDetailsInput
1100
+ # data as a hash:
1101
+ #
1102
+ # {
1103
+ # job_id: "JobId", # required
1104
+ # }
1105
+ # @!attribute [rw] job_id
1106
+ # The unique system-generated ID for the job.
1107
+ # @return [String]
1108
+ class GetJobDetailsInput < Struct.new(
1109
+ :job_id)
1110
+ include Aws::Structure
1111
+ end
1112
+
1113
+ # Represents the output of a get job details action.
1114
+ # @!attribute [rw] job_details
1115
+ # The details of the job.
1116
+ #
1117
+ # <note markdown="1"> If AWSSessionCredentials is used, a long-running job can call
1118
+ # GetJobDetails again to obtain new credentials.
1119
+ #
1120
+ # </note>
1121
+ # @return [Types::JobDetails]
1122
+ class GetJobDetailsOutput < Struct.new(
1123
+ :job_details)
1124
+ include Aws::Structure
1125
+ end
1126
+
1127
+ # Represents the input of a get pipeline execution action.
1128
+ # @note When making an API call, pass GetPipelineExecutionInput
1129
+ # data as a hash:
1130
+ #
1131
+ # {
1132
+ # pipeline_name: "PipelineName", # required
1133
+ # pipeline_execution_id: "PipelineExecutionId", # required
1134
+ # }
1135
+ # @!attribute [rw] pipeline_name
1136
+ # The name of the pipeline about which you want to get execution
1137
+ # details.
1138
+ # @return [String]
1139
+ #
1140
+ # @!attribute [rw] pipeline_execution_id
1141
+ # The ID of the pipeline execution about which you want to get
1142
+ # execution details.
1143
+ # @return [String]
1144
+ class GetPipelineExecutionInput < Struct.new(
1145
+ :pipeline_name,
1146
+ :pipeline_execution_id)
1147
+ include Aws::Structure
1148
+ end
1149
+
1150
+ # Represents the output of a get pipeline execution action.
1151
+ # @!attribute [rw] pipeline_execution
1152
+ # Represents information about the execution of a pipeline.
1153
+ # @return [Types::PipelineExecution]
1154
+ class GetPipelineExecutionOutput < Struct.new(
1155
+ :pipeline_execution)
1156
+ include Aws::Structure
1157
+ end
1158
+
1159
+ # Represents the input of a get pipeline action.
1160
+ # @note When making an API call, pass GetPipelineInput
1161
+ # data as a hash:
1162
+ #
1163
+ # {
1164
+ # name: "PipelineName", # required
1165
+ # version: 1,
1166
+ # }
1167
+ # @!attribute [rw] name
1168
+ # The name of the pipeline for which you want to get information.
1169
+ # Pipeline names must be unique under an Amazon Web Services (AWS)
1170
+ # user account.
1171
+ # @return [String]
1172
+ #
1173
+ # @!attribute [rw] version
1174
+ # The version number of the pipeline. If you do not specify a version,
1175
+ # defaults to the most current version.
1176
+ # @return [Integer]
1177
+ class GetPipelineInput < Struct.new(
1178
+ :name,
1179
+ :version)
1180
+ include Aws::Structure
1181
+ end
1182
+
1183
+ # Represents the output of a get pipeline action.
1184
+ # @!attribute [rw] pipeline
1185
+ # Represents the structure of actions and stages to be performed in
1186
+ # the pipeline.
1187
+ # @return [Types::PipelineDeclaration]
1188
+ class GetPipelineOutput < Struct.new(
1189
+ :pipeline)
1190
+ include Aws::Structure
1191
+ end
1192
+
1193
+ # Represents the input of a get pipeline state action.
1194
+ # @note When making an API call, pass GetPipelineStateInput
1195
+ # data as a hash:
1196
+ #
1197
+ # {
1198
+ # name: "PipelineName", # required
1199
+ # }
1200
+ # @!attribute [rw] name
1201
+ # The name of the pipeline about which you want to get information.
1202
+ # @return [String]
1203
+ class GetPipelineStateInput < Struct.new(
1204
+ :name)
1205
+ include Aws::Structure
1206
+ end
1207
+
1208
+ # Represents the output of a get pipeline state action.
1209
+ # @!attribute [rw] pipeline_name
1210
+ # The name of the pipeline for which you want to get the state.
1211
+ # @return [String]
1212
+ #
1213
+ # @!attribute [rw] pipeline_version
1214
+ # The version number of the pipeline.
1215
+ #
1216
+ # <note markdown="1"> A newly-created pipeline is always assigned a version number of `1`.
1217
+ #
1218
+ # </note>
1219
+ # @return [Integer]
1220
+ #
1221
+ # @!attribute [rw] stage_states
1222
+ # A list of the pipeline stage output information, including stage
1223
+ # name, state, most recent run details, whether the stage is disabled,
1224
+ # and other data.
1225
+ # @return [Array<Types::StageState>]
1226
+ #
1227
+ # @!attribute [rw] created
1228
+ # The date and time the pipeline was created, in timestamp format.
1229
+ # @return [Time]
1230
+ #
1231
+ # @!attribute [rw] updated
1232
+ # The date and time the pipeline was last updated, in timestamp
1233
+ # format.
1234
+ # @return [Time]
1235
+ class GetPipelineStateOutput < Struct.new(
1236
+ :pipeline_name,
1237
+ :pipeline_version,
1238
+ :stage_states,
1239
+ :created,
1240
+ :updated)
1241
+ include Aws::Structure
1242
+ end
1243
+
1244
+ # Represents the input of a get third party job details action.
1245
+ # @note When making an API call, pass GetThirdPartyJobDetailsInput
1246
+ # data as a hash:
1247
+ #
1248
+ # {
1249
+ # job_id: "ThirdPartyJobId", # required
1250
+ # client_token: "ClientToken", # required
1251
+ # }
1252
+ # @!attribute [rw] job_id
1253
+ # The unique system-generated ID used for identifying the job.
1254
+ # @return [String]
1255
+ #
1256
+ # @!attribute [rw] client_token
1257
+ # The clientToken portion of the clientId and clientToken pair used to
1258
+ # verify that the calling entity is allowed access to the job and its
1259
+ # details.
1260
+ # @return [String]
1261
+ class GetThirdPartyJobDetailsInput < Struct.new(
1262
+ :job_id,
1263
+ :client_token)
1264
+ include Aws::Structure
1265
+ end
1266
+
1267
+ # Represents the output of a get third party job details action.
1268
+ # @!attribute [rw] job_details
1269
+ # The details of the job, including any protected values defined for
1270
+ # the job.
1271
+ # @return [Types::ThirdPartyJobDetails]
1272
+ class GetThirdPartyJobDetailsOutput < Struct.new(
1273
+ :job_details)
1274
+ include Aws::Structure
1275
+ end
1276
+
1277
+ # Represents information about an artifact to be worked on, such as a
1278
+ # test or build artifact.
1279
+ # @note When making an API call, pass InputArtifact
1280
+ # data as a hash:
1281
+ #
1282
+ # {
1283
+ # name: "ArtifactName", # required
1284
+ # }
1285
+ # @!attribute [rw] name
1286
+ # The name of the artifact to be worked on, for example, "My App".
1287
+ #
1288
+ # The input artifact of an action must exactly match the output
1289
+ # artifact declared in a preceding action, but the input artifact does
1290
+ # not have to be the next action in strict sequence from the action
1291
+ # that provided the output artifact. Actions in parallel can declare
1292
+ # different output artifacts, which are in turn consumed by different
1293
+ # following actions.
1294
+ # @return [String]
1295
+ class InputArtifact < Struct.new(
1296
+ :name)
1297
+ include Aws::Structure
1298
+ end
1299
+
1300
+ # Represents information about a job.
1301
+ # @!attribute [rw] id
1302
+ # The unique system-generated ID of the job.
1303
+ # @return [String]
1304
+ #
1305
+ # @!attribute [rw] data
1306
+ # Additional data about a job.
1307
+ # @return [Types::JobData]
1308
+ #
1309
+ # @!attribute [rw] nonce
1310
+ # A system-generated random number that AWS CodePipeline uses to
1311
+ # ensure that the job is being worked on by only one job worker. This
1312
+ # number must be returned in the response.
1313
+ # @return [String]
1314
+ #
1315
+ # @!attribute [rw] account_id
1316
+ # The ID of the AWS account to use when performing the job.
1317
+ # @return [String]
1318
+ class Job < Struct.new(
1319
+ :id,
1320
+ :data,
1321
+ :nonce,
1322
+ :account_id)
1323
+ include Aws::Structure
1324
+ end
1325
+
1326
+ # Represents additional information about a job required for a job
1327
+ # worker to complete the job.
1328
+ # @!attribute [rw] action_type_id
1329
+ # Represents information about an action type.
1330
+ # @return [Types::ActionTypeId]
1331
+ #
1332
+ # @!attribute [rw] action_configuration
1333
+ # Represents information about an action configuration.
1334
+ # @return [Types::ActionConfiguration]
1335
+ #
1336
+ # @!attribute [rw] pipeline_context
1337
+ # Represents information about a pipeline to a job worker.
1338
+ # @return [Types::PipelineContext]
1339
+ #
1340
+ # @!attribute [rw] input_artifacts
1341
+ # The artifact supplied to the job.
1342
+ # @return [Array<Types::Artifact>]
1343
+ #
1344
+ # @!attribute [rw] output_artifacts
1345
+ # The output of the job.
1346
+ # @return [Array<Types::Artifact>]
1347
+ #
1348
+ # @!attribute [rw] artifact_credentials
1349
+ # Represents an AWS session credentials object. These credentials are
1350
+ # temporary credentials that are issued by AWS Secure Token Service
1351
+ # (STS). They can be used to access input and output artifacts in the
1352
+ # Amazon S3 bucket used to store artifact for the pipeline in AWS
1353
+ # CodePipeline.
1354
+ # @return [Types::AWSSessionCredentials]
1355
+ #
1356
+ # @!attribute [rw] continuation_token
1357
+ # A system-generated token, such as a AWS CodeDeploy deployment ID,
1358
+ # that a job requires in order to continue the job asynchronously.
1359
+ # @return [String]
1360
+ #
1361
+ # @!attribute [rw] encryption_key
1362
+ # Represents information about the key used to encrypt data in the
1363
+ # artifact store, such as an AWS Key Management Service (AWS KMS) key.
1364
+ # @return [Types::EncryptionKey]
1365
+ class JobData < Struct.new(
1366
+ :action_type_id,
1367
+ :action_configuration,
1368
+ :pipeline_context,
1369
+ :input_artifacts,
1370
+ :output_artifacts,
1371
+ :artifact_credentials,
1372
+ :continuation_token,
1373
+ :encryption_key)
1374
+ include Aws::Structure
1375
+ end
1376
+
1377
+ # Represents information about the details of a job.
1378
+ # @!attribute [rw] id
1379
+ # The unique system-generated ID of the job.
1380
+ # @return [String]
1381
+ #
1382
+ # @!attribute [rw] data
1383
+ # Represents additional information about a job required for a job
1384
+ # worker to complete the job.
1385
+ # @return [Types::JobData]
1386
+ #
1387
+ # @!attribute [rw] account_id
1388
+ # The AWS account ID associated with the job.
1389
+ # @return [String]
1390
+ class JobDetails < Struct.new(
1391
+ :id,
1392
+ :data,
1393
+ :account_id)
1394
+ include Aws::Structure
1395
+ end
1396
+
1397
+ # Represents the input of a list action types action.
1398
+ # @note When making an API call, pass ListActionTypesInput
1399
+ # data as a hash:
1400
+ #
1401
+ # {
1402
+ # action_owner_filter: "AWS", # accepts AWS, ThirdParty, Custom
1403
+ # next_token: "NextToken",
1404
+ # }
1405
+ # @!attribute [rw] action_owner_filter
1406
+ # Filters the list of action types to those created by a specified
1407
+ # entity.
1408
+ # @return [String]
1409
+ #
1410
+ # @!attribute [rw] next_token
1411
+ # An identifier that was returned from the previous list action types
1412
+ # call, which can be used to return the next set of action types in
1413
+ # the list.
1414
+ # @return [String]
1415
+ class ListActionTypesInput < Struct.new(
1416
+ :action_owner_filter,
1417
+ :next_token)
1418
+ include Aws::Structure
1419
+ end
1420
+
1421
+ # Represents the output of a list action types action.
1422
+ # @!attribute [rw] action_types
1423
+ # Provides details of the action types.
1424
+ # @return [Array<Types::ActionType>]
1425
+ #
1426
+ # @!attribute [rw] next_token
1427
+ # If the amount of returned information is significantly large, an
1428
+ # identifier is also returned which can be used in a subsequent list
1429
+ # action types call to return the next set of action types in the
1430
+ # list.
1431
+ # @return [String]
1432
+ class ListActionTypesOutput < Struct.new(
1433
+ :action_types,
1434
+ :next_token)
1435
+ include Aws::Structure
1436
+ end
1437
+
1438
+ # Represents the input of a list pipelines action.
1439
+ # @note When making an API call, pass ListPipelinesInput
1440
+ # data as a hash:
1441
+ #
1442
+ # {
1443
+ # next_token: "NextToken",
1444
+ # }
1445
+ # @!attribute [rw] next_token
1446
+ # An identifier that was returned from the previous list pipelines
1447
+ # call, which can be used to return the next set of pipelines in the
1448
+ # list.
1449
+ # @return [String]
1450
+ class ListPipelinesInput < Struct.new(
1451
+ :next_token)
1452
+ include Aws::Structure
1453
+ end
1454
+
1455
+ # Represents the output of a list pipelines action.
1456
+ # @!attribute [rw] pipelines
1457
+ # The list of pipelines.
1458
+ # @return [Array<Types::PipelineSummary>]
1459
+ #
1460
+ # @!attribute [rw] next_token
1461
+ # If the amount of returned information is significantly large, an
1462
+ # identifier is also returned which can be used in a subsequent list
1463
+ # pipelines call to return the next set of pipelines in the list.
1464
+ # @return [String]
1465
+ class ListPipelinesOutput < Struct.new(
1466
+ :pipelines,
1467
+ :next_token)
1468
+ include Aws::Structure
1469
+ end
1470
+
1471
+ # Represents information about the output of an action.
1472
+ # @note When making an API call, pass OutputArtifact
1473
+ # data as a hash:
1474
+ #
1475
+ # {
1476
+ # name: "ArtifactName", # required
1477
+ # }
1478
+ # @!attribute [rw] name
1479
+ # The name of the output of an artifact, such as "My App".
1480
+ #
1481
+ # The input artifact of an action must exactly match the output
1482
+ # artifact declared in a preceding action, but the input artifact does
1483
+ # not have to be the next action in strict sequence from the action
1484
+ # that provided the output artifact. Actions in parallel can declare
1485
+ # different output artifacts, which are in turn consumed by different
1486
+ # following actions.
1487
+ #
1488
+ # Output artifact names must be unique within a pipeline.
1489
+ # @return [String]
1490
+ class OutputArtifact < Struct.new(
1491
+ :name)
1492
+ include Aws::Structure
1493
+ end
1494
+
1495
+ # Represents information about a pipeline to a job worker.
1496
+ # @!attribute [rw] pipeline_name
1497
+ # The name of the pipeline. This is a user-specified value. Pipeline
1498
+ # names must be unique across all pipeline names under an Amazon Web
1499
+ # Services account.
1500
+ # @return [String]
1501
+ #
1502
+ # @!attribute [rw] stage
1503
+ # The stage of the pipeline.
1504
+ # @return [Types::StageContext]
1505
+ #
1506
+ # @!attribute [rw] action
1507
+ # Represents the context of an action within the stage of a pipeline
1508
+ # to a job worker.
1509
+ # @return [Types::ActionContext]
1510
+ class PipelineContext < Struct.new(
1511
+ :pipeline_name,
1512
+ :stage,
1513
+ :action)
1514
+ include Aws::Structure
1515
+ end
1516
+
1517
+ # Represents the structure of actions and stages to be performed in the
1518
+ # pipeline.
1519
+ # @note When making an API call, pass PipelineDeclaration
1520
+ # data as a hash:
1521
+ #
1522
+ # {
1523
+ # name: "PipelineName", # required
1524
+ # role_arn: "RoleArn", # required
1525
+ # artifact_store: { # required
1526
+ # type: "S3", # required, accepts S3
1527
+ # location: "ArtifactStoreLocation", # required
1528
+ # encryption_key: {
1529
+ # id: "EncryptionKeyId", # required
1530
+ # type: "KMS", # required, accepts KMS
1531
+ # },
1532
+ # },
1533
+ # stages: [ # required
1534
+ # {
1535
+ # name: "StageName", # required
1536
+ # blockers: [
1537
+ # {
1538
+ # name: "BlockerName", # required
1539
+ # type: "Schedule", # required, accepts Schedule
1540
+ # },
1541
+ # ],
1542
+ # actions: [ # required
1543
+ # {
1544
+ # name: "ActionName", # required
1545
+ # action_type_id: { # required
1546
+ # category: "Source", # required, accepts Source, Build, Deploy, Test, Invoke, Approval
1547
+ # owner: "AWS", # required, accepts AWS, ThirdParty, Custom
1548
+ # provider: "ActionProvider", # required
1549
+ # version: "Version", # required
1550
+ # },
1551
+ # run_order: 1,
1552
+ # configuration: {
1553
+ # "ActionConfigurationKey" => "ActionConfigurationValue",
1554
+ # },
1555
+ # output_artifacts: [
1556
+ # {
1557
+ # name: "ArtifactName", # required
1558
+ # },
1559
+ # ],
1560
+ # input_artifacts: [
1561
+ # {
1562
+ # name: "ArtifactName", # required
1563
+ # },
1564
+ # ],
1565
+ # role_arn: "RoleArn",
1566
+ # },
1567
+ # ],
1568
+ # },
1569
+ # ],
1570
+ # version: 1,
1571
+ # }
1572
+ # @!attribute [rw] name
1573
+ # The name of the action to be performed.
1574
+ # @return [String]
1575
+ #
1576
+ # @!attribute [rw] role_arn
1577
+ # The Amazon Resource Name (ARN) for AWS CodePipeline to use to either
1578
+ # perform actions with no actionRoleArn, or to use to assume roles for
1579
+ # actions with an actionRoleArn.
1580
+ # @return [String]
1581
+ #
1582
+ # @!attribute [rw] artifact_store
1583
+ # The Amazon S3 location where artifacts are stored for the pipeline.
1584
+ # If this Amazon S3 bucket is created manually, it must meet the
1585
+ # requirements for AWS CodePipeline. For more information, see the
1586
+ # [Concepts][1].
1587
+ #
1588
+ #
1589
+ #
1590
+ # [1]: http://docs.aws.amazon.com/codepipeline/latest/userguide/concepts.html#CPS3Bucket
1591
+ # @return [Types::ArtifactStore]
1592
+ #
1593
+ # @!attribute [rw] stages
1594
+ # The stage in which to perform the action.
1595
+ # @return [Array<Types::StageDeclaration>]
1596
+ #
1597
+ # @!attribute [rw] version
1598
+ # The version number of the pipeline. A new pipeline always has a
1599
+ # version number of 1. This number is automatically incremented when a
1600
+ # pipeline is updated.
1601
+ # @return [Integer]
1602
+ class PipelineDeclaration < Struct.new(
1603
+ :name,
1604
+ :role_arn,
1605
+ :artifact_store,
1606
+ :stages,
1607
+ :version)
1608
+ include Aws::Structure
1609
+ end
1610
+
1611
+ # Represents information about an execution of a pipeline.
1612
+ # @!attribute [rw] pipeline_name
1613
+ # The name of the pipeline that was executed.
1614
+ # @return [String]
1615
+ #
1616
+ # @!attribute [rw] pipeline_version
1617
+ # The version number of the pipeline that was executed.
1618
+ # @return [Integer]
1619
+ #
1620
+ # @!attribute [rw] pipeline_execution_id
1621
+ # The ID of the pipeline execution.
1622
+ # @return [String]
1623
+ #
1624
+ # @!attribute [rw] status
1625
+ # The status of the pipeline execution.
1626
+ #
1627
+ # * InProgress: The pipeline execution is currently running.
1628
+ #
1629
+ # * Succeeded: The pipeline execution completed successfully.
1630
+ #
1631
+ # * Superseded: While this pipeline execution was waiting for the next
1632
+ # stage to be completed, a newer pipeline execution caught up and
1633
+ # continued through the pipeline instead.
1634
+ #
1635
+ # * Failed: The pipeline did not complete successfully.
1636
+ # @return [String]
1637
+ #
1638
+ # @!attribute [rw] artifact_revisions
1639
+ # A list of ArtifactRevision objects included in a pipeline execution.
1640
+ # @return [Array<Types::ArtifactRevision>]
1641
+ class PipelineExecution < Struct.new(
1642
+ :pipeline_name,
1643
+ :pipeline_version,
1644
+ :pipeline_execution_id,
1645
+ :status,
1646
+ :artifact_revisions)
1647
+ include Aws::Structure
1648
+ end
1649
+
1650
+ # Returns a summary of a pipeline.
1651
+ # @!attribute [rw] name
1652
+ # The name of the pipeline.
1653
+ # @return [String]
1654
+ #
1655
+ # @!attribute [rw] version
1656
+ # The version number of the pipeline.
1657
+ # @return [Integer]
1658
+ #
1659
+ # @!attribute [rw] created
1660
+ # The date and time the pipeline was created, in timestamp format.
1661
+ # @return [Time]
1662
+ #
1663
+ # @!attribute [rw] updated
1664
+ # The date and time of the last update to the pipeline, in timestamp
1665
+ # format.
1666
+ # @return [Time]
1667
+ class PipelineSummary < Struct.new(
1668
+ :name,
1669
+ :version,
1670
+ :created,
1671
+ :updated)
1672
+ include Aws::Structure
1673
+ end
1674
+
1675
+ # Represents the input of a poll for jobs action.
1676
+ # @note When making an API call, pass PollForJobsInput
1677
+ # data as a hash:
1678
+ #
1679
+ # {
1680
+ # action_type_id: { # required
1681
+ # category: "Source", # required, accepts Source, Build, Deploy, Test, Invoke, Approval
1682
+ # owner: "AWS", # required, accepts AWS, ThirdParty, Custom
1683
+ # provider: "ActionProvider", # required
1684
+ # version: "Version", # required
1685
+ # },
1686
+ # max_batch_size: 1,
1687
+ # query_param: {
1688
+ # "ActionConfigurationKey" => "ActionConfigurationQueryableValue",
1689
+ # },
1690
+ # }
1691
+ # @!attribute [rw] action_type_id
1692
+ # Represents information about an action type.
1693
+ # @return [Types::ActionTypeId]
1694
+ #
1695
+ # @!attribute [rw] max_batch_size
1696
+ # The maximum number of jobs to return in a poll for jobs call.
1697
+ # @return [Integer]
1698
+ #
1699
+ # @!attribute [rw] query_param
1700
+ # A map of property names and values. For an action type with no
1701
+ # queryable properties, this value must be null or an empty map. For
1702
+ # an action type with a queryable property, you must supply that
1703
+ # property as a key in the map. Only jobs whose action configuration
1704
+ # matches the mapped value will be returned.
1705
+ # @return [Hash<String,String>]
1706
+ class PollForJobsInput < Struct.new(
1707
+ :action_type_id,
1708
+ :max_batch_size,
1709
+ :query_param)
1710
+ include Aws::Structure
1711
+ end
1712
+
1713
+ # Represents the output of a poll for jobs action.
1714
+ # @!attribute [rw] jobs
1715
+ # Information about the jobs to take action on.
1716
+ # @return [Array<Types::Job>]
1717
+ class PollForJobsOutput < Struct.new(
1718
+ :jobs)
1719
+ include Aws::Structure
1720
+ end
1721
+
1722
+ # Represents the input of a poll for third party jobs action.
1723
+ # @note When making an API call, pass PollForThirdPartyJobsInput
1724
+ # data as a hash:
1725
+ #
1726
+ # {
1727
+ # action_type_id: { # required
1728
+ # category: "Source", # required, accepts Source, Build, Deploy, Test, Invoke, Approval
1729
+ # owner: "AWS", # required, accepts AWS, ThirdParty, Custom
1730
+ # provider: "ActionProvider", # required
1731
+ # version: "Version", # required
1732
+ # },
1733
+ # max_batch_size: 1,
1734
+ # }
1735
+ # @!attribute [rw] action_type_id
1736
+ # Represents information about an action type.
1737
+ # @return [Types::ActionTypeId]
1738
+ #
1739
+ # @!attribute [rw] max_batch_size
1740
+ # The maximum number of jobs to return in a poll for jobs call.
1741
+ # @return [Integer]
1742
+ class PollForThirdPartyJobsInput < Struct.new(
1743
+ :action_type_id,
1744
+ :max_batch_size)
1745
+ include Aws::Structure
1746
+ end
1747
+
1748
+ # Represents the output of a poll for third party jobs action.
1749
+ # @!attribute [rw] jobs
1750
+ # Information about the jobs to take action on.
1751
+ # @return [Array<Types::ThirdPartyJob>]
1752
+ class PollForThirdPartyJobsOutput < Struct.new(
1753
+ :jobs)
1754
+ include Aws::Structure
1755
+ end
1756
+
1757
+ # Represents the input of a put action revision action.
1758
+ # @note When making an API call, pass PutActionRevisionInput
1759
+ # data as a hash:
1760
+ #
1761
+ # {
1762
+ # pipeline_name: "PipelineName", # required
1763
+ # stage_name: "StageName", # required
1764
+ # action_name: "ActionName", # required
1765
+ # action_revision: { # required
1766
+ # revision_id: "Revision", # required
1767
+ # revision_change_id: "RevisionChangeIdentifier", # required
1768
+ # created: Time.now, # required
1769
+ # },
1770
+ # }
1771
+ # @!attribute [rw] pipeline_name
1772
+ # The name of the pipeline that will start processing the revision to
1773
+ # the source.
1774
+ # @return [String]
1775
+ #
1776
+ # @!attribute [rw] stage_name
1777
+ # The name of the stage that contains the action that will act upon
1778
+ # the revision.
1779
+ # @return [String]
1780
+ #
1781
+ # @!attribute [rw] action_name
1782
+ # The name of the action that will process the revision.
1783
+ # @return [String]
1784
+ #
1785
+ # @!attribute [rw] action_revision
1786
+ # Represents information about the version (or revision) of an action.
1787
+ # @return [Types::ActionRevision]
1788
+ class PutActionRevisionInput < Struct.new(
1789
+ :pipeline_name,
1790
+ :stage_name,
1791
+ :action_name,
1792
+ :action_revision)
1793
+ include Aws::Structure
1794
+ end
1795
+
1796
+ # Represents the output of a put action revision action.
1797
+ # @!attribute [rw] new_revision
1798
+ # Indicates whether the artifact revision was previously used in an
1799
+ # execution of the specified pipeline.
1800
+ # @return [Boolean]
1801
+ #
1802
+ # @!attribute [rw] pipeline_execution_id
1803
+ # The ID of the current workflow state of the pipeline.
1804
+ # @return [String]
1805
+ class PutActionRevisionOutput < Struct.new(
1806
+ :new_revision,
1807
+ :pipeline_execution_id)
1808
+ include Aws::Structure
1809
+ end
1810
+
1811
+ # Represents the input of a put approval result action.
1812
+ # @note When making an API call, pass PutApprovalResultInput
1813
+ # data as a hash:
1814
+ #
1815
+ # {
1816
+ # pipeline_name: "PipelineName", # required
1817
+ # stage_name: "StageName", # required
1818
+ # action_name: "ActionName", # required
1819
+ # result: { # required
1820
+ # summary: "ApprovalSummary", # required
1821
+ # status: "Approved", # required, accepts Approved, Rejected
1822
+ # },
1823
+ # token: "ApprovalToken", # required
1824
+ # }
1825
+ # @!attribute [rw] pipeline_name
1826
+ # The name of the pipeline that contains the action.
1827
+ # @return [String]
1828
+ #
1829
+ # @!attribute [rw] stage_name
1830
+ # The name of the stage that contains the action.
1831
+ # @return [String]
1832
+ #
1833
+ # @!attribute [rw] action_name
1834
+ # The name of the action for which approval is requested.
1835
+ # @return [String]
1836
+ #
1837
+ # @!attribute [rw] result
1838
+ # Represents information about the result of the approval request.
1839
+ # @return [Types::ApprovalResult]
1840
+ #
1841
+ # @!attribute [rw] token
1842
+ # The system-generated token used to identify a unique approval
1843
+ # request. The token for each open approval request can be obtained
1844
+ # using the GetPipelineState action and is used to validate that the
1845
+ # approval request corresponding to this token is still valid.
1846
+ # @return [String]
1847
+ class PutApprovalResultInput < Struct.new(
1848
+ :pipeline_name,
1849
+ :stage_name,
1850
+ :action_name,
1851
+ :result,
1852
+ :token)
1853
+ include Aws::Structure
1854
+ end
1855
+
1856
+ # Represents the output of a put approval result action.
1857
+ # @!attribute [rw] approved_at
1858
+ # The timestamp showing when the approval or rejection was submitted.
1859
+ # @return [Time]
1860
+ class PutApprovalResultOutput < Struct.new(
1861
+ :approved_at)
1862
+ include Aws::Structure
1863
+ end
1864
+
1865
+ # Represents the input of a put job failure result action.
1866
+ # @note When making an API call, pass PutJobFailureResultInput
1867
+ # data as a hash:
1868
+ #
1869
+ # {
1870
+ # job_id: "JobId", # required
1871
+ # failure_details: { # required
1872
+ # type: "JobFailed", # required, accepts JobFailed, ConfigurationError, PermissionError, RevisionOutOfSync, RevisionUnavailable, SystemUnavailable
1873
+ # message: "Message", # required
1874
+ # external_execution_id: "ExecutionId",
1875
+ # },
1876
+ # }
1877
+ # @!attribute [rw] job_id
1878
+ # The unique system-generated ID of the job that failed. This is the
1879
+ # same ID returned from PollForJobs.
1880
+ # @return [String]
1881
+ #
1882
+ # @!attribute [rw] failure_details
1883
+ # The details about the failure of a job.
1884
+ # @return [Types::FailureDetails]
1885
+ class PutJobFailureResultInput < Struct.new(
1886
+ :job_id,
1887
+ :failure_details)
1888
+ include Aws::Structure
1889
+ end
1890
+
1891
+ # Represents the input of a put job success result action.
1892
+ # @note When making an API call, pass PutJobSuccessResultInput
1893
+ # data as a hash:
1894
+ #
1895
+ # {
1896
+ # job_id: "JobId", # required
1897
+ # current_revision: {
1898
+ # revision: "Revision", # required
1899
+ # change_identifier: "RevisionChangeIdentifier", # required
1900
+ # created: Time.now,
1901
+ # revision_summary: "RevisionSummary",
1902
+ # },
1903
+ # continuation_token: "ContinuationToken",
1904
+ # execution_details: {
1905
+ # summary: "ExecutionSummary",
1906
+ # external_execution_id: "ExecutionId",
1907
+ # percent_complete: 1,
1908
+ # },
1909
+ # }
1910
+ # @!attribute [rw] job_id
1911
+ # The unique system-generated ID of the job that succeeded. This is
1912
+ # the same ID returned from PollForJobs.
1913
+ # @return [String]
1914
+ #
1915
+ # @!attribute [rw] current_revision
1916
+ # The ID of the current revision of the artifact successfully worked
1917
+ # upon by the job.
1918
+ # @return [Types::CurrentRevision]
1919
+ #
1920
+ # @!attribute [rw] continuation_token
1921
+ # A token generated by a job worker, such as an AWS CodeDeploy
1922
+ # deployment ID, that a successful job provides to identify a custom
1923
+ # action in progress. Future jobs will use this token in order to
1924
+ # identify the running instance of the action. It can be reused to
1925
+ # return additional information about the progress of the custom
1926
+ # action. When the action is complete, no continuation token should be
1927
+ # supplied.
1928
+ # @return [String]
1929
+ #
1930
+ # @!attribute [rw] execution_details
1931
+ # The execution details of the successful job, such as the actions
1932
+ # taken by the job worker.
1933
+ # @return [Types::ExecutionDetails]
1934
+ class PutJobSuccessResultInput < Struct.new(
1935
+ :job_id,
1936
+ :current_revision,
1937
+ :continuation_token,
1938
+ :execution_details)
1939
+ include Aws::Structure
1940
+ end
1941
+
1942
+ # Represents the input of a third party job failure result action.
1943
+ # @note When making an API call, pass PutThirdPartyJobFailureResultInput
1944
+ # data as a hash:
1945
+ #
1946
+ # {
1947
+ # job_id: "ThirdPartyJobId", # required
1948
+ # client_token: "ClientToken", # required
1949
+ # failure_details: { # required
1950
+ # type: "JobFailed", # required, accepts JobFailed, ConfigurationError, PermissionError, RevisionOutOfSync, RevisionUnavailable, SystemUnavailable
1951
+ # message: "Message", # required
1952
+ # external_execution_id: "ExecutionId",
1953
+ # },
1954
+ # }
1955
+ # @!attribute [rw] job_id
1956
+ # The ID of the job that failed. This is the same ID returned from
1957
+ # PollForThirdPartyJobs.
1958
+ # @return [String]
1959
+ #
1960
+ # @!attribute [rw] client_token
1961
+ # The clientToken portion of the clientId and clientToken pair used to
1962
+ # verify that the calling entity is allowed access to the job and its
1963
+ # details.
1964
+ # @return [String]
1965
+ #
1966
+ # @!attribute [rw] failure_details
1967
+ # Represents information about failure details.
1968
+ # @return [Types::FailureDetails]
1969
+ class PutThirdPartyJobFailureResultInput < Struct.new(
1970
+ :job_id,
1971
+ :client_token,
1972
+ :failure_details)
1973
+ include Aws::Structure
1974
+ end
1975
+
1976
+ # Represents the input of a put third party job success result action.
1977
+ # @note When making an API call, pass PutThirdPartyJobSuccessResultInput
1978
+ # data as a hash:
1979
+ #
1980
+ # {
1981
+ # job_id: "ThirdPartyJobId", # required
1982
+ # client_token: "ClientToken", # required
1983
+ # current_revision: {
1984
+ # revision: "Revision", # required
1985
+ # change_identifier: "RevisionChangeIdentifier", # required
1986
+ # created: Time.now,
1987
+ # revision_summary: "RevisionSummary",
1988
+ # },
1989
+ # continuation_token: "ContinuationToken",
1990
+ # execution_details: {
1991
+ # summary: "ExecutionSummary",
1992
+ # external_execution_id: "ExecutionId",
1993
+ # percent_complete: 1,
1994
+ # },
1995
+ # }
1996
+ # @!attribute [rw] job_id
1997
+ # The ID of the job that successfully completed. This is the same ID
1998
+ # returned from PollForThirdPartyJobs.
1999
+ # @return [String]
2000
+ #
2001
+ # @!attribute [rw] client_token
2002
+ # The clientToken portion of the clientId and clientToken pair used to
2003
+ # verify that the calling entity is allowed access to the job and its
2004
+ # details.
2005
+ # @return [String]
2006
+ #
2007
+ # @!attribute [rw] current_revision
2008
+ # Represents information about a current revision.
2009
+ # @return [Types::CurrentRevision]
2010
+ #
2011
+ # @!attribute [rw] continuation_token
2012
+ # A token generated by a job worker, such as an AWS CodeDeploy
2013
+ # deployment ID, that a successful job provides to identify a partner
2014
+ # action in progress. Future jobs will use this token in order to
2015
+ # identify the running instance of the action. It can be reused to
2016
+ # return additional information about the progress of the partner
2017
+ # action. When the action is complete, no continuation token should be
2018
+ # supplied.
2019
+ # @return [String]
2020
+ #
2021
+ # @!attribute [rw] execution_details
2022
+ # The details of the actions taken and results produced on an artifact
2023
+ # as it passes through stages in the pipeline.
2024
+ # @return [Types::ExecutionDetails]
2025
+ class PutThirdPartyJobSuccessResultInput < Struct.new(
2026
+ :job_id,
2027
+ :client_token,
2028
+ :current_revision,
2029
+ :continuation_token,
2030
+ :execution_details)
2031
+ include Aws::Structure
2032
+ end
2033
+
2034
+ # Represents the input of a retry stage execution action.
2035
+ # @note When making an API call, pass RetryStageExecutionInput
2036
+ # data as a hash:
2037
+ #
2038
+ # {
2039
+ # pipeline_name: "PipelineName", # required
2040
+ # stage_name: "StageName", # required
2041
+ # pipeline_execution_id: "PipelineExecutionId", # required
2042
+ # retry_mode: "FAILED_ACTIONS", # required, accepts FAILED_ACTIONS
2043
+ # }
2044
+ # @!attribute [rw] pipeline_name
2045
+ # The name of the pipeline that contains the failed stage.
2046
+ # @return [String]
2047
+ #
2048
+ # @!attribute [rw] stage_name
2049
+ # The name of the failed stage to be retried.
2050
+ # @return [String]
2051
+ #
2052
+ # @!attribute [rw] pipeline_execution_id
2053
+ # The ID of the pipeline execution in the failed stage to be retried.
2054
+ # Use the GetPipelineState action to retrieve the current
2055
+ # pipelineExecutionId of the failed stage
2056
+ # @return [String]
2057
+ #
2058
+ # @!attribute [rw] retry_mode
2059
+ # The scope of the retry attempt. Currently, the only supported value
2060
+ # is FAILED\_ACTIONS.
2061
+ # @return [String]
2062
+ class RetryStageExecutionInput < Struct.new(
2063
+ :pipeline_name,
2064
+ :stage_name,
2065
+ :pipeline_execution_id,
2066
+ :retry_mode)
2067
+ include Aws::Structure
2068
+ end
2069
+
2070
+ # Represents the output of a retry stage execution action.
2071
+ # @!attribute [rw] pipeline_execution_id
2072
+ # The ID of the current workflow execution in the failed stage.
2073
+ # @return [String]
2074
+ class RetryStageExecutionOutput < Struct.new(
2075
+ :pipeline_execution_id)
2076
+ include Aws::Structure
2077
+ end
2078
+
2079
+ # The location of the Amazon S3 bucket that contains a revision.
2080
+ # @!attribute [rw] bucket_name
2081
+ # The name of the Amazon S3 bucket.
2082
+ # @return [String]
2083
+ #
2084
+ # @!attribute [rw] object_key
2085
+ # The key of the object in the Amazon S3 bucket, which uniquely
2086
+ # identifies the object in the bucket.
2087
+ # @return [String]
2088
+ class S3ArtifactLocation < Struct.new(
2089
+ :bucket_name,
2090
+ :object_key)
2091
+ include Aws::Structure
2092
+ end
2093
+
2094
+ # Represents information about a stage to a job worker.
2095
+ # @!attribute [rw] name
2096
+ # The name of the stage.
2097
+ # @return [String]
2098
+ class StageContext < Struct.new(
2099
+ :name)
2100
+ include Aws::Structure
2101
+ end
2102
+
2103
+ # Represents information about a stage and its definition.
2104
+ # @note When making an API call, pass StageDeclaration
2105
+ # data as a hash:
2106
+ #
2107
+ # {
2108
+ # name: "StageName", # required
2109
+ # blockers: [
2110
+ # {
2111
+ # name: "BlockerName", # required
2112
+ # type: "Schedule", # required, accepts Schedule
2113
+ # },
2114
+ # ],
2115
+ # actions: [ # required
2116
+ # {
2117
+ # name: "ActionName", # required
2118
+ # action_type_id: { # required
2119
+ # category: "Source", # required, accepts Source, Build, Deploy, Test, Invoke, Approval
2120
+ # owner: "AWS", # required, accepts AWS, ThirdParty, Custom
2121
+ # provider: "ActionProvider", # required
2122
+ # version: "Version", # required
2123
+ # },
2124
+ # run_order: 1,
2125
+ # configuration: {
2126
+ # "ActionConfigurationKey" => "ActionConfigurationValue",
2127
+ # },
2128
+ # output_artifacts: [
2129
+ # {
2130
+ # name: "ArtifactName", # required
2131
+ # },
2132
+ # ],
2133
+ # input_artifacts: [
2134
+ # {
2135
+ # name: "ArtifactName", # required
2136
+ # },
2137
+ # ],
2138
+ # role_arn: "RoleArn",
2139
+ # },
2140
+ # ],
2141
+ # }
2142
+ # @!attribute [rw] name
2143
+ # The name of the stage.
2144
+ # @return [String]
2145
+ #
2146
+ # @!attribute [rw] blockers
2147
+ # Reserved for future use.
2148
+ # @return [Array<Types::BlockerDeclaration>]
2149
+ #
2150
+ # @!attribute [rw] actions
2151
+ # The actions included in a stage.
2152
+ # @return [Array<Types::ActionDeclaration>]
2153
+ class StageDeclaration < Struct.new(
2154
+ :name,
2155
+ :blockers,
2156
+ :actions)
2157
+ include Aws::Structure
2158
+ end
2159
+
2160
+ # Represents information about the run of a stage.
2161
+ # @!attribute [rw] pipeline_execution_id
2162
+ # The ID of the pipeline execution associated with the stage.
2163
+ # @return [String]
2164
+ #
2165
+ # @!attribute [rw] status
2166
+ # The status of the stage, or for a completed stage, the last status
2167
+ # of the stage.
2168
+ # @return [String]
2169
+ class StageExecution < Struct.new(
2170
+ :pipeline_execution_id,
2171
+ :status)
2172
+ include Aws::Structure
2173
+ end
2174
+
2175
+ # Represents information about the state of the stage.
2176
+ # @!attribute [rw] stage_name
2177
+ # The name of the stage.
2178
+ # @return [String]
2179
+ #
2180
+ # @!attribute [rw] inbound_transition_state
2181
+ # The state of the inbound transition, which is either enabled or
2182
+ # disabled.
2183
+ # @return [Types::TransitionState]
2184
+ #
2185
+ # @!attribute [rw] action_states
2186
+ # The state of the stage.
2187
+ # @return [Array<Types::ActionState>]
2188
+ #
2189
+ # @!attribute [rw] latest_execution
2190
+ # Information about the latest execution in the stage, including its
2191
+ # ID and status.
2192
+ # @return [Types::StageExecution]
2193
+ class StageState < Struct.new(
2194
+ :stage_name,
2195
+ :inbound_transition_state,
2196
+ :action_states,
2197
+ :latest_execution)
2198
+ include Aws::Structure
2199
+ end
2200
+
2201
+ # Represents the input of a start pipeline execution action.
2202
+ # @note When making an API call, pass StartPipelineExecutionInput
2203
+ # data as a hash:
2204
+ #
2205
+ # {
2206
+ # name: "PipelineName", # required
2207
+ # }
2208
+ # @!attribute [rw] name
2209
+ # The name of the pipeline to start.
2210
+ # @return [String]
2211
+ class StartPipelineExecutionInput < Struct.new(
2212
+ :name)
2213
+ include Aws::Structure
2214
+ end
2215
+
2216
+ # Represents the output of a start pipeline execution action.
2217
+ # @!attribute [rw] pipeline_execution_id
2218
+ # The unique system-generated ID of the pipeline execution that was
2219
+ # started.
2220
+ # @return [String]
2221
+ class StartPipelineExecutionOutput < Struct.new(
2222
+ :pipeline_execution_id)
2223
+ include Aws::Structure
2224
+ end
2225
+
2226
+ # A response to a PollForThirdPartyJobs request returned by AWS
2227
+ # CodePipeline when there is a job to be worked upon by a partner
2228
+ # action.
2229
+ # @!attribute [rw] client_id
2230
+ # The clientToken portion of the clientId and clientToken pair used to
2231
+ # verify that the calling entity is allowed access to the job and its
2232
+ # details.
2233
+ # @return [String]
2234
+ #
2235
+ # @!attribute [rw] job_id
2236
+ # The identifier used to identify the job in AWS CodePipeline.
2237
+ # @return [String]
2238
+ class ThirdPartyJob < Struct.new(
2239
+ :client_id,
2240
+ :job_id)
2241
+ include Aws::Structure
2242
+ end
2243
+
2244
+ # Represents information about the job data for a partner action.
2245
+ # @!attribute [rw] action_type_id
2246
+ # Represents information about an action type.
2247
+ # @return [Types::ActionTypeId]
2248
+ #
2249
+ # @!attribute [rw] action_configuration
2250
+ # Represents information about an action configuration.
2251
+ # @return [Types::ActionConfiguration]
2252
+ #
2253
+ # @!attribute [rw] pipeline_context
2254
+ # Represents information about a pipeline to a job worker.
2255
+ # @return [Types::PipelineContext]
2256
+ #
2257
+ # @!attribute [rw] input_artifacts
2258
+ # The name of the artifact that will be worked upon by the action, if
2259
+ # any. This name might be system-generated, such as "MyApp", or
2260
+ # might be defined by the user when the action is created. The input
2261
+ # artifact name must match the name of an output artifact generated by
2262
+ # an action in an earlier action or stage of the pipeline.
2263
+ # @return [Array<Types::Artifact>]
2264
+ #
2265
+ # @!attribute [rw] output_artifacts
2266
+ # The name of the artifact that will be the result of the action, if
2267
+ # any. This name might be system-generated, such as "MyBuiltApp", or
2268
+ # might be defined by the user when the action is created.
2269
+ # @return [Array<Types::Artifact>]
2270
+ #
2271
+ # @!attribute [rw] artifact_credentials
2272
+ # Represents an AWS session credentials object. These credentials are
2273
+ # temporary credentials that are issued by AWS Secure Token Service
2274
+ # (STS). They can be used to access input and output artifacts in the
2275
+ # Amazon S3 bucket used to store artifact for the pipeline in AWS
2276
+ # CodePipeline.
2277
+ # @return [Types::AWSSessionCredentials]
2278
+ #
2279
+ # @!attribute [rw] continuation_token
2280
+ # A system-generated token, such as a AWS CodeDeploy deployment ID,
2281
+ # that a job requires in order to continue the job asynchronously.
2282
+ # @return [String]
2283
+ #
2284
+ # @!attribute [rw] encryption_key
2285
+ # The encryption key used to encrypt and decrypt data in the artifact
2286
+ # store for the pipeline, such as an AWS Key Management Service (AWS
2287
+ # KMS) key. This is optional and might not be present.
2288
+ # @return [Types::EncryptionKey]
2289
+ class ThirdPartyJobData < Struct.new(
2290
+ :action_type_id,
2291
+ :action_configuration,
2292
+ :pipeline_context,
2293
+ :input_artifacts,
2294
+ :output_artifacts,
2295
+ :artifact_credentials,
2296
+ :continuation_token,
2297
+ :encryption_key)
2298
+ include Aws::Structure
2299
+ end
2300
+
2301
+ # The details of a job sent in response to a GetThirdPartyJobDetails
2302
+ # request.
2303
+ # @!attribute [rw] id
2304
+ # The identifier used to identify the job details in AWS CodePipeline.
2305
+ # @return [String]
2306
+ #
2307
+ # @!attribute [rw] data
2308
+ # The data to be returned by the third party job worker.
2309
+ # @return [Types::ThirdPartyJobData]
2310
+ #
2311
+ # @!attribute [rw] nonce
2312
+ # A system-generated random number that AWS CodePipeline uses to
2313
+ # ensure that the job is being worked on by only one job worker. This
2314
+ # number must be returned in the response.
2315
+ # @return [String]
2316
+ class ThirdPartyJobDetails < Struct.new(
2317
+ :id,
2318
+ :data,
2319
+ :nonce)
2320
+ include Aws::Structure
2321
+ end
2322
+
2323
+ # Represents information about the state of transitions between one
2324
+ # stage and another stage.
2325
+ # @!attribute [rw] enabled
2326
+ # Whether the transition between stages is enabled (true) or disabled
2327
+ # (false).
2328
+ # @return [Boolean]
2329
+ #
2330
+ # @!attribute [rw] last_changed_by
2331
+ # The ID of the user who last changed the transition state.
2332
+ # @return [String]
2333
+ #
2334
+ # @!attribute [rw] last_changed_at
2335
+ # The timestamp when the transition state was last changed.
2336
+ # @return [Time]
2337
+ #
2338
+ # @!attribute [rw] disabled_reason
2339
+ # The user-specified reason why the transition between two stages of a
2340
+ # pipeline was disabled.
2341
+ # @return [String]
2342
+ class TransitionState < Struct.new(
2343
+ :enabled,
2344
+ :last_changed_by,
2345
+ :last_changed_at,
2346
+ :disabled_reason)
2347
+ include Aws::Structure
2348
+ end
2349
+
2350
+ # Represents the input of an update pipeline action.
2351
+ # @note When making an API call, pass UpdatePipelineInput
2352
+ # data as a hash:
2353
+ #
2354
+ # {
2355
+ # pipeline: { # required
2356
+ # name: "PipelineName", # required
2357
+ # role_arn: "RoleArn", # required
2358
+ # artifact_store: { # required
2359
+ # type: "S3", # required, accepts S3
2360
+ # location: "ArtifactStoreLocation", # required
2361
+ # encryption_key: {
2362
+ # id: "EncryptionKeyId", # required
2363
+ # type: "KMS", # required, accepts KMS
2364
+ # },
2365
+ # },
2366
+ # stages: [ # required
2367
+ # {
2368
+ # name: "StageName", # required
2369
+ # blockers: [
2370
+ # {
2371
+ # name: "BlockerName", # required
2372
+ # type: "Schedule", # required, accepts Schedule
2373
+ # },
2374
+ # ],
2375
+ # actions: [ # required
2376
+ # {
2377
+ # name: "ActionName", # required
2378
+ # action_type_id: { # required
2379
+ # category: "Source", # required, accepts Source, Build, Deploy, Test, Invoke, Approval
2380
+ # owner: "AWS", # required, accepts AWS, ThirdParty, Custom
2381
+ # provider: "ActionProvider", # required
2382
+ # version: "Version", # required
2383
+ # },
2384
+ # run_order: 1,
2385
+ # configuration: {
2386
+ # "ActionConfigurationKey" => "ActionConfigurationValue",
2387
+ # },
2388
+ # output_artifacts: [
2389
+ # {
2390
+ # name: "ArtifactName", # required
2391
+ # },
2392
+ # ],
2393
+ # input_artifacts: [
2394
+ # {
2395
+ # name: "ArtifactName", # required
2396
+ # },
2397
+ # ],
2398
+ # role_arn: "RoleArn",
2399
+ # },
2400
+ # ],
2401
+ # },
2402
+ # ],
2403
+ # version: 1,
2404
+ # },
2405
+ # }
2406
+ # @!attribute [rw] pipeline
2407
+ # The name of the pipeline to be updated.
2408
+ # @return [Types::PipelineDeclaration]
2409
+ class UpdatePipelineInput < Struct.new(
2410
+ :pipeline)
2411
+ include Aws::Structure
2412
+ end
2413
+
2414
+ # Represents the output of an update pipeline action.
2415
+ # @!attribute [rw] pipeline
2416
+ # The structure of the updated pipeline.
2417
+ # @return [Types::PipelineDeclaration]
2418
+ class UpdatePipelineOutput < Struct.new(
2419
+ :pipeline)
2420
+ include Aws::Structure
2421
+ end
2422
+
2423
+ end
2424
+ end
2425
+ end