1// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
2
3package codepipeline
4
5import (
6	"fmt"
7	"time"
8
9	"github.com/aws/aws-sdk-go/aws"
10	"github.com/aws/aws-sdk-go/aws/awsutil"
11	"github.com/aws/aws-sdk-go/aws/request"
12	"github.com/aws/aws-sdk-go/private/protocol"
13	"github.com/aws/aws-sdk-go/private/protocol/jsonrpc"
14)
15
16const opAcknowledgeJob = "AcknowledgeJob"
17
18// AcknowledgeJobRequest generates a "aws/request.Request" representing the
19// client's request for the AcknowledgeJob operation. The "output" return
20// value will be populated with the request's response once the request completes
21// successfully.
22//
23// Use "Send" method on the returned Request to send the API call to the service.
24// the "output" return value is not valid until after Send returns without error.
25//
26// See AcknowledgeJob for more information on using the AcknowledgeJob
27// API call, and error handling.
28//
29// This method is useful when you want to inject custom logic or configuration
30// into the SDK's request lifecycle. Such as custom headers, or retry logic.
31//
32//
33//    // Example sending a request using the AcknowledgeJobRequest method.
34//    req, resp := client.AcknowledgeJobRequest(params)
35//
36//    err := req.Send()
37//    if err == nil { // resp is now filled
38//        fmt.Println(resp)
39//    }
40//
41// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/AcknowledgeJob
42func (c *CodePipeline) AcknowledgeJobRequest(input *AcknowledgeJobInput) (req *request.Request, output *AcknowledgeJobOutput) {
43	op := &request.Operation{
44		Name:       opAcknowledgeJob,
45		HTTPMethod: "POST",
46		HTTPPath:   "/",
47	}
48
49	if input == nil {
50		input = &AcknowledgeJobInput{}
51	}
52
53	output = &AcknowledgeJobOutput{}
54	req = c.newRequest(op, input, output)
55	return
56}
57
58// AcknowledgeJob API operation for AWS CodePipeline.
59//
60// Returns information about a specified job and whether that job has been received
61// by the job worker. Used for custom actions only.
62//
63// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
64// with awserr.Error's Code and Message methods to get detailed information about
65// the error.
66//
67// See the AWS API reference guide for AWS CodePipeline's
68// API operation AcknowledgeJob for usage and error information.
69//
70// Returned Error Types:
71//   * ValidationException
72//   The validation was specified in an invalid format.
73//
74//   * InvalidNonceException
75//   The nonce was specified in an invalid format.
76//
77//   * JobNotFoundException
78//   The job was specified in an invalid format or cannot be found.
79//
80// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/AcknowledgeJob
81func (c *CodePipeline) AcknowledgeJob(input *AcknowledgeJobInput) (*AcknowledgeJobOutput, error) {
82	req, out := c.AcknowledgeJobRequest(input)
83	return out, req.Send()
84}
85
86// AcknowledgeJobWithContext is the same as AcknowledgeJob with the addition of
87// the ability to pass a context and additional request options.
88//
89// See AcknowledgeJob for details on how to use this API operation.
90//
91// The context must be non-nil and will be used for request cancellation. If
92// the context is nil a panic will occur. In the future the SDK may create
93// sub-contexts for http.Requests. See https://golang.org/pkg/context/
94// for more information on using Contexts.
95func (c *CodePipeline) AcknowledgeJobWithContext(ctx aws.Context, input *AcknowledgeJobInput, opts ...request.Option) (*AcknowledgeJobOutput, error) {
96	req, out := c.AcknowledgeJobRequest(input)
97	req.SetContext(ctx)
98	req.ApplyOptions(opts...)
99	return out, req.Send()
100}
101
102const opAcknowledgeThirdPartyJob = "AcknowledgeThirdPartyJob"
103
104// AcknowledgeThirdPartyJobRequest generates a "aws/request.Request" representing the
105// client's request for the AcknowledgeThirdPartyJob operation. The "output" return
106// value will be populated with the request's response once the request completes
107// successfully.
108//
109// Use "Send" method on the returned Request to send the API call to the service.
110// the "output" return value is not valid until after Send returns without error.
111//
112// See AcknowledgeThirdPartyJob for more information on using the AcknowledgeThirdPartyJob
113// API call, and error handling.
114//
115// This method is useful when you want to inject custom logic or configuration
116// into the SDK's request lifecycle. Such as custom headers, or retry logic.
117//
118//
119//    // Example sending a request using the AcknowledgeThirdPartyJobRequest method.
120//    req, resp := client.AcknowledgeThirdPartyJobRequest(params)
121//
122//    err := req.Send()
123//    if err == nil { // resp is now filled
124//        fmt.Println(resp)
125//    }
126//
127// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/AcknowledgeThirdPartyJob
128func (c *CodePipeline) AcknowledgeThirdPartyJobRequest(input *AcknowledgeThirdPartyJobInput) (req *request.Request, output *AcknowledgeThirdPartyJobOutput) {
129	op := &request.Operation{
130		Name:       opAcknowledgeThirdPartyJob,
131		HTTPMethod: "POST",
132		HTTPPath:   "/",
133	}
134
135	if input == nil {
136		input = &AcknowledgeThirdPartyJobInput{}
137	}
138
139	output = &AcknowledgeThirdPartyJobOutput{}
140	req = c.newRequest(op, input, output)
141	return
142}
143
144// AcknowledgeThirdPartyJob API operation for AWS CodePipeline.
145//
146// Confirms a job worker has received the specified job. Used for partner actions
147// only.
148//
149// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
150// with awserr.Error's Code and Message methods to get detailed information about
151// the error.
152//
153// See the AWS API reference guide for AWS CodePipeline's
154// API operation AcknowledgeThirdPartyJob for usage and error information.
155//
156// Returned Error Types:
157//   * ValidationException
158//   The validation was specified in an invalid format.
159//
160//   * InvalidNonceException
161//   The nonce was specified in an invalid format.
162//
163//   * JobNotFoundException
164//   The job was specified in an invalid format or cannot be found.
165//
166//   * InvalidClientTokenException
167//   The client token was specified in an invalid format
168//
169// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/AcknowledgeThirdPartyJob
170func (c *CodePipeline) AcknowledgeThirdPartyJob(input *AcknowledgeThirdPartyJobInput) (*AcknowledgeThirdPartyJobOutput, error) {
171	req, out := c.AcknowledgeThirdPartyJobRequest(input)
172	return out, req.Send()
173}
174
175// AcknowledgeThirdPartyJobWithContext is the same as AcknowledgeThirdPartyJob with the addition of
176// the ability to pass a context and additional request options.
177//
178// See AcknowledgeThirdPartyJob for details on how to use this API operation.
179//
180// The context must be non-nil and will be used for request cancellation. If
181// the context is nil a panic will occur. In the future the SDK may create
182// sub-contexts for http.Requests. See https://golang.org/pkg/context/
183// for more information on using Contexts.
184func (c *CodePipeline) AcknowledgeThirdPartyJobWithContext(ctx aws.Context, input *AcknowledgeThirdPartyJobInput, opts ...request.Option) (*AcknowledgeThirdPartyJobOutput, error) {
185	req, out := c.AcknowledgeThirdPartyJobRequest(input)
186	req.SetContext(ctx)
187	req.ApplyOptions(opts...)
188	return out, req.Send()
189}
190
191const opCreateCustomActionType = "CreateCustomActionType"
192
193// CreateCustomActionTypeRequest generates a "aws/request.Request" representing the
194// client's request for the CreateCustomActionType operation. The "output" return
195// value will be populated with the request's response once the request completes
196// successfully.
197//
198// Use "Send" method on the returned Request to send the API call to the service.
199// the "output" return value is not valid until after Send returns without error.
200//
201// See CreateCustomActionType for more information on using the CreateCustomActionType
202// API call, and error handling.
203//
204// This method is useful when you want to inject custom logic or configuration
205// into the SDK's request lifecycle. Such as custom headers, or retry logic.
206//
207//
208//    // Example sending a request using the CreateCustomActionTypeRequest method.
209//    req, resp := client.CreateCustomActionTypeRequest(params)
210//
211//    err := req.Send()
212//    if err == nil { // resp is now filled
213//        fmt.Println(resp)
214//    }
215//
216// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/CreateCustomActionType
217func (c *CodePipeline) CreateCustomActionTypeRequest(input *CreateCustomActionTypeInput) (req *request.Request, output *CreateCustomActionTypeOutput) {
218	op := &request.Operation{
219		Name:       opCreateCustomActionType,
220		HTTPMethod: "POST",
221		HTTPPath:   "/",
222	}
223
224	if input == nil {
225		input = &CreateCustomActionTypeInput{}
226	}
227
228	output = &CreateCustomActionTypeOutput{}
229	req = c.newRequest(op, input, output)
230	return
231}
232
233// CreateCustomActionType API operation for AWS CodePipeline.
234//
235// Creates a new custom action that can be used in all pipelines associated
236// with the AWS account. Only used for custom actions.
237//
238// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
239// with awserr.Error's Code and Message methods to get detailed information about
240// the error.
241//
242// See the AWS API reference guide for AWS CodePipeline's
243// API operation CreateCustomActionType for usage and error information.
244//
245// Returned Error Types:
246//   * ValidationException
247//   The validation was specified in an invalid format.
248//
249//   * LimitExceededException
250//   The number of pipelines associated with the AWS account has exceeded the
251//   limit allowed for the account.
252//
253//   * TooManyTagsException
254//   The tags limit for a resource has been exceeded.
255//
256//   * InvalidTagsException
257//   The specified resource tags are invalid.
258//
259//   * ConcurrentModificationException
260//   Unable to modify the tag due to a simultaneous update request.
261//
262// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/CreateCustomActionType
263func (c *CodePipeline) CreateCustomActionType(input *CreateCustomActionTypeInput) (*CreateCustomActionTypeOutput, error) {
264	req, out := c.CreateCustomActionTypeRequest(input)
265	return out, req.Send()
266}
267
268// CreateCustomActionTypeWithContext is the same as CreateCustomActionType with the addition of
269// the ability to pass a context and additional request options.
270//
271// See CreateCustomActionType for details on how to use this API operation.
272//
273// The context must be non-nil and will be used for request cancellation. If
274// the context is nil a panic will occur. In the future the SDK may create
275// sub-contexts for http.Requests. See https://golang.org/pkg/context/
276// for more information on using Contexts.
277func (c *CodePipeline) CreateCustomActionTypeWithContext(ctx aws.Context, input *CreateCustomActionTypeInput, opts ...request.Option) (*CreateCustomActionTypeOutput, error) {
278	req, out := c.CreateCustomActionTypeRequest(input)
279	req.SetContext(ctx)
280	req.ApplyOptions(opts...)
281	return out, req.Send()
282}
283
284const opCreatePipeline = "CreatePipeline"
285
286// CreatePipelineRequest generates a "aws/request.Request" representing the
287// client's request for the CreatePipeline operation. The "output" return
288// value will be populated with the request's response once the request completes
289// successfully.
290//
291// Use "Send" method on the returned Request to send the API call to the service.
292// the "output" return value is not valid until after Send returns without error.
293//
294// See CreatePipeline for more information on using the CreatePipeline
295// API call, and error handling.
296//
297// This method is useful when you want to inject custom logic or configuration
298// into the SDK's request lifecycle. Such as custom headers, or retry logic.
299//
300//
301//    // Example sending a request using the CreatePipelineRequest method.
302//    req, resp := client.CreatePipelineRequest(params)
303//
304//    err := req.Send()
305//    if err == nil { // resp is now filled
306//        fmt.Println(resp)
307//    }
308//
309// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/CreatePipeline
310func (c *CodePipeline) CreatePipelineRequest(input *CreatePipelineInput) (req *request.Request, output *CreatePipelineOutput) {
311	op := &request.Operation{
312		Name:       opCreatePipeline,
313		HTTPMethod: "POST",
314		HTTPPath:   "/",
315	}
316
317	if input == nil {
318		input = &CreatePipelineInput{}
319	}
320
321	output = &CreatePipelineOutput{}
322	req = c.newRequest(op, input, output)
323	return
324}
325
326// CreatePipeline API operation for AWS CodePipeline.
327//
328// Creates a pipeline.
329//
330// In the pipeline structure, you must include either artifactStore or artifactStores
331// in your pipeline, but you cannot use both. If you create a cross-region action
332// in your pipeline, you must use artifactStores.
333//
334// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
335// with awserr.Error's Code and Message methods to get detailed information about
336// the error.
337//
338// See the AWS API reference guide for AWS CodePipeline's
339// API operation CreatePipeline for usage and error information.
340//
341// Returned Error Types:
342//   * ValidationException
343//   The validation was specified in an invalid format.
344//
345//   * PipelineNameInUseException
346//   The specified pipeline name is already in use.
347//
348//   * InvalidStageDeclarationException
349//   The stage declaration was specified in an invalid format.
350//
351//   * InvalidActionDeclarationException
352//   The action declaration was specified in an invalid format.
353//
354//   * InvalidBlockerDeclarationException
355//   Reserved for future use.
356//
357//   * InvalidStructureException
358//   The structure was specified in an invalid format.
359//
360//   * LimitExceededException
361//   The number of pipelines associated with the AWS account has exceeded the
362//   limit allowed for the account.
363//
364//   * TooManyTagsException
365//   The tags limit for a resource has been exceeded.
366//
367//   * InvalidTagsException
368//   The specified resource tags are invalid.
369//
370//   * ConcurrentModificationException
371//   Unable to modify the tag due to a simultaneous update request.
372//
373// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/CreatePipeline
374func (c *CodePipeline) CreatePipeline(input *CreatePipelineInput) (*CreatePipelineOutput, error) {
375	req, out := c.CreatePipelineRequest(input)
376	return out, req.Send()
377}
378
379// CreatePipelineWithContext is the same as CreatePipeline with the addition of
380// the ability to pass a context and additional request options.
381//
382// See CreatePipeline for details on how to use this API operation.
383//
384// The context must be non-nil and will be used for request cancellation. If
385// the context is nil a panic will occur. In the future the SDK may create
386// sub-contexts for http.Requests. See https://golang.org/pkg/context/
387// for more information on using Contexts.
388func (c *CodePipeline) CreatePipelineWithContext(ctx aws.Context, input *CreatePipelineInput, opts ...request.Option) (*CreatePipelineOutput, error) {
389	req, out := c.CreatePipelineRequest(input)
390	req.SetContext(ctx)
391	req.ApplyOptions(opts...)
392	return out, req.Send()
393}
394
395const opDeleteCustomActionType = "DeleteCustomActionType"
396
397// DeleteCustomActionTypeRequest generates a "aws/request.Request" representing the
398// client's request for the DeleteCustomActionType operation. The "output" return
399// value will be populated with the request's response once the request completes
400// successfully.
401//
402// Use "Send" method on the returned Request to send the API call to the service.
403// the "output" return value is not valid until after Send returns without error.
404//
405// See DeleteCustomActionType for more information on using the DeleteCustomActionType
406// API call, and error handling.
407//
408// This method is useful when you want to inject custom logic or configuration
409// into the SDK's request lifecycle. Such as custom headers, or retry logic.
410//
411//
412//    // Example sending a request using the DeleteCustomActionTypeRequest method.
413//    req, resp := client.DeleteCustomActionTypeRequest(params)
414//
415//    err := req.Send()
416//    if err == nil { // resp is now filled
417//        fmt.Println(resp)
418//    }
419//
420// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/DeleteCustomActionType
421func (c *CodePipeline) DeleteCustomActionTypeRequest(input *DeleteCustomActionTypeInput) (req *request.Request, output *DeleteCustomActionTypeOutput) {
422	op := &request.Operation{
423		Name:       opDeleteCustomActionType,
424		HTTPMethod: "POST",
425		HTTPPath:   "/",
426	}
427
428	if input == nil {
429		input = &DeleteCustomActionTypeInput{}
430	}
431
432	output = &DeleteCustomActionTypeOutput{}
433	req = c.newRequest(op, input, output)
434	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
435	return
436}
437
438// DeleteCustomActionType API operation for AWS CodePipeline.
439//
440// Marks a custom action as deleted. PollForJobs for the custom action fails
441// after the action is marked for deletion. Used for custom actions only.
442//
443// To re-create a custom action after it has been deleted you must use a string
444// in the version field that has never been used before. This string can be
445// an incremented version number, for example. To restore a deleted custom action,
446// use a JSON file that is identical to the deleted action, including the original
447// string in the version field.
448//
449// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
450// with awserr.Error's Code and Message methods to get detailed information about
451// the error.
452//
453// See the AWS API reference guide for AWS CodePipeline's
454// API operation DeleteCustomActionType for usage and error information.
455//
456// Returned Error Types:
457//   * ValidationException
458//   The validation was specified in an invalid format.
459//
460//   * ConcurrentModificationException
461//   Unable to modify the tag due to a simultaneous update request.
462//
463// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/DeleteCustomActionType
464func (c *CodePipeline) DeleteCustomActionType(input *DeleteCustomActionTypeInput) (*DeleteCustomActionTypeOutput, error) {
465	req, out := c.DeleteCustomActionTypeRequest(input)
466	return out, req.Send()
467}
468
469// DeleteCustomActionTypeWithContext is the same as DeleteCustomActionType with the addition of
470// the ability to pass a context and additional request options.
471//
472// See DeleteCustomActionType for details on how to use this API operation.
473//
474// The context must be non-nil and will be used for request cancellation. If
475// the context is nil a panic will occur. In the future the SDK may create
476// sub-contexts for http.Requests. See https://golang.org/pkg/context/
477// for more information on using Contexts.
478func (c *CodePipeline) DeleteCustomActionTypeWithContext(ctx aws.Context, input *DeleteCustomActionTypeInput, opts ...request.Option) (*DeleteCustomActionTypeOutput, error) {
479	req, out := c.DeleteCustomActionTypeRequest(input)
480	req.SetContext(ctx)
481	req.ApplyOptions(opts...)
482	return out, req.Send()
483}
484
485const opDeletePipeline = "DeletePipeline"
486
487// DeletePipelineRequest generates a "aws/request.Request" representing the
488// client's request for the DeletePipeline operation. The "output" return
489// value will be populated with the request's response once the request completes
490// successfully.
491//
492// Use "Send" method on the returned Request to send the API call to the service.
493// the "output" return value is not valid until after Send returns without error.
494//
495// See DeletePipeline for more information on using the DeletePipeline
496// API call, and error handling.
497//
498// This method is useful when you want to inject custom logic or configuration
499// into the SDK's request lifecycle. Such as custom headers, or retry logic.
500//
501//
502//    // Example sending a request using the DeletePipelineRequest method.
503//    req, resp := client.DeletePipelineRequest(params)
504//
505//    err := req.Send()
506//    if err == nil { // resp is now filled
507//        fmt.Println(resp)
508//    }
509//
510// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/DeletePipeline
511func (c *CodePipeline) DeletePipelineRequest(input *DeletePipelineInput) (req *request.Request, output *DeletePipelineOutput) {
512	op := &request.Operation{
513		Name:       opDeletePipeline,
514		HTTPMethod: "POST",
515		HTTPPath:   "/",
516	}
517
518	if input == nil {
519		input = &DeletePipelineInput{}
520	}
521
522	output = &DeletePipelineOutput{}
523	req = c.newRequest(op, input, output)
524	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
525	return
526}
527
528// DeletePipeline API operation for AWS CodePipeline.
529//
530// Deletes the specified pipeline.
531//
532// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
533// with awserr.Error's Code and Message methods to get detailed information about
534// the error.
535//
536// See the AWS API reference guide for AWS CodePipeline's
537// API operation DeletePipeline for usage and error information.
538//
539// Returned Error Types:
540//   * ValidationException
541//   The validation was specified in an invalid format.
542//
543//   * ConcurrentModificationException
544//   Unable to modify the tag due to a simultaneous update request.
545//
546// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/DeletePipeline
547func (c *CodePipeline) DeletePipeline(input *DeletePipelineInput) (*DeletePipelineOutput, error) {
548	req, out := c.DeletePipelineRequest(input)
549	return out, req.Send()
550}
551
552// DeletePipelineWithContext is the same as DeletePipeline with the addition of
553// the ability to pass a context and additional request options.
554//
555// See DeletePipeline for details on how to use this API operation.
556//
557// The context must be non-nil and will be used for request cancellation. If
558// the context is nil a panic will occur. In the future the SDK may create
559// sub-contexts for http.Requests. See https://golang.org/pkg/context/
560// for more information on using Contexts.
561func (c *CodePipeline) DeletePipelineWithContext(ctx aws.Context, input *DeletePipelineInput, opts ...request.Option) (*DeletePipelineOutput, error) {
562	req, out := c.DeletePipelineRequest(input)
563	req.SetContext(ctx)
564	req.ApplyOptions(opts...)
565	return out, req.Send()
566}
567
568const opDeleteWebhook = "DeleteWebhook"
569
570// DeleteWebhookRequest generates a "aws/request.Request" representing the
571// client's request for the DeleteWebhook operation. The "output" return
572// value will be populated with the request's response once the request completes
573// successfully.
574//
575// Use "Send" method on the returned Request to send the API call to the service.
576// the "output" return value is not valid until after Send returns without error.
577//
578// See DeleteWebhook for more information on using the DeleteWebhook
579// API call, and error handling.
580//
581// This method is useful when you want to inject custom logic or configuration
582// into the SDK's request lifecycle. Such as custom headers, or retry logic.
583//
584//
585//    // Example sending a request using the DeleteWebhookRequest method.
586//    req, resp := client.DeleteWebhookRequest(params)
587//
588//    err := req.Send()
589//    if err == nil { // resp is now filled
590//        fmt.Println(resp)
591//    }
592//
593// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/DeleteWebhook
594func (c *CodePipeline) DeleteWebhookRequest(input *DeleteWebhookInput) (req *request.Request, output *DeleteWebhookOutput) {
595	op := &request.Operation{
596		Name:       opDeleteWebhook,
597		HTTPMethod: "POST",
598		HTTPPath:   "/",
599	}
600
601	if input == nil {
602		input = &DeleteWebhookInput{}
603	}
604
605	output = &DeleteWebhookOutput{}
606	req = c.newRequest(op, input, output)
607	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
608	return
609}
610
611// DeleteWebhook API operation for AWS CodePipeline.
612//
613// Deletes a previously created webhook by name. Deleting the webhook stops
614// AWS CodePipeline from starting a pipeline every time an external event occurs.
615// The API returns successfully when trying to delete a webhook that is already
616// deleted. If a deleted webhook is re-created by calling PutWebhook with the
617// same name, it will have a different URL.
618//
619// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
620// with awserr.Error's Code and Message methods to get detailed information about
621// the error.
622//
623// See the AWS API reference guide for AWS CodePipeline's
624// API operation DeleteWebhook for usage and error information.
625//
626// Returned Error Types:
627//   * ValidationException
628//   The validation was specified in an invalid format.
629//
630//   * ConcurrentModificationException
631//   Unable to modify the tag due to a simultaneous update request.
632//
633// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/DeleteWebhook
634func (c *CodePipeline) DeleteWebhook(input *DeleteWebhookInput) (*DeleteWebhookOutput, error) {
635	req, out := c.DeleteWebhookRequest(input)
636	return out, req.Send()
637}
638
639// DeleteWebhookWithContext is the same as DeleteWebhook with the addition of
640// the ability to pass a context and additional request options.
641//
642// See DeleteWebhook for details on how to use this API operation.
643//
644// The context must be non-nil and will be used for request cancellation. If
645// the context is nil a panic will occur. In the future the SDK may create
646// sub-contexts for http.Requests. See https://golang.org/pkg/context/
647// for more information on using Contexts.
648func (c *CodePipeline) DeleteWebhookWithContext(ctx aws.Context, input *DeleteWebhookInput, opts ...request.Option) (*DeleteWebhookOutput, error) {
649	req, out := c.DeleteWebhookRequest(input)
650	req.SetContext(ctx)
651	req.ApplyOptions(opts...)
652	return out, req.Send()
653}
654
655const opDeregisterWebhookWithThirdParty = "DeregisterWebhookWithThirdParty"
656
657// DeregisterWebhookWithThirdPartyRequest generates a "aws/request.Request" representing the
658// client's request for the DeregisterWebhookWithThirdParty operation. The "output" return
659// value will be populated with the request's response once the request completes
660// successfully.
661//
662// Use "Send" method on the returned Request to send the API call to the service.
663// the "output" return value is not valid until after Send returns without error.
664//
665// See DeregisterWebhookWithThirdParty for more information on using the DeregisterWebhookWithThirdParty
666// API call, and error handling.
667//
668// This method is useful when you want to inject custom logic or configuration
669// into the SDK's request lifecycle. Such as custom headers, or retry logic.
670//
671//
672//    // Example sending a request using the DeregisterWebhookWithThirdPartyRequest method.
673//    req, resp := client.DeregisterWebhookWithThirdPartyRequest(params)
674//
675//    err := req.Send()
676//    if err == nil { // resp is now filled
677//        fmt.Println(resp)
678//    }
679//
680// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/DeregisterWebhookWithThirdParty
681func (c *CodePipeline) DeregisterWebhookWithThirdPartyRequest(input *DeregisterWebhookWithThirdPartyInput) (req *request.Request, output *DeregisterWebhookWithThirdPartyOutput) {
682	op := &request.Operation{
683		Name:       opDeregisterWebhookWithThirdParty,
684		HTTPMethod: "POST",
685		HTTPPath:   "/",
686	}
687
688	if input == nil {
689		input = &DeregisterWebhookWithThirdPartyInput{}
690	}
691
692	output = &DeregisterWebhookWithThirdPartyOutput{}
693	req = c.newRequest(op, input, output)
694	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
695	return
696}
697
698// DeregisterWebhookWithThirdParty API operation for AWS CodePipeline.
699//
700// Removes the connection between the webhook that was created by CodePipeline
701// and the external tool with events to be detected. Currently supported only
702// for webhooks that target an action type of GitHub.
703//
704// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
705// with awserr.Error's Code and Message methods to get detailed information about
706// the error.
707//
708// See the AWS API reference guide for AWS CodePipeline's
709// API operation DeregisterWebhookWithThirdParty for usage and error information.
710//
711// Returned Error Types:
712//   * ValidationException
713//   The validation was specified in an invalid format.
714//
715//   * WebhookNotFoundException
716//   The specified webhook was entered in an invalid format or cannot be found.
717//
718// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/DeregisterWebhookWithThirdParty
719func (c *CodePipeline) DeregisterWebhookWithThirdParty(input *DeregisterWebhookWithThirdPartyInput) (*DeregisterWebhookWithThirdPartyOutput, error) {
720	req, out := c.DeregisterWebhookWithThirdPartyRequest(input)
721	return out, req.Send()
722}
723
724// DeregisterWebhookWithThirdPartyWithContext is the same as DeregisterWebhookWithThirdParty with the addition of
725// the ability to pass a context and additional request options.
726//
727// See DeregisterWebhookWithThirdParty for details on how to use this API operation.
728//
729// The context must be non-nil and will be used for request cancellation. If
730// the context is nil a panic will occur. In the future the SDK may create
731// sub-contexts for http.Requests. See https://golang.org/pkg/context/
732// for more information on using Contexts.
733func (c *CodePipeline) DeregisterWebhookWithThirdPartyWithContext(ctx aws.Context, input *DeregisterWebhookWithThirdPartyInput, opts ...request.Option) (*DeregisterWebhookWithThirdPartyOutput, error) {
734	req, out := c.DeregisterWebhookWithThirdPartyRequest(input)
735	req.SetContext(ctx)
736	req.ApplyOptions(opts...)
737	return out, req.Send()
738}
739
740const opDisableStageTransition = "DisableStageTransition"
741
742// DisableStageTransitionRequest generates a "aws/request.Request" representing the
743// client's request for the DisableStageTransition operation. The "output" return
744// value will be populated with the request's response once the request completes
745// successfully.
746//
747// Use "Send" method on the returned Request to send the API call to the service.
748// the "output" return value is not valid until after Send returns without error.
749//
750// See DisableStageTransition for more information on using the DisableStageTransition
751// API call, and error handling.
752//
753// This method is useful when you want to inject custom logic or configuration
754// into the SDK's request lifecycle. Such as custom headers, or retry logic.
755//
756//
757//    // Example sending a request using the DisableStageTransitionRequest method.
758//    req, resp := client.DisableStageTransitionRequest(params)
759//
760//    err := req.Send()
761//    if err == nil { // resp is now filled
762//        fmt.Println(resp)
763//    }
764//
765// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/DisableStageTransition
766func (c *CodePipeline) DisableStageTransitionRequest(input *DisableStageTransitionInput) (req *request.Request, output *DisableStageTransitionOutput) {
767	op := &request.Operation{
768		Name:       opDisableStageTransition,
769		HTTPMethod: "POST",
770		HTTPPath:   "/",
771	}
772
773	if input == nil {
774		input = &DisableStageTransitionInput{}
775	}
776
777	output = &DisableStageTransitionOutput{}
778	req = c.newRequest(op, input, output)
779	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
780	return
781}
782
783// DisableStageTransition API operation for AWS CodePipeline.
784//
785// Prevents artifacts in a pipeline from transitioning to the next stage in
786// the pipeline.
787//
788// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
789// with awserr.Error's Code and Message methods to get detailed information about
790// the error.
791//
792// See the AWS API reference guide for AWS CodePipeline's
793// API operation DisableStageTransition for usage and error information.
794//
795// Returned Error Types:
796//   * ValidationException
797//   The validation was specified in an invalid format.
798//
799//   * PipelineNotFoundException
800//   The pipeline was specified in an invalid format or cannot be found.
801//
802//   * StageNotFoundException
803//   The stage was specified in an invalid format or cannot be found.
804//
805// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/DisableStageTransition
806func (c *CodePipeline) DisableStageTransition(input *DisableStageTransitionInput) (*DisableStageTransitionOutput, error) {
807	req, out := c.DisableStageTransitionRequest(input)
808	return out, req.Send()
809}
810
811// DisableStageTransitionWithContext is the same as DisableStageTransition with the addition of
812// the ability to pass a context and additional request options.
813//
814// See DisableStageTransition for details on how to use this API operation.
815//
816// The context must be non-nil and will be used for request cancellation. If
817// the context is nil a panic will occur. In the future the SDK may create
818// sub-contexts for http.Requests. See https://golang.org/pkg/context/
819// for more information on using Contexts.
820func (c *CodePipeline) DisableStageTransitionWithContext(ctx aws.Context, input *DisableStageTransitionInput, opts ...request.Option) (*DisableStageTransitionOutput, error) {
821	req, out := c.DisableStageTransitionRequest(input)
822	req.SetContext(ctx)
823	req.ApplyOptions(opts...)
824	return out, req.Send()
825}
826
827const opEnableStageTransition = "EnableStageTransition"
828
829// EnableStageTransitionRequest generates a "aws/request.Request" representing the
830// client's request for the EnableStageTransition operation. The "output" return
831// value will be populated with the request's response once the request completes
832// successfully.
833//
834// Use "Send" method on the returned Request to send the API call to the service.
835// the "output" return value is not valid until after Send returns without error.
836//
837// See EnableStageTransition for more information on using the EnableStageTransition
838// API call, and error handling.
839//
840// This method is useful when you want to inject custom logic or configuration
841// into the SDK's request lifecycle. Such as custom headers, or retry logic.
842//
843//
844//    // Example sending a request using the EnableStageTransitionRequest method.
845//    req, resp := client.EnableStageTransitionRequest(params)
846//
847//    err := req.Send()
848//    if err == nil { // resp is now filled
849//        fmt.Println(resp)
850//    }
851//
852// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/EnableStageTransition
853func (c *CodePipeline) EnableStageTransitionRequest(input *EnableStageTransitionInput) (req *request.Request, output *EnableStageTransitionOutput) {
854	op := &request.Operation{
855		Name:       opEnableStageTransition,
856		HTTPMethod: "POST",
857		HTTPPath:   "/",
858	}
859
860	if input == nil {
861		input = &EnableStageTransitionInput{}
862	}
863
864	output = &EnableStageTransitionOutput{}
865	req = c.newRequest(op, input, output)
866	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
867	return
868}
869
870// EnableStageTransition API operation for AWS CodePipeline.
871//
872// Enables artifacts in a pipeline to transition to a stage in a pipeline.
873//
874// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
875// with awserr.Error's Code and Message methods to get detailed information about
876// the error.
877//
878// See the AWS API reference guide for AWS CodePipeline's
879// API operation EnableStageTransition for usage and error information.
880//
881// Returned Error Types:
882//   * ValidationException
883//   The validation was specified in an invalid format.
884//
885//   * PipelineNotFoundException
886//   The pipeline was specified in an invalid format or cannot be found.
887//
888//   * StageNotFoundException
889//   The stage was specified in an invalid format or cannot be found.
890//
891// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/EnableStageTransition
892func (c *CodePipeline) EnableStageTransition(input *EnableStageTransitionInput) (*EnableStageTransitionOutput, error) {
893	req, out := c.EnableStageTransitionRequest(input)
894	return out, req.Send()
895}
896
897// EnableStageTransitionWithContext is the same as EnableStageTransition with the addition of
898// the ability to pass a context and additional request options.
899//
900// See EnableStageTransition for details on how to use this API operation.
901//
902// The context must be non-nil and will be used for request cancellation. If
903// the context is nil a panic will occur. In the future the SDK may create
904// sub-contexts for http.Requests. See https://golang.org/pkg/context/
905// for more information on using Contexts.
906func (c *CodePipeline) EnableStageTransitionWithContext(ctx aws.Context, input *EnableStageTransitionInput, opts ...request.Option) (*EnableStageTransitionOutput, error) {
907	req, out := c.EnableStageTransitionRequest(input)
908	req.SetContext(ctx)
909	req.ApplyOptions(opts...)
910	return out, req.Send()
911}
912
913const opGetActionType = "GetActionType"
914
915// GetActionTypeRequest generates a "aws/request.Request" representing the
916// client's request for the GetActionType operation. The "output" return
917// value will be populated with the request's response once the request completes
918// successfully.
919//
920// Use "Send" method on the returned Request to send the API call to the service.
921// the "output" return value is not valid until after Send returns without error.
922//
923// See GetActionType for more information on using the GetActionType
924// API call, and error handling.
925//
926// This method is useful when you want to inject custom logic or configuration
927// into the SDK's request lifecycle. Such as custom headers, or retry logic.
928//
929//
930//    // Example sending a request using the GetActionTypeRequest method.
931//    req, resp := client.GetActionTypeRequest(params)
932//
933//    err := req.Send()
934//    if err == nil { // resp is now filled
935//        fmt.Println(resp)
936//    }
937//
938// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/GetActionType
939func (c *CodePipeline) GetActionTypeRequest(input *GetActionTypeInput) (req *request.Request, output *GetActionTypeOutput) {
940	op := &request.Operation{
941		Name:       opGetActionType,
942		HTTPMethod: "POST",
943		HTTPPath:   "/",
944	}
945
946	if input == nil {
947		input = &GetActionTypeInput{}
948	}
949
950	output = &GetActionTypeOutput{}
951	req = c.newRequest(op, input, output)
952	return
953}
954
955// GetActionType API operation for AWS CodePipeline.
956//
957// Returns information about an action type created for an external provider,
958// where the action is to be used by customers of the external provider. The
959// action can be created with any supported integration model.
960//
961// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
962// with awserr.Error's Code and Message methods to get detailed information about
963// the error.
964//
965// See the AWS API reference guide for AWS CodePipeline's
966// API operation GetActionType for usage and error information.
967//
968// Returned Error Types:
969//   * ActionTypeNotFoundException
970//   The specified action type cannot be found.
971//
972//   * ValidationException
973//   The validation was specified in an invalid format.
974//
975// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/GetActionType
976func (c *CodePipeline) GetActionType(input *GetActionTypeInput) (*GetActionTypeOutput, error) {
977	req, out := c.GetActionTypeRequest(input)
978	return out, req.Send()
979}
980
981// GetActionTypeWithContext is the same as GetActionType with the addition of
982// the ability to pass a context and additional request options.
983//
984// See GetActionType for details on how to use this API operation.
985//
986// The context must be non-nil and will be used for request cancellation. If
987// the context is nil a panic will occur. In the future the SDK may create
988// sub-contexts for http.Requests. See https://golang.org/pkg/context/
989// for more information on using Contexts.
990func (c *CodePipeline) GetActionTypeWithContext(ctx aws.Context, input *GetActionTypeInput, opts ...request.Option) (*GetActionTypeOutput, error) {
991	req, out := c.GetActionTypeRequest(input)
992	req.SetContext(ctx)
993	req.ApplyOptions(opts...)
994	return out, req.Send()
995}
996
997const opGetJobDetails = "GetJobDetails"
998
999// GetJobDetailsRequest generates a "aws/request.Request" representing the
1000// client's request for the GetJobDetails operation. The "output" return
1001// value will be populated with the request's response once the request completes
1002// successfully.
1003//
1004// Use "Send" method on the returned Request to send the API call to the service.
1005// the "output" return value is not valid until after Send returns without error.
1006//
1007// See GetJobDetails for more information on using the GetJobDetails
1008// API call, and error handling.
1009//
1010// This method is useful when you want to inject custom logic or configuration
1011// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1012//
1013//
1014//    // Example sending a request using the GetJobDetailsRequest method.
1015//    req, resp := client.GetJobDetailsRequest(params)
1016//
1017//    err := req.Send()
1018//    if err == nil { // resp is now filled
1019//        fmt.Println(resp)
1020//    }
1021//
1022// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/GetJobDetails
1023func (c *CodePipeline) GetJobDetailsRequest(input *GetJobDetailsInput) (req *request.Request, output *GetJobDetailsOutput) {
1024	op := &request.Operation{
1025		Name:       opGetJobDetails,
1026		HTTPMethod: "POST",
1027		HTTPPath:   "/",
1028	}
1029
1030	if input == nil {
1031		input = &GetJobDetailsInput{}
1032	}
1033
1034	output = &GetJobDetailsOutput{}
1035	req = c.newRequest(op, input, output)
1036	return
1037}
1038
1039// GetJobDetails API operation for AWS CodePipeline.
1040//
1041// Returns information about a job. Used for custom actions only.
1042//
1043// When this API is called, AWS CodePipeline returns temporary credentials for
1044// the S3 bucket used to store artifacts for the pipeline, if the action requires
1045// access to that S3 bucket for input or output artifacts. This API also returns
1046// any secret values defined for the action.
1047//
1048// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1049// with awserr.Error's Code and Message methods to get detailed information about
1050// the error.
1051//
1052// See the AWS API reference guide for AWS CodePipeline's
1053// API operation GetJobDetails for usage and error information.
1054//
1055// Returned Error Types:
1056//   * ValidationException
1057//   The validation was specified in an invalid format.
1058//
1059//   * JobNotFoundException
1060//   The job was specified in an invalid format or cannot be found.
1061//
1062// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/GetJobDetails
1063func (c *CodePipeline) GetJobDetails(input *GetJobDetailsInput) (*GetJobDetailsOutput, error) {
1064	req, out := c.GetJobDetailsRequest(input)
1065	return out, req.Send()
1066}
1067
1068// GetJobDetailsWithContext is the same as GetJobDetails with the addition of
1069// the ability to pass a context and additional request options.
1070//
1071// See GetJobDetails for details on how to use this API operation.
1072//
1073// The context must be non-nil and will be used for request cancellation. If
1074// the context is nil a panic will occur. In the future the SDK may create
1075// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1076// for more information on using Contexts.
1077func (c *CodePipeline) GetJobDetailsWithContext(ctx aws.Context, input *GetJobDetailsInput, opts ...request.Option) (*GetJobDetailsOutput, error) {
1078	req, out := c.GetJobDetailsRequest(input)
1079	req.SetContext(ctx)
1080	req.ApplyOptions(opts...)
1081	return out, req.Send()
1082}
1083
1084const opGetPipeline = "GetPipeline"
1085
1086// GetPipelineRequest generates a "aws/request.Request" representing the
1087// client's request for the GetPipeline operation. The "output" return
1088// value will be populated with the request's response once the request completes
1089// successfully.
1090//
1091// Use "Send" method on the returned Request to send the API call to the service.
1092// the "output" return value is not valid until after Send returns without error.
1093//
1094// See GetPipeline for more information on using the GetPipeline
1095// API call, and error handling.
1096//
1097// This method is useful when you want to inject custom logic or configuration
1098// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1099//
1100//
1101//    // Example sending a request using the GetPipelineRequest method.
1102//    req, resp := client.GetPipelineRequest(params)
1103//
1104//    err := req.Send()
1105//    if err == nil { // resp is now filled
1106//        fmt.Println(resp)
1107//    }
1108//
1109// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/GetPipeline
1110func (c *CodePipeline) GetPipelineRequest(input *GetPipelineInput) (req *request.Request, output *GetPipelineOutput) {
1111	op := &request.Operation{
1112		Name:       opGetPipeline,
1113		HTTPMethod: "POST",
1114		HTTPPath:   "/",
1115	}
1116
1117	if input == nil {
1118		input = &GetPipelineInput{}
1119	}
1120
1121	output = &GetPipelineOutput{}
1122	req = c.newRequest(op, input, output)
1123	return
1124}
1125
1126// GetPipeline API operation for AWS CodePipeline.
1127//
1128// Returns the metadata, structure, stages, and actions of a pipeline. Can be
1129// used to return the entire structure of a pipeline in JSON format, which can
1130// then be modified and used to update the pipeline structure with UpdatePipeline.
1131//
1132// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1133// with awserr.Error's Code and Message methods to get detailed information about
1134// the error.
1135//
1136// See the AWS API reference guide for AWS CodePipeline's
1137// API operation GetPipeline for usage and error information.
1138//
1139// Returned Error Types:
1140//   * ValidationException
1141//   The validation was specified in an invalid format.
1142//
1143//   * PipelineNotFoundException
1144//   The pipeline was specified in an invalid format or cannot be found.
1145//
1146//   * PipelineVersionNotFoundException
1147//   The pipeline version was specified in an invalid format or cannot be found.
1148//
1149// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/GetPipeline
1150func (c *CodePipeline) GetPipeline(input *GetPipelineInput) (*GetPipelineOutput, error) {
1151	req, out := c.GetPipelineRequest(input)
1152	return out, req.Send()
1153}
1154
1155// GetPipelineWithContext is the same as GetPipeline with the addition of
1156// the ability to pass a context and additional request options.
1157//
1158// See GetPipeline for details on how to use this API operation.
1159//
1160// The context must be non-nil and will be used for request cancellation. If
1161// the context is nil a panic will occur. In the future the SDK may create
1162// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1163// for more information on using Contexts.
1164func (c *CodePipeline) GetPipelineWithContext(ctx aws.Context, input *GetPipelineInput, opts ...request.Option) (*GetPipelineOutput, error) {
1165	req, out := c.GetPipelineRequest(input)
1166	req.SetContext(ctx)
1167	req.ApplyOptions(opts...)
1168	return out, req.Send()
1169}
1170
1171const opGetPipelineExecution = "GetPipelineExecution"
1172
1173// GetPipelineExecutionRequest generates a "aws/request.Request" representing the
1174// client's request for the GetPipelineExecution operation. The "output" return
1175// value will be populated with the request's response once the request completes
1176// successfully.
1177//
1178// Use "Send" method on the returned Request to send the API call to the service.
1179// the "output" return value is not valid until after Send returns without error.
1180//
1181// See GetPipelineExecution for more information on using the GetPipelineExecution
1182// API call, and error handling.
1183//
1184// This method is useful when you want to inject custom logic or configuration
1185// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1186//
1187//
1188//    // Example sending a request using the GetPipelineExecutionRequest method.
1189//    req, resp := client.GetPipelineExecutionRequest(params)
1190//
1191//    err := req.Send()
1192//    if err == nil { // resp is now filled
1193//        fmt.Println(resp)
1194//    }
1195//
1196// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/GetPipelineExecution
1197func (c *CodePipeline) GetPipelineExecutionRequest(input *GetPipelineExecutionInput) (req *request.Request, output *GetPipelineExecutionOutput) {
1198	op := &request.Operation{
1199		Name:       opGetPipelineExecution,
1200		HTTPMethod: "POST",
1201		HTTPPath:   "/",
1202	}
1203
1204	if input == nil {
1205		input = &GetPipelineExecutionInput{}
1206	}
1207
1208	output = &GetPipelineExecutionOutput{}
1209	req = c.newRequest(op, input, output)
1210	return
1211}
1212
1213// GetPipelineExecution API operation for AWS CodePipeline.
1214//
1215// Returns information about an execution of a pipeline, including details about
1216// artifacts, the pipeline execution ID, and the name, version, and status of
1217// the pipeline.
1218//
1219// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1220// with awserr.Error's Code and Message methods to get detailed information about
1221// the error.
1222//
1223// See the AWS API reference guide for AWS CodePipeline's
1224// API operation GetPipelineExecution for usage and error information.
1225//
1226// Returned Error Types:
1227//   * ValidationException
1228//   The validation was specified in an invalid format.
1229//
1230//   * PipelineNotFoundException
1231//   The pipeline was specified in an invalid format or cannot be found.
1232//
1233//   * PipelineExecutionNotFoundException
1234//   The pipeline execution was specified in an invalid format or cannot be found,
1235//   or an execution ID does not belong to the specified pipeline.
1236//
1237// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/GetPipelineExecution
1238func (c *CodePipeline) GetPipelineExecution(input *GetPipelineExecutionInput) (*GetPipelineExecutionOutput, error) {
1239	req, out := c.GetPipelineExecutionRequest(input)
1240	return out, req.Send()
1241}
1242
1243// GetPipelineExecutionWithContext is the same as GetPipelineExecution with the addition of
1244// the ability to pass a context and additional request options.
1245//
1246// See GetPipelineExecution for details on how to use this API operation.
1247//
1248// The context must be non-nil and will be used for request cancellation. If
1249// the context is nil a panic will occur. In the future the SDK may create
1250// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1251// for more information on using Contexts.
1252func (c *CodePipeline) GetPipelineExecutionWithContext(ctx aws.Context, input *GetPipelineExecutionInput, opts ...request.Option) (*GetPipelineExecutionOutput, error) {
1253	req, out := c.GetPipelineExecutionRequest(input)
1254	req.SetContext(ctx)
1255	req.ApplyOptions(opts...)
1256	return out, req.Send()
1257}
1258
1259const opGetPipelineState = "GetPipelineState"
1260
1261// GetPipelineStateRequest generates a "aws/request.Request" representing the
1262// client's request for the GetPipelineState operation. The "output" return
1263// value will be populated with the request's response once the request completes
1264// successfully.
1265//
1266// Use "Send" method on the returned Request to send the API call to the service.
1267// the "output" return value is not valid until after Send returns without error.
1268//
1269// See GetPipelineState for more information on using the GetPipelineState
1270// API call, and error handling.
1271//
1272// This method is useful when you want to inject custom logic or configuration
1273// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1274//
1275//
1276//    // Example sending a request using the GetPipelineStateRequest method.
1277//    req, resp := client.GetPipelineStateRequest(params)
1278//
1279//    err := req.Send()
1280//    if err == nil { // resp is now filled
1281//        fmt.Println(resp)
1282//    }
1283//
1284// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/GetPipelineState
1285func (c *CodePipeline) GetPipelineStateRequest(input *GetPipelineStateInput) (req *request.Request, output *GetPipelineStateOutput) {
1286	op := &request.Operation{
1287		Name:       opGetPipelineState,
1288		HTTPMethod: "POST",
1289		HTTPPath:   "/",
1290	}
1291
1292	if input == nil {
1293		input = &GetPipelineStateInput{}
1294	}
1295
1296	output = &GetPipelineStateOutput{}
1297	req = c.newRequest(op, input, output)
1298	return
1299}
1300
1301// GetPipelineState API operation for AWS CodePipeline.
1302//
1303// Returns information about the state of a pipeline, including the stages and
1304// actions.
1305//
1306// Values returned in the revisionId and revisionUrl fields indicate the source
1307// revision information, such as the commit ID, for the current state.
1308//
1309// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1310// with awserr.Error's Code and Message methods to get detailed information about
1311// the error.
1312//
1313// See the AWS API reference guide for AWS CodePipeline's
1314// API operation GetPipelineState for usage and error information.
1315//
1316// Returned Error Types:
1317//   * ValidationException
1318//   The validation was specified in an invalid format.
1319//
1320//   * PipelineNotFoundException
1321//   The pipeline was specified in an invalid format or cannot be found.
1322//
1323// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/GetPipelineState
1324func (c *CodePipeline) GetPipelineState(input *GetPipelineStateInput) (*GetPipelineStateOutput, error) {
1325	req, out := c.GetPipelineStateRequest(input)
1326	return out, req.Send()
1327}
1328
1329// GetPipelineStateWithContext is the same as GetPipelineState with the addition of
1330// the ability to pass a context and additional request options.
1331//
1332// See GetPipelineState for details on how to use this API operation.
1333//
1334// The context must be non-nil and will be used for request cancellation. If
1335// the context is nil a panic will occur. In the future the SDK may create
1336// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1337// for more information on using Contexts.
1338func (c *CodePipeline) GetPipelineStateWithContext(ctx aws.Context, input *GetPipelineStateInput, opts ...request.Option) (*GetPipelineStateOutput, error) {
1339	req, out := c.GetPipelineStateRequest(input)
1340	req.SetContext(ctx)
1341	req.ApplyOptions(opts...)
1342	return out, req.Send()
1343}
1344
1345const opGetThirdPartyJobDetails = "GetThirdPartyJobDetails"
1346
1347// GetThirdPartyJobDetailsRequest generates a "aws/request.Request" representing the
1348// client's request for the GetThirdPartyJobDetails operation. The "output" return
1349// value will be populated with the request's response once the request completes
1350// successfully.
1351//
1352// Use "Send" method on the returned Request to send the API call to the service.
1353// the "output" return value is not valid until after Send returns without error.
1354//
1355// See GetThirdPartyJobDetails for more information on using the GetThirdPartyJobDetails
1356// API call, and error handling.
1357//
1358// This method is useful when you want to inject custom logic or configuration
1359// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1360//
1361//
1362//    // Example sending a request using the GetThirdPartyJobDetailsRequest method.
1363//    req, resp := client.GetThirdPartyJobDetailsRequest(params)
1364//
1365//    err := req.Send()
1366//    if err == nil { // resp is now filled
1367//        fmt.Println(resp)
1368//    }
1369//
1370// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/GetThirdPartyJobDetails
1371func (c *CodePipeline) GetThirdPartyJobDetailsRequest(input *GetThirdPartyJobDetailsInput) (req *request.Request, output *GetThirdPartyJobDetailsOutput) {
1372	op := &request.Operation{
1373		Name:       opGetThirdPartyJobDetails,
1374		HTTPMethod: "POST",
1375		HTTPPath:   "/",
1376	}
1377
1378	if input == nil {
1379		input = &GetThirdPartyJobDetailsInput{}
1380	}
1381
1382	output = &GetThirdPartyJobDetailsOutput{}
1383	req = c.newRequest(op, input, output)
1384	return
1385}
1386
1387// GetThirdPartyJobDetails API operation for AWS CodePipeline.
1388//
1389// Requests the details of a job for a third party action. Used for partner
1390// actions only.
1391//
1392// When this API is called, AWS CodePipeline returns temporary credentials for
1393// the S3 bucket used to store artifacts for the pipeline, if the action requires
1394// access to that S3 bucket for input or output artifacts. This API also returns
1395// any secret values defined for the action.
1396//
1397// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1398// with awserr.Error's Code and Message methods to get detailed information about
1399// the error.
1400//
1401// See the AWS API reference guide for AWS CodePipeline's
1402// API operation GetThirdPartyJobDetails for usage and error information.
1403//
1404// Returned Error Types:
1405//   * JobNotFoundException
1406//   The job was specified in an invalid format or cannot be found.
1407//
1408//   * ValidationException
1409//   The validation was specified in an invalid format.
1410//
1411//   * InvalidClientTokenException
1412//   The client token was specified in an invalid format
1413//
1414//   * InvalidJobException
1415//   The job was specified in an invalid format or cannot be found.
1416//
1417// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/GetThirdPartyJobDetails
1418func (c *CodePipeline) GetThirdPartyJobDetails(input *GetThirdPartyJobDetailsInput) (*GetThirdPartyJobDetailsOutput, error) {
1419	req, out := c.GetThirdPartyJobDetailsRequest(input)
1420	return out, req.Send()
1421}
1422
1423// GetThirdPartyJobDetailsWithContext is the same as GetThirdPartyJobDetails with the addition of
1424// the ability to pass a context and additional request options.
1425//
1426// See GetThirdPartyJobDetails for details on how to use this API operation.
1427//
1428// The context must be non-nil and will be used for request cancellation. If
1429// the context is nil a panic will occur. In the future the SDK may create
1430// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1431// for more information on using Contexts.
1432func (c *CodePipeline) GetThirdPartyJobDetailsWithContext(ctx aws.Context, input *GetThirdPartyJobDetailsInput, opts ...request.Option) (*GetThirdPartyJobDetailsOutput, error) {
1433	req, out := c.GetThirdPartyJobDetailsRequest(input)
1434	req.SetContext(ctx)
1435	req.ApplyOptions(opts...)
1436	return out, req.Send()
1437}
1438
1439const opListActionExecutions = "ListActionExecutions"
1440
1441// ListActionExecutionsRequest generates a "aws/request.Request" representing the
1442// client's request for the ListActionExecutions operation. The "output" return
1443// value will be populated with the request's response once the request completes
1444// successfully.
1445//
1446// Use "Send" method on the returned Request to send the API call to the service.
1447// the "output" return value is not valid until after Send returns without error.
1448//
1449// See ListActionExecutions for more information on using the ListActionExecutions
1450// API call, and error handling.
1451//
1452// This method is useful when you want to inject custom logic or configuration
1453// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1454//
1455//
1456//    // Example sending a request using the ListActionExecutionsRequest method.
1457//    req, resp := client.ListActionExecutionsRequest(params)
1458//
1459//    err := req.Send()
1460//    if err == nil { // resp is now filled
1461//        fmt.Println(resp)
1462//    }
1463//
1464// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/ListActionExecutions
1465func (c *CodePipeline) ListActionExecutionsRequest(input *ListActionExecutionsInput) (req *request.Request, output *ListActionExecutionsOutput) {
1466	op := &request.Operation{
1467		Name:       opListActionExecutions,
1468		HTTPMethod: "POST",
1469		HTTPPath:   "/",
1470		Paginator: &request.Paginator{
1471			InputTokens:     []string{"nextToken"},
1472			OutputTokens:    []string{"nextToken"},
1473			LimitToken:      "maxResults",
1474			TruncationToken: "",
1475		},
1476	}
1477
1478	if input == nil {
1479		input = &ListActionExecutionsInput{}
1480	}
1481
1482	output = &ListActionExecutionsOutput{}
1483	req = c.newRequest(op, input, output)
1484	return
1485}
1486
1487// ListActionExecutions API operation for AWS CodePipeline.
1488//
1489// Lists the action executions that have occurred in a pipeline.
1490//
1491// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1492// with awserr.Error's Code and Message methods to get detailed information about
1493// the error.
1494//
1495// See the AWS API reference guide for AWS CodePipeline's
1496// API operation ListActionExecutions for usage and error information.
1497//
1498// Returned Error Types:
1499//   * ValidationException
1500//   The validation was specified in an invalid format.
1501//
1502//   * PipelineNotFoundException
1503//   The pipeline was specified in an invalid format or cannot be found.
1504//
1505//   * InvalidNextTokenException
1506//   The next token was specified in an invalid format. Make sure that the next
1507//   token you provide is the token returned by a previous call.
1508//
1509//   * PipelineExecutionNotFoundException
1510//   The pipeline execution was specified in an invalid format or cannot be found,
1511//   or an execution ID does not belong to the specified pipeline.
1512//
1513// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/ListActionExecutions
1514func (c *CodePipeline) ListActionExecutions(input *ListActionExecutionsInput) (*ListActionExecutionsOutput, error) {
1515	req, out := c.ListActionExecutionsRequest(input)
1516	return out, req.Send()
1517}
1518
1519// ListActionExecutionsWithContext is the same as ListActionExecutions with the addition of
1520// the ability to pass a context and additional request options.
1521//
1522// See ListActionExecutions for details on how to use this API operation.
1523//
1524// The context must be non-nil and will be used for request cancellation. If
1525// the context is nil a panic will occur. In the future the SDK may create
1526// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1527// for more information on using Contexts.
1528func (c *CodePipeline) ListActionExecutionsWithContext(ctx aws.Context, input *ListActionExecutionsInput, opts ...request.Option) (*ListActionExecutionsOutput, error) {
1529	req, out := c.ListActionExecutionsRequest(input)
1530	req.SetContext(ctx)
1531	req.ApplyOptions(opts...)
1532	return out, req.Send()
1533}
1534
1535// ListActionExecutionsPages iterates over the pages of a ListActionExecutions operation,
1536// calling the "fn" function with the response data for each page. To stop
1537// iterating, return false from the fn function.
1538//
1539// See ListActionExecutions method for more information on how to use this operation.
1540//
1541// Note: This operation can generate multiple requests to a service.
1542//
1543//    // Example iterating over at most 3 pages of a ListActionExecutions operation.
1544//    pageNum := 0
1545//    err := client.ListActionExecutionsPages(params,
1546//        func(page *codepipeline.ListActionExecutionsOutput, lastPage bool) bool {
1547//            pageNum++
1548//            fmt.Println(page)
1549//            return pageNum <= 3
1550//        })
1551//
1552func (c *CodePipeline) ListActionExecutionsPages(input *ListActionExecutionsInput, fn func(*ListActionExecutionsOutput, bool) bool) error {
1553	return c.ListActionExecutionsPagesWithContext(aws.BackgroundContext(), input, fn)
1554}
1555
1556// ListActionExecutionsPagesWithContext same as ListActionExecutionsPages except
1557// it takes a Context and allows setting request options on the pages.
1558//
1559// The context must be non-nil and will be used for request cancellation. If
1560// the context is nil a panic will occur. In the future the SDK may create
1561// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1562// for more information on using Contexts.
1563func (c *CodePipeline) ListActionExecutionsPagesWithContext(ctx aws.Context, input *ListActionExecutionsInput, fn func(*ListActionExecutionsOutput, bool) bool, opts ...request.Option) error {
1564	p := request.Pagination{
1565		NewRequest: func() (*request.Request, error) {
1566			var inCpy *ListActionExecutionsInput
1567			if input != nil {
1568				tmp := *input
1569				inCpy = &tmp
1570			}
1571			req, _ := c.ListActionExecutionsRequest(inCpy)
1572			req.SetContext(ctx)
1573			req.ApplyOptions(opts...)
1574			return req, nil
1575		},
1576	}
1577
1578	for p.Next() {
1579		if !fn(p.Page().(*ListActionExecutionsOutput), !p.HasNextPage()) {
1580			break
1581		}
1582	}
1583
1584	return p.Err()
1585}
1586
1587const opListActionTypes = "ListActionTypes"
1588
1589// ListActionTypesRequest generates a "aws/request.Request" representing the
1590// client's request for the ListActionTypes operation. The "output" return
1591// value will be populated with the request's response once the request completes
1592// successfully.
1593//
1594// Use "Send" method on the returned Request to send the API call to the service.
1595// the "output" return value is not valid until after Send returns without error.
1596//
1597// See ListActionTypes for more information on using the ListActionTypes
1598// API call, and error handling.
1599//
1600// This method is useful when you want to inject custom logic or configuration
1601// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1602//
1603//
1604//    // Example sending a request using the ListActionTypesRequest method.
1605//    req, resp := client.ListActionTypesRequest(params)
1606//
1607//    err := req.Send()
1608//    if err == nil { // resp is now filled
1609//        fmt.Println(resp)
1610//    }
1611//
1612// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/ListActionTypes
1613func (c *CodePipeline) ListActionTypesRequest(input *ListActionTypesInput) (req *request.Request, output *ListActionTypesOutput) {
1614	op := &request.Operation{
1615		Name:       opListActionTypes,
1616		HTTPMethod: "POST",
1617		HTTPPath:   "/",
1618		Paginator: &request.Paginator{
1619			InputTokens:     []string{"nextToken"},
1620			OutputTokens:    []string{"nextToken"},
1621			LimitToken:      "",
1622			TruncationToken: "",
1623		},
1624	}
1625
1626	if input == nil {
1627		input = &ListActionTypesInput{}
1628	}
1629
1630	output = &ListActionTypesOutput{}
1631	req = c.newRequest(op, input, output)
1632	return
1633}
1634
1635// ListActionTypes API operation for AWS CodePipeline.
1636//
1637// Gets a summary of all AWS CodePipeline action types associated with your
1638// account.
1639//
1640// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1641// with awserr.Error's Code and Message methods to get detailed information about
1642// the error.
1643//
1644// See the AWS API reference guide for AWS CodePipeline's
1645// API operation ListActionTypes for usage and error information.
1646//
1647// Returned Error Types:
1648//   * ValidationException
1649//   The validation was specified in an invalid format.
1650//
1651//   * InvalidNextTokenException
1652//   The next token was specified in an invalid format. Make sure that the next
1653//   token you provide is the token returned by a previous call.
1654//
1655// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/ListActionTypes
1656func (c *CodePipeline) ListActionTypes(input *ListActionTypesInput) (*ListActionTypesOutput, error) {
1657	req, out := c.ListActionTypesRequest(input)
1658	return out, req.Send()
1659}
1660
1661// ListActionTypesWithContext is the same as ListActionTypes with the addition of
1662// the ability to pass a context and additional request options.
1663//
1664// See ListActionTypes for details on how to use this API operation.
1665//
1666// The context must be non-nil and will be used for request cancellation. If
1667// the context is nil a panic will occur. In the future the SDK may create
1668// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1669// for more information on using Contexts.
1670func (c *CodePipeline) ListActionTypesWithContext(ctx aws.Context, input *ListActionTypesInput, opts ...request.Option) (*ListActionTypesOutput, error) {
1671	req, out := c.ListActionTypesRequest(input)
1672	req.SetContext(ctx)
1673	req.ApplyOptions(opts...)
1674	return out, req.Send()
1675}
1676
1677// ListActionTypesPages iterates over the pages of a ListActionTypes operation,
1678// calling the "fn" function with the response data for each page. To stop
1679// iterating, return false from the fn function.
1680//
1681// See ListActionTypes method for more information on how to use this operation.
1682//
1683// Note: This operation can generate multiple requests to a service.
1684//
1685//    // Example iterating over at most 3 pages of a ListActionTypes operation.
1686//    pageNum := 0
1687//    err := client.ListActionTypesPages(params,
1688//        func(page *codepipeline.ListActionTypesOutput, lastPage bool) bool {
1689//            pageNum++
1690//            fmt.Println(page)
1691//            return pageNum <= 3
1692//        })
1693//
1694func (c *CodePipeline) ListActionTypesPages(input *ListActionTypesInput, fn func(*ListActionTypesOutput, bool) bool) error {
1695	return c.ListActionTypesPagesWithContext(aws.BackgroundContext(), input, fn)
1696}
1697
1698// ListActionTypesPagesWithContext same as ListActionTypesPages except
1699// it takes a Context and allows setting request options on the pages.
1700//
1701// The context must be non-nil and will be used for request cancellation. If
1702// the context is nil a panic will occur. In the future the SDK may create
1703// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1704// for more information on using Contexts.
1705func (c *CodePipeline) ListActionTypesPagesWithContext(ctx aws.Context, input *ListActionTypesInput, fn func(*ListActionTypesOutput, bool) bool, opts ...request.Option) error {
1706	p := request.Pagination{
1707		NewRequest: func() (*request.Request, error) {
1708			var inCpy *ListActionTypesInput
1709			if input != nil {
1710				tmp := *input
1711				inCpy = &tmp
1712			}
1713			req, _ := c.ListActionTypesRequest(inCpy)
1714			req.SetContext(ctx)
1715			req.ApplyOptions(opts...)
1716			return req, nil
1717		},
1718	}
1719
1720	for p.Next() {
1721		if !fn(p.Page().(*ListActionTypesOutput), !p.HasNextPage()) {
1722			break
1723		}
1724	}
1725
1726	return p.Err()
1727}
1728
1729const opListPipelineExecutions = "ListPipelineExecutions"
1730
1731// ListPipelineExecutionsRequest generates a "aws/request.Request" representing the
1732// client's request for the ListPipelineExecutions operation. The "output" return
1733// value will be populated with the request's response once the request completes
1734// successfully.
1735//
1736// Use "Send" method on the returned Request to send the API call to the service.
1737// the "output" return value is not valid until after Send returns without error.
1738//
1739// See ListPipelineExecutions for more information on using the ListPipelineExecutions
1740// API call, and error handling.
1741//
1742// This method is useful when you want to inject custom logic or configuration
1743// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1744//
1745//
1746//    // Example sending a request using the ListPipelineExecutionsRequest method.
1747//    req, resp := client.ListPipelineExecutionsRequest(params)
1748//
1749//    err := req.Send()
1750//    if err == nil { // resp is now filled
1751//        fmt.Println(resp)
1752//    }
1753//
1754// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/ListPipelineExecutions
1755func (c *CodePipeline) ListPipelineExecutionsRequest(input *ListPipelineExecutionsInput) (req *request.Request, output *ListPipelineExecutionsOutput) {
1756	op := &request.Operation{
1757		Name:       opListPipelineExecutions,
1758		HTTPMethod: "POST",
1759		HTTPPath:   "/",
1760		Paginator: &request.Paginator{
1761			InputTokens:     []string{"nextToken"},
1762			OutputTokens:    []string{"nextToken"},
1763			LimitToken:      "maxResults",
1764			TruncationToken: "",
1765		},
1766	}
1767
1768	if input == nil {
1769		input = &ListPipelineExecutionsInput{}
1770	}
1771
1772	output = &ListPipelineExecutionsOutput{}
1773	req = c.newRequest(op, input, output)
1774	return
1775}
1776
1777// ListPipelineExecutions API operation for AWS CodePipeline.
1778//
1779// Gets a summary of the most recent executions for a pipeline.
1780//
1781// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1782// with awserr.Error's Code and Message methods to get detailed information about
1783// the error.
1784//
1785// See the AWS API reference guide for AWS CodePipeline's
1786// API operation ListPipelineExecutions for usage and error information.
1787//
1788// Returned Error Types:
1789//   * ValidationException
1790//   The validation was specified in an invalid format.
1791//
1792//   * PipelineNotFoundException
1793//   The pipeline was specified in an invalid format or cannot be found.
1794//
1795//   * InvalidNextTokenException
1796//   The next token was specified in an invalid format. Make sure that the next
1797//   token you provide is the token returned by a previous call.
1798//
1799// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/ListPipelineExecutions
1800func (c *CodePipeline) ListPipelineExecutions(input *ListPipelineExecutionsInput) (*ListPipelineExecutionsOutput, error) {
1801	req, out := c.ListPipelineExecutionsRequest(input)
1802	return out, req.Send()
1803}
1804
1805// ListPipelineExecutionsWithContext is the same as ListPipelineExecutions with the addition of
1806// the ability to pass a context and additional request options.
1807//
1808// See ListPipelineExecutions for details on how to use this API operation.
1809//
1810// The context must be non-nil and will be used for request cancellation. If
1811// the context is nil a panic will occur. In the future the SDK may create
1812// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1813// for more information on using Contexts.
1814func (c *CodePipeline) ListPipelineExecutionsWithContext(ctx aws.Context, input *ListPipelineExecutionsInput, opts ...request.Option) (*ListPipelineExecutionsOutput, error) {
1815	req, out := c.ListPipelineExecutionsRequest(input)
1816	req.SetContext(ctx)
1817	req.ApplyOptions(opts...)
1818	return out, req.Send()
1819}
1820
1821// ListPipelineExecutionsPages iterates over the pages of a ListPipelineExecutions operation,
1822// calling the "fn" function with the response data for each page. To stop
1823// iterating, return false from the fn function.
1824//
1825// See ListPipelineExecutions method for more information on how to use this operation.
1826//
1827// Note: This operation can generate multiple requests to a service.
1828//
1829//    // Example iterating over at most 3 pages of a ListPipelineExecutions operation.
1830//    pageNum := 0
1831//    err := client.ListPipelineExecutionsPages(params,
1832//        func(page *codepipeline.ListPipelineExecutionsOutput, lastPage bool) bool {
1833//            pageNum++
1834//            fmt.Println(page)
1835//            return pageNum <= 3
1836//        })
1837//
1838func (c *CodePipeline) ListPipelineExecutionsPages(input *ListPipelineExecutionsInput, fn func(*ListPipelineExecutionsOutput, bool) bool) error {
1839	return c.ListPipelineExecutionsPagesWithContext(aws.BackgroundContext(), input, fn)
1840}
1841
1842// ListPipelineExecutionsPagesWithContext same as ListPipelineExecutionsPages except
1843// it takes a Context and allows setting request options on the pages.
1844//
1845// The context must be non-nil and will be used for request cancellation. If
1846// the context is nil a panic will occur. In the future the SDK may create
1847// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1848// for more information on using Contexts.
1849func (c *CodePipeline) ListPipelineExecutionsPagesWithContext(ctx aws.Context, input *ListPipelineExecutionsInput, fn func(*ListPipelineExecutionsOutput, bool) bool, opts ...request.Option) error {
1850	p := request.Pagination{
1851		NewRequest: func() (*request.Request, error) {
1852			var inCpy *ListPipelineExecutionsInput
1853			if input != nil {
1854				tmp := *input
1855				inCpy = &tmp
1856			}
1857			req, _ := c.ListPipelineExecutionsRequest(inCpy)
1858			req.SetContext(ctx)
1859			req.ApplyOptions(opts...)
1860			return req, nil
1861		},
1862	}
1863
1864	for p.Next() {
1865		if !fn(p.Page().(*ListPipelineExecutionsOutput), !p.HasNextPage()) {
1866			break
1867		}
1868	}
1869
1870	return p.Err()
1871}
1872
1873const opListPipelines = "ListPipelines"
1874
1875// ListPipelinesRequest generates a "aws/request.Request" representing the
1876// client's request for the ListPipelines operation. The "output" return
1877// value will be populated with the request's response once the request completes
1878// successfully.
1879//
1880// Use "Send" method on the returned Request to send the API call to the service.
1881// the "output" return value is not valid until after Send returns without error.
1882//
1883// See ListPipelines for more information on using the ListPipelines
1884// API call, and error handling.
1885//
1886// This method is useful when you want to inject custom logic or configuration
1887// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1888//
1889//
1890//    // Example sending a request using the ListPipelinesRequest method.
1891//    req, resp := client.ListPipelinesRequest(params)
1892//
1893//    err := req.Send()
1894//    if err == nil { // resp is now filled
1895//        fmt.Println(resp)
1896//    }
1897//
1898// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/ListPipelines
1899func (c *CodePipeline) ListPipelinesRequest(input *ListPipelinesInput) (req *request.Request, output *ListPipelinesOutput) {
1900	op := &request.Operation{
1901		Name:       opListPipelines,
1902		HTTPMethod: "POST",
1903		HTTPPath:   "/",
1904		Paginator: &request.Paginator{
1905			InputTokens:     []string{"nextToken"},
1906			OutputTokens:    []string{"nextToken"},
1907			LimitToken:      "maxResults",
1908			TruncationToken: "",
1909		},
1910	}
1911
1912	if input == nil {
1913		input = &ListPipelinesInput{}
1914	}
1915
1916	output = &ListPipelinesOutput{}
1917	req = c.newRequest(op, input, output)
1918	return
1919}
1920
1921// ListPipelines API operation for AWS CodePipeline.
1922//
1923// Gets a summary of all of the pipelines associated with your account.
1924//
1925// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1926// with awserr.Error's Code and Message methods to get detailed information about
1927// the error.
1928//
1929// See the AWS API reference guide for AWS CodePipeline's
1930// API operation ListPipelines for usage and error information.
1931//
1932// Returned Error Types:
1933//   * ValidationException
1934//   The validation was specified in an invalid format.
1935//
1936//   * InvalidNextTokenException
1937//   The next token was specified in an invalid format. Make sure that the next
1938//   token you provide is the token returned by a previous call.
1939//
1940// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/ListPipelines
1941func (c *CodePipeline) ListPipelines(input *ListPipelinesInput) (*ListPipelinesOutput, error) {
1942	req, out := c.ListPipelinesRequest(input)
1943	return out, req.Send()
1944}
1945
1946// ListPipelinesWithContext is the same as ListPipelines with the addition of
1947// the ability to pass a context and additional request options.
1948//
1949// See ListPipelines for details on how to use this API operation.
1950//
1951// The context must be non-nil and will be used for request cancellation. If
1952// the context is nil a panic will occur. In the future the SDK may create
1953// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1954// for more information on using Contexts.
1955func (c *CodePipeline) ListPipelinesWithContext(ctx aws.Context, input *ListPipelinesInput, opts ...request.Option) (*ListPipelinesOutput, error) {
1956	req, out := c.ListPipelinesRequest(input)
1957	req.SetContext(ctx)
1958	req.ApplyOptions(opts...)
1959	return out, req.Send()
1960}
1961
1962// ListPipelinesPages iterates over the pages of a ListPipelines operation,
1963// calling the "fn" function with the response data for each page. To stop
1964// iterating, return false from the fn function.
1965//
1966// See ListPipelines method for more information on how to use this operation.
1967//
1968// Note: This operation can generate multiple requests to a service.
1969//
1970//    // Example iterating over at most 3 pages of a ListPipelines operation.
1971//    pageNum := 0
1972//    err := client.ListPipelinesPages(params,
1973//        func(page *codepipeline.ListPipelinesOutput, lastPage bool) bool {
1974//            pageNum++
1975//            fmt.Println(page)
1976//            return pageNum <= 3
1977//        })
1978//
1979func (c *CodePipeline) ListPipelinesPages(input *ListPipelinesInput, fn func(*ListPipelinesOutput, bool) bool) error {
1980	return c.ListPipelinesPagesWithContext(aws.BackgroundContext(), input, fn)
1981}
1982
1983// ListPipelinesPagesWithContext same as ListPipelinesPages except
1984// it takes a Context and allows setting request options on the pages.
1985//
1986// The context must be non-nil and will be used for request cancellation. If
1987// the context is nil a panic will occur. In the future the SDK may create
1988// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1989// for more information on using Contexts.
1990func (c *CodePipeline) ListPipelinesPagesWithContext(ctx aws.Context, input *ListPipelinesInput, fn func(*ListPipelinesOutput, bool) bool, opts ...request.Option) error {
1991	p := request.Pagination{
1992		NewRequest: func() (*request.Request, error) {
1993			var inCpy *ListPipelinesInput
1994			if input != nil {
1995				tmp := *input
1996				inCpy = &tmp
1997			}
1998			req, _ := c.ListPipelinesRequest(inCpy)
1999			req.SetContext(ctx)
2000			req.ApplyOptions(opts...)
2001			return req, nil
2002		},
2003	}
2004
2005	for p.Next() {
2006		if !fn(p.Page().(*ListPipelinesOutput), !p.HasNextPage()) {
2007			break
2008		}
2009	}
2010
2011	return p.Err()
2012}
2013
2014const opListTagsForResource = "ListTagsForResource"
2015
2016// ListTagsForResourceRequest generates a "aws/request.Request" representing the
2017// client's request for the ListTagsForResource operation. The "output" return
2018// value will be populated with the request's response once the request completes
2019// successfully.
2020//
2021// Use "Send" method on the returned Request to send the API call to the service.
2022// the "output" return value is not valid until after Send returns without error.
2023//
2024// See ListTagsForResource for more information on using the ListTagsForResource
2025// API call, and error handling.
2026//
2027// This method is useful when you want to inject custom logic or configuration
2028// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2029//
2030//
2031//    // Example sending a request using the ListTagsForResourceRequest method.
2032//    req, resp := client.ListTagsForResourceRequest(params)
2033//
2034//    err := req.Send()
2035//    if err == nil { // resp is now filled
2036//        fmt.Println(resp)
2037//    }
2038//
2039// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/ListTagsForResource
2040func (c *CodePipeline) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) {
2041	op := &request.Operation{
2042		Name:       opListTagsForResource,
2043		HTTPMethod: "POST",
2044		HTTPPath:   "/",
2045		Paginator: &request.Paginator{
2046			InputTokens:     []string{"nextToken"},
2047			OutputTokens:    []string{"nextToken"},
2048			LimitToken:      "maxResults",
2049			TruncationToken: "",
2050		},
2051	}
2052
2053	if input == nil {
2054		input = &ListTagsForResourceInput{}
2055	}
2056
2057	output = &ListTagsForResourceOutput{}
2058	req = c.newRequest(op, input, output)
2059	return
2060}
2061
2062// ListTagsForResource API operation for AWS CodePipeline.
2063//
2064// Gets the set of key-value pairs (metadata) that are used to manage the resource.
2065//
2066// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2067// with awserr.Error's Code and Message methods to get detailed information about
2068// the error.
2069//
2070// See the AWS API reference guide for AWS CodePipeline's
2071// API operation ListTagsForResource for usage and error information.
2072//
2073// Returned Error Types:
2074//   * ValidationException
2075//   The validation was specified in an invalid format.
2076//
2077//   * ResourceNotFoundException
2078//   The resource was specified in an invalid format.
2079//
2080//   * InvalidNextTokenException
2081//   The next token was specified in an invalid format. Make sure that the next
2082//   token you provide is the token returned by a previous call.
2083//
2084//   * InvalidArnException
2085//   The specified resource ARN is invalid.
2086//
2087// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/ListTagsForResource
2088func (c *CodePipeline) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) {
2089	req, out := c.ListTagsForResourceRequest(input)
2090	return out, req.Send()
2091}
2092
2093// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of
2094// the ability to pass a context and additional request options.
2095//
2096// See ListTagsForResource for details on how to use this API operation.
2097//
2098// The context must be non-nil and will be used for request cancellation. If
2099// the context is nil a panic will occur. In the future the SDK may create
2100// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2101// for more information on using Contexts.
2102func (c *CodePipeline) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) {
2103	req, out := c.ListTagsForResourceRequest(input)
2104	req.SetContext(ctx)
2105	req.ApplyOptions(opts...)
2106	return out, req.Send()
2107}
2108
2109// ListTagsForResourcePages iterates over the pages of a ListTagsForResource operation,
2110// calling the "fn" function with the response data for each page. To stop
2111// iterating, return false from the fn function.
2112//
2113// See ListTagsForResource method for more information on how to use this operation.
2114//
2115// Note: This operation can generate multiple requests to a service.
2116//
2117//    // Example iterating over at most 3 pages of a ListTagsForResource operation.
2118//    pageNum := 0
2119//    err := client.ListTagsForResourcePages(params,
2120//        func(page *codepipeline.ListTagsForResourceOutput, lastPage bool) bool {
2121//            pageNum++
2122//            fmt.Println(page)
2123//            return pageNum <= 3
2124//        })
2125//
2126func (c *CodePipeline) ListTagsForResourcePages(input *ListTagsForResourceInput, fn func(*ListTagsForResourceOutput, bool) bool) error {
2127	return c.ListTagsForResourcePagesWithContext(aws.BackgroundContext(), input, fn)
2128}
2129
2130// ListTagsForResourcePagesWithContext same as ListTagsForResourcePages except
2131// it takes a Context and allows setting request options on the pages.
2132//
2133// The context must be non-nil and will be used for request cancellation. If
2134// the context is nil a panic will occur. In the future the SDK may create
2135// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2136// for more information on using Contexts.
2137func (c *CodePipeline) ListTagsForResourcePagesWithContext(ctx aws.Context, input *ListTagsForResourceInput, fn func(*ListTagsForResourceOutput, bool) bool, opts ...request.Option) error {
2138	p := request.Pagination{
2139		NewRequest: func() (*request.Request, error) {
2140			var inCpy *ListTagsForResourceInput
2141			if input != nil {
2142				tmp := *input
2143				inCpy = &tmp
2144			}
2145			req, _ := c.ListTagsForResourceRequest(inCpy)
2146			req.SetContext(ctx)
2147			req.ApplyOptions(opts...)
2148			return req, nil
2149		},
2150	}
2151
2152	for p.Next() {
2153		if !fn(p.Page().(*ListTagsForResourceOutput), !p.HasNextPage()) {
2154			break
2155		}
2156	}
2157
2158	return p.Err()
2159}
2160
2161const opListWebhooks = "ListWebhooks"
2162
2163// ListWebhooksRequest generates a "aws/request.Request" representing the
2164// client's request for the ListWebhooks operation. The "output" return
2165// value will be populated with the request's response once the request completes
2166// successfully.
2167//
2168// Use "Send" method on the returned Request to send the API call to the service.
2169// the "output" return value is not valid until after Send returns without error.
2170//
2171// See ListWebhooks for more information on using the ListWebhooks
2172// API call, and error handling.
2173//
2174// This method is useful when you want to inject custom logic or configuration
2175// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2176//
2177//
2178//    // Example sending a request using the ListWebhooksRequest method.
2179//    req, resp := client.ListWebhooksRequest(params)
2180//
2181//    err := req.Send()
2182//    if err == nil { // resp is now filled
2183//        fmt.Println(resp)
2184//    }
2185//
2186// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/ListWebhooks
2187func (c *CodePipeline) ListWebhooksRequest(input *ListWebhooksInput) (req *request.Request, output *ListWebhooksOutput) {
2188	op := &request.Operation{
2189		Name:       opListWebhooks,
2190		HTTPMethod: "POST",
2191		HTTPPath:   "/",
2192		Paginator: &request.Paginator{
2193			InputTokens:     []string{"NextToken"},
2194			OutputTokens:    []string{"NextToken"},
2195			LimitToken:      "MaxResults",
2196			TruncationToken: "",
2197		},
2198	}
2199
2200	if input == nil {
2201		input = &ListWebhooksInput{}
2202	}
2203
2204	output = &ListWebhooksOutput{}
2205	req = c.newRequest(op, input, output)
2206	return
2207}
2208
2209// ListWebhooks API operation for AWS CodePipeline.
2210//
2211// Gets a listing of all the webhooks in this AWS Region for this account. The
2212// output lists all webhooks and includes the webhook URL and ARN and the configuration
2213// for each webhook.
2214//
2215// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2216// with awserr.Error's Code and Message methods to get detailed information about
2217// the error.
2218//
2219// See the AWS API reference guide for AWS CodePipeline's
2220// API operation ListWebhooks for usage and error information.
2221//
2222// Returned Error Types:
2223//   * ValidationException
2224//   The validation was specified in an invalid format.
2225//
2226//   * InvalidNextTokenException
2227//   The next token was specified in an invalid format. Make sure that the next
2228//   token you provide is the token returned by a previous call.
2229//
2230// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/ListWebhooks
2231func (c *CodePipeline) ListWebhooks(input *ListWebhooksInput) (*ListWebhooksOutput, error) {
2232	req, out := c.ListWebhooksRequest(input)
2233	return out, req.Send()
2234}
2235
2236// ListWebhooksWithContext is the same as ListWebhooks with the addition of
2237// the ability to pass a context and additional request options.
2238//
2239// See ListWebhooks for details on how to use this API operation.
2240//
2241// The context must be non-nil and will be used for request cancellation. If
2242// the context is nil a panic will occur. In the future the SDK may create
2243// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2244// for more information on using Contexts.
2245func (c *CodePipeline) ListWebhooksWithContext(ctx aws.Context, input *ListWebhooksInput, opts ...request.Option) (*ListWebhooksOutput, error) {
2246	req, out := c.ListWebhooksRequest(input)
2247	req.SetContext(ctx)
2248	req.ApplyOptions(opts...)
2249	return out, req.Send()
2250}
2251
2252// ListWebhooksPages iterates over the pages of a ListWebhooks operation,
2253// calling the "fn" function with the response data for each page. To stop
2254// iterating, return false from the fn function.
2255//
2256// See ListWebhooks method for more information on how to use this operation.
2257//
2258// Note: This operation can generate multiple requests to a service.
2259//
2260//    // Example iterating over at most 3 pages of a ListWebhooks operation.
2261//    pageNum := 0
2262//    err := client.ListWebhooksPages(params,
2263//        func(page *codepipeline.ListWebhooksOutput, lastPage bool) bool {
2264//            pageNum++
2265//            fmt.Println(page)
2266//            return pageNum <= 3
2267//        })
2268//
2269func (c *CodePipeline) ListWebhooksPages(input *ListWebhooksInput, fn func(*ListWebhooksOutput, bool) bool) error {
2270	return c.ListWebhooksPagesWithContext(aws.BackgroundContext(), input, fn)
2271}
2272
2273// ListWebhooksPagesWithContext same as ListWebhooksPages except
2274// it takes a Context and allows setting request options on the pages.
2275//
2276// The context must be non-nil and will be used for request cancellation. If
2277// the context is nil a panic will occur. In the future the SDK may create
2278// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2279// for more information on using Contexts.
2280func (c *CodePipeline) ListWebhooksPagesWithContext(ctx aws.Context, input *ListWebhooksInput, fn func(*ListWebhooksOutput, bool) bool, opts ...request.Option) error {
2281	p := request.Pagination{
2282		NewRequest: func() (*request.Request, error) {
2283			var inCpy *ListWebhooksInput
2284			if input != nil {
2285				tmp := *input
2286				inCpy = &tmp
2287			}
2288			req, _ := c.ListWebhooksRequest(inCpy)
2289			req.SetContext(ctx)
2290			req.ApplyOptions(opts...)
2291			return req, nil
2292		},
2293	}
2294
2295	for p.Next() {
2296		if !fn(p.Page().(*ListWebhooksOutput), !p.HasNextPage()) {
2297			break
2298		}
2299	}
2300
2301	return p.Err()
2302}
2303
2304const opPollForJobs = "PollForJobs"
2305
2306// PollForJobsRequest generates a "aws/request.Request" representing the
2307// client's request for the PollForJobs operation. The "output" return
2308// value will be populated with the request's response once the request completes
2309// successfully.
2310//
2311// Use "Send" method on the returned Request to send the API call to the service.
2312// the "output" return value is not valid until after Send returns without error.
2313//
2314// See PollForJobs for more information on using the PollForJobs
2315// API call, and error handling.
2316//
2317// This method is useful when you want to inject custom logic or configuration
2318// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2319//
2320//
2321//    // Example sending a request using the PollForJobsRequest method.
2322//    req, resp := client.PollForJobsRequest(params)
2323//
2324//    err := req.Send()
2325//    if err == nil { // resp is now filled
2326//        fmt.Println(resp)
2327//    }
2328//
2329// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/PollForJobs
2330func (c *CodePipeline) PollForJobsRequest(input *PollForJobsInput) (req *request.Request, output *PollForJobsOutput) {
2331	op := &request.Operation{
2332		Name:       opPollForJobs,
2333		HTTPMethod: "POST",
2334		HTTPPath:   "/",
2335	}
2336
2337	if input == nil {
2338		input = &PollForJobsInput{}
2339	}
2340
2341	output = &PollForJobsOutput{}
2342	req = c.newRequest(op, input, output)
2343	return
2344}
2345
2346// PollForJobs API operation for AWS CodePipeline.
2347//
2348// Returns information about any jobs for AWS CodePipeline to act on. PollForJobs
2349// is valid only for action types with "Custom" in the owner field. If the action
2350// type contains "AWS" or "ThirdParty" in the owner field, the PollForJobs action
2351// returns an error.
2352//
2353// When this API is called, AWS CodePipeline returns temporary credentials for
2354// the S3 bucket used to store artifacts for the pipeline, if the action requires
2355// access to that S3 bucket for input or output artifacts. This API also returns
2356// any secret values defined for the action.
2357//
2358// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2359// with awserr.Error's Code and Message methods to get detailed information about
2360// the error.
2361//
2362// See the AWS API reference guide for AWS CodePipeline's
2363// API operation PollForJobs for usage and error information.
2364//
2365// Returned Error Types:
2366//   * ValidationException
2367//   The validation was specified in an invalid format.
2368//
2369//   * ActionTypeNotFoundException
2370//   The specified action type cannot be found.
2371//
2372// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/PollForJobs
2373func (c *CodePipeline) PollForJobs(input *PollForJobsInput) (*PollForJobsOutput, error) {
2374	req, out := c.PollForJobsRequest(input)
2375	return out, req.Send()
2376}
2377
2378// PollForJobsWithContext is the same as PollForJobs with the addition of
2379// the ability to pass a context and additional request options.
2380//
2381// See PollForJobs for details on how to use this API operation.
2382//
2383// The context must be non-nil and will be used for request cancellation. If
2384// the context is nil a panic will occur. In the future the SDK may create
2385// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2386// for more information on using Contexts.
2387func (c *CodePipeline) PollForJobsWithContext(ctx aws.Context, input *PollForJobsInput, opts ...request.Option) (*PollForJobsOutput, error) {
2388	req, out := c.PollForJobsRequest(input)
2389	req.SetContext(ctx)
2390	req.ApplyOptions(opts...)
2391	return out, req.Send()
2392}
2393
2394const opPollForThirdPartyJobs = "PollForThirdPartyJobs"
2395
2396// PollForThirdPartyJobsRequest generates a "aws/request.Request" representing the
2397// client's request for the PollForThirdPartyJobs operation. The "output" return
2398// value will be populated with the request's response once the request completes
2399// successfully.
2400//
2401// Use "Send" method on the returned Request to send the API call to the service.
2402// the "output" return value is not valid until after Send returns without error.
2403//
2404// See PollForThirdPartyJobs for more information on using the PollForThirdPartyJobs
2405// API call, and error handling.
2406//
2407// This method is useful when you want to inject custom logic or configuration
2408// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2409//
2410//
2411//    // Example sending a request using the PollForThirdPartyJobsRequest method.
2412//    req, resp := client.PollForThirdPartyJobsRequest(params)
2413//
2414//    err := req.Send()
2415//    if err == nil { // resp is now filled
2416//        fmt.Println(resp)
2417//    }
2418//
2419// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/PollForThirdPartyJobs
2420func (c *CodePipeline) PollForThirdPartyJobsRequest(input *PollForThirdPartyJobsInput) (req *request.Request, output *PollForThirdPartyJobsOutput) {
2421	op := &request.Operation{
2422		Name:       opPollForThirdPartyJobs,
2423		HTTPMethod: "POST",
2424		HTTPPath:   "/",
2425	}
2426
2427	if input == nil {
2428		input = &PollForThirdPartyJobsInput{}
2429	}
2430
2431	output = &PollForThirdPartyJobsOutput{}
2432	req = c.newRequest(op, input, output)
2433	return
2434}
2435
2436// PollForThirdPartyJobs API operation for AWS CodePipeline.
2437//
2438// Determines whether there are any third party jobs for a job worker to act
2439// on. Used for partner actions only.
2440//
2441// When this API is called, AWS CodePipeline returns temporary credentials for
2442// the S3 bucket used to store artifacts for the pipeline, if the action requires
2443// access to that S3 bucket for input or output artifacts.
2444//
2445// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2446// with awserr.Error's Code and Message methods to get detailed information about
2447// the error.
2448//
2449// See the AWS API reference guide for AWS CodePipeline's
2450// API operation PollForThirdPartyJobs for usage and error information.
2451//
2452// Returned Error Types:
2453//   * ActionTypeNotFoundException
2454//   The specified action type cannot be found.
2455//
2456//   * ValidationException
2457//   The validation was specified in an invalid format.
2458//
2459// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/PollForThirdPartyJobs
2460func (c *CodePipeline) PollForThirdPartyJobs(input *PollForThirdPartyJobsInput) (*PollForThirdPartyJobsOutput, error) {
2461	req, out := c.PollForThirdPartyJobsRequest(input)
2462	return out, req.Send()
2463}
2464
2465// PollForThirdPartyJobsWithContext is the same as PollForThirdPartyJobs with the addition of
2466// the ability to pass a context and additional request options.
2467//
2468// See PollForThirdPartyJobs for details on how to use this API operation.
2469//
2470// The context must be non-nil and will be used for request cancellation. If
2471// the context is nil a panic will occur. In the future the SDK may create
2472// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2473// for more information on using Contexts.
2474func (c *CodePipeline) PollForThirdPartyJobsWithContext(ctx aws.Context, input *PollForThirdPartyJobsInput, opts ...request.Option) (*PollForThirdPartyJobsOutput, error) {
2475	req, out := c.PollForThirdPartyJobsRequest(input)
2476	req.SetContext(ctx)
2477	req.ApplyOptions(opts...)
2478	return out, req.Send()
2479}
2480
2481const opPutActionRevision = "PutActionRevision"
2482
2483// PutActionRevisionRequest generates a "aws/request.Request" representing the
2484// client's request for the PutActionRevision operation. The "output" return
2485// value will be populated with the request's response once the request completes
2486// successfully.
2487//
2488// Use "Send" method on the returned Request to send the API call to the service.
2489// the "output" return value is not valid until after Send returns without error.
2490//
2491// See PutActionRevision for more information on using the PutActionRevision
2492// API call, and error handling.
2493//
2494// This method is useful when you want to inject custom logic or configuration
2495// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2496//
2497//
2498//    // Example sending a request using the PutActionRevisionRequest method.
2499//    req, resp := client.PutActionRevisionRequest(params)
2500//
2501//    err := req.Send()
2502//    if err == nil { // resp is now filled
2503//        fmt.Println(resp)
2504//    }
2505//
2506// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/PutActionRevision
2507func (c *CodePipeline) PutActionRevisionRequest(input *PutActionRevisionInput) (req *request.Request, output *PutActionRevisionOutput) {
2508	op := &request.Operation{
2509		Name:       opPutActionRevision,
2510		HTTPMethod: "POST",
2511		HTTPPath:   "/",
2512	}
2513
2514	if input == nil {
2515		input = &PutActionRevisionInput{}
2516	}
2517
2518	output = &PutActionRevisionOutput{}
2519	req = c.newRequest(op, input, output)
2520	return
2521}
2522
2523// PutActionRevision API operation for AWS CodePipeline.
2524//
2525// Provides information to AWS CodePipeline about new revisions to a source.
2526//
2527// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2528// with awserr.Error's Code and Message methods to get detailed information about
2529// the error.
2530//
2531// See the AWS API reference guide for AWS CodePipeline's
2532// API operation PutActionRevision for usage and error information.
2533//
2534// Returned Error Types:
2535//   * PipelineNotFoundException
2536//   The pipeline was specified in an invalid format or cannot be found.
2537//
2538//   * StageNotFoundException
2539//   The stage was specified in an invalid format or cannot be found.
2540//
2541//   * ActionNotFoundException
2542//   The specified action cannot be found.
2543//
2544//   * ValidationException
2545//   The validation was specified in an invalid format.
2546//
2547// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/PutActionRevision
2548func (c *CodePipeline) PutActionRevision(input *PutActionRevisionInput) (*PutActionRevisionOutput, error) {
2549	req, out := c.PutActionRevisionRequest(input)
2550	return out, req.Send()
2551}
2552
2553// PutActionRevisionWithContext is the same as PutActionRevision with the addition of
2554// the ability to pass a context and additional request options.
2555//
2556// See PutActionRevision for details on how to use this API operation.
2557//
2558// The context must be non-nil and will be used for request cancellation. If
2559// the context is nil a panic will occur. In the future the SDK may create
2560// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2561// for more information on using Contexts.
2562func (c *CodePipeline) PutActionRevisionWithContext(ctx aws.Context, input *PutActionRevisionInput, opts ...request.Option) (*PutActionRevisionOutput, error) {
2563	req, out := c.PutActionRevisionRequest(input)
2564	req.SetContext(ctx)
2565	req.ApplyOptions(opts...)
2566	return out, req.Send()
2567}
2568
2569const opPutApprovalResult = "PutApprovalResult"
2570
2571// PutApprovalResultRequest generates a "aws/request.Request" representing the
2572// client's request for the PutApprovalResult operation. The "output" return
2573// value will be populated with the request's response once the request completes
2574// successfully.
2575//
2576// Use "Send" method on the returned Request to send the API call to the service.
2577// the "output" return value is not valid until after Send returns without error.
2578//
2579// See PutApprovalResult for more information on using the PutApprovalResult
2580// API call, and error handling.
2581//
2582// This method is useful when you want to inject custom logic or configuration
2583// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2584//
2585//
2586//    // Example sending a request using the PutApprovalResultRequest method.
2587//    req, resp := client.PutApprovalResultRequest(params)
2588//
2589//    err := req.Send()
2590//    if err == nil { // resp is now filled
2591//        fmt.Println(resp)
2592//    }
2593//
2594// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/PutApprovalResult
2595func (c *CodePipeline) PutApprovalResultRequest(input *PutApprovalResultInput) (req *request.Request, output *PutApprovalResultOutput) {
2596	op := &request.Operation{
2597		Name:       opPutApprovalResult,
2598		HTTPMethod: "POST",
2599		HTTPPath:   "/",
2600	}
2601
2602	if input == nil {
2603		input = &PutApprovalResultInput{}
2604	}
2605
2606	output = &PutApprovalResultOutput{}
2607	req = c.newRequest(op, input, output)
2608	return
2609}
2610
2611// PutApprovalResult API operation for AWS CodePipeline.
2612//
2613// Provides the response to a manual approval request to AWS CodePipeline. Valid
2614// responses include Approved and Rejected.
2615//
2616// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2617// with awserr.Error's Code and Message methods to get detailed information about
2618// the error.
2619//
2620// See the AWS API reference guide for AWS CodePipeline's
2621// API operation PutApprovalResult for usage and error information.
2622//
2623// Returned Error Types:
2624//   * InvalidApprovalTokenException
2625//   The approval request already received a response or has expired.
2626//
2627//   * ApprovalAlreadyCompletedException
2628//   The approval action has already been approved or rejected.
2629//
2630//   * PipelineNotFoundException
2631//   The pipeline was specified in an invalid format or cannot be found.
2632//
2633//   * StageNotFoundException
2634//   The stage was specified in an invalid format or cannot be found.
2635//
2636//   * ActionNotFoundException
2637//   The specified action cannot be found.
2638//
2639//   * ValidationException
2640//   The validation was specified in an invalid format.
2641//
2642// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/PutApprovalResult
2643func (c *CodePipeline) PutApprovalResult(input *PutApprovalResultInput) (*PutApprovalResultOutput, error) {
2644	req, out := c.PutApprovalResultRequest(input)
2645	return out, req.Send()
2646}
2647
2648// PutApprovalResultWithContext is the same as PutApprovalResult with the addition of
2649// the ability to pass a context and additional request options.
2650//
2651// See PutApprovalResult for details on how to use this API operation.
2652//
2653// The context must be non-nil and will be used for request cancellation. If
2654// the context is nil a panic will occur. In the future the SDK may create
2655// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2656// for more information on using Contexts.
2657func (c *CodePipeline) PutApprovalResultWithContext(ctx aws.Context, input *PutApprovalResultInput, opts ...request.Option) (*PutApprovalResultOutput, error) {
2658	req, out := c.PutApprovalResultRequest(input)
2659	req.SetContext(ctx)
2660	req.ApplyOptions(opts...)
2661	return out, req.Send()
2662}
2663
2664const opPutJobFailureResult = "PutJobFailureResult"
2665
2666// PutJobFailureResultRequest generates a "aws/request.Request" representing the
2667// client's request for the PutJobFailureResult operation. The "output" return
2668// value will be populated with the request's response once the request completes
2669// successfully.
2670//
2671// Use "Send" method on the returned Request to send the API call to the service.
2672// the "output" return value is not valid until after Send returns without error.
2673//
2674// See PutJobFailureResult for more information on using the PutJobFailureResult
2675// API call, and error handling.
2676//
2677// This method is useful when you want to inject custom logic or configuration
2678// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2679//
2680//
2681//    // Example sending a request using the PutJobFailureResultRequest method.
2682//    req, resp := client.PutJobFailureResultRequest(params)
2683//
2684//    err := req.Send()
2685//    if err == nil { // resp is now filled
2686//        fmt.Println(resp)
2687//    }
2688//
2689// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/PutJobFailureResult
2690func (c *CodePipeline) PutJobFailureResultRequest(input *PutJobFailureResultInput) (req *request.Request, output *PutJobFailureResultOutput) {
2691	op := &request.Operation{
2692		Name:       opPutJobFailureResult,
2693		HTTPMethod: "POST",
2694		HTTPPath:   "/",
2695	}
2696
2697	if input == nil {
2698		input = &PutJobFailureResultInput{}
2699	}
2700
2701	output = &PutJobFailureResultOutput{}
2702	req = c.newRequest(op, input, output)
2703	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
2704	return
2705}
2706
2707// PutJobFailureResult API operation for AWS CodePipeline.
2708//
2709// Represents the failure of a job as returned to the pipeline by a job worker.
2710// Used for custom actions only.
2711//
2712// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2713// with awserr.Error's Code and Message methods to get detailed information about
2714// the error.
2715//
2716// See the AWS API reference guide for AWS CodePipeline's
2717// API operation PutJobFailureResult for usage and error information.
2718//
2719// Returned Error Types:
2720//   * ValidationException
2721//   The validation was specified in an invalid format.
2722//
2723//   * JobNotFoundException
2724//   The job was specified in an invalid format or cannot be found.
2725//
2726//   * InvalidJobStateException
2727//   The job state was specified in an invalid format.
2728//
2729// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/PutJobFailureResult
2730func (c *CodePipeline) PutJobFailureResult(input *PutJobFailureResultInput) (*PutJobFailureResultOutput, error) {
2731	req, out := c.PutJobFailureResultRequest(input)
2732	return out, req.Send()
2733}
2734
2735// PutJobFailureResultWithContext is the same as PutJobFailureResult with the addition of
2736// the ability to pass a context and additional request options.
2737//
2738// See PutJobFailureResult for details on how to use this API operation.
2739//
2740// The context must be non-nil and will be used for request cancellation. If
2741// the context is nil a panic will occur. In the future the SDK may create
2742// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2743// for more information on using Contexts.
2744func (c *CodePipeline) PutJobFailureResultWithContext(ctx aws.Context, input *PutJobFailureResultInput, opts ...request.Option) (*PutJobFailureResultOutput, error) {
2745	req, out := c.PutJobFailureResultRequest(input)
2746	req.SetContext(ctx)
2747	req.ApplyOptions(opts...)
2748	return out, req.Send()
2749}
2750
2751const opPutJobSuccessResult = "PutJobSuccessResult"
2752
2753// PutJobSuccessResultRequest generates a "aws/request.Request" representing the
2754// client's request for the PutJobSuccessResult operation. The "output" return
2755// value will be populated with the request's response once the request completes
2756// successfully.
2757//
2758// Use "Send" method on the returned Request to send the API call to the service.
2759// the "output" return value is not valid until after Send returns without error.
2760//
2761// See PutJobSuccessResult for more information on using the PutJobSuccessResult
2762// API call, and error handling.
2763//
2764// This method is useful when you want to inject custom logic or configuration
2765// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2766//
2767//
2768//    // Example sending a request using the PutJobSuccessResultRequest method.
2769//    req, resp := client.PutJobSuccessResultRequest(params)
2770//
2771//    err := req.Send()
2772//    if err == nil { // resp is now filled
2773//        fmt.Println(resp)
2774//    }
2775//
2776// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/PutJobSuccessResult
2777func (c *CodePipeline) PutJobSuccessResultRequest(input *PutJobSuccessResultInput) (req *request.Request, output *PutJobSuccessResultOutput) {
2778	op := &request.Operation{
2779		Name:       opPutJobSuccessResult,
2780		HTTPMethod: "POST",
2781		HTTPPath:   "/",
2782	}
2783
2784	if input == nil {
2785		input = &PutJobSuccessResultInput{}
2786	}
2787
2788	output = &PutJobSuccessResultOutput{}
2789	req = c.newRequest(op, input, output)
2790	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
2791	return
2792}
2793
2794// PutJobSuccessResult API operation for AWS CodePipeline.
2795//
2796// Represents the success of a job as returned to the pipeline by a job worker.
2797// Used for custom actions only.
2798//
2799// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2800// with awserr.Error's Code and Message methods to get detailed information about
2801// the error.
2802//
2803// See the AWS API reference guide for AWS CodePipeline's
2804// API operation PutJobSuccessResult for usage and error information.
2805//
2806// Returned Error Types:
2807//   * ValidationException
2808//   The validation was specified in an invalid format.
2809//
2810//   * JobNotFoundException
2811//   The job was specified in an invalid format or cannot be found.
2812//
2813//   * InvalidJobStateException
2814//   The job state was specified in an invalid format.
2815//
2816//   * OutputVariablesSizeExceededException
2817//   Exceeded the total size limit for all variables in the pipeline.
2818//
2819// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/PutJobSuccessResult
2820func (c *CodePipeline) PutJobSuccessResult(input *PutJobSuccessResultInput) (*PutJobSuccessResultOutput, error) {
2821	req, out := c.PutJobSuccessResultRequest(input)
2822	return out, req.Send()
2823}
2824
2825// PutJobSuccessResultWithContext is the same as PutJobSuccessResult with the addition of
2826// the ability to pass a context and additional request options.
2827//
2828// See PutJobSuccessResult for details on how to use this API operation.
2829//
2830// The context must be non-nil and will be used for request cancellation. If
2831// the context is nil a panic will occur. In the future the SDK may create
2832// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2833// for more information on using Contexts.
2834func (c *CodePipeline) PutJobSuccessResultWithContext(ctx aws.Context, input *PutJobSuccessResultInput, opts ...request.Option) (*PutJobSuccessResultOutput, error) {
2835	req, out := c.PutJobSuccessResultRequest(input)
2836	req.SetContext(ctx)
2837	req.ApplyOptions(opts...)
2838	return out, req.Send()
2839}
2840
2841const opPutThirdPartyJobFailureResult = "PutThirdPartyJobFailureResult"
2842
2843// PutThirdPartyJobFailureResultRequest generates a "aws/request.Request" representing the
2844// client's request for the PutThirdPartyJobFailureResult operation. The "output" return
2845// value will be populated with the request's response once the request completes
2846// successfully.
2847//
2848// Use "Send" method on the returned Request to send the API call to the service.
2849// the "output" return value is not valid until after Send returns without error.
2850//
2851// See PutThirdPartyJobFailureResult for more information on using the PutThirdPartyJobFailureResult
2852// API call, and error handling.
2853//
2854// This method is useful when you want to inject custom logic or configuration
2855// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2856//
2857//
2858//    // Example sending a request using the PutThirdPartyJobFailureResultRequest method.
2859//    req, resp := client.PutThirdPartyJobFailureResultRequest(params)
2860//
2861//    err := req.Send()
2862//    if err == nil { // resp is now filled
2863//        fmt.Println(resp)
2864//    }
2865//
2866// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/PutThirdPartyJobFailureResult
2867func (c *CodePipeline) PutThirdPartyJobFailureResultRequest(input *PutThirdPartyJobFailureResultInput) (req *request.Request, output *PutThirdPartyJobFailureResultOutput) {
2868	op := &request.Operation{
2869		Name:       opPutThirdPartyJobFailureResult,
2870		HTTPMethod: "POST",
2871		HTTPPath:   "/",
2872	}
2873
2874	if input == nil {
2875		input = &PutThirdPartyJobFailureResultInput{}
2876	}
2877
2878	output = &PutThirdPartyJobFailureResultOutput{}
2879	req = c.newRequest(op, input, output)
2880	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
2881	return
2882}
2883
2884// PutThirdPartyJobFailureResult API operation for AWS CodePipeline.
2885//
2886// Represents the failure of a third party job as returned to the pipeline by
2887// a job worker. Used for partner actions only.
2888//
2889// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2890// with awserr.Error's Code and Message methods to get detailed information about
2891// the error.
2892//
2893// See the AWS API reference guide for AWS CodePipeline's
2894// API operation PutThirdPartyJobFailureResult for usage and error information.
2895//
2896// Returned Error Types:
2897//   * ValidationException
2898//   The validation was specified in an invalid format.
2899//
2900//   * JobNotFoundException
2901//   The job was specified in an invalid format or cannot be found.
2902//
2903//   * InvalidJobStateException
2904//   The job state was specified in an invalid format.
2905//
2906//   * InvalidClientTokenException
2907//   The client token was specified in an invalid format
2908//
2909// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/PutThirdPartyJobFailureResult
2910func (c *CodePipeline) PutThirdPartyJobFailureResult(input *PutThirdPartyJobFailureResultInput) (*PutThirdPartyJobFailureResultOutput, error) {
2911	req, out := c.PutThirdPartyJobFailureResultRequest(input)
2912	return out, req.Send()
2913}
2914
2915// PutThirdPartyJobFailureResultWithContext is the same as PutThirdPartyJobFailureResult with the addition of
2916// the ability to pass a context and additional request options.
2917//
2918// See PutThirdPartyJobFailureResult for details on how to use this API operation.
2919//
2920// The context must be non-nil and will be used for request cancellation. If
2921// the context is nil a panic will occur. In the future the SDK may create
2922// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2923// for more information on using Contexts.
2924func (c *CodePipeline) PutThirdPartyJobFailureResultWithContext(ctx aws.Context, input *PutThirdPartyJobFailureResultInput, opts ...request.Option) (*PutThirdPartyJobFailureResultOutput, error) {
2925	req, out := c.PutThirdPartyJobFailureResultRequest(input)
2926	req.SetContext(ctx)
2927	req.ApplyOptions(opts...)
2928	return out, req.Send()
2929}
2930
2931const opPutThirdPartyJobSuccessResult = "PutThirdPartyJobSuccessResult"
2932
2933// PutThirdPartyJobSuccessResultRequest generates a "aws/request.Request" representing the
2934// client's request for the PutThirdPartyJobSuccessResult operation. The "output" return
2935// value will be populated with the request's response once the request completes
2936// successfully.
2937//
2938// Use "Send" method on the returned Request to send the API call to the service.
2939// the "output" return value is not valid until after Send returns without error.
2940//
2941// See PutThirdPartyJobSuccessResult for more information on using the PutThirdPartyJobSuccessResult
2942// API call, and error handling.
2943//
2944// This method is useful when you want to inject custom logic or configuration
2945// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2946//
2947//
2948//    // Example sending a request using the PutThirdPartyJobSuccessResultRequest method.
2949//    req, resp := client.PutThirdPartyJobSuccessResultRequest(params)
2950//
2951//    err := req.Send()
2952//    if err == nil { // resp is now filled
2953//        fmt.Println(resp)
2954//    }
2955//
2956// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/PutThirdPartyJobSuccessResult
2957func (c *CodePipeline) PutThirdPartyJobSuccessResultRequest(input *PutThirdPartyJobSuccessResultInput) (req *request.Request, output *PutThirdPartyJobSuccessResultOutput) {
2958	op := &request.Operation{
2959		Name:       opPutThirdPartyJobSuccessResult,
2960		HTTPMethod: "POST",
2961		HTTPPath:   "/",
2962	}
2963
2964	if input == nil {
2965		input = &PutThirdPartyJobSuccessResultInput{}
2966	}
2967
2968	output = &PutThirdPartyJobSuccessResultOutput{}
2969	req = c.newRequest(op, input, output)
2970	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
2971	return
2972}
2973
2974// PutThirdPartyJobSuccessResult API operation for AWS CodePipeline.
2975//
2976// Represents the success of a third party job as returned to the pipeline by
2977// a job worker. Used for partner actions only.
2978//
2979// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2980// with awserr.Error's Code and Message methods to get detailed information about
2981// the error.
2982//
2983// See the AWS API reference guide for AWS CodePipeline's
2984// API operation PutThirdPartyJobSuccessResult for usage and error information.
2985//
2986// Returned Error Types:
2987//   * ValidationException
2988//   The validation was specified in an invalid format.
2989//
2990//   * JobNotFoundException
2991//   The job was specified in an invalid format or cannot be found.
2992//
2993//   * InvalidJobStateException
2994//   The job state was specified in an invalid format.
2995//
2996//   * InvalidClientTokenException
2997//   The client token was specified in an invalid format
2998//
2999// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/PutThirdPartyJobSuccessResult
3000func (c *CodePipeline) PutThirdPartyJobSuccessResult(input *PutThirdPartyJobSuccessResultInput) (*PutThirdPartyJobSuccessResultOutput, error) {
3001	req, out := c.PutThirdPartyJobSuccessResultRequest(input)
3002	return out, req.Send()
3003}
3004
3005// PutThirdPartyJobSuccessResultWithContext is the same as PutThirdPartyJobSuccessResult with the addition of
3006// the ability to pass a context and additional request options.
3007//
3008// See PutThirdPartyJobSuccessResult for details on how to use this API operation.
3009//
3010// The context must be non-nil and will be used for request cancellation. If
3011// the context is nil a panic will occur. In the future the SDK may create
3012// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3013// for more information on using Contexts.
3014func (c *CodePipeline) PutThirdPartyJobSuccessResultWithContext(ctx aws.Context, input *PutThirdPartyJobSuccessResultInput, opts ...request.Option) (*PutThirdPartyJobSuccessResultOutput, error) {
3015	req, out := c.PutThirdPartyJobSuccessResultRequest(input)
3016	req.SetContext(ctx)
3017	req.ApplyOptions(opts...)
3018	return out, req.Send()
3019}
3020
3021const opPutWebhook = "PutWebhook"
3022
3023// PutWebhookRequest generates a "aws/request.Request" representing the
3024// client's request for the PutWebhook operation. The "output" return
3025// value will be populated with the request's response once the request completes
3026// successfully.
3027//
3028// Use "Send" method on the returned Request to send the API call to the service.
3029// the "output" return value is not valid until after Send returns without error.
3030//
3031// See PutWebhook for more information on using the PutWebhook
3032// API call, and error handling.
3033//
3034// This method is useful when you want to inject custom logic or configuration
3035// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3036//
3037//
3038//    // Example sending a request using the PutWebhookRequest method.
3039//    req, resp := client.PutWebhookRequest(params)
3040//
3041//    err := req.Send()
3042//    if err == nil { // resp is now filled
3043//        fmt.Println(resp)
3044//    }
3045//
3046// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/PutWebhook
3047func (c *CodePipeline) PutWebhookRequest(input *PutWebhookInput) (req *request.Request, output *PutWebhookOutput) {
3048	op := &request.Operation{
3049		Name:       opPutWebhook,
3050		HTTPMethod: "POST",
3051		HTTPPath:   "/",
3052	}
3053
3054	if input == nil {
3055		input = &PutWebhookInput{}
3056	}
3057
3058	output = &PutWebhookOutput{}
3059	req = c.newRequest(op, input, output)
3060	return
3061}
3062
3063// PutWebhook API operation for AWS CodePipeline.
3064//
3065// Defines a webhook and returns a unique webhook URL generated by CodePipeline.
3066// This URL can be supplied to third party source hosting providers to call
3067// every time there's a code change. When CodePipeline receives a POST request
3068// on this URL, the pipeline defined in the webhook is started as long as the
3069// POST request satisfied the authentication and filtering requirements supplied
3070// when defining the webhook. RegisterWebhookWithThirdParty and DeregisterWebhookWithThirdParty
3071// APIs can be used to automatically configure supported third parties to call
3072// the generated webhook URL.
3073//
3074// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3075// with awserr.Error's Code and Message methods to get detailed information about
3076// the error.
3077//
3078// See the AWS API reference guide for AWS CodePipeline's
3079// API operation PutWebhook for usage and error information.
3080//
3081// Returned Error Types:
3082//   * ValidationException
3083//   The validation was specified in an invalid format.
3084//
3085//   * LimitExceededException
3086//   The number of pipelines associated with the AWS account has exceeded the
3087//   limit allowed for the account.
3088//
3089//   * InvalidWebhookFilterPatternException
3090//   The specified event filter rule is in an invalid format.
3091//
3092//   * InvalidWebhookAuthenticationParametersException
3093//   The specified authentication type is in an invalid format.
3094//
3095//   * PipelineNotFoundException
3096//   The pipeline was specified in an invalid format or cannot be found.
3097//
3098//   * TooManyTagsException
3099//   The tags limit for a resource has been exceeded.
3100//
3101//   * InvalidTagsException
3102//   The specified resource tags are invalid.
3103//
3104//   * ConcurrentModificationException
3105//   Unable to modify the tag due to a simultaneous update request.
3106//
3107// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/PutWebhook
3108func (c *CodePipeline) PutWebhook(input *PutWebhookInput) (*PutWebhookOutput, error) {
3109	req, out := c.PutWebhookRequest(input)
3110	return out, req.Send()
3111}
3112
3113// PutWebhookWithContext is the same as PutWebhook with the addition of
3114// the ability to pass a context and additional request options.
3115//
3116// See PutWebhook for details on how to use this API operation.
3117//
3118// The context must be non-nil and will be used for request cancellation. If
3119// the context is nil a panic will occur. In the future the SDK may create
3120// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3121// for more information on using Contexts.
3122func (c *CodePipeline) PutWebhookWithContext(ctx aws.Context, input *PutWebhookInput, opts ...request.Option) (*PutWebhookOutput, error) {
3123	req, out := c.PutWebhookRequest(input)
3124	req.SetContext(ctx)
3125	req.ApplyOptions(opts...)
3126	return out, req.Send()
3127}
3128
3129const opRegisterWebhookWithThirdParty = "RegisterWebhookWithThirdParty"
3130
3131// RegisterWebhookWithThirdPartyRequest generates a "aws/request.Request" representing the
3132// client's request for the RegisterWebhookWithThirdParty operation. The "output" return
3133// value will be populated with the request's response once the request completes
3134// successfully.
3135//
3136// Use "Send" method on the returned Request to send the API call to the service.
3137// the "output" return value is not valid until after Send returns without error.
3138//
3139// See RegisterWebhookWithThirdParty for more information on using the RegisterWebhookWithThirdParty
3140// API call, and error handling.
3141//
3142// This method is useful when you want to inject custom logic or configuration
3143// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3144//
3145//
3146//    // Example sending a request using the RegisterWebhookWithThirdPartyRequest method.
3147//    req, resp := client.RegisterWebhookWithThirdPartyRequest(params)
3148//
3149//    err := req.Send()
3150//    if err == nil { // resp is now filled
3151//        fmt.Println(resp)
3152//    }
3153//
3154// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/RegisterWebhookWithThirdParty
3155func (c *CodePipeline) RegisterWebhookWithThirdPartyRequest(input *RegisterWebhookWithThirdPartyInput) (req *request.Request, output *RegisterWebhookWithThirdPartyOutput) {
3156	op := &request.Operation{
3157		Name:       opRegisterWebhookWithThirdParty,
3158		HTTPMethod: "POST",
3159		HTTPPath:   "/",
3160	}
3161
3162	if input == nil {
3163		input = &RegisterWebhookWithThirdPartyInput{}
3164	}
3165
3166	output = &RegisterWebhookWithThirdPartyOutput{}
3167	req = c.newRequest(op, input, output)
3168	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
3169	return
3170}
3171
3172// RegisterWebhookWithThirdParty API operation for AWS CodePipeline.
3173//
3174// Configures a connection between the webhook that was created and the external
3175// tool with events to be detected.
3176//
3177// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3178// with awserr.Error's Code and Message methods to get detailed information about
3179// the error.
3180//
3181// See the AWS API reference guide for AWS CodePipeline's
3182// API operation RegisterWebhookWithThirdParty for usage and error information.
3183//
3184// Returned Error Types:
3185//   * ValidationException
3186//   The validation was specified in an invalid format.
3187//
3188//   * WebhookNotFoundException
3189//   The specified webhook was entered in an invalid format or cannot be found.
3190//
3191// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/RegisterWebhookWithThirdParty
3192func (c *CodePipeline) RegisterWebhookWithThirdParty(input *RegisterWebhookWithThirdPartyInput) (*RegisterWebhookWithThirdPartyOutput, error) {
3193	req, out := c.RegisterWebhookWithThirdPartyRequest(input)
3194	return out, req.Send()
3195}
3196
3197// RegisterWebhookWithThirdPartyWithContext is the same as RegisterWebhookWithThirdParty with the addition of
3198// the ability to pass a context and additional request options.
3199//
3200// See RegisterWebhookWithThirdParty for details on how to use this API operation.
3201//
3202// The context must be non-nil and will be used for request cancellation. If
3203// the context is nil a panic will occur. In the future the SDK may create
3204// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3205// for more information on using Contexts.
3206func (c *CodePipeline) RegisterWebhookWithThirdPartyWithContext(ctx aws.Context, input *RegisterWebhookWithThirdPartyInput, opts ...request.Option) (*RegisterWebhookWithThirdPartyOutput, error) {
3207	req, out := c.RegisterWebhookWithThirdPartyRequest(input)
3208	req.SetContext(ctx)
3209	req.ApplyOptions(opts...)
3210	return out, req.Send()
3211}
3212
3213const opRetryStageExecution = "RetryStageExecution"
3214
3215// RetryStageExecutionRequest generates a "aws/request.Request" representing the
3216// client's request for the RetryStageExecution operation. The "output" return
3217// value will be populated with the request's response once the request completes
3218// successfully.
3219//
3220// Use "Send" method on the returned Request to send the API call to the service.
3221// the "output" return value is not valid until after Send returns without error.
3222//
3223// See RetryStageExecution for more information on using the RetryStageExecution
3224// API call, and error handling.
3225//
3226// This method is useful when you want to inject custom logic or configuration
3227// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3228//
3229//
3230//    // Example sending a request using the RetryStageExecutionRequest method.
3231//    req, resp := client.RetryStageExecutionRequest(params)
3232//
3233//    err := req.Send()
3234//    if err == nil { // resp is now filled
3235//        fmt.Println(resp)
3236//    }
3237//
3238// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/RetryStageExecution
3239func (c *CodePipeline) RetryStageExecutionRequest(input *RetryStageExecutionInput) (req *request.Request, output *RetryStageExecutionOutput) {
3240	op := &request.Operation{
3241		Name:       opRetryStageExecution,
3242		HTTPMethod: "POST",
3243		HTTPPath:   "/",
3244	}
3245
3246	if input == nil {
3247		input = &RetryStageExecutionInput{}
3248	}
3249
3250	output = &RetryStageExecutionOutput{}
3251	req = c.newRequest(op, input, output)
3252	return
3253}
3254
3255// RetryStageExecution API operation for AWS CodePipeline.
3256//
3257// Resumes the pipeline execution by retrying the last failed actions in a stage.
3258// You can retry a stage immediately if any of the actions in the stage fail.
3259// When you retry, all actions that are still in progress continue working,
3260// and failed actions are triggered again.
3261//
3262// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3263// with awserr.Error's Code and Message methods to get detailed information about
3264// the error.
3265//
3266// See the AWS API reference guide for AWS CodePipeline's
3267// API operation RetryStageExecution for usage and error information.
3268//
3269// Returned Error Types:
3270//   * ValidationException
3271//   The validation was specified in an invalid format.
3272//
3273//   * ConflictException
3274//   Your request cannot be handled because the pipeline is busy handling ongoing
3275//   activities. Try again later.
3276//
3277//   * PipelineNotFoundException
3278//   The pipeline was specified in an invalid format or cannot be found.
3279//
3280//   * StageNotFoundException
3281//   The stage was specified in an invalid format or cannot be found.
3282//
3283//   * StageNotRetryableException
3284//   Unable to retry. The pipeline structure or stage state might have changed
3285//   while actions awaited retry, or the stage contains no failed actions.
3286//
3287//   * NotLatestPipelineExecutionException
3288//   The stage has failed in a later run of the pipeline and the pipelineExecutionId
3289//   associated with the request is out of date.
3290//
3291// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/RetryStageExecution
3292func (c *CodePipeline) RetryStageExecution(input *RetryStageExecutionInput) (*RetryStageExecutionOutput, error) {
3293	req, out := c.RetryStageExecutionRequest(input)
3294	return out, req.Send()
3295}
3296
3297// RetryStageExecutionWithContext is the same as RetryStageExecution with the addition of
3298// the ability to pass a context and additional request options.
3299//
3300// See RetryStageExecution for details on how to use this API operation.
3301//
3302// The context must be non-nil and will be used for request cancellation. If
3303// the context is nil a panic will occur. In the future the SDK may create
3304// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3305// for more information on using Contexts.
3306func (c *CodePipeline) RetryStageExecutionWithContext(ctx aws.Context, input *RetryStageExecutionInput, opts ...request.Option) (*RetryStageExecutionOutput, error) {
3307	req, out := c.RetryStageExecutionRequest(input)
3308	req.SetContext(ctx)
3309	req.ApplyOptions(opts...)
3310	return out, req.Send()
3311}
3312
3313const opStartPipelineExecution = "StartPipelineExecution"
3314
3315// StartPipelineExecutionRequest generates a "aws/request.Request" representing the
3316// client's request for the StartPipelineExecution operation. The "output" return
3317// value will be populated with the request's response once the request completes
3318// successfully.
3319//
3320// Use "Send" method on the returned Request to send the API call to the service.
3321// the "output" return value is not valid until after Send returns without error.
3322//
3323// See StartPipelineExecution for more information on using the StartPipelineExecution
3324// API call, and error handling.
3325//
3326// This method is useful when you want to inject custom logic or configuration
3327// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3328//
3329//
3330//    // Example sending a request using the StartPipelineExecutionRequest method.
3331//    req, resp := client.StartPipelineExecutionRequest(params)
3332//
3333//    err := req.Send()
3334//    if err == nil { // resp is now filled
3335//        fmt.Println(resp)
3336//    }
3337//
3338// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/StartPipelineExecution
3339func (c *CodePipeline) StartPipelineExecutionRequest(input *StartPipelineExecutionInput) (req *request.Request, output *StartPipelineExecutionOutput) {
3340	op := &request.Operation{
3341		Name:       opStartPipelineExecution,
3342		HTTPMethod: "POST",
3343		HTTPPath:   "/",
3344	}
3345
3346	if input == nil {
3347		input = &StartPipelineExecutionInput{}
3348	}
3349
3350	output = &StartPipelineExecutionOutput{}
3351	req = c.newRequest(op, input, output)
3352	return
3353}
3354
3355// StartPipelineExecution API operation for AWS CodePipeline.
3356//
3357// Starts the specified pipeline. Specifically, it begins processing the latest
3358// commit to the source location specified as part of the pipeline.
3359//
3360// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3361// with awserr.Error's Code and Message methods to get detailed information about
3362// the error.
3363//
3364// See the AWS API reference guide for AWS CodePipeline's
3365// API operation StartPipelineExecution for usage and error information.
3366//
3367// Returned Error Types:
3368//   * ValidationException
3369//   The validation was specified in an invalid format.
3370//
3371//   * ConflictException
3372//   Your request cannot be handled because the pipeline is busy handling ongoing
3373//   activities. Try again later.
3374//
3375//   * PipelineNotFoundException
3376//   The pipeline was specified in an invalid format or cannot be found.
3377//
3378// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/StartPipelineExecution
3379func (c *CodePipeline) StartPipelineExecution(input *StartPipelineExecutionInput) (*StartPipelineExecutionOutput, error) {
3380	req, out := c.StartPipelineExecutionRequest(input)
3381	return out, req.Send()
3382}
3383
3384// StartPipelineExecutionWithContext is the same as StartPipelineExecution with the addition of
3385// the ability to pass a context and additional request options.
3386//
3387// See StartPipelineExecution for details on how to use this API operation.
3388//
3389// The context must be non-nil and will be used for request cancellation. If
3390// the context is nil a panic will occur. In the future the SDK may create
3391// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3392// for more information on using Contexts.
3393func (c *CodePipeline) StartPipelineExecutionWithContext(ctx aws.Context, input *StartPipelineExecutionInput, opts ...request.Option) (*StartPipelineExecutionOutput, error) {
3394	req, out := c.StartPipelineExecutionRequest(input)
3395	req.SetContext(ctx)
3396	req.ApplyOptions(opts...)
3397	return out, req.Send()
3398}
3399
3400const opStopPipelineExecution = "StopPipelineExecution"
3401
3402// StopPipelineExecutionRequest generates a "aws/request.Request" representing the
3403// client's request for the StopPipelineExecution operation. The "output" return
3404// value will be populated with the request's response once the request completes
3405// successfully.
3406//
3407// Use "Send" method on the returned Request to send the API call to the service.
3408// the "output" return value is not valid until after Send returns without error.
3409//
3410// See StopPipelineExecution for more information on using the StopPipelineExecution
3411// API call, and error handling.
3412//
3413// This method is useful when you want to inject custom logic or configuration
3414// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3415//
3416//
3417//    // Example sending a request using the StopPipelineExecutionRequest method.
3418//    req, resp := client.StopPipelineExecutionRequest(params)
3419//
3420//    err := req.Send()
3421//    if err == nil { // resp is now filled
3422//        fmt.Println(resp)
3423//    }
3424//
3425// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/StopPipelineExecution
3426func (c *CodePipeline) StopPipelineExecutionRequest(input *StopPipelineExecutionInput) (req *request.Request, output *StopPipelineExecutionOutput) {
3427	op := &request.Operation{
3428		Name:       opStopPipelineExecution,
3429		HTTPMethod: "POST",
3430		HTTPPath:   "/",
3431	}
3432
3433	if input == nil {
3434		input = &StopPipelineExecutionInput{}
3435	}
3436
3437	output = &StopPipelineExecutionOutput{}
3438	req = c.newRequest(op, input, output)
3439	return
3440}
3441
3442// StopPipelineExecution API operation for AWS CodePipeline.
3443//
3444// Stops the specified pipeline execution. You choose to either stop the pipeline
3445// execution by completing in-progress actions without starting subsequent actions,
3446// or by abandoning in-progress actions. While completing or abandoning in-progress
3447// actions, the pipeline execution is in a Stopping state. After all in-progress
3448// actions are completed or abandoned, the pipeline execution is in a Stopped
3449// state.
3450//
3451// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3452// with awserr.Error's Code and Message methods to get detailed information about
3453// the error.
3454//
3455// See the AWS API reference guide for AWS CodePipeline's
3456// API operation StopPipelineExecution for usage and error information.
3457//
3458// Returned Error Types:
3459//   * ValidationException
3460//   The validation was specified in an invalid format.
3461//
3462//   * ConflictException
3463//   Your request cannot be handled because the pipeline is busy handling ongoing
3464//   activities. Try again later.
3465//
3466//   * PipelineNotFoundException
3467//   The pipeline was specified in an invalid format or cannot be found.
3468//
3469//   * PipelineExecutionNotStoppableException
3470//   Unable to stop the pipeline execution. The execution might already be in
3471//   a Stopped state, or it might no longer be in progress.
3472//
3473//   * DuplicatedStopRequestException
3474//   The pipeline execution is already in a Stopping state. If you already chose
3475//   to stop and wait, you cannot make that request again. You can choose to stop
3476//   and abandon now, but be aware that this option can lead to failed tasks or
3477//   out of sequence tasks. If you already chose to stop and abandon, you cannot
3478//   make that request again.
3479//
3480// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/StopPipelineExecution
3481func (c *CodePipeline) StopPipelineExecution(input *StopPipelineExecutionInput) (*StopPipelineExecutionOutput, error) {
3482	req, out := c.StopPipelineExecutionRequest(input)
3483	return out, req.Send()
3484}
3485
3486// StopPipelineExecutionWithContext is the same as StopPipelineExecution with the addition of
3487// the ability to pass a context and additional request options.
3488//
3489// See StopPipelineExecution for details on how to use this API operation.
3490//
3491// The context must be non-nil and will be used for request cancellation. If
3492// the context is nil a panic will occur. In the future the SDK may create
3493// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3494// for more information on using Contexts.
3495func (c *CodePipeline) StopPipelineExecutionWithContext(ctx aws.Context, input *StopPipelineExecutionInput, opts ...request.Option) (*StopPipelineExecutionOutput, error) {
3496	req, out := c.StopPipelineExecutionRequest(input)
3497	req.SetContext(ctx)
3498	req.ApplyOptions(opts...)
3499	return out, req.Send()
3500}
3501
3502const opTagResource = "TagResource"
3503
3504// TagResourceRequest generates a "aws/request.Request" representing the
3505// client's request for the TagResource operation. The "output" return
3506// value will be populated with the request's response once the request completes
3507// successfully.
3508//
3509// Use "Send" method on the returned Request to send the API call to the service.
3510// the "output" return value is not valid until after Send returns without error.
3511//
3512// See TagResource for more information on using the TagResource
3513// API call, and error handling.
3514//
3515// This method is useful when you want to inject custom logic or configuration
3516// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3517//
3518//
3519//    // Example sending a request using the TagResourceRequest method.
3520//    req, resp := client.TagResourceRequest(params)
3521//
3522//    err := req.Send()
3523//    if err == nil { // resp is now filled
3524//        fmt.Println(resp)
3525//    }
3526//
3527// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/TagResource
3528func (c *CodePipeline) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) {
3529	op := &request.Operation{
3530		Name:       opTagResource,
3531		HTTPMethod: "POST",
3532		HTTPPath:   "/",
3533	}
3534
3535	if input == nil {
3536		input = &TagResourceInput{}
3537	}
3538
3539	output = &TagResourceOutput{}
3540	req = c.newRequest(op, input, output)
3541	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
3542	return
3543}
3544
3545// TagResource API operation for AWS CodePipeline.
3546//
3547// Adds to or modifies the tags of the given resource. Tags are metadata that
3548// can be used to manage a resource.
3549//
3550// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3551// with awserr.Error's Code and Message methods to get detailed information about
3552// the error.
3553//
3554// See the AWS API reference guide for AWS CodePipeline's
3555// API operation TagResource for usage and error information.
3556//
3557// Returned Error Types:
3558//   * ValidationException
3559//   The validation was specified in an invalid format.
3560//
3561//   * ResourceNotFoundException
3562//   The resource was specified in an invalid format.
3563//
3564//   * InvalidArnException
3565//   The specified resource ARN is invalid.
3566//
3567//   * TooManyTagsException
3568//   The tags limit for a resource has been exceeded.
3569//
3570//   * InvalidTagsException
3571//   The specified resource tags are invalid.
3572//
3573//   * ConcurrentModificationException
3574//   Unable to modify the tag due to a simultaneous update request.
3575//
3576// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/TagResource
3577func (c *CodePipeline) TagResource(input *TagResourceInput) (*TagResourceOutput, error) {
3578	req, out := c.TagResourceRequest(input)
3579	return out, req.Send()
3580}
3581
3582// TagResourceWithContext is the same as TagResource with the addition of
3583// the ability to pass a context and additional request options.
3584//
3585// See TagResource for details on how to use this API operation.
3586//
3587// The context must be non-nil and will be used for request cancellation. If
3588// the context is nil a panic will occur. In the future the SDK may create
3589// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3590// for more information on using Contexts.
3591func (c *CodePipeline) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) {
3592	req, out := c.TagResourceRequest(input)
3593	req.SetContext(ctx)
3594	req.ApplyOptions(opts...)
3595	return out, req.Send()
3596}
3597
3598const opUntagResource = "UntagResource"
3599
3600// UntagResourceRequest generates a "aws/request.Request" representing the
3601// client's request for the UntagResource operation. The "output" return
3602// value will be populated with the request's response once the request completes
3603// successfully.
3604//
3605// Use "Send" method on the returned Request to send the API call to the service.
3606// the "output" return value is not valid until after Send returns without error.
3607//
3608// See UntagResource for more information on using the UntagResource
3609// API call, and error handling.
3610//
3611// This method is useful when you want to inject custom logic or configuration
3612// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3613//
3614//
3615//    // Example sending a request using the UntagResourceRequest method.
3616//    req, resp := client.UntagResourceRequest(params)
3617//
3618//    err := req.Send()
3619//    if err == nil { // resp is now filled
3620//        fmt.Println(resp)
3621//    }
3622//
3623// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/UntagResource
3624func (c *CodePipeline) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) {
3625	op := &request.Operation{
3626		Name:       opUntagResource,
3627		HTTPMethod: "POST",
3628		HTTPPath:   "/",
3629	}
3630
3631	if input == nil {
3632		input = &UntagResourceInput{}
3633	}
3634
3635	output = &UntagResourceOutput{}
3636	req = c.newRequest(op, input, output)
3637	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
3638	return
3639}
3640
3641// UntagResource API operation for AWS CodePipeline.
3642//
3643// Removes tags from an AWS resource.
3644//
3645// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3646// with awserr.Error's Code and Message methods to get detailed information about
3647// the error.
3648//
3649// See the AWS API reference guide for AWS CodePipeline's
3650// API operation UntagResource for usage and error information.
3651//
3652// Returned Error Types:
3653//   * ValidationException
3654//   The validation was specified in an invalid format.
3655//
3656//   * ResourceNotFoundException
3657//   The resource was specified in an invalid format.
3658//
3659//   * InvalidArnException
3660//   The specified resource ARN is invalid.
3661//
3662//   * InvalidTagsException
3663//   The specified resource tags are invalid.
3664//
3665//   * ConcurrentModificationException
3666//   Unable to modify the tag due to a simultaneous update request.
3667//
3668// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/UntagResource
3669func (c *CodePipeline) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) {
3670	req, out := c.UntagResourceRequest(input)
3671	return out, req.Send()
3672}
3673
3674// UntagResourceWithContext is the same as UntagResource with the addition of
3675// the ability to pass a context and additional request options.
3676//
3677// See UntagResource for details on how to use this API operation.
3678//
3679// The context must be non-nil and will be used for request cancellation. If
3680// the context is nil a panic will occur. In the future the SDK may create
3681// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3682// for more information on using Contexts.
3683func (c *CodePipeline) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) {
3684	req, out := c.UntagResourceRequest(input)
3685	req.SetContext(ctx)
3686	req.ApplyOptions(opts...)
3687	return out, req.Send()
3688}
3689
3690const opUpdateActionType = "UpdateActionType"
3691
3692// UpdateActionTypeRequest generates a "aws/request.Request" representing the
3693// client's request for the UpdateActionType operation. The "output" return
3694// value will be populated with the request's response once the request completes
3695// successfully.
3696//
3697// Use "Send" method on the returned Request to send the API call to the service.
3698// the "output" return value is not valid until after Send returns without error.
3699//
3700// See UpdateActionType for more information on using the UpdateActionType
3701// API call, and error handling.
3702//
3703// This method is useful when you want to inject custom logic or configuration
3704// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3705//
3706//
3707//    // Example sending a request using the UpdateActionTypeRequest method.
3708//    req, resp := client.UpdateActionTypeRequest(params)
3709//
3710//    err := req.Send()
3711//    if err == nil { // resp is now filled
3712//        fmt.Println(resp)
3713//    }
3714//
3715// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/UpdateActionType
3716func (c *CodePipeline) UpdateActionTypeRequest(input *UpdateActionTypeInput) (req *request.Request, output *UpdateActionTypeOutput) {
3717	op := &request.Operation{
3718		Name:       opUpdateActionType,
3719		HTTPMethod: "POST",
3720		HTTPPath:   "/",
3721	}
3722
3723	if input == nil {
3724		input = &UpdateActionTypeInput{}
3725	}
3726
3727	output = &UpdateActionTypeOutput{}
3728	req = c.newRequest(op, input, output)
3729	req.Handlers.Unmarshal.Swap(jsonrpc.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
3730	return
3731}
3732
3733// UpdateActionType API operation for AWS CodePipeline.
3734//
3735// Updates an action type that was created with any supported integration model,
3736// where the action type is to be used by customers of the action type provider.
3737// Use a JSON file with the action definition and UpdateActionType to provide
3738// the full structure.
3739//
3740// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3741// with awserr.Error's Code and Message methods to get detailed information about
3742// the error.
3743//
3744// See the AWS API reference guide for AWS CodePipeline's
3745// API operation UpdateActionType for usage and error information.
3746//
3747// Returned Error Types:
3748//   * RequestFailedException
3749//   The request failed because of an unknown error, exception, or failure.
3750//
3751//   * ValidationException
3752//   The validation was specified in an invalid format.
3753//
3754//   * ActionTypeNotFoundException
3755//   The specified action type cannot be found.
3756//
3757// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/UpdateActionType
3758func (c *CodePipeline) UpdateActionType(input *UpdateActionTypeInput) (*UpdateActionTypeOutput, error) {
3759	req, out := c.UpdateActionTypeRequest(input)
3760	return out, req.Send()
3761}
3762
3763// UpdateActionTypeWithContext is the same as UpdateActionType with the addition of
3764// the ability to pass a context and additional request options.
3765//
3766// See UpdateActionType for details on how to use this API operation.
3767//
3768// The context must be non-nil and will be used for request cancellation. If
3769// the context is nil a panic will occur. In the future the SDK may create
3770// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3771// for more information on using Contexts.
3772func (c *CodePipeline) UpdateActionTypeWithContext(ctx aws.Context, input *UpdateActionTypeInput, opts ...request.Option) (*UpdateActionTypeOutput, error) {
3773	req, out := c.UpdateActionTypeRequest(input)
3774	req.SetContext(ctx)
3775	req.ApplyOptions(opts...)
3776	return out, req.Send()
3777}
3778
3779const opUpdatePipeline = "UpdatePipeline"
3780
3781// UpdatePipelineRequest generates a "aws/request.Request" representing the
3782// client's request for the UpdatePipeline operation. The "output" return
3783// value will be populated with the request's response once the request completes
3784// successfully.
3785//
3786// Use "Send" method on the returned Request to send the API call to the service.
3787// the "output" return value is not valid until after Send returns without error.
3788//
3789// See UpdatePipeline for more information on using the UpdatePipeline
3790// API call, and error handling.
3791//
3792// This method is useful when you want to inject custom logic or configuration
3793// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3794//
3795//
3796//    // Example sending a request using the UpdatePipelineRequest method.
3797//    req, resp := client.UpdatePipelineRequest(params)
3798//
3799//    err := req.Send()
3800//    if err == nil { // resp is now filled
3801//        fmt.Println(resp)
3802//    }
3803//
3804// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/UpdatePipeline
3805func (c *CodePipeline) UpdatePipelineRequest(input *UpdatePipelineInput) (req *request.Request, output *UpdatePipelineOutput) {
3806	op := &request.Operation{
3807		Name:       opUpdatePipeline,
3808		HTTPMethod: "POST",
3809		HTTPPath:   "/",
3810	}
3811
3812	if input == nil {
3813		input = &UpdatePipelineInput{}
3814	}
3815
3816	output = &UpdatePipelineOutput{}
3817	req = c.newRequest(op, input, output)
3818	return
3819}
3820
3821// UpdatePipeline API operation for AWS CodePipeline.
3822//
3823// Updates a specified pipeline with edits or changes to its structure. Use
3824// a JSON file with the pipeline structure and UpdatePipeline to provide the
3825// full structure of the pipeline. Updating the pipeline increases the version
3826// number of the pipeline by 1.
3827//
3828// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3829// with awserr.Error's Code and Message methods to get detailed information about
3830// the error.
3831//
3832// See the AWS API reference guide for AWS CodePipeline's
3833// API operation UpdatePipeline for usage and error information.
3834//
3835// Returned Error Types:
3836//   * ValidationException
3837//   The validation was specified in an invalid format.
3838//
3839//   * InvalidStageDeclarationException
3840//   The stage declaration was specified in an invalid format.
3841//
3842//   * InvalidActionDeclarationException
3843//   The action declaration was specified in an invalid format.
3844//
3845//   * InvalidBlockerDeclarationException
3846//   Reserved for future use.
3847//
3848//   * InvalidStructureException
3849//   The structure was specified in an invalid format.
3850//
3851//   * LimitExceededException
3852//   The number of pipelines associated with the AWS account has exceeded the
3853//   limit allowed for the account.
3854//
3855// See also, https://docs.aws.amazon.com/goto/WebAPI/codepipeline-2015-07-09/UpdatePipeline
3856func (c *CodePipeline) UpdatePipeline(input *UpdatePipelineInput) (*UpdatePipelineOutput, error) {
3857	req, out := c.UpdatePipelineRequest(input)
3858	return out, req.Send()
3859}
3860
3861// UpdatePipelineWithContext is the same as UpdatePipeline with the addition of
3862// the ability to pass a context and additional request options.
3863//
3864// See UpdatePipeline for details on how to use this API operation.
3865//
3866// The context must be non-nil and will be used for request cancellation. If
3867// the context is nil a panic will occur. In the future the SDK may create
3868// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3869// for more information on using Contexts.
3870func (c *CodePipeline) UpdatePipelineWithContext(ctx aws.Context, input *UpdatePipelineInput, opts ...request.Option) (*UpdatePipelineOutput, error) {
3871	req, out := c.UpdatePipelineRequest(input)
3872	req.SetContext(ctx)
3873	req.ApplyOptions(opts...)
3874	return out, req.Send()
3875}
3876
3877// Represents an AWS session credentials object. These credentials are temporary
3878// credentials that are issued by AWS Secure Token Service (STS). They can be
3879// used to access input and output artifacts in the S3 bucket used to store
3880// artifact for the pipeline in AWS CodePipeline.
3881type AWSSessionCredentials struct {
3882	_ struct{} `type:"structure" sensitive:"true"`
3883
3884	// The access key for the session.
3885	//
3886	// AccessKeyId is a required field
3887	AccessKeyId *string `locationName:"accessKeyId" type:"string" required:"true" sensitive:"true"`
3888
3889	// The secret access key for the session.
3890	//
3891	// SecretAccessKey is a required field
3892	SecretAccessKey *string `locationName:"secretAccessKey" type:"string" required:"true" sensitive:"true"`
3893
3894	// The token for the session.
3895	//
3896	// SessionToken is a required field
3897	SessionToken *string `locationName:"sessionToken" type:"string" required:"true" sensitive:"true"`
3898}
3899
3900// String returns the string representation
3901func (s AWSSessionCredentials) String() string {
3902	return awsutil.Prettify(s)
3903}
3904
3905// GoString returns the string representation
3906func (s AWSSessionCredentials) GoString() string {
3907	return s.String()
3908}
3909
3910// SetAccessKeyId sets the AccessKeyId field's value.
3911func (s *AWSSessionCredentials) SetAccessKeyId(v string) *AWSSessionCredentials {
3912	s.AccessKeyId = &v
3913	return s
3914}
3915
3916// SetSecretAccessKey sets the SecretAccessKey field's value.
3917func (s *AWSSessionCredentials) SetSecretAccessKey(v string) *AWSSessionCredentials {
3918	s.SecretAccessKey = &v
3919	return s
3920}
3921
3922// SetSessionToken sets the SessionToken field's value.
3923func (s *AWSSessionCredentials) SetSessionToken(v string) *AWSSessionCredentials {
3924	s.SessionToken = &v
3925	return s
3926}
3927
3928// Represents the input of an AcknowledgeJob action.
3929type AcknowledgeJobInput struct {
3930	_ struct{} `type:"structure"`
3931
3932	// The unique system-generated ID of the job for which you want to confirm receipt.
3933	//
3934	// JobId is a required field
3935	JobId *string `locationName:"jobId" type:"string" required:"true"`
3936
3937	// A system-generated random number that AWS CodePipeline uses to ensure that
3938	// the job is being worked on by only one job worker. Get this number from the
3939	// response of the PollForJobs request that returned this job.
3940	//
3941	// Nonce is a required field
3942	Nonce *string `locationName:"nonce" min:"1" type:"string" required:"true"`
3943}
3944
3945// String returns the string representation
3946func (s AcknowledgeJobInput) String() string {
3947	return awsutil.Prettify(s)
3948}
3949
3950// GoString returns the string representation
3951func (s AcknowledgeJobInput) GoString() string {
3952	return s.String()
3953}
3954
3955// Validate inspects the fields of the type to determine if they are valid.
3956func (s *AcknowledgeJobInput) Validate() error {
3957	invalidParams := request.ErrInvalidParams{Context: "AcknowledgeJobInput"}
3958	if s.JobId == nil {
3959		invalidParams.Add(request.NewErrParamRequired("JobId"))
3960	}
3961	if s.Nonce == nil {
3962		invalidParams.Add(request.NewErrParamRequired("Nonce"))
3963	}
3964	if s.Nonce != nil && len(*s.Nonce) < 1 {
3965		invalidParams.Add(request.NewErrParamMinLen("Nonce", 1))
3966	}
3967
3968	if invalidParams.Len() > 0 {
3969		return invalidParams
3970	}
3971	return nil
3972}
3973
3974// SetJobId sets the JobId field's value.
3975func (s *AcknowledgeJobInput) SetJobId(v string) *AcknowledgeJobInput {
3976	s.JobId = &v
3977	return s
3978}
3979
3980// SetNonce sets the Nonce field's value.
3981func (s *AcknowledgeJobInput) SetNonce(v string) *AcknowledgeJobInput {
3982	s.Nonce = &v
3983	return s
3984}
3985
3986// Represents the output of an AcknowledgeJob action.
3987type AcknowledgeJobOutput struct {
3988	_ struct{} `type:"structure"`
3989
3990	// Whether the job worker has received the specified job.
3991	Status *string `locationName:"status" type:"string" enum:"JobStatus"`
3992}
3993
3994// String returns the string representation
3995func (s AcknowledgeJobOutput) String() string {
3996	return awsutil.Prettify(s)
3997}
3998
3999// GoString returns the string representation
4000func (s AcknowledgeJobOutput) GoString() string {
4001	return s.String()
4002}
4003
4004// SetStatus sets the Status field's value.
4005func (s *AcknowledgeJobOutput) SetStatus(v string) *AcknowledgeJobOutput {
4006	s.Status = &v
4007	return s
4008}
4009
4010// Represents the input of an AcknowledgeThirdPartyJob action.
4011type AcknowledgeThirdPartyJobInput struct {
4012	_ struct{} `type:"structure"`
4013
4014	// The clientToken portion of the clientId and clientToken pair used to verify
4015	// that the calling entity is allowed access to the job and its details.
4016	//
4017	// ClientToken is a required field
4018	ClientToken *string `locationName:"clientToken" min:"1" type:"string" required:"true"`
4019
4020	// The unique system-generated ID of the job.
4021	//
4022	// JobId is a required field
4023	JobId *string `locationName:"jobId" min:"1" type:"string" required:"true"`
4024
4025	// A system-generated random number that AWS CodePipeline uses to ensure that
4026	// the job is being worked on by only one job worker. Get this number from the
4027	// response to a GetThirdPartyJobDetails request.
4028	//
4029	// Nonce is a required field
4030	Nonce *string `locationName:"nonce" min:"1" type:"string" required:"true"`
4031}
4032
4033// String returns the string representation
4034func (s AcknowledgeThirdPartyJobInput) String() string {
4035	return awsutil.Prettify(s)
4036}
4037
4038// GoString returns the string representation
4039func (s AcknowledgeThirdPartyJobInput) GoString() string {
4040	return s.String()
4041}
4042
4043// Validate inspects the fields of the type to determine if they are valid.
4044func (s *AcknowledgeThirdPartyJobInput) Validate() error {
4045	invalidParams := request.ErrInvalidParams{Context: "AcknowledgeThirdPartyJobInput"}
4046	if s.ClientToken == nil {
4047		invalidParams.Add(request.NewErrParamRequired("ClientToken"))
4048	}
4049	if s.ClientToken != nil && len(*s.ClientToken) < 1 {
4050		invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
4051	}
4052	if s.JobId == nil {
4053		invalidParams.Add(request.NewErrParamRequired("JobId"))
4054	}
4055	if s.JobId != nil && len(*s.JobId) < 1 {
4056		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
4057	}
4058	if s.Nonce == nil {
4059		invalidParams.Add(request.NewErrParamRequired("Nonce"))
4060	}
4061	if s.Nonce != nil && len(*s.Nonce) < 1 {
4062		invalidParams.Add(request.NewErrParamMinLen("Nonce", 1))
4063	}
4064
4065	if invalidParams.Len() > 0 {
4066		return invalidParams
4067	}
4068	return nil
4069}
4070
4071// SetClientToken sets the ClientToken field's value.
4072func (s *AcknowledgeThirdPartyJobInput) SetClientToken(v string) *AcknowledgeThirdPartyJobInput {
4073	s.ClientToken = &v
4074	return s
4075}
4076
4077// SetJobId sets the JobId field's value.
4078func (s *AcknowledgeThirdPartyJobInput) SetJobId(v string) *AcknowledgeThirdPartyJobInput {
4079	s.JobId = &v
4080	return s
4081}
4082
4083// SetNonce sets the Nonce field's value.
4084func (s *AcknowledgeThirdPartyJobInput) SetNonce(v string) *AcknowledgeThirdPartyJobInput {
4085	s.Nonce = &v
4086	return s
4087}
4088
4089// Represents the output of an AcknowledgeThirdPartyJob action.
4090type AcknowledgeThirdPartyJobOutput struct {
4091	_ struct{} `type:"structure"`
4092
4093	// The status information for the third party job, if any.
4094	Status *string `locationName:"status" type:"string" enum:"JobStatus"`
4095}
4096
4097// String returns the string representation
4098func (s AcknowledgeThirdPartyJobOutput) String() string {
4099	return awsutil.Prettify(s)
4100}
4101
4102// GoString returns the string representation
4103func (s AcknowledgeThirdPartyJobOutput) GoString() string {
4104	return s.String()
4105}
4106
4107// SetStatus sets the Status field's value.
4108func (s *AcknowledgeThirdPartyJobOutput) SetStatus(v string) *AcknowledgeThirdPartyJobOutput {
4109	s.Status = &v
4110	return s
4111}
4112
4113// Represents information about an action configuration.
4114type ActionConfiguration struct {
4115	_ struct{} `type:"structure"`
4116
4117	// The configuration data for the action.
4118	Configuration map[string]*string `locationName:"configuration" type:"map"`
4119}
4120
4121// String returns the string representation
4122func (s ActionConfiguration) String() string {
4123	return awsutil.Prettify(s)
4124}
4125
4126// GoString returns the string representation
4127func (s ActionConfiguration) GoString() string {
4128	return s.String()
4129}
4130
4131// SetConfiguration sets the Configuration field's value.
4132func (s *ActionConfiguration) SetConfiguration(v map[string]*string) *ActionConfiguration {
4133	s.Configuration = v
4134	return s
4135}
4136
4137// Represents information about an action configuration property.
4138type ActionConfigurationProperty struct {
4139	_ struct{} `type:"structure"`
4140
4141	// The description of the action configuration property that is displayed to
4142	// users.
4143	Description *string `locationName:"description" min:"1" type:"string"`
4144
4145	// Whether the configuration property is a key.
4146	//
4147	// Key is a required field
4148	Key *bool `locationName:"key" type:"boolean" required:"true"`
4149
4150	// The name of the action configuration property.
4151	//
4152	// Name is a required field
4153	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
4154
4155	// Indicates that the property is used with PollForJobs. When creating a custom
4156	// action, an action can have up to one queryable property. If it has one, that
4157	// property must be both required and not secret.
4158	//
4159	// If you create a pipeline with a custom action type, and that custom action
4160	// contains a queryable property, the value for that configuration property
4161	// is subject to other restrictions. The value must be less than or equal to
4162	// twenty (20) characters. The value can contain only alphanumeric characters,
4163	// underscores, and hyphens.
4164	Queryable *bool `locationName:"queryable" type:"boolean"`
4165
4166	// Whether the configuration property is a required value.
4167	//
4168	// Required is a required field
4169	Required *bool `locationName:"required" type:"boolean" required:"true"`
4170
4171	// Whether the configuration property is secret. Secrets are hidden from all
4172	// calls except for GetJobDetails, GetThirdPartyJobDetails, PollForJobs, and
4173	// PollForThirdPartyJobs.
4174	//
4175	// When updating a pipeline, passing * * * * * without changing any other values
4176	// of the action preserves the previous value of the secret.
4177	//
4178	// Secret is a required field
4179	Secret *bool `locationName:"secret" type:"boolean" required:"true"`
4180
4181	// The type of the configuration property.
4182	Type *string `locationName:"type" type:"string" enum:"ActionConfigurationPropertyType"`
4183}
4184
4185// String returns the string representation
4186func (s ActionConfigurationProperty) String() string {
4187	return awsutil.Prettify(s)
4188}
4189
4190// GoString returns the string representation
4191func (s ActionConfigurationProperty) GoString() string {
4192	return s.String()
4193}
4194
4195// Validate inspects the fields of the type to determine if they are valid.
4196func (s *ActionConfigurationProperty) Validate() error {
4197	invalidParams := request.ErrInvalidParams{Context: "ActionConfigurationProperty"}
4198	if s.Description != nil && len(*s.Description) < 1 {
4199		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
4200	}
4201	if s.Key == nil {
4202		invalidParams.Add(request.NewErrParamRequired("Key"))
4203	}
4204	if s.Name == nil {
4205		invalidParams.Add(request.NewErrParamRequired("Name"))
4206	}
4207	if s.Name != nil && len(*s.Name) < 1 {
4208		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
4209	}
4210	if s.Required == nil {
4211		invalidParams.Add(request.NewErrParamRequired("Required"))
4212	}
4213	if s.Secret == nil {
4214		invalidParams.Add(request.NewErrParamRequired("Secret"))
4215	}
4216
4217	if invalidParams.Len() > 0 {
4218		return invalidParams
4219	}
4220	return nil
4221}
4222
4223// SetDescription sets the Description field's value.
4224func (s *ActionConfigurationProperty) SetDescription(v string) *ActionConfigurationProperty {
4225	s.Description = &v
4226	return s
4227}
4228
4229// SetKey sets the Key field's value.
4230func (s *ActionConfigurationProperty) SetKey(v bool) *ActionConfigurationProperty {
4231	s.Key = &v
4232	return s
4233}
4234
4235// SetName sets the Name field's value.
4236func (s *ActionConfigurationProperty) SetName(v string) *ActionConfigurationProperty {
4237	s.Name = &v
4238	return s
4239}
4240
4241// SetQueryable sets the Queryable field's value.
4242func (s *ActionConfigurationProperty) SetQueryable(v bool) *ActionConfigurationProperty {
4243	s.Queryable = &v
4244	return s
4245}
4246
4247// SetRequired sets the Required field's value.
4248func (s *ActionConfigurationProperty) SetRequired(v bool) *ActionConfigurationProperty {
4249	s.Required = &v
4250	return s
4251}
4252
4253// SetSecret sets the Secret field's value.
4254func (s *ActionConfigurationProperty) SetSecret(v bool) *ActionConfigurationProperty {
4255	s.Secret = &v
4256	return s
4257}
4258
4259// SetType sets the Type field's value.
4260func (s *ActionConfigurationProperty) SetType(v string) *ActionConfigurationProperty {
4261	s.Type = &v
4262	return s
4263}
4264
4265// Represents the context of an action in the stage of a pipeline to a job worker.
4266type ActionContext struct {
4267	_ struct{} `type:"structure"`
4268
4269	// The system-generated unique ID that corresponds to an action's execution.
4270	ActionExecutionId *string `locationName:"actionExecutionId" type:"string"`
4271
4272	// The name of the action in the context of a job.
4273	Name *string `locationName:"name" min:"1" type:"string"`
4274}
4275
4276// String returns the string representation
4277func (s ActionContext) String() string {
4278	return awsutil.Prettify(s)
4279}
4280
4281// GoString returns the string representation
4282func (s ActionContext) GoString() string {
4283	return s.String()
4284}
4285
4286// SetActionExecutionId sets the ActionExecutionId field's value.
4287func (s *ActionContext) SetActionExecutionId(v string) *ActionContext {
4288	s.ActionExecutionId = &v
4289	return s
4290}
4291
4292// SetName sets the Name field's value.
4293func (s *ActionContext) SetName(v string) *ActionContext {
4294	s.Name = &v
4295	return s
4296}
4297
4298// Represents information about an action declaration.
4299type ActionDeclaration struct {
4300	_ struct{} `type:"structure"`
4301
4302	// Specifies the action type and the provider of the action.
4303	//
4304	// ActionTypeId is a required field
4305	ActionTypeId *ActionTypeId `locationName:"actionTypeId" type:"structure" required:"true"`
4306
4307	// The action's configuration. These are key-value pairs that specify input
4308	// values for an action. For more information, see Action Structure Requirements
4309	// in CodePipeline (https://docs.aws.amazon.com/codepipeline/latest/userguide/reference-pipeline-structure.html#action-requirements).
4310	// For the list of configuration properties for the AWS CloudFormation action
4311	// type in CodePipeline, see Configuration Properties Reference (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/continuous-delivery-codepipeline-action-reference.html)
4312	// in the AWS CloudFormation User Guide. For template snippets with examples,
4313	// see Using Parameter Override Functions with CodePipeline Pipelines (https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/continuous-delivery-codepipeline-parameter-override-functions.html)
4314	// in the AWS CloudFormation User Guide.
4315	//
4316	// The values can be represented in either JSON or YAML format. For example,
4317	// the JSON configuration item format is as follows:
4318	//
4319	// JSON:
4320	//
4321	// "Configuration" : { Key : Value },
4322	Configuration map[string]*string `locationName:"configuration" type:"map"`
4323
4324	// The name or ID of the artifact consumed by the action, such as a test or
4325	// build artifact.
4326	InputArtifacts []*InputArtifact `locationName:"inputArtifacts" type:"list"`
4327
4328	// The action declaration's name.
4329	//
4330	// Name is a required field
4331	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
4332
4333	// The variable namespace associated with the action. All variables produced
4334	// as output by this action fall under this namespace.
4335	Namespace *string `locationName:"namespace" min:"1" type:"string"`
4336
4337	// The name or ID of the result of the action declaration, such as a test or
4338	// build artifact.
4339	OutputArtifacts []*OutputArtifact `locationName:"outputArtifacts" type:"list"`
4340
4341	// The action declaration's AWS Region, such as us-east-1.
4342	Region *string `locationName:"region" min:"4" type:"string"`
4343
4344	// The ARN of the IAM service role that performs the declared action. This is
4345	// assumed through the roleArn for the pipeline.
4346	RoleArn *string `locationName:"roleArn" type:"string"`
4347
4348	// The order in which actions are run.
4349	RunOrder *int64 `locationName:"runOrder" min:"1" type:"integer"`
4350}
4351
4352// String returns the string representation
4353func (s ActionDeclaration) String() string {
4354	return awsutil.Prettify(s)
4355}
4356
4357// GoString returns the string representation
4358func (s ActionDeclaration) GoString() string {
4359	return s.String()
4360}
4361
4362// Validate inspects the fields of the type to determine if they are valid.
4363func (s *ActionDeclaration) Validate() error {
4364	invalidParams := request.ErrInvalidParams{Context: "ActionDeclaration"}
4365	if s.ActionTypeId == nil {
4366		invalidParams.Add(request.NewErrParamRequired("ActionTypeId"))
4367	}
4368	if s.Name == nil {
4369		invalidParams.Add(request.NewErrParamRequired("Name"))
4370	}
4371	if s.Name != nil && len(*s.Name) < 1 {
4372		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
4373	}
4374	if s.Namespace != nil && len(*s.Namespace) < 1 {
4375		invalidParams.Add(request.NewErrParamMinLen("Namespace", 1))
4376	}
4377	if s.Region != nil && len(*s.Region) < 4 {
4378		invalidParams.Add(request.NewErrParamMinLen("Region", 4))
4379	}
4380	if s.RunOrder != nil && *s.RunOrder < 1 {
4381		invalidParams.Add(request.NewErrParamMinValue("RunOrder", 1))
4382	}
4383	if s.ActionTypeId != nil {
4384		if err := s.ActionTypeId.Validate(); err != nil {
4385			invalidParams.AddNested("ActionTypeId", err.(request.ErrInvalidParams))
4386		}
4387	}
4388	if s.InputArtifacts != nil {
4389		for i, v := range s.InputArtifacts {
4390			if v == nil {
4391				continue
4392			}
4393			if err := v.Validate(); err != nil {
4394				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "InputArtifacts", i), err.(request.ErrInvalidParams))
4395			}
4396		}
4397	}
4398	if s.OutputArtifacts != nil {
4399		for i, v := range s.OutputArtifacts {
4400			if v == nil {
4401				continue
4402			}
4403			if err := v.Validate(); err != nil {
4404				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "OutputArtifacts", i), err.(request.ErrInvalidParams))
4405			}
4406		}
4407	}
4408
4409	if invalidParams.Len() > 0 {
4410		return invalidParams
4411	}
4412	return nil
4413}
4414
4415// SetActionTypeId sets the ActionTypeId field's value.
4416func (s *ActionDeclaration) SetActionTypeId(v *ActionTypeId) *ActionDeclaration {
4417	s.ActionTypeId = v
4418	return s
4419}
4420
4421// SetConfiguration sets the Configuration field's value.
4422func (s *ActionDeclaration) SetConfiguration(v map[string]*string) *ActionDeclaration {
4423	s.Configuration = v
4424	return s
4425}
4426
4427// SetInputArtifacts sets the InputArtifacts field's value.
4428func (s *ActionDeclaration) SetInputArtifacts(v []*InputArtifact) *ActionDeclaration {
4429	s.InputArtifacts = v
4430	return s
4431}
4432
4433// SetName sets the Name field's value.
4434func (s *ActionDeclaration) SetName(v string) *ActionDeclaration {
4435	s.Name = &v
4436	return s
4437}
4438
4439// SetNamespace sets the Namespace field's value.
4440func (s *ActionDeclaration) SetNamespace(v string) *ActionDeclaration {
4441	s.Namespace = &v
4442	return s
4443}
4444
4445// SetOutputArtifacts sets the OutputArtifacts field's value.
4446func (s *ActionDeclaration) SetOutputArtifacts(v []*OutputArtifact) *ActionDeclaration {
4447	s.OutputArtifacts = v
4448	return s
4449}
4450
4451// SetRegion sets the Region field's value.
4452func (s *ActionDeclaration) SetRegion(v string) *ActionDeclaration {
4453	s.Region = &v
4454	return s
4455}
4456
4457// SetRoleArn sets the RoleArn field's value.
4458func (s *ActionDeclaration) SetRoleArn(v string) *ActionDeclaration {
4459	s.RoleArn = &v
4460	return s
4461}
4462
4463// SetRunOrder sets the RunOrder field's value.
4464func (s *ActionDeclaration) SetRunOrder(v int64) *ActionDeclaration {
4465	s.RunOrder = &v
4466	return s
4467}
4468
4469// Represents information about the run of an action.
4470type ActionExecution struct {
4471	_ struct{} `type:"structure"`
4472
4473	// ID of the workflow action execution in the current stage. Use the GetPipelineState
4474	// action to retrieve the current action execution details of the current stage.
4475	//
4476	// For older executions, this field might be empty. The action execution ID
4477	// is available for executions run on or after March 2020.
4478	ActionExecutionId *string `locationName:"actionExecutionId" type:"string"`
4479
4480	// The details of an error returned by a URL external to AWS.
4481	ErrorDetails *ErrorDetails `locationName:"errorDetails" type:"structure"`
4482
4483	// The external ID of the run of the action.
4484	ExternalExecutionId *string `locationName:"externalExecutionId" min:"1" type:"string"`
4485
4486	// The URL of a resource external to AWS that is used when running the action
4487	// (for example, an external repository URL).
4488	ExternalExecutionUrl *string `locationName:"externalExecutionUrl" min:"1" type:"string"`
4489
4490	// The last status change of the action.
4491	LastStatusChange *time.Time `locationName:"lastStatusChange" type:"timestamp"`
4492
4493	// The ARN of the user who last changed the pipeline.
4494	LastUpdatedBy *string `locationName:"lastUpdatedBy" type:"string"`
4495
4496	// A percentage of completeness of the action as it runs.
4497	PercentComplete *int64 `locationName:"percentComplete" type:"integer"`
4498
4499	// The status of the action, or for a completed action, the last status of the
4500	// action.
4501	Status *string `locationName:"status" type:"string" enum:"ActionExecutionStatus"`
4502
4503	// A summary of the run of the action.
4504	Summary *string `locationName:"summary" min:"1" type:"string"`
4505
4506	// The system-generated token used to identify a unique approval request. The
4507	// token for each open approval request can be obtained using the GetPipelineState
4508	// command. It is used to validate that the approval request corresponding to
4509	// this token is still valid.
4510	Token *string `locationName:"token" type:"string"`
4511}
4512
4513// String returns the string representation
4514func (s ActionExecution) String() string {
4515	return awsutil.Prettify(s)
4516}
4517
4518// GoString returns the string representation
4519func (s ActionExecution) GoString() string {
4520	return s.String()
4521}
4522
4523// SetActionExecutionId sets the ActionExecutionId field's value.
4524func (s *ActionExecution) SetActionExecutionId(v string) *ActionExecution {
4525	s.ActionExecutionId = &v
4526	return s
4527}
4528
4529// SetErrorDetails sets the ErrorDetails field's value.
4530func (s *ActionExecution) SetErrorDetails(v *ErrorDetails) *ActionExecution {
4531	s.ErrorDetails = v
4532	return s
4533}
4534
4535// SetExternalExecutionId sets the ExternalExecutionId field's value.
4536func (s *ActionExecution) SetExternalExecutionId(v string) *ActionExecution {
4537	s.ExternalExecutionId = &v
4538	return s
4539}
4540
4541// SetExternalExecutionUrl sets the ExternalExecutionUrl field's value.
4542func (s *ActionExecution) SetExternalExecutionUrl(v string) *ActionExecution {
4543	s.ExternalExecutionUrl = &v
4544	return s
4545}
4546
4547// SetLastStatusChange sets the LastStatusChange field's value.
4548func (s *ActionExecution) SetLastStatusChange(v time.Time) *ActionExecution {
4549	s.LastStatusChange = &v
4550	return s
4551}
4552
4553// SetLastUpdatedBy sets the LastUpdatedBy field's value.
4554func (s *ActionExecution) SetLastUpdatedBy(v string) *ActionExecution {
4555	s.LastUpdatedBy = &v
4556	return s
4557}
4558
4559// SetPercentComplete sets the PercentComplete field's value.
4560func (s *ActionExecution) SetPercentComplete(v int64) *ActionExecution {
4561	s.PercentComplete = &v
4562	return s
4563}
4564
4565// SetStatus sets the Status field's value.
4566func (s *ActionExecution) SetStatus(v string) *ActionExecution {
4567	s.Status = &v
4568	return s
4569}
4570
4571// SetSummary sets the Summary field's value.
4572func (s *ActionExecution) SetSummary(v string) *ActionExecution {
4573	s.Summary = &v
4574	return s
4575}
4576
4577// SetToken sets the Token field's value.
4578func (s *ActionExecution) SetToken(v string) *ActionExecution {
4579	s.Token = &v
4580	return s
4581}
4582
4583// Returns information about an execution of an action, including the action
4584// execution ID, and the name, version, and timing of the action.
4585type ActionExecutionDetail struct {
4586	_ struct{} `type:"structure"`
4587
4588	// The action execution ID.
4589	ActionExecutionId *string `locationName:"actionExecutionId" type:"string"`
4590
4591	// The name of the action.
4592	ActionName *string `locationName:"actionName" min:"1" type:"string"`
4593
4594	// Input details for the action execution, such as role ARN, Region, and input
4595	// artifacts.
4596	Input *ActionExecutionInput `locationName:"input" type:"structure"`
4597
4598	// The last update time of the action execution.
4599	LastUpdateTime *time.Time `locationName:"lastUpdateTime" type:"timestamp"`
4600
4601	// Output details for the action execution, such as the action execution result.
4602	Output *ActionExecutionOutput `locationName:"output" type:"structure"`
4603
4604	// The pipeline execution ID for the action execution.
4605	PipelineExecutionId *string `locationName:"pipelineExecutionId" type:"string"`
4606
4607	// The version of the pipeline where the action was run.
4608	PipelineVersion *int64 `locationName:"pipelineVersion" min:"1" type:"integer"`
4609
4610	// The name of the stage that contains the action.
4611	StageName *string `locationName:"stageName" min:"1" type:"string"`
4612
4613	// The start time of the action execution.
4614	StartTime *time.Time `locationName:"startTime" type:"timestamp"`
4615
4616	// The status of the action execution. Status categories are InProgress, Succeeded,
4617	// and Failed.
4618	Status *string `locationName:"status" type:"string" enum:"ActionExecutionStatus"`
4619}
4620
4621// String returns the string representation
4622func (s ActionExecutionDetail) String() string {
4623	return awsutil.Prettify(s)
4624}
4625
4626// GoString returns the string representation
4627func (s ActionExecutionDetail) GoString() string {
4628	return s.String()
4629}
4630
4631// SetActionExecutionId sets the ActionExecutionId field's value.
4632func (s *ActionExecutionDetail) SetActionExecutionId(v string) *ActionExecutionDetail {
4633	s.ActionExecutionId = &v
4634	return s
4635}
4636
4637// SetActionName sets the ActionName field's value.
4638func (s *ActionExecutionDetail) SetActionName(v string) *ActionExecutionDetail {
4639	s.ActionName = &v
4640	return s
4641}
4642
4643// SetInput sets the Input field's value.
4644func (s *ActionExecutionDetail) SetInput(v *ActionExecutionInput) *ActionExecutionDetail {
4645	s.Input = v
4646	return s
4647}
4648
4649// SetLastUpdateTime sets the LastUpdateTime field's value.
4650func (s *ActionExecutionDetail) SetLastUpdateTime(v time.Time) *ActionExecutionDetail {
4651	s.LastUpdateTime = &v
4652	return s
4653}
4654
4655// SetOutput sets the Output field's value.
4656func (s *ActionExecutionDetail) SetOutput(v *ActionExecutionOutput) *ActionExecutionDetail {
4657	s.Output = v
4658	return s
4659}
4660
4661// SetPipelineExecutionId sets the PipelineExecutionId field's value.
4662func (s *ActionExecutionDetail) SetPipelineExecutionId(v string) *ActionExecutionDetail {
4663	s.PipelineExecutionId = &v
4664	return s
4665}
4666
4667// SetPipelineVersion sets the PipelineVersion field's value.
4668func (s *ActionExecutionDetail) SetPipelineVersion(v int64) *ActionExecutionDetail {
4669	s.PipelineVersion = &v
4670	return s
4671}
4672
4673// SetStageName sets the StageName field's value.
4674func (s *ActionExecutionDetail) SetStageName(v string) *ActionExecutionDetail {
4675	s.StageName = &v
4676	return s
4677}
4678
4679// SetStartTime sets the StartTime field's value.
4680func (s *ActionExecutionDetail) SetStartTime(v time.Time) *ActionExecutionDetail {
4681	s.StartTime = &v
4682	return s
4683}
4684
4685// SetStatus sets the Status field's value.
4686func (s *ActionExecutionDetail) SetStatus(v string) *ActionExecutionDetail {
4687	s.Status = &v
4688	return s
4689}
4690
4691// Filter values for the action execution.
4692type ActionExecutionFilter struct {
4693	_ struct{} `type:"structure"`
4694
4695	// The pipeline execution ID used to filter action execution history.
4696	PipelineExecutionId *string `locationName:"pipelineExecutionId" type:"string"`
4697}
4698
4699// String returns the string representation
4700func (s ActionExecutionFilter) String() string {
4701	return awsutil.Prettify(s)
4702}
4703
4704// GoString returns the string representation
4705func (s ActionExecutionFilter) GoString() string {
4706	return s.String()
4707}
4708
4709// SetPipelineExecutionId sets the PipelineExecutionId field's value.
4710func (s *ActionExecutionFilter) SetPipelineExecutionId(v string) *ActionExecutionFilter {
4711	s.PipelineExecutionId = &v
4712	return s
4713}
4714
4715// Input information used for an action execution.
4716type ActionExecutionInput struct {
4717	_ struct{} `type:"structure"`
4718
4719	// Represents information about an action type.
4720	ActionTypeId *ActionTypeId `locationName:"actionTypeId" type:"structure"`
4721
4722	// Configuration data for an action execution.
4723	Configuration map[string]*string `locationName:"configuration" type:"map"`
4724
4725	// Details of input artifacts of the action that correspond to the action execution.
4726	InputArtifacts []*ArtifactDetail `locationName:"inputArtifacts" type:"list"`
4727
4728	// The variable namespace associated with the action. All variables produced
4729	// as output by this action fall under this namespace.
4730	Namespace *string `locationName:"namespace" min:"1" type:"string"`
4731
4732	// The AWS Region for the action, such as us-east-1.
4733	Region *string `locationName:"region" min:"4" type:"string"`
4734
4735	// Configuration data for an action execution with all variable references replaced
4736	// with their real values for the execution.
4737	ResolvedConfiguration map[string]*string `locationName:"resolvedConfiguration" type:"map"`
4738
4739	// The ARN of the IAM service role that performs the declared action. This is
4740	// assumed through the roleArn for the pipeline.
4741	RoleArn *string `locationName:"roleArn" type:"string"`
4742}
4743
4744// String returns the string representation
4745func (s ActionExecutionInput) String() string {
4746	return awsutil.Prettify(s)
4747}
4748
4749// GoString returns the string representation
4750func (s ActionExecutionInput) GoString() string {
4751	return s.String()
4752}
4753
4754// SetActionTypeId sets the ActionTypeId field's value.
4755func (s *ActionExecutionInput) SetActionTypeId(v *ActionTypeId) *ActionExecutionInput {
4756	s.ActionTypeId = v
4757	return s
4758}
4759
4760// SetConfiguration sets the Configuration field's value.
4761func (s *ActionExecutionInput) SetConfiguration(v map[string]*string) *ActionExecutionInput {
4762	s.Configuration = v
4763	return s
4764}
4765
4766// SetInputArtifacts sets the InputArtifacts field's value.
4767func (s *ActionExecutionInput) SetInputArtifacts(v []*ArtifactDetail) *ActionExecutionInput {
4768	s.InputArtifacts = v
4769	return s
4770}
4771
4772// SetNamespace sets the Namespace field's value.
4773func (s *ActionExecutionInput) SetNamespace(v string) *ActionExecutionInput {
4774	s.Namespace = &v
4775	return s
4776}
4777
4778// SetRegion sets the Region field's value.
4779func (s *ActionExecutionInput) SetRegion(v string) *ActionExecutionInput {
4780	s.Region = &v
4781	return s
4782}
4783
4784// SetResolvedConfiguration sets the ResolvedConfiguration field's value.
4785func (s *ActionExecutionInput) SetResolvedConfiguration(v map[string]*string) *ActionExecutionInput {
4786	s.ResolvedConfiguration = v
4787	return s
4788}
4789
4790// SetRoleArn sets the RoleArn field's value.
4791func (s *ActionExecutionInput) SetRoleArn(v string) *ActionExecutionInput {
4792	s.RoleArn = &v
4793	return s
4794}
4795
4796// Output details listed for an action execution, such as the action execution
4797// result.
4798type ActionExecutionOutput struct {
4799	_ struct{} `type:"structure"`
4800
4801	// Execution result information listed in the output details for an action execution.
4802	ExecutionResult *ActionExecutionResult `locationName:"executionResult" type:"structure"`
4803
4804	// Details of output artifacts of the action that correspond to the action execution.
4805	OutputArtifacts []*ArtifactDetail `locationName:"outputArtifacts" type:"list"`
4806
4807	// The outputVariables field shows the key-value pairs that were output as part
4808	// of that execution.
4809	OutputVariables map[string]*string `locationName:"outputVariables" type:"map"`
4810}
4811
4812// String returns the string representation
4813func (s ActionExecutionOutput) String() string {
4814	return awsutil.Prettify(s)
4815}
4816
4817// GoString returns the string representation
4818func (s ActionExecutionOutput) GoString() string {
4819	return s.String()
4820}
4821
4822// SetExecutionResult sets the ExecutionResult field's value.
4823func (s *ActionExecutionOutput) SetExecutionResult(v *ActionExecutionResult) *ActionExecutionOutput {
4824	s.ExecutionResult = v
4825	return s
4826}
4827
4828// SetOutputArtifacts sets the OutputArtifacts field's value.
4829func (s *ActionExecutionOutput) SetOutputArtifacts(v []*ArtifactDetail) *ActionExecutionOutput {
4830	s.OutputArtifacts = v
4831	return s
4832}
4833
4834// SetOutputVariables sets the OutputVariables field's value.
4835func (s *ActionExecutionOutput) SetOutputVariables(v map[string]*string) *ActionExecutionOutput {
4836	s.OutputVariables = v
4837	return s
4838}
4839
4840// Execution result information, such as the external execution ID.
4841type ActionExecutionResult struct {
4842	_ struct{} `type:"structure"`
4843
4844	// The action provider's external ID for the action execution.
4845	ExternalExecutionId *string `locationName:"externalExecutionId" type:"string"`
4846
4847	// The action provider's summary for the action execution.
4848	ExternalExecutionSummary *string `locationName:"externalExecutionSummary" type:"string"`
4849
4850	// The deepest external link to the external resource (for example, a repository
4851	// URL or deployment endpoint) that is used when running the action.
4852	ExternalExecutionUrl *string `locationName:"externalExecutionUrl" min:"1" type:"string"`
4853}
4854
4855// String returns the string representation
4856func (s ActionExecutionResult) String() string {
4857	return awsutil.Prettify(s)
4858}
4859
4860// GoString returns the string representation
4861func (s ActionExecutionResult) GoString() string {
4862	return s.String()
4863}
4864
4865// SetExternalExecutionId sets the ExternalExecutionId field's value.
4866func (s *ActionExecutionResult) SetExternalExecutionId(v string) *ActionExecutionResult {
4867	s.ExternalExecutionId = &v
4868	return s
4869}
4870
4871// SetExternalExecutionSummary sets the ExternalExecutionSummary field's value.
4872func (s *ActionExecutionResult) SetExternalExecutionSummary(v string) *ActionExecutionResult {
4873	s.ExternalExecutionSummary = &v
4874	return s
4875}
4876
4877// SetExternalExecutionUrl sets the ExternalExecutionUrl field's value.
4878func (s *ActionExecutionResult) SetExternalExecutionUrl(v string) *ActionExecutionResult {
4879	s.ExternalExecutionUrl = &v
4880	return s
4881}
4882
4883// The specified action cannot be found.
4884type ActionNotFoundException struct {
4885	_            struct{}                  `type:"structure"`
4886	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
4887
4888	Message_ *string `locationName:"message" type:"string"`
4889}
4890
4891// String returns the string representation
4892func (s ActionNotFoundException) String() string {
4893	return awsutil.Prettify(s)
4894}
4895
4896// GoString returns the string representation
4897func (s ActionNotFoundException) GoString() string {
4898	return s.String()
4899}
4900
4901func newErrorActionNotFoundException(v protocol.ResponseMetadata) error {
4902	return &ActionNotFoundException{
4903		RespMetadata: v,
4904	}
4905}
4906
4907// Code returns the exception type name.
4908func (s *ActionNotFoundException) Code() string {
4909	return "ActionNotFoundException"
4910}
4911
4912// Message returns the exception's message.
4913func (s *ActionNotFoundException) Message() string {
4914	if s.Message_ != nil {
4915		return *s.Message_
4916	}
4917	return ""
4918}
4919
4920// OrigErr always returns nil, satisfies awserr.Error interface.
4921func (s *ActionNotFoundException) OrigErr() error {
4922	return nil
4923}
4924
4925func (s *ActionNotFoundException) Error() string {
4926	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
4927}
4928
4929// Status code returns the HTTP status code for the request's response error.
4930func (s *ActionNotFoundException) StatusCode() int {
4931	return s.RespMetadata.StatusCode
4932}
4933
4934// RequestID returns the service's response RequestID for request.
4935func (s *ActionNotFoundException) RequestID() string {
4936	return s.RespMetadata.RequestID
4937}
4938
4939// Represents information about the version (or revision) of an action.
4940type ActionRevision struct {
4941	_ struct{} `type:"structure"`
4942
4943	// The date and time when the most recent version of the action was created,
4944	// in timestamp format.
4945	//
4946	// Created is a required field
4947	Created *time.Time `locationName:"created" type:"timestamp" required:"true"`
4948
4949	// The unique identifier of the change that set the state to this revision (for
4950	// example, a deployment ID or timestamp).
4951	//
4952	// RevisionChangeId is a required field
4953	RevisionChangeId *string `locationName:"revisionChangeId" min:"1" type:"string" required:"true"`
4954
4955	// The system-generated unique ID that identifies the revision number of the
4956	// action.
4957	//
4958	// RevisionId is a required field
4959	RevisionId *string `locationName:"revisionId" min:"1" type:"string" required:"true"`
4960}
4961
4962// String returns the string representation
4963func (s ActionRevision) String() string {
4964	return awsutil.Prettify(s)
4965}
4966
4967// GoString returns the string representation
4968func (s ActionRevision) GoString() string {
4969	return s.String()
4970}
4971
4972// Validate inspects the fields of the type to determine if they are valid.
4973func (s *ActionRevision) Validate() error {
4974	invalidParams := request.ErrInvalidParams{Context: "ActionRevision"}
4975	if s.Created == nil {
4976		invalidParams.Add(request.NewErrParamRequired("Created"))
4977	}
4978	if s.RevisionChangeId == nil {
4979		invalidParams.Add(request.NewErrParamRequired("RevisionChangeId"))
4980	}
4981	if s.RevisionChangeId != nil && len(*s.RevisionChangeId) < 1 {
4982		invalidParams.Add(request.NewErrParamMinLen("RevisionChangeId", 1))
4983	}
4984	if s.RevisionId == nil {
4985		invalidParams.Add(request.NewErrParamRequired("RevisionId"))
4986	}
4987	if s.RevisionId != nil && len(*s.RevisionId) < 1 {
4988		invalidParams.Add(request.NewErrParamMinLen("RevisionId", 1))
4989	}
4990
4991	if invalidParams.Len() > 0 {
4992		return invalidParams
4993	}
4994	return nil
4995}
4996
4997// SetCreated sets the Created field's value.
4998func (s *ActionRevision) SetCreated(v time.Time) *ActionRevision {
4999	s.Created = &v
5000	return s
5001}
5002
5003// SetRevisionChangeId sets the RevisionChangeId field's value.
5004func (s *ActionRevision) SetRevisionChangeId(v string) *ActionRevision {
5005	s.RevisionChangeId = &v
5006	return s
5007}
5008
5009// SetRevisionId sets the RevisionId field's value.
5010func (s *ActionRevision) SetRevisionId(v string) *ActionRevision {
5011	s.RevisionId = &v
5012	return s
5013}
5014
5015// Represents information about the state of an action.
5016type ActionState struct {
5017	_ struct{} `type:"structure"`
5018
5019	// The name of the action.
5020	ActionName *string `locationName:"actionName" min:"1" type:"string"`
5021
5022	// Represents information about the version (or revision) of an action.
5023	CurrentRevision *ActionRevision `locationName:"currentRevision" type:"structure"`
5024
5025	// A URL link for more information about the state of the action, such as a
5026	// deployment group details page.
5027	EntityUrl *string `locationName:"entityUrl" min:"1" type:"string"`
5028
5029	// Represents information about the run of an action.
5030	LatestExecution *ActionExecution `locationName:"latestExecution" type:"structure"`
5031
5032	// A URL link for more information about the revision, such as a commit details
5033	// page.
5034	RevisionUrl *string `locationName:"revisionUrl" min:"1" type:"string"`
5035}
5036
5037// String returns the string representation
5038func (s ActionState) String() string {
5039	return awsutil.Prettify(s)
5040}
5041
5042// GoString returns the string representation
5043func (s ActionState) GoString() string {
5044	return s.String()
5045}
5046
5047// SetActionName sets the ActionName field's value.
5048func (s *ActionState) SetActionName(v string) *ActionState {
5049	s.ActionName = &v
5050	return s
5051}
5052
5053// SetCurrentRevision sets the CurrentRevision field's value.
5054func (s *ActionState) SetCurrentRevision(v *ActionRevision) *ActionState {
5055	s.CurrentRevision = v
5056	return s
5057}
5058
5059// SetEntityUrl sets the EntityUrl field's value.
5060func (s *ActionState) SetEntityUrl(v string) *ActionState {
5061	s.EntityUrl = &v
5062	return s
5063}
5064
5065// SetLatestExecution sets the LatestExecution field's value.
5066func (s *ActionState) SetLatestExecution(v *ActionExecution) *ActionState {
5067	s.LatestExecution = v
5068	return s
5069}
5070
5071// SetRevisionUrl sets the RevisionUrl field's value.
5072func (s *ActionState) SetRevisionUrl(v string) *ActionState {
5073	s.RevisionUrl = &v
5074	return s
5075}
5076
5077// Returns information about the details of an action type.
5078type ActionType struct {
5079	_ struct{} `type:"structure"`
5080
5081	// The configuration properties for the action type.
5082	ActionConfigurationProperties []*ActionConfigurationProperty `locationName:"actionConfigurationProperties" type:"list"`
5083
5084	// Represents information about an action type.
5085	//
5086	// Id is a required field
5087	Id *ActionTypeId `locationName:"id" type:"structure" required:"true"`
5088
5089	// The details of the input artifact for the action, such as its commit ID.
5090	//
5091	// InputArtifactDetails is a required field
5092	InputArtifactDetails *ArtifactDetails `locationName:"inputArtifactDetails" type:"structure" required:"true"`
5093
5094	// The details of the output artifact of the action, such as its commit ID.
5095	//
5096	// OutputArtifactDetails is a required field
5097	OutputArtifactDetails *ArtifactDetails `locationName:"outputArtifactDetails" type:"structure" required:"true"`
5098
5099	// The settings for the action type.
5100	Settings *ActionTypeSettings `locationName:"settings" type:"structure"`
5101}
5102
5103// String returns the string representation
5104func (s ActionType) String() string {
5105	return awsutil.Prettify(s)
5106}
5107
5108// GoString returns the string representation
5109func (s ActionType) GoString() string {
5110	return s.String()
5111}
5112
5113// SetActionConfigurationProperties sets the ActionConfigurationProperties field's value.
5114func (s *ActionType) SetActionConfigurationProperties(v []*ActionConfigurationProperty) *ActionType {
5115	s.ActionConfigurationProperties = v
5116	return s
5117}
5118
5119// SetId sets the Id field's value.
5120func (s *ActionType) SetId(v *ActionTypeId) *ActionType {
5121	s.Id = v
5122	return s
5123}
5124
5125// SetInputArtifactDetails sets the InputArtifactDetails field's value.
5126func (s *ActionType) SetInputArtifactDetails(v *ArtifactDetails) *ActionType {
5127	s.InputArtifactDetails = v
5128	return s
5129}
5130
5131// SetOutputArtifactDetails sets the OutputArtifactDetails field's value.
5132func (s *ActionType) SetOutputArtifactDetails(v *ArtifactDetails) *ActionType {
5133	s.OutputArtifactDetails = v
5134	return s
5135}
5136
5137// SetSettings sets the Settings field's value.
5138func (s *ActionType) SetSettings(v *ActionTypeSettings) *ActionType {
5139	s.Settings = v
5140	return s
5141}
5142
5143// Information about parameters for artifacts associated with the action type,
5144// such as the minimum and maximum artifacts allowed.
5145type ActionTypeArtifactDetails struct {
5146	_ struct{} `type:"structure"`
5147
5148	// The maximum number of artifacts that can be used with the actiontype. For
5149	// example, you should specify a minimum and maximum of zero input artifacts
5150	// for an action type with a category of source.
5151	//
5152	// MaximumCount is a required field
5153	MaximumCount *int64 `locationName:"maximumCount" type:"integer" required:"true"`
5154
5155	// The minimum number of artifacts that can be used with the action type. For
5156	// example, you should specify a minimum and maximum of zero input artifacts
5157	// for an action type with a category of source.
5158	//
5159	// MinimumCount is a required field
5160	MinimumCount *int64 `locationName:"minimumCount" type:"integer" required:"true"`
5161}
5162
5163// String returns the string representation
5164func (s ActionTypeArtifactDetails) String() string {
5165	return awsutil.Prettify(s)
5166}
5167
5168// GoString returns the string representation
5169func (s ActionTypeArtifactDetails) GoString() string {
5170	return s.String()
5171}
5172
5173// Validate inspects the fields of the type to determine if they are valid.
5174func (s *ActionTypeArtifactDetails) Validate() error {
5175	invalidParams := request.ErrInvalidParams{Context: "ActionTypeArtifactDetails"}
5176	if s.MaximumCount == nil {
5177		invalidParams.Add(request.NewErrParamRequired("MaximumCount"))
5178	}
5179	if s.MinimumCount == nil {
5180		invalidParams.Add(request.NewErrParamRequired("MinimumCount"))
5181	}
5182
5183	if invalidParams.Len() > 0 {
5184		return invalidParams
5185	}
5186	return nil
5187}
5188
5189// SetMaximumCount sets the MaximumCount field's value.
5190func (s *ActionTypeArtifactDetails) SetMaximumCount(v int64) *ActionTypeArtifactDetails {
5191	s.MaximumCount = &v
5192	return s
5193}
5194
5195// SetMinimumCount sets the MinimumCount field's value.
5196func (s *ActionTypeArtifactDetails) SetMinimumCount(v int64) *ActionTypeArtifactDetails {
5197	s.MinimumCount = &v
5198	return s
5199}
5200
5201// The parameters for the action type definition that are provided when the
5202// action type is created or updated.
5203type ActionTypeDeclaration struct {
5204	_ struct{} `type:"structure"`
5205
5206	// The description for the action type to be updated.
5207	Description *string `locationName:"description" min:"1" type:"string"`
5208
5209	// Information about the executor for an action type that was created with any
5210	// supported integration model.
5211	//
5212	// Executor is a required field
5213	Executor *ActionTypeExecutor `locationName:"executor" type:"structure" required:"true"`
5214
5215	// The action category, owner, provider, and version of the action type to be
5216	// updated.
5217	//
5218	// Id is a required field
5219	Id *ActionTypeIdentifier `locationName:"id" type:"structure" required:"true"`
5220
5221	// Details for the artifacts, such as application files, to be worked on by
5222	// the action. For example, the minimum and maximum number of input artifacts
5223	// allowed.
5224	//
5225	// InputArtifactDetails is a required field
5226	InputArtifactDetails *ActionTypeArtifactDetails `locationName:"inputArtifactDetails" type:"structure" required:"true"`
5227
5228	// Details for the output artifacts, such as a built application, that are the
5229	// result of the action. For example, the minimum and maximum number of output
5230	// artifacts allowed.
5231	//
5232	// OutputArtifactDetails is a required field
5233	OutputArtifactDetails *ActionTypeArtifactDetails `locationName:"outputArtifactDetails" type:"structure" required:"true"`
5234
5235	// Details identifying the accounts with permissions to use the action type.
5236	Permissions *ActionTypePermissions `locationName:"permissions" type:"structure"`
5237
5238	// The properties of the action type to be updated.
5239	Properties []*ActionTypeProperty `locationName:"properties" type:"list"`
5240
5241	// The links associated with the action type to be updated.
5242	Urls *ActionTypeUrls `locationName:"urls" type:"structure"`
5243}
5244
5245// String returns the string representation
5246func (s ActionTypeDeclaration) String() string {
5247	return awsutil.Prettify(s)
5248}
5249
5250// GoString returns the string representation
5251func (s ActionTypeDeclaration) GoString() string {
5252	return s.String()
5253}
5254
5255// Validate inspects the fields of the type to determine if they are valid.
5256func (s *ActionTypeDeclaration) Validate() error {
5257	invalidParams := request.ErrInvalidParams{Context: "ActionTypeDeclaration"}
5258	if s.Description != nil && len(*s.Description) < 1 {
5259		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
5260	}
5261	if s.Executor == nil {
5262		invalidParams.Add(request.NewErrParamRequired("Executor"))
5263	}
5264	if s.Id == nil {
5265		invalidParams.Add(request.NewErrParamRequired("Id"))
5266	}
5267	if s.InputArtifactDetails == nil {
5268		invalidParams.Add(request.NewErrParamRequired("InputArtifactDetails"))
5269	}
5270	if s.OutputArtifactDetails == nil {
5271		invalidParams.Add(request.NewErrParamRequired("OutputArtifactDetails"))
5272	}
5273	if s.Executor != nil {
5274		if err := s.Executor.Validate(); err != nil {
5275			invalidParams.AddNested("Executor", err.(request.ErrInvalidParams))
5276		}
5277	}
5278	if s.Id != nil {
5279		if err := s.Id.Validate(); err != nil {
5280			invalidParams.AddNested("Id", err.(request.ErrInvalidParams))
5281		}
5282	}
5283	if s.InputArtifactDetails != nil {
5284		if err := s.InputArtifactDetails.Validate(); err != nil {
5285			invalidParams.AddNested("InputArtifactDetails", err.(request.ErrInvalidParams))
5286		}
5287	}
5288	if s.OutputArtifactDetails != nil {
5289		if err := s.OutputArtifactDetails.Validate(); err != nil {
5290			invalidParams.AddNested("OutputArtifactDetails", err.(request.ErrInvalidParams))
5291		}
5292	}
5293	if s.Permissions != nil {
5294		if err := s.Permissions.Validate(); err != nil {
5295			invalidParams.AddNested("Permissions", err.(request.ErrInvalidParams))
5296		}
5297	}
5298	if s.Properties != nil {
5299		for i, v := range s.Properties {
5300			if v == nil {
5301				continue
5302			}
5303			if err := v.Validate(); err != nil {
5304				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Properties", i), err.(request.ErrInvalidParams))
5305			}
5306		}
5307	}
5308	if s.Urls != nil {
5309		if err := s.Urls.Validate(); err != nil {
5310			invalidParams.AddNested("Urls", err.(request.ErrInvalidParams))
5311		}
5312	}
5313
5314	if invalidParams.Len() > 0 {
5315		return invalidParams
5316	}
5317	return nil
5318}
5319
5320// SetDescription sets the Description field's value.
5321func (s *ActionTypeDeclaration) SetDescription(v string) *ActionTypeDeclaration {
5322	s.Description = &v
5323	return s
5324}
5325
5326// SetExecutor sets the Executor field's value.
5327func (s *ActionTypeDeclaration) SetExecutor(v *ActionTypeExecutor) *ActionTypeDeclaration {
5328	s.Executor = v
5329	return s
5330}
5331
5332// SetId sets the Id field's value.
5333func (s *ActionTypeDeclaration) SetId(v *ActionTypeIdentifier) *ActionTypeDeclaration {
5334	s.Id = v
5335	return s
5336}
5337
5338// SetInputArtifactDetails sets the InputArtifactDetails field's value.
5339func (s *ActionTypeDeclaration) SetInputArtifactDetails(v *ActionTypeArtifactDetails) *ActionTypeDeclaration {
5340	s.InputArtifactDetails = v
5341	return s
5342}
5343
5344// SetOutputArtifactDetails sets the OutputArtifactDetails field's value.
5345func (s *ActionTypeDeclaration) SetOutputArtifactDetails(v *ActionTypeArtifactDetails) *ActionTypeDeclaration {
5346	s.OutputArtifactDetails = v
5347	return s
5348}
5349
5350// SetPermissions sets the Permissions field's value.
5351func (s *ActionTypeDeclaration) SetPermissions(v *ActionTypePermissions) *ActionTypeDeclaration {
5352	s.Permissions = v
5353	return s
5354}
5355
5356// SetProperties sets the Properties field's value.
5357func (s *ActionTypeDeclaration) SetProperties(v []*ActionTypeProperty) *ActionTypeDeclaration {
5358	s.Properties = v
5359	return s
5360}
5361
5362// SetUrls sets the Urls field's value.
5363func (s *ActionTypeDeclaration) SetUrls(v *ActionTypeUrls) *ActionTypeDeclaration {
5364	s.Urls = v
5365	return s
5366}
5367
5368// The action engine, or executor, for an action type created for a provider,
5369// where the action is to be used by customers of the provider. The action engine
5370// is associated with the model used to create and update the action, such as
5371// the Lambda integration model.
5372type ActionTypeExecutor struct {
5373	_ struct{} `type:"structure"`
5374
5375	// The action configuration properties for the action type. These properties
5376	// are specified in the action definition when the action type is created.
5377	//
5378	// Configuration is a required field
5379	Configuration *ExecutorConfiguration `locationName:"configuration" type:"structure" required:"true"`
5380
5381	// The timeout in seconds for the job. An action execution can have multiple
5382	// jobs. This is the timeout for a single job, not the entire action execution.
5383	JobTimeout *int64 `locationName:"jobTimeout" min:"60" type:"integer"`
5384
5385	// The policy statement that specifies the permissions in the CodePipeline customer’s
5386	// account that are needed to successfully run an action.
5387	//
5388	// To grant permission to another account, specify the account ID as the Principal,
5389	// a domain-style identifier defined by the service, for example codepipeline.amazonaws.com.
5390	//
5391	// The size of the passed JSON policy document cannot exceed 2048 characters.
5392	PolicyStatementsTemplate *string `locationName:"policyStatementsTemplate" min:"1" type:"string"`
5393
5394	// The integration model used to create and update the action type, Lambda or
5395	// JobWorker.
5396	//
5397	// Type is a required field
5398	Type *string `locationName:"type" type:"string" required:"true" enum:"ExecutorType"`
5399}
5400
5401// String returns the string representation
5402func (s ActionTypeExecutor) String() string {
5403	return awsutil.Prettify(s)
5404}
5405
5406// GoString returns the string representation
5407func (s ActionTypeExecutor) GoString() string {
5408	return s.String()
5409}
5410
5411// Validate inspects the fields of the type to determine if they are valid.
5412func (s *ActionTypeExecutor) Validate() error {
5413	invalidParams := request.ErrInvalidParams{Context: "ActionTypeExecutor"}
5414	if s.Configuration == nil {
5415		invalidParams.Add(request.NewErrParamRequired("Configuration"))
5416	}
5417	if s.JobTimeout != nil && *s.JobTimeout < 60 {
5418		invalidParams.Add(request.NewErrParamMinValue("JobTimeout", 60))
5419	}
5420	if s.PolicyStatementsTemplate != nil && len(*s.PolicyStatementsTemplate) < 1 {
5421		invalidParams.Add(request.NewErrParamMinLen("PolicyStatementsTemplate", 1))
5422	}
5423	if s.Type == nil {
5424		invalidParams.Add(request.NewErrParamRequired("Type"))
5425	}
5426	if s.Configuration != nil {
5427		if err := s.Configuration.Validate(); err != nil {
5428			invalidParams.AddNested("Configuration", err.(request.ErrInvalidParams))
5429		}
5430	}
5431
5432	if invalidParams.Len() > 0 {
5433		return invalidParams
5434	}
5435	return nil
5436}
5437
5438// SetConfiguration sets the Configuration field's value.
5439func (s *ActionTypeExecutor) SetConfiguration(v *ExecutorConfiguration) *ActionTypeExecutor {
5440	s.Configuration = v
5441	return s
5442}
5443
5444// SetJobTimeout sets the JobTimeout field's value.
5445func (s *ActionTypeExecutor) SetJobTimeout(v int64) *ActionTypeExecutor {
5446	s.JobTimeout = &v
5447	return s
5448}
5449
5450// SetPolicyStatementsTemplate sets the PolicyStatementsTemplate field's value.
5451func (s *ActionTypeExecutor) SetPolicyStatementsTemplate(v string) *ActionTypeExecutor {
5452	s.PolicyStatementsTemplate = &v
5453	return s
5454}
5455
5456// SetType sets the Type field's value.
5457func (s *ActionTypeExecutor) SetType(v string) *ActionTypeExecutor {
5458	s.Type = &v
5459	return s
5460}
5461
5462// Represents information about an action type.
5463type ActionTypeId struct {
5464	_ struct{} `type:"structure"`
5465
5466	// A category defines what kind of action can be taken in the stage, and constrains
5467	// the provider type for the action. Valid categories are limited to one of
5468	// the following values.
5469	//
5470	//    * Source
5471	//
5472	//    * Build
5473	//
5474	//    * Test
5475	//
5476	//    * Deploy
5477	//
5478	//    * Invoke
5479	//
5480	//    * Approval
5481	//
5482	// Category is a required field
5483	Category *string `locationName:"category" type:"string" required:"true" enum:"ActionCategory"`
5484
5485	// The creator of the action being called. There are three valid values for
5486	// the Owner field in the action category section within your pipeline structure:
5487	// AWS, ThirdParty, and Custom. For more information, see Valid Action Types
5488	// and Providers in CodePipeline (https://docs.aws.amazon.com/codepipeline/latest/userguide/reference-pipeline-structure.html#actions-valid-providers).
5489	//
5490	// Owner is a required field
5491	Owner *string `locationName:"owner" type:"string" required:"true" enum:"ActionOwner"`
5492
5493	// The provider of the service being called by the action. Valid providers are
5494	// determined by the action category. For example, an action in the Deploy category
5495	// type might have a provider of AWS CodeDeploy, which would be specified as
5496	// CodeDeploy. For more information, see Valid Action Types and Providers in
5497	// CodePipeline (https://docs.aws.amazon.com/codepipeline/latest/userguide/reference-pipeline-structure.html#actions-valid-providers).
5498	//
5499	// Provider is a required field
5500	Provider *string `locationName:"provider" min:"1" type:"string" required:"true"`
5501
5502	// A string that describes the action version.
5503	//
5504	// Version is a required field
5505	Version *string `locationName:"version" min:"1" type:"string" required:"true"`
5506}
5507
5508// String returns the string representation
5509func (s ActionTypeId) String() string {
5510	return awsutil.Prettify(s)
5511}
5512
5513// GoString returns the string representation
5514func (s ActionTypeId) GoString() string {
5515	return s.String()
5516}
5517
5518// Validate inspects the fields of the type to determine if they are valid.
5519func (s *ActionTypeId) Validate() error {
5520	invalidParams := request.ErrInvalidParams{Context: "ActionTypeId"}
5521	if s.Category == nil {
5522		invalidParams.Add(request.NewErrParamRequired("Category"))
5523	}
5524	if s.Owner == nil {
5525		invalidParams.Add(request.NewErrParamRequired("Owner"))
5526	}
5527	if s.Provider == nil {
5528		invalidParams.Add(request.NewErrParamRequired("Provider"))
5529	}
5530	if s.Provider != nil && len(*s.Provider) < 1 {
5531		invalidParams.Add(request.NewErrParamMinLen("Provider", 1))
5532	}
5533	if s.Version == nil {
5534		invalidParams.Add(request.NewErrParamRequired("Version"))
5535	}
5536	if s.Version != nil && len(*s.Version) < 1 {
5537		invalidParams.Add(request.NewErrParamMinLen("Version", 1))
5538	}
5539
5540	if invalidParams.Len() > 0 {
5541		return invalidParams
5542	}
5543	return nil
5544}
5545
5546// SetCategory sets the Category field's value.
5547func (s *ActionTypeId) SetCategory(v string) *ActionTypeId {
5548	s.Category = &v
5549	return s
5550}
5551
5552// SetOwner sets the Owner field's value.
5553func (s *ActionTypeId) SetOwner(v string) *ActionTypeId {
5554	s.Owner = &v
5555	return s
5556}
5557
5558// SetProvider sets the Provider field's value.
5559func (s *ActionTypeId) SetProvider(v string) *ActionTypeId {
5560	s.Provider = &v
5561	return s
5562}
5563
5564// SetVersion sets the Version field's value.
5565func (s *ActionTypeId) SetVersion(v string) *ActionTypeId {
5566	s.Version = &v
5567	return s
5568}
5569
5570// Specifies the category, owner, provider, and version of the action type.
5571type ActionTypeIdentifier struct {
5572	_ struct{} `type:"structure"`
5573
5574	// Defines what kind of action can be taken in the stage, one of the following:
5575	//
5576	//    * Source
5577	//
5578	//    * Build
5579	//
5580	//    * Test
5581	//
5582	//    * Deploy
5583	//
5584	//    * Approval
5585	//
5586	//    * Invoke
5587	//
5588	// Category is a required field
5589	Category *string `locationName:"category" type:"string" required:"true" enum:"ActionCategory"`
5590
5591	// The creator of the action type being called: AWS or ThirdParty.
5592	//
5593	// Owner is a required field
5594	Owner *string `locationName:"owner" type:"string" required:"true"`
5595
5596	// The provider of the action type being called. The provider name is supplied
5597	// when the action type is created.
5598	//
5599	// Provider is a required field
5600	Provider *string `locationName:"provider" min:"1" type:"string" required:"true"`
5601
5602	// A string that describes the action type version.
5603	//
5604	// Version is a required field
5605	Version *string `locationName:"version" min:"1" type:"string" required:"true"`
5606}
5607
5608// String returns the string representation
5609func (s ActionTypeIdentifier) String() string {
5610	return awsutil.Prettify(s)
5611}
5612
5613// GoString returns the string representation
5614func (s ActionTypeIdentifier) GoString() string {
5615	return s.String()
5616}
5617
5618// Validate inspects the fields of the type to determine if they are valid.
5619func (s *ActionTypeIdentifier) Validate() error {
5620	invalidParams := request.ErrInvalidParams{Context: "ActionTypeIdentifier"}
5621	if s.Category == nil {
5622		invalidParams.Add(request.NewErrParamRequired("Category"))
5623	}
5624	if s.Owner == nil {
5625		invalidParams.Add(request.NewErrParamRequired("Owner"))
5626	}
5627	if s.Provider == nil {
5628		invalidParams.Add(request.NewErrParamRequired("Provider"))
5629	}
5630	if s.Provider != nil && len(*s.Provider) < 1 {
5631		invalidParams.Add(request.NewErrParamMinLen("Provider", 1))
5632	}
5633	if s.Version == nil {
5634		invalidParams.Add(request.NewErrParamRequired("Version"))
5635	}
5636	if s.Version != nil && len(*s.Version) < 1 {
5637		invalidParams.Add(request.NewErrParamMinLen("Version", 1))
5638	}
5639
5640	if invalidParams.Len() > 0 {
5641		return invalidParams
5642	}
5643	return nil
5644}
5645
5646// SetCategory sets the Category field's value.
5647func (s *ActionTypeIdentifier) SetCategory(v string) *ActionTypeIdentifier {
5648	s.Category = &v
5649	return s
5650}
5651
5652// SetOwner sets the Owner field's value.
5653func (s *ActionTypeIdentifier) SetOwner(v string) *ActionTypeIdentifier {
5654	s.Owner = &v
5655	return s
5656}
5657
5658// SetProvider sets the Provider field's value.
5659func (s *ActionTypeIdentifier) SetProvider(v string) *ActionTypeIdentifier {
5660	s.Provider = &v
5661	return s
5662}
5663
5664// SetVersion sets the Version field's value.
5665func (s *ActionTypeIdentifier) SetVersion(v string) *ActionTypeIdentifier {
5666	s.Version = &v
5667	return s
5668}
5669
5670// The specified action type cannot be found.
5671type ActionTypeNotFoundException struct {
5672	_            struct{}                  `type:"structure"`
5673	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
5674
5675	Message_ *string `locationName:"message" type:"string"`
5676}
5677
5678// String returns the string representation
5679func (s ActionTypeNotFoundException) String() string {
5680	return awsutil.Prettify(s)
5681}
5682
5683// GoString returns the string representation
5684func (s ActionTypeNotFoundException) GoString() string {
5685	return s.String()
5686}
5687
5688func newErrorActionTypeNotFoundException(v protocol.ResponseMetadata) error {
5689	return &ActionTypeNotFoundException{
5690		RespMetadata: v,
5691	}
5692}
5693
5694// Code returns the exception type name.
5695func (s *ActionTypeNotFoundException) Code() string {
5696	return "ActionTypeNotFoundException"
5697}
5698
5699// Message returns the exception's message.
5700func (s *ActionTypeNotFoundException) Message() string {
5701	if s.Message_ != nil {
5702		return *s.Message_
5703	}
5704	return ""
5705}
5706
5707// OrigErr always returns nil, satisfies awserr.Error interface.
5708func (s *ActionTypeNotFoundException) OrigErr() error {
5709	return nil
5710}
5711
5712func (s *ActionTypeNotFoundException) Error() string {
5713	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
5714}
5715
5716// Status code returns the HTTP status code for the request's response error.
5717func (s *ActionTypeNotFoundException) StatusCode() int {
5718	return s.RespMetadata.StatusCode
5719}
5720
5721// RequestID returns the service's response RequestID for request.
5722func (s *ActionTypeNotFoundException) RequestID() string {
5723	return s.RespMetadata.RequestID
5724}
5725
5726// Details identifying the users with permissions to use the action type.
5727type ActionTypePermissions struct {
5728	_ struct{} `type:"structure"`
5729
5730	// A list of AWS account IDs with access to use the action type in their pipelines.
5731	//
5732	// AllowedAccounts is a required field
5733	AllowedAccounts []*string `locationName:"allowedAccounts" min:"1" type:"list" required:"true"`
5734}
5735
5736// String returns the string representation
5737func (s ActionTypePermissions) String() string {
5738	return awsutil.Prettify(s)
5739}
5740
5741// GoString returns the string representation
5742func (s ActionTypePermissions) GoString() string {
5743	return s.String()
5744}
5745
5746// Validate inspects the fields of the type to determine if they are valid.
5747func (s *ActionTypePermissions) Validate() error {
5748	invalidParams := request.ErrInvalidParams{Context: "ActionTypePermissions"}
5749	if s.AllowedAccounts == nil {
5750		invalidParams.Add(request.NewErrParamRequired("AllowedAccounts"))
5751	}
5752	if s.AllowedAccounts != nil && len(s.AllowedAccounts) < 1 {
5753		invalidParams.Add(request.NewErrParamMinLen("AllowedAccounts", 1))
5754	}
5755
5756	if invalidParams.Len() > 0 {
5757		return invalidParams
5758	}
5759	return nil
5760}
5761
5762// SetAllowedAccounts sets the AllowedAccounts field's value.
5763func (s *ActionTypePermissions) SetAllowedAccounts(v []*string) *ActionTypePermissions {
5764	s.AllowedAccounts = v
5765	return s
5766}
5767
5768// Represents information about each property specified in the action configuration,
5769// such as the description and key name that display for the customer using
5770// the action type.
5771type ActionTypeProperty struct {
5772	_ struct{} `type:"structure"`
5773
5774	// The description of the property that is displayed to users.
5775	Description *string `locationName:"description" min:"1" type:"string"`
5776
5777	// Whether the configuration property is a key.
5778	//
5779	// Key is a required field
5780	Key *bool `locationName:"key" type:"boolean" required:"true"`
5781
5782	// The property name that is displayed to users.
5783	//
5784	// Name is a required field
5785	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
5786
5787	// Whether to omit the field value entered by the customer in the log. If true,
5788	// the value is not saved in CloudTrail logs for the action execution.
5789	//
5790	// NoEcho is a required field
5791	NoEcho *bool `locationName:"noEcho" type:"boolean" required:"true"`
5792
5793	// Whether the configuration property is an optional value.
5794	//
5795	// Optional is a required field
5796	Optional *bool `locationName:"optional" type:"boolean" required:"true"`
5797
5798	// Indicates that the property is used with polling. An action type can have
5799	// up to one queryable property. If it has one, that property must be both required
5800	// and not secret.
5801	Queryable *bool `locationName:"queryable" type:"boolean"`
5802}
5803
5804// String returns the string representation
5805func (s ActionTypeProperty) String() string {
5806	return awsutil.Prettify(s)
5807}
5808
5809// GoString returns the string representation
5810func (s ActionTypeProperty) GoString() string {
5811	return s.String()
5812}
5813
5814// Validate inspects the fields of the type to determine if they are valid.
5815func (s *ActionTypeProperty) Validate() error {
5816	invalidParams := request.ErrInvalidParams{Context: "ActionTypeProperty"}
5817	if s.Description != nil && len(*s.Description) < 1 {
5818		invalidParams.Add(request.NewErrParamMinLen("Description", 1))
5819	}
5820	if s.Key == nil {
5821		invalidParams.Add(request.NewErrParamRequired("Key"))
5822	}
5823	if s.Name == nil {
5824		invalidParams.Add(request.NewErrParamRequired("Name"))
5825	}
5826	if s.Name != nil && len(*s.Name) < 1 {
5827		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
5828	}
5829	if s.NoEcho == nil {
5830		invalidParams.Add(request.NewErrParamRequired("NoEcho"))
5831	}
5832	if s.Optional == nil {
5833		invalidParams.Add(request.NewErrParamRequired("Optional"))
5834	}
5835
5836	if invalidParams.Len() > 0 {
5837		return invalidParams
5838	}
5839	return nil
5840}
5841
5842// SetDescription sets the Description field's value.
5843func (s *ActionTypeProperty) SetDescription(v string) *ActionTypeProperty {
5844	s.Description = &v
5845	return s
5846}
5847
5848// SetKey sets the Key field's value.
5849func (s *ActionTypeProperty) SetKey(v bool) *ActionTypeProperty {
5850	s.Key = &v
5851	return s
5852}
5853
5854// SetName sets the Name field's value.
5855func (s *ActionTypeProperty) SetName(v string) *ActionTypeProperty {
5856	s.Name = &v
5857	return s
5858}
5859
5860// SetNoEcho sets the NoEcho field's value.
5861func (s *ActionTypeProperty) SetNoEcho(v bool) *ActionTypeProperty {
5862	s.NoEcho = &v
5863	return s
5864}
5865
5866// SetOptional sets the Optional field's value.
5867func (s *ActionTypeProperty) SetOptional(v bool) *ActionTypeProperty {
5868	s.Optional = &v
5869	return s
5870}
5871
5872// SetQueryable sets the Queryable field's value.
5873func (s *ActionTypeProperty) SetQueryable(v bool) *ActionTypeProperty {
5874	s.Queryable = &v
5875	return s
5876}
5877
5878// Returns information about the settings for an action type.
5879type ActionTypeSettings struct {
5880	_ struct{} `type:"structure"`
5881
5882	// The URL returned to the AWS CodePipeline console that provides a deep link
5883	// to the resources of the external system, such as the configuration page for
5884	// an AWS CodeDeploy deployment group. This link is provided as part of the
5885	// action display in the pipeline.
5886	EntityUrlTemplate *string `locationName:"entityUrlTemplate" min:"1" type:"string"`
5887
5888	// The URL returned to the AWS CodePipeline console that contains a link to
5889	// the top-level landing page for the external system, such as the console page
5890	// for AWS CodeDeploy. This link is shown on the pipeline view page in the AWS
5891	// CodePipeline console and provides a link to the execution entity of the external
5892	// action.
5893	ExecutionUrlTemplate *string `locationName:"executionUrlTemplate" min:"1" type:"string"`
5894
5895	// The URL returned to the AWS CodePipeline console that contains a link to
5896	// the page where customers can update or change the configuration of the external
5897	// action.
5898	RevisionUrlTemplate *string `locationName:"revisionUrlTemplate" min:"1" type:"string"`
5899
5900	// The URL of a sign-up page where users can sign up for an external service
5901	// and perform initial configuration of the action provided by that service.
5902	ThirdPartyConfigurationUrl *string `locationName:"thirdPartyConfigurationUrl" min:"1" type:"string"`
5903}
5904
5905// String returns the string representation
5906func (s ActionTypeSettings) String() string {
5907	return awsutil.Prettify(s)
5908}
5909
5910// GoString returns the string representation
5911func (s ActionTypeSettings) GoString() string {
5912	return s.String()
5913}
5914
5915// Validate inspects the fields of the type to determine if they are valid.
5916func (s *ActionTypeSettings) Validate() error {
5917	invalidParams := request.ErrInvalidParams{Context: "ActionTypeSettings"}
5918	if s.EntityUrlTemplate != nil && len(*s.EntityUrlTemplate) < 1 {
5919		invalidParams.Add(request.NewErrParamMinLen("EntityUrlTemplate", 1))
5920	}
5921	if s.ExecutionUrlTemplate != nil && len(*s.ExecutionUrlTemplate) < 1 {
5922		invalidParams.Add(request.NewErrParamMinLen("ExecutionUrlTemplate", 1))
5923	}
5924	if s.RevisionUrlTemplate != nil && len(*s.RevisionUrlTemplate) < 1 {
5925		invalidParams.Add(request.NewErrParamMinLen("RevisionUrlTemplate", 1))
5926	}
5927	if s.ThirdPartyConfigurationUrl != nil && len(*s.ThirdPartyConfigurationUrl) < 1 {
5928		invalidParams.Add(request.NewErrParamMinLen("ThirdPartyConfigurationUrl", 1))
5929	}
5930
5931	if invalidParams.Len() > 0 {
5932		return invalidParams
5933	}
5934	return nil
5935}
5936
5937// SetEntityUrlTemplate sets the EntityUrlTemplate field's value.
5938func (s *ActionTypeSettings) SetEntityUrlTemplate(v string) *ActionTypeSettings {
5939	s.EntityUrlTemplate = &v
5940	return s
5941}
5942
5943// SetExecutionUrlTemplate sets the ExecutionUrlTemplate field's value.
5944func (s *ActionTypeSettings) SetExecutionUrlTemplate(v string) *ActionTypeSettings {
5945	s.ExecutionUrlTemplate = &v
5946	return s
5947}
5948
5949// SetRevisionUrlTemplate sets the RevisionUrlTemplate field's value.
5950func (s *ActionTypeSettings) SetRevisionUrlTemplate(v string) *ActionTypeSettings {
5951	s.RevisionUrlTemplate = &v
5952	return s
5953}
5954
5955// SetThirdPartyConfigurationUrl sets the ThirdPartyConfigurationUrl field's value.
5956func (s *ActionTypeSettings) SetThirdPartyConfigurationUrl(v string) *ActionTypeSettings {
5957	s.ThirdPartyConfigurationUrl = &v
5958	return s
5959}
5960
5961// Returns information about URLs for web pages that display to customers as
5962// links on the pipeline view, such as an external configuration page for the
5963// action type.
5964type ActionTypeUrls struct {
5965	_ struct{} `type:"structure"`
5966
5967	// The URL returned to the CodePipeline console that contains a link to the
5968	// page where customers can configure the external action.
5969	ConfigurationUrl *string `locationName:"configurationUrl" min:"1" type:"string"`
5970
5971	// The URL returned to the CodePipeline console that provides a deep link to
5972	// the resources of the external system, such as a status page. This link is
5973	// provided as part of the action display in the pipeline.
5974	EntityUrlTemplate *string `locationName:"entityUrlTemplate" min:"1" type:"string"`
5975
5976	// The link to an execution page for the action type in progress. For example,
5977	// for a CodeDeploy action, this link is shown on the pipeline view page in
5978	// the CodePipeline console, and it links to a CodeDeploy status page.
5979	ExecutionUrlTemplate *string `locationName:"executionUrlTemplate" min:"1" type:"string"`
5980
5981	// The URL returned to the CodePipeline console that contains a link to the
5982	// page where customers can update or change the configuration of the external
5983	// action.
5984	RevisionUrlTemplate *string `locationName:"revisionUrlTemplate" min:"1" type:"string"`
5985}
5986
5987// String returns the string representation
5988func (s ActionTypeUrls) String() string {
5989	return awsutil.Prettify(s)
5990}
5991
5992// GoString returns the string representation
5993func (s ActionTypeUrls) GoString() string {
5994	return s.String()
5995}
5996
5997// Validate inspects the fields of the type to determine if they are valid.
5998func (s *ActionTypeUrls) Validate() error {
5999	invalidParams := request.ErrInvalidParams{Context: "ActionTypeUrls"}
6000	if s.ConfigurationUrl != nil && len(*s.ConfigurationUrl) < 1 {
6001		invalidParams.Add(request.NewErrParamMinLen("ConfigurationUrl", 1))
6002	}
6003	if s.EntityUrlTemplate != nil && len(*s.EntityUrlTemplate) < 1 {
6004		invalidParams.Add(request.NewErrParamMinLen("EntityUrlTemplate", 1))
6005	}
6006	if s.ExecutionUrlTemplate != nil && len(*s.ExecutionUrlTemplate) < 1 {
6007		invalidParams.Add(request.NewErrParamMinLen("ExecutionUrlTemplate", 1))
6008	}
6009	if s.RevisionUrlTemplate != nil && len(*s.RevisionUrlTemplate) < 1 {
6010		invalidParams.Add(request.NewErrParamMinLen("RevisionUrlTemplate", 1))
6011	}
6012
6013	if invalidParams.Len() > 0 {
6014		return invalidParams
6015	}
6016	return nil
6017}
6018
6019// SetConfigurationUrl sets the ConfigurationUrl field's value.
6020func (s *ActionTypeUrls) SetConfigurationUrl(v string) *ActionTypeUrls {
6021	s.ConfigurationUrl = &v
6022	return s
6023}
6024
6025// SetEntityUrlTemplate sets the EntityUrlTemplate field's value.
6026func (s *ActionTypeUrls) SetEntityUrlTemplate(v string) *ActionTypeUrls {
6027	s.EntityUrlTemplate = &v
6028	return s
6029}
6030
6031// SetExecutionUrlTemplate sets the ExecutionUrlTemplate field's value.
6032func (s *ActionTypeUrls) SetExecutionUrlTemplate(v string) *ActionTypeUrls {
6033	s.ExecutionUrlTemplate = &v
6034	return s
6035}
6036
6037// SetRevisionUrlTemplate sets the RevisionUrlTemplate field's value.
6038func (s *ActionTypeUrls) SetRevisionUrlTemplate(v string) *ActionTypeUrls {
6039	s.RevisionUrlTemplate = &v
6040	return s
6041}
6042
6043// The approval action has already been approved or rejected.
6044type ApprovalAlreadyCompletedException struct {
6045	_            struct{}                  `type:"structure"`
6046	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
6047
6048	Message_ *string `locationName:"message" type:"string"`
6049}
6050
6051// String returns the string representation
6052func (s ApprovalAlreadyCompletedException) String() string {
6053	return awsutil.Prettify(s)
6054}
6055
6056// GoString returns the string representation
6057func (s ApprovalAlreadyCompletedException) GoString() string {
6058	return s.String()
6059}
6060
6061func newErrorApprovalAlreadyCompletedException(v protocol.ResponseMetadata) error {
6062	return &ApprovalAlreadyCompletedException{
6063		RespMetadata: v,
6064	}
6065}
6066
6067// Code returns the exception type name.
6068func (s *ApprovalAlreadyCompletedException) Code() string {
6069	return "ApprovalAlreadyCompletedException"
6070}
6071
6072// Message returns the exception's message.
6073func (s *ApprovalAlreadyCompletedException) Message() string {
6074	if s.Message_ != nil {
6075		return *s.Message_
6076	}
6077	return ""
6078}
6079
6080// OrigErr always returns nil, satisfies awserr.Error interface.
6081func (s *ApprovalAlreadyCompletedException) OrigErr() error {
6082	return nil
6083}
6084
6085func (s *ApprovalAlreadyCompletedException) Error() string {
6086	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
6087}
6088
6089// Status code returns the HTTP status code for the request's response error.
6090func (s *ApprovalAlreadyCompletedException) StatusCode() int {
6091	return s.RespMetadata.StatusCode
6092}
6093
6094// RequestID returns the service's response RequestID for request.
6095func (s *ApprovalAlreadyCompletedException) RequestID() string {
6096	return s.RespMetadata.RequestID
6097}
6098
6099// Represents information about the result of an approval request.
6100type ApprovalResult struct {
6101	_ struct{} `type:"structure"`
6102
6103	// The response submitted by a reviewer assigned to an approval action request.
6104	//
6105	// Status is a required field
6106	Status *string `locationName:"status" type:"string" required:"true" enum:"ApprovalStatus"`
6107
6108	// The summary of the current status of the approval request.
6109	//
6110	// Summary is a required field
6111	Summary *string `locationName:"summary" type:"string" required:"true"`
6112}
6113
6114// String returns the string representation
6115func (s ApprovalResult) String() string {
6116	return awsutil.Prettify(s)
6117}
6118
6119// GoString returns the string representation
6120func (s ApprovalResult) GoString() string {
6121	return s.String()
6122}
6123
6124// Validate inspects the fields of the type to determine if they are valid.
6125func (s *ApprovalResult) Validate() error {
6126	invalidParams := request.ErrInvalidParams{Context: "ApprovalResult"}
6127	if s.Status == nil {
6128		invalidParams.Add(request.NewErrParamRequired("Status"))
6129	}
6130	if s.Summary == nil {
6131		invalidParams.Add(request.NewErrParamRequired("Summary"))
6132	}
6133
6134	if invalidParams.Len() > 0 {
6135		return invalidParams
6136	}
6137	return nil
6138}
6139
6140// SetStatus sets the Status field's value.
6141func (s *ApprovalResult) SetStatus(v string) *ApprovalResult {
6142	s.Status = &v
6143	return s
6144}
6145
6146// SetSummary sets the Summary field's value.
6147func (s *ApprovalResult) SetSummary(v string) *ApprovalResult {
6148	s.Summary = &v
6149	return s
6150}
6151
6152// Represents information about an artifact that is worked on by actions in
6153// the pipeline.
6154type Artifact struct {
6155	_ struct{} `type:"structure"`
6156
6157	// The location of an artifact.
6158	Location *ArtifactLocation `locationName:"location" type:"structure"`
6159
6160	// The artifact's name.
6161	Name *string `locationName:"name" min:"1" type:"string"`
6162
6163	// The artifact's revision ID. Depending on the type of object, this could be
6164	// a commit ID (GitHub) or a revision ID (Amazon S3).
6165	Revision *string `locationName:"revision" min:"1" type:"string"`
6166}
6167
6168// String returns the string representation
6169func (s Artifact) String() string {
6170	return awsutil.Prettify(s)
6171}
6172
6173// GoString returns the string representation
6174func (s Artifact) GoString() string {
6175	return s.String()
6176}
6177
6178// SetLocation sets the Location field's value.
6179func (s *Artifact) SetLocation(v *ArtifactLocation) *Artifact {
6180	s.Location = v
6181	return s
6182}
6183
6184// SetName sets the Name field's value.
6185func (s *Artifact) SetName(v string) *Artifact {
6186	s.Name = &v
6187	return s
6188}
6189
6190// SetRevision sets the Revision field's value.
6191func (s *Artifact) SetRevision(v string) *Artifact {
6192	s.Revision = &v
6193	return s
6194}
6195
6196// Artifact details for the action execution, such as the artifact location.
6197type ArtifactDetail struct {
6198	_ struct{} `type:"structure"`
6199
6200	// The artifact object name for the action execution.
6201	Name *string `locationName:"name" min:"1" type:"string"`
6202
6203	// The Amazon S3 artifact location for the action execution.
6204	S3location *S3Location `locationName:"s3location" type:"structure"`
6205}
6206
6207// String returns the string representation
6208func (s ArtifactDetail) String() string {
6209	return awsutil.Prettify(s)
6210}
6211
6212// GoString returns the string representation
6213func (s ArtifactDetail) GoString() string {
6214	return s.String()
6215}
6216
6217// SetName sets the Name field's value.
6218func (s *ArtifactDetail) SetName(v string) *ArtifactDetail {
6219	s.Name = &v
6220	return s
6221}
6222
6223// SetS3location sets the S3location field's value.
6224func (s *ArtifactDetail) SetS3location(v *S3Location) *ArtifactDetail {
6225	s.S3location = v
6226	return s
6227}
6228
6229// Returns information about the details of an artifact.
6230type ArtifactDetails struct {
6231	_ struct{} `type:"structure"`
6232
6233	// The maximum number of artifacts allowed for the action type.
6234	//
6235	// MaximumCount is a required field
6236	MaximumCount *int64 `locationName:"maximumCount" type:"integer" required:"true"`
6237
6238	// The minimum number of artifacts allowed for the action type.
6239	//
6240	// MinimumCount is a required field
6241	MinimumCount *int64 `locationName:"minimumCount" type:"integer" required:"true"`
6242}
6243
6244// String returns the string representation
6245func (s ArtifactDetails) String() string {
6246	return awsutil.Prettify(s)
6247}
6248
6249// GoString returns the string representation
6250func (s ArtifactDetails) GoString() string {
6251	return s.String()
6252}
6253
6254// Validate inspects the fields of the type to determine if they are valid.
6255func (s *ArtifactDetails) Validate() error {
6256	invalidParams := request.ErrInvalidParams{Context: "ArtifactDetails"}
6257	if s.MaximumCount == nil {
6258		invalidParams.Add(request.NewErrParamRequired("MaximumCount"))
6259	}
6260	if s.MinimumCount == nil {
6261		invalidParams.Add(request.NewErrParamRequired("MinimumCount"))
6262	}
6263
6264	if invalidParams.Len() > 0 {
6265		return invalidParams
6266	}
6267	return nil
6268}
6269
6270// SetMaximumCount sets the MaximumCount field's value.
6271func (s *ArtifactDetails) SetMaximumCount(v int64) *ArtifactDetails {
6272	s.MaximumCount = &v
6273	return s
6274}
6275
6276// SetMinimumCount sets the MinimumCount field's value.
6277func (s *ArtifactDetails) SetMinimumCount(v int64) *ArtifactDetails {
6278	s.MinimumCount = &v
6279	return s
6280}
6281
6282// Represents information about the location of an artifact.
6283type ArtifactLocation struct {
6284	_ struct{} `type:"structure"`
6285
6286	// The S3 bucket that contains the artifact.
6287	S3Location *S3ArtifactLocation `locationName:"s3Location" type:"structure"`
6288
6289	// The type of artifact in the location.
6290	Type *string `locationName:"type" type:"string" enum:"ArtifactLocationType"`
6291}
6292
6293// String returns the string representation
6294func (s ArtifactLocation) String() string {
6295	return awsutil.Prettify(s)
6296}
6297
6298// GoString returns the string representation
6299func (s ArtifactLocation) GoString() string {
6300	return s.String()
6301}
6302
6303// SetS3Location sets the S3Location field's value.
6304func (s *ArtifactLocation) SetS3Location(v *S3ArtifactLocation) *ArtifactLocation {
6305	s.S3Location = v
6306	return s
6307}
6308
6309// SetType sets the Type field's value.
6310func (s *ArtifactLocation) SetType(v string) *ArtifactLocation {
6311	s.Type = &v
6312	return s
6313}
6314
6315// Represents revision details of an artifact.
6316type ArtifactRevision struct {
6317	_ struct{} `type:"structure"`
6318
6319	// The date and time when the most recent revision of the artifact was created,
6320	// in timestamp format.
6321	Created *time.Time `locationName:"created" type:"timestamp"`
6322
6323	// The name of an artifact. This name might be system-generated, such as "MyApp",
6324	// or defined by the user when an action is created.
6325	Name *string `locationName:"name" min:"1" type:"string"`
6326
6327	// An additional identifier for a revision, such as a commit date or, for artifacts
6328	// stored in Amazon S3 buckets, the ETag value.
6329	RevisionChangeIdentifier *string `locationName:"revisionChangeIdentifier" min:"1" type:"string"`
6330
6331	// The revision ID of the artifact.
6332	RevisionId *string `locationName:"revisionId" min:"1" type:"string"`
6333
6334	// Summary information about the most recent revision of the artifact. For GitHub
6335	// and AWS CodeCommit repositories, the commit message. For Amazon S3 buckets
6336	// or actions, the user-provided content of a codepipeline-artifact-revision-summary
6337	// key specified in the object metadata.
6338	RevisionSummary *string `locationName:"revisionSummary" min:"1" type:"string"`
6339
6340	// The commit ID for the artifact revision. For artifacts stored in GitHub or
6341	// AWS CodeCommit repositories, the commit ID is linked to a commit details
6342	// page.
6343	RevisionUrl *string `locationName:"revisionUrl" min:"1" type:"string"`
6344}
6345
6346// String returns the string representation
6347func (s ArtifactRevision) String() string {
6348	return awsutil.Prettify(s)
6349}
6350
6351// GoString returns the string representation
6352func (s ArtifactRevision) GoString() string {
6353	return s.String()
6354}
6355
6356// SetCreated sets the Created field's value.
6357func (s *ArtifactRevision) SetCreated(v time.Time) *ArtifactRevision {
6358	s.Created = &v
6359	return s
6360}
6361
6362// SetName sets the Name field's value.
6363func (s *ArtifactRevision) SetName(v string) *ArtifactRevision {
6364	s.Name = &v
6365	return s
6366}
6367
6368// SetRevisionChangeIdentifier sets the RevisionChangeIdentifier field's value.
6369func (s *ArtifactRevision) SetRevisionChangeIdentifier(v string) *ArtifactRevision {
6370	s.RevisionChangeIdentifier = &v
6371	return s
6372}
6373
6374// SetRevisionId sets the RevisionId field's value.
6375func (s *ArtifactRevision) SetRevisionId(v string) *ArtifactRevision {
6376	s.RevisionId = &v
6377	return s
6378}
6379
6380// SetRevisionSummary sets the RevisionSummary field's value.
6381func (s *ArtifactRevision) SetRevisionSummary(v string) *ArtifactRevision {
6382	s.RevisionSummary = &v
6383	return s
6384}
6385
6386// SetRevisionUrl sets the RevisionUrl field's value.
6387func (s *ArtifactRevision) SetRevisionUrl(v string) *ArtifactRevision {
6388	s.RevisionUrl = &v
6389	return s
6390}
6391
6392// The S3 bucket where artifacts for the pipeline are stored.
6393//
6394// You must include either artifactStore or artifactStores in your pipeline,
6395// but you cannot use both. If you create a cross-region action in your pipeline,
6396// you must use artifactStores.
6397type ArtifactStore struct {
6398	_ struct{} `type:"structure"`
6399
6400	// The encryption key used to encrypt the data in the artifact store, such as
6401	// an AWS Key Management Service (AWS KMS) key. If this is undefined, the default
6402	// key for Amazon S3 is used.
6403	EncryptionKey *EncryptionKey `locationName:"encryptionKey" type:"structure"`
6404
6405	// The S3 bucket used for storing the artifacts for a pipeline. You can specify
6406	// the name of an S3 bucket but not a folder in the bucket. A folder to contain
6407	// the pipeline artifacts is created for you based on the name of the pipeline.
6408	// You can use any S3 bucket in the same AWS Region as the pipeline to store
6409	// your pipeline artifacts.
6410	//
6411	// Location is a required field
6412	Location *string `locationName:"location" min:"3" type:"string" required:"true"`
6413
6414	// The type of the artifact store, such as S3.
6415	//
6416	// Type is a required field
6417	Type *string `locationName:"type" type:"string" required:"true" enum:"ArtifactStoreType"`
6418}
6419
6420// String returns the string representation
6421func (s ArtifactStore) String() string {
6422	return awsutil.Prettify(s)
6423}
6424
6425// GoString returns the string representation
6426func (s ArtifactStore) GoString() string {
6427	return s.String()
6428}
6429
6430// Validate inspects the fields of the type to determine if they are valid.
6431func (s *ArtifactStore) Validate() error {
6432	invalidParams := request.ErrInvalidParams{Context: "ArtifactStore"}
6433	if s.Location == nil {
6434		invalidParams.Add(request.NewErrParamRequired("Location"))
6435	}
6436	if s.Location != nil && len(*s.Location) < 3 {
6437		invalidParams.Add(request.NewErrParamMinLen("Location", 3))
6438	}
6439	if s.Type == nil {
6440		invalidParams.Add(request.NewErrParamRequired("Type"))
6441	}
6442	if s.EncryptionKey != nil {
6443		if err := s.EncryptionKey.Validate(); err != nil {
6444			invalidParams.AddNested("EncryptionKey", err.(request.ErrInvalidParams))
6445		}
6446	}
6447
6448	if invalidParams.Len() > 0 {
6449		return invalidParams
6450	}
6451	return nil
6452}
6453
6454// SetEncryptionKey sets the EncryptionKey field's value.
6455func (s *ArtifactStore) SetEncryptionKey(v *EncryptionKey) *ArtifactStore {
6456	s.EncryptionKey = v
6457	return s
6458}
6459
6460// SetLocation sets the Location field's value.
6461func (s *ArtifactStore) SetLocation(v string) *ArtifactStore {
6462	s.Location = &v
6463	return s
6464}
6465
6466// SetType sets the Type field's value.
6467func (s *ArtifactStore) SetType(v string) *ArtifactStore {
6468	s.Type = &v
6469	return s
6470}
6471
6472// Reserved for future use.
6473type BlockerDeclaration struct {
6474	_ struct{} `type:"structure"`
6475
6476	// Reserved for future use.
6477	//
6478	// Name is a required field
6479	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
6480
6481	// Reserved for future use.
6482	//
6483	// Type is a required field
6484	Type *string `locationName:"type" type:"string" required:"true" enum:"BlockerType"`
6485}
6486
6487// String returns the string representation
6488func (s BlockerDeclaration) String() string {
6489	return awsutil.Prettify(s)
6490}
6491
6492// GoString returns the string representation
6493func (s BlockerDeclaration) GoString() string {
6494	return s.String()
6495}
6496
6497// Validate inspects the fields of the type to determine if they are valid.
6498func (s *BlockerDeclaration) Validate() error {
6499	invalidParams := request.ErrInvalidParams{Context: "BlockerDeclaration"}
6500	if s.Name == nil {
6501		invalidParams.Add(request.NewErrParamRequired("Name"))
6502	}
6503	if s.Name != nil && len(*s.Name) < 1 {
6504		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
6505	}
6506	if s.Type == nil {
6507		invalidParams.Add(request.NewErrParamRequired("Type"))
6508	}
6509
6510	if invalidParams.Len() > 0 {
6511		return invalidParams
6512	}
6513	return nil
6514}
6515
6516// SetName sets the Name field's value.
6517func (s *BlockerDeclaration) SetName(v string) *BlockerDeclaration {
6518	s.Name = &v
6519	return s
6520}
6521
6522// SetType sets the Type field's value.
6523func (s *BlockerDeclaration) SetType(v string) *BlockerDeclaration {
6524	s.Type = &v
6525	return s
6526}
6527
6528// Unable to modify the tag due to a simultaneous update request.
6529type ConcurrentModificationException struct {
6530	_            struct{}                  `type:"structure"`
6531	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
6532
6533	Message_ *string `locationName:"message" min:"1" type:"string"`
6534}
6535
6536// String returns the string representation
6537func (s ConcurrentModificationException) String() string {
6538	return awsutil.Prettify(s)
6539}
6540
6541// GoString returns the string representation
6542func (s ConcurrentModificationException) GoString() string {
6543	return s.String()
6544}
6545
6546func newErrorConcurrentModificationException(v protocol.ResponseMetadata) error {
6547	return &ConcurrentModificationException{
6548		RespMetadata: v,
6549	}
6550}
6551
6552// Code returns the exception type name.
6553func (s *ConcurrentModificationException) Code() string {
6554	return "ConcurrentModificationException"
6555}
6556
6557// Message returns the exception's message.
6558func (s *ConcurrentModificationException) Message() string {
6559	if s.Message_ != nil {
6560		return *s.Message_
6561	}
6562	return ""
6563}
6564
6565// OrigErr always returns nil, satisfies awserr.Error interface.
6566func (s *ConcurrentModificationException) OrigErr() error {
6567	return nil
6568}
6569
6570func (s *ConcurrentModificationException) Error() string {
6571	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
6572}
6573
6574// Status code returns the HTTP status code for the request's response error.
6575func (s *ConcurrentModificationException) StatusCode() int {
6576	return s.RespMetadata.StatusCode
6577}
6578
6579// RequestID returns the service's response RequestID for request.
6580func (s *ConcurrentModificationException) RequestID() string {
6581	return s.RespMetadata.RequestID
6582}
6583
6584// Your request cannot be handled because the pipeline is busy handling ongoing
6585// activities. Try again later.
6586type ConflictException struct {
6587	_            struct{}                  `type:"structure"`
6588	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
6589
6590	Message_ *string `locationName:"message" min:"1" type:"string"`
6591}
6592
6593// String returns the string representation
6594func (s ConflictException) String() string {
6595	return awsutil.Prettify(s)
6596}
6597
6598// GoString returns the string representation
6599func (s ConflictException) GoString() string {
6600	return s.String()
6601}
6602
6603func newErrorConflictException(v protocol.ResponseMetadata) error {
6604	return &ConflictException{
6605		RespMetadata: v,
6606	}
6607}
6608
6609// Code returns the exception type name.
6610func (s *ConflictException) Code() string {
6611	return "ConflictException"
6612}
6613
6614// Message returns the exception's message.
6615func (s *ConflictException) Message() string {
6616	if s.Message_ != nil {
6617		return *s.Message_
6618	}
6619	return ""
6620}
6621
6622// OrigErr always returns nil, satisfies awserr.Error interface.
6623func (s *ConflictException) OrigErr() error {
6624	return nil
6625}
6626
6627func (s *ConflictException) Error() string {
6628	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
6629}
6630
6631// Status code returns the HTTP status code for the request's response error.
6632func (s *ConflictException) StatusCode() int {
6633	return s.RespMetadata.StatusCode
6634}
6635
6636// RequestID returns the service's response RequestID for request.
6637func (s *ConflictException) RequestID() string {
6638	return s.RespMetadata.RequestID
6639}
6640
6641// Represents the input of a CreateCustomActionType operation.
6642type CreateCustomActionTypeInput struct {
6643	_ struct{} `type:"structure"`
6644
6645	// The category of the custom action, such as a build action or a test action.
6646	//
6647	// Category is a required field
6648	Category *string `locationName:"category" type:"string" required:"true" enum:"ActionCategory"`
6649
6650	// The configuration properties for the custom action.
6651	//
6652	// You can refer to a name in the configuration properties of the custom action
6653	// within the URL templates by following the format of {Config:name}, as long
6654	// as the configuration property is both required and not secret. For more information,
6655	// see Create a Custom Action for a Pipeline (https://docs.aws.amazon.com/codepipeline/latest/userguide/how-to-create-custom-action.html).
6656	ConfigurationProperties []*ActionConfigurationProperty `locationName:"configurationProperties" type:"list"`
6657
6658	// The details of the input artifact for the action, such as its commit ID.
6659	//
6660	// InputArtifactDetails is a required field
6661	InputArtifactDetails *ArtifactDetails `locationName:"inputArtifactDetails" type:"structure" required:"true"`
6662
6663	// The details of the output artifact of the action, such as its commit ID.
6664	//
6665	// OutputArtifactDetails is a required field
6666	OutputArtifactDetails *ArtifactDetails `locationName:"outputArtifactDetails" type:"structure" required:"true"`
6667
6668	// The provider of the service used in the custom action, such as AWS CodeDeploy.
6669	//
6670	// Provider is a required field
6671	Provider *string `locationName:"provider" min:"1" type:"string" required:"true"`
6672
6673	// URLs that provide users information about this custom action.
6674	Settings *ActionTypeSettings `locationName:"settings" type:"structure"`
6675
6676	// The tags for the custom action.
6677	Tags []*Tag `locationName:"tags" type:"list"`
6678
6679	// The version identifier of the custom action.
6680	//
6681	// Version is a required field
6682	Version *string `locationName:"version" min:"1" type:"string" required:"true"`
6683}
6684
6685// String returns the string representation
6686func (s CreateCustomActionTypeInput) String() string {
6687	return awsutil.Prettify(s)
6688}
6689
6690// GoString returns the string representation
6691func (s CreateCustomActionTypeInput) GoString() string {
6692	return s.String()
6693}
6694
6695// Validate inspects the fields of the type to determine if they are valid.
6696func (s *CreateCustomActionTypeInput) Validate() error {
6697	invalidParams := request.ErrInvalidParams{Context: "CreateCustomActionTypeInput"}
6698	if s.Category == nil {
6699		invalidParams.Add(request.NewErrParamRequired("Category"))
6700	}
6701	if s.InputArtifactDetails == nil {
6702		invalidParams.Add(request.NewErrParamRequired("InputArtifactDetails"))
6703	}
6704	if s.OutputArtifactDetails == nil {
6705		invalidParams.Add(request.NewErrParamRequired("OutputArtifactDetails"))
6706	}
6707	if s.Provider == nil {
6708		invalidParams.Add(request.NewErrParamRequired("Provider"))
6709	}
6710	if s.Provider != nil && len(*s.Provider) < 1 {
6711		invalidParams.Add(request.NewErrParamMinLen("Provider", 1))
6712	}
6713	if s.Version == nil {
6714		invalidParams.Add(request.NewErrParamRequired("Version"))
6715	}
6716	if s.Version != nil && len(*s.Version) < 1 {
6717		invalidParams.Add(request.NewErrParamMinLen("Version", 1))
6718	}
6719	if s.ConfigurationProperties != nil {
6720		for i, v := range s.ConfigurationProperties {
6721			if v == nil {
6722				continue
6723			}
6724			if err := v.Validate(); err != nil {
6725				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ConfigurationProperties", i), err.(request.ErrInvalidParams))
6726			}
6727		}
6728	}
6729	if s.InputArtifactDetails != nil {
6730		if err := s.InputArtifactDetails.Validate(); err != nil {
6731			invalidParams.AddNested("InputArtifactDetails", err.(request.ErrInvalidParams))
6732		}
6733	}
6734	if s.OutputArtifactDetails != nil {
6735		if err := s.OutputArtifactDetails.Validate(); err != nil {
6736			invalidParams.AddNested("OutputArtifactDetails", err.(request.ErrInvalidParams))
6737		}
6738	}
6739	if s.Settings != nil {
6740		if err := s.Settings.Validate(); err != nil {
6741			invalidParams.AddNested("Settings", err.(request.ErrInvalidParams))
6742		}
6743	}
6744	if s.Tags != nil {
6745		for i, v := range s.Tags {
6746			if v == nil {
6747				continue
6748			}
6749			if err := v.Validate(); err != nil {
6750				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
6751			}
6752		}
6753	}
6754
6755	if invalidParams.Len() > 0 {
6756		return invalidParams
6757	}
6758	return nil
6759}
6760
6761// SetCategory sets the Category field's value.
6762func (s *CreateCustomActionTypeInput) SetCategory(v string) *CreateCustomActionTypeInput {
6763	s.Category = &v
6764	return s
6765}
6766
6767// SetConfigurationProperties sets the ConfigurationProperties field's value.
6768func (s *CreateCustomActionTypeInput) SetConfigurationProperties(v []*ActionConfigurationProperty) *CreateCustomActionTypeInput {
6769	s.ConfigurationProperties = v
6770	return s
6771}
6772
6773// SetInputArtifactDetails sets the InputArtifactDetails field's value.
6774func (s *CreateCustomActionTypeInput) SetInputArtifactDetails(v *ArtifactDetails) *CreateCustomActionTypeInput {
6775	s.InputArtifactDetails = v
6776	return s
6777}
6778
6779// SetOutputArtifactDetails sets the OutputArtifactDetails field's value.
6780func (s *CreateCustomActionTypeInput) SetOutputArtifactDetails(v *ArtifactDetails) *CreateCustomActionTypeInput {
6781	s.OutputArtifactDetails = v
6782	return s
6783}
6784
6785// SetProvider sets the Provider field's value.
6786func (s *CreateCustomActionTypeInput) SetProvider(v string) *CreateCustomActionTypeInput {
6787	s.Provider = &v
6788	return s
6789}
6790
6791// SetSettings sets the Settings field's value.
6792func (s *CreateCustomActionTypeInput) SetSettings(v *ActionTypeSettings) *CreateCustomActionTypeInput {
6793	s.Settings = v
6794	return s
6795}
6796
6797// SetTags sets the Tags field's value.
6798func (s *CreateCustomActionTypeInput) SetTags(v []*Tag) *CreateCustomActionTypeInput {
6799	s.Tags = v
6800	return s
6801}
6802
6803// SetVersion sets the Version field's value.
6804func (s *CreateCustomActionTypeInput) SetVersion(v string) *CreateCustomActionTypeInput {
6805	s.Version = &v
6806	return s
6807}
6808
6809// Represents the output of a CreateCustomActionType operation.
6810type CreateCustomActionTypeOutput struct {
6811	_ struct{} `type:"structure"`
6812
6813	// Returns information about the details of an action type.
6814	//
6815	// ActionType is a required field
6816	ActionType *ActionType `locationName:"actionType" type:"structure" required:"true"`
6817
6818	// Specifies the tags applied to the custom action.
6819	Tags []*Tag `locationName:"tags" type:"list"`
6820}
6821
6822// String returns the string representation
6823func (s CreateCustomActionTypeOutput) String() string {
6824	return awsutil.Prettify(s)
6825}
6826
6827// GoString returns the string representation
6828func (s CreateCustomActionTypeOutput) GoString() string {
6829	return s.String()
6830}
6831
6832// SetActionType sets the ActionType field's value.
6833func (s *CreateCustomActionTypeOutput) SetActionType(v *ActionType) *CreateCustomActionTypeOutput {
6834	s.ActionType = v
6835	return s
6836}
6837
6838// SetTags sets the Tags field's value.
6839func (s *CreateCustomActionTypeOutput) SetTags(v []*Tag) *CreateCustomActionTypeOutput {
6840	s.Tags = v
6841	return s
6842}
6843
6844// Represents the input of a CreatePipeline action.
6845type CreatePipelineInput struct {
6846	_ struct{} `type:"structure"`
6847
6848	// Represents the structure of actions and stages to be performed in the pipeline.
6849	//
6850	// Pipeline is a required field
6851	Pipeline *PipelineDeclaration `locationName:"pipeline" type:"structure" required:"true"`
6852
6853	// The tags for the pipeline.
6854	Tags []*Tag `locationName:"tags" type:"list"`
6855}
6856
6857// String returns the string representation
6858func (s CreatePipelineInput) String() string {
6859	return awsutil.Prettify(s)
6860}
6861
6862// GoString returns the string representation
6863func (s CreatePipelineInput) GoString() string {
6864	return s.String()
6865}
6866
6867// Validate inspects the fields of the type to determine if they are valid.
6868func (s *CreatePipelineInput) Validate() error {
6869	invalidParams := request.ErrInvalidParams{Context: "CreatePipelineInput"}
6870	if s.Pipeline == nil {
6871		invalidParams.Add(request.NewErrParamRequired("Pipeline"))
6872	}
6873	if s.Pipeline != nil {
6874		if err := s.Pipeline.Validate(); err != nil {
6875			invalidParams.AddNested("Pipeline", err.(request.ErrInvalidParams))
6876		}
6877	}
6878	if s.Tags != nil {
6879		for i, v := range s.Tags {
6880			if v == nil {
6881				continue
6882			}
6883			if err := v.Validate(); err != nil {
6884				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
6885			}
6886		}
6887	}
6888
6889	if invalidParams.Len() > 0 {
6890		return invalidParams
6891	}
6892	return nil
6893}
6894
6895// SetPipeline sets the Pipeline field's value.
6896func (s *CreatePipelineInput) SetPipeline(v *PipelineDeclaration) *CreatePipelineInput {
6897	s.Pipeline = v
6898	return s
6899}
6900
6901// SetTags sets the Tags field's value.
6902func (s *CreatePipelineInput) SetTags(v []*Tag) *CreatePipelineInput {
6903	s.Tags = v
6904	return s
6905}
6906
6907// Represents the output of a CreatePipeline action.
6908type CreatePipelineOutput struct {
6909	_ struct{} `type:"structure"`
6910
6911	// Represents the structure of actions and stages to be performed in the pipeline.
6912	Pipeline *PipelineDeclaration `locationName:"pipeline" type:"structure"`
6913
6914	// Specifies the tags applied to the pipeline.
6915	Tags []*Tag `locationName:"tags" type:"list"`
6916}
6917
6918// String returns the string representation
6919func (s CreatePipelineOutput) String() string {
6920	return awsutil.Prettify(s)
6921}
6922
6923// GoString returns the string representation
6924func (s CreatePipelineOutput) GoString() string {
6925	return s.String()
6926}
6927
6928// SetPipeline sets the Pipeline field's value.
6929func (s *CreatePipelineOutput) SetPipeline(v *PipelineDeclaration) *CreatePipelineOutput {
6930	s.Pipeline = v
6931	return s
6932}
6933
6934// SetTags sets the Tags field's value.
6935func (s *CreatePipelineOutput) SetTags(v []*Tag) *CreatePipelineOutput {
6936	s.Tags = v
6937	return s
6938}
6939
6940// Represents information about a current revision.
6941type CurrentRevision struct {
6942	_ struct{} `type:"structure"`
6943
6944	// The change identifier for the current revision.
6945	//
6946	// ChangeIdentifier is a required field
6947	ChangeIdentifier *string `locationName:"changeIdentifier" min:"1" type:"string" required:"true"`
6948
6949	// The date and time when the most recent revision of the artifact was created,
6950	// in timestamp format.
6951	Created *time.Time `locationName:"created" type:"timestamp"`
6952
6953	// The revision ID of the current version of an artifact.
6954	//
6955	// Revision is a required field
6956	Revision *string `locationName:"revision" min:"1" type:"string" required:"true"`
6957
6958	// The summary of the most recent revision of the artifact.
6959	RevisionSummary *string `locationName:"revisionSummary" min:"1" type:"string"`
6960}
6961
6962// String returns the string representation
6963func (s CurrentRevision) String() string {
6964	return awsutil.Prettify(s)
6965}
6966
6967// GoString returns the string representation
6968func (s CurrentRevision) GoString() string {
6969	return s.String()
6970}
6971
6972// Validate inspects the fields of the type to determine if they are valid.
6973func (s *CurrentRevision) Validate() error {
6974	invalidParams := request.ErrInvalidParams{Context: "CurrentRevision"}
6975	if s.ChangeIdentifier == nil {
6976		invalidParams.Add(request.NewErrParamRequired("ChangeIdentifier"))
6977	}
6978	if s.ChangeIdentifier != nil && len(*s.ChangeIdentifier) < 1 {
6979		invalidParams.Add(request.NewErrParamMinLen("ChangeIdentifier", 1))
6980	}
6981	if s.Revision == nil {
6982		invalidParams.Add(request.NewErrParamRequired("Revision"))
6983	}
6984	if s.Revision != nil && len(*s.Revision) < 1 {
6985		invalidParams.Add(request.NewErrParamMinLen("Revision", 1))
6986	}
6987	if s.RevisionSummary != nil && len(*s.RevisionSummary) < 1 {
6988		invalidParams.Add(request.NewErrParamMinLen("RevisionSummary", 1))
6989	}
6990
6991	if invalidParams.Len() > 0 {
6992		return invalidParams
6993	}
6994	return nil
6995}
6996
6997// SetChangeIdentifier sets the ChangeIdentifier field's value.
6998func (s *CurrentRevision) SetChangeIdentifier(v string) *CurrentRevision {
6999	s.ChangeIdentifier = &v
7000	return s
7001}
7002
7003// SetCreated sets the Created field's value.
7004func (s *CurrentRevision) SetCreated(v time.Time) *CurrentRevision {
7005	s.Created = &v
7006	return s
7007}
7008
7009// SetRevision sets the Revision field's value.
7010func (s *CurrentRevision) SetRevision(v string) *CurrentRevision {
7011	s.Revision = &v
7012	return s
7013}
7014
7015// SetRevisionSummary sets the RevisionSummary field's value.
7016func (s *CurrentRevision) SetRevisionSummary(v string) *CurrentRevision {
7017	s.RevisionSummary = &v
7018	return s
7019}
7020
7021// Represents the input of a DeleteCustomActionType operation. The custom action
7022// will be marked as deleted.
7023type DeleteCustomActionTypeInput struct {
7024	_ struct{} `type:"structure"`
7025
7026	// The category of the custom action that you want to delete, such as source
7027	// or deploy.
7028	//
7029	// Category is a required field
7030	Category *string `locationName:"category" type:"string" required:"true" enum:"ActionCategory"`
7031
7032	// The provider of the service used in the custom action, such as AWS CodeDeploy.
7033	//
7034	// Provider is a required field
7035	Provider *string `locationName:"provider" min:"1" type:"string" required:"true"`
7036
7037	// The version of the custom action to delete.
7038	//
7039	// Version is a required field
7040	Version *string `locationName:"version" min:"1" type:"string" required:"true"`
7041}
7042
7043// String returns the string representation
7044func (s DeleteCustomActionTypeInput) String() string {
7045	return awsutil.Prettify(s)
7046}
7047
7048// GoString returns the string representation
7049func (s DeleteCustomActionTypeInput) GoString() string {
7050	return s.String()
7051}
7052
7053// Validate inspects the fields of the type to determine if they are valid.
7054func (s *DeleteCustomActionTypeInput) Validate() error {
7055	invalidParams := request.ErrInvalidParams{Context: "DeleteCustomActionTypeInput"}
7056	if s.Category == nil {
7057		invalidParams.Add(request.NewErrParamRequired("Category"))
7058	}
7059	if s.Provider == nil {
7060		invalidParams.Add(request.NewErrParamRequired("Provider"))
7061	}
7062	if s.Provider != nil && len(*s.Provider) < 1 {
7063		invalidParams.Add(request.NewErrParamMinLen("Provider", 1))
7064	}
7065	if s.Version == nil {
7066		invalidParams.Add(request.NewErrParamRequired("Version"))
7067	}
7068	if s.Version != nil && len(*s.Version) < 1 {
7069		invalidParams.Add(request.NewErrParamMinLen("Version", 1))
7070	}
7071
7072	if invalidParams.Len() > 0 {
7073		return invalidParams
7074	}
7075	return nil
7076}
7077
7078// SetCategory sets the Category field's value.
7079func (s *DeleteCustomActionTypeInput) SetCategory(v string) *DeleteCustomActionTypeInput {
7080	s.Category = &v
7081	return s
7082}
7083
7084// SetProvider sets the Provider field's value.
7085func (s *DeleteCustomActionTypeInput) SetProvider(v string) *DeleteCustomActionTypeInput {
7086	s.Provider = &v
7087	return s
7088}
7089
7090// SetVersion sets the Version field's value.
7091func (s *DeleteCustomActionTypeInput) SetVersion(v string) *DeleteCustomActionTypeInput {
7092	s.Version = &v
7093	return s
7094}
7095
7096type DeleteCustomActionTypeOutput struct {
7097	_ struct{} `type:"structure"`
7098}
7099
7100// String returns the string representation
7101func (s DeleteCustomActionTypeOutput) String() string {
7102	return awsutil.Prettify(s)
7103}
7104
7105// GoString returns the string representation
7106func (s DeleteCustomActionTypeOutput) GoString() string {
7107	return s.String()
7108}
7109
7110// Represents the input of a DeletePipeline action.
7111type DeletePipelineInput struct {
7112	_ struct{} `type:"structure"`
7113
7114	// The name of the pipeline to be deleted.
7115	//
7116	// Name is a required field
7117	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
7118}
7119
7120// String returns the string representation
7121func (s DeletePipelineInput) String() string {
7122	return awsutil.Prettify(s)
7123}
7124
7125// GoString returns the string representation
7126func (s DeletePipelineInput) GoString() string {
7127	return s.String()
7128}
7129
7130// Validate inspects the fields of the type to determine if they are valid.
7131func (s *DeletePipelineInput) Validate() error {
7132	invalidParams := request.ErrInvalidParams{Context: "DeletePipelineInput"}
7133	if s.Name == nil {
7134		invalidParams.Add(request.NewErrParamRequired("Name"))
7135	}
7136	if s.Name != nil && len(*s.Name) < 1 {
7137		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
7138	}
7139
7140	if invalidParams.Len() > 0 {
7141		return invalidParams
7142	}
7143	return nil
7144}
7145
7146// SetName sets the Name field's value.
7147func (s *DeletePipelineInput) SetName(v string) *DeletePipelineInput {
7148	s.Name = &v
7149	return s
7150}
7151
7152type DeletePipelineOutput struct {
7153	_ struct{} `type:"structure"`
7154}
7155
7156// String returns the string representation
7157func (s DeletePipelineOutput) String() string {
7158	return awsutil.Prettify(s)
7159}
7160
7161// GoString returns the string representation
7162func (s DeletePipelineOutput) GoString() string {
7163	return s.String()
7164}
7165
7166type DeleteWebhookInput struct {
7167	_ struct{} `type:"structure"`
7168
7169	// The name of the webhook you want to delete.
7170	//
7171	// Name is a required field
7172	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
7173}
7174
7175// String returns the string representation
7176func (s DeleteWebhookInput) String() string {
7177	return awsutil.Prettify(s)
7178}
7179
7180// GoString returns the string representation
7181func (s DeleteWebhookInput) GoString() string {
7182	return s.String()
7183}
7184
7185// Validate inspects the fields of the type to determine if they are valid.
7186func (s *DeleteWebhookInput) Validate() error {
7187	invalidParams := request.ErrInvalidParams{Context: "DeleteWebhookInput"}
7188	if s.Name == nil {
7189		invalidParams.Add(request.NewErrParamRequired("Name"))
7190	}
7191	if s.Name != nil && len(*s.Name) < 1 {
7192		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
7193	}
7194
7195	if invalidParams.Len() > 0 {
7196		return invalidParams
7197	}
7198	return nil
7199}
7200
7201// SetName sets the Name field's value.
7202func (s *DeleteWebhookInput) SetName(v string) *DeleteWebhookInput {
7203	s.Name = &v
7204	return s
7205}
7206
7207type DeleteWebhookOutput struct {
7208	_ struct{} `type:"structure"`
7209}
7210
7211// String returns the string representation
7212func (s DeleteWebhookOutput) String() string {
7213	return awsutil.Prettify(s)
7214}
7215
7216// GoString returns the string representation
7217func (s DeleteWebhookOutput) GoString() string {
7218	return s.String()
7219}
7220
7221type DeregisterWebhookWithThirdPartyInput struct {
7222	_ struct{} `type:"structure"`
7223
7224	// The name of the webhook you want to deregister.
7225	WebhookName *string `locationName:"webhookName" min:"1" type:"string"`
7226}
7227
7228// String returns the string representation
7229func (s DeregisterWebhookWithThirdPartyInput) String() string {
7230	return awsutil.Prettify(s)
7231}
7232
7233// GoString returns the string representation
7234func (s DeregisterWebhookWithThirdPartyInput) GoString() string {
7235	return s.String()
7236}
7237
7238// Validate inspects the fields of the type to determine if they are valid.
7239func (s *DeregisterWebhookWithThirdPartyInput) Validate() error {
7240	invalidParams := request.ErrInvalidParams{Context: "DeregisterWebhookWithThirdPartyInput"}
7241	if s.WebhookName != nil && len(*s.WebhookName) < 1 {
7242		invalidParams.Add(request.NewErrParamMinLen("WebhookName", 1))
7243	}
7244
7245	if invalidParams.Len() > 0 {
7246		return invalidParams
7247	}
7248	return nil
7249}
7250
7251// SetWebhookName sets the WebhookName field's value.
7252func (s *DeregisterWebhookWithThirdPartyInput) SetWebhookName(v string) *DeregisterWebhookWithThirdPartyInput {
7253	s.WebhookName = &v
7254	return s
7255}
7256
7257type DeregisterWebhookWithThirdPartyOutput struct {
7258	_ struct{} `type:"structure"`
7259}
7260
7261// String returns the string representation
7262func (s DeregisterWebhookWithThirdPartyOutput) String() string {
7263	return awsutil.Prettify(s)
7264}
7265
7266// GoString returns the string representation
7267func (s DeregisterWebhookWithThirdPartyOutput) GoString() string {
7268	return s.String()
7269}
7270
7271// Represents the input of a DisableStageTransition action.
7272type DisableStageTransitionInput struct {
7273	_ struct{} `type:"structure"`
7274
7275	// The name of the pipeline in which you want to disable the flow of artifacts
7276	// from one stage to another.
7277	//
7278	// PipelineName is a required field
7279	PipelineName *string `locationName:"pipelineName" min:"1" type:"string" required:"true"`
7280
7281	// The reason given to the user that a stage is disabled, such as waiting for
7282	// manual approval or manual tests. This message is displayed in the pipeline
7283	// console UI.
7284	//
7285	// Reason is a required field
7286	Reason *string `locationName:"reason" min:"1" type:"string" required:"true"`
7287
7288	// The name of the stage where you want to disable the inbound or outbound transition
7289	// of artifacts.
7290	//
7291	// StageName is a required field
7292	StageName *string `locationName:"stageName" min:"1" type:"string" required:"true"`
7293
7294	// Specifies whether artifacts are prevented from transitioning into the stage
7295	// and being processed by the actions in that stage (inbound), or prevented
7296	// from transitioning from the stage after they have been processed by the actions
7297	// in that stage (outbound).
7298	//
7299	// TransitionType is a required field
7300	TransitionType *string `locationName:"transitionType" type:"string" required:"true" enum:"StageTransitionType"`
7301}
7302
7303// String returns the string representation
7304func (s DisableStageTransitionInput) String() string {
7305	return awsutil.Prettify(s)
7306}
7307
7308// GoString returns the string representation
7309func (s DisableStageTransitionInput) GoString() string {
7310	return s.String()
7311}
7312
7313// Validate inspects the fields of the type to determine if they are valid.
7314func (s *DisableStageTransitionInput) Validate() error {
7315	invalidParams := request.ErrInvalidParams{Context: "DisableStageTransitionInput"}
7316	if s.PipelineName == nil {
7317		invalidParams.Add(request.NewErrParamRequired("PipelineName"))
7318	}
7319	if s.PipelineName != nil && len(*s.PipelineName) < 1 {
7320		invalidParams.Add(request.NewErrParamMinLen("PipelineName", 1))
7321	}
7322	if s.Reason == nil {
7323		invalidParams.Add(request.NewErrParamRequired("Reason"))
7324	}
7325	if s.Reason != nil && len(*s.Reason) < 1 {
7326		invalidParams.Add(request.NewErrParamMinLen("Reason", 1))
7327	}
7328	if s.StageName == nil {
7329		invalidParams.Add(request.NewErrParamRequired("StageName"))
7330	}
7331	if s.StageName != nil && len(*s.StageName) < 1 {
7332		invalidParams.Add(request.NewErrParamMinLen("StageName", 1))
7333	}
7334	if s.TransitionType == nil {
7335		invalidParams.Add(request.NewErrParamRequired("TransitionType"))
7336	}
7337
7338	if invalidParams.Len() > 0 {
7339		return invalidParams
7340	}
7341	return nil
7342}
7343
7344// SetPipelineName sets the PipelineName field's value.
7345func (s *DisableStageTransitionInput) SetPipelineName(v string) *DisableStageTransitionInput {
7346	s.PipelineName = &v
7347	return s
7348}
7349
7350// SetReason sets the Reason field's value.
7351func (s *DisableStageTransitionInput) SetReason(v string) *DisableStageTransitionInput {
7352	s.Reason = &v
7353	return s
7354}
7355
7356// SetStageName sets the StageName field's value.
7357func (s *DisableStageTransitionInput) SetStageName(v string) *DisableStageTransitionInput {
7358	s.StageName = &v
7359	return s
7360}
7361
7362// SetTransitionType sets the TransitionType field's value.
7363func (s *DisableStageTransitionInput) SetTransitionType(v string) *DisableStageTransitionInput {
7364	s.TransitionType = &v
7365	return s
7366}
7367
7368type DisableStageTransitionOutput struct {
7369	_ struct{} `type:"structure"`
7370}
7371
7372// String returns the string representation
7373func (s DisableStageTransitionOutput) String() string {
7374	return awsutil.Prettify(s)
7375}
7376
7377// GoString returns the string representation
7378func (s DisableStageTransitionOutput) GoString() string {
7379	return s.String()
7380}
7381
7382// The pipeline execution is already in a Stopping state. If you already chose
7383// to stop and wait, you cannot make that request again. You can choose to stop
7384// and abandon now, but be aware that this option can lead to failed tasks or
7385// out of sequence tasks. If you already chose to stop and abandon, you cannot
7386// make that request again.
7387type DuplicatedStopRequestException struct {
7388	_            struct{}                  `type:"structure"`
7389	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
7390
7391	Message_ *string `locationName:"message" min:"1" type:"string"`
7392}
7393
7394// String returns the string representation
7395func (s DuplicatedStopRequestException) String() string {
7396	return awsutil.Prettify(s)
7397}
7398
7399// GoString returns the string representation
7400func (s DuplicatedStopRequestException) GoString() string {
7401	return s.String()
7402}
7403
7404func newErrorDuplicatedStopRequestException(v protocol.ResponseMetadata) error {
7405	return &DuplicatedStopRequestException{
7406		RespMetadata: v,
7407	}
7408}
7409
7410// Code returns the exception type name.
7411func (s *DuplicatedStopRequestException) Code() string {
7412	return "DuplicatedStopRequestException"
7413}
7414
7415// Message returns the exception's message.
7416func (s *DuplicatedStopRequestException) Message() string {
7417	if s.Message_ != nil {
7418		return *s.Message_
7419	}
7420	return ""
7421}
7422
7423// OrigErr always returns nil, satisfies awserr.Error interface.
7424func (s *DuplicatedStopRequestException) OrigErr() error {
7425	return nil
7426}
7427
7428func (s *DuplicatedStopRequestException) Error() string {
7429	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
7430}
7431
7432// Status code returns the HTTP status code for the request's response error.
7433func (s *DuplicatedStopRequestException) StatusCode() int {
7434	return s.RespMetadata.StatusCode
7435}
7436
7437// RequestID returns the service's response RequestID for request.
7438func (s *DuplicatedStopRequestException) RequestID() string {
7439	return s.RespMetadata.RequestID
7440}
7441
7442// Represents the input of an EnableStageTransition action.
7443type EnableStageTransitionInput struct {
7444	_ struct{} `type:"structure"`
7445
7446	// The name of the pipeline in which you want to enable the flow of artifacts
7447	// from one stage to another.
7448	//
7449	// PipelineName is a required field
7450	PipelineName *string `locationName:"pipelineName" min:"1" type:"string" required:"true"`
7451
7452	// The name of the stage where you want to enable the transition of artifacts,
7453	// either into the stage (inbound) or from that stage to the next stage (outbound).
7454	//
7455	// StageName is a required field
7456	StageName *string `locationName:"stageName" min:"1" type:"string" required:"true"`
7457
7458	// Specifies whether artifacts are allowed to enter the stage and be processed
7459	// by the actions in that stage (inbound) or whether already processed artifacts
7460	// are allowed to transition to the next stage (outbound).
7461	//
7462	// TransitionType is a required field
7463	TransitionType *string `locationName:"transitionType" type:"string" required:"true" enum:"StageTransitionType"`
7464}
7465
7466// String returns the string representation
7467func (s EnableStageTransitionInput) String() string {
7468	return awsutil.Prettify(s)
7469}
7470
7471// GoString returns the string representation
7472func (s EnableStageTransitionInput) GoString() string {
7473	return s.String()
7474}
7475
7476// Validate inspects the fields of the type to determine if they are valid.
7477func (s *EnableStageTransitionInput) Validate() error {
7478	invalidParams := request.ErrInvalidParams{Context: "EnableStageTransitionInput"}
7479	if s.PipelineName == nil {
7480		invalidParams.Add(request.NewErrParamRequired("PipelineName"))
7481	}
7482	if s.PipelineName != nil && len(*s.PipelineName) < 1 {
7483		invalidParams.Add(request.NewErrParamMinLen("PipelineName", 1))
7484	}
7485	if s.StageName == nil {
7486		invalidParams.Add(request.NewErrParamRequired("StageName"))
7487	}
7488	if s.StageName != nil && len(*s.StageName) < 1 {
7489		invalidParams.Add(request.NewErrParamMinLen("StageName", 1))
7490	}
7491	if s.TransitionType == nil {
7492		invalidParams.Add(request.NewErrParamRequired("TransitionType"))
7493	}
7494
7495	if invalidParams.Len() > 0 {
7496		return invalidParams
7497	}
7498	return nil
7499}
7500
7501// SetPipelineName sets the PipelineName field's value.
7502func (s *EnableStageTransitionInput) SetPipelineName(v string) *EnableStageTransitionInput {
7503	s.PipelineName = &v
7504	return s
7505}
7506
7507// SetStageName sets the StageName field's value.
7508func (s *EnableStageTransitionInput) SetStageName(v string) *EnableStageTransitionInput {
7509	s.StageName = &v
7510	return s
7511}
7512
7513// SetTransitionType sets the TransitionType field's value.
7514func (s *EnableStageTransitionInput) SetTransitionType(v string) *EnableStageTransitionInput {
7515	s.TransitionType = &v
7516	return s
7517}
7518
7519type EnableStageTransitionOutput struct {
7520	_ struct{} `type:"structure"`
7521}
7522
7523// String returns the string representation
7524func (s EnableStageTransitionOutput) String() string {
7525	return awsutil.Prettify(s)
7526}
7527
7528// GoString returns the string representation
7529func (s EnableStageTransitionOutput) GoString() string {
7530	return s.String()
7531}
7532
7533// Represents information about the key used to encrypt data in the artifact
7534// store, such as an AWS Key Management Service (AWS KMS) key.
7535type EncryptionKey struct {
7536	_ struct{} `type:"structure"`
7537
7538	// The ID used to identify the key. For an AWS KMS key, you can use the key
7539	// ID, the key ARN, or the alias ARN.
7540	//
7541	// Aliases are recognized only in the account that created the customer master
7542	// key (CMK). For cross-account actions, you can only use the key ID or key
7543	// ARN to identify the key.
7544	//
7545	// Id is a required field
7546	Id *string `locationName:"id" min:"1" type:"string" required:"true"`
7547
7548	// The type of encryption key, such as an AWS Key Management Service (AWS KMS)
7549	// key. When creating or updating a pipeline, the value must be set to 'KMS'.
7550	//
7551	// Type is a required field
7552	Type *string `locationName:"type" type:"string" required:"true" enum:"EncryptionKeyType"`
7553}
7554
7555// String returns the string representation
7556func (s EncryptionKey) String() string {
7557	return awsutil.Prettify(s)
7558}
7559
7560// GoString returns the string representation
7561func (s EncryptionKey) GoString() string {
7562	return s.String()
7563}
7564
7565// Validate inspects the fields of the type to determine if they are valid.
7566func (s *EncryptionKey) Validate() error {
7567	invalidParams := request.ErrInvalidParams{Context: "EncryptionKey"}
7568	if s.Id == nil {
7569		invalidParams.Add(request.NewErrParamRequired("Id"))
7570	}
7571	if s.Id != nil && len(*s.Id) < 1 {
7572		invalidParams.Add(request.NewErrParamMinLen("Id", 1))
7573	}
7574	if s.Type == nil {
7575		invalidParams.Add(request.NewErrParamRequired("Type"))
7576	}
7577
7578	if invalidParams.Len() > 0 {
7579		return invalidParams
7580	}
7581	return nil
7582}
7583
7584// SetId sets the Id field's value.
7585func (s *EncryptionKey) SetId(v string) *EncryptionKey {
7586	s.Id = &v
7587	return s
7588}
7589
7590// SetType sets the Type field's value.
7591func (s *EncryptionKey) SetType(v string) *EncryptionKey {
7592	s.Type = &v
7593	return s
7594}
7595
7596// Represents information about an error in AWS CodePipeline.
7597type ErrorDetails struct {
7598	_ struct{} `type:"structure"`
7599
7600	// The system ID or number code of the error.
7601	Code *string `locationName:"code" type:"string"`
7602
7603	// The text of the error message.
7604	Message *string `locationName:"message" min:"1" type:"string"`
7605}
7606
7607// String returns the string representation
7608func (s ErrorDetails) String() string {
7609	return awsutil.Prettify(s)
7610}
7611
7612// GoString returns the string representation
7613func (s ErrorDetails) GoString() string {
7614	return s.String()
7615}
7616
7617// SetCode sets the Code field's value.
7618func (s *ErrorDetails) SetCode(v string) *ErrorDetails {
7619	s.Code = &v
7620	return s
7621}
7622
7623// SetMessage sets the Message field's value.
7624func (s *ErrorDetails) SetMessage(v string) *ErrorDetails {
7625	s.Message = &v
7626	return s
7627}
7628
7629// The details of the actions taken and results produced on an artifact as it
7630// passes through stages in the pipeline.
7631type ExecutionDetails struct {
7632	_ struct{} `type:"structure"`
7633
7634	// The system-generated unique ID of this action used to identify this job worker
7635	// in any external systems, such as AWS CodeDeploy.
7636	ExternalExecutionId *string `locationName:"externalExecutionId" min:"1" type:"string"`
7637
7638	// The percentage of work completed on the action, represented on a scale of
7639	// 0 to 100 percent.
7640	PercentComplete *int64 `locationName:"percentComplete" type:"integer"`
7641
7642	// The summary of the current status of the actions.
7643	Summary *string `locationName:"summary" min:"1" type:"string"`
7644}
7645
7646// String returns the string representation
7647func (s ExecutionDetails) String() string {
7648	return awsutil.Prettify(s)
7649}
7650
7651// GoString returns the string representation
7652func (s ExecutionDetails) GoString() string {
7653	return s.String()
7654}
7655
7656// Validate inspects the fields of the type to determine if they are valid.
7657func (s *ExecutionDetails) Validate() error {
7658	invalidParams := request.ErrInvalidParams{Context: "ExecutionDetails"}
7659	if s.ExternalExecutionId != nil && len(*s.ExternalExecutionId) < 1 {
7660		invalidParams.Add(request.NewErrParamMinLen("ExternalExecutionId", 1))
7661	}
7662	if s.Summary != nil && len(*s.Summary) < 1 {
7663		invalidParams.Add(request.NewErrParamMinLen("Summary", 1))
7664	}
7665
7666	if invalidParams.Len() > 0 {
7667		return invalidParams
7668	}
7669	return nil
7670}
7671
7672// SetExternalExecutionId sets the ExternalExecutionId field's value.
7673func (s *ExecutionDetails) SetExternalExecutionId(v string) *ExecutionDetails {
7674	s.ExternalExecutionId = &v
7675	return s
7676}
7677
7678// SetPercentComplete sets the PercentComplete field's value.
7679func (s *ExecutionDetails) SetPercentComplete(v int64) *ExecutionDetails {
7680	s.PercentComplete = &v
7681	return s
7682}
7683
7684// SetSummary sets the Summary field's value.
7685func (s *ExecutionDetails) SetSummary(v string) *ExecutionDetails {
7686	s.Summary = &v
7687	return s
7688}
7689
7690// The interaction or event that started a pipeline execution.
7691type ExecutionTrigger struct {
7692	_ struct{} `type:"structure"`
7693
7694	// Detail related to the event that started a pipeline execution, such as the
7695	// webhook ARN of the webhook that triggered the pipeline execution or the user
7696	// ARN for a user-initiated start-pipeline-execution CLI command.
7697	TriggerDetail *string `locationName:"triggerDetail" type:"string"`
7698
7699	// The type of change-detection method, command, or user interaction that started
7700	// a pipeline execution.
7701	TriggerType *string `locationName:"triggerType" type:"string" enum:"TriggerType"`
7702}
7703
7704// String returns the string representation
7705func (s ExecutionTrigger) String() string {
7706	return awsutil.Prettify(s)
7707}
7708
7709// GoString returns the string representation
7710func (s ExecutionTrigger) GoString() string {
7711	return s.String()
7712}
7713
7714// SetTriggerDetail sets the TriggerDetail field's value.
7715func (s *ExecutionTrigger) SetTriggerDetail(v string) *ExecutionTrigger {
7716	s.TriggerDetail = &v
7717	return s
7718}
7719
7720// SetTriggerType sets the TriggerType field's value.
7721func (s *ExecutionTrigger) SetTriggerType(v string) *ExecutionTrigger {
7722	s.TriggerType = &v
7723	return s
7724}
7725
7726// The action engine, or executor, related to the supported integration model
7727// used to create and update the action type. The available executor types are
7728// Lambda and JobWorker.
7729type ExecutorConfiguration struct {
7730	_ struct{} `type:"structure"`
7731
7732	// Details about the JobWorker executor of the action type.
7733	JobWorkerExecutorConfiguration *JobWorkerExecutorConfiguration `locationName:"jobWorkerExecutorConfiguration" type:"structure"`
7734
7735	// Details about the Lambda executor of the action type.
7736	LambdaExecutorConfiguration *LambdaExecutorConfiguration `locationName:"lambdaExecutorConfiguration" type:"structure"`
7737}
7738
7739// String returns the string representation
7740func (s ExecutorConfiguration) String() string {
7741	return awsutil.Prettify(s)
7742}
7743
7744// GoString returns the string representation
7745func (s ExecutorConfiguration) GoString() string {
7746	return s.String()
7747}
7748
7749// Validate inspects the fields of the type to determine if they are valid.
7750func (s *ExecutorConfiguration) Validate() error {
7751	invalidParams := request.ErrInvalidParams{Context: "ExecutorConfiguration"}
7752	if s.JobWorkerExecutorConfiguration != nil {
7753		if err := s.JobWorkerExecutorConfiguration.Validate(); err != nil {
7754			invalidParams.AddNested("JobWorkerExecutorConfiguration", err.(request.ErrInvalidParams))
7755		}
7756	}
7757	if s.LambdaExecutorConfiguration != nil {
7758		if err := s.LambdaExecutorConfiguration.Validate(); err != nil {
7759			invalidParams.AddNested("LambdaExecutorConfiguration", err.(request.ErrInvalidParams))
7760		}
7761	}
7762
7763	if invalidParams.Len() > 0 {
7764		return invalidParams
7765	}
7766	return nil
7767}
7768
7769// SetJobWorkerExecutorConfiguration sets the JobWorkerExecutorConfiguration field's value.
7770func (s *ExecutorConfiguration) SetJobWorkerExecutorConfiguration(v *JobWorkerExecutorConfiguration) *ExecutorConfiguration {
7771	s.JobWorkerExecutorConfiguration = v
7772	return s
7773}
7774
7775// SetLambdaExecutorConfiguration sets the LambdaExecutorConfiguration field's value.
7776func (s *ExecutorConfiguration) SetLambdaExecutorConfiguration(v *LambdaExecutorConfiguration) *ExecutorConfiguration {
7777	s.LambdaExecutorConfiguration = v
7778	return s
7779}
7780
7781// Represents information about failure details.
7782type FailureDetails struct {
7783	_ struct{} `type:"structure"`
7784
7785	// The external ID of the run of the action that failed.
7786	ExternalExecutionId *string `locationName:"externalExecutionId" min:"1" type:"string"`
7787
7788	// The message about the failure.
7789	//
7790	// Message is a required field
7791	Message *string `locationName:"message" min:"1" type:"string" required:"true"`
7792
7793	// The type of the failure.
7794	//
7795	// Type is a required field
7796	Type *string `locationName:"type" type:"string" required:"true" enum:"FailureType"`
7797}
7798
7799// String returns the string representation
7800func (s FailureDetails) String() string {
7801	return awsutil.Prettify(s)
7802}
7803
7804// GoString returns the string representation
7805func (s FailureDetails) GoString() string {
7806	return s.String()
7807}
7808
7809// Validate inspects the fields of the type to determine if they are valid.
7810func (s *FailureDetails) Validate() error {
7811	invalidParams := request.ErrInvalidParams{Context: "FailureDetails"}
7812	if s.ExternalExecutionId != nil && len(*s.ExternalExecutionId) < 1 {
7813		invalidParams.Add(request.NewErrParamMinLen("ExternalExecutionId", 1))
7814	}
7815	if s.Message == nil {
7816		invalidParams.Add(request.NewErrParamRequired("Message"))
7817	}
7818	if s.Message != nil && len(*s.Message) < 1 {
7819		invalidParams.Add(request.NewErrParamMinLen("Message", 1))
7820	}
7821	if s.Type == nil {
7822		invalidParams.Add(request.NewErrParamRequired("Type"))
7823	}
7824
7825	if invalidParams.Len() > 0 {
7826		return invalidParams
7827	}
7828	return nil
7829}
7830
7831// SetExternalExecutionId sets the ExternalExecutionId field's value.
7832func (s *FailureDetails) SetExternalExecutionId(v string) *FailureDetails {
7833	s.ExternalExecutionId = &v
7834	return s
7835}
7836
7837// SetMessage sets the Message field's value.
7838func (s *FailureDetails) SetMessage(v string) *FailureDetails {
7839	s.Message = &v
7840	return s
7841}
7842
7843// SetType sets the Type field's value.
7844func (s *FailureDetails) SetType(v string) *FailureDetails {
7845	s.Type = &v
7846	return s
7847}
7848
7849type GetActionTypeInput struct {
7850	_ struct{} `type:"structure"`
7851
7852	// Defines what kind of action can be taken in the stage. The following are
7853	// the valid values:
7854	//
7855	//    * Source
7856	//
7857	//    * Build
7858	//
7859	//    * Test
7860	//
7861	//    * Deploy
7862	//
7863	//    * Approval
7864	//
7865	//    * Invoke
7866	//
7867	// Category is a required field
7868	Category *string `locationName:"category" type:"string" required:"true" enum:"ActionCategory"`
7869
7870	// The creator of an action type that was created with any supported integration
7871	// model. There are two valid values: AWS and ThirdParty.
7872	//
7873	// Owner is a required field
7874	Owner *string `locationName:"owner" type:"string" required:"true"`
7875
7876	// The provider of the action type being called. The provider name is specified
7877	// when the action type is created.
7878	//
7879	// Provider is a required field
7880	Provider *string `locationName:"provider" min:"1" type:"string" required:"true"`
7881
7882	// A string that describes the action type version.
7883	//
7884	// Version is a required field
7885	Version *string `locationName:"version" min:"1" type:"string" required:"true"`
7886}
7887
7888// String returns the string representation
7889func (s GetActionTypeInput) String() string {
7890	return awsutil.Prettify(s)
7891}
7892
7893// GoString returns the string representation
7894func (s GetActionTypeInput) GoString() string {
7895	return s.String()
7896}
7897
7898// Validate inspects the fields of the type to determine if they are valid.
7899func (s *GetActionTypeInput) Validate() error {
7900	invalidParams := request.ErrInvalidParams{Context: "GetActionTypeInput"}
7901	if s.Category == nil {
7902		invalidParams.Add(request.NewErrParamRequired("Category"))
7903	}
7904	if s.Owner == nil {
7905		invalidParams.Add(request.NewErrParamRequired("Owner"))
7906	}
7907	if s.Provider == nil {
7908		invalidParams.Add(request.NewErrParamRequired("Provider"))
7909	}
7910	if s.Provider != nil && len(*s.Provider) < 1 {
7911		invalidParams.Add(request.NewErrParamMinLen("Provider", 1))
7912	}
7913	if s.Version == nil {
7914		invalidParams.Add(request.NewErrParamRequired("Version"))
7915	}
7916	if s.Version != nil && len(*s.Version) < 1 {
7917		invalidParams.Add(request.NewErrParamMinLen("Version", 1))
7918	}
7919
7920	if invalidParams.Len() > 0 {
7921		return invalidParams
7922	}
7923	return nil
7924}
7925
7926// SetCategory sets the Category field's value.
7927func (s *GetActionTypeInput) SetCategory(v string) *GetActionTypeInput {
7928	s.Category = &v
7929	return s
7930}
7931
7932// SetOwner sets the Owner field's value.
7933func (s *GetActionTypeInput) SetOwner(v string) *GetActionTypeInput {
7934	s.Owner = &v
7935	return s
7936}
7937
7938// SetProvider sets the Provider field's value.
7939func (s *GetActionTypeInput) SetProvider(v string) *GetActionTypeInput {
7940	s.Provider = &v
7941	return s
7942}
7943
7944// SetVersion sets the Version field's value.
7945func (s *GetActionTypeInput) SetVersion(v string) *GetActionTypeInput {
7946	s.Version = &v
7947	return s
7948}
7949
7950type GetActionTypeOutput struct {
7951	_ struct{} `type:"structure"`
7952
7953	// The action type information for the requested action type, such as the action
7954	// type ID.
7955	ActionType *ActionTypeDeclaration `locationName:"actionType" type:"structure"`
7956}
7957
7958// String returns the string representation
7959func (s GetActionTypeOutput) String() string {
7960	return awsutil.Prettify(s)
7961}
7962
7963// GoString returns the string representation
7964func (s GetActionTypeOutput) GoString() string {
7965	return s.String()
7966}
7967
7968// SetActionType sets the ActionType field's value.
7969func (s *GetActionTypeOutput) SetActionType(v *ActionTypeDeclaration) *GetActionTypeOutput {
7970	s.ActionType = v
7971	return s
7972}
7973
7974// Represents the input of a GetJobDetails action.
7975type GetJobDetailsInput struct {
7976	_ struct{} `type:"structure"`
7977
7978	// The unique system-generated ID for the job.
7979	//
7980	// JobId is a required field
7981	JobId *string `locationName:"jobId" type:"string" required:"true"`
7982}
7983
7984// String returns the string representation
7985func (s GetJobDetailsInput) String() string {
7986	return awsutil.Prettify(s)
7987}
7988
7989// GoString returns the string representation
7990func (s GetJobDetailsInput) GoString() string {
7991	return s.String()
7992}
7993
7994// Validate inspects the fields of the type to determine if they are valid.
7995func (s *GetJobDetailsInput) Validate() error {
7996	invalidParams := request.ErrInvalidParams{Context: "GetJobDetailsInput"}
7997	if s.JobId == nil {
7998		invalidParams.Add(request.NewErrParamRequired("JobId"))
7999	}
8000
8001	if invalidParams.Len() > 0 {
8002		return invalidParams
8003	}
8004	return nil
8005}
8006
8007// SetJobId sets the JobId field's value.
8008func (s *GetJobDetailsInput) SetJobId(v string) *GetJobDetailsInput {
8009	s.JobId = &v
8010	return s
8011}
8012
8013// Represents the output of a GetJobDetails action.
8014type GetJobDetailsOutput struct {
8015	_ struct{} `type:"structure"`
8016
8017	// The details of the job.
8018	//
8019	// If AWSSessionCredentials is used, a long-running job can call GetJobDetails
8020	// again to obtain new credentials.
8021	JobDetails *JobDetails `locationName:"jobDetails" type:"structure"`
8022}
8023
8024// String returns the string representation
8025func (s GetJobDetailsOutput) String() string {
8026	return awsutil.Prettify(s)
8027}
8028
8029// GoString returns the string representation
8030func (s GetJobDetailsOutput) GoString() string {
8031	return s.String()
8032}
8033
8034// SetJobDetails sets the JobDetails field's value.
8035func (s *GetJobDetailsOutput) SetJobDetails(v *JobDetails) *GetJobDetailsOutput {
8036	s.JobDetails = v
8037	return s
8038}
8039
8040// Represents the input of a GetPipelineExecution action.
8041type GetPipelineExecutionInput struct {
8042	_ struct{} `type:"structure"`
8043
8044	// The ID of the pipeline execution about which you want to get execution details.
8045	//
8046	// PipelineExecutionId is a required field
8047	PipelineExecutionId *string `locationName:"pipelineExecutionId" type:"string" required:"true"`
8048
8049	// The name of the pipeline about which you want to get execution details.
8050	//
8051	// PipelineName is a required field
8052	PipelineName *string `locationName:"pipelineName" min:"1" type:"string" required:"true"`
8053}
8054
8055// String returns the string representation
8056func (s GetPipelineExecutionInput) String() string {
8057	return awsutil.Prettify(s)
8058}
8059
8060// GoString returns the string representation
8061func (s GetPipelineExecutionInput) GoString() string {
8062	return s.String()
8063}
8064
8065// Validate inspects the fields of the type to determine if they are valid.
8066func (s *GetPipelineExecutionInput) Validate() error {
8067	invalidParams := request.ErrInvalidParams{Context: "GetPipelineExecutionInput"}
8068	if s.PipelineExecutionId == nil {
8069		invalidParams.Add(request.NewErrParamRequired("PipelineExecutionId"))
8070	}
8071	if s.PipelineName == nil {
8072		invalidParams.Add(request.NewErrParamRequired("PipelineName"))
8073	}
8074	if s.PipelineName != nil && len(*s.PipelineName) < 1 {
8075		invalidParams.Add(request.NewErrParamMinLen("PipelineName", 1))
8076	}
8077
8078	if invalidParams.Len() > 0 {
8079		return invalidParams
8080	}
8081	return nil
8082}
8083
8084// SetPipelineExecutionId sets the PipelineExecutionId field's value.
8085func (s *GetPipelineExecutionInput) SetPipelineExecutionId(v string) *GetPipelineExecutionInput {
8086	s.PipelineExecutionId = &v
8087	return s
8088}
8089
8090// SetPipelineName sets the PipelineName field's value.
8091func (s *GetPipelineExecutionInput) SetPipelineName(v string) *GetPipelineExecutionInput {
8092	s.PipelineName = &v
8093	return s
8094}
8095
8096// Represents the output of a GetPipelineExecution action.
8097type GetPipelineExecutionOutput struct {
8098	_ struct{} `type:"structure"`
8099
8100	// Represents information about the execution of a pipeline.
8101	PipelineExecution *PipelineExecution `locationName:"pipelineExecution" type:"structure"`
8102}
8103
8104// String returns the string representation
8105func (s GetPipelineExecutionOutput) String() string {
8106	return awsutil.Prettify(s)
8107}
8108
8109// GoString returns the string representation
8110func (s GetPipelineExecutionOutput) GoString() string {
8111	return s.String()
8112}
8113
8114// SetPipelineExecution sets the PipelineExecution field's value.
8115func (s *GetPipelineExecutionOutput) SetPipelineExecution(v *PipelineExecution) *GetPipelineExecutionOutput {
8116	s.PipelineExecution = v
8117	return s
8118}
8119
8120// Represents the input of a GetPipeline action.
8121type GetPipelineInput struct {
8122	_ struct{} `type:"structure"`
8123
8124	// The name of the pipeline for which you want to get information. Pipeline
8125	// names must be unique under an AWS user account.
8126	//
8127	// Name is a required field
8128	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
8129
8130	// The version number of the pipeline. If you do not specify a version, defaults
8131	// to the current version.
8132	Version *int64 `locationName:"version" min:"1" type:"integer"`
8133}
8134
8135// String returns the string representation
8136func (s GetPipelineInput) String() string {
8137	return awsutil.Prettify(s)
8138}
8139
8140// GoString returns the string representation
8141func (s GetPipelineInput) GoString() string {
8142	return s.String()
8143}
8144
8145// Validate inspects the fields of the type to determine if they are valid.
8146func (s *GetPipelineInput) Validate() error {
8147	invalidParams := request.ErrInvalidParams{Context: "GetPipelineInput"}
8148	if s.Name == nil {
8149		invalidParams.Add(request.NewErrParamRequired("Name"))
8150	}
8151	if s.Name != nil && len(*s.Name) < 1 {
8152		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
8153	}
8154	if s.Version != nil && *s.Version < 1 {
8155		invalidParams.Add(request.NewErrParamMinValue("Version", 1))
8156	}
8157
8158	if invalidParams.Len() > 0 {
8159		return invalidParams
8160	}
8161	return nil
8162}
8163
8164// SetName sets the Name field's value.
8165func (s *GetPipelineInput) SetName(v string) *GetPipelineInput {
8166	s.Name = &v
8167	return s
8168}
8169
8170// SetVersion sets the Version field's value.
8171func (s *GetPipelineInput) SetVersion(v int64) *GetPipelineInput {
8172	s.Version = &v
8173	return s
8174}
8175
8176// Represents the output of a GetPipeline action.
8177type GetPipelineOutput struct {
8178	_ struct{} `type:"structure"`
8179
8180	// Represents the pipeline metadata information returned as part of the output
8181	// of a GetPipeline action.
8182	Metadata *PipelineMetadata `locationName:"metadata" type:"structure"`
8183
8184	// Represents the structure of actions and stages to be performed in the pipeline.
8185	Pipeline *PipelineDeclaration `locationName:"pipeline" type:"structure"`
8186}
8187
8188// String returns the string representation
8189func (s GetPipelineOutput) String() string {
8190	return awsutil.Prettify(s)
8191}
8192
8193// GoString returns the string representation
8194func (s GetPipelineOutput) GoString() string {
8195	return s.String()
8196}
8197
8198// SetMetadata sets the Metadata field's value.
8199func (s *GetPipelineOutput) SetMetadata(v *PipelineMetadata) *GetPipelineOutput {
8200	s.Metadata = v
8201	return s
8202}
8203
8204// SetPipeline sets the Pipeline field's value.
8205func (s *GetPipelineOutput) SetPipeline(v *PipelineDeclaration) *GetPipelineOutput {
8206	s.Pipeline = v
8207	return s
8208}
8209
8210// Represents the input of a GetPipelineState action.
8211type GetPipelineStateInput struct {
8212	_ struct{} `type:"structure"`
8213
8214	// The name of the pipeline about which you want to get information.
8215	//
8216	// Name is a required field
8217	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
8218}
8219
8220// String returns the string representation
8221func (s GetPipelineStateInput) String() string {
8222	return awsutil.Prettify(s)
8223}
8224
8225// GoString returns the string representation
8226func (s GetPipelineStateInput) GoString() string {
8227	return s.String()
8228}
8229
8230// Validate inspects the fields of the type to determine if they are valid.
8231func (s *GetPipelineStateInput) Validate() error {
8232	invalidParams := request.ErrInvalidParams{Context: "GetPipelineStateInput"}
8233	if s.Name == nil {
8234		invalidParams.Add(request.NewErrParamRequired("Name"))
8235	}
8236	if s.Name != nil && len(*s.Name) < 1 {
8237		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
8238	}
8239
8240	if invalidParams.Len() > 0 {
8241		return invalidParams
8242	}
8243	return nil
8244}
8245
8246// SetName sets the Name field's value.
8247func (s *GetPipelineStateInput) SetName(v string) *GetPipelineStateInput {
8248	s.Name = &v
8249	return s
8250}
8251
8252// Represents the output of a GetPipelineState action.
8253type GetPipelineStateOutput struct {
8254	_ struct{} `type:"structure"`
8255
8256	// The date and time the pipeline was created, in timestamp format.
8257	Created *time.Time `locationName:"created" type:"timestamp"`
8258
8259	// The name of the pipeline for which you want to get the state.
8260	PipelineName *string `locationName:"pipelineName" min:"1" type:"string"`
8261
8262	// The version number of the pipeline.
8263	//
8264	// A newly created pipeline is always assigned a version number of 1.
8265	PipelineVersion *int64 `locationName:"pipelineVersion" min:"1" type:"integer"`
8266
8267	// A list of the pipeline stage output information, including stage name, state,
8268	// most recent run details, whether the stage is disabled, and other data.
8269	StageStates []*StageState `locationName:"stageStates" type:"list"`
8270
8271	// The date and time the pipeline was last updated, in timestamp format.
8272	Updated *time.Time `locationName:"updated" type:"timestamp"`
8273}
8274
8275// String returns the string representation
8276func (s GetPipelineStateOutput) String() string {
8277	return awsutil.Prettify(s)
8278}
8279
8280// GoString returns the string representation
8281func (s GetPipelineStateOutput) GoString() string {
8282	return s.String()
8283}
8284
8285// SetCreated sets the Created field's value.
8286func (s *GetPipelineStateOutput) SetCreated(v time.Time) *GetPipelineStateOutput {
8287	s.Created = &v
8288	return s
8289}
8290
8291// SetPipelineName sets the PipelineName field's value.
8292func (s *GetPipelineStateOutput) SetPipelineName(v string) *GetPipelineStateOutput {
8293	s.PipelineName = &v
8294	return s
8295}
8296
8297// SetPipelineVersion sets the PipelineVersion field's value.
8298func (s *GetPipelineStateOutput) SetPipelineVersion(v int64) *GetPipelineStateOutput {
8299	s.PipelineVersion = &v
8300	return s
8301}
8302
8303// SetStageStates sets the StageStates field's value.
8304func (s *GetPipelineStateOutput) SetStageStates(v []*StageState) *GetPipelineStateOutput {
8305	s.StageStates = v
8306	return s
8307}
8308
8309// SetUpdated sets the Updated field's value.
8310func (s *GetPipelineStateOutput) SetUpdated(v time.Time) *GetPipelineStateOutput {
8311	s.Updated = &v
8312	return s
8313}
8314
8315// Represents the input of a GetThirdPartyJobDetails action.
8316type GetThirdPartyJobDetailsInput struct {
8317	_ struct{} `type:"structure"`
8318
8319	// The clientToken portion of the clientId and clientToken pair used to verify
8320	// that the calling entity is allowed access to the job and its details.
8321	//
8322	// ClientToken is a required field
8323	ClientToken *string `locationName:"clientToken" min:"1" type:"string" required:"true"`
8324
8325	// The unique system-generated ID used for identifying the job.
8326	//
8327	// JobId is a required field
8328	JobId *string `locationName:"jobId" min:"1" type:"string" required:"true"`
8329}
8330
8331// String returns the string representation
8332func (s GetThirdPartyJobDetailsInput) String() string {
8333	return awsutil.Prettify(s)
8334}
8335
8336// GoString returns the string representation
8337func (s GetThirdPartyJobDetailsInput) GoString() string {
8338	return s.String()
8339}
8340
8341// Validate inspects the fields of the type to determine if they are valid.
8342func (s *GetThirdPartyJobDetailsInput) Validate() error {
8343	invalidParams := request.ErrInvalidParams{Context: "GetThirdPartyJobDetailsInput"}
8344	if s.ClientToken == nil {
8345		invalidParams.Add(request.NewErrParamRequired("ClientToken"))
8346	}
8347	if s.ClientToken != nil && len(*s.ClientToken) < 1 {
8348		invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
8349	}
8350	if s.JobId == nil {
8351		invalidParams.Add(request.NewErrParamRequired("JobId"))
8352	}
8353	if s.JobId != nil && len(*s.JobId) < 1 {
8354		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
8355	}
8356
8357	if invalidParams.Len() > 0 {
8358		return invalidParams
8359	}
8360	return nil
8361}
8362
8363// SetClientToken sets the ClientToken field's value.
8364func (s *GetThirdPartyJobDetailsInput) SetClientToken(v string) *GetThirdPartyJobDetailsInput {
8365	s.ClientToken = &v
8366	return s
8367}
8368
8369// SetJobId sets the JobId field's value.
8370func (s *GetThirdPartyJobDetailsInput) SetJobId(v string) *GetThirdPartyJobDetailsInput {
8371	s.JobId = &v
8372	return s
8373}
8374
8375// Represents the output of a GetThirdPartyJobDetails action.
8376type GetThirdPartyJobDetailsOutput struct {
8377	_ struct{} `type:"structure"`
8378
8379	// The details of the job, including any protected values defined for the job.
8380	JobDetails *ThirdPartyJobDetails `locationName:"jobDetails" type:"structure"`
8381}
8382
8383// String returns the string representation
8384func (s GetThirdPartyJobDetailsOutput) String() string {
8385	return awsutil.Prettify(s)
8386}
8387
8388// GoString returns the string representation
8389func (s GetThirdPartyJobDetailsOutput) GoString() string {
8390	return s.String()
8391}
8392
8393// SetJobDetails sets the JobDetails field's value.
8394func (s *GetThirdPartyJobDetailsOutput) SetJobDetails(v *ThirdPartyJobDetails) *GetThirdPartyJobDetailsOutput {
8395	s.JobDetails = v
8396	return s
8397}
8398
8399// Represents information about an artifact to be worked on, such as a test
8400// or build artifact.
8401type InputArtifact struct {
8402	_ struct{} `type:"structure"`
8403
8404	// The name of the artifact to be worked on (for example, "My App").
8405	//
8406	// The input artifact of an action must exactly match the output artifact declared
8407	// in a preceding action, but the input artifact does not have to be the next
8408	// action in strict sequence from the action that provided the output artifact.
8409	// Actions in parallel can declare different output artifacts, which are in
8410	// turn consumed by different following actions.
8411	//
8412	// Name is a required field
8413	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
8414}
8415
8416// String returns the string representation
8417func (s InputArtifact) String() string {
8418	return awsutil.Prettify(s)
8419}
8420
8421// GoString returns the string representation
8422func (s InputArtifact) GoString() string {
8423	return s.String()
8424}
8425
8426// Validate inspects the fields of the type to determine if they are valid.
8427func (s *InputArtifact) Validate() error {
8428	invalidParams := request.ErrInvalidParams{Context: "InputArtifact"}
8429	if s.Name == nil {
8430		invalidParams.Add(request.NewErrParamRequired("Name"))
8431	}
8432	if s.Name != nil && len(*s.Name) < 1 {
8433		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
8434	}
8435
8436	if invalidParams.Len() > 0 {
8437		return invalidParams
8438	}
8439	return nil
8440}
8441
8442// SetName sets the Name field's value.
8443func (s *InputArtifact) SetName(v string) *InputArtifact {
8444	s.Name = &v
8445	return s
8446}
8447
8448// The action declaration was specified in an invalid format.
8449type InvalidActionDeclarationException struct {
8450	_            struct{}                  `type:"structure"`
8451	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
8452
8453	Message_ *string `locationName:"message" type:"string"`
8454}
8455
8456// String returns the string representation
8457func (s InvalidActionDeclarationException) String() string {
8458	return awsutil.Prettify(s)
8459}
8460
8461// GoString returns the string representation
8462func (s InvalidActionDeclarationException) GoString() string {
8463	return s.String()
8464}
8465
8466func newErrorInvalidActionDeclarationException(v protocol.ResponseMetadata) error {
8467	return &InvalidActionDeclarationException{
8468		RespMetadata: v,
8469	}
8470}
8471
8472// Code returns the exception type name.
8473func (s *InvalidActionDeclarationException) Code() string {
8474	return "InvalidActionDeclarationException"
8475}
8476
8477// Message returns the exception's message.
8478func (s *InvalidActionDeclarationException) Message() string {
8479	if s.Message_ != nil {
8480		return *s.Message_
8481	}
8482	return ""
8483}
8484
8485// OrigErr always returns nil, satisfies awserr.Error interface.
8486func (s *InvalidActionDeclarationException) OrigErr() error {
8487	return nil
8488}
8489
8490func (s *InvalidActionDeclarationException) Error() string {
8491	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
8492}
8493
8494// Status code returns the HTTP status code for the request's response error.
8495func (s *InvalidActionDeclarationException) StatusCode() int {
8496	return s.RespMetadata.StatusCode
8497}
8498
8499// RequestID returns the service's response RequestID for request.
8500func (s *InvalidActionDeclarationException) RequestID() string {
8501	return s.RespMetadata.RequestID
8502}
8503
8504// The approval request already received a response or has expired.
8505type InvalidApprovalTokenException struct {
8506	_            struct{}                  `type:"structure"`
8507	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
8508
8509	Message_ *string `locationName:"message" type:"string"`
8510}
8511
8512// String returns the string representation
8513func (s InvalidApprovalTokenException) String() string {
8514	return awsutil.Prettify(s)
8515}
8516
8517// GoString returns the string representation
8518func (s InvalidApprovalTokenException) GoString() string {
8519	return s.String()
8520}
8521
8522func newErrorInvalidApprovalTokenException(v protocol.ResponseMetadata) error {
8523	return &InvalidApprovalTokenException{
8524		RespMetadata: v,
8525	}
8526}
8527
8528// Code returns the exception type name.
8529func (s *InvalidApprovalTokenException) Code() string {
8530	return "InvalidApprovalTokenException"
8531}
8532
8533// Message returns the exception's message.
8534func (s *InvalidApprovalTokenException) Message() string {
8535	if s.Message_ != nil {
8536		return *s.Message_
8537	}
8538	return ""
8539}
8540
8541// OrigErr always returns nil, satisfies awserr.Error interface.
8542func (s *InvalidApprovalTokenException) OrigErr() error {
8543	return nil
8544}
8545
8546func (s *InvalidApprovalTokenException) Error() string {
8547	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
8548}
8549
8550// Status code returns the HTTP status code for the request's response error.
8551func (s *InvalidApprovalTokenException) StatusCode() int {
8552	return s.RespMetadata.StatusCode
8553}
8554
8555// RequestID returns the service's response RequestID for request.
8556func (s *InvalidApprovalTokenException) RequestID() string {
8557	return s.RespMetadata.RequestID
8558}
8559
8560// The specified resource ARN is invalid.
8561type InvalidArnException struct {
8562	_            struct{}                  `type:"structure"`
8563	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
8564
8565	Message_ *string `locationName:"message" min:"1" type:"string"`
8566}
8567
8568// String returns the string representation
8569func (s InvalidArnException) String() string {
8570	return awsutil.Prettify(s)
8571}
8572
8573// GoString returns the string representation
8574func (s InvalidArnException) GoString() string {
8575	return s.String()
8576}
8577
8578func newErrorInvalidArnException(v protocol.ResponseMetadata) error {
8579	return &InvalidArnException{
8580		RespMetadata: v,
8581	}
8582}
8583
8584// Code returns the exception type name.
8585func (s *InvalidArnException) Code() string {
8586	return "InvalidArnException"
8587}
8588
8589// Message returns the exception's message.
8590func (s *InvalidArnException) Message() string {
8591	if s.Message_ != nil {
8592		return *s.Message_
8593	}
8594	return ""
8595}
8596
8597// OrigErr always returns nil, satisfies awserr.Error interface.
8598func (s *InvalidArnException) OrigErr() error {
8599	return nil
8600}
8601
8602func (s *InvalidArnException) Error() string {
8603	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
8604}
8605
8606// Status code returns the HTTP status code for the request's response error.
8607func (s *InvalidArnException) StatusCode() int {
8608	return s.RespMetadata.StatusCode
8609}
8610
8611// RequestID returns the service's response RequestID for request.
8612func (s *InvalidArnException) RequestID() string {
8613	return s.RespMetadata.RequestID
8614}
8615
8616// Reserved for future use.
8617type InvalidBlockerDeclarationException struct {
8618	_            struct{}                  `type:"structure"`
8619	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
8620
8621	Message_ *string `locationName:"message" type:"string"`
8622}
8623
8624// String returns the string representation
8625func (s InvalidBlockerDeclarationException) String() string {
8626	return awsutil.Prettify(s)
8627}
8628
8629// GoString returns the string representation
8630func (s InvalidBlockerDeclarationException) GoString() string {
8631	return s.String()
8632}
8633
8634func newErrorInvalidBlockerDeclarationException(v protocol.ResponseMetadata) error {
8635	return &InvalidBlockerDeclarationException{
8636		RespMetadata: v,
8637	}
8638}
8639
8640// Code returns the exception type name.
8641func (s *InvalidBlockerDeclarationException) Code() string {
8642	return "InvalidBlockerDeclarationException"
8643}
8644
8645// Message returns the exception's message.
8646func (s *InvalidBlockerDeclarationException) Message() string {
8647	if s.Message_ != nil {
8648		return *s.Message_
8649	}
8650	return ""
8651}
8652
8653// OrigErr always returns nil, satisfies awserr.Error interface.
8654func (s *InvalidBlockerDeclarationException) OrigErr() error {
8655	return nil
8656}
8657
8658func (s *InvalidBlockerDeclarationException) Error() string {
8659	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
8660}
8661
8662// Status code returns the HTTP status code for the request's response error.
8663func (s *InvalidBlockerDeclarationException) StatusCode() int {
8664	return s.RespMetadata.StatusCode
8665}
8666
8667// RequestID returns the service's response RequestID for request.
8668func (s *InvalidBlockerDeclarationException) RequestID() string {
8669	return s.RespMetadata.RequestID
8670}
8671
8672// The client token was specified in an invalid format
8673type InvalidClientTokenException struct {
8674	_            struct{}                  `type:"structure"`
8675	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
8676
8677	Message_ *string `locationName:"message" type:"string"`
8678}
8679
8680// String returns the string representation
8681func (s InvalidClientTokenException) String() string {
8682	return awsutil.Prettify(s)
8683}
8684
8685// GoString returns the string representation
8686func (s InvalidClientTokenException) GoString() string {
8687	return s.String()
8688}
8689
8690func newErrorInvalidClientTokenException(v protocol.ResponseMetadata) error {
8691	return &InvalidClientTokenException{
8692		RespMetadata: v,
8693	}
8694}
8695
8696// Code returns the exception type name.
8697func (s *InvalidClientTokenException) Code() string {
8698	return "InvalidClientTokenException"
8699}
8700
8701// Message returns the exception's message.
8702func (s *InvalidClientTokenException) Message() string {
8703	if s.Message_ != nil {
8704		return *s.Message_
8705	}
8706	return ""
8707}
8708
8709// OrigErr always returns nil, satisfies awserr.Error interface.
8710func (s *InvalidClientTokenException) OrigErr() error {
8711	return nil
8712}
8713
8714func (s *InvalidClientTokenException) Error() string {
8715	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
8716}
8717
8718// Status code returns the HTTP status code for the request's response error.
8719func (s *InvalidClientTokenException) StatusCode() int {
8720	return s.RespMetadata.StatusCode
8721}
8722
8723// RequestID returns the service's response RequestID for request.
8724func (s *InvalidClientTokenException) RequestID() string {
8725	return s.RespMetadata.RequestID
8726}
8727
8728// The job was specified in an invalid format or cannot be found.
8729type InvalidJobException struct {
8730	_            struct{}                  `type:"structure"`
8731	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
8732
8733	Message_ *string `locationName:"message" type:"string"`
8734}
8735
8736// String returns the string representation
8737func (s InvalidJobException) String() string {
8738	return awsutil.Prettify(s)
8739}
8740
8741// GoString returns the string representation
8742func (s InvalidJobException) GoString() string {
8743	return s.String()
8744}
8745
8746func newErrorInvalidJobException(v protocol.ResponseMetadata) error {
8747	return &InvalidJobException{
8748		RespMetadata: v,
8749	}
8750}
8751
8752// Code returns the exception type name.
8753func (s *InvalidJobException) Code() string {
8754	return "InvalidJobException"
8755}
8756
8757// Message returns the exception's message.
8758func (s *InvalidJobException) Message() string {
8759	if s.Message_ != nil {
8760		return *s.Message_
8761	}
8762	return ""
8763}
8764
8765// OrigErr always returns nil, satisfies awserr.Error interface.
8766func (s *InvalidJobException) OrigErr() error {
8767	return nil
8768}
8769
8770func (s *InvalidJobException) Error() string {
8771	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
8772}
8773
8774// Status code returns the HTTP status code for the request's response error.
8775func (s *InvalidJobException) StatusCode() int {
8776	return s.RespMetadata.StatusCode
8777}
8778
8779// RequestID returns the service's response RequestID for request.
8780func (s *InvalidJobException) RequestID() string {
8781	return s.RespMetadata.RequestID
8782}
8783
8784// The job state was specified in an invalid format.
8785type InvalidJobStateException struct {
8786	_            struct{}                  `type:"structure"`
8787	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
8788
8789	Message_ *string `locationName:"message" type:"string"`
8790}
8791
8792// String returns the string representation
8793func (s InvalidJobStateException) String() string {
8794	return awsutil.Prettify(s)
8795}
8796
8797// GoString returns the string representation
8798func (s InvalidJobStateException) GoString() string {
8799	return s.String()
8800}
8801
8802func newErrorInvalidJobStateException(v protocol.ResponseMetadata) error {
8803	return &InvalidJobStateException{
8804		RespMetadata: v,
8805	}
8806}
8807
8808// Code returns the exception type name.
8809func (s *InvalidJobStateException) Code() string {
8810	return "InvalidJobStateException"
8811}
8812
8813// Message returns the exception's message.
8814func (s *InvalidJobStateException) Message() string {
8815	if s.Message_ != nil {
8816		return *s.Message_
8817	}
8818	return ""
8819}
8820
8821// OrigErr always returns nil, satisfies awserr.Error interface.
8822func (s *InvalidJobStateException) OrigErr() error {
8823	return nil
8824}
8825
8826func (s *InvalidJobStateException) Error() string {
8827	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
8828}
8829
8830// Status code returns the HTTP status code for the request's response error.
8831func (s *InvalidJobStateException) StatusCode() int {
8832	return s.RespMetadata.StatusCode
8833}
8834
8835// RequestID returns the service's response RequestID for request.
8836func (s *InvalidJobStateException) RequestID() string {
8837	return s.RespMetadata.RequestID
8838}
8839
8840// The next token was specified in an invalid format. Make sure that the next
8841// token you provide is the token returned by a previous call.
8842type InvalidNextTokenException struct {
8843	_            struct{}                  `type:"structure"`
8844	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
8845
8846	Message_ *string `locationName:"message" type:"string"`
8847}
8848
8849// String returns the string representation
8850func (s InvalidNextTokenException) String() string {
8851	return awsutil.Prettify(s)
8852}
8853
8854// GoString returns the string representation
8855func (s InvalidNextTokenException) GoString() string {
8856	return s.String()
8857}
8858
8859func newErrorInvalidNextTokenException(v protocol.ResponseMetadata) error {
8860	return &InvalidNextTokenException{
8861		RespMetadata: v,
8862	}
8863}
8864
8865// Code returns the exception type name.
8866func (s *InvalidNextTokenException) Code() string {
8867	return "InvalidNextTokenException"
8868}
8869
8870// Message returns the exception's message.
8871func (s *InvalidNextTokenException) Message() string {
8872	if s.Message_ != nil {
8873		return *s.Message_
8874	}
8875	return ""
8876}
8877
8878// OrigErr always returns nil, satisfies awserr.Error interface.
8879func (s *InvalidNextTokenException) OrigErr() error {
8880	return nil
8881}
8882
8883func (s *InvalidNextTokenException) Error() string {
8884	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
8885}
8886
8887// Status code returns the HTTP status code for the request's response error.
8888func (s *InvalidNextTokenException) StatusCode() int {
8889	return s.RespMetadata.StatusCode
8890}
8891
8892// RequestID returns the service's response RequestID for request.
8893func (s *InvalidNextTokenException) RequestID() string {
8894	return s.RespMetadata.RequestID
8895}
8896
8897// The nonce was specified in an invalid format.
8898type InvalidNonceException struct {
8899	_            struct{}                  `type:"structure"`
8900	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
8901
8902	Message_ *string `locationName:"message" type:"string"`
8903}
8904
8905// String returns the string representation
8906func (s InvalidNonceException) String() string {
8907	return awsutil.Prettify(s)
8908}
8909
8910// GoString returns the string representation
8911func (s InvalidNonceException) GoString() string {
8912	return s.String()
8913}
8914
8915func newErrorInvalidNonceException(v protocol.ResponseMetadata) error {
8916	return &InvalidNonceException{
8917		RespMetadata: v,
8918	}
8919}
8920
8921// Code returns the exception type name.
8922func (s *InvalidNonceException) Code() string {
8923	return "InvalidNonceException"
8924}
8925
8926// Message returns the exception's message.
8927func (s *InvalidNonceException) Message() string {
8928	if s.Message_ != nil {
8929		return *s.Message_
8930	}
8931	return ""
8932}
8933
8934// OrigErr always returns nil, satisfies awserr.Error interface.
8935func (s *InvalidNonceException) OrigErr() error {
8936	return nil
8937}
8938
8939func (s *InvalidNonceException) Error() string {
8940	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
8941}
8942
8943// Status code returns the HTTP status code for the request's response error.
8944func (s *InvalidNonceException) StatusCode() int {
8945	return s.RespMetadata.StatusCode
8946}
8947
8948// RequestID returns the service's response RequestID for request.
8949func (s *InvalidNonceException) RequestID() string {
8950	return s.RespMetadata.RequestID
8951}
8952
8953// The stage declaration was specified in an invalid format.
8954type InvalidStageDeclarationException struct {
8955	_            struct{}                  `type:"structure"`
8956	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
8957
8958	Message_ *string `locationName:"message" type:"string"`
8959}
8960
8961// String returns the string representation
8962func (s InvalidStageDeclarationException) String() string {
8963	return awsutil.Prettify(s)
8964}
8965
8966// GoString returns the string representation
8967func (s InvalidStageDeclarationException) GoString() string {
8968	return s.String()
8969}
8970
8971func newErrorInvalidStageDeclarationException(v protocol.ResponseMetadata) error {
8972	return &InvalidStageDeclarationException{
8973		RespMetadata: v,
8974	}
8975}
8976
8977// Code returns the exception type name.
8978func (s *InvalidStageDeclarationException) Code() string {
8979	return "InvalidStageDeclarationException"
8980}
8981
8982// Message returns the exception's message.
8983func (s *InvalidStageDeclarationException) Message() string {
8984	if s.Message_ != nil {
8985		return *s.Message_
8986	}
8987	return ""
8988}
8989
8990// OrigErr always returns nil, satisfies awserr.Error interface.
8991func (s *InvalidStageDeclarationException) OrigErr() error {
8992	return nil
8993}
8994
8995func (s *InvalidStageDeclarationException) Error() string {
8996	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
8997}
8998
8999// Status code returns the HTTP status code for the request's response error.
9000func (s *InvalidStageDeclarationException) StatusCode() int {
9001	return s.RespMetadata.StatusCode
9002}
9003
9004// RequestID returns the service's response RequestID for request.
9005func (s *InvalidStageDeclarationException) RequestID() string {
9006	return s.RespMetadata.RequestID
9007}
9008
9009// The structure was specified in an invalid format.
9010type InvalidStructureException struct {
9011	_            struct{}                  `type:"structure"`
9012	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
9013
9014	Message_ *string `locationName:"message" type:"string"`
9015}
9016
9017// String returns the string representation
9018func (s InvalidStructureException) String() string {
9019	return awsutil.Prettify(s)
9020}
9021
9022// GoString returns the string representation
9023func (s InvalidStructureException) GoString() string {
9024	return s.String()
9025}
9026
9027func newErrorInvalidStructureException(v protocol.ResponseMetadata) error {
9028	return &InvalidStructureException{
9029		RespMetadata: v,
9030	}
9031}
9032
9033// Code returns the exception type name.
9034func (s *InvalidStructureException) Code() string {
9035	return "InvalidStructureException"
9036}
9037
9038// Message returns the exception's message.
9039func (s *InvalidStructureException) Message() string {
9040	if s.Message_ != nil {
9041		return *s.Message_
9042	}
9043	return ""
9044}
9045
9046// OrigErr always returns nil, satisfies awserr.Error interface.
9047func (s *InvalidStructureException) OrigErr() error {
9048	return nil
9049}
9050
9051func (s *InvalidStructureException) Error() string {
9052	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
9053}
9054
9055// Status code returns the HTTP status code for the request's response error.
9056func (s *InvalidStructureException) StatusCode() int {
9057	return s.RespMetadata.StatusCode
9058}
9059
9060// RequestID returns the service's response RequestID for request.
9061func (s *InvalidStructureException) RequestID() string {
9062	return s.RespMetadata.RequestID
9063}
9064
9065// The specified resource tags are invalid.
9066type InvalidTagsException struct {
9067	_            struct{}                  `type:"structure"`
9068	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
9069
9070	Message_ *string `locationName:"message" min:"1" type:"string"`
9071}
9072
9073// String returns the string representation
9074func (s InvalidTagsException) String() string {
9075	return awsutil.Prettify(s)
9076}
9077
9078// GoString returns the string representation
9079func (s InvalidTagsException) GoString() string {
9080	return s.String()
9081}
9082
9083func newErrorInvalidTagsException(v protocol.ResponseMetadata) error {
9084	return &InvalidTagsException{
9085		RespMetadata: v,
9086	}
9087}
9088
9089// Code returns the exception type name.
9090func (s *InvalidTagsException) Code() string {
9091	return "InvalidTagsException"
9092}
9093
9094// Message returns the exception's message.
9095func (s *InvalidTagsException) Message() string {
9096	if s.Message_ != nil {
9097		return *s.Message_
9098	}
9099	return ""
9100}
9101
9102// OrigErr always returns nil, satisfies awserr.Error interface.
9103func (s *InvalidTagsException) OrigErr() error {
9104	return nil
9105}
9106
9107func (s *InvalidTagsException) Error() string {
9108	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
9109}
9110
9111// Status code returns the HTTP status code for the request's response error.
9112func (s *InvalidTagsException) StatusCode() int {
9113	return s.RespMetadata.StatusCode
9114}
9115
9116// RequestID returns the service's response RequestID for request.
9117func (s *InvalidTagsException) RequestID() string {
9118	return s.RespMetadata.RequestID
9119}
9120
9121// The specified authentication type is in an invalid format.
9122type InvalidWebhookAuthenticationParametersException struct {
9123	_            struct{}                  `type:"structure"`
9124	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
9125
9126	Message_ *string `locationName:"message" type:"string"`
9127}
9128
9129// String returns the string representation
9130func (s InvalidWebhookAuthenticationParametersException) String() string {
9131	return awsutil.Prettify(s)
9132}
9133
9134// GoString returns the string representation
9135func (s InvalidWebhookAuthenticationParametersException) GoString() string {
9136	return s.String()
9137}
9138
9139func newErrorInvalidWebhookAuthenticationParametersException(v protocol.ResponseMetadata) error {
9140	return &InvalidWebhookAuthenticationParametersException{
9141		RespMetadata: v,
9142	}
9143}
9144
9145// Code returns the exception type name.
9146func (s *InvalidWebhookAuthenticationParametersException) Code() string {
9147	return "InvalidWebhookAuthenticationParametersException"
9148}
9149
9150// Message returns the exception's message.
9151func (s *InvalidWebhookAuthenticationParametersException) Message() string {
9152	if s.Message_ != nil {
9153		return *s.Message_
9154	}
9155	return ""
9156}
9157
9158// OrigErr always returns nil, satisfies awserr.Error interface.
9159func (s *InvalidWebhookAuthenticationParametersException) OrigErr() error {
9160	return nil
9161}
9162
9163func (s *InvalidWebhookAuthenticationParametersException) Error() string {
9164	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
9165}
9166
9167// Status code returns the HTTP status code for the request's response error.
9168func (s *InvalidWebhookAuthenticationParametersException) StatusCode() int {
9169	return s.RespMetadata.StatusCode
9170}
9171
9172// RequestID returns the service's response RequestID for request.
9173func (s *InvalidWebhookAuthenticationParametersException) RequestID() string {
9174	return s.RespMetadata.RequestID
9175}
9176
9177// The specified event filter rule is in an invalid format.
9178type InvalidWebhookFilterPatternException struct {
9179	_            struct{}                  `type:"structure"`
9180	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
9181
9182	Message_ *string `locationName:"message" type:"string"`
9183}
9184
9185// String returns the string representation
9186func (s InvalidWebhookFilterPatternException) String() string {
9187	return awsutil.Prettify(s)
9188}
9189
9190// GoString returns the string representation
9191func (s InvalidWebhookFilterPatternException) GoString() string {
9192	return s.String()
9193}
9194
9195func newErrorInvalidWebhookFilterPatternException(v protocol.ResponseMetadata) error {
9196	return &InvalidWebhookFilterPatternException{
9197		RespMetadata: v,
9198	}
9199}
9200
9201// Code returns the exception type name.
9202func (s *InvalidWebhookFilterPatternException) Code() string {
9203	return "InvalidWebhookFilterPatternException"
9204}
9205
9206// Message returns the exception's message.
9207func (s *InvalidWebhookFilterPatternException) Message() string {
9208	if s.Message_ != nil {
9209		return *s.Message_
9210	}
9211	return ""
9212}
9213
9214// OrigErr always returns nil, satisfies awserr.Error interface.
9215func (s *InvalidWebhookFilterPatternException) OrigErr() error {
9216	return nil
9217}
9218
9219func (s *InvalidWebhookFilterPatternException) Error() string {
9220	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
9221}
9222
9223// Status code returns the HTTP status code for the request's response error.
9224func (s *InvalidWebhookFilterPatternException) StatusCode() int {
9225	return s.RespMetadata.StatusCode
9226}
9227
9228// RequestID returns the service's response RequestID for request.
9229func (s *InvalidWebhookFilterPatternException) RequestID() string {
9230	return s.RespMetadata.RequestID
9231}
9232
9233// Represents information about a job.
9234type Job struct {
9235	_ struct{} `type:"structure"`
9236
9237	// The ID of the AWS account to use when performing the job.
9238	AccountId *string `locationName:"accountId" type:"string"`
9239
9240	// Other data about a job.
9241	Data *JobData `locationName:"data" type:"structure"`
9242
9243	// The unique system-generated ID of the job.
9244	Id *string `locationName:"id" type:"string"`
9245
9246	// A system-generated random number that AWS CodePipeline uses to ensure that
9247	// the job is being worked on by only one job worker. Use this number in an
9248	// AcknowledgeJob request.
9249	Nonce *string `locationName:"nonce" min:"1" type:"string"`
9250}
9251
9252// String returns the string representation
9253func (s Job) String() string {
9254	return awsutil.Prettify(s)
9255}
9256
9257// GoString returns the string representation
9258func (s Job) GoString() string {
9259	return s.String()
9260}
9261
9262// SetAccountId sets the AccountId field's value.
9263func (s *Job) SetAccountId(v string) *Job {
9264	s.AccountId = &v
9265	return s
9266}
9267
9268// SetData sets the Data field's value.
9269func (s *Job) SetData(v *JobData) *Job {
9270	s.Data = v
9271	return s
9272}
9273
9274// SetId sets the Id field's value.
9275func (s *Job) SetId(v string) *Job {
9276	s.Id = &v
9277	return s
9278}
9279
9280// SetNonce sets the Nonce field's value.
9281func (s *Job) SetNonce(v string) *Job {
9282	s.Nonce = &v
9283	return s
9284}
9285
9286// Represents other information about a job required for a job worker to complete
9287// the job.
9288type JobData struct {
9289	_ struct{} `type:"structure"`
9290
9291	// Represents information about an action configuration.
9292	ActionConfiguration *ActionConfiguration `locationName:"actionConfiguration" type:"structure"`
9293
9294	// Represents information about an action type.
9295	ActionTypeId *ActionTypeId `locationName:"actionTypeId" type:"structure"`
9296
9297	// Represents an AWS session credentials object. These credentials are temporary
9298	// credentials that are issued by AWS Secure Token Service (STS). They can be
9299	// used to access input and output artifacts in the S3 bucket used to store
9300	// artifacts for the pipeline in AWS CodePipeline.
9301	ArtifactCredentials *AWSSessionCredentials `locationName:"artifactCredentials" type:"structure" sensitive:"true"`
9302
9303	// A system-generated token, such as a AWS CodeDeploy deployment ID, required
9304	// by a job to continue the job asynchronously.
9305	ContinuationToken *string `locationName:"continuationToken" min:"1" type:"string"`
9306
9307	// Represents information about the key used to encrypt data in the artifact
9308	// store, such as an AWS Key Management Service (AWS KMS) key.
9309	EncryptionKey *EncryptionKey `locationName:"encryptionKey" type:"structure"`
9310
9311	// The artifact supplied to the job.
9312	InputArtifacts []*Artifact `locationName:"inputArtifacts" type:"list"`
9313
9314	// The output of the job.
9315	OutputArtifacts []*Artifact `locationName:"outputArtifacts" type:"list"`
9316
9317	// Represents information about a pipeline to a job worker.
9318	//
9319	// Includes pipelineArn and pipelineExecutionId for custom jobs.
9320	PipelineContext *PipelineContext `locationName:"pipelineContext" type:"structure"`
9321}
9322
9323// String returns the string representation
9324func (s JobData) String() string {
9325	return awsutil.Prettify(s)
9326}
9327
9328// GoString returns the string representation
9329func (s JobData) GoString() string {
9330	return s.String()
9331}
9332
9333// SetActionConfiguration sets the ActionConfiguration field's value.
9334func (s *JobData) SetActionConfiguration(v *ActionConfiguration) *JobData {
9335	s.ActionConfiguration = v
9336	return s
9337}
9338
9339// SetActionTypeId sets the ActionTypeId field's value.
9340func (s *JobData) SetActionTypeId(v *ActionTypeId) *JobData {
9341	s.ActionTypeId = v
9342	return s
9343}
9344
9345// SetArtifactCredentials sets the ArtifactCredentials field's value.
9346func (s *JobData) SetArtifactCredentials(v *AWSSessionCredentials) *JobData {
9347	s.ArtifactCredentials = v
9348	return s
9349}
9350
9351// SetContinuationToken sets the ContinuationToken field's value.
9352func (s *JobData) SetContinuationToken(v string) *JobData {
9353	s.ContinuationToken = &v
9354	return s
9355}
9356
9357// SetEncryptionKey sets the EncryptionKey field's value.
9358func (s *JobData) SetEncryptionKey(v *EncryptionKey) *JobData {
9359	s.EncryptionKey = v
9360	return s
9361}
9362
9363// SetInputArtifacts sets the InputArtifacts field's value.
9364func (s *JobData) SetInputArtifacts(v []*Artifact) *JobData {
9365	s.InputArtifacts = v
9366	return s
9367}
9368
9369// SetOutputArtifacts sets the OutputArtifacts field's value.
9370func (s *JobData) SetOutputArtifacts(v []*Artifact) *JobData {
9371	s.OutputArtifacts = v
9372	return s
9373}
9374
9375// SetPipelineContext sets the PipelineContext field's value.
9376func (s *JobData) SetPipelineContext(v *PipelineContext) *JobData {
9377	s.PipelineContext = v
9378	return s
9379}
9380
9381// Represents information about the details of a job.
9382type JobDetails struct {
9383	_ struct{} `type:"structure"`
9384
9385	// The AWS account ID associated with the job.
9386	AccountId *string `locationName:"accountId" type:"string"`
9387
9388	// Represents other information about a job required for a job worker to complete
9389	// the job.
9390	Data *JobData `locationName:"data" type:"structure"`
9391
9392	// The unique system-generated ID of the job.
9393	Id *string `locationName:"id" type:"string"`
9394}
9395
9396// String returns the string representation
9397func (s JobDetails) String() string {
9398	return awsutil.Prettify(s)
9399}
9400
9401// GoString returns the string representation
9402func (s JobDetails) GoString() string {
9403	return s.String()
9404}
9405
9406// SetAccountId sets the AccountId field's value.
9407func (s *JobDetails) SetAccountId(v string) *JobDetails {
9408	s.AccountId = &v
9409	return s
9410}
9411
9412// SetData sets the Data field's value.
9413func (s *JobDetails) SetData(v *JobData) *JobDetails {
9414	s.Data = v
9415	return s
9416}
9417
9418// SetId sets the Id field's value.
9419func (s *JobDetails) SetId(v string) *JobDetails {
9420	s.Id = &v
9421	return s
9422}
9423
9424// The job was specified in an invalid format or cannot be found.
9425type JobNotFoundException struct {
9426	_            struct{}                  `type:"structure"`
9427	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
9428
9429	Message_ *string `locationName:"message" type:"string"`
9430}
9431
9432// String returns the string representation
9433func (s JobNotFoundException) String() string {
9434	return awsutil.Prettify(s)
9435}
9436
9437// GoString returns the string representation
9438func (s JobNotFoundException) GoString() string {
9439	return s.String()
9440}
9441
9442func newErrorJobNotFoundException(v protocol.ResponseMetadata) error {
9443	return &JobNotFoundException{
9444		RespMetadata: v,
9445	}
9446}
9447
9448// Code returns the exception type name.
9449func (s *JobNotFoundException) Code() string {
9450	return "JobNotFoundException"
9451}
9452
9453// Message returns the exception's message.
9454func (s *JobNotFoundException) Message() string {
9455	if s.Message_ != nil {
9456		return *s.Message_
9457	}
9458	return ""
9459}
9460
9461// OrigErr always returns nil, satisfies awserr.Error interface.
9462func (s *JobNotFoundException) OrigErr() error {
9463	return nil
9464}
9465
9466func (s *JobNotFoundException) Error() string {
9467	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
9468}
9469
9470// Status code returns the HTTP status code for the request's response error.
9471func (s *JobNotFoundException) StatusCode() int {
9472	return s.RespMetadata.StatusCode
9473}
9474
9475// RequestID returns the service's response RequestID for request.
9476func (s *JobNotFoundException) RequestID() string {
9477	return s.RespMetadata.RequestID
9478}
9479
9480// Details about the polling configuration for the JobWorker action engine,
9481// or executor.
9482type JobWorkerExecutorConfiguration struct {
9483	_ struct{} `type:"structure"`
9484
9485	// The accounts in which the job worker is configured and might poll for jobs
9486	// as part of the action execution.
9487	PollingAccounts []*string `locationName:"pollingAccounts" min:"1" type:"list"`
9488
9489	// The service Principals in which the job worker is configured and might poll
9490	// for jobs as part of the action execution.
9491	PollingServicePrincipals []*string `locationName:"pollingServicePrincipals" min:"1" type:"list"`
9492}
9493
9494// String returns the string representation
9495func (s JobWorkerExecutorConfiguration) String() string {
9496	return awsutil.Prettify(s)
9497}
9498
9499// GoString returns the string representation
9500func (s JobWorkerExecutorConfiguration) GoString() string {
9501	return s.String()
9502}
9503
9504// Validate inspects the fields of the type to determine if they are valid.
9505func (s *JobWorkerExecutorConfiguration) Validate() error {
9506	invalidParams := request.ErrInvalidParams{Context: "JobWorkerExecutorConfiguration"}
9507	if s.PollingAccounts != nil && len(s.PollingAccounts) < 1 {
9508		invalidParams.Add(request.NewErrParamMinLen("PollingAccounts", 1))
9509	}
9510	if s.PollingServicePrincipals != nil && len(s.PollingServicePrincipals) < 1 {
9511		invalidParams.Add(request.NewErrParamMinLen("PollingServicePrincipals", 1))
9512	}
9513
9514	if invalidParams.Len() > 0 {
9515		return invalidParams
9516	}
9517	return nil
9518}
9519
9520// SetPollingAccounts sets the PollingAccounts field's value.
9521func (s *JobWorkerExecutorConfiguration) SetPollingAccounts(v []*string) *JobWorkerExecutorConfiguration {
9522	s.PollingAccounts = v
9523	return s
9524}
9525
9526// SetPollingServicePrincipals sets the PollingServicePrincipals field's value.
9527func (s *JobWorkerExecutorConfiguration) SetPollingServicePrincipals(v []*string) *JobWorkerExecutorConfiguration {
9528	s.PollingServicePrincipals = v
9529	return s
9530}
9531
9532// Details about the configuration for the Lambda action engine, or executor.
9533type LambdaExecutorConfiguration struct {
9534	_ struct{} `type:"structure"`
9535
9536	// The ARN of the Lambda function used by the action engine.
9537	//
9538	// LambdaFunctionArn is a required field
9539	LambdaFunctionArn *string `locationName:"lambdaFunctionArn" min:"1" type:"string" required:"true"`
9540}
9541
9542// String returns the string representation
9543func (s LambdaExecutorConfiguration) String() string {
9544	return awsutil.Prettify(s)
9545}
9546
9547// GoString returns the string representation
9548func (s LambdaExecutorConfiguration) GoString() string {
9549	return s.String()
9550}
9551
9552// Validate inspects the fields of the type to determine if they are valid.
9553func (s *LambdaExecutorConfiguration) Validate() error {
9554	invalidParams := request.ErrInvalidParams{Context: "LambdaExecutorConfiguration"}
9555	if s.LambdaFunctionArn == nil {
9556		invalidParams.Add(request.NewErrParamRequired("LambdaFunctionArn"))
9557	}
9558	if s.LambdaFunctionArn != nil && len(*s.LambdaFunctionArn) < 1 {
9559		invalidParams.Add(request.NewErrParamMinLen("LambdaFunctionArn", 1))
9560	}
9561
9562	if invalidParams.Len() > 0 {
9563		return invalidParams
9564	}
9565	return nil
9566}
9567
9568// SetLambdaFunctionArn sets the LambdaFunctionArn field's value.
9569func (s *LambdaExecutorConfiguration) SetLambdaFunctionArn(v string) *LambdaExecutorConfiguration {
9570	s.LambdaFunctionArn = &v
9571	return s
9572}
9573
9574// The number of pipelines associated with the AWS account has exceeded the
9575// limit allowed for the account.
9576type LimitExceededException struct {
9577	_            struct{}                  `type:"structure"`
9578	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
9579
9580	Message_ *string `locationName:"message" type:"string"`
9581}
9582
9583// String returns the string representation
9584func (s LimitExceededException) String() string {
9585	return awsutil.Prettify(s)
9586}
9587
9588// GoString returns the string representation
9589func (s LimitExceededException) GoString() string {
9590	return s.String()
9591}
9592
9593func newErrorLimitExceededException(v protocol.ResponseMetadata) error {
9594	return &LimitExceededException{
9595		RespMetadata: v,
9596	}
9597}
9598
9599// Code returns the exception type name.
9600func (s *LimitExceededException) Code() string {
9601	return "LimitExceededException"
9602}
9603
9604// Message returns the exception's message.
9605func (s *LimitExceededException) Message() string {
9606	if s.Message_ != nil {
9607		return *s.Message_
9608	}
9609	return ""
9610}
9611
9612// OrigErr always returns nil, satisfies awserr.Error interface.
9613func (s *LimitExceededException) OrigErr() error {
9614	return nil
9615}
9616
9617func (s *LimitExceededException) Error() string {
9618	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
9619}
9620
9621// Status code returns the HTTP status code for the request's response error.
9622func (s *LimitExceededException) StatusCode() int {
9623	return s.RespMetadata.StatusCode
9624}
9625
9626// RequestID returns the service's response RequestID for request.
9627func (s *LimitExceededException) RequestID() string {
9628	return s.RespMetadata.RequestID
9629}
9630
9631type ListActionExecutionsInput struct {
9632	_ struct{} `type:"structure"`
9633
9634	// Input information used to filter action execution history.
9635	Filter *ActionExecutionFilter `locationName:"filter" type:"structure"`
9636
9637	// The maximum number of results to return in a single call. To retrieve the
9638	// remaining results, make another call with the returned nextToken value. Action
9639	// execution history is retained for up to 12 months, based on action execution
9640	// start times. Default value is 100.
9641	//
9642	// Detailed execution history is available for executions run on or after February
9643	// 21, 2019.
9644	MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"`
9645
9646	// The token that was returned from the previous ListActionExecutions call,
9647	// which can be used to return the next set of action executions in the list.
9648	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
9649
9650	// The name of the pipeline for which you want to list action execution history.
9651	//
9652	// PipelineName is a required field
9653	PipelineName *string `locationName:"pipelineName" min:"1" type:"string" required:"true"`
9654}
9655
9656// String returns the string representation
9657func (s ListActionExecutionsInput) String() string {
9658	return awsutil.Prettify(s)
9659}
9660
9661// GoString returns the string representation
9662func (s ListActionExecutionsInput) GoString() string {
9663	return s.String()
9664}
9665
9666// Validate inspects the fields of the type to determine if they are valid.
9667func (s *ListActionExecutionsInput) Validate() error {
9668	invalidParams := request.ErrInvalidParams{Context: "ListActionExecutionsInput"}
9669	if s.MaxResults != nil && *s.MaxResults < 1 {
9670		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
9671	}
9672	if s.NextToken != nil && len(*s.NextToken) < 1 {
9673		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
9674	}
9675	if s.PipelineName == nil {
9676		invalidParams.Add(request.NewErrParamRequired("PipelineName"))
9677	}
9678	if s.PipelineName != nil && len(*s.PipelineName) < 1 {
9679		invalidParams.Add(request.NewErrParamMinLen("PipelineName", 1))
9680	}
9681
9682	if invalidParams.Len() > 0 {
9683		return invalidParams
9684	}
9685	return nil
9686}
9687
9688// SetFilter sets the Filter field's value.
9689func (s *ListActionExecutionsInput) SetFilter(v *ActionExecutionFilter) *ListActionExecutionsInput {
9690	s.Filter = v
9691	return s
9692}
9693
9694// SetMaxResults sets the MaxResults field's value.
9695func (s *ListActionExecutionsInput) SetMaxResults(v int64) *ListActionExecutionsInput {
9696	s.MaxResults = &v
9697	return s
9698}
9699
9700// SetNextToken sets the NextToken field's value.
9701func (s *ListActionExecutionsInput) SetNextToken(v string) *ListActionExecutionsInput {
9702	s.NextToken = &v
9703	return s
9704}
9705
9706// SetPipelineName sets the PipelineName field's value.
9707func (s *ListActionExecutionsInput) SetPipelineName(v string) *ListActionExecutionsInput {
9708	s.PipelineName = &v
9709	return s
9710}
9711
9712type ListActionExecutionsOutput struct {
9713	_ struct{} `type:"structure"`
9714
9715	// The details for a list of recent executions, such as action execution ID.
9716	ActionExecutionDetails []*ActionExecutionDetail `locationName:"actionExecutionDetails" type:"list"`
9717
9718	// If the amount of returned information is significantly large, an identifier
9719	// is also returned and can be used in a subsequent ListActionExecutions call
9720	// to return the next set of action executions in the list.
9721	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
9722}
9723
9724// String returns the string representation
9725func (s ListActionExecutionsOutput) String() string {
9726	return awsutil.Prettify(s)
9727}
9728
9729// GoString returns the string representation
9730func (s ListActionExecutionsOutput) GoString() string {
9731	return s.String()
9732}
9733
9734// SetActionExecutionDetails sets the ActionExecutionDetails field's value.
9735func (s *ListActionExecutionsOutput) SetActionExecutionDetails(v []*ActionExecutionDetail) *ListActionExecutionsOutput {
9736	s.ActionExecutionDetails = v
9737	return s
9738}
9739
9740// SetNextToken sets the NextToken field's value.
9741func (s *ListActionExecutionsOutput) SetNextToken(v string) *ListActionExecutionsOutput {
9742	s.NextToken = &v
9743	return s
9744}
9745
9746// Represents the input of a ListActionTypes action.
9747type ListActionTypesInput struct {
9748	_ struct{} `type:"structure"`
9749
9750	// Filters the list of action types to those created by a specified entity.
9751	ActionOwnerFilter *string `locationName:"actionOwnerFilter" type:"string" enum:"ActionOwner"`
9752
9753	// An identifier that was returned from the previous list action types call,
9754	// which can be used to return the next set of action types in the list.
9755	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
9756
9757	// The Region to filter on for the list of action types.
9758	RegionFilter *string `locationName:"regionFilter" min:"4" type:"string"`
9759}
9760
9761// String returns the string representation
9762func (s ListActionTypesInput) String() string {
9763	return awsutil.Prettify(s)
9764}
9765
9766// GoString returns the string representation
9767func (s ListActionTypesInput) GoString() string {
9768	return s.String()
9769}
9770
9771// Validate inspects the fields of the type to determine if they are valid.
9772func (s *ListActionTypesInput) Validate() error {
9773	invalidParams := request.ErrInvalidParams{Context: "ListActionTypesInput"}
9774	if s.NextToken != nil && len(*s.NextToken) < 1 {
9775		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
9776	}
9777	if s.RegionFilter != nil && len(*s.RegionFilter) < 4 {
9778		invalidParams.Add(request.NewErrParamMinLen("RegionFilter", 4))
9779	}
9780
9781	if invalidParams.Len() > 0 {
9782		return invalidParams
9783	}
9784	return nil
9785}
9786
9787// SetActionOwnerFilter sets the ActionOwnerFilter field's value.
9788func (s *ListActionTypesInput) SetActionOwnerFilter(v string) *ListActionTypesInput {
9789	s.ActionOwnerFilter = &v
9790	return s
9791}
9792
9793// SetNextToken sets the NextToken field's value.
9794func (s *ListActionTypesInput) SetNextToken(v string) *ListActionTypesInput {
9795	s.NextToken = &v
9796	return s
9797}
9798
9799// SetRegionFilter sets the RegionFilter field's value.
9800func (s *ListActionTypesInput) SetRegionFilter(v string) *ListActionTypesInput {
9801	s.RegionFilter = &v
9802	return s
9803}
9804
9805// Represents the output of a ListActionTypes action.
9806type ListActionTypesOutput struct {
9807	_ struct{} `type:"structure"`
9808
9809	// Provides details of the action types.
9810	//
9811	// ActionTypes is a required field
9812	ActionTypes []*ActionType `locationName:"actionTypes" type:"list" required:"true"`
9813
9814	// If the amount of returned information is significantly large, an identifier
9815	// is also returned. It can be used in a subsequent list action types call to
9816	// return the next set of action types in the list.
9817	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
9818}
9819
9820// String returns the string representation
9821func (s ListActionTypesOutput) String() string {
9822	return awsutil.Prettify(s)
9823}
9824
9825// GoString returns the string representation
9826func (s ListActionTypesOutput) GoString() string {
9827	return s.String()
9828}
9829
9830// SetActionTypes sets the ActionTypes field's value.
9831func (s *ListActionTypesOutput) SetActionTypes(v []*ActionType) *ListActionTypesOutput {
9832	s.ActionTypes = v
9833	return s
9834}
9835
9836// SetNextToken sets the NextToken field's value.
9837func (s *ListActionTypesOutput) SetNextToken(v string) *ListActionTypesOutput {
9838	s.NextToken = &v
9839	return s
9840}
9841
9842// Represents the input of a ListPipelineExecutions action.
9843type ListPipelineExecutionsInput struct {
9844	_ struct{} `type:"structure"`
9845
9846	// The maximum number of results to return in a single call. To retrieve the
9847	// remaining results, make another call with the returned nextToken value. Pipeline
9848	// history is limited to the most recent 12 months, based on pipeline execution
9849	// start times. Default value is 100.
9850	MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"`
9851
9852	// The token that was returned from the previous ListPipelineExecutions call,
9853	// which can be used to return the next set of pipeline executions in the list.
9854	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
9855
9856	// The name of the pipeline for which you want to get execution summary information.
9857	//
9858	// PipelineName is a required field
9859	PipelineName *string `locationName:"pipelineName" min:"1" type:"string" required:"true"`
9860}
9861
9862// String returns the string representation
9863func (s ListPipelineExecutionsInput) String() string {
9864	return awsutil.Prettify(s)
9865}
9866
9867// GoString returns the string representation
9868func (s ListPipelineExecutionsInput) GoString() string {
9869	return s.String()
9870}
9871
9872// Validate inspects the fields of the type to determine if they are valid.
9873func (s *ListPipelineExecutionsInput) Validate() error {
9874	invalidParams := request.ErrInvalidParams{Context: "ListPipelineExecutionsInput"}
9875	if s.MaxResults != nil && *s.MaxResults < 1 {
9876		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
9877	}
9878	if s.NextToken != nil && len(*s.NextToken) < 1 {
9879		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
9880	}
9881	if s.PipelineName == nil {
9882		invalidParams.Add(request.NewErrParamRequired("PipelineName"))
9883	}
9884	if s.PipelineName != nil && len(*s.PipelineName) < 1 {
9885		invalidParams.Add(request.NewErrParamMinLen("PipelineName", 1))
9886	}
9887
9888	if invalidParams.Len() > 0 {
9889		return invalidParams
9890	}
9891	return nil
9892}
9893
9894// SetMaxResults sets the MaxResults field's value.
9895func (s *ListPipelineExecutionsInput) SetMaxResults(v int64) *ListPipelineExecutionsInput {
9896	s.MaxResults = &v
9897	return s
9898}
9899
9900// SetNextToken sets the NextToken field's value.
9901func (s *ListPipelineExecutionsInput) SetNextToken(v string) *ListPipelineExecutionsInput {
9902	s.NextToken = &v
9903	return s
9904}
9905
9906// SetPipelineName sets the PipelineName field's value.
9907func (s *ListPipelineExecutionsInput) SetPipelineName(v string) *ListPipelineExecutionsInput {
9908	s.PipelineName = &v
9909	return s
9910}
9911
9912// Represents the output of a ListPipelineExecutions action.
9913type ListPipelineExecutionsOutput struct {
9914	_ struct{} `type:"structure"`
9915
9916	// A token that can be used in the next ListPipelineExecutions call. To view
9917	// all items in the list, continue to call this operation with each subsequent
9918	// token until no more nextToken values are returned.
9919	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
9920
9921	// A list of executions in the history of a pipeline.
9922	PipelineExecutionSummaries []*PipelineExecutionSummary `locationName:"pipelineExecutionSummaries" type:"list"`
9923}
9924
9925// String returns the string representation
9926func (s ListPipelineExecutionsOutput) String() string {
9927	return awsutil.Prettify(s)
9928}
9929
9930// GoString returns the string representation
9931func (s ListPipelineExecutionsOutput) GoString() string {
9932	return s.String()
9933}
9934
9935// SetNextToken sets the NextToken field's value.
9936func (s *ListPipelineExecutionsOutput) SetNextToken(v string) *ListPipelineExecutionsOutput {
9937	s.NextToken = &v
9938	return s
9939}
9940
9941// SetPipelineExecutionSummaries sets the PipelineExecutionSummaries field's value.
9942func (s *ListPipelineExecutionsOutput) SetPipelineExecutionSummaries(v []*PipelineExecutionSummary) *ListPipelineExecutionsOutput {
9943	s.PipelineExecutionSummaries = v
9944	return s
9945}
9946
9947// Represents the input of a ListPipelines action.
9948type ListPipelinesInput struct {
9949	_ struct{} `type:"structure"`
9950
9951	// The maximum number of pipelines to return in a single call. To retrieve the
9952	// remaining pipelines, make another call with the returned nextToken value.
9953	// The minimum value you can specify is 1. The maximum accepted value is 1000.
9954	MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"`
9955
9956	// An identifier that was returned from the previous list pipelines call. It
9957	// can be used to return the next set of pipelines in the list.
9958	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
9959}
9960
9961// String returns the string representation
9962func (s ListPipelinesInput) String() string {
9963	return awsutil.Prettify(s)
9964}
9965
9966// GoString returns the string representation
9967func (s ListPipelinesInput) GoString() string {
9968	return s.String()
9969}
9970
9971// Validate inspects the fields of the type to determine if they are valid.
9972func (s *ListPipelinesInput) Validate() error {
9973	invalidParams := request.ErrInvalidParams{Context: "ListPipelinesInput"}
9974	if s.MaxResults != nil && *s.MaxResults < 1 {
9975		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
9976	}
9977	if s.NextToken != nil && len(*s.NextToken) < 1 {
9978		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
9979	}
9980
9981	if invalidParams.Len() > 0 {
9982		return invalidParams
9983	}
9984	return nil
9985}
9986
9987// SetMaxResults sets the MaxResults field's value.
9988func (s *ListPipelinesInput) SetMaxResults(v int64) *ListPipelinesInput {
9989	s.MaxResults = &v
9990	return s
9991}
9992
9993// SetNextToken sets the NextToken field's value.
9994func (s *ListPipelinesInput) SetNextToken(v string) *ListPipelinesInput {
9995	s.NextToken = &v
9996	return s
9997}
9998
9999// Represents the output of a ListPipelines action.
10000type ListPipelinesOutput struct {
10001	_ struct{} `type:"structure"`
10002
10003	// If the amount of returned information is significantly large, an identifier
10004	// is also returned. It can be used in a subsequent list pipelines call to return
10005	// the next set of pipelines in the list.
10006	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
10007
10008	// The list of pipelines.
10009	Pipelines []*PipelineSummary `locationName:"pipelines" type:"list"`
10010}
10011
10012// String returns the string representation
10013func (s ListPipelinesOutput) String() string {
10014	return awsutil.Prettify(s)
10015}
10016
10017// GoString returns the string representation
10018func (s ListPipelinesOutput) GoString() string {
10019	return s.String()
10020}
10021
10022// SetNextToken sets the NextToken field's value.
10023func (s *ListPipelinesOutput) SetNextToken(v string) *ListPipelinesOutput {
10024	s.NextToken = &v
10025	return s
10026}
10027
10028// SetPipelines sets the Pipelines field's value.
10029func (s *ListPipelinesOutput) SetPipelines(v []*PipelineSummary) *ListPipelinesOutput {
10030	s.Pipelines = v
10031	return s
10032}
10033
10034type ListTagsForResourceInput struct {
10035	_ struct{} `type:"structure"`
10036
10037	// The maximum number of results to return in a single call.
10038	MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"`
10039
10040	// The token that was returned from the previous API call, which would be used
10041	// to return the next page of the list. The ListTagsforResource call lists all
10042	// available tags in one call and does not use pagination.
10043	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
10044
10045	// The Amazon Resource Name (ARN) of the resource to get tags for.
10046	//
10047	// ResourceArn is a required field
10048	ResourceArn *string `locationName:"resourceArn" type:"string" required:"true"`
10049}
10050
10051// String returns the string representation
10052func (s ListTagsForResourceInput) String() string {
10053	return awsutil.Prettify(s)
10054}
10055
10056// GoString returns the string representation
10057func (s ListTagsForResourceInput) GoString() string {
10058	return s.String()
10059}
10060
10061// Validate inspects the fields of the type to determine if they are valid.
10062func (s *ListTagsForResourceInput) Validate() error {
10063	invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"}
10064	if s.MaxResults != nil && *s.MaxResults < 1 {
10065		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
10066	}
10067	if s.NextToken != nil && len(*s.NextToken) < 1 {
10068		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
10069	}
10070	if s.ResourceArn == nil {
10071		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
10072	}
10073
10074	if invalidParams.Len() > 0 {
10075		return invalidParams
10076	}
10077	return nil
10078}
10079
10080// SetMaxResults sets the MaxResults field's value.
10081func (s *ListTagsForResourceInput) SetMaxResults(v int64) *ListTagsForResourceInput {
10082	s.MaxResults = &v
10083	return s
10084}
10085
10086// SetNextToken sets the NextToken field's value.
10087func (s *ListTagsForResourceInput) SetNextToken(v string) *ListTagsForResourceInput {
10088	s.NextToken = &v
10089	return s
10090}
10091
10092// SetResourceArn sets the ResourceArn field's value.
10093func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput {
10094	s.ResourceArn = &v
10095	return s
10096}
10097
10098type ListTagsForResourceOutput struct {
10099	_ struct{} `type:"structure"`
10100
10101	// If the amount of returned information is significantly large, an identifier
10102	// is also returned and can be used in a subsequent API call to return the next
10103	// page of the list. The ListTagsforResource call lists all available tags in
10104	// one call and does not use pagination.
10105	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
10106
10107	// The tags for the resource.
10108	Tags []*Tag `locationName:"tags" type:"list"`
10109}
10110
10111// String returns the string representation
10112func (s ListTagsForResourceOutput) String() string {
10113	return awsutil.Prettify(s)
10114}
10115
10116// GoString returns the string representation
10117func (s ListTagsForResourceOutput) GoString() string {
10118	return s.String()
10119}
10120
10121// SetNextToken sets the NextToken field's value.
10122func (s *ListTagsForResourceOutput) SetNextToken(v string) *ListTagsForResourceOutput {
10123	s.NextToken = &v
10124	return s
10125}
10126
10127// SetTags sets the Tags field's value.
10128func (s *ListTagsForResourceOutput) SetTags(v []*Tag) *ListTagsForResourceOutput {
10129	s.Tags = v
10130	return s
10131}
10132
10133// The detail returned for each webhook after listing webhooks, such as the
10134// webhook URL, the webhook name, and the webhook ARN.
10135type ListWebhookItem struct {
10136	_ struct{} `type:"structure"`
10137
10138	// The Amazon Resource Name (ARN) of the webhook.
10139	Arn *string `locationName:"arn" type:"string"`
10140
10141	// The detail returned for each webhook, such as the webhook authentication
10142	// type and filter rules.
10143	//
10144	// Definition is a required field
10145	Definition *WebhookDefinition `locationName:"definition" type:"structure" required:"true"`
10146
10147	// The number code of the error.
10148	ErrorCode *string `locationName:"errorCode" type:"string"`
10149
10150	// The text of the error message about the webhook.
10151	ErrorMessage *string `locationName:"errorMessage" type:"string"`
10152
10153	// The date and time a webhook was last successfully triggered, in timestamp
10154	// format.
10155	LastTriggered *time.Time `locationName:"lastTriggered" type:"timestamp"`
10156
10157	// Specifies the tags applied to the webhook.
10158	Tags []*Tag `locationName:"tags" type:"list"`
10159
10160	// A unique URL generated by CodePipeline. When a POST request is made to this
10161	// URL, the defined pipeline is started as long as the body of the post request
10162	// satisfies the defined authentication and filtering conditions. Deleting and
10163	// re-creating a webhook makes the old URL invalid and generates a new one.
10164	//
10165	// Url is a required field
10166	Url *string `locationName:"url" min:"1" type:"string" required:"true"`
10167}
10168
10169// String returns the string representation
10170func (s ListWebhookItem) String() string {
10171	return awsutil.Prettify(s)
10172}
10173
10174// GoString returns the string representation
10175func (s ListWebhookItem) GoString() string {
10176	return s.String()
10177}
10178
10179// SetArn sets the Arn field's value.
10180func (s *ListWebhookItem) SetArn(v string) *ListWebhookItem {
10181	s.Arn = &v
10182	return s
10183}
10184
10185// SetDefinition sets the Definition field's value.
10186func (s *ListWebhookItem) SetDefinition(v *WebhookDefinition) *ListWebhookItem {
10187	s.Definition = v
10188	return s
10189}
10190
10191// SetErrorCode sets the ErrorCode field's value.
10192func (s *ListWebhookItem) SetErrorCode(v string) *ListWebhookItem {
10193	s.ErrorCode = &v
10194	return s
10195}
10196
10197// SetErrorMessage sets the ErrorMessage field's value.
10198func (s *ListWebhookItem) SetErrorMessage(v string) *ListWebhookItem {
10199	s.ErrorMessage = &v
10200	return s
10201}
10202
10203// SetLastTriggered sets the LastTriggered field's value.
10204func (s *ListWebhookItem) SetLastTriggered(v time.Time) *ListWebhookItem {
10205	s.LastTriggered = &v
10206	return s
10207}
10208
10209// SetTags sets the Tags field's value.
10210func (s *ListWebhookItem) SetTags(v []*Tag) *ListWebhookItem {
10211	s.Tags = v
10212	return s
10213}
10214
10215// SetUrl sets the Url field's value.
10216func (s *ListWebhookItem) SetUrl(v string) *ListWebhookItem {
10217	s.Url = &v
10218	return s
10219}
10220
10221type ListWebhooksInput struct {
10222	_ struct{} `type:"structure"`
10223
10224	// The maximum number of results to return in a single call. To retrieve the
10225	// remaining results, make another call with the returned nextToken value.
10226	MaxResults *int64 `min:"1" type:"integer"`
10227
10228	// The token that was returned from the previous ListWebhooks call, which can
10229	// be used to return the next set of webhooks in the list.
10230	NextToken *string `min:"1" type:"string"`
10231}
10232
10233// String returns the string representation
10234func (s ListWebhooksInput) String() string {
10235	return awsutil.Prettify(s)
10236}
10237
10238// GoString returns the string representation
10239func (s ListWebhooksInput) GoString() string {
10240	return s.String()
10241}
10242
10243// Validate inspects the fields of the type to determine if they are valid.
10244func (s *ListWebhooksInput) Validate() error {
10245	invalidParams := request.ErrInvalidParams{Context: "ListWebhooksInput"}
10246	if s.MaxResults != nil && *s.MaxResults < 1 {
10247		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
10248	}
10249	if s.NextToken != nil && len(*s.NextToken) < 1 {
10250		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
10251	}
10252
10253	if invalidParams.Len() > 0 {
10254		return invalidParams
10255	}
10256	return nil
10257}
10258
10259// SetMaxResults sets the MaxResults field's value.
10260func (s *ListWebhooksInput) SetMaxResults(v int64) *ListWebhooksInput {
10261	s.MaxResults = &v
10262	return s
10263}
10264
10265// SetNextToken sets the NextToken field's value.
10266func (s *ListWebhooksInput) SetNextToken(v string) *ListWebhooksInput {
10267	s.NextToken = &v
10268	return s
10269}
10270
10271type ListWebhooksOutput struct {
10272	_ struct{} `type:"structure"`
10273
10274	// If the amount of returned information is significantly large, an identifier
10275	// is also returned and can be used in a subsequent ListWebhooks call to return
10276	// the next set of webhooks in the list.
10277	NextToken *string `min:"1" type:"string"`
10278
10279	// The JSON detail returned for each webhook in the list output for the ListWebhooks
10280	// call.
10281	Webhooks []*ListWebhookItem `locationName:"webhooks" type:"list"`
10282}
10283
10284// String returns the string representation
10285func (s ListWebhooksOutput) String() string {
10286	return awsutil.Prettify(s)
10287}
10288
10289// GoString returns the string representation
10290func (s ListWebhooksOutput) GoString() string {
10291	return s.String()
10292}
10293
10294// SetNextToken sets the NextToken field's value.
10295func (s *ListWebhooksOutput) SetNextToken(v string) *ListWebhooksOutput {
10296	s.NextToken = &v
10297	return s
10298}
10299
10300// SetWebhooks sets the Webhooks field's value.
10301func (s *ListWebhooksOutput) SetWebhooks(v []*ListWebhookItem) *ListWebhooksOutput {
10302	s.Webhooks = v
10303	return s
10304}
10305
10306// The stage has failed in a later run of the pipeline and the pipelineExecutionId
10307// associated with the request is out of date.
10308type NotLatestPipelineExecutionException struct {
10309	_            struct{}                  `type:"structure"`
10310	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
10311
10312	Message_ *string `locationName:"message" type:"string"`
10313}
10314
10315// String returns the string representation
10316func (s NotLatestPipelineExecutionException) String() string {
10317	return awsutil.Prettify(s)
10318}
10319
10320// GoString returns the string representation
10321func (s NotLatestPipelineExecutionException) GoString() string {
10322	return s.String()
10323}
10324
10325func newErrorNotLatestPipelineExecutionException(v protocol.ResponseMetadata) error {
10326	return &NotLatestPipelineExecutionException{
10327		RespMetadata: v,
10328	}
10329}
10330
10331// Code returns the exception type name.
10332func (s *NotLatestPipelineExecutionException) Code() string {
10333	return "NotLatestPipelineExecutionException"
10334}
10335
10336// Message returns the exception's message.
10337func (s *NotLatestPipelineExecutionException) Message() string {
10338	if s.Message_ != nil {
10339		return *s.Message_
10340	}
10341	return ""
10342}
10343
10344// OrigErr always returns nil, satisfies awserr.Error interface.
10345func (s *NotLatestPipelineExecutionException) OrigErr() error {
10346	return nil
10347}
10348
10349func (s *NotLatestPipelineExecutionException) Error() string {
10350	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
10351}
10352
10353// Status code returns the HTTP status code for the request's response error.
10354func (s *NotLatestPipelineExecutionException) StatusCode() int {
10355	return s.RespMetadata.StatusCode
10356}
10357
10358// RequestID returns the service's response RequestID for request.
10359func (s *NotLatestPipelineExecutionException) RequestID() string {
10360	return s.RespMetadata.RequestID
10361}
10362
10363// Represents information about the output of an action.
10364type OutputArtifact struct {
10365	_ struct{} `type:"structure"`
10366
10367	// The name of the output of an artifact, such as "My App".
10368	//
10369	// The input artifact of an action must exactly match the output artifact declared
10370	// in a preceding action, but the input artifact does not have to be the next
10371	// action in strict sequence from the action that provided the output artifact.
10372	// Actions in parallel can declare different output artifacts, which are in
10373	// turn consumed by different following actions.
10374	//
10375	// Output artifact names must be unique within a pipeline.
10376	//
10377	// Name is a required field
10378	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
10379}
10380
10381// String returns the string representation
10382func (s OutputArtifact) String() string {
10383	return awsutil.Prettify(s)
10384}
10385
10386// GoString returns the string representation
10387func (s OutputArtifact) GoString() string {
10388	return s.String()
10389}
10390
10391// Validate inspects the fields of the type to determine if they are valid.
10392func (s *OutputArtifact) Validate() error {
10393	invalidParams := request.ErrInvalidParams{Context: "OutputArtifact"}
10394	if s.Name == nil {
10395		invalidParams.Add(request.NewErrParamRequired("Name"))
10396	}
10397	if s.Name != nil && len(*s.Name) < 1 {
10398		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
10399	}
10400
10401	if invalidParams.Len() > 0 {
10402		return invalidParams
10403	}
10404	return nil
10405}
10406
10407// SetName sets the Name field's value.
10408func (s *OutputArtifact) SetName(v string) *OutputArtifact {
10409	s.Name = &v
10410	return s
10411}
10412
10413// Exceeded the total size limit for all variables in the pipeline.
10414type OutputVariablesSizeExceededException struct {
10415	_            struct{}                  `type:"structure"`
10416	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
10417
10418	Message_ *string `locationName:"message" min:"1" type:"string"`
10419}
10420
10421// String returns the string representation
10422func (s OutputVariablesSizeExceededException) String() string {
10423	return awsutil.Prettify(s)
10424}
10425
10426// GoString returns the string representation
10427func (s OutputVariablesSizeExceededException) GoString() string {
10428	return s.String()
10429}
10430
10431func newErrorOutputVariablesSizeExceededException(v protocol.ResponseMetadata) error {
10432	return &OutputVariablesSizeExceededException{
10433		RespMetadata: v,
10434	}
10435}
10436
10437// Code returns the exception type name.
10438func (s *OutputVariablesSizeExceededException) Code() string {
10439	return "OutputVariablesSizeExceededException"
10440}
10441
10442// Message returns the exception's message.
10443func (s *OutputVariablesSizeExceededException) Message() string {
10444	if s.Message_ != nil {
10445		return *s.Message_
10446	}
10447	return ""
10448}
10449
10450// OrigErr always returns nil, satisfies awserr.Error interface.
10451func (s *OutputVariablesSizeExceededException) OrigErr() error {
10452	return nil
10453}
10454
10455func (s *OutputVariablesSizeExceededException) Error() string {
10456	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
10457}
10458
10459// Status code returns the HTTP status code for the request's response error.
10460func (s *OutputVariablesSizeExceededException) StatusCode() int {
10461	return s.RespMetadata.StatusCode
10462}
10463
10464// RequestID returns the service's response RequestID for request.
10465func (s *OutputVariablesSizeExceededException) RequestID() string {
10466	return s.RespMetadata.RequestID
10467}
10468
10469// Represents information about a pipeline to a job worker.
10470//
10471// PipelineContext contains pipelineArn and pipelineExecutionId for custom action
10472// jobs. The pipelineArn and pipelineExecutionId fields are not populated for
10473// ThirdParty action jobs.
10474type PipelineContext struct {
10475	_ struct{} `type:"structure"`
10476
10477	// The context of an action to a job worker in the stage of a pipeline.
10478	Action *ActionContext `locationName:"action" type:"structure"`
10479
10480	// The Amazon Resource Name (ARN) of the pipeline.
10481	PipelineArn *string `locationName:"pipelineArn" type:"string"`
10482
10483	// The execution ID of the pipeline.
10484	PipelineExecutionId *string `locationName:"pipelineExecutionId" type:"string"`
10485
10486	// The name of the pipeline. This is a user-specified value. Pipeline names
10487	// must be unique across all pipeline names under an Amazon Web Services account.
10488	PipelineName *string `locationName:"pipelineName" min:"1" type:"string"`
10489
10490	// The stage of the pipeline.
10491	Stage *StageContext `locationName:"stage" type:"structure"`
10492}
10493
10494// String returns the string representation
10495func (s PipelineContext) String() string {
10496	return awsutil.Prettify(s)
10497}
10498
10499// GoString returns the string representation
10500func (s PipelineContext) GoString() string {
10501	return s.String()
10502}
10503
10504// SetAction sets the Action field's value.
10505func (s *PipelineContext) SetAction(v *ActionContext) *PipelineContext {
10506	s.Action = v
10507	return s
10508}
10509
10510// SetPipelineArn sets the PipelineArn field's value.
10511func (s *PipelineContext) SetPipelineArn(v string) *PipelineContext {
10512	s.PipelineArn = &v
10513	return s
10514}
10515
10516// SetPipelineExecutionId sets the PipelineExecutionId field's value.
10517func (s *PipelineContext) SetPipelineExecutionId(v string) *PipelineContext {
10518	s.PipelineExecutionId = &v
10519	return s
10520}
10521
10522// SetPipelineName sets the PipelineName field's value.
10523func (s *PipelineContext) SetPipelineName(v string) *PipelineContext {
10524	s.PipelineName = &v
10525	return s
10526}
10527
10528// SetStage sets the Stage field's value.
10529func (s *PipelineContext) SetStage(v *StageContext) *PipelineContext {
10530	s.Stage = v
10531	return s
10532}
10533
10534// Represents the structure of actions and stages to be performed in the pipeline.
10535type PipelineDeclaration struct {
10536	_ struct{} `type:"structure"`
10537
10538	// Represents information about the S3 bucket where artifacts are stored for
10539	// the pipeline.
10540	//
10541	// You must include either artifactStore or artifactStores in your pipeline,
10542	// but you cannot use both. If you create a cross-region action in your pipeline,
10543	// you must use artifactStores.
10544	ArtifactStore *ArtifactStore `locationName:"artifactStore" type:"structure"`
10545
10546	// A mapping of artifactStore objects and their corresponding AWS Regions. There
10547	// must be an artifact store for the pipeline Region and for each cross-region
10548	// action in the pipeline.
10549	//
10550	// You must include either artifactStore or artifactStores in your pipeline,
10551	// but you cannot use both. If you create a cross-region action in your pipeline,
10552	// you must use artifactStores.
10553	ArtifactStores map[string]*ArtifactStore `locationName:"artifactStores" type:"map"`
10554
10555	// The name of the pipeline.
10556	//
10557	// Name is a required field
10558	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
10559
10560	// The Amazon Resource Name (ARN) for AWS CodePipeline to use to either perform
10561	// actions with no actionRoleArn, or to use to assume roles for actions with
10562	// an actionRoleArn.
10563	//
10564	// RoleArn is a required field
10565	RoleArn *string `locationName:"roleArn" type:"string" required:"true"`
10566
10567	// The stage in which to perform the action.
10568	//
10569	// Stages is a required field
10570	Stages []*StageDeclaration `locationName:"stages" type:"list" required:"true"`
10571
10572	// The version number of the pipeline. A new pipeline always has a version number
10573	// of 1. This number is incremented when a pipeline is updated.
10574	Version *int64 `locationName:"version" min:"1" type:"integer"`
10575}
10576
10577// String returns the string representation
10578func (s PipelineDeclaration) String() string {
10579	return awsutil.Prettify(s)
10580}
10581
10582// GoString returns the string representation
10583func (s PipelineDeclaration) GoString() string {
10584	return s.String()
10585}
10586
10587// Validate inspects the fields of the type to determine if they are valid.
10588func (s *PipelineDeclaration) Validate() error {
10589	invalidParams := request.ErrInvalidParams{Context: "PipelineDeclaration"}
10590	if s.Name == nil {
10591		invalidParams.Add(request.NewErrParamRequired("Name"))
10592	}
10593	if s.Name != nil && len(*s.Name) < 1 {
10594		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
10595	}
10596	if s.RoleArn == nil {
10597		invalidParams.Add(request.NewErrParamRequired("RoleArn"))
10598	}
10599	if s.Stages == nil {
10600		invalidParams.Add(request.NewErrParamRequired("Stages"))
10601	}
10602	if s.Version != nil && *s.Version < 1 {
10603		invalidParams.Add(request.NewErrParamMinValue("Version", 1))
10604	}
10605	if s.ArtifactStore != nil {
10606		if err := s.ArtifactStore.Validate(); err != nil {
10607			invalidParams.AddNested("ArtifactStore", err.(request.ErrInvalidParams))
10608		}
10609	}
10610	if s.ArtifactStores != nil {
10611		for i, v := range s.ArtifactStores {
10612			if v == nil {
10613				continue
10614			}
10615			if err := v.Validate(); err != nil {
10616				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "ArtifactStores", i), err.(request.ErrInvalidParams))
10617			}
10618		}
10619	}
10620	if s.Stages != nil {
10621		for i, v := range s.Stages {
10622			if v == nil {
10623				continue
10624			}
10625			if err := v.Validate(); err != nil {
10626				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Stages", i), err.(request.ErrInvalidParams))
10627			}
10628		}
10629	}
10630
10631	if invalidParams.Len() > 0 {
10632		return invalidParams
10633	}
10634	return nil
10635}
10636
10637// SetArtifactStore sets the ArtifactStore field's value.
10638func (s *PipelineDeclaration) SetArtifactStore(v *ArtifactStore) *PipelineDeclaration {
10639	s.ArtifactStore = v
10640	return s
10641}
10642
10643// SetArtifactStores sets the ArtifactStores field's value.
10644func (s *PipelineDeclaration) SetArtifactStores(v map[string]*ArtifactStore) *PipelineDeclaration {
10645	s.ArtifactStores = v
10646	return s
10647}
10648
10649// SetName sets the Name field's value.
10650func (s *PipelineDeclaration) SetName(v string) *PipelineDeclaration {
10651	s.Name = &v
10652	return s
10653}
10654
10655// SetRoleArn sets the RoleArn field's value.
10656func (s *PipelineDeclaration) SetRoleArn(v string) *PipelineDeclaration {
10657	s.RoleArn = &v
10658	return s
10659}
10660
10661// SetStages sets the Stages field's value.
10662func (s *PipelineDeclaration) SetStages(v []*StageDeclaration) *PipelineDeclaration {
10663	s.Stages = v
10664	return s
10665}
10666
10667// SetVersion sets the Version field's value.
10668func (s *PipelineDeclaration) SetVersion(v int64) *PipelineDeclaration {
10669	s.Version = &v
10670	return s
10671}
10672
10673// Represents information about an execution of a pipeline.
10674type PipelineExecution struct {
10675	_ struct{} `type:"structure"`
10676
10677	// A list of ArtifactRevision objects included in a pipeline execution.
10678	ArtifactRevisions []*ArtifactRevision `locationName:"artifactRevisions" type:"list"`
10679
10680	// The ID of the pipeline execution.
10681	PipelineExecutionId *string `locationName:"pipelineExecutionId" type:"string"`
10682
10683	// The name of the pipeline with the specified pipeline execution.
10684	PipelineName *string `locationName:"pipelineName" min:"1" type:"string"`
10685
10686	// The version number of the pipeline with the specified pipeline execution.
10687	PipelineVersion *int64 `locationName:"pipelineVersion" min:"1" type:"integer"`
10688
10689	// The status of the pipeline execution.
10690	//
10691	//    * Cancelled: The pipeline’s definition was updated before the pipeline
10692	//    execution could be completed.
10693	//
10694	//    * InProgress: The pipeline execution is currently running.
10695	//
10696	//    * Stopped: The pipeline execution was manually stopped. For more information,
10697	//    see Stopped Executions (https://docs.aws.amazon.com/codepipeline/latest/userguide/concepts.html#concepts-executions-stopped).
10698	//
10699	//    * Stopping: The pipeline execution received a request to be manually stopped.
10700	//    Depending on the selected stop mode, the execution is either completing
10701	//    or abandoning in-progress actions. For more information, see Stopped Executions
10702	//    (https://docs.aws.amazon.com/codepipeline/latest/userguide/concepts.html#concepts-executions-stopped).
10703	//
10704	//    * Succeeded: The pipeline execution was completed successfully.
10705	//
10706	//    * Superseded: While this pipeline execution was waiting for the next stage
10707	//    to be completed, a newer pipeline execution advanced and continued through
10708	//    the pipeline instead. For more information, see Superseded Executions
10709	//    (https://docs.aws.amazon.com/codepipeline/latest/userguide/concepts.html#concepts-superseded).
10710	//
10711	//    * Failed: The pipeline execution was not completed successfully.
10712	Status *string `locationName:"status" type:"string" enum:"PipelineExecutionStatus"`
10713
10714	// A summary that contains a description of the pipeline execution status.
10715	StatusSummary *string `locationName:"statusSummary" type:"string"`
10716}
10717
10718// String returns the string representation
10719func (s PipelineExecution) String() string {
10720	return awsutil.Prettify(s)
10721}
10722
10723// GoString returns the string representation
10724func (s PipelineExecution) GoString() string {
10725	return s.String()
10726}
10727
10728// SetArtifactRevisions sets the ArtifactRevisions field's value.
10729func (s *PipelineExecution) SetArtifactRevisions(v []*ArtifactRevision) *PipelineExecution {
10730	s.ArtifactRevisions = v
10731	return s
10732}
10733
10734// SetPipelineExecutionId sets the PipelineExecutionId field's value.
10735func (s *PipelineExecution) SetPipelineExecutionId(v string) *PipelineExecution {
10736	s.PipelineExecutionId = &v
10737	return s
10738}
10739
10740// SetPipelineName sets the PipelineName field's value.
10741func (s *PipelineExecution) SetPipelineName(v string) *PipelineExecution {
10742	s.PipelineName = &v
10743	return s
10744}
10745
10746// SetPipelineVersion sets the PipelineVersion field's value.
10747func (s *PipelineExecution) SetPipelineVersion(v int64) *PipelineExecution {
10748	s.PipelineVersion = &v
10749	return s
10750}
10751
10752// SetStatus sets the Status field's value.
10753func (s *PipelineExecution) SetStatus(v string) *PipelineExecution {
10754	s.Status = &v
10755	return s
10756}
10757
10758// SetStatusSummary sets the StatusSummary field's value.
10759func (s *PipelineExecution) SetStatusSummary(v string) *PipelineExecution {
10760	s.StatusSummary = &v
10761	return s
10762}
10763
10764// The pipeline execution was specified in an invalid format or cannot be found,
10765// or an execution ID does not belong to the specified pipeline.
10766type PipelineExecutionNotFoundException struct {
10767	_            struct{}                  `type:"structure"`
10768	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
10769
10770	Message_ *string `locationName:"message" type:"string"`
10771}
10772
10773// String returns the string representation
10774func (s PipelineExecutionNotFoundException) String() string {
10775	return awsutil.Prettify(s)
10776}
10777
10778// GoString returns the string representation
10779func (s PipelineExecutionNotFoundException) GoString() string {
10780	return s.String()
10781}
10782
10783func newErrorPipelineExecutionNotFoundException(v protocol.ResponseMetadata) error {
10784	return &PipelineExecutionNotFoundException{
10785		RespMetadata: v,
10786	}
10787}
10788
10789// Code returns the exception type name.
10790func (s *PipelineExecutionNotFoundException) Code() string {
10791	return "PipelineExecutionNotFoundException"
10792}
10793
10794// Message returns the exception's message.
10795func (s *PipelineExecutionNotFoundException) Message() string {
10796	if s.Message_ != nil {
10797		return *s.Message_
10798	}
10799	return ""
10800}
10801
10802// OrigErr always returns nil, satisfies awserr.Error interface.
10803func (s *PipelineExecutionNotFoundException) OrigErr() error {
10804	return nil
10805}
10806
10807func (s *PipelineExecutionNotFoundException) Error() string {
10808	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
10809}
10810
10811// Status code returns the HTTP status code for the request's response error.
10812func (s *PipelineExecutionNotFoundException) StatusCode() int {
10813	return s.RespMetadata.StatusCode
10814}
10815
10816// RequestID returns the service's response RequestID for request.
10817func (s *PipelineExecutionNotFoundException) RequestID() string {
10818	return s.RespMetadata.RequestID
10819}
10820
10821// Unable to stop the pipeline execution. The execution might already be in
10822// a Stopped state, or it might no longer be in progress.
10823type PipelineExecutionNotStoppableException struct {
10824	_            struct{}                  `type:"structure"`
10825	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
10826
10827	Message_ *string `locationName:"message" min:"1" type:"string"`
10828}
10829
10830// String returns the string representation
10831func (s PipelineExecutionNotStoppableException) String() string {
10832	return awsutil.Prettify(s)
10833}
10834
10835// GoString returns the string representation
10836func (s PipelineExecutionNotStoppableException) GoString() string {
10837	return s.String()
10838}
10839
10840func newErrorPipelineExecutionNotStoppableException(v protocol.ResponseMetadata) error {
10841	return &PipelineExecutionNotStoppableException{
10842		RespMetadata: v,
10843	}
10844}
10845
10846// Code returns the exception type name.
10847func (s *PipelineExecutionNotStoppableException) Code() string {
10848	return "PipelineExecutionNotStoppableException"
10849}
10850
10851// Message returns the exception's message.
10852func (s *PipelineExecutionNotStoppableException) Message() string {
10853	if s.Message_ != nil {
10854		return *s.Message_
10855	}
10856	return ""
10857}
10858
10859// OrigErr always returns nil, satisfies awserr.Error interface.
10860func (s *PipelineExecutionNotStoppableException) OrigErr() error {
10861	return nil
10862}
10863
10864func (s *PipelineExecutionNotStoppableException) Error() string {
10865	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
10866}
10867
10868// Status code returns the HTTP status code for the request's response error.
10869func (s *PipelineExecutionNotStoppableException) StatusCode() int {
10870	return s.RespMetadata.StatusCode
10871}
10872
10873// RequestID returns the service's response RequestID for request.
10874func (s *PipelineExecutionNotStoppableException) RequestID() string {
10875	return s.RespMetadata.RequestID
10876}
10877
10878// Summary information about a pipeline execution.
10879type PipelineExecutionSummary struct {
10880	_ struct{} `type:"structure"`
10881
10882	// The date and time of the last change to the pipeline execution, in timestamp
10883	// format.
10884	LastUpdateTime *time.Time `locationName:"lastUpdateTime" type:"timestamp"`
10885
10886	// The ID of the pipeline execution.
10887	PipelineExecutionId *string `locationName:"pipelineExecutionId" type:"string"`
10888
10889	// A list of the source artifact revisions that initiated a pipeline execution.
10890	SourceRevisions []*SourceRevision `locationName:"sourceRevisions" type:"list"`
10891
10892	// The date and time when the pipeline execution began, in timestamp format.
10893	StartTime *time.Time `locationName:"startTime" type:"timestamp"`
10894
10895	// The status of the pipeline execution.
10896	//
10897	//    * InProgress: The pipeline execution is currently running.
10898	//
10899	//    * Stopped: The pipeline execution was manually stopped. For more information,
10900	//    see Stopped Executions (https://docs.aws.amazon.com/codepipeline/latest/userguide/concepts.html#concepts-executions-stopped).
10901	//
10902	//    * Stopping: The pipeline execution received a request to be manually stopped.
10903	//    Depending on the selected stop mode, the execution is either completing
10904	//    or abandoning in-progress actions. For more information, see Stopped Executions
10905	//    (https://docs.aws.amazon.com/codepipeline/latest/userguide/concepts.html#concepts-executions-stopped).
10906	//
10907	//    * Succeeded: The pipeline execution was completed successfully.
10908	//
10909	//    * Superseded: While this pipeline execution was waiting for the next stage
10910	//    to be completed, a newer pipeline execution advanced and continued through
10911	//    the pipeline instead. For more information, see Superseded Executions
10912	//    (https://docs.aws.amazon.com/codepipeline/latest/userguide/concepts.html#concepts-superseded).
10913	//
10914	//    * Failed: The pipeline execution was not completed successfully.
10915	Status *string `locationName:"status" type:"string" enum:"PipelineExecutionStatus"`
10916
10917	// The interaction that stopped a pipeline execution.
10918	StopTrigger *StopExecutionTrigger `locationName:"stopTrigger" type:"structure"`
10919
10920	// The interaction or event that started a pipeline execution, such as automated
10921	// change detection or a StartPipelineExecution API call.
10922	Trigger *ExecutionTrigger `locationName:"trigger" type:"structure"`
10923}
10924
10925// String returns the string representation
10926func (s PipelineExecutionSummary) String() string {
10927	return awsutil.Prettify(s)
10928}
10929
10930// GoString returns the string representation
10931func (s PipelineExecutionSummary) GoString() string {
10932	return s.String()
10933}
10934
10935// SetLastUpdateTime sets the LastUpdateTime field's value.
10936func (s *PipelineExecutionSummary) SetLastUpdateTime(v time.Time) *PipelineExecutionSummary {
10937	s.LastUpdateTime = &v
10938	return s
10939}
10940
10941// SetPipelineExecutionId sets the PipelineExecutionId field's value.
10942func (s *PipelineExecutionSummary) SetPipelineExecutionId(v string) *PipelineExecutionSummary {
10943	s.PipelineExecutionId = &v
10944	return s
10945}
10946
10947// SetSourceRevisions sets the SourceRevisions field's value.
10948func (s *PipelineExecutionSummary) SetSourceRevisions(v []*SourceRevision) *PipelineExecutionSummary {
10949	s.SourceRevisions = v
10950	return s
10951}
10952
10953// SetStartTime sets the StartTime field's value.
10954func (s *PipelineExecutionSummary) SetStartTime(v time.Time) *PipelineExecutionSummary {
10955	s.StartTime = &v
10956	return s
10957}
10958
10959// SetStatus sets the Status field's value.
10960func (s *PipelineExecutionSummary) SetStatus(v string) *PipelineExecutionSummary {
10961	s.Status = &v
10962	return s
10963}
10964
10965// SetStopTrigger sets the StopTrigger field's value.
10966func (s *PipelineExecutionSummary) SetStopTrigger(v *StopExecutionTrigger) *PipelineExecutionSummary {
10967	s.StopTrigger = v
10968	return s
10969}
10970
10971// SetTrigger sets the Trigger field's value.
10972func (s *PipelineExecutionSummary) SetTrigger(v *ExecutionTrigger) *PipelineExecutionSummary {
10973	s.Trigger = v
10974	return s
10975}
10976
10977// Information about a pipeline.
10978type PipelineMetadata struct {
10979	_ struct{} `type:"structure"`
10980
10981	// The date and time the pipeline was created, in timestamp format.
10982	Created *time.Time `locationName:"created" type:"timestamp"`
10983
10984	// The Amazon Resource Name (ARN) of the pipeline.
10985	PipelineArn *string `locationName:"pipelineArn" type:"string"`
10986
10987	// The date and time the pipeline was last updated, in timestamp format.
10988	Updated *time.Time `locationName:"updated" type:"timestamp"`
10989}
10990
10991// String returns the string representation
10992func (s PipelineMetadata) String() string {
10993	return awsutil.Prettify(s)
10994}
10995
10996// GoString returns the string representation
10997func (s PipelineMetadata) GoString() string {
10998	return s.String()
10999}
11000
11001// SetCreated sets the Created field's value.
11002func (s *PipelineMetadata) SetCreated(v time.Time) *PipelineMetadata {
11003	s.Created = &v
11004	return s
11005}
11006
11007// SetPipelineArn sets the PipelineArn field's value.
11008func (s *PipelineMetadata) SetPipelineArn(v string) *PipelineMetadata {
11009	s.PipelineArn = &v
11010	return s
11011}
11012
11013// SetUpdated sets the Updated field's value.
11014func (s *PipelineMetadata) SetUpdated(v time.Time) *PipelineMetadata {
11015	s.Updated = &v
11016	return s
11017}
11018
11019// The specified pipeline name is already in use.
11020type PipelineNameInUseException struct {
11021	_            struct{}                  `type:"structure"`
11022	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
11023
11024	Message_ *string `locationName:"message" type:"string"`
11025}
11026
11027// String returns the string representation
11028func (s PipelineNameInUseException) String() string {
11029	return awsutil.Prettify(s)
11030}
11031
11032// GoString returns the string representation
11033func (s PipelineNameInUseException) GoString() string {
11034	return s.String()
11035}
11036
11037func newErrorPipelineNameInUseException(v protocol.ResponseMetadata) error {
11038	return &PipelineNameInUseException{
11039		RespMetadata: v,
11040	}
11041}
11042
11043// Code returns the exception type name.
11044func (s *PipelineNameInUseException) Code() string {
11045	return "PipelineNameInUseException"
11046}
11047
11048// Message returns the exception's message.
11049func (s *PipelineNameInUseException) Message() string {
11050	if s.Message_ != nil {
11051		return *s.Message_
11052	}
11053	return ""
11054}
11055
11056// OrigErr always returns nil, satisfies awserr.Error interface.
11057func (s *PipelineNameInUseException) OrigErr() error {
11058	return nil
11059}
11060
11061func (s *PipelineNameInUseException) Error() string {
11062	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
11063}
11064
11065// Status code returns the HTTP status code for the request's response error.
11066func (s *PipelineNameInUseException) StatusCode() int {
11067	return s.RespMetadata.StatusCode
11068}
11069
11070// RequestID returns the service's response RequestID for request.
11071func (s *PipelineNameInUseException) RequestID() string {
11072	return s.RespMetadata.RequestID
11073}
11074
11075// The pipeline was specified in an invalid format or cannot be found.
11076type PipelineNotFoundException struct {
11077	_            struct{}                  `type:"structure"`
11078	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
11079
11080	Message_ *string `locationName:"message" type:"string"`
11081}
11082
11083// String returns the string representation
11084func (s PipelineNotFoundException) String() string {
11085	return awsutil.Prettify(s)
11086}
11087
11088// GoString returns the string representation
11089func (s PipelineNotFoundException) GoString() string {
11090	return s.String()
11091}
11092
11093func newErrorPipelineNotFoundException(v protocol.ResponseMetadata) error {
11094	return &PipelineNotFoundException{
11095		RespMetadata: v,
11096	}
11097}
11098
11099// Code returns the exception type name.
11100func (s *PipelineNotFoundException) Code() string {
11101	return "PipelineNotFoundException"
11102}
11103
11104// Message returns the exception's message.
11105func (s *PipelineNotFoundException) Message() string {
11106	if s.Message_ != nil {
11107		return *s.Message_
11108	}
11109	return ""
11110}
11111
11112// OrigErr always returns nil, satisfies awserr.Error interface.
11113func (s *PipelineNotFoundException) OrigErr() error {
11114	return nil
11115}
11116
11117func (s *PipelineNotFoundException) Error() string {
11118	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
11119}
11120
11121// Status code returns the HTTP status code for the request's response error.
11122func (s *PipelineNotFoundException) StatusCode() int {
11123	return s.RespMetadata.StatusCode
11124}
11125
11126// RequestID returns the service's response RequestID for request.
11127func (s *PipelineNotFoundException) RequestID() string {
11128	return s.RespMetadata.RequestID
11129}
11130
11131// Returns a summary of a pipeline.
11132type PipelineSummary struct {
11133	_ struct{} `type:"structure"`
11134
11135	// The date and time the pipeline was created, in timestamp format.
11136	Created *time.Time `locationName:"created" type:"timestamp"`
11137
11138	// The name of the pipeline.
11139	Name *string `locationName:"name" min:"1" type:"string"`
11140
11141	// The date and time of the last update to the pipeline, in timestamp format.
11142	Updated *time.Time `locationName:"updated" type:"timestamp"`
11143
11144	// The version number of the pipeline.
11145	Version *int64 `locationName:"version" min:"1" type:"integer"`
11146}
11147
11148// String returns the string representation
11149func (s PipelineSummary) String() string {
11150	return awsutil.Prettify(s)
11151}
11152
11153// GoString returns the string representation
11154func (s PipelineSummary) GoString() string {
11155	return s.String()
11156}
11157
11158// SetCreated sets the Created field's value.
11159func (s *PipelineSummary) SetCreated(v time.Time) *PipelineSummary {
11160	s.Created = &v
11161	return s
11162}
11163
11164// SetName sets the Name field's value.
11165func (s *PipelineSummary) SetName(v string) *PipelineSummary {
11166	s.Name = &v
11167	return s
11168}
11169
11170// SetUpdated sets the Updated field's value.
11171func (s *PipelineSummary) SetUpdated(v time.Time) *PipelineSummary {
11172	s.Updated = &v
11173	return s
11174}
11175
11176// SetVersion sets the Version field's value.
11177func (s *PipelineSummary) SetVersion(v int64) *PipelineSummary {
11178	s.Version = &v
11179	return s
11180}
11181
11182// The pipeline version was specified in an invalid format or cannot be found.
11183type PipelineVersionNotFoundException struct {
11184	_            struct{}                  `type:"structure"`
11185	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
11186
11187	Message_ *string `locationName:"message" type:"string"`
11188}
11189
11190// String returns the string representation
11191func (s PipelineVersionNotFoundException) String() string {
11192	return awsutil.Prettify(s)
11193}
11194
11195// GoString returns the string representation
11196func (s PipelineVersionNotFoundException) GoString() string {
11197	return s.String()
11198}
11199
11200func newErrorPipelineVersionNotFoundException(v protocol.ResponseMetadata) error {
11201	return &PipelineVersionNotFoundException{
11202		RespMetadata: v,
11203	}
11204}
11205
11206// Code returns the exception type name.
11207func (s *PipelineVersionNotFoundException) Code() string {
11208	return "PipelineVersionNotFoundException"
11209}
11210
11211// Message returns the exception's message.
11212func (s *PipelineVersionNotFoundException) Message() string {
11213	if s.Message_ != nil {
11214		return *s.Message_
11215	}
11216	return ""
11217}
11218
11219// OrigErr always returns nil, satisfies awserr.Error interface.
11220func (s *PipelineVersionNotFoundException) OrigErr() error {
11221	return nil
11222}
11223
11224func (s *PipelineVersionNotFoundException) Error() string {
11225	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
11226}
11227
11228// Status code returns the HTTP status code for the request's response error.
11229func (s *PipelineVersionNotFoundException) StatusCode() int {
11230	return s.RespMetadata.StatusCode
11231}
11232
11233// RequestID returns the service's response RequestID for request.
11234func (s *PipelineVersionNotFoundException) RequestID() string {
11235	return s.RespMetadata.RequestID
11236}
11237
11238// Represents the input of a PollForJobs action.
11239type PollForJobsInput struct {
11240	_ struct{} `type:"structure"`
11241
11242	// Represents information about an action type.
11243	//
11244	// ActionTypeId is a required field
11245	ActionTypeId *ActionTypeId `locationName:"actionTypeId" type:"structure" required:"true"`
11246
11247	// The maximum number of jobs to return in a poll for jobs call.
11248	MaxBatchSize *int64 `locationName:"maxBatchSize" min:"1" type:"integer"`
11249
11250	// A map of property names and values. For an action type with no queryable
11251	// properties, this value must be null or an empty map. For an action type with
11252	// a queryable property, you must supply that property as a key in the map.
11253	// Only jobs whose action configuration matches the mapped value are returned.
11254	QueryParam map[string]*string `locationName:"queryParam" type:"map"`
11255}
11256
11257// String returns the string representation
11258func (s PollForJobsInput) String() string {
11259	return awsutil.Prettify(s)
11260}
11261
11262// GoString returns the string representation
11263func (s PollForJobsInput) GoString() string {
11264	return s.String()
11265}
11266
11267// Validate inspects the fields of the type to determine if they are valid.
11268func (s *PollForJobsInput) Validate() error {
11269	invalidParams := request.ErrInvalidParams{Context: "PollForJobsInput"}
11270	if s.ActionTypeId == nil {
11271		invalidParams.Add(request.NewErrParamRequired("ActionTypeId"))
11272	}
11273	if s.MaxBatchSize != nil && *s.MaxBatchSize < 1 {
11274		invalidParams.Add(request.NewErrParamMinValue("MaxBatchSize", 1))
11275	}
11276	if s.ActionTypeId != nil {
11277		if err := s.ActionTypeId.Validate(); err != nil {
11278			invalidParams.AddNested("ActionTypeId", err.(request.ErrInvalidParams))
11279		}
11280	}
11281
11282	if invalidParams.Len() > 0 {
11283		return invalidParams
11284	}
11285	return nil
11286}
11287
11288// SetActionTypeId sets the ActionTypeId field's value.
11289func (s *PollForJobsInput) SetActionTypeId(v *ActionTypeId) *PollForJobsInput {
11290	s.ActionTypeId = v
11291	return s
11292}
11293
11294// SetMaxBatchSize sets the MaxBatchSize field's value.
11295func (s *PollForJobsInput) SetMaxBatchSize(v int64) *PollForJobsInput {
11296	s.MaxBatchSize = &v
11297	return s
11298}
11299
11300// SetQueryParam sets the QueryParam field's value.
11301func (s *PollForJobsInput) SetQueryParam(v map[string]*string) *PollForJobsInput {
11302	s.QueryParam = v
11303	return s
11304}
11305
11306// Represents the output of a PollForJobs action.
11307type PollForJobsOutput struct {
11308	_ struct{} `type:"structure"`
11309
11310	// Information about the jobs to take action on.
11311	Jobs []*Job `locationName:"jobs" type:"list"`
11312}
11313
11314// String returns the string representation
11315func (s PollForJobsOutput) String() string {
11316	return awsutil.Prettify(s)
11317}
11318
11319// GoString returns the string representation
11320func (s PollForJobsOutput) GoString() string {
11321	return s.String()
11322}
11323
11324// SetJobs sets the Jobs field's value.
11325func (s *PollForJobsOutput) SetJobs(v []*Job) *PollForJobsOutput {
11326	s.Jobs = v
11327	return s
11328}
11329
11330// Represents the input of a PollForThirdPartyJobs action.
11331type PollForThirdPartyJobsInput struct {
11332	_ struct{} `type:"structure"`
11333
11334	// Represents information about an action type.
11335	//
11336	// ActionTypeId is a required field
11337	ActionTypeId *ActionTypeId `locationName:"actionTypeId" type:"structure" required:"true"`
11338
11339	// The maximum number of jobs to return in a poll for jobs call.
11340	MaxBatchSize *int64 `locationName:"maxBatchSize" min:"1" type:"integer"`
11341}
11342
11343// String returns the string representation
11344func (s PollForThirdPartyJobsInput) String() string {
11345	return awsutil.Prettify(s)
11346}
11347
11348// GoString returns the string representation
11349func (s PollForThirdPartyJobsInput) GoString() string {
11350	return s.String()
11351}
11352
11353// Validate inspects the fields of the type to determine if they are valid.
11354func (s *PollForThirdPartyJobsInput) Validate() error {
11355	invalidParams := request.ErrInvalidParams{Context: "PollForThirdPartyJobsInput"}
11356	if s.ActionTypeId == nil {
11357		invalidParams.Add(request.NewErrParamRequired("ActionTypeId"))
11358	}
11359	if s.MaxBatchSize != nil && *s.MaxBatchSize < 1 {
11360		invalidParams.Add(request.NewErrParamMinValue("MaxBatchSize", 1))
11361	}
11362	if s.ActionTypeId != nil {
11363		if err := s.ActionTypeId.Validate(); err != nil {
11364			invalidParams.AddNested("ActionTypeId", err.(request.ErrInvalidParams))
11365		}
11366	}
11367
11368	if invalidParams.Len() > 0 {
11369		return invalidParams
11370	}
11371	return nil
11372}
11373
11374// SetActionTypeId sets the ActionTypeId field's value.
11375func (s *PollForThirdPartyJobsInput) SetActionTypeId(v *ActionTypeId) *PollForThirdPartyJobsInput {
11376	s.ActionTypeId = v
11377	return s
11378}
11379
11380// SetMaxBatchSize sets the MaxBatchSize field's value.
11381func (s *PollForThirdPartyJobsInput) SetMaxBatchSize(v int64) *PollForThirdPartyJobsInput {
11382	s.MaxBatchSize = &v
11383	return s
11384}
11385
11386// Represents the output of a PollForThirdPartyJobs action.
11387type PollForThirdPartyJobsOutput struct {
11388	_ struct{} `type:"structure"`
11389
11390	// Information about the jobs to take action on.
11391	Jobs []*ThirdPartyJob `locationName:"jobs" type:"list"`
11392}
11393
11394// String returns the string representation
11395func (s PollForThirdPartyJobsOutput) String() string {
11396	return awsutil.Prettify(s)
11397}
11398
11399// GoString returns the string representation
11400func (s PollForThirdPartyJobsOutput) GoString() string {
11401	return s.String()
11402}
11403
11404// SetJobs sets the Jobs field's value.
11405func (s *PollForThirdPartyJobsOutput) SetJobs(v []*ThirdPartyJob) *PollForThirdPartyJobsOutput {
11406	s.Jobs = v
11407	return s
11408}
11409
11410// Represents the input of a PutActionRevision action.
11411type PutActionRevisionInput struct {
11412	_ struct{} `type:"structure"`
11413
11414	// The name of the action that processes the revision.
11415	//
11416	// ActionName is a required field
11417	ActionName *string `locationName:"actionName" min:"1" type:"string" required:"true"`
11418
11419	// Represents information about the version (or revision) of an action.
11420	//
11421	// ActionRevision is a required field
11422	ActionRevision *ActionRevision `locationName:"actionRevision" type:"structure" required:"true"`
11423
11424	// The name of the pipeline that starts processing the revision to the source.
11425	//
11426	// PipelineName is a required field
11427	PipelineName *string `locationName:"pipelineName" min:"1" type:"string" required:"true"`
11428
11429	// The name of the stage that contains the action that acts on the revision.
11430	//
11431	// StageName is a required field
11432	StageName *string `locationName:"stageName" min:"1" type:"string" required:"true"`
11433}
11434
11435// String returns the string representation
11436func (s PutActionRevisionInput) String() string {
11437	return awsutil.Prettify(s)
11438}
11439
11440// GoString returns the string representation
11441func (s PutActionRevisionInput) GoString() string {
11442	return s.String()
11443}
11444
11445// Validate inspects the fields of the type to determine if they are valid.
11446func (s *PutActionRevisionInput) Validate() error {
11447	invalidParams := request.ErrInvalidParams{Context: "PutActionRevisionInput"}
11448	if s.ActionName == nil {
11449		invalidParams.Add(request.NewErrParamRequired("ActionName"))
11450	}
11451	if s.ActionName != nil && len(*s.ActionName) < 1 {
11452		invalidParams.Add(request.NewErrParamMinLen("ActionName", 1))
11453	}
11454	if s.ActionRevision == nil {
11455		invalidParams.Add(request.NewErrParamRequired("ActionRevision"))
11456	}
11457	if s.PipelineName == nil {
11458		invalidParams.Add(request.NewErrParamRequired("PipelineName"))
11459	}
11460	if s.PipelineName != nil && len(*s.PipelineName) < 1 {
11461		invalidParams.Add(request.NewErrParamMinLen("PipelineName", 1))
11462	}
11463	if s.StageName == nil {
11464		invalidParams.Add(request.NewErrParamRequired("StageName"))
11465	}
11466	if s.StageName != nil && len(*s.StageName) < 1 {
11467		invalidParams.Add(request.NewErrParamMinLen("StageName", 1))
11468	}
11469	if s.ActionRevision != nil {
11470		if err := s.ActionRevision.Validate(); err != nil {
11471			invalidParams.AddNested("ActionRevision", err.(request.ErrInvalidParams))
11472		}
11473	}
11474
11475	if invalidParams.Len() > 0 {
11476		return invalidParams
11477	}
11478	return nil
11479}
11480
11481// SetActionName sets the ActionName field's value.
11482func (s *PutActionRevisionInput) SetActionName(v string) *PutActionRevisionInput {
11483	s.ActionName = &v
11484	return s
11485}
11486
11487// SetActionRevision sets the ActionRevision field's value.
11488func (s *PutActionRevisionInput) SetActionRevision(v *ActionRevision) *PutActionRevisionInput {
11489	s.ActionRevision = v
11490	return s
11491}
11492
11493// SetPipelineName sets the PipelineName field's value.
11494func (s *PutActionRevisionInput) SetPipelineName(v string) *PutActionRevisionInput {
11495	s.PipelineName = &v
11496	return s
11497}
11498
11499// SetStageName sets the StageName field's value.
11500func (s *PutActionRevisionInput) SetStageName(v string) *PutActionRevisionInput {
11501	s.StageName = &v
11502	return s
11503}
11504
11505// Represents the output of a PutActionRevision action.
11506type PutActionRevisionOutput struct {
11507	_ struct{} `type:"structure"`
11508
11509	// Indicates whether the artifact revision was previously used in an execution
11510	// of the specified pipeline.
11511	NewRevision *bool `locationName:"newRevision" type:"boolean"`
11512
11513	// The ID of the current workflow state of the pipeline.
11514	PipelineExecutionId *string `locationName:"pipelineExecutionId" type:"string"`
11515}
11516
11517// String returns the string representation
11518func (s PutActionRevisionOutput) String() string {
11519	return awsutil.Prettify(s)
11520}
11521
11522// GoString returns the string representation
11523func (s PutActionRevisionOutput) GoString() string {
11524	return s.String()
11525}
11526
11527// SetNewRevision sets the NewRevision field's value.
11528func (s *PutActionRevisionOutput) SetNewRevision(v bool) *PutActionRevisionOutput {
11529	s.NewRevision = &v
11530	return s
11531}
11532
11533// SetPipelineExecutionId sets the PipelineExecutionId field's value.
11534func (s *PutActionRevisionOutput) SetPipelineExecutionId(v string) *PutActionRevisionOutput {
11535	s.PipelineExecutionId = &v
11536	return s
11537}
11538
11539// Represents the input of a PutApprovalResult action.
11540type PutApprovalResultInput struct {
11541	_ struct{} `type:"structure"`
11542
11543	// The name of the action for which approval is requested.
11544	//
11545	// ActionName is a required field
11546	ActionName *string `locationName:"actionName" min:"1" type:"string" required:"true"`
11547
11548	// The name of the pipeline that contains the action.
11549	//
11550	// PipelineName is a required field
11551	PipelineName *string `locationName:"pipelineName" min:"1" type:"string" required:"true"`
11552
11553	// Represents information about the result of the approval request.
11554	//
11555	// Result is a required field
11556	Result *ApprovalResult `locationName:"result" type:"structure" required:"true"`
11557
11558	// The name of the stage that contains the action.
11559	//
11560	// StageName is a required field
11561	StageName *string `locationName:"stageName" min:"1" type:"string" required:"true"`
11562
11563	// The system-generated token used to identify a unique approval request. The
11564	// token for each open approval request can be obtained using the GetPipelineState
11565	// action. It is used to validate that the approval request corresponding to
11566	// this token is still valid.
11567	//
11568	// Token is a required field
11569	Token *string `locationName:"token" type:"string" required:"true"`
11570}
11571
11572// String returns the string representation
11573func (s PutApprovalResultInput) String() string {
11574	return awsutil.Prettify(s)
11575}
11576
11577// GoString returns the string representation
11578func (s PutApprovalResultInput) GoString() string {
11579	return s.String()
11580}
11581
11582// Validate inspects the fields of the type to determine if they are valid.
11583func (s *PutApprovalResultInput) Validate() error {
11584	invalidParams := request.ErrInvalidParams{Context: "PutApprovalResultInput"}
11585	if s.ActionName == nil {
11586		invalidParams.Add(request.NewErrParamRequired("ActionName"))
11587	}
11588	if s.ActionName != nil && len(*s.ActionName) < 1 {
11589		invalidParams.Add(request.NewErrParamMinLen("ActionName", 1))
11590	}
11591	if s.PipelineName == nil {
11592		invalidParams.Add(request.NewErrParamRequired("PipelineName"))
11593	}
11594	if s.PipelineName != nil && len(*s.PipelineName) < 1 {
11595		invalidParams.Add(request.NewErrParamMinLen("PipelineName", 1))
11596	}
11597	if s.Result == nil {
11598		invalidParams.Add(request.NewErrParamRequired("Result"))
11599	}
11600	if s.StageName == nil {
11601		invalidParams.Add(request.NewErrParamRequired("StageName"))
11602	}
11603	if s.StageName != nil && len(*s.StageName) < 1 {
11604		invalidParams.Add(request.NewErrParamMinLen("StageName", 1))
11605	}
11606	if s.Token == nil {
11607		invalidParams.Add(request.NewErrParamRequired("Token"))
11608	}
11609	if s.Result != nil {
11610		if err := s.Result.Validate(); err != nil {
11611			invalidParams.AddNested("Result", err.(request.ErrInvalidParams))
11612		}
11613	}
11614
11615	if invalidParams.Len() > 0 {
11616		return invalidParams
11617	}
11618	return nil
11619}
11620
11621// SetActionName sets the ActionName field's value.
11622func (s *PutApprovalResultInput) SetActionName(v string) *PutApprovalResultInput {
11623	s.ActionName = &v
11624	return s
11625}
11626
11627// SetPipelineName sets the PipelineName field's value.
11628func (s *PutApprovalResultInput) SetPipelineName(v string) *PutApprovalResultInput {
11629	s.PipelineName = &v
11630	return s
11631}
11632
11633// SetResult sets the Result field's value.
11634func (s *PutApprovalResultInput) SetResult(v *ApprovalResult) *PutApprovalResultInput {
11635	s.Result = v
11636	return s
11637}
11638
11639// SetStageName sets the StageName field's value.
11640func (s *PutApprovalResultInput) SetStageName(v string) *PutApprovalResultInput {
11641	s.StageName = &v
11642	return s
11643}
11644
11645// SetToken sets the Token field's value.
11646func (s *PutApprovalResultInput) SetToken(v string) *PutApprovalResultInput {
11647	s.Token = &v
11648	return s
11649}
11650
11651// Represents the output of a PutApprovalResult action.
11652type PutApprovalResultOutput struct {
11653	_ struct{} `type:"structure"`
11654
11655	// The timestamp showing when the approval or rejection was submitted.
11656	ApprovedAt *time.Time `locationName:"approvedAt" type:"timestamp"`
11657}
11658
11659// String returns the string representation
11660func (s PutApprovalResultOutput) String() string {
11661	return awsutil.Prettify(s)
11662}
11663
11664// GoString returns the string representation
11665func (s PutApprovalResultOutput) GoString() string {
11666	return s.String()
11667}
11668
11669// SetApprovedAt sets the ApprovedAt field's value.
11670func (s *PutApprovalResultOutput) SetApprovedAt(v time.Time) *PutApprovalResultOutput {
11671	s.ApprovedAt = &v
11672	return s
11673}
11674
11675// Represents the input of a PutJobFailureResult action.
11676type PutJobFailureResultInput struct {
11677	_ struct{} `type:"structure"`
11678
11679	// The details about the failure of a job.
11680	//
11681	// FailureDetails is a required field
11682	FailureDetails *FailureDetails `locationName:"failureDetails" type:"structure" required:"true"`
11683
11684	// The unique system-generated ID of the job that failed. This is the same ID
11685	// returned from PollForJobs.
11686	//
11687	// JobId is a required field
11688	JobId *string `locationName:"jobId" type:"string" required:"true"`
11689}
11690
11691// String returns the string representation
11692func (s PutJobFailureResultInput) String() string {
11693	return awsutil.Prettify(s)
11694}
11695
11696// GoString returns the string representation
11697func (s PutJobFailureResultInput) GoString() string {
11698	return s.String()
11699}
11700
11701// Validate inspects the fields of the type to determine if they are valid.
11702func (s *PutJobFailureResultInput) Validate() error {
11703	invalidParams := request.ErrInvalidParams{Context: "PutJobFailureResultInput"}
11704	if s.FailureDetails == nil {
11705		invalidParams.Add(request.NewErrParamRequired("FailureDetails"))
11706	}
11707	if s.JobId == nil {
11708		invalidParams.Add(request.NewErrParamRequired("JobId"))
11709	}
11710	if s.FailureDetails != nil {
11711		if err := s.FailureDetails.Validate(); err != nil {
11712			invalidParams.AddNested("FailureDetails", err.(request.ErrInvalidParams))
11713		}
11714	}
11715
11716	if invalidParams.Len() > 0 {
11717		return invalidParams
11718	}
11719	return nil
11720}
11721
11722// SetFailureDetails sets the FailureDetails field's value.
11723func (s *PutJobFailureResultInput) SetFailureDetails(v *FailureDetails) *PutJobFailureResultInput {
11724	s.FailureDetails = v
11725	return s
11726}
11727
11728// SetJobId sets the JobId field's value.
11729func (s *PutJobFailureResultInput) SetJobId(v string) *PutJobFailureResultInput {
11730	s.JobId = &v
11731	return s
11732}
11733
11734type PutJobFailureResultOutput struct {
11735	_ struct{} `type:"structure"`
11736}
11737
11738// String returns the string representation
11739func (s PutJobFailureResultOutput) String() string {
11740	return awsutil.Prettify(s)
11741}
11742
11743// GoString returns the string representation
11744func (s PutJobFailureResultOutput) GoString() string {
11745	return s.String()
11746}
11747
11748// Represents the input of a PutJobSuccessResult action.
11749type PutJobSuccessResultInput struct {
11750	_ struct{} `type:"structure"`
11751
11752	// A token generated by a job worker, such as an AWS CodeDeploy deployment ID,
11753	// that a successful job provides to identify a custom action in progress. Future
11754	// jobs use this token to identify the running instance of the action. It can
11755	// be reused to return more information about the progress of the custom action.
11756	// When the action is complete, no continuation token should be supplied.
11757	ContinuationToken *string `locationName:"continuationToken" min:"1" type:"string"`
11758
11759	// The ID of the current revision of the artifact successfully worked on by
11760	// the job.
11761	CurrentRevision *CurrentRevision `locationName:"currentRevision" type:"structure"`
11762
11763	// The execution details of the successful job, such as the actions taken by
11764	// the job worker.
11765	ExecutionDetails *ExecutionDetails `locationName:"executionDetails" type:"structure"`
11766
11767	// The unique system-generated ID of the job that succeeded. This is the same
11768	// ID returned from PollForJobs.
11769	//
11770	// JobId is a required field
11771	JobId *string `locationName:"jobId" type:"string" required:"true"`
11772
11773	// Key-value pairs produced as output by a job worker that can be made available
11774	// to a downstream action configuration. outputVariables can be included only
11775	// when there is no continuation token on the request.
11776	OutputVariables map[string]*string `locationName:"outputVariables" type:"map"`
11777}
11778
11779// String returns the string representation
11780func (s PutJobSuccessResultInput) String() string {
11781	return awsutil.Prettify(s)
11782}
11783
11784// GoString returns the string representation
11785func (s PutJobSuccessResultInput) GoString() string {
11786	return s.String()
11787}
11788
11789// Validate inspects the fields of the type to determine if they are valid.
11790func (s *PutJobSuccessResultInput) Validate() error {
11791	invalidParams := request.ErrInvalidParams{Context: "PutJobSuccessResultInput"}
11792	if s.ContinuationToken != nil && len(*s.ContinuationToken) < 1 {
11793		invalidParams.Add(request.NewErrParamMinLen("ContinuationToken", 1))
11794	}
11795	if s.JobId == nil {
11796		invalidParams.Add(request.NewErrParamRequired("JobId"))
11797	}
11798	if s.CurrentRevision != nil {
11799		if err := s.CurrentRevision.Validate(); err != nil {
11800			invalidParams.AddNested("CurrentRevision", err.(request.ErrInvalidParams))
11801		}
11802	}
11803	if s.ExecutionDetails != nil {
11804		if err := s.ExecutionDetails.Validate(); err != nil {
11805			invalidParams.AddNested("ExecutionDetails", err.(request.ErrInvalidParams))
11806		}
11807	}
11808
11809	if invalidParams.Len() > 0 {
11810		return invalidParams
11811	}
11812	return nil
11813}
11814
11815// SetContinuationToken sets the ContinuationToken field's value.
11816func (s *PutJobSuccessResultInput) SetContinuationToken(v string) *PutJobSuccessResultInput {
11817	s.ContinuationToken = &v
11818	return s
11819}
11820
11821// SetCurrentRevision sets the CurrentRevision field's value.
11822func (s *PutJobSuccessResultInput) SetCurrentRevision(v *CurrentRevision) *PutJobSuccessResultInput {
11823	s.CurrentRevision = v
11824	return s
11825}
11826
11827// SetExecutionDetails sets the ExecutionDetails field's value.
11828func (s *PutJobSuccessResultInput) SetExecutionDetails(v *ExecutionDetails) *PutJobSuccessResultInput {
11829	s.ExecutionDetails = v
11830	return s
11831}
11832
11833// SetJobId sets the JobId field's value.
11834func (s *PutJobSuccessResultInput) SetJobId(v string) *PutJobSuccessResultInput {
11835	s.JobId = &v
11836	return s
11837}
11838
11839// SetOutputVariables sets the OutputVariables field's value.
11840func (s *PutJobSuccessResultInput) SetOutputVariables(v map[string]*string) *PutJobSuccessResultInput {
11841	s.OutputVariables = v
11842	return s
11843}
11844
11845type PutJobSuccessResultOutput struct {
11846	_ struct{} `type:"structure"`
11847}
11848
11849// String returns the string representation
11850func (s PutJobSuccessResultOutput) String() string {
11851	return awsutil.Prettify(s)
11852}
11853
11854// GoString returns the string representation
11855func (s PutJobSuccessResultOutput) GoString() string {
11856	return s.String()
11857}
11858
11859// Represents the input of a PutThirdPartyJobFailureResult action.
11860type PutThirdPartyJobFailureResultInput struct {
11861	_ struct{} `type:"structure"`
11862
11863	// The clientToken portion of the clientId and clientToken pair used to verify
11864	// that the calling entity is allowed access to the job and its details.
11865	//
11866	// ClientToken is a required field
11867	ClientToken *string `locationName:"clientToken" min:"1" type:"string" required:"true"`
11868
11869	// Represents information about failure details.
11870	//
11871	// FailureDetails is a required field
11872	FailureDetails *FailureDetails `locationName:"failureDetails" type:"structure" required:"true"`
11873
11874	// The ID of the job that failed. This is the same ID returned from PollForThirdPartyJobs.
11875	//
11876	// JobId is a required field
11877	JobId *string `locationName:"jobId" min:"1" type:"string" required:"true"`
11878}
11879
11880// String returns the string representation
11881func (s PutThirdPartyJobFailureResultInput) String() string {
11882	return awsutil.Prettify(s)
11883}
11884
11885// GoString returns the string representation
11886func (s PutThirdPartyJobFailureResultInput) GoString() string {
11887	return s.String()
11888}
11889
11890// Validate inspects the fields of the type to determine if they are valid.
11891func (s *PutThirdPartyJobFailureResultInput) Validate() error {
11892	invalidParams := request.ErrInvalidParams{Context: "PutThirdPartyJobFailureResultInput"}
11893	if s.ClientToken == nil {
11894		invalidParams.Add(request.NewErrParamRequired("ClientToken"))
11895	}
11896	if s.ClientToken != nil && len(*s.ClientToken) < 1 {
11897		invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
11898	}
11899	if s.FailureDetails == nil {
11900		invalidParams.Add(request.NewErrParamRequired("FailureDetails"))
11901	}
11902	if s.JobId == nil {
11903		invalidParams.Add(request.NewErrParamRequired("JobId"))
11904	}
11905	if s.JobId != nil && len(*s.JobId) < 1 {
11906		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
11907	}
11908	if s.FailureDetails != nil {
11909		if err := s.FailureDetails.Validate(); err != nil {
11910			invalidParams.AddNested("FailureDetails", err.(request.ErrInvalidParams))
11911		}
11912	}
11913
11914	if invalidParams.Len() > 0 {
11915		return invalidParams
11916	}
11917	return nil
11918}
11919
11920// SetClientToken sets the ClientToken field's value.
11921func (s *PutThirdPartyJobFailureResultInput) SetClientToken(v string) *PutThirdPartyJobFailureResultInput {
11922	s.ClientToken = &v
11923	return s
11924}
11925
11926// SetFailureDetails sets the FailureDetails field's value.
11927func (s *PutThirdPartyJobFailureResultInput) SetFailureDetails(v *FailureDetails) *PutThirdPartyJobFailureResultInput {
11928	s.FailureDetails = v
11929	return s
11930}
11931
11932// SetJobId sets the JobId field's value.
11933func (s *PutThirdPartyJobFailureResultInput) SetJobId(v string) *PutThirdPartyJobFailureResultInput {
11934	s.JobId = &v
11935	return s
11936}
11937
11938type PutThirdPartyJobFailureResultOutput struct {
11939	_ struct{} `type:"structure"`
11940}
11941
11942// String returns the string representation
11943func (s PutThirdPartyJobFailureResultOutput) String() string {
11944	return awsutil.Prettify(s)
11945}
11946
11947// GoString returns the string representation
11948func (s PutThirdPartyJobFailureResultOutput) GoString() string {
11949	return s.String()
11950}
11951
11952// Represents the input of a PutThirdPartyJobSuccessResult action.
11953type PutThirdPartyJobSuccessResultInput struct {
11954	_ struct{} `type:"structure"`
11955
11956	// The clientToken portion of the clientId and clientToken pair used to verify
11957	// that the calling entity is allowed access to the job and its details.
11958	//
11959	// ClientToken is a required field
11960	ClientToken *string `locationName:"clientToken" min:"1" type:"string" required:"true"`
11961
11962	// A token generated by a job worker, such as an AWS CodeDeploy deployment ID,
11963	// that a successful job provides to identify a partner action in progress.
11964	// Future jobs use this token to identify the running instance of the action.
11965	// It can be reused to return more information about the progress of the partner
11966	// action. When the action is complete, no continuation token should be supplied.
11967	ContinuationToken *string `locationName:"continuationToken" min:"1" type:"string"`
11968
11969	// Represents information about a current revision.
11970	CurrentRevision *CurrentRevision `locationName:"currentRevision" type:"structure"`
11971
11972	// The details of the actions taken and results produced on an artifact as it
11973	// passes through stages in the pipeline.
11974	ExecutionDetails *ExecutionDetails `locationName:"executionDetails" type:"structure"`
11975
11976	// The ID of the job that successfully completed. This is the same ID returned
11977	// from PollForThirdPartyJobs.
11978	//
11979	// JobId is a required field
11980	JobId *string `locationName:"jobId" min:"1" type:"string" required:"true"`
11981}
11982
11983// String returns the string representation
11984func (s PutThirdPartyJobSuccessResultInput) String() string {
11985	return awsutil.Prettify(s)
11986}
11987
11988// GoString returns the string representation
11989func (s PutThirdPartyJobSuccessResultInput) GoString() string {
11990	return s.String()
11991}
11992
11993// Validate inspects the fields of the type to determine if they are valid.
11994func (s *PutThirdPartyJobSuccessResultInput) Validate() error {
11995	invalidParams := request.ErrInvalidParams{Context: "PutThirdPartyJobSuccessResultInput"}
11996	if s.ClientToken == nil {
11997		invalidParams.Add(request.NewErrParamRequired("ClientToken"))
11998	}
11999	if s.ClientToken != nil && len(*s.ClientToken) < 1 {
12000		invalidParams.Add(request.NewErrParamMinLen("ClientToken", 1))
12001	}
12002	if s.ContinuationToken != nil && len(*s.ContinuationToken) < 1 {
12003		invalidParams.Add(request.NewErrParamMinLen("ContinuationToken", 1))
12004	}
12005	if s.JobId == nil {
12006		invalidParams.Add(request.NewErrParamRequired("JobId"))
12007	}
12008	if s.JobId != nil && len(*s.JobId) < 1 {
12009		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
12010	}
12011	if s.CurrentRevision != nil {
12012		if err := s.CurrentRevision.Validate(); err != nil {
12013			invalidParams.AddNested("CurrentRevision", err.(request.ErrInvalidParams))
12014		}
12015	}
12016	if s.ExecutionDetails != nil {
12017		if err := s.ExecutionDetails.Validate(); err != nil {
12018			invalidParams.AddNested("ExecutionDetails", err.(request.ErrInvalidParams))
12019		}
12020	}
12021
12022	if invalidParams.Len() > 0 {
12023		return invalidParams
12024	}
12025	return nil
12026}
12027
12028// SetClientToken sets the ClientToken field's value.
12029func (s *PutThirdPartyJobSuccessResultInput) SetClientToken(v string) *PutThirdPartyJobSuccessResultInput {
12030	s.ClientToken = &v
12031	return s
12032}
12033
12034// SetContinuationToken sets the ContinuationToken field's value.
12035func (s *PutThirdPartyJobSuccessResultInput) SetContinuationToken(v string) *PutThirdPartyJobSuccessResultInput {
12036	s.ContinuationToken = &v
12037	return s
12038}
12039
12040// SetCurrentRevision sets the CurrentRevision field's value.
12041func (s *PutThirdPartyJobSuccessResultInput) SetCurrentRevision(v *CurrentRevision) *PutThirdPartyJobSuccessResultInput {
12042	s.CurrentRevision = v
12043	return s
12044}
12045
12046// SetExecutionDetails sets the ExecutionDetails field's value.
12047func (s *PutThirdPartyJobSuccessResultInput) SetExecutionDetails(v *ExecutionDetails) *PutThirdPartyJobSuccessResultInput {
12048	s.ExecutionDetails = v
12049	return s
12050}
12051
12052// SetJobId sets the JobId field's value.
12053func (s *PutThirdPartyJobSuccessResultInput) SetJobId(v string) *PutThirdPartyJobSuccessResultInput {
12054	s.JobId = &v
12055	return s
12056}
12057
12058type PutThirdPartyJobSuccessResultOutput struct {
12059	_ struct{} `type:"structure"`
12060}
12061
12062// String returns the string representation
12063func (s PutThirdPartyJobSuccessResultOutput) String() string {
12064	return awsutil.Prettify(s)
12065}
12066
12067// GoString returns the string representation
12068func (s PutThirdPartyJobSuccessResultOutput) GoString() string {
12069	return s.String()
12070}
12071
12072type PutWebhookInput struct {
12073	_ struct{} `type:"structure"`
12074
12075	// The tags for the webhook.
12076	Tags []*Tag `locationName:"tags" type:"list"`
12077
12078	// The detail provided in an input file to create the webhook, such as the webhook
12079	// name, the pipeline name, and the action name. Give the webhook a unique name
12080	// that helps you identify it. You might name the webhook after the pipeline
12081	// and action it targets so that you can easily recognize what it's used for
12082	// later.
12083	//
12084	// Webhook is a required field
12085	Webhook *WebhookDefinition `locationName:"webhook" type:"structure" required:"true"`
12086}
12087
12088// String returns the string representation
12089func (s PutWebhookInput) String() string {
12090	return awsutil.Prettify(s)
12091}
12092
12093// GoString returns the string representation
12094func (s PutWebhookInput) GoString() string {
12095	return s.String()
12096}
12097
12098// Validate inspects the fields of the type to determine if they are valid.
12099func (s *PutWebhookInput) Validate() error {
12100	invalidParams := request.ErrInvalidParams{Context: "PutWebhookInput"}
12101	if s.Webhook == nil {
12102		invalidParams.Add(request.NewErrParamRequired("Webhook"))
12103	}
12104	if s.Tags != nil {
12105		for i, v := range s.Tags {
12106			if v == nil {
12107				continue
12108			}
12109			if err := v.Validate(); err != nil {
12110				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
12111			}
12112		}
12113	}
12114	if s.Webhook != nil {
12115		if err := s.Webhook.Validate(); err != nil {
12116			invalidParams.AddNested("Webhook", err.(request.ErrInvalidParams))
12117		}
12118	}
12119
12120	if invalidParams.Len() > 0 {
12121		return invalidParams
12122	}
12123	return nil
12124}
12125
12126// SetTags sets the Tags field's value.
12127func (s *PutWebhookInput) SetTags(v []*Tag) *PutWebhookInput {
12128	s.Tags = v
12129	return s
12130}
12131
12132// SetWebhook sets the Webhook field's value.
12133func (s *PutWebhookInput) SetWebhook(v *WebhookDefinition) *PutWebhookInput {
12134	s.Webhook = v
12135	return s
12136}
12137
12138type PutWebhookOutput struct {
12139	_ struct{} `type:"structure"`
12140
12141	// The detail returned from creating the webhook, such as the webhook name,
12142	// webhook URL, and webhook ARN.
12143	Webhook *ListWebhookItem `locationName:"webhook" type:"structure"`
12144}
12145
12146// String returns the string representation
12147func (s PutWebhookOutput) String() string {
12148	return awsutil.Prettify(s)
12149}
12150
12151// GoString returns the string representation
12152func (s PutWebhookOutput) GoString() string {
12153	return s.String()
12154}
12155
12156// SetWebhook sets the Webhook field's value.
12157func (s *PutWebhookOutput) SetWebhook(v *ListWebhookItem) *PutWebhookOutput {
12158	s.Webhook = v
12159	return s
12160}
12161
12162type RegisterWebhookWithThirdPartyInput struct {
12163	_ struct{} `type:"structure"`
12164
12165	// The name of an existing webhook created with PutWebhook to register with
12166	// a supported third party.
12167	WebhookName *string `locationName:"webhookName" min:"1" type:"string"`
12168}
12169
12170// String returns the string representation
12171func (s RegisterWebhookWithThirdPartyInput) String() string {
12172	return awsutil.Prettify(s)
12173}
12174
12175// GoString returns the string representation
12176func (s RegisterWebhookWithThirdPartyInput) GoString() string {
12177	return s.String()
12178}
12179
12180// Validate inspects the fields of the type to determine if they are valid.
12181func (s *RegisterWebhookWithThirdPartyInput) Validate() error {
12182	invalidParams := request.ErrInvalidParams{Context: "RegisterWebhookWithThirdPartyInput"}
12183	if s.WebhookName != nil && len(*s.WebhookName) < 1 {
12184		invalidParams.Add(request.NewErrParamMinLen("WebhookName", 1))
12185	}
12186
12187	if invalidParams.Len() > 0 {
12188		return invalidParams
12189	}
12190	return nil
12191}
12192
12193// SetWebhookName sets the WebhookName field's value.
12194func (s *RegisterWebhookWithThirdPartyInput) SetWebhookName(v string) *RegisterWebhookWithThirdPartyInput {
12195	s.WebhookName = &v
12196	return s
12197}
12198
12199type RegisterWebhookWithThirdPartyOutput struct {
12200	_ struct{} `type:"structure"`
12201}
12202
12203// String returns the string representation
12204func (s RegisterWebhookWithThirdPartyOutput) String() string {
12205	return awsutil.Prettify(s)
12206}
12207
12208// GoString returns the string representation
12209func (s RegisterWebhookWithThirdPartyOutput) GoString() string {
12210	return s.String()
12211}
12212
12213// The request failed because of an unknown error, exception, or failure.
12214type RequestFailedException struct {
12215	_            struct{}                  `type:"structure"`
12216	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
12217
12218	Message_ *string `locationName:"message" min:"1" type:"string"`
12219}
12220
12221// String returns the string representation
12222func (s RequestFailedException) String() string {
12223	return awsutil.Prettify(s)
12224}
12225
12226// GoString returns the string representation
12227func (s RequestFailedException) GoString() string {
12228	return s.String()
12229}
12230
12231func newErrorRequestFailedException(v protocol.ResponseMetadata) error {
12232	return &RequestFailedException{
12233		RespMetadata: v,
12234	}
12235}
12236
12237// Code returns the exception type name.
12238func (s *RequestFailedException) Code() string {
12239	return "RequestFailedException"
12240}
12241
12242// Message returns the exception's message.
12243func (s *RequestFailedException) Message() string {
12244	if s.Message_ != nil {
12245		return *s.Message_
12246	}
12247	return ""
12248}
12249
12250// OrigErr always returns nil, satisfies awserr.Error interface.
12251func (s *RequestFailedException) OrigErr() error {
12252	return nil
12253}
12254
12255func (s *RequestFailedException) Error() string {
12256	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
12257}
12258
12259// Status code returns the HTTP status code for the request's response error.
12260func (s *RequestFailedException) StatusCode() int {
12261	return s.RespMetadata.StatusCode
12262}
12263
12264// RequestID returns the service's response RequestID for request.
12265func (s *RequestFailedException) RequestID() string {
12266	return s.RespMetadata.RequestID
12267}
12268
12269// The resource was specified in an invalid format.
12270type ResourceNotFoundException struct {
12271	_            struct{}                  `type:"structure"`
12272	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
12273
12274	Message_ *string `locationName:"message" type:"string"`
12275}
12276
12277// String returns the string representation
12278func (s ResourceNotFoundException) String() string {
12279	return awsutil.Prettify(s)
12280}
12281
12282// GoString returns the string representation
12283func (s ResourceNotFoundException) GoString() string {
12284	return s.String()
12285}
12286
12287func newErrorResourceNotFoundException(v protocol.ResponseMetadata) error {
12288	return &ResourceNotFoundException{
12289		RespMetadata: v,
12290	}
12291}
12292
12293// Code returns the exception type name.
12294func (s *ResourceNotFoundException) Code() string {
12295	return "ResourceNotFoundException"
12296}
12297
12298// Message returns the exception's message.
12299func (s *ResourceNotFoundException) Message() string {
12300	if s.Message_ != nil {
12301		return *s.Message_
12302	}
12303	return ""
12304}
12305
12306// OrigErr always returns nil, satisfies awserr.Error interface.
12307func (s *ResourceNotFoundException) OrigErr() error {
12308	return nil
12309}
12310
12311func (s *ResourceNotFoundException) Error() string {
12312	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
12313}
12314
12315// Status code returns the HTTP status code for the request's response error.
12316func (s *ResourceNotFoundException) StatusCode() int {
12317	return s.RespMetadata.StatusCode
12318}
12319
12320// RequestID returns the service's response RequestID for request.
12321func (s *ResourceNotFoundException) RequestID() string {
12322	return s.RespMetadata.RequestID
12323}
12324
12325// Represents the input of a RetryStageExecution action.
12326type RetryStageExecutionInput struct {
12327	_ struct{} `type:"structure"`
12328
12329	// The ID of the pipeline execution in the failed stage to be retried. Use the
12330	// GetPipelineState action to retrieve the current pipelineExecutionId of the
12331	// failed stage
12332	//
12333	// PipelineExecutionId is a required field
12334	PipelineExecutionId *string `locationName:"pipelineExecutionId" type:"string" required:"true"`
12335
12336	// The name of the pipeline that contains the failed stage.
12337	//
12338	// PipelineName is a required field
12339	PipelineName *string `locationName:"pipelineName" min:"1" type:"string" required:"true"`
12340
12341	// The scope of the retry attempt. Currently, the only supported value is FAILED_ACTIONS.
12342	//
12343	// RetryMode is a required field
12344	RetryMode *string `locationName:"retryMode" type:"string" required:"true" enum:"StageRetryMode"`
12345
12346	// The name of the failed stage to be retried.
12347	//
12348	// StageName is a required field
12349	StageName *string `locationName:"stageName" min:"1" type:"string" required:"true"`
12350}
12351
12352// String returns the string representation
12353func (s RetryStageExecutionInput) String() string {
12354	return awsutil.Prettify(s)
12355}
12356
12357// GoString returns the string representation
12358func (s RetryStageExecutionInput) GoString() string {
12359	return s.String()
12360}
12361
12362// Validate inspects the fields of the type to determine if they are valid.
12363func (s *RetryStageExecutionInput) Validate() error {
12364	invalidParams := request.ErrInvalidParams{Context: "RetryStageExecutionInput"}
12365	if s.PipelineExecutionId == nil {
12366		invalidParams.Add(request.NewErrParamRequired("PipelineExecutionId"))
12367	}
12368	if s.PipelineName == nil {
12369		invalidParams.Add(request.NewErrParamRequired("PipelineName"))
12370	}
12371	if s.PipelineName != nil && len(*s.PipelineName) < 1 {
12372		invalidParams.Add(request.NewErrParamMinLen("PipelineName", 1))
12373	}
12374	if s.RetryMode == nil {
12375		invalidParams.Add(request.NewErrParamRequired("RetryMode"))
12376	}
12377	if s.StageName == nil {
12378		invalidParams.Add(request.NewErrParamRequired("StageName"))
12379	}
12380	if s.StageName != nil && len(*s.StageName) < 1 {
12381		invalidParams.Add(request.NewErrParamMinLen("StageName", 1))
12382	}
12383
12384	if invalidParams.Len() > 0 {
12385		return invalidParams
12386	}
12387	return nil
12388}
12389
12390// SetPipelineExecutionId sets the PipelineExecutionId field's value.
12391func (s *RetryStageExecutionInput) SetPipelineExecutionId(v string) *RetryStageExecutionInput {
12392	s.PipelineExecutionId = &v
12393	return s
12394}
12395
12396// SetPipelineName sets the PipelineName field's value.
12397func (s *RetryStageExecutionInput) SetPipelineName(v string) *RetryStageExecutionInput {
12398	s.PipelineName = &v
12399	return s
12400}
12401
12402// SetRetryMode sets the RetryMode field's value.
12403func (s *RetryStageExecutionInput) SetRetryMode(v string) *RetryStageExecutionInput {
12404	s.RetryMode = &v
12405	return s
12406}
12407
12408// SetStageName sets the StageName field's value.
12409func (s *RetryStageExecutionInput) SetStageName(v string) *RetryStageExecutionInput {
12410	s.StageName = &v
12411	return s
12412}
12413
12414// Represents the output of a RetryStageExecution action.
12415type RetryStageExecutionOutput struct {
12416	_ struct{} `type:"structure"`
12417
12418	// The ID of the current workflow execution in the failed stage.
12419	PipelineExecutionId *string `locationName:"pipelineExecutionId" type:"string"`
12420}
12421
12422// String returns the string representation
12423func (s RetryStageExecutionOutput) String() string {
12424	return awsutil.Prettify(s)
12425}
12426
12427// GoString returns the string representation
12428func (s RetryStageExecutionOutput) GoString() string {
12429	return s.String()
12430}
12431
12432// SetPipelineExecutionId sets the PipelineExecutionId field's value.
12433func (s *RetryStageExecutionOutput) SetPipelineExecutionId(v string) *RetryStageExecutionOutput {
12434	s.PipelineExecutionId = &v
12435	return s
12436}
12437
12438// The location of the S3 bucket that contains a revision.
12439type S3ArtifactLocation struct {
12440	_ struct{} `type:"structure"`
12441
12442	// The name of the S3 bucket.
12443	//
12444	// BucketName is a required field
12445	BucketName *string `locationName:"bucketName" type:"string" required:"true"`
12446
12447	// The key of the object in the S3 bucket, which uniquely identifies the object
12448	// in the bucket.
12449	//
12450	// ObjectKey is a required field
12451	ObjectKey *string `locationName:"objectKey" type:"string" required:"true"`
12452}
12453
12454// String returns the string representation
12455func (s S3ArtifactLocation) String() string {
12456	return awsutil.Prettify(s)
12457}
12458
12459// GoString returns the string representation
12460func (s S3ArtifactLocation) GoString() string {
12461	return s.String()
12462}
12463
12464// SetBucketName sets the BucketName field's value.
12465func (s *S3ArtifactLocation) SetBucketName(v string) *S3ArtifactLocation {
12466	s.BucketName = &v
12467	return s
12468}
12469
12470// SetObjectKey sets the ObjectKey field's value.
12471func (s *S3ArtifactLocation) SetObjectKey(v string) *S3ArtifactLocation {
12472	s.ObjectKey = &v
12473	return s
12474}
12475
12476// The Amazon S3 artifact location for an action's artifacts.
12477type S3Location struct {
12478	_ struct{} `type:"structure"`
12479
12480	// The Amazon S3 artifact bucket for an action's artifacts.
12481	Bucket *string `locationName:"bucket" min:"3" type:"string"`
12482
12483	// The artifact name.
12484	Key *string `locationName:"key" min:"1" type:"string"`
12485}
12486
12487// String returns the string representation
12488func (s S3Location) String() string {
12489	return awsutil.Prettify(s)
12490}
12491
12492// GoString returns the string representation
12493func (s S3Location) GoString() string {
12494	return s.String()
12495}
12496
12497// SetBucket sets the Bucket field's value.
12498func (s *S3Location) SetBucket(v string) *S3Location {
12499	s.Bucket = &v
12500	return s
12501}
12502
12503// SetKey sets the Key field's value.
12504func (s *S3Location) SetKey(v string) *S3Location {
12505	s.Key = &v
12506	return s
12507}
12508
12509// Information about the version (or revision) of a source artifact that initiated
12510// a pipeline execution.
12511type SourceRevision struct {
12512	_ struct{} `type:"structure"`
12513
12514	// The name of the action that processed the revision to the source artifact.
12515	//
12516	// ActionName is a required field
12517	ActionName *string `locationName:"actionName" min:"1" type:"string" required:"true"`
12518
12519	// The system-generated unique ID that identifies the revision number of the
12520	// artifact.
12521	RevisionId *string `locationName:"revisionId" min:"1" type:"string"`
12522
12523	// Summary information about the most recent revision of the artifact. For GitHub
12524	// and AWS CodeCommit repositories, the commit message. For Amazon S3 buckets
12525	// or actions, the user-provided content of a codepipeline-artifact-revision-summary
12526	// key specified in the object metadata.
12527	RevisionSummary *string `locationName:"revisionSummary" min:"1" type:"string"`
12528
12529	// The commit ID for the artifact revision. For artifacts stored in GitHub or
12530	// AWS CodeCommit repositories, the commit ID is linked to a commit details
12531	// page.
12532	RevisionUrl *string `locationName:"revisionUrl" min:"1" type:"string"`
12533}
12534
12535// String returns the string representation
12536func (s SourceRevision) String() string {
12537	return awsutil.Prettify(s)
12538}
12539
12540// GoString returns the string representation
12541func (s SourceRevision) GoString() string {
12542	return s.String()
12543}
12544
12545// SetActionName sets the ActionName field's value.
12546func (s *SourceRevision) SetActionName(v string) *SourceRevision {
12547	s.ActionName = &v
12548	return s
12549}
12550
12551// SetRevisionId sets the RevisionId field's value.
12552func (s *SourceRevision) SetRevisionId(v string) *SourceRevision {
12553	s.RevisionId = &v
12554	return s
12555}
12556
12557// SetRevisionSummary sets the RevisionSummary field's value.
12558func (s *SourceRevision) SetRevisionSummary(v string) *SourceRevision {
12559	s.RevisionSummary = &v
12560	return s
12561}
12562
12563// SetRevisionUrl sets the RevisionUrl field's value.
12564func (s *SourceRevision) SetRevisionUrl(v string) *SourceRevision {
12565	s.RevisionUrl = &v
12566	return s
12567}
12568
12569// Represents information about a stage to a job worker.
12570type StageContext struct {
12571	_ struct{} `type:"structure"`
12572
12573	// The name of the stage.
12574	Name *string `locationName:"name" min:"1" type:"string"`
12575}
12576
12577// String returns the string representation
12578func (s StageContext) String() string {
12579	return awsutil.Prettify(s)
12580}
12581
12582// GoString returns the string representation
12583func (s StageContext) GoString() string {
12584	return s.String()
12585}
12586
12587// SetName sets the Name field's value.
12588func (s *StageContext) SetName(v string) *StageContext {
12589	s.Name = &v
12590	return s
12591}
12592
12593// Represents information about a stage and its definition.
12594type StageDeclaration struct {
12595	_ struct{} `type:"structure"`
12596
12597	// The actions included in a stage.
12598	//
12599	// Actions is a required field
12600	Actions []*ActionDeclaration `locationName:"actions" type:"list" required:"true"`
12601
12602	// Reserved for future use.
12603	Blockers []*BlockerDeclaration `locationName:"blockers" type:"list"`
12604
12605	// The name of the stage.
12606	//
12607	// Name is a required field
12608	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
12609}
12610
12611// String returns the string representation
12612func (s StageDeclaration) String() string {
12613	return awsutil.Prettify(s)
12614}
12615
12616// GoString returns the string representation
12617func (s StageDeclaration) GoString() string {
12618	return s.String()
12619}
12620
12621// Validate inspects the fields of the type to determine if they are valid.
12622func (s *StageDeclaration) Validate() error {
12623	invalidParams := request.ErrInvalidParams{Context: "StageDeclaration"}
12624	if s.Actions == nil {
12625		invalidParams.Add(request.NewErrParamRequired("Actions"))
12626	}
12627	if s.Name == nil {
12628		invalidParams.Add(request.NewErrParamRequired("Name"))
12629	}
12630	if s.Name != nil && len(*s.Name) < 1 {
12631		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
12632	}
12633	if s.Actions != nil {
12634		for i, v := range s.Actions {
12635			if v == nil {
12636				continue
12637			}
12638			if err := v.Validate(); err != nil {
12639				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Actions", i), err.(request.ErrInvalidParams))
12640			}
12641		}
12642	}
12643	if s.Blockers != nil {
12644		for i, v := range s.Blockers {
12645			if v == nil {
12646				continue
12647			}
12648			if err := v.Validate(); err != nil {
12649				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Blockers", i), err.(request.ErrInvalidParams))
12650			}
12651		}
12652	}
12653
12654	if invalidParams.Len() > 0 {
12655		return invalidParams
12656	}
12657	return nil
12658}
12659
12660// SetActions sets the Actions field's value.
12661func (s *StageDeclaration) SetActions(v []*ActionDeclaration) *StageDeclaration {
12662	s.Actions = v
12663	return s
12664}
12665
12666// SetBlockers sets the Blockers field's value.
12667func (s *StageDeclaration) SetBlockers(v []*BlockerDeclaration) *StageDeclaration {
12668	s.Blockers = v
12669	return s
12670}
12671
12672// SetName sets the Name field's value.
12673func (s *StageDeclaration) SetName(v string) *StageDeclaration {
12674	s.Name = &v
12675	return s
12676}
12677
12678// Represents information about the run of a stage.
12679type StageExecution struct {
12680	_ struct{} `type:"structure"`
12681
12682	// The ID of the pipeline execution associated with the stage.
12683	//
12684	// PipelineExecutionId is a required field
12685	PipelineExecutionId *string `locationName:"pipelineExecutionId" type:"string" required:"true"`
12686
12687	// The status of the stage, or for a completed stage, the last status of the
12688	// stage.
12689	//
12690	// A status of cancelled means that the pipeline’s definition was updated
12691	// before the stage execution could be completed.
12692	//
12693	// Status is a required field
12694	Status *string `locationName:"status" type:"string" required:"true" enum:"StageExecutionStatus"`
12695}
12696
12697// String returns the string representation
12698func (s StageExecution) String() string {
12699	return awsutil.Prettify(s)
12700}
12701
12702// GoString returns the string representation
12703func (s StageExecution) GoString() string {
12704	return s.String()
12705}
12706
12707// SetPipelineExecutionId sets the PipelineExecutionId field's value.
12708func (s *StageExecution) SetPipelineExecutionId(v string) *StageExecution {
12709	s.PipelineExecutionId = &v
12710	return s
12711}
12712
12713// SetStatus sets the Status field's value.
12714func (s *StageExecution) SetStatus(v string) *StageExecution {
12715	s.Status = &v
12716	return s
12717}
12718
12719// The stage was specified in an invalid format or cannot be found.
12720type StageNotFoundException struct {
12721	_            struct{}                  `type:"structure"`
12722	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
12723
12724	Message_ *string `locationName:"message" type:"string"`
12725}
12726
12727// String returns the string representation
12728func (s StageNotFoundException) String() string {
12729	return awsutil.Prettify(s)
12730}
12731
12732// GoString returns the string representation
12733func (s StageNotFoundException) GoString() string {
12734	return s.String()
12735}
12736
12737func newErrorStageNotFoundException(v protocol.ResponseMetadata) error {
12738	return &StageNotFoundException{
12739		RespMetadata: v,
12740	}
12741}
12742
12743// Code returns the exception type name.
12744func (s *StageNotFoundException) Code() string {
12745	return "StageNotFoundException"
12746}
12747
12748// Message returns the exception's message.
12749func (s *StageNotFoundException) Message() string {
12750	if s.Message_ != nil {
12751		return *s.Message_
12752	}
12753	return ""
12754}
12755
12756// OrigErr always returns nil, satisfies awserr.Error interface.
12757func (s *StageNotFoundException) OrigErr() error {
12758	return nil
12759}
12760
12761func (s *StageNotFoundException) Error() string {
12762	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
12763}
12764
12765// Status code returns the HTTP status code for the request's response error.
12766func (s *StageNotFoundException) StatusCode() int {
12767	return s.RespMetadata.StatusCode
12768}
12769
12770// RequestID returns the service's response RequestID for request.
12771func (s *StageNotFoundException) RequestID() string {
12772	return s.RespMetadata.RequestID
12773}
12774
12775// Unable to retry. The pipeline structure or stage state might have changed
12776// while actions awaited retry, or the stage contains no failed actions.
12777type StageNotRetryableException struct {
12778	_            struct{}                  `type:"structure"`
12779	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
12780
12781	Message_ *string `locationName:"message" type:"string"`
12782}
12783
12784// String returns the string representation
12785func (s StageNotRetryableException) String() string {
12786	return awsutil.Prettify(s)
12787}
12788
12789// GoString returns the string representation
12790func (s StageNotRetryableException) GoString() string {
12791	return s.String()
12792}
12793
12794func newErrorStageNotRetryableException(v protocol.ResponseMetadata) error {
12795	return &StageNotRetryableException{
12796		RespMetadata: v,
12797	}
12798}
12799
12800// Code returns the exception type name.
12801func (s *StageNotRetryableException) Code() string {
12802	return "StageNotRetryableException"
12803}
12804
12805// Message returns the exception's message.
12806func (s *StageNotRetryableException) Message() string {
12807	if s.Message_ != nil {
12808		return *s.Message_
12809	}
12810	return ""
12811}
12812
12813// OrigErr always returns nil, satisfies awserr.Error interface.
12814func (s *StageNotRetryableException) OrigErr() error {
12815	return nil
12816}
12817
12818func (s *StageNotRetryableException) Error() string {
12819	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
12820}
12821
12822// Status code returns the HTTP status code for the request's response error.
12823func (s *StageNotRetryableException) StatusCode() int {
12824	return s.RespMetadata.StatusCode
12825}
12826
12827// RequestID returns the service's response RequestID for request.
12828func (s *StageNotRetryableException) RequestID() string {
12829	return s.RespMetadata.RequestID
12830}
12831
12832// Represents information about the state of the stage.
12833type StageState struct {
12834	_ struct{} `type:"structure"`
12835
12836	// The state of the stage.
12837	ActionStates []*ActionState `locationName:"actionStates" type:"list"`
12838
12839	// Represents information about the run of a stage.
12840	InboundExecution *StageExecution `locationName:"inboundExecution" type:"structure"`
12841
12842	// The state of the inbound transition, which is either enabled or disabled.
12843	InboundTransitionState *TransitionState `locationName:"inboundTransitionState" type:"structure"`
12844
12845	// Information about the latest execution in the stage, including its ID and
12846	// status.
12847	LatestExecution *StageExecution `locationName:"latestExecution" type:"structure"`
12848
12849	// The name of the stage.
12850	StageName *string `locationName:"stageName" min:"1" type:"string"`
12851}
12852
12853// String returns the string representation
12854func (s StageState) String() string {
12855	return awsutil.Prettify(s)
12856}
12857
12858// GoString returns the string representation
12859func (s StageState) GoString() string {
12860	return s.String()
12861}
12862
12863// SetActionStates sets the ActionStates field's value.
12864func (s *StageState) SetActionStates(v []*ActionState) *StageState {
12865	s.ActionStates = v
12866	return s
12867}
12868
12869// SetInboundExecution sets the InboundExecution field's value.
12870func (s *StageState) SetInboundExecution(v *StageExecution) *StageState {
12871	s.InboundExecution = v
12872	return s
12873}
12874
12875// SetInboundTransitionState sets the InboundTransitionState field's value.
12876func (s *StageState) SetInboundTransitionState(v *TransitionState) *StageState {
12877	s.InboundTransitionState = v
12878	return s
12879}
12880
12881// SetLatestExecution sets the LatestExecution field's value.
12882func (s *StageState) SetLatestExecution(v *StageExecution) *StageState {
12883	s.LatestExecution = v
12884	return s
12885}
12886
12887// SetStageName sets the StageName field's value.
12888func (s *StageState) SetStageName(v string) *StageState {
12889	s.StageName = &v
12890	return s
12891}
12892
12893// Represents the input of a StartPipelineExecution action.
12894type StartPipelineExecutionInput struct {
12895	_ struct{} `type:"structure"`
12896
12897	// The system-generated unique ID used to identify a unique execution request.
12898	ClientRequestToken *string `locationName:"clientRequestToken" min:"1" type:"string" idempotencyToken:"true"`
12899
12900	// The name of the pipeline to start.
12901	//
12902	// Name is a required field
12903	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
12904}
12905
12906// String returns the string representation
12907func (s StartPipelineExecutionInput) String() string {
12908	return awsutil.Prettify(s)
12909}
12910
12911// GoString returns the string representation
12912func (s StartPipelineExecutionInput) GoString() string {
12913	return s.String()
12914}
12915
12916// Validate inspects the fields of the type to determine if they are valid.
12917func (s *StartPipelineExecutionInput) Validate() error {
12918	invalidParams := request.ErrInvalidParams{Context: "StartPipelineExecutionInput"}
12919	if s.ClientRequestToken != nil && len(*s.ClientRequestToken) < 1 {
12920		invalidParams.Add(request.NewErrParamMinLen("ClientRequestToken", 1))
12921	}
12922	if s.Name == nil {
12923		invalidParams.Add(request.NewErrParamRequired("Name"))
12924	}
12925	if s.Name != nil && len(*s.Name) < 1 {
12926		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
12927	}
12928
12929	if invalidParams.Len() > 0 {
12930		return invalidParams
12931	}
12932	return nil
12933}
12934
12935// SetClientRequestToken sets the ClientRequestToken field's value.
12936func (s *StartPipelineExecutionInput) SetClientRequestToken(v string) *StartPipelineExecutionInput {
12937	s.ClientRequestToken = &v
12938	return s
12939}
12940
12941// SetName sets the Name field's value.
12942func (s *StartPipelineExecutionInput) SetName(v string) *StartPipelineExecutionInput {
12943	s.Name = &v
12944	return s
12945}
12946
12947// Represents the output of a StartPipelineExecution action.
12948type StartPipelineExecutionOutput struct {
12949	_ struct{} `type:"structure"`
12950
12951	// The unique system-generated ID of the pipeline execution that was started.
12952	PipelineExecutionId *string `locationName:"pipelineExecutionId" type:"string"`
12953}
12954
12955// String returns the string representation
12956func (s StartPipelineExecutionOutput) String() string {
12957	return awsutil.Prettify(s)
12958}
12959
12960// GoString returns the string representation
12961func (s StartPipelineExecutionOutput) GoString() string {
12962	return s.String()
12963}
12964
12965// SetPipelineExecutionId sets the PipelineExecutionId field's value.
12966func (s *StartPipelineExecutionOutput) SetPipelineExecutionId(v string) *StartPipelineExecutionOutput {
12967	s.PipelineExecutionId = &v
12968	return s
12969}
12970
12971// The interaction that stopped a pipeline execution.
12972type StopExecutionTrigger struct {
12973	_ struct{} `type:"structure"`
12974
12975	// The user-specified reason the pipeline was stopped.
12976	Reason *string `locationName:"reason" type:"string"`
12977}
12978
12979// String returns the string representation
12980func (s StopExecutionTrigger) String() string {
12981	return awsutil.Prettify(s)
12982}
12983
12984// GoString returns the string representation
12985func (s StopExecutionTrigger) GoString() string {
12986	return s.String()
12987}
12988
12989// SetReason sets the Reason field's value.
12990func (s *StopExecutionTrigger) SetReason(v string) *StopExecutionTrigger {
12991	s.Reason = &v
12992	return s
12993}
12994
12995type StopPipelineExecutionInput struct {
12996	_ struct{} `type:"structure"`
12997
12998	// Use this option to stop the pipeline execution by abandoning, rather than
12999	// finishing, in-progress actions.
13000	//
13001	// This option can lead to failed or out-of-sequence tasks.
13002	Abandon *bool `locationName:"abandon" type:"boolean"`
13003
13004	// The ID of the pipeline execution to be stopped in the current stage. Use
13005	// the GetPipelineState action to retrieve the current pipelineExecutionId.
13006	//
13007	// PipelineExecutionId is a required field
13008	PipelineExecutionId *string `locationName:"pipelineExecutionId" type:"string" required:"true"`
13009
13010	// The name of the pipeline to stop.
13011	//
13012	// PipelineName is a required field
13013	PipelineName *string `locationName:"pipelineName" min:"1" type:"string" required:"true"`
13014
13015	// Use this option to enter comments, such as the reason the pipeline was stopped.
13016	Reason *string `locationName:"reason" type:"string"`
13017}
13018
13019// String returns the string representation
13020func (s StopPipelineExecutionInput) String() string {
13021	return awsutil.Prettify(s)
13022}
13023
13024// GoString returns the string representation
13025func (s StopPipelineExecutionInput) GoString() string {
13026	return s.String()
13027}
13028
13029// Validate inspects the fields of the type to determine if they are valid.
13030func (s *StopPipelineExecutionInput) Validate() error {
13031	invalidParams := request.ErrInvalidParams{Context: "StopPipelineExecutionInput"}
13032	if s.PipelineExecutionId == nil {
13033		invalidParams.Add(request.NewErrParamRequired("PipelineExecutionId"))
13034	}
13035	if s.PipelineName == nil {
13036		invalidParams.Add(request.NewErrParamRequired("PipelineName"))
13037	}
13038	if s.PipelineName != nil && len(*s.PipelineName) < 1 {
13039		invalidParams.Add(request.NewErrParamMinLen("PipelineName", 1))
13040	}
13041
13042	if invalidParams.Len() > 0 {
13043		return invalidParams
13044	}
13045	return nil
13046}
13047
13048// SetAbandon sets the Abandon field's value.
13049func (s *StopPipelineExecutionInput) SetAbandon(v bool) *StopPipelineExecutionInput {
13050	s.Abandon = &v
13051	return s
13052}
13053
13054// SetPipelineExecutionId sets the PipelineExecutionId field's value.
13055func (s *StopPipelineExecutionInput) SetPipelineExecutionId(v string) *StopPipelineExecutionInput {
13056	s.PipelineExecutionId = &v
13057	return s
13058}
13059
13060// SetPipelineName sets the PipelineName field's value.
13061func (s *StopPipelineExecutionInput) SetPipelineName(v string) *StopPipelineExecutionInput {
13062	s.PipelineName = &v
13063	return s
13064}
13065
13066// SetReason sets the Reason field's value.
13067func (s *StopPipelineExecutionInput) SetReason(v string) *StopPipelineExecutionInput {
13068	s.Reason = &v
13069	return s
13070}
13071
13072type StopPipelineExecutionOutput struct {
13073	_ struct{} `type:"structure"`
13074
13075	// The unique system-generated ID of the pipeline execution that was stopped.
13076	PipelineExecutionId *string `locationName:"pipelineExecutionId" type:"string"`
13077}
13078
13079// String returns the string representation
13080func (s StopPipelineExecutionOutput) String() string {
13081	return awsutil.Prettify(s)
13082}
13083
13084// GoString returns the string representation
13085func (s StopPipelineExecutionOutput) GoString() string {
13086	return s.String()
13087}
13088
13089// SetPipelineExecutionId sets the PipelineExecutionId field's value.
13090func (s *StopPipelineExecutionOutput) SetPipelineExecutionId(v string) *StopPipelineExecutionOutput {
13091	s.PipelineExecutionId = &v
13092	return s
13093}
13094
13095// A tag is a key-value pair that is used to manage the resource.
13096type Tag struct {
13097	_ struct{} `type:"structure"`
13098
13099	// The tag's key.
13100	//
13101	// Key is a required field
13102	Key *string `locationName:"key" min:"1" type:"string" required:"true"`
13103
13104	// The tag's value.
13105	//
13106	// Value is a required field
13107	Value *string `locationName:"value" type:"string" required:"true"`
13108}
13109
13110// String returns the string representation
13111func (s Tag) String() string {
13112	return awsutil.Prettify(s)
13113}
13114
13115// GoString returns the string representation
13116func (s Tag) GoString() string {
13117	return s.String()
13118}
13119
13120// Validate inspects the fields of the type to determine if they are valid.
13121func (s *Tag) Validate() error {
13122	invalidParams := request.ErrInvalidParams{Context: "Tag"}
13123	if s.Key == nil {
13124		invalidParams.Add(request.NewErrParamRequired("Key"))
13125	}
13126	if s.Key != nil && len(*s.Key) < 1 {
13127		invalidParams.Add(request.NewErrParamMinLen("Key", 1))
13128	}
13129	if s.Value == nil {
13130		invalidParams.Add(request.NewErrParamRequired("Value"))
13131	}
13132
13133	if invalidParams.Len() > 0 {
13134		return invalidParams
13135	}
13136	return nil
13137}
13138
13139// SetKey sets the Key field's value.
13140func (s *Tag) SetKey(v string) *Tag {
13141	s.Key = &v
13142	return s
13143}
13144
13145// SetValue sets the Value field's value.
13146func (s *Tag) SetValue(v string) *Tag {
13147	s.Value = &v
13148	return s
13149}
13150
13151type TagResourceInput struct {
13152	_ struct{} `type:"structure"`
13153
13154	// The Amazon Resource Name (ARN) of the resource you want to add tags to.
13155	//
13156	// ResourceArn is a required field
13157	ResourceArn *string `locationName:"resourceArn" type:"string" required:"true"`
13158
13159	// The tags you want to modify or add to the resource.
13160	//
13161	// Tags is a required field
13162	Tags []*Tag `locationName:"tags" type:"list" required:"true"`
13163}
13164
13165// String returns the string representation
13166func (s TagResourceInput) String() string {
13167	return awsutil.Prettify(s)
13168}
13169
13170// GoString returns the string representation
13171func (s TagResourceInput) GoString() string {
13172	return s.String()
13173}
13174
13175// Validate inspects the fields of the type to determine if they are valid.
13176func (s *TagResourceInput) Validate() error {
13177	invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"}
13178	if s.ResourceArn == nil {
13179		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
13180	}
13181	if s.Tags == nil {
13182		invalidParams.Add(request.NewErrParamRequired("Tags"))
13183	}
13184	if s.Tags != nil {
13185		for i, v := range s.Tags {
13186			if v == nil {
13187				continue
13188			}
13189			if err := v.Validate(); err != nil {
13190				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Tags", i), err.(request.ErrInvalidParams))
13191			}
13192		}
13193	}
13194
13195	if invalidParams.Len() > 0 {
13196		return invalidParams
13197	}
13198	return nil
13199}
13200
13201// SetResourceArn sets the ResourceArn field's value.
13202func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput {
13203	s.ResourceArn = &v
13204	return s
13205}
13206
13207// SetTags sets the Tags field's value.
13208func (s *TagResourceInput) SetTags(v []*Tag) *TagResourceInput {
13209	s.Tags = v
13210	return s
13211}
13212
13213type TagResourceOutput struct {
13214	_ struct{} `type:"structure"`
13215}
13216
13217// String returns the string representation
13218func (s TagResourceOutput) String() string {
13219	return awsutil.Prettify(s)
13220}
13221
13222// GoString returns the string representation
13223func (s TagResourceOutput) GoString() string {
13224	return s.String()
13225}
13226
13227// A response to a PollForThirdPartyJobs request returned by AWS CodePipeline
13228// when there is a job to be worked on by a partner action.
13229type ThirdPartyJob struct {
13230	_ struct{} `type:"structure"`
13231
13232	// The clientToken portion of the clientId and clientToken pair used to verify
13233	// that the calling entity is allowed access to the job and its details.
13234	ClientId *string `locationName:"clientId" type:"string"`
13235
13236	// The identifier used to identify the job in AWS CodePipeline.
13237	JobId *string `locationName:"jobId" type:"string"`
13238}
13239
13240// String returns the string representation
13241func (s ThirdPartyJob) String() string {
13242	return awsutil.Prettify(s)
13243}
13244
13245// GoString returns the string representation
13246func (s ThirdPartyJob) GoString() string {
13247	return s.String()
13248}
13249
13250// SetClientId sets the ClientId field's value.
13251func (s *ThirdPartyJob) SetClientId(v string) *ThirdPartyJob {
13252	s.ClientId = &v
13253	return s
13254}
13255
13256// SetJobId sets the JobId field's value.
13257func (s *ThirdPartyJob) SetJobId(v string) *ThirdPartyJob {
13258	s.JobId = &v
13259	return s
13260}
13261
13262// Represents information about the job data for a partner action.
13263type ThirdPartyJobData struct {
13264	_ struct{} `type:"structure"`
13265
13266	// Represents information about an action configuration.
13267	ActionConfiguration *ActionConfiguration `locationName:"actionConfiguration" type:"structure"`
13268
13269	// Represents information about an action type.
13270	ActionTypeId *ActionTypeId `locationName:"actionTypeId" type:"structure"`
13271
13272	// Represents an AWS session credentials object. These credentials are temporary
13273	// credentials that are issued by AWS Secure Token Service (STS). They can be
13274	// used to access input and output artifacts in the S3 bucket used to store
13275	// artifact for the pipeline in AWS CodePipeline.
13276	ArtifactCredentials *AWSSessionCredentials `locationName:"artifactCredentials" type:"structure" sensitive:"true"`
13277
13278	// A system-generated token, such as a AWS CodeDeploy deployment ID, that a
13279	// job requires to continue the job asynchronously.
13280	ContinuationToken *string `locationName:"continuationToken" min:"1" type:"string"`
13281
13282	// The encryption key used to encrypt and decrypt data in the artifact store
13283	// for the pipeline, such as an AWS Key Management Service (AWS KMS) key. This
13284	// is optional and might not be present.
13285	EncryptionKey *EncryptionKey `locationName:"encryptionKey" type:"structure"`
13286
13287	// The name of the artifact that is worked on by the action, if any. This name
13288	// might be system-generated, such as "MyApp", or it might be defined by the
13289	// user when the action is created. The input artifact name must match the name
13290	// of an output artifact generated by an action in an earlier action or stage
13291	// of the pipeline.
13292	InputArtifacts []*Artifact `locationName:"inputArtifacts" type:"list"`
13293
13294	// The name of the artifact that is the result of the action, if any. This name
13295	// might be system-generated, such as "MyBuiltApp", or it might be defined by
13296	// the user when the action is created.
13297	OutputArtifacts []*Artifact `locationName:"outputArtifacts" type:"list"`
13298
13299	// Represents information about a pipeline to a job worker.
13300	//
13301	// Does not include pipelineArn and pipelineExecutionId for ThirdParty jobs.
13302	PipelineContext *PipelineContext `locationName:"pipelineContext" type:"structure"`
13303}
13304
13305// String returns the string representation
13306func (s ThirdPartyJobData) String() string {
13307	return awsutil.Prettify(s)
13308}
13309
13310// GoString returns the string representation
13311func (s ThirdPartyJobData) GoString() string {
13312	return s.String()
13313}
13314
13315// SetActionConfiguration sets the ActionConfiguration field's value.
13316func (s *ThirdPartyJobData) SetActionConfiguration(v *ActionConfiguration) *ThirdPartyJobData {
13317	s.ActionConfiguration = v
13318	return s
13319}
13320
13321// SetActionTypeId sets the ActionTypeId field's value.
13322func (s *ThirdPartyJobData) SetActionTypeId(v *ActionTypeId) *ThirdPartyJobData {
13323	s.ActionTypeId = v
13324	return s
13325}
13326
13327// SetArtifactCredentials sets the ArtifactCredentials field's value.
13328func (s *ThirdPartyJobData) SetArtifactCredentials(v *AWSSessionCredentials) *ThirdPartyJobData {
13329	s.ArtifactCredentials = v
13330	return s
13331}
13332
13333// SetContinuationToken sets the ContinuationToken field's value.
13334func (s *ThirdPartyJobData) SetContinuationToken(v string) *ThirdPartyJobData {
13335	s.ContinuationToken = &v
13336	return s
13337}
13338
13339// SetEncryptionKey sets the EncryptionKey field's value.
13340func (s *ThirdPartyJobData) SetEncryptionKey(v *EncryptionKey) *ThirdPartyJobData {
13341	s.EncryptionKey = v
13342	return s
13343}
13344
13345// SetInputArtifacts sets the InputArtifacts field's value.
13346func (s *ThirdPartyJobData) SetInputArtifacts(v []*Artifact) *ThirdPartyJobData {
13347	s.InputArtifacts = v
13348	return s
13349}
13350
13351// SetOutputArtifacts sets the OutputArtifacts field's value.
13352func (s *ThirdPartyJobData) SetOutputArtifacts(v []*Artifact) *ThirdPartyJobData {
13353	s.OutputArtifacts = v
13354	return s
13355}
13356
13357// SetPipelineContext sets the PipelineContext field's value.
13358func (s *ThirdPartyJobData) SetPipelineContext(v *PipelineContext) *ThirdPartyJobData {
13359	s.PipelineContext = v
13360	return s
13361}
13362
13363// The details of a job sent in response to a GetThirdPartyJobDetails request.
13364type ThirdPartyJobDetails struct {
13365	_ struct{} `type:"structure"`
13366
13367	// The data to be returned by the third party job worker.
13368	Data *ThirdPartyJobData `locationName:"data" type:"structure"`
13369
13370	// The identifier used to identify the job details in AWS CodePipeline.
13371	Id *string `locationName:"id" min:"1" type:"string"`
13372
13373	// A system-generated random number that AWS CodePipeline uses to ensure that
13374	// the job is being worked on by only one job worker. Use this number in an
13375	// AcknowledgeThirdPartyJob request.
13376	Nonce *string `locationName:"nonce" min:"1" type:"string"`
13377}
13378
13379// String returns the string representation
13380func (s ThirdPartyJobDetails) String() string {
13381	return awsutil.Prettify(s)
13382}
13383
13384// GoString returns the string representation
13385func (s ThirdPartyJobDetails) GoString() string {
13386	return s.String()
13387}
13388
13389// SetData sets the Data field's value.
13390func (s *ThirdPartyJobDetails) SetData(v *ThirdPartyJobData) *ThirdPartyJobDetails {
13391	s.Data = v
13392	return s
13393}
13394
13395// SetId sets the Id field's value.
13396func (s *ThirdPartyJobDetails) SetId(v string) *ThirdPartyJobDetails {
13397	s.Id = &v
13398	return s
13399}
13400
13401// SetNonce sets the Nonce field's value.
13402func (s *ThirdPartyJobDetails) SetNonce(v string) *ThirdPartyJobDetails {
13403	s.Nonce = &v
13404	return s
13405}
13406
13407// The tags limit for a resource has been exceeded.
13408type TooManyTagsException struct {
13409	_            struct{}                  `type:"structure"`
13410	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
13411
13412	Message_ *string `locationName:"message" min:"1" type:"string"`
13413}
13414
13415// String returns the string representation
13416func (s TooManyTagsException) String() string {
13417	return awsutil.Prettify(s)
13418}
13419
13420// GoString returns the string representation
13421func (s TooManyTagsException) GoString() string {
13422	return s.String()
13423}
13424
13425func newErrorTooManyTagsException(v protocol.ResponseMetadata) error {
13426	return &TooManyTagsException{
13427		RespMetadata: v,
13428	}
13429}
13430
13431// Code returns the exception type name.
13432func (s *TooManyTagsException) Code() string {
13433	return "TooManyTagsException"
13434}
13435
13436// Message returns the exception's message.
13437func (s *TooManyTagsException) Message() string {
13438	if s.Message_ != nil {
13439		return *s.Message_
13440	}
13441	return ""
13442}
13443
13444// OrigErr always returns nil, satisfies awserr.Error interface.
13445func (s *TooManyTagsException) OrigErr() error {
13446	return nil
13447}
13448
13449func (s *TooManyTagsException) Error() string {
13450	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
13451}
13452
13453// Status code returns the HTTP status code for the request's response error.
13454func (s *TooManyTagsException) StatusCode() int {
13455	return s.RespMetadata.StatusCode
13456}
13457
13458// RequestID returns the service's response RequestID for request.
13459func (s *TooManyTagsException) RequestID() string {
13460	return s.RespMetadata.RequestID
13461}
13462
13463// Represents information about the state of transitions between one stage and
13464// another stage.
13465type TransitionState struct {
13466	_ struct{} `type:"structure"`
13467
13468	// The user-specified reason why the transition between two stages of a pipeline
13469	// was disabled.
13470	DisabledReason *string `locationName:"disabledReason" min:"1" type:"string"`
13471
13472	// Whether the transition between stages is enabled (true) or disabled (false).
13473	Enabled *bool `locationName:"enabled" type:"boolean"`
13474
13475	// The timestamp when the transition state was last changed.
13476	LastChangedAt *time.Time `locationName:"lastChangedAt" type:"timestamp"`
13477
13478	// The ID of the user who last changed the transition state.
13479	LastChangedBy *string `locationName:"lastChangedBy" type:"string"`
13480}
13481
13482// String returns the string representation
13483func (s TransitionState) String() string {
13484	return awsutil.Prettify(s)
13485}
13486
13487// GoString returns the string representation
13488func (s TransitionState) GoString() string {
13489	return s.String()
13490}
13491
13492// SetDisabledReason sets the DisabledReason field's value.
13493func (s *TransitionState) SetDisabledReason(v string) *TransitionState {
13494	s.DisabledReason = &v
13495	return s
13496}
13497
13498// SetEnabled sets the Enabled field's value.
13499func (s *TransitionState) SetEnabled(v bool) *TransitionState {
13500	s.Enabled = &v
13501	return s
13502}
13503
13504// SetLastChangedAt sets the LastChangedAt field's value.
13505func (s *TransitionState) SetLastChangedAt(v time.Time) *TransitionState {
13506	s.LastChangedAt = &v
13507	return s
13508}
13509
13510// SetLastChangedBy sets the LastChangedBy field's value.
13511func (s *TransitionState) SetLastChangedBy(v string) *TransitionState {
13512	s.LastChangedBy = &v
13513	return s
13514}
13515
13516type UntagResourceInput struct {
13517	_ struct{} `type:"structure"`
13518
13519	// The Amazon Resource Name (ARN) of the resource to remove tags from.
13520	//
13521	// ResourceArn is a required field
13522	ResourceArn *string `locationName:"resourceArn" type:"string" required:"true"`
13523
13524	// The list of keys for the tags to be removed from the resource.
13525	//
13526	// TagKeys is a required field
13527	TagKeys []*string `locationName:"tagKeys" type:"list" required:"true"`
13528}
13529
13530// String returns the string representation
13531func (s UntagResourceInput) String() string {
13532	return awsutil.Prettify(s)
13533}
13534
13535// GoString returns the string representation
13536func (s UntagResourceInput) GoString() string {
13537	return s.String()
13538}
13539
13540// Validate inspects the fields of the type to determine if they are valid.
13541func (s *UntagResourceInput) Validate() error {
13542	invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"}
13543	if s.ResourceArn == nil {
13544		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
13545	}
13546	if s.TagKeys == nil {
13547		invalidParams.Add(request.NewErrParamRequired("TagKeys"))
13548	}
13549
13550	if invalidParams.Len() > 0 {
13551		return invalidParams
13552	}
13553	return nil
13554}
13555
13556// SetResourceArn sets the ResourceArn field's value.
13557func (s *UntagResourceInput) SetResourceArn(v string) *UntagResourceInput {
13558	s.ResourceArn = &v
13559	return s
13560}
13561
13562// SetTagKeys sets the TagKeys field's value.
13563func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput {
13564	s.TagKeys = v
13565	return s
13566}
13567
13568type UntagResourceOutput struct {
13569	_ struct{} `type:"structure"`
13570}
13571
13572// String returns the string representation
13573func (s UntagResourceOutput) String() string {
13574	return awsutil.Prettify(s)
13575}
13576
13577// GoString returns the string representation
13578func (s UntagResourceOutput) GoString() string {
13579	return s.String()
13580}
13581
13582type UpdateActionTypeInput struct {
13583	_ struct{} `type:"structure"`
13584
13585	// The action type definition for the action type to be updated.
13586	//
13587	// ActionType is a required field
13588	ActionType *ActionTypeDeclaration `locationName:"actionType" type:"structure" required:"true"`
13589}
13590
13591// String returns the string representation
13592func (s UpdateActionTypeInput) String() string {
13593	return awsutil.Prettify(s)
13594}
13595
13596// GoString returns the string representation
13597func (s UpdateActionTypeInput) GoString() string {
13598	return s.String()
13599}
13600
13601// Validate inspects the fields of the type to determine if they are valid.
13602func (s *UpdateActionTypeInput) Validate() error {
13603	invalidParams := request.ErrInvalidParams{Context: "UpdateActionTypeInput"}
13604	if s.ActionType == nil {
13605		invalidParams.Add(request.NewErrParamRequired("ActionType"))
13606	}
13607	if s.ActionType != nil {
13608		if err := s.ActionType.Validate(); err != nil {
13609			invalidParams.AddNested("ActionType", err.(request.ErrInvalidParams))
13610		}
13611	}
13612
13613	if invalidParams.Len() > 0 {
13614		return invalidParams
13615	}
13616	return nil
13617}
13618
13619// SetActionType sets the ActionType field's value.
13620func (s *UpdateActionTypeInput) SetActionType(v *ActionTypeDeclaration) *UpdateActionTypeInput {
13621	s.ActionType = v
13622	return s
13623}
13624
13625type UpdateActionTypeOutput struct {
13626	_ struct{} `type:"structure"`
13627}
13628
13629// String returns the string representation
13630func (s UpdateActionTypeOutput) String() string {
13631	return awsutil.Prettify(s)
13632}
13633
13634// GoString returns the string representation
13635func (s UpdateActionTypeOutput) GoString() string {
13636	return s.String()
13637}
13638
13639// Represents the input of an UpdatePipeline action.
13640type UpdatePipelineInput struct {
13641	_ struct{} `type:"structure"`
13642
13643	// The name of the pipeline to be updated.
13644	//
13645	// Pipeline is a required field
13646	Pipeline *PipelineDeclaration `locationName:"pipeline" type:"structure" required:"true"`
13647}
13648
13649// String returns the string representation
13650func (s UpdatePipelineInput) String() string {
13651	return awsutil.Prettify(s)
13652}
13653
13654// GoString returns the string representation
13655func (s UpdatePipelineInput) GoString() string {
13656	return s.String()
13657}
13658
13659// Validate inspects the fields of the type to determine if they are valid.
13660func (s *UpdatePipelineInput) Validate() error {
13661	invalidParams := request.ErrInvalidParams{Context: "UpdatePipelineInput"}
13662	if s.Pipeline == nil {
13663		invalidParams.Add(request.NewErrParamRequired("Pipeline"))
13664	}
13665	if s.Pipeline != nil {
13666		if err := s.Pipeline.Validate(); err != nil {
13667			invalidParams.AddNested("Pipeline", err.(request.ErrInvalidParams))
13668		}
13669	}
13670
13671	if invalidParams.Len() > 0 {
13672		return invalidParams
13673	}
13674	return nil
13675}
13676
13677// SetPipeline sets the Pipeline field's value.
13678func (s *UpdatePipelineInput) SetPipeline(v *PipelineDeclaration) *UpdatePipelineInput {
13679	s.Pipeline = v
13680	return s
13681}
13682
13683// Represents the output of an UpdatePipeline action.
13684type UpdatePipelineOutput struct {
13685	_ struct{} `type:"structure"`
13686
13687	// The structure of the updated pipeline.
13688	Pipeline *PipelineDeclaration `locationName:"pipeline" type:"structure"`
13689}
13690
13691// String returns the string representation
13692func (s UpdatePipelineOutput) String() string {
13693	return awsutil.Prettify(s)
13694}
13695
13696// GoString returns the string representation
13697func (s UpdatePipelineOutput) GoString() string {
13698	return s.String()
13699}
13700
13701// SetPipeline sets the Pipeline field's value.
13702func (s *UpdatePipelineOutput) SetPipeline(v *PipelineDeclaration) *UpdatePipelineOutput {
13703	s.Pipeline = v
13704	return s
13705}
13706
13707// The validation was specified in an invalid format.
13708type ValidationException struct {
13709	_            struct{}                  `type:"structure"`
13710	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
13711
13712	Message_ *string `locationName:"message" type:"string"`
13713}
13714
13715// String returns the string representation
13716func (s ValidationException) String() string {
13717	return awsutil.Prettify(s)
13718}
13719
13720// GoString returns the string representation
13721func (s ValidationException) GoString() string {
13722	return s.String()
13723}
13724
13725func newErrorValidationException(v protocol.ResponseMetadata) error {
13726	return &ValidationException{
13727		RespMetadata: v,
13728	}
13729}
13730
13731// Code returns the exception type name.
13732func (s *ValidationException) Code() string {
13733	return "ValidationException"
13734}
13735
13736// Message returns the exception's message.
13737func (s *ValidationException) Message() string {
13738	if s.Message_ != nil {
13739		return *s.Message_
13740	}
13741	return ""
13742}
13743
13744// OrigErr always returns nil, satisfies awserr.Error interface.
13745func (s *ValidationException) OrigErr() error {
13746	return nil
13747}
13748
13749func (s *ValidationException) Error() string {
13750	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
13751}
13752
13753// Status code returns the HTTP status code for the request's response error.
13754func (s *ValidationException) StatusCode() int {
13755	return s.RespMetadata.StatusCode
13756}
13757
13758// RequestID returns the service's response RequestID for request.
13759func (s *ValidationException) RequestID() string {
13760	return s.RespMetadata.RequestID
13761}
13762
13763// The authentication applied to incoming webhook trigger requests.
13764type WebhookAuthConfiguration struct {
13765	_ struct{} `type:"structure"`
13766
13767	// The property used to configure acceptance of webhooks in an IP address range.
13768	// For IP, only the AllowedIPRange property must be set. This property must
13769	// be set to a valid CIDR range.
13770	AllowedIPRange *string `min:"1" type:"string"`
13771
13772	// The property used to configure GitHub authentication. For GITHUB_HMAC, only
13773	// the SecretToken property must be set.
13774	SecretToken *string `min:"1" type:"string"`
13775}
13776
13777// String returns the string representation
13778func (s WebhookAuthConfiguration) String() string {
13779	return awsutil.Prettify(s)
13780}
13781
13782// GoString returns the string representation
13783func (s WebhookAuthConfiguration) GoString() string {
13784	return s.String()
13785}
13786
13787// Validate inspects the fields of the type to determine if they are valid.
13788func (s *WebhookAuthConfiguration) Validate() error {
13789	invalidParams := request.ErrInvalidParams{Context: "WebhookAuthConfiguration"}
13790	if s.AllowedIPRange != nil && len(*s.AllowedIPRange) < 1 {
13791		invalidParams.Add(request.NewErrParamMinLen("AllowedIPRange", 1))
13792	}
13793	if s.SecretToken != nil && len(*s.SecretToken) < 1 {
13794		invalidParams.Add(request.NewErrParamMinLen("SecretToken", 1))
13795	}
13796
13797	if invalidParams.Len() > 0 {
13798		return invalidParams
13799	}
13800	return nil
13801}
13802
13803// SetAllowedIPRange sets the AllowedIPRange field's value.
13804func (s *WebhookAuthConfiguration) SetAllowedIPRange(v string) *WebhookAuthConfiguration {
13805	s.AllowedIPRange = &v
13806	return s
13807}
13808
13809// SetSecretToken sets the SecretToken field's value.
13810func (s *WebhookAuthConfiguration) SetSecretToken(v string) *WebhookAuthConfiguration {
13811	s.SecretToken = &v
13812	return s
13813}
13814
13815// Represents information about a webhook and its definition.
13816type WebhookDefinition struct {
13817	_ struct{} `type:"structure"`
13818
13819	// Supported options are GITHUB_HMAC, IP, and UNAUTHENTICATED.
13820	//
13821	//    * For information about the authentication scheme implemented by GITHUB_HMAC,
13822	//    see Securing your webhooks (https://developer.github.com/webhooks/securing/)
13823	//    on the GitHub Developer website.
13824	//
13825	//    * IP rejects webhooks trigger requests unless they originate from an IP
13826	//    address in the IP range whitelisted in the authentication configuration.
13827	//
13828	//    * UNAUTHENTICATED accepts all webhook trigger requests regardless of origin.
13829	//
13830	// Authentication is a required field
13831	Authentication *string `locationName:"authentication" type:"string" required:"true" enum:"WebhookAuthenticationType"`
13832
13833	// Properties that configure the authentication applied to incoming webhook
13834	// trigger requests. The required properties depend on the authentication type.
13835	// For GITHUB_HMAC, only the SecretToken property must be set. For IP, only
13836	// the AllowedIPRange property must be set to a valid CIDR range. For UNAUTHENTICATED,
13837	// no properties can be set.
13838	//
13839	// AuthenticationConfiguration is a required field
13840	AuthenticationConfiguration *WebhookAuthConfiguration `locationName:"authenticationConfiguration" type:"structure" required:"true"`
13841
13842	// A list of rules applied to the body/payload sent in the POST request to a
13843	// webhook URL. All defined rules must pass for the request to be accepted and
13844	// the pipeline started.
13845	//
13846	// Filters is a required field
13847	Filters []*WebhookFilterRule `locationName:"filters" type:"list" required:"true"`
13848
13849	// The name of the webhook.
13850	//
13851	// Name is a required field
13852	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
13853
13854	// The name of the action in a pipeline you want to connect to the webhook.
13855	// The action must be from the source (first) stage of the pipeline.
13856	//
13857	// TargetAction is a required field
13858	TargetAction *string `locationName:"targetAction" min:"1" type:"string" required:"true"`
13859
13860	// The name of the pipeline you want to connect to the webhook.
13861	//
13862	// TargetPipeline is a required field
13863	TargetPipeline *string `locationName:"targetPipeline" min:"1" type:"string" required:"true"`
13864}
13865
13866// String returns the string representation
13867func (s WebhookDefinition) String() string {
13868	return awsutil.Prettify(s)
13869}
13870
13871// GoString returns the string representation
13872func (s WebhookDefinition) GoString() string {
13873	return s.String()
13874}
13875
13876// Validate inspects the fields of the type to determine if they are valid.
13877func (s *WebhookDefinition) Validate() error {
13878	invalidParams := request.ErrInvalidParams{Context: "WebhookDefinition"}
13879	if s.Authentication == nil {
13880		invalidParams.Add(request.NewErrParamRequired("Authentication"))
13881	}
13882	if s.AuthenticationConfiguration == nil {
13883		invalidParams.Add(request.NewErrParamRequired("AuthenticationConfiguration"))
13884	}
13885	if s.Filters == nil {
13886		invalidParams.Add(request.NewErrParamRequired("Filters"))
13887	}
13888	if s.Name == nil {
13889		invalidParams.Add(request.NewErrParamRequired("Name"))
13890	}
13891	if s.Name != nil && len(*s.Name) < 1 {
13892		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
13893	}
13894	if s.TargetAction == nil {
13895		invalidParams.Add(request.NewErrParamRequired("TargetAction"))
13896	}
13897	if s.TargetAction != nil && len(*s.TargetAction) < 1 {
13898		invalidParams.Add(request.NewErrParamMinLen("TargetAction", 1))
13899	}
13900	if s.TargetPipeline == nil {
13901		invalidParams.Add(request.NewErrParamRequired("TargetPipeline"))
13902	}
13903	if s.TargetPipeline != nil && len(*s.TargetPipeline) < 1 {
13904		invalidParams.Add(request.NewErrParamMinLen("TargetPipeline", 1))
13905	}
13906	if s.AuthenticationConfiguration != nil {
13907		if err := s.AuthenticationConfiguration.Validate(); err != nil {
13908			invalidParams.AddNested("AuthenticationConfiguration", err.(request.ErrInvalidParams))
13909		}
13910	}
13911	if s.Filters != nil {
13912		for i, v := range s.Filters {
13913			if v == nil {
13914				continue
13915			}
13916			if err := v.Validate(); err != nil {
13917				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Filters", i), err.(request.ErrInvalidParams))
13918			}
13919		}
13920	}
13921
13922	if invalidParams.Len() > 0 {
13923		return invalidParams
13924	}
13925	return nil
13926}
13927
13928// SetAuthentication sets the Authentication field's value.
13929func (s *WebhookDefinition) SetAuthentication(v string) *WebhookDefinition {
13930	s.Authentication = &v
13931	return s
13932}
13933
13934// SetAuthenticationConfiguration sets the AuthenticationConfiguration field's value.
13935func (s *WebhookDefinition) SetAuthenticationConfiguration(v *WebhookAuthConfiguration) *WebhookDefinition {
13936	s.AuthenticationConfiguration = v
13937	return s
13938}
13939
13940// SetFilters sets the Filters field's value.
13941func (s *WebhookDefinition) SetFilters(v []*WebhookFilterRule) *WebhookDefinition {
13942	s.Filters = v
13943	return s
13944}
13945
13946// SetName sets the Name field's value.
13947func (s *WebhookDefinition) SetName(v string) *WebhookDefinition {
13948	s.Name = &v
13949	return s
13950}
13951
13952// SetTargetAction sets the TargetAction field's value.
13953func (s *WebhookDefinition) SetTargetAction(v string) *WebhookDefinition {
13954	s.TargetAction = &v
13955	return s
13956}
13957
13958// SetTargetPipeline sets the TargetPipeline field's value.
13959func (s *WebhookDefinition) SetTargetPipeline(v string) *WebhookDefinition {
13960	s.TargetPipeline = &v
13961	return s
13962}
13963
13964// The event criteria that specify when a webhook notification is sent to your
13965// URL.
13966type WebhookFilterRule struct {
13967	_ struct{} `type:"structure"`
13968
13969	// A JsonPath expression that is applied to the body/payload of the webhook.
13970	// The value selected by the JsonPath expression must match the value specified
13971	// in the MatchEquals field. Otherwise, the request is ignored. For more information,
13972	// see Java JsonPath implementation (https://github.com/json-path/JsonPath)
13973	// in GitHub.
13974	//
13975	// JsonPath is a required field
13976	JsonPath *string `locationName:"jsonPath" min:"1" type:"string" required:"true"`
13977
13978	// The value selected by the JsonPath expression must match what is supplied
13979	// in the MatchEquals field. Otherwise, the request is ignored. Properties from
13980	// the target action configuration can be included as placeholders in this value
13981	// by surrounding the action configuration key with curly brackets. For example,
13982	// if the value supplied here is "refs/heads/{Branch}" and the target action
13983	// has an action configuration property called "Branch" with a value of "master",
13984	// the MatchEquals value is evaluated as "refs/heads/master". For a list of
13985	// action configuration properties for built-in action types, see Pipeline Structure
13986	// Reference Action Requirements (https://docs.aws.amazon.com/codepipeline/latest/userguide/reference-pipeline-structure.html#action-requirements).
13987	MatchEquals *string `locationName:"matchEquals" min:"1" type:"string"`
13988}
13989
13990// String returns the string representation
13991func (s WebhookFilterRule) String() string {
13992	return awsutil.Prettify(s)
13993}
13994
13995// GoString returns the string representation
13996func (s WebhookFilterRule) GoString() string {
13997	return s.String()
13998}
13999
14000// Validate inspects the fields of the type to determine if they are valid.
14001func (s *WebhookFilterRule) Validate() error {
14002	invalidParams := request.ErrInvalidParams{Context: "WebhookFilterRule"}
14003	if s.JsonPath == nil {
14004		invalidParams.Add(request.NewErrParamRequired("JsonPath"))
14005	}
14006	if s.JsonPath != nil && len(*s.JsonPath) < 1 {
14007		invalidParams.Add(request.NewErrParamMinLen("JsonPath", 1))
14008	}
14009	if s.MatchEquals != nil && len(*s.MatchEquals) < 1 {
14010		invalidParams.Add(request.NewErrParamMinLen("MatchEquals", 1))
14011	}
14012
14013	if invalidParams.Len() > 0 {
14014		return invalidParams
14015	}
14016	return nil
14017}
14018
14019// SetJsonPath sets the JsonPath field's value.
14020func (s *WebhookFilterRule) SetJsonPath(v string) *WebhookFilterRule {
14021	s.JsonPath = &v
14022	return s
14023}
14024
14025// SetMatchEquals sets the MatchEquals field's value.
14026func (s *WebhookFilterRule) SetMatchEquals(v string) *WebhookFilterRule {
14027	s.MatchEquals = &v
14028	return s
14029}
14030
14031// The specified webhook was entered in an invalid format or cannot be found.
14032type WebhookNotFoundException struct {
14033	_            struct{}                  `type:"structure"`
14034	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
14035
14036	Message_ *string `locationName:"message" type:"string"`
14037}
14038
14039// String returns the string representation
14040func (s WebhookNotFoundException) String() string {
14041	return awsutil.Prettify(s)
14042}
14043
14044// GoString returns the string representation
14045func (s WebhookNotFoundException) GoString() string {
14046	return s.String()
14047}
14048
14049func newErrorWebhookNotFoundException(v protocol.ResponseMetadata) error {
14050	return &WebhookNotFoundException{
14051		RespMetadata: v,
14052	}
14053}
14054
14055// Code returns the exception type name.
14056func (s *WebhookNotFoundException) Code() string {
14057	return "WebhookNotFoundException"
14058}
14059
14060// Message returns the exception's message.
14061func (s *WebhookNotFoundException) Message() string {
14062	if s.Message_ != nil {
14063		return *s.Message_
14064	}
14065	return ""
14066}
14067
14068// OrigErr always returns nil, satisfies awserr.Error interface.
14069func (s *WebhookNotFoundException) OrigErr() error {
14070	return nil
14071}
14072
14073func (s *WebhookNotFoundException) Error() string {
14074	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
14075}
14076
14077// Status code returns the HTTP status code for the request's response error.
14078func (s *WebhookNotFoundException) StatusCode() int {
14079	return s.RespMetadata.StatusCode
14080}
14081
14082// RequestID returns the service's response RequestID for request.
14083func (s *WebhookNotFoundException) RequestID() string {
14084	return s.RespMetadata.RequestID
14085}
14086
14087const (
14088	// ActionCategorySource is a ActionCategory enum value
14089	ActionCategorySource = "Source"
14090
14091	// ActionCategoryBuild is a ActionCategory enum value
14092	ActionCategoryBuild = "Build"
14093
14094	// ActionCategoryDeploy is a ActionCategory enum value
14095	ActionCategoryDeploy = "Deploy"
14096
14097	// ActionCategoryTest is a ActionCategory enum value
14098	ActionCategoryTest = "Test"
14099
14100	// ActionCategoryInvoke is a ActionCategory enum value
14101	ActionCategoryInvoke = "Invoke"
14102
14103	// ActionCategoryApproval is a ActionCategory enum value
14104	ActionCategoryApproval = "Approval"
14105)
14106
14107// ActionCategory_Values returns all elements of the ActionCategory enum
14108func ActionCategory_Values() []string {
14109	return []string{
14110		ActionCategorySource,
14111		ActionCategoryBuild,
14112		ActionCategoryDeploy,
14113		ActionCategoryTest,
14114		ActionCategoryInvoke,
14115		ActionCategoryApproval,
14116	}
14117}
14118
14119const (
14120	// ActionConfigurationPropertyTypeString is a ActionConfigurationPropertyType enum value
14121	ActionConfigurationPropertyTypeString = "String"
14122
14123	// ActionConfigurationPropertyTypeNumber is a ActionConfigurationPropertyType enum value
14124	ActionConfigurationPropertyTypeNumber = "Number"
14125
14126	// ActionConfigurationPropertyTypeBoolean is a ActionConfigurationPropertyType enum value
14127	ActionConfigurationPropertyTypeBoolean = "Boolean"
14128)
14129
14130// ActionConfigurationPropertyType_Values returns all elements of the ActionConfigurationPropertyType enum
14131func ActionConfigurationPropertyType_Values() []string {
14132	return []string{
14133		ActionConfigurationPropertyTypeString,
14134		ActionConfigurationPropertyTypeNumber,
14135		ActionConfigurationPropertyTypeBoolean,
14136	}
14137}
14138
14139const (
14140	// ActionExecutionStatusInProgress is a ActionExecutionStatus enum value
14141	ActionExecutionStatusInProgress = "InProgress"
14142
14143	// ActionExecutionStatusAbandoned is a ActionExecutionStatus enum value
14144	ActionExecutionStatusAbandoned = "Abandoned"
14145
14146	// ActionExecutionStatusSucceeded is a ActionExecutionStatus enum value
14147	ActionExecutionStatusSucceeded = "Succeeded"
14148
14149	// ActionExecutionStatusFailed is a ActionExecutionStatus enum value
14150	ActionExecutionStatusFailed = "Failed"
14151)
14152
14153// ActionExecutionStatus_Values returns all elements of the ActionExecutionStatus enum
14154func ActionExecutionStatus_Values() []string {
14155	return []string{
14156		ActionExecutionStatusInProgress,
14157		ActionExecutionStatusAbandoned,
14158		ActionExecutionStatusSucceeded,
14159		ActionExecutionStatusFailed,
14160	}
14161}
14162
14163const (
14164	// ActionOwnerAws is a ActionOwner enum value
14165	ActionOwnerAws = "AWS"
14166
14167	// ActionOwnerThirdParty is a ActionOwner enum value
14168	ActionOwnerThirdParty = "ThirdParty"
14169
14170	// ActionOwnerCustom is a ActionOwner enum value
14171	ActionOwnerCustom = "Custom"
14172)
14173
14174// ActionOwner_Values returns all elements of the ActionOwner enum
14175func ActionOwner_Values() []string {
14176	return []string{
14177		ActionOwnerAws,
14178		ActionOwnerThirdParty,
14179		ActionOwnerCustom,
14180	}
14181}
14182
14183const (
14184	// ApprovalStatusApproved is a ApprovalStatus enum value
14185	ApprovalStatusApproved = "Approved"
14186
14187	// ApprovalStatusRejected is a ApprovalStatus enum value
14188	ApprovalStatusRejected = "Rejected"
14189)
14190
14191// ApprovalStatus_Values returns all elements of the ApprovalStatus enum
14192func ApprovalStatus_Values() []string {
14193	return []string{
14194		ApprovalStatusApproved,
14195		ApprovalStatusRejected,
14196	}
14197}
14198
14199const (
14200	// ArtifactLocationTypeS3 is a ArtifactLocationType enum value
14201	ArtifactLocationTypeS3 = "S3"
14202)
14203
14204// ArtifactLocationType_Values returns all elements of the ArtifactLocationType enum
14205func ArtifactLocationType_Values() []string {
14206	return []string{
14207		ArtifactLocationTypeS3,
14208	}
14209}
14210
14211const (
14212	// ArtifactStoreTypeS3 is a ArtifactStoreType enum value
14213	ArtifactStoreTypeS3 = "S3"
14214)
14215
14216// ArtifactStoreType_Values returns all elements of the ArtifactStoreType enum
14217func ArtifactStoreType_Values() []string {
14218	return []string{
14219		ArtifactStoreTypeS3,
14220	}
14221}
14222
14223const (
14224	// BlockerTypeSchedule is a BlockerType enum value
14225	BlockerTypeSchedule = "Schedule"
14226)
14227
14228// BlockerType_Values returns all elements of the BlockerType enum
14229func BlockerType_Values() []string {
14230	return []string{
14231		BlockerTypeSchedule,
14232	}
14233}
14234
14235const (
14236	// EncryptionKeyTypeKms is a EncryptionKeyType enum value
14237	EncryptionKeyTypeKms = "KMS"
14238)
14239
14240// EncryptionKeyType_Values returns all elements of the EncryptionKeyType enum
14241func EncryptionKeyType_Values() []string {
14242	return []string{
14243		EncryptionKeyTypeKms,
14244	}
14245}
14246
14247const (
14248	// ExecutorTypeJobWorker is a ExecutorType enum value
14249	ExecutorTypeJobWorker = "JobWorker"
14250
14251	// ExecutorTypeLambda is a ExecutorType enum value
14252	ExecutorTypeLambda = "Lambda"
14253)
14254
14255// ExecutorType_Values returns all elements of the ExecutorType enum
14256func ExecutorType_Values() []string {
14257	return []string{
14258		ExecutorTypeJobWorker,
14259		ExecutorTypeLambda,
14260	}
14261}
14262
14263const (
14264	// FailureTypeJobFailed is a FailureType enum value
14265	FailureTypeJobFailed = "JobFailed"
14266
14267	// FailureTypeConfigurationError is a FailureType enum value
14268	FailureTypeConfigurationError = "ConfigurationError"
14269
14270	// FailureTypePermissionError is a FailureType enum value
14271	FailureTypePermissionError = "PermissionError"
14272
14273	// FailureTypeRevisionOutOfSync is a FailureType enum value
14274	FailureTypeRevisionOutOfSync = "RevisionOutOfSync"
14275
14276	// FailureTypeRevisionUnavailable is a FailureType enum value
14277	FailureTypeRevisionUnavailable = "RevisionUnavailable"
14278
14279	// FailureTypeSystemUnavailable is a FailureType enum value
14280	FailureTypeSystemUnavailable = "SystemUnavailable"
14281)
14282
14283// FailureType_Values returns all elements of the FailureType enum
14284func FailureType_Values() []string {
14285	return []string{
14286		FailureTypeJobFailed,
14287		FailureTypeConfigurationError,
14288		FailureTypePermissionError,
14289		FailureTypeRevisionOutOfSync,
14290		FailureTypeRevisionUnavailable,
14291		FailureTypeSystemUnavailable,
14292	}
14293}
14294
14295const (
14296	// JobStatusCreated is a JobStatus enum value
14297	JobStatusCreated = "Created"
14298
14299	// JobStatusQueued is a JobStatus enum value
14300	JobStatusQueued = "Queued"
14301
14302	// JobStatusDispatched is a JobStatus enum value
14303	JobStatusDispatched = "Dispatched"
14304
14305	// JobStatusInProgress is a JobStatus enum value
14306	JobStatusInProgress = "InProgress"
14307
14308	// JobStatusTimedOut is a JobStatus enum value
14309	JobStatusTimedOut = "TimedOut"
14310
14311	// JobStatusSucceeded is a JobStatus enum value
14312	JobStatusSucceeded = "Succeeded"
14313
14314	// JobStatusFailed is a JobStatus enum value
14315	JobStatusFailed = "Failed"
14316)
14317
14318// JobStatus_Values returns all elements of the JobStatus enum
14319func JobStatus_Values() []string {
14320	return []string{
14321		JobStatusCreated,
14322		JobStatusQueued,
14323		JobStatusDispatched,
14324		JobStatusInProgress,
14325		JobStatusTimedOut,
14326		JobStatusSucceeded,
14327		JobStatusFailed,
14328	}
14329}
14330
14331const (
14332	// PipelineExecutionStatusCancelled is a PipelineExecutionStatus enum value
14333	PipelineExecutionStatusCancelled = "Cancelled"
14334
14335	// PipelineExecutionStatusInProgress is a PipelineExecutionStatus enum value
14336	PipelineExecutionStatusInProgress = "InProgress"
14337
14338	// PipelineExecutionStatusStopped is a PipelineExecutionStatus enum value
14339	PipelineExecutionStatusStopped = "Stopped"
14340
14341	// PipelineExecutionStatusStopping is a PipelineExecutionStatus enum value
14342	PipelineExecutionStatusStopping = "Stopping"
14343
14344	// PipelineExecutionStatusSucceeded is a PipelineExecutionStatus enum value
14345	PipelineExecutionStatusSucceeded = "Succeeded"
14346
14347	// PipelineExecutionStatusSuperseded is a PipelineExecutionStatus enum value
14348	PipelineExecutionStatusSuperseded = "Superseded"
14349
14350	// PipelineExecutionStatusFailed is a PipelineExecutionStatus enum value
14351	PipelineExecutionStatusFailed = "Failed"
14352)
14353
14354// PipelineExecutionStatus_Values returns all elements of the PipelineExecutionStatus enum
14355func PipelineExecutionStatus_Values() []string {
14356	return []string{
14357		PipelineExecutionStatusCancelled,
14358		PipelineExecutionStatusInProgress,
14359		PipelineExecutionStatusStopped,
14360		PipelineExecutionStatusStopping,
14361		PipelineExecutionStatusSucceeded,
14362		PipelineExecutionStatusSuperseded,
14363		PipelineExecutionStatusFailed,
14364	}
14365}
14366
14367const (
14368	// StageExecutionStatusCancelled is a StageExecutionStatus enum value
14369	StageExecutionStatusCancelled = "Cancelled"
14370
14371	// StageExecutionStatusInProgress is a StageExecutionStatus enum value
14372	StageExecutionStatusInProgress = "InProgress"
14373
14374	// StageExecutionStatusFailed is a StageExecutionStatus enum value
14375	StageExecutionStatusFailed = "Failed"
14376
14377	// StageExecutionStatusStopped is a StageExecutionStatus enum value
14378	StageExecutionStatusStopped = "Stopped"
14379
14380	// StageExecutionStatusStopping is a StageExecutionStatus enum value
14381	StageExecutionStatusStopping = "Stopping"
14382
14383	// StageExecutionStatusSucceeded is a StageExecutionStatus enum value
14384	StageExecutionStatusSucceeded = "Succeeded"
14385)
14386
14387// StageExecutionStatus_Values returns all elements of the StageExecutionStatus enum
14388func StageExecutionStatus_Values() []string {
14389	return []string{
14390		StageExecutionStatusCancelled,
14391		StageExecutionStatusInProgress,
14392		StageExecutionStatusFailed,
14393		StageExecutionStatusStopped,
14394		StageExecutionStatusStopping,
14395		StageExecutionStatusSucceeded,
14396	}
14397}
14398
14399const (
14400	// StageRetryModeFailedActions is a StageRetryMode enum value
14401	StageRetryModeFailedActions = "FAILED_ACTIONS"
14402)
14403
14404// StageRetryMode_Values returns all elements of the StageRetryMode enum
14405func StageRetryMode_Values() []string {
14406	return []string{
14407		StageRetryModeFailedActions,
14408	}
14409}
14410
14411const (
14412	// StageTransitionTypeInbound is a StageTransitionType enum value
14413	StageTransitionTypeInbound = "Inbound"
14414
14415	// StageTransitionTypeOutbound is a StageTransitionType enum value
14416	StageTransitionTypeOutbound = "Outbound"
14417)
14418
14419// StageTransitionType_Values returns all elements of the StageTransitionType enum
14420func StageTransitionType_Values() []string {
14421	return []string{
14422		StageTransitionTypeInbound,
14423		StageTransitionTypeOutbound,
14424	}
14425}
14426
14427const (
14428	// TriggerTypeCreatePipeline is a TriggerType enum value
14429	TriggerTypeCreatePipeline = "CreatePipeline"
14430
14431	// TriggerTypeStartPipelineExecution is a TriggerType enum value
14432	TriggerTypeStartPipelineExecution = "StartPipelineExecution"
14433
14434	// TriggerTypePollForSourceChanges is a TriggerType enum value
14435	TriggerTypePollForSourceChanges = "PollForSourceChanges"
14436
14437	// TriggerTypeWebhook is a TriggerType enum value
14438	TriggerTypeWebhook = "Webhook"
14439
14440	// TriggerTypeCloudWatchEvent is a TriggerType enum value
14441	TriggerTypeCloudWatchEvent = "CloudWatchEvent"
14442
14443	// TriggerTypePutActionRevision is a TriggerType enum value
14444	TriggerTypePutActionRevision = "PutActionRevision"
14445)
14446
14447// TriggerType_Values returns all elements of the TriggerType enum
14448func TriggerType_Values() []string {
14449	return []string{
14450		TriggerTypeCreatePipeline,
14451		TriggerTypeStartPipelineExecution,
14452		TriggerTypePollForSourceChanges,
14453		TriggerTypeWebhook,
14454		TriggerTypeCloudWatchEvent,
14455		TriggerTypePutActionRevision,
14456	}
14457}
14458
14459const (
14460	// WebhookAuthenticationTypeGithubHmac is a WebhookAuthenticationType enum value
14461	WebhookAuthenticationTypeGithubHmac = "GITHUB_HMAC"
14462
14463	// WebhookAuthenticationTypeIp is a WebhookAuthenticationType enum value
14464	WebhookAuthenticationTypeIp = "IP"
14465
14466	// WebhookAuthenticationTypeUnauthenticated is a WebhookAuthenticationType enum value
14467	WebhookAuthenticationTypeUnauthenticated = "UNAUTHENTICATED"
14468)
14469
14470// WebhookAuthenticationType_Values returns all elements of the WebhookAuthenticationType enum
14471func WebhookAuthenticationType_Values() []string {
14472	return []string{
14473		WebhookAuthenticationTypeGithubHmac,
14474		WebhookAuthenticationTypeIp,
14475		WebhookAuthenticationTypeUnauthenticated,
14476	}
14477}
14478