From 5411e7d36b08fbb72d2045619b69c5994f1cdce8 Mon Sep 17 00:00:00 2001 From: Paul Stack Date: Mon, 30 Jan 2017 14:18:29 +0000 Subject: [PATCH] provider/aws: Bump SDK version to 1.6.18 (#11514) --- vendor/github.com/aws/aws-sdk-go/CHANGELOG.md | 45 + .../aws/aws-sdk-go/aws/session/session.go | 6 +- vendor/github.com/aws/aws-sdk-go/aws/types.go | 2 +- .../github.com/aws/aws-sdk-go/aws/version.go | 2 +- .../aws/aws-sdk-go/service/acm/api.go | 182 ++- .../aws/aws-sdk-go/service/codecommit/api.go | 701 ++++++++++- .../aws-sdk-go/service/codecommit/service.go | 78 +- .../aws/aws-sdk-go/service/codedeploy/api.go | 1030 ++++++++++++++--- .../aws/aws-sdk-go/service/ec2/api.go | 28 + .../aws/aws-sdk-go/service/ecs/api.go | 337 +++++- .../aws/aws-sdk-go/service/elbv2/api.go | 264 +++-- .../aws/aws-sdk-go/service/rds/api.go | 435 ++++++- .../aws-sdk-go/service/rds/customizations.go | 16 +- vendor/vendor.json | 628 +++++----- 14 files changed, 3008 insertions(+), 746 deletions(-) diff --git a/vendor/github.com/aws/aws-sdk-go/CHANGELOG.md b/vendor/github.com/aws/aws-sdk-go/CHANGELOG.md index 4b8943807..3153d8de9 100644 --- a/vendor/github.com/aws/aws-sdk-go/CHANGELOG.md +++ b/vendor/github.com/aws/aws-sdk-go/CHANGELOG.md @@ -1,3 +1,48 @@ +Release v1.6.18 (2017-01-27) +=== + +Service Client Updates +--- +* `service/clouddirectory`: Adds new service + * Amazon Cloud Directory is a highly scalable, high performance, multi-tenant directory service in the cloud. Its web-based directories make it easy for you to organize and manage application resources such as users, groups, locations, devices, policies, and the rich relationships between them. +* `service/codedeploy`: Updates service API, documentation, and paginators + * This release of AWS CodeDeploy introduces support for blue/green deployments. In a blue/green deployment, the current set of instances in a deployment group is replaced by new instances that have the latest application revision installed on them. After traffic is rerouted behind a load balancer to the replacement instances, the original instances can be terminated automatically or kept running for other uses. +* `service/ec2`: Updates service API and documentation + * Adds instance health check functionality to replace unhealthy EC2 Spot fleet instances with fresh ones. +* `service/rds`: Updates service API and documentation + * Snapshot Engine Version Upgrade + +Release v1.6.17 (2017-01-25) +=== + +Service Client Updates +--- +* `service/elbv2`: Updates service API, documentation, and paginators + * Application Load Balancers now support native Internet Protocol version 6 (IPv6) in an Amazon Virtual Private Cloud (VPC). With this ability, clients can now connect to the Application Load Balancer in a dual-stack mode via either IPv4 or IPv6. +* `service/rds`: Updates service API and documentation + * Cross Region Read Replica Copying (CreateDBInstanceReadReplica) + +Release v1.6.16 (2017-01-24) +=== + +Service Client Updates +--- +* `service/codebuild`: Updates service documentation and paginators + * Documentation updates +* `service/codecommit`: Updates service API, documentation, and paginators + * AWS CodeCommit now includes the option to view the differences between a commit and its parent commit from within the console. You can view the differences inline (Unified view) or side by side (Split view). To view information about the differences between a commit and something other than its parent, you can use the AWS CLI and the get-differences and get-blob commands, or you can use the GetDifferences and GetBlob APIs. +* `service/ecs`: Updates service API and documentation + * Amazon ECS now supports a state for container instances that can be used to drain a container instance in preparation for maintenance or cluster scale down. + +Release v1.6.15 (2017-01-20) +=== + +Service Client Updates +--- +* `service/acm`: Updates service API, documentation, and paginators + * Update for AWS Certificate Manager: Updated response elements for DescribeCertificate API in support of managed renewal +* `service/health`: Updates service documentation + Release v1.6.14 (2017-01-19) === diff --git a/vendor/github.com/aws/aws-sdk-go/aws/session/session.go b/vendor/github.com/aws/aws-sdk-go/aws/session/session.go index c9427e913..18743baf2 100644 --- a/vendor/github.com/aws/aws-sdk-go/aws/session/session.go +++ b/vendor/github.com/aws/aws-sdk-go/aws/session/session.go @@ -40,7 +40,7 @@ type Session struct { // // If the AWS_SDK_LOAD_CONFIG environment variable is set to a truthy value // the shared config file (~/.aws/config) will also be loaded, in addition to -// the shared credentials file (~/.aws/config). Values set in both the +// the shared credentials file (~/.aws/credentials). Values set in both the // shared config, and shared credentials will be taken from the shared // credentials file. // @@ -83,7 +83,7 @@ func New(cfgs ...*aws.Config) *Session { // // If the AWS_SDK_LOAD_CONFIG environment variable is set to a truthy value // the shared config file (~/.aws/config) will also be loaded in addition to -// the shared credentials file (~/.aws/config). Values set in both the +// the shared credentials file (~/.aws/credentials). Values set in both the // shared config, and shared credentials will be taken from the shared // credentials file. Enabling the Shared Config will also allow the Session // to be built with retrieving credentials with AssumeRole set in the config. @@ -155,7 +155,7 @@ type Options struct { // // If the AWS_SDK_LOAD_CONFIG environment variable is set to a truthy value // the shared config file (~/.aws/config) will also be loaded in addition to -// the shared credentials file (~/.aws/config). Values set in both the +// the shared credentials file (~/.aws/credentials). Values set in both the // shared config, and shared credentials will be taken from the shared // credentials file. Enabling the Shared Config will also allow the Session // to be built with retrieving credentials with AssumeRole set in the config. diff --git a/vendor/github.com/aws/aws-sdk-go/aws/types.go b/vendor/github.com/aws/aws-sdk-go/aws/types.go index 9ca685e90..0e2d864e1 100644 --- a/vendor/github.com/aws/aws-sdk-go/aws/types.go +++ b/vendor/github.com/aws/aws-sdk-go/aws/types.go @@ -114,5 +114,5 @@ func (b *WriteAtBuffer) WriteAt(p []byte, pos int64) (n int, err error) { func (b *WriteAtBuffer) Bytes() []byte { b.m.Lock() defer b.m.Unlock() - return b.buf[:len(b.buf):len(b.buf)] + return b.buf } diff --git a/vendor/github.com/aws/aws-sdk-go/aws/version.go b/vendor/github.com/aws/aws-sdk-go/aws/version.go index a415d0b11..289e65447 100644 --- a/vendor/github.com/aws/aws-sdk-go/aws/version.go +++ b/vendor/github.com/aws/aws-sdk-go/aws/version.go @@ -5,4 +5,4 @@ package aws const SDKName = "aws-sdk-go" // SDKVersion is the version of this SDK -const SDKVersion = "1.6.14" +const SDKVersion = "1.6.18" diff --git a/vendor/github.com/aws/aws-sdk-go/service/acm/api.go b/vendor/github.com/aws/aws-sdk-go/service/acm/api.go index 19bc0f325..4feb9a077 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/acm/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/acm/api.go @@ -235,11 +235,7 @@ func (c *ACM) DescribeCertificateRequest(input *DescribeCertificateInput) (req * // DescribeCertificate API operation for AWS Certificate Manager. // -// Returns a list of the fields contained in the specified ACM Certificate. -// For example, this action returns the certificate status, a flag that indicates -// whether the certificate is associated with any other AWS service, and the -// date at which the certificate request was created. You specify the ACM Certificate -// on input by its Amazon Resource Name (ARN). +// Returns detailed metadata about the specified ACM Certificate. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -580,10 +576,10 @@ func (c *ACM) ListTagsForCertificateRequest(input *ListTagsForCertificateInput) // ListTagsForCertificate API operation for AWS Certificate Manager. // -// Lists the tags that have been applied to the ACM Certificate. Use the certificate -// ARN to specify the certificate. To add a tag to an ACM Certificate, use the -// AddTagsToCertificate action. To delete a tag, use the RemoveTagsFromCertificate -// action. +// Lists the tags that have been applied to the ACM Certificate. Use the certificate's +// Amazon Resource Name (ARN) to specify the certificate. To add a tag to an +// ACM Certificate, use the AddTagsToCertificate action. To delete a tag, use +// the RemoveTagsFromCertificate action. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -945,8 +941,8 @@ func (s AddTagsToCertificateOutput) GoString() string { return s.String() } -// Contains detailed metadata about an ACM Certificate. This structure is returned -// in the response to a DescribeCertificate request. +// Contains metadata about an ACM certificate. This structure is returned in +// the response to a DescribeCertificate request. // Please also see https://docs.aws.amazon.com/goto/WebAPI/acm-2015-12-08/CertificateDetail type CertificateDetail struct { _ struct{} `type:"structure"` @@ -964,8 +960,9 @@ type CertificateDetail struct { // or example.com. DomainName *string `min:"1" type:"string"` - // Contains information about the email address or addresses used for domain - // validation. This field exists only when the certificate type is AMAZON_ISSUED. + // Contains information about the initial validation of each domain name that + // occurs as a result of the RequestCertificate request. This field exists only + // when the certificate type is AMAZON_ISSUED. DomainValidationOptions []*DomainValidation `min:"1" type:"list"` // The reason the certificate request failed. This value exists only when the @@ -999,6 +996,11 @@ type CertificateDetail struct { // The time before which the certificate is not valid. NotBefore *time.Time `type:"timestamp" timestampFormat:"unix"` + // Contains information about the status of ACM's managed renewal (http://docs.aws.amazon.com/acm/latest/userguide/acm-renewal.html) + // for the certificate. This field exists only when the certificate type is + // AMAZON_ISSUED. + RenewalSummary *RenewalSummary `type:"structure"` + // The reason the certificate was revoked. This value exists only when the certificate // status is REVOKED. RevocationReason *string `type:"string" enum:"RevocationReason"` @@ -1119,6 +1121,12 @@ func (s *CertificateDetail) SetNotBefore(v time.Time) *CertificateDetail { return s } +// SetRenewalSummary sets the RenewalSummary field's value. +func (s *CertificateDetail) SetRenewalSummary(v *RenewalSummary) *CertificateDetail { + s.RenewalSummary = v + return s +} + // SetRevocationReason sets the RevocationReason field's value. func (s *CertificateDetail) SetRevocationReason(v string) *CertificateDetail { s.RevocationReason = &v @@ -1274,7 +1282,8 @@ func (s DeleteCertificateOutput) GoString() string { type DescribeCertificateInput struct { _ struct{} `type:"structure"` - // String that contains an ACM Certificate ARN. The ARN must be of the form: + // The Amazon Resource Name (ARN) of the ACM Certificate. The ARN must have + // the following form: // // arn:aws:acm:region:123456789012:certificate/12345678-1234-1234-1234-123456789012 // @@ -1321,7 +1330,7 @@ func (s *DescribeCertificateInput) SetCertificateArn(v string) *DescribeCertific type DescribeCertificateOutput struct { _ struct{} `type:"structure"` - // Contains a CertificateDetail structure that lists the fields of an ACM Certificate. + // Metadata about an ACM certificate. Certificate *CertificateDetail `type:"structure"` } @@ -1341,24 +1350,25 @@ func (s *DescribeCertificateOutput) SetCertificate(v *CertificateDetail) *Descri return s } -// Structure that contains the domain name, the base validation domain to which -// validation email is sent, and the email addresses used to validate the domain -// identity. +// Contains information about the validation of each domain name in the certificate. // Please also see https://docs.aws.amazon.com/goto/WebAPI/acm-2015-12-08/DomainValidation type DomainValidation struct { _ struct{} `type:"structure"` - // Fully Qualified Domain Name (FQDN) of the form www.example.com or example.com. + // A fully qualified domain name (FQDN) in the certificate. For example, www.example.com + // or example.com. // // DomainName is a required field DomainName *string `min:"1" type:"string" required:"true"` - // The base validation domain that acts as the suffix of the email addresses - // that are used to send the emails. + // The domain name that ACM used to send domain validation emails. ValidationDomain *string `min:"1" type:"string"` - // A list of contact address for the domain registrant. + // A list of email addresses that ACM used to send domain validation emails. ValidationEmails []*string `type:"list"` + + // The validation status of the domain name. + ValidationStatus *string `type:"string" enum:"DomainStatus"` } // String returns the string representation @@ -1389,33 +1399,39 @@ func (s *DomainValidation) SetValidationEmails(v []*string) *DomainValidation { return s } -// This structure is used in the request object of the RequestCertificate action. +// SetValidationStatus sets the ValidationStatus field's value. +func (s *DomainValidation) SetValidationStatus(v string) *DomainValidation { + s.ValidationStatus = &v + return s +} + +// Contains information about the domain names that you want ACM to use to send +// you emails to validate your ownership of the domain. // Please also see https://docs.aws.amazon.com/goto/WebAPI/acm-2015-12-08/DomainValidationOption type DomainValidationOption struct { _ struct{} `type:"structure"` - // Fully Qualified Domain Name (FQDN) of the certificate being requested. + // A fully qualified domain name (FQDN) in the certificate request. // // DomainName is a required field DomainName *string `min:"1" type:"string" required:"true"` - // The domain to which validation email is sent. This is the base validation - // domain that will act as the suffix of the email addresses. This must be the - // same as the DomainName value or a superdomain of the DomainName value. For - // example, if you requested a certificate for site.subdomain.example.com and - // specify a ValidationDomain of subdomain.example.com, ACM sends email to the - // domain registrant, technical contact, and administrative contact in WHOIS - // for the base domain and the following five addresses: + // The domain name that you want ACM to use to send you validation emails. This + // domain name is the suffix of the email addresses that you want ACM to use. + // This must be the same as the DomainName value or a superdomain of the DomainName + // value. For example, if you request a certificate for testing.example.com, + // you can specify example.com for this value. In that case, ACM sends domain + // validation emails to the following five addresses: // - // * admin@subdomain.example.com + // * admin@example.com // - // * administrator@subdomain.example.com + // * administrator@example.com // - // * hostmaster@subdomain.example.com + // * hostmaster@example.com // - // * postmaster@subdomain.example.com + // * postmaster@example.com // - // * webmaster@subdomain.example.com + // * webmaster@example.com // // ValidationDomain is a required field ValidationDomain *string `min:"1" type:"string" required:"true"` @@ -1779,7 +1795,7 @@ type ListTagsForCertificateInput struct { _ struct{} `type:"structure"` // String that contains the ARN of the ACM Certificate for which you want to - // list the tags. This must be of the form: + // list the tags. This has the following form: // // arn:aws:acm:region:123456789012:certificate/12345678-1234-1234-1234-123456789012 // @@ -1936,34 +1952,65 @@ func (s RemoveTagsFromCertificateOutput) GoString() string { return s.String() } +// Contains information about the status of ACM's managed renewal (http://docs.aws.amazon.com/acm/latest/userguide/acm-renewal.html) +// for the certificate. This structure exists only when the certificate type +// is AMAZON_ISSUED. +// Please also see https://docs.aws.amazon.com/goto/WebAPI/acm-2015-12-08/RenewalSummary +type RenewalSummary struct { + _ struct{} `type:"structure"` + + // Contains information about the validation of each domain name in the certificate, + // as it pertains to ACM's managed renewal (http://docs.aws.amazon.com/acm/latest/userguide/acm-renewal.html). + // This is different from the initial validation that occurs as a result of + // the RequestCertificate request. This field exists only when the certificate + // type is AMAZON_ISSUED. + // + // DomainValidationOptions is a required field + DomainValidationOptions []*DomainValidation `min:"1" type:"list" required:"true"` + + // The status of ACM's managed renewal (http://docs.aws.amazon.com/acm/latest/userguide/acm-renewal.html) + // of the certificate. + // + // RenewalStatus is a required field + RenewalStatus *string `type:"string" required:"true" enum:"RenewalStatus"` +} + +// String returns the string representation +func (s RenewalSummary) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s RenewalSummary) GoString() string { + return s.String() +} + +// SetDomainValidationOptions sets the DomainValidationOptions field's value. +func (s *RenewalSummary) SetDomainValidationOptions(v []*DomainValidation) *RenewalSummary { + s.DomainValidationOptions = v + return s +} + +// SetRenewalStatus sets the RenewalStatus field's value. +func (s *RenewalSummary) SetRenewalStatus(v string) *RenewalSummary { + s.RenewalStatus = &v + return s +} + // Please also see https://docs.aws.amazon.com/goto/WebAPI/acm-2015-12-08/RequestCertificateRequest type RequestCertificateInput struct { _ struct{} `type:"structure"` // Fully qualified domain name (FQDN), such as www.example.com, of the site - // you want to secure with an ACM Certificate. Use an asterisk (*) to create + // that you want to secure with an ACM Certificate. Use an asterisk (*) to create // a wildcard certificate that protects several sites in the same domain. For // example, *.example.com protects www.example.com, site.example.com, and images.example.com. // // DomainName is a required field DomainName *string `min:"1" type:"string" required:"true"` - // The base validation domain that will act as the suffix of the email addresses - // that are used to send the emails. This must be the same as the Domain value - // or a superdomain of the Domain value. For example, if you requested a certificate - // for test.example.com and specify DomainValidationOptions of example.com, - // ACM sends email to the domain registrant, technical contact, and administrative - // contact in WHOIS and the following five addresses: - // - // * admin@example.com - // - // * administrator@example.com - // - // * hostmaster@example.com - // - // * postmaster@example.com - // - // * webmaster@example.com + // The domain name that you want ACM to use to send you emails to validate your + // ownership of the domain. DomainValidationOptions []*DomainValidationOption `min:"1" type:"list"` // Customer chosen string that can be used to distinguish between calls to RequestCertificate. @@ -2093,7 +2140,7 @@ type ResendValidationEmailInput struct { // CertificateArn is a required field CertificateArn *string `min:"20" type:"string" required:"true"` - // The Fully Qualified Domain Name (FQDN) of the certificate that needs to be + // The fully qualified domain name (FQDN) of the certificate that needs to be // validated. // // Domain is a required field @@ -2274,6 +2321,17 @@ const ( CertificateTypeAmazonIssued = "AMAZON_ISSUED" ) +const ( + // DomainStatusPendingValidation is a DomainStatus enum value + DomainStatusPendingValidation = "PENDING_VALIDATION" + + // DomainStatusSuccess is a DomainStatus enum value + DomainStatusSuccess = "SUCCESS" + + // DomainStatusFailed is a DomainStatus enum value + DomainStatusFailed = "FAILED" +) + const ( // FailureReasonNoAvailableContacts is a FailureReason enum value FailureReasonNoAvailableContacts = "NO_AVAILABLE_CONTACTS" @@ -2302,6 +2360,20 @@ const ( KeyAlgorithmEcPrime256v1 = "EC_prime256v1" ) +const ( + // RenewalStatusPendingAutoRenewal is a RenewalStatus enum value + RenewalStatusPendingAutoRenewal = "PENDING_AUTO_RENEWAL" + + // RenewalStatusPendingValidation is a RenewalStatus enum value + RenewalStatusPendingValidation = "PENDING_VALIDATION" + + // RenewalStatusSuccess is a RenewalStatus enum value + RenewalStatusSuccess = "SUCCESS" + + // RenewalStatusFailed is a RenewalStatus enum value + RenewalStatusFailed = "FAILED" +) + const ( // RevocationReasonUnspecified is a RevocationReason enum value RevocationReasonUnspecified = "UNSPECIFIED" diff --git a/vendor/github.com/aws/aws-sdk-go/service/codecommit/api.go b/vendor/github.com/aws/aws-sdk-go/service/codecommit/api.go index 2f0ca3ee8..4307cc9a9 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/codecommit/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/codecommit/api.go @@ -4,6 +4,7 @@ package codecommit import ( + "fmt" "time" "github.com/aws/aws-sdk-go/aws/awsutil" @@ -411,6 +412,110 @@ func (c *CodeCommit) DeleteRepository(input *DeleteRepositoryInput) (*DeleteRepo return out, err } +const opGetBlob = "GetBlob" + +// GetBlobRequest generates a "aws/request.Request" representing the +// client's request for the GetBlob operation. The "output" return +// value can be used to capture response data after the request's "Send" method +// is called. +// +// See GetBlob for usage and error information. +// +// Creating a request object using this method should be used when you want to inject +// custom logic into the request's lifecycle using a custom handler, or if you want to +// access properties on the request object before or after sending the request. If +// you just want the service response, call the GetBlob method directly +// instead. +// +// Note: You must call the "Send" method on the returned request object in order +// to execute the request. +// +// // Example sending a request using the GetBlobRequest method. +// req, resp := client.GetBlobRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// Please also see https://docs.aws.amazon.com/goto/WebAPI/codecommit-2015-04-13/GetBlob +func (c *CodeCommit) GetBlobRequest(input *GetBlobInput) (req *request.Request, output *GetBlobOutput) { + op := &request.Operation{ + Name: opGetBlob, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &GetBlobInput{} + } + + output = &GetBlobOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetBlob API operation for AWS CodeCommit. +// +// Returns the base-64 encoded content of an individual blob within a repository. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS CodeCommit's +// API operation GetBlob for usage and error information. +// +// Returned Error Codes: +// * RepositoryNameRequiredException +// A repository name is required but was not specified. +// +// * InvalidRepositoryNameException +// At least one specified repository name is not valid. +// +// This exception only occurs when a specified repository name is not valid. +// Other exceptions occur when a required repository parameter is missing, or +// when a specified repository does not exist. +// +// * RepositoryDoesNotExistException +// The specified repository does not exist. +// +// * BlobIdRequiredException +// A blob ID is required but was not specified. +// +// * InvalidBlobIdException +// The specified blob is not valid. +// +// * BlobIdDoesNotExistException +// The specified blob does not exist. +// +// * EncryptionIntegrityChecksFailedException +// An encryption integrity check failed. +// +// * EncryptionKeyAccessDeniedException +// An encryption key could not be accessed. +// +// * EncryptionKeyDisabledException +// The encryption key is disabled. +// +// * EncryptionKeyNotFoundException +// No encryption key was found. +// +// * EncryptionKeyUnavailableException +// The encryption key is not available. +// +// * FileTooLargeException +// The specified file exceeds the file size limit for AWS CodeCommit. For more +// information about limits in AWS CodeCommit, see AWS CodeCommit User Guide +// (http://docs.aws.amazon.com/codecommit/latest/userguide/limits.html). +// +// Please also see https://docs.aws.amazon.com/goto/WebAPI/codecommit-2015-04-13/GetBlob +func (c *CodeCommit) GetBlob(input *GetBlobInput) (*GetBlobOutput, error) { + req, out := c.GetBlobRequest(input) + err := req.Send() + return out, err +} + const opGetBranch = "GetBranch" // GetBranchRequest generates a "aws/request.Request" representing the @@ -611,6 +716,154 @@ func (c *CodeCommit) GetCommit(input *GetCommitInput) (*GetCommitOutput, error) return out, err } +const opGetDifferences = "GetDifferences" + +// GetDifferencesRequest generates a "aws/request.Request" representing the +// client's request for the GetDifferences operation. The "output" return +// value can be used to capture response data after the request's "Send" method +// is called. +// +// See GetDifferences for usage and error information. +// +// Creating a request object using this method should be used when you want to inject +// custom logic into the request's lifecycle using a custom handler, or if you want to +// access properties on the request object before or after sending the request. If +// you just want the service response, call the GetDifferences method directly +// instead. +// +// Note: You must call the "Send" method on the returned request object in order +// to execute the request. +// +// // Example sending a request using the GetDifferencesRequest method. +// req, resp := client.GetDifferencesRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// Please also see https://docs.aws.amazon.com/goto/WebAPI/codecommit-2015-04-13/GetDifferences +func (c *CodeCommit) GetDifferencesRequest(input *GetDifferencesInput) (req *request.Request, output *GetDifferencesOutput) { + op := &request.Operation{ + Name: opGetDifferences, + HTTPMethod: "POST", + HTTPPath: "/", + Paginator: &request.Paginator{ + InputTokens: []string{"NextToken"}, + OutputTokens: []string{"NextToken"}, + LimitToken: "MaxResults", + TruncationToken: "", + }, + } + + if input == nil { + input = &GetDifferencesInput{} + } + + output = &GetDifferencesOutput{} + req = c.newRequest(op, input, output) + return +} + +// GetDifferences API operation for AWS CodeCommit. +// +// Returns information about the differences in a valid commit specifier (such +// as a branch, tag, HEAD, commit ID or other fully qualified reference). Results +// can be limited to a specified path. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS CodeCommit's +// API operation GetDifferences for usage and error information. +// +// Returned Error Codes: +// * RepositoryNameRequiredException +// A repository name is required but was not specified. +// +// * RepositoryDoesNotExistException +// The specified repository does not exist. +// +// * InvalidRepositoryNameException +// At least one specified repository name is not valid. +// +// This exception only occurs when a specified repository name is not valid. +// Other exceptions occur when a required repository parameter is missing, or +// when a specified repository does not exist. +// +// * InvalidContinuationTokenException +// The specified continuation token is not valid. +// +// * InvalidMaxResultsException +// The specified number of maximum results is not valid. +// +// * InvalidCommitIdException +// The specified commit ID is not valid. +// +// * CommitRequiredException +// A commit was not specified. +// +// * InvalidCommitException +// The specified commit is not valid. +// +// * CommitDoesNotExistException +// The specified commit does not exist or no commit was specified, and the specified +// repository has no default branch. +// +// * InvalidPathException +// The specified path is not valid. +// +// * PathDoesNotExistException +// The specified path does not exist. +// +// * EncryptionIntegrityChecksFailedException +// An encryption integrity check failed. +// +// * EncryptionKeyAccessDeniedException +// An encryption key could not be accessed. +// +// * EncryptionKeyDisabledException +// The encryption key is disabled. +// +// * EncryptionKeyNotFoundException +// No encryption key was found. +// +// * EncryptionKeyUnavailableException +// The encryption key is not available. +// +// Please also see https://docs.aws.amazon.com/goto/WebAPI/codecommit-2015-04-13/GetDifferences +func (c *CodeCommit) GetDifferences(input *GetDifferencesInput) (*GetDifferencesOutput, error) { + req, out := c.GetDifferencesRequest(input) + err := req.Send() + return out, err +} + +// GetDifferencesPages iterates over the pages of a GetDifferences operation, +// calling the "fn" function with the response data for each page. To stop +// iterating, return false from the fn function. +// +// See GetDifferences method for more information on how to use this operation. +// +// Note: This operation can generate multiple requests to a service. +// +// // Example iterating over at most 3 pages of a GetDifferences operation. +// pageNum := 0 +// err := client.GetDifferencesPages(params, +// func(page *GetDifferencesOutput, lastPage bool) bool { +// pageNum++ +// fmt.Println(page) +// return pageNum <= 3 +// }) +// +func (c *CodeCommit) GetDifferencesPages(input *GetDifferencesInput, fn func(p *GetDifferencesOutput, lastPage bool) (shouldContinue bool)) error { + page, _ := c.GetDifferencesRequest(input) + page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) + return page.EachPage(func(p interface{}, lastPage bool) bool { + return fn(p.(*GetDifferencesOutput), lastPage) + }) +} + const opGetRepository = "GetRepository" // GetRepositoryRequest generates a "aws/request.Request" representing the @@ -1662,6 +1915,57 @@ func (s *BatchGetRepositoriesOutput) SetRepositoriesNotFound(v []*string) *Batch return s } +// Returns information about a specific Git blob object. +// Please also see https://docs.aws.amazon.com/goto/WebAPI/codecommit-2015-04-13/BlobMetadata +type BlobMetadata struct { + _ struct{} `type:"structure"` + + // The full ID of the blob. + BlobId *string `locationName:"blobId" type:"string"` + + // The file mode permissions of the blob. File mode permission codes include: + // + // * 100644 indicates read/write + // + // * 100755 indicates read/write/execute + // + // * 160000 indicates a submodule + // + // * 120000 indicates a symlink + Mode *string `locationName:"mode" type:"string"` + + // The path to the blob and any associated file name, if any. + Path *string `locationName:"path" type:"string"` +} + +// String returns the string representation +func (s BlobMetadata) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s BlobMetadata) GoString() string { + return s.String() +} + +// SetBlobId sets the BlobId field's value. +func (s *BlobMetadata) SetBlobId(v string) *BlobMetadata { + s.BlobId = &v + return s +} + +// SetMode sets the Mode field's value. +func (s *BlobMetadata) SetMode(v string) *BlobMetadata { + s.Mode = &v + return s +} + +// SetPath sets the Path field's value. +func (s *BlobMetadata) SetPath(v string) *BlobMetadata { + s.Path = &v + return s +} + // Returns information about a branch. // Please also see https://docs.aws.amazon.com/goto/WebAPI/codecommit-2015-04-13/BranchInfo type BranchInfo struct { @@ -1704,16 +2008,22 @@ type Commit struct { // Any additional data associated with the specified commit. AdditionalData *string `locationName:"additionalData" type:"string"` - // Information about the author of the specified commit. + // Information about the author of the specified commit. Information includes + // the date in timestamp format with GMT offset, the name of the author, and + // the email address for the author, as configured in Git. Author *UserInfo `locationName:"author" type:"structure"` // Information about the person who committed the specified commit, also known - // as the committer. For more information about the difference between an author - // and a committer in Git, see Viewing the Commit History (http://git-scm.com/book/ch2-3.html) + // as the committer. Information includes the date in timestamp format with + // GMT offset, the name of the committer, and the email address for the committer, + // as configured in Git. + // + // For more information about the difference between an author and a committer + // in Git, see Viewing the Commit History (http://git-scm.com/book/ch2-3.html) // in Pro Git by Scott Chacon and Ben Straub. Committer *UserInfo `locationName:"committer" type:"structure"` - // The message associated with the specified commit. + // The commit message associated with the specified commit. Message *string `locationName:"message" type:"string"` // The parent list for the specified commit. @@ -2015,6 +2325,138 @@ func (s *DeleteRepositoryOutput) SetRepositoryId(v string) *DeleteRepositoryOutp return s } +// Returns information about a set of differences for a commit specifier. +// Please also see https://docs.aws.amazon.com/goto/WebAPI/codecommit-2015-04-13/Difference +type Difference struct { + _ struct{} `type:"structure"` + + // Information about an afterBlob data type object, including the ID, the file + // mode permission code, and the path. + AfterBlob *BlobMetadata `locationName:"afterBlob" type:"structure"` + + // Information about a beforeBlob data type object, including the ID, the file + // mode permission code, and the path. + BeforeBlob *BlobMetadata `locationName:"beforeBlob" type:"structure"` + + // Whether the change type of the difference is an addition (A), deletion (D), + // or modification (M). + ChangeType *string `locationName:"changeType" type:"string" enum:"ChangeTypeEnum"` +} + +// String returns the string representation +func (s Difference) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s Difference) GoString() string { + return s.String() +} + +// SetAfterBlob sets the AfterBlob field's value. +func (s *Difference) SetAfterBlob(v *BlobMetadata) *Difference { + s.AfterBlob = v + return s +} + +// SetBeforeBlob sets the BeforeBlob field's value. +func (s *Difference) SetBeforeBlob(v *BlobMetadata) *Difference { + s.BeforeBlob = v + return s +} + +// SetChangeType sets the ChangeType field's value. +func (s *Difference) SetChangeType(v string) *Difference { + s.ChangeType = &v + return s +} + +// Represents the input of a get blob operation. +// Please also see https://docs.aws.amazon.com/goto/WebAPI/codecommit-2015-04-13/GetBlobInput +type GetBlobInput struct { + _ struct{} `type:"structure"` + + // The ID of the blob, which is its SHA-1 pointer. + // + // BlobId is a required field + BlobId *string `locationName:"blobId" type:"string" required:"true"` + + // The name of the repository that contains the blob. + // + // RepositoryName is a required field + RepositoryName *string `locationName:"repositoryName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s GetBlobInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GetBlobInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetBlobInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetBlobInput"} + if s.BlobId == nil { + invalidParams.Add(request.NewErrParamRequired("BlobId")) + } + if s.RepositoryName == nil { + invalidParams.Add(request.NewErrParamRequired("RepositoryName")) + } + if s.RepositoryName != nil && len(*s.RepositoryName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RepositoryName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetBlobId sets the BlobId field's value. +func (s *GetBlobInput) SetBlobId(v string) *GetBlobInput { + s.BlobId = &v + return s +} + +// SetRepositoryName sets the RepositoryName field's value. +func (s *GetBlobInput) SetRepositoryName(v string) *GetBlobInput { + s.RepositoryName = &v + return s +} + +// Represents the output of a get blob operation. +// Please also see https://docs.aws.amazon.com/goto/WebAPI/codecommit-2015-04-13/GetBlobOutput +type GetBlobOutput struct { + _ struct{} `type:"structure"` + + // The content of the blob, usually a file. + // + // Content is automatically base64 encoded/decoded by the SDK. + // + // Content is a required field + Content []byte `locationName:"content" type:"blob" required:"true"` +} + +// String returns the string representation +func (s GetBlobOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GetBlobOutput) GoString() string { + return s.String() +} + +// SetContent sets the Content field's value. +func (s *GetBlobOutput) SetContent(v []byte) *GetBlobOutput { + s.Content = v + return s +} + // Represents the input of a get branch operation. // Please also see https://docs.aws.amazon.com/goto/WebAPI/codecommit-2015-04-13/GetBranchInput type GetBranchInput struct { @@ -2153,7 +2595,7 @@ func (s *GetCommitInput) SetRepositoryName(v string) *GetCommitInput { type GetCommitOutput struct { _ struct{} `type:"structure"` - // Information about the specified commit. + // A commit data type object that contains information about the specified commit. // // Commit is a required field Commit *Commit `locationName:"commit" type:"structure" required:"true"` @@ -2175,6 +2617,153 @@ func (s *GetCommitOutput) SetCommit(v *Commit) *GetCommitOutput { return s } +// Please also see https://docs.aws.amazon.com/goto/WebAPI/codecommit-2015-04-13/GetDifferencesInput +type GetDifferencesInput struct { + _ struct{} `type:"structure"` + + // The branch, tag, HEAD, or other fully qualified reference used to identify + // a commit. + // + // AfterCommitSpecifier is a required field + AfterCommitSpecifier *string `locationName:"afterCommitSpecifier" type:"string" required:"true"` + + // The file path in which to check differences. Limits the results to this path. + // Can also be used to specify the changed name of a directory or folder, if + // it has changed. If not specified, differences will be shown for all paths. + AfterPath *string `locationName:"afterPath" type:"string"` + + // The branch, tag, HEAD, or other fully qualified reference used to identify + // a commit. For example, the full commit ID. Optional. If not specified, all + // changes prior to the afterCommitSpecifier value will be shown. If you do + // not use beforeCommitSpecifier in your request, consider limiting the results + // with maxResults. + BeforeCommitSpecifier *string `locationName:"beforeCommitSpecifier" type:"string"` + + // The file path in which to check for differences. Limits the results to this + // path. Can also be used to specify the previous name of a directory or folder. + // If beforePath and afterPath are not specified, differences will be shown + // for all paths. + BeforePath *string `locationName:"beforePath" type:"string"` + + // A non-negative integer used to limit the number of returned results. + MaxResults *int64 `type:"integer"` + + // An enumeration token that when provided in a request, returns the next batch + // of the results. + NextToken *string `type:"string"` + + // The name of the repository where you want to get differences. + // + // RepositoryName is a required field + RepositoryName *string `locationName:"repositoryName" min:"1" type:"string" required:"true"` +} + +// String returns the string representation +func (s GetDifferencesInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GetDifferencesInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *GetDifferencesInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "GetDifferencesInput"} + if s.AfterCommitSpecifier == nil { + invalidParams.Add(request.NewErrParamRequired("AfterCommitSpecifier")) + } + if s.RepositoryName == nil { + invalidParams.Add(request.NewErrParamRequired("RepositoryName")) + } + if s.RepositoryName != nil && len(*s.RepositoryName) < 1 { + invalidParams.Add(request.NewErrParamMinLen("RepositoryName", 1)) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetAfterCommitSpecifier sets the AfterCommitSpecifier field's value. +func (s *GetDifferencesInput) SetAfterCommitSpecifier(v string) *GetDifferencesInput { + s.AfterCommitSpecifier = &v + return s +} + +// SetAfterPath sets the AfterPath field's value. +func (s *GetDifferencesInput) SetAfterPath(v string) *GetDifferencesInput { + s.AfterPath = &v + return s +} + +// SetBeforeCommitSpecifier sets the BeforeCommitSpecifier field's value. +func (s *GetDifferencesInput) SetBeforeCommitSpecifier(v string) *GetDifferencesInput { + s.BeforeCommitSpecifier = &v + return s +} + +// SetBeforePath sets the BeforePath field's value. +func (s *GetDifferencesInput) SetBeforePath(v string) *GetDifferencesInput { + s.BeforePath = &v + return s +} + +// SetMaxResults sets the MaxResults field's value. +func (s *GetDifferencesInput) SetMaxResults(v int64) *GetDifferencesInput { + s.MaxResults = &v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *GetDifferencesInput) SetNextToken(v string) *GetDifferencesInput { + s.NextToken = &v + return s +} + +// SetRepositoryName sets the RepositoryName field's value. +func (s *GetDifferencesInput) SetRepositoryName(v string) *GetDifferencesInput { + s.RepositoryName = &v + return s +} + +// Please also see https://docs.aws.amazon.com/goto/WebAPI/codecommit-2015-04-13/GetDifferencesOutput +type GetDifferencesOutput struct { + _ struct{} `type:"structure"` + + // A differences data type object that contains information about the differences, + // including whether the difference is added, modified, or deleted (A, D, M). + Differences []*Difference `locationName:"differences" type:"list"` + + // An enumeration token that can be used in a request to return the next batch + // of the results. + NextToken *string `type:"string"` +} + +// String returns the string representation +func (s GetDifferencesOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GetDifferencesOutput) GoString() string { + return s.String() +} + +// SetDifferences sets the Differences field's value. +func (s *GetDifferencesOutput) SetDifferences(v []*Difference) *GetDifferencesOutput { + s.Differences = v + return s +} + +// SetNextToken sets the NextToken field's value. +func (s *GetDifferencesOutput) SetNextToken(v string) *GetDifferencesOutput { + s.NextToken = &v + return s +} + // Represents the input of a get repository operation. // Please also see https://docs.aws.amazon.com/goto/WebAPI/codecommit-2015-04-13/GetRepositoryInput type GetRepositoryInput struct { @@ -2249,7 +2838,9 @@ type GetRepositoryTriggersInput struct { _ struct{} `type:"structure"` // The name of the repository for which the trigger is configured. - RepositoryName *string `locationName:"repositoryName" min:"1" type:"string"` + // + // RepositoryName is a required field + RepositoryName *string `locationName:"repositoryName" min:"1" type:"string" required:"true"` } // String returns the string representation @@ -2265,6 +2856,9 @@ func (s GetRepositoryTriggersInput) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *GetRepositoryTriggersInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "GetRepositoryTriggersInput"} + if s.RepositoryName == nil { + invalidParams.Add(request.NewErrParamRequired("RepositoryName")) + } if s.RepositoryName != nil && len(*s.RepositoryName) < 1 { invalidParams.Add(request.NewErrParamMinLen("RepositoryName", 1)) } @@ -2490,10 +3084,14 @@ type PutRepositoryTriggersInput struct { _ struct{} `type:"structure"` // The name of the repository where you want to create or update the trigger. - RepositoryName *string `locationName:"repositoryName" min:"1" type:"string"` + // + // RepositoryName is a required field + RepositoryName *string `locationName:"repositoryName" min:"1" type:"string" required:"true"` // The JSON block of configuration information for each trigger. - Triggers []*RepositoryTrigger `locationName:"triggers" type:"list"` + // + // Triggers is a required field + Triggers []*RepositoryTrigger `locationName:"triggers" type:"list" required:"true"` } // String returns the string representation @@ -2509,9 +3107,25 @@ func (s PutRepositoryTriggersInput) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *PutRepositoryTriggersInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "PutRepositoryTriggersInput"} + if s.RepositoryName == nil { + invalidParams.Add(request.NewErrParamRequired("RepositoryName")) + } if s.RepositoryName != nil && len(*s.RepositoryName) < 1 { invalidParams.Add(request.NewErrParamMinLen("RepositoryName", 1)) } + if s.Triggers == nil { + invalidParams.Add(request.NewErrParamRequired("Triggers")) + } + if s.Triggers != nil { + for i, v := range s.Triggers { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Triggers", i), err.(request.ErrInvalidParams)) + } + } + } if invalidParams.Len() > 0 { return invalidParams @@ -2711,16 +3325,23 @@ type RepositoryTrigger struct { // The ARN of the resource that is the target for a trigger. For example, the // ARN of a topic in Amazon Simple Notification Service (SNS). - DestinationArn *string `locationName:"destinationArn" type:"string"` + // + // DestinationArn is a required field + DestinationArn *string `locationName:"destinationArn" type:"string" required:"true"` // The repository events that will cause the trigger to run actions in another // service, such as sending a notification through Amazon Simple Notification - // Service (SNS). If no events are specified, the trigger will run for all repository - // events. - Events []*string `locationName:"events" type:"list"` + // Service (SNS). + // + // The valid value "all" cannot be used with any other values. + // + // Events is a required field + Events []*string `locationName:"events" type:"list" required:"true"` // The name of the trigger. - Name *string `locationName:"name" type:"string"` + // + // Name is a required field + Name *string `locationName:"name" type:"string" required:"true"` } // String returns the string representation @@ -2733,6 +3354,25 @@ func (s RepositoryTrigger) GoString() string { return s.String() } +// Validate inspects the fields of the type to determine if they are valid. +func (s *RepositoryTrigger) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "RepositoryTrigger"} + if s.DestinationArn == nil { + invalidParams.Add(request.NewErrParamRequired("DestinationArn")) + } + if s.Events == nil { + invalidParams.Add(request.NewErrParamRequired("Events")) + } + if s.Name == nil { + invalidParams.Add(request.NewErrParamRequired("Name")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + // SetBranches sets the Branches field's value. func (s *RepositoryTrigger) SetBranches(v []*string) *RepositoryTrigger { s.Branches = v @@ -2803,10 +3443,14 @@ type TestRepositoryTriggersInput struct { _ struct{} `type:"structure"` // The name of the repository in which to test the triggers. - RepositoryName *string `locationName:"repositoryName" min:"1" type:"string"` + // + // RepositoryName is a required field + RepositoryName *string `locationName:"repositoryName" min:"1" type:"string" required:"true"` // The list of triggers to test. - Triggers []*RepositoryTrigger `locationName:"triggers" type:"list"` + // + // Triggers is a required field + Triggers []*RepositoryTrigger `locationName:"triggers" type:"list" required:"true"` } // String returns the string representation @@ -2822,9 +3466,25 @@ func (s TestRepositoryTriggersInput) GoString() string { // Validate inspects the fields of the type to determine if they are valid. func (s *TestRepositoryTriggersInput) Validate() error { invalidParams := request.ErrInvalidParams{Context: "TestRepositoryTriggersInput"} + if s.RepositoryName == nil { + invalidParams.Add(request.NewErrParamRequired("RepositoryName")) + } if s.RepositoryName != nil && len(*s.RepositoryName) < 1 { invalidParams.Add(request.NewErrParamMinLen("RepositoryName", 1)) } + if s.Triggers == nil { + invalidParams.Add(request.NewErrParamRequired("Triggers")) + } + if s.Triggers != nil { + for i, v := range s.Triggers { + if v == nil { + continue + } + if err := v.Validate(); err != nil { + invalidParams.AddNested(fmt.Sprintf("%s[%v]", "Triggers", i), err.(request.ErrInvalidParams)) + } + } + } if invalidParams.Len() > 0 { return invalidParams @@ -3141,6 +3801,17 @@ func (s *UserInfo) SetName(v string) *UserInfo { return s } +const ( + // ChangeTypeEnumA is a ChangeTypeEnum enum value + ChangeTypeEnumA = "A" + + // ChangeTypeEnumM is a ChangeTypeEnum enum value + ChangeTypeEnumM = "M" + + // ChangeTypeEnumD is a ChangeTypeEnum enum value + ChangeTypeEnumD = "D" +) + const ( // OrderEnumAscending is a OrderEnum enum value OrderEnumAscending = "ascending" diff --git a/vendor/github.com/aws/aws-sdk-go/service/codecommit/service.go b/vendor/github.com/aws/aws-sdk-go/service/codecommit/service.go index 52ec27bec..dd0b66613 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/codecommit/service.go +++ b/vendor/github.com/aws/aws-sdk-go/service/codecommit/service.go @@ -12,40 +12,64 @@ import ( ) // This is the AWS CodeCommit API Reference. This reference provides descriptions -// of the operations and data types for AWS CodeCommit API. +// of the operations and data types for AWS CodeCommit API along with usage +// examples. // // You can use the AWS CodeCommit API to work with the following objects: // -// * Repositories, by calling the following: BatchGetRepositories, which -// returns information about one or more repositories associated with your -// AWS account -// CreateRepository, which creates an AWS CodeCommit repository -// DeleteRepository, which deletes an AWS CodeCommit repository -// GetRepository, which returns information about a specified repository -// ListRepositories, which lists all AWS CodeCommit repositories associated +// Repositories, by calling the following: +// +// * BatchGetRepositories, which returns information about one or more repositories +// associated with your AWS account +// +// * CreateRepository, which creates an AWS CodeCommit repository +// +// * DeleteRepository, which deletes an AWS CodeCommit repository +// +// * GetRepository, which returns information about a specified repository +// +// * ListRepositories, which lists all AWS CodeCommit repositories associated // with your AWS account -// UpdateRepositoryDescription, which sets or updates the description of the -// repository -// UpdateRepositoryName, which changes the name of the repository. If you change -// the name of a repository, no other users of that repository will be able -// to access it until you send them the new HTTPS or SSH URL to use. // -// * Branches, by calling the following: CreateBranch, which creates a new -// branch in a specified repository -// GetBranch, which returns information about a specified branch -// ListBranches, which lists all branches for a specified repository -// UpdateDefaultBranch, which changes the default branch for a repository +// * UpdateRepositoryDescription, which sets or updates the description of +// the repository // -// * Information about committed code in a repository, by calling the following: -// GetCommit, which returns information about a commit, including commit -// messages and committer information. +// * UpdateRepositoryName, which changes the name of the repository. If you +// change the name of a repository, no other users of that repository will +// be able to access it until you send them the new HTTPS or SSH URL to use. // -// * Triggers, by calling the following: GetRepositoryTriggers, which returns -// information about triggers configured for a repository -// PutRepositoryTriggers, which replaces all triggers for a repository and can -// be used to create or delete triggers -// TestRepositoryTriggers, which tests the functionality of a repository trigger -// by sending data to the trigger target +// Branches, by calling the following: +// +// * CreateBranch, which creates a new branch in a specified repository +// +// * GetBranch, which returns information about a specified branch +// +// * ListBranches, which lists all branches for a specified repository +// +// * UpdateDefaultBranch, which changes the default branch for a repository +// +// Information about committed code in a repository, by calling the following: +// +// * GetBlob, which returns the base-64 encoded content of an individual +// Git blob object within a repository +// +// * GetCommit, which returns information about a commit, including commit +// messages and author and committer information +// +// * GetDifferences, which returns information about the differences in a +// valid commit specifier (such as a branch, tag, HEAD, commit ID or other +// fully qualified reference) +// +// Triggers, by calling the following: +// +// * GetRepositoryTriggers, which returns information about triggers configured +// for a repository +// +// * PutRepositoryTriggers, which replaces all triggers for a repository +// and can be used to create or delete triggers +// +// * TestRepositoryTriggers, which tests the functionality of a repository +// trigger by sending data to the trigger target // // For information about how to use AWS CodeCommit, see the AWS CodeCommit User // Guide (http://docs.aws.amazon.com/codecommit/latest/userguide/welcome.html). diff --git a/vendor/github.com/aws/aws-sdk-go/service/codedeploy/api.go b/vendor/github.com/aws/aws-sdk-go/service/codedeploy/api.go index 204719a0f..fdcc62d67 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/codedeploy/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/codedeploy/api.go @@ -552,6 +552,92 @@ func (c *CodeDeploy) BatchGetOnPremisesInstances(input *BatchGetOnPremisesInstan return out, err } +const opContinueDeployment = "ContinueDeployment" + +// ContinueDeploymentRequest generates a "aws/request.Request" representing the +// client's request for the ContinueDeployment operation. The "output" return +// value can be used to capture response data after the request's "Send" method +// is called. +// +// See ContinueDeployment for usage and error information. +// +// Creating a request object using this method should be used when you want to inject +// custom logic into the request's lifecycle using a custom handler, or if you want to +// access properties on the request object before or after sending the request. If +// you just want the service response, call the ContinueDeployment method directly +// instead. +// +// Note: You must call the "Send" method on the returned request object in order +// to execute the request. +// +// // Example sending a request using the ContinueDeploymentRequest method. +// req, resp := client.ContinueDeploymentRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// Please also see https://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/ContinueDeployment +func (c *CodeDeploy) ContinueDeploymentRequest(input *ContinueDeploymentInput) (req *request.Request, output *ContinueDeploymentOutput) { + op := &request.Operation{ + Name: opContinueDeployment, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &ContinueDeploymentInput{} + } + + output = &ContinueDeploymentOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) + req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) + return +} + +// ContinueDeployment API operation for AWS CodeDeploy. +// +// Starts the process of rerouting traffic from instances in the original environment +// to instances in thereplacement environment without waiting for a specified +// wait time to elapse. (Traffic rerouting, which is achieved by registering +// instances in the replacement environment with the load balancer, can start +// as soon as all instances have a status of Ready.) +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS CodeDeploy's +// API operation ContinueDeployment for usage and error information. +// +// Returned Error Codes: +// * DeploymentIdRequiredException +// At least one deployment ID must be specified. +// +// * DeploymentDoesNotExistException +// The deployment does not exist with the applicable IAM user or AWS account. +// +// * DeploymentAlreadyCompletedException +// The deployment is already complete. +// +// * InvalidDeploymentIdException +// At least one of the deployment IDs was specified in an invalid format. +// +// * DeploymentIsNotInReadyStateException +// The deployment does not have a status of Ready and can't continue yet. +// +// * UnsupportedActionForDeploymentTypeException +// A call was submitted that is not supported for the specified deployment type. +// +// Please also see https://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/ContinueDeployment +func (c *CodeDeploy) ContinueDeployment(input *ContinueDeploymentInput) (*ContinueDeploymentOutput, error) { + req, out := c.ContinueDeploymentRequest(input) + err := req.Send() + return out, err +} + const opCreateApplication = "CreateApplication" // CreateApplicationRequest generates a "aws/request.Request" representing the @@ -723,11 +809,26 @@ func (c *CodeDeploy) CreateDeploymentRequest(input *CreateDeploymentInput) (req // * DeploymentLimitExceededException // The number of allowed deployments was exceeded. // +// * InvalidTargetInstancesException +// The target instance configuration is invalid. Possible causes include: +// +// * Configuration data for target instances was entered for an in-place +// deployment. +// +// * The limit of 10 tags for a tag type was exceeded. +// +// * The combined length of the tag names exceeded the limit. +// +// * A specified tag is not currently applied to any instances. +// // * InvalidAutoRollbackConfigException // The automatic rollback configuration was specified in an invalid format. // For example, automatic rollback is enabled but an invalid triggering event // type or no event types were listed. // +// * InvalidLoadBalancerInfoException +// An invalid load balancer name, or no load balancer name, was specified. +// // Please also see https://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/CreateDeployment func (c *CodeDeploy) CreateDeployment(input *CreateDeploymentInput) (*CreateDeploymentOutput, error) { req, out := c.CreateDeploymentRequest(input) @@ -944,6 +1045,19 @@ func (c *CodeDeploy) CreateDeploymentGroupRequest(input *CreateDeploymentGroupIn // For example, automatic rollback is enabled but an invalid triggering event // type or no event types were listed. // +// * InvalidLoadBalancerInfoException +// An invalid load balancer name, or no load balancer name, was specified. +// +// * InvalidDeploymentStyleException +// An invalid deployment style was specified. Valid deployment types include +// "IN_PLACE" and "BLUE_GREEN". Valid deployment options for blue/green deployments +// include "WITH_TRAFFIC_CONTROL" and "WITHOUT_TRAFFIC_CONTROL". +// +// * InvalidBlueGreenDeploymentConfigurationException +// The configuration for the blue/green deployment group was provided in an +// invalid format. For information about deployment configuration format, see +// CreateDeploymentConfig. +// // Please also see https://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/CreateDeploymentGroup func (c *CodeDeploy) CreateDeploymentGroup(input *CreateDeploymentGroupInput) (*CreateDeploymentGroupOutput, error) { req, out := c.CreateDeploymentGroupRequest(input) @@ -1807,12 +1921,6 @@ func (c *CodeDeploy) ListApplicationRevisionsRequest(input *ListApplicationRevis Name: opListApplicationRevisions, HTTPMethod: "POST", HTTPPath: "/", - Paginator: &request.Paginator{ - InputTokens: []string{"nextToken"}, - OutputTokens: []string{"nextToken"}, - LimitToken: "", - TruncationToken: "", - }, } if input == nil { @@ -1874,31 +1982,6 @@ func (c *CodeDeploy) ListApplicationRevisions(input *ListApplicationRevisionsInp return out, err } -// ListApplicationRevisionsPages iterates over the pages of a ListApplicationRevisions operation, -// calling the "fn" function with the response data for each page. To stop -// iterating, return false from the fn function. -// -// See ListApplicationRevisions method for more information on how to use this operation. -// -// Note: This operation can generate multiple requests to a service. -// -// // Example iterating over at most 3 pages of a ListApplicationRevisions operation. -// pageNum := 0 -// err := client.ListApplicationRevisionsPages(params, -// func(page *ListApplicationRevisionsOutput, lastPage bool) bool { -// pageNum++ -// fmt.Println(page) -// return pageNum <= 3 -// }) -// -func (c *CodeDeploy) ListApplicationRevisionsPages(input *ListApplicationRevisionsInput, fn func(p *ListApplicationRevisionsOutput, lastPage bool) (shouldContinue bool)) error { - page, _ := c.ListApplicationRevisionsRequest(input) - page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) - return page.EachPage(func(p interface{}, lastPage bool) bool { - return fn(p.(*ListApplicationRevisionsOutput), lastPage) - }) -} - const opListApplications = "ListApplications" // ListApplicationsRequest generates a "aws/request.Request" representing the @@ -1931,12 +2014,6 @@ func (c *CodeDeploy) ListApplicationsRequest(input *ListApplicationsInput) (req Name: opListApplications, HTTPMethod: "POST", HTTPPath: "/", - Paginator: &request.Paginator{ - InputTokens: []string{"nextToken"}, - OutputTokens: []string{"nextToken"}, - LimitToken: "", - TruncationToken: "", - }, } if input == nil { @@ -1970,31 +2047,6 @@ func (c *CodeDeploy) ListApplications(input *ListApplicationsInput) (*ListApplic return out, err } -// ListApplicationsPages iterates over the pages of a ListApplications operation, -// calling the "fn" function with the response data for each page. To stop -// iterating, return false from the fn function. -// -// See ListApplications method for more information on how to use this operation. -// -// Note: This operation can generate multiple requests to a service. -// -// // Example iterating over at most 3 pages of a ListApplications operation. -// pageNum := 0 -// err := client.ListApplicationsPages(params, -// func(page *ListApplicationsOutput, lastPage bool) bool { -// pageNum++ -// fmt.Println(page) -// return pageNum <= 3 -// }) -// -func (c *CodeDeploy) ListApplicationsPages(input *ListApplicationsInput, fn func(p *ListApplicationsOutput, lastPage bool) (shouldContinue bool)) error { - page, _ := c.ListApplicationsRequest(input) - page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) - return page.EachPage(func(p interface{}, lastPage bool) bool { - return fn(p.(*ListApplicationsOutput), lastPage) - }) -} - const opListDeploymentConfigs = "ListDeploymentConfigs" // ListDeploymentConfigsRequest generates a "aws/request.Request" representing the @@ -2027,12 +2079,6 @@ func (c *CodeDeploy) ListDeploymentConfigsRequest(input *ListDeploymentConfigsIn Name: opListDeploymentConfigs, HTTPMethod: "POST", HTTPPath: "/", - Paginator: &request.Paginator{ - InputTokens: []string{"nextToken"}, - OutputTokens: []string{"nextToken"}, - LimitToken: "", - TruncationToken: "", - }, } if input == nil { @@ -2066,31 +2112,6 @@ func (c *CodeDeploy) ListDeploymentConfigs(input *ListDeploymentConfigsInput) (* return out, err } -// ListDeploymentConfigsPages iterates over the pages of a ListDeploymentConfigs operation, -// calling the "fn" function with the response data for each page. To stop -// iterating, return false from the fn function. -// -// See ListDeploymentConfigs method for more information on how to use this operation. -// -// Note: This operation can generate multiple requests to a service. -// -// // Example iterating over at most 3 pages of a ListDeploymentConfigs operation. -// pageNum := 0 -// err := client.ListDeploymentConfigsPages(params, -// func(page *ListDeploymentConfigsOutput, lastPage bool) bool { -// pageNum++ -// fmt.Println(page) -// return pageNum <= 3 -// }) -// -func (c *CodeDeploy) ListDeploymentConfigsPages(input *ListDeploymentConfigsInput, fn func(p *ListDeploymentConfigsOutput, lastPage bool) (shouldContinue bool)) error { - page, _ := c.ListDeploymentConfigsRequest(input) - page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) - return page.EachPage(func(p interface{}, lastPage bool) bool { - return fn(p.(*ListDeploymentConfigsOutput), lastPage) - }) -} - const opListDeploymentGroups = "ListDeploymentGroups" // ListDeploymentGroupsRequest generates a "aws/request.Request" representing the @@ -2123,12 +2144,6 @@ func (c *CodeDeploy) ListDeploymentGroupsRequest(input *ListDeploymentGroupsInpu Name: opListDeploymentGroups, HTTPMethod: "POST", HTTPPath: "/", - Paginator: &request.Paginator{ - InputTokens: []string{"nextToken"}, - OutputTokens: []string{"nextToken"}, - LimitToken: "", - TruncationToken: "", - }, } if input == nil { @@ -2172,31 +2187,6 @@ func (c *CodeDeploy) ListDeploymentGroups(input *ListDeploymentGroupsInput) (*Li return out, err } -// ListDeploymentGroupsPages iterates over the pages of a ListDeploymentGroups operation, -// calling the "fn" function with the response data for each page. To stop -// iterating, return false from the fn function. -// -// See ListDeploymentGroups method for more information on how to use this operation. -// -// Note: This operation can generate multiple requests to a service. -// -// // Example iterating over at most 3 pages of a ListDeploymentGroups operation. -// pageNum := 0 -// err := client.ListDeploymentGroupsPages(params, -// func(page *ListDeploymentGroupsOutput, lastPage bool) bool { -// pageNum++ -// fmt.Println(page) -// return pageNum <= 3 -// }) -// -func (c *CodeDeploy) ListDeploymentGroupsPages(input *ListDeploymentGroupsInput, fn func(p *ListDeploymentGroupsOutput, lastPage bool) (shouldContinue bool)) error { - page, _ := c.ListDeploymentGroupsRequest(input) - page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) - return page.EachPage(func(p interface{}, lastPage bool) bool { - return fn(p.(*ListDeploymentGroupsOutput), lastPage) - }) -} - const opListDeploymentInstances = "ListDeploymentInstances" // ListDeploymentInstancesRequest generates a "aws/request.Request" representing the @@ -2229,12 +2219,6 @@ func (c *CodeDeploy) ListDeploymentInstancesRequest(input *ListDeploymentInstanc Name: opListDeploymentInstances, HTTPMethod: "POST", HTTPPath: "/", - Paginator: &request.Paginator{ - InputTokens: []string{"nextToken"}, - OutputTokens: []string{"nextToken"}, - LimitToken: "", - TruncationToken: "", - }, } if input == nil { @@ -2277,6 +2261,11 @@ func (c *CodeDeploy) ListDeploymentInstancesRequest(input *ListDeploymentInstanc // * InvalidInstanceStatusException // The specified instance status does not exist. // +// * InvalidInstanceTypeException +// An invalid instance type was specified for instances in a blue/green deployment. +// Valid values include "Blue" for an original environment and "Green" for a +// replacement environment. +// // Please also see https://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/ListDeploymentInstances func (c *CodeDeploy) ListDeploymentInstances(input *ListDeploymentInstancesInput) (*ListDeploymentInstancesOutput, error) { req, out := c.ListDeploymentInstancesRequest(input) @@ -2284,31 +2273,6 @@ func (c *CodeDeploy) ListDeploymentInstances(input *ListDeploymentInstancesInput return out, err } -// ListDeploymentInstancesPages iterates over the pages of a ListDeploymentInstances operation, -// calling the "fn" function with the response data for each page. To stop -// iterating, return false from the fn function. -// -// See ListDeploymentInstances method for more information on how to use this operation. -// -// Note: This operation can generate multiple requests to a service. -// -// // Example iterating over at most 3 pages of a ListDeploymentInstances operation. -// pageNum := 0 -// err := client.ListDeploymentInstancesPages(params, -// func(page *ListDeploymentInstancesOutput, lastPage bool) bool { -// pageNum++ -// fmt.Println(page) -// return pageNum <= 3 -// }) -// -func (c *CodeDeploy) ListDeploymentInstancesPages(input *ListDeploymentInstancesInput, fn func(p *ListDeploymentInstancesOutput, lastPage bool) (shouldContinue bool)) error { - page, _ := c.ListDeploymentInstancesRequest(input) - page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) - return page.EachPage(func(p interface{}, lastPage bool) bool { - return fn(p.(*ListDeploymentInstancesOutput), lastPage) - }) -} - const opListDeployments = "ListDeployments" // ListDeploymentsRequest generates a "aws/request.Request" representing the @@ -2341,12 +2305,6 @@ func (c *CodeDeploy) ListDeploymentsRequest(input *ListDeploymentsInput) (req *r Name: opListDeployments, HTTPMethod: "POST", HTTPPath: "/", - Paginator: &request.Paginator{ - InputTokens: []string{"nextToken"}, - OutputTokens: []string{"nextToken"}, - LimitToken: "", - TruncationToken: "", - }, } if input == nil { @@ -2406,31 +2364,6 @@ func (c *CodeDeploy) ListDeployments(input *ListDeploymentsInput) (*ListDeployme return out, err } -// ListDeploymentsPages iterates over the pages of a ListDeployments operation, -// calling the "fn" function with the response data for each page. To stop -// iterating, return false from the fn function. -// -// See ListDeployments method for more information on how to use this operation. -// -// Note: This operation can generate multiple requests to a service. -// -// // Example iterating over at most 3 pages of a ListDeployments operation. -// pageNum := 0 -// err := client.ListDeploymentsPages(params, -// func(page *ListDeploymentsOutput, lastPage bool) bool { -// pageNum++ -// fmt.Println(page) -// return pageNum <= 3 -// }) -// -func (c *CodeDeploy) ListDeploymentsPages(input *ListDeploymentsInput, fn func(p *ListDeploymentsOutput, lastPage bool) (shouldContinue bool)) error { - page, _ := c.ListDeploymentsRequest(input) - page.Handlers.Build.PushBack(request.MakeAddToUserAgentFreeFormHandler("Paginator")) - return page.EachPage(func(p interface{}, lastPage bool) bool { - return fn(p.(*ListDeploymentsOutput), lastPage) - }) -} - const opListOnPremisesInstances = "ListOnPremisesInstances" // ListOnPremisesInstancesRequest generates a "aws/request.Request" representing the @@ -2771,6 +2704,89 @@ func (c *CodeDeploy) RemoveTagsFromOnPremisesInstances(input *RemoveTagsFromOnPr return out, err } +const opSkipWaitTimeForInstanceTermination = "SkipWaitTimeForInstanceTermination" + +// SkipWaitTimeForInstanceTerminationRequest generates a "aws/request.Request" representing the +// client's request for the SkipWaitTimeForInstanceTermination operation. The "output" return +// value can be used to capture response data after the request's "Send" method +// is called. +// +// See SkipWaitTimeForInstanceTermination for usage and error information. +// +// Creating a request object using this method should be used when you want to inject +// custom logic into the request's lifecycle using a custom handler, or if you want to +// access properties on the request object before or after sending the request. If +// you just want the service response, call the SkipWaitTimeForInstanceTermination method directly +// instead. +// +// Note: You must call the "Send" method on the returned request object in order +// to execute the request. +// +// // Example sending a request using the SkipWaitTimeForInstanceTerminationRequest method. +// req, resp := client.SkipWaitTimeForInstanceTerminationRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// Please also see https://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/SkipWaitTimeForInstanceTermination +func (c *CodeDeploy) SkipWaitTimeForInstanceTerminationRequest(input *SkipWaitTimeForInstanceTerminationInput) (req *request.Request, output *SkipWaitTimeForInstanceTerminationOutput) { + op := &request.Operation{ + Name: opSkipWaitTimeForInstanceTermination, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &SkipWaitTimeForInstanceTerminationInput{} + } + + output = &SkipWaitTimeForInstanceTerminationOutput{} + req = c.newRequest(op, input, output) + req.Handlers.Unmarshal.Remove(jsonrpc.UnmarshalHandler) + req.Handlers.Unmarshal.PushBackNamed(protocol.UnmarshalDiscardBodyHandler) + return +} + +// SkipWaitTimeForInstanceTermination API operation for AWS CodeDeploy. +// +// In a blue/green deployment, overrides any specified wait time and starts +// terminating instances immediately after the traffic routing is completed. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for AWS CodeDeploy's +// API operation SkipWaitTimeForInstanceTermination for usage and error information. +// +// Returned Error Codes: +// * DeploymentIdRequiredException +// At least one deployment ID must be specified. +// +// * DeploymentDoesNotExistException +// The deployment does not exist with the applicable IAM user or AWS account. +// +// * DeploymentAlreadyCompletedException +// The deployment is already complete. +// +// * InvalidDeploymentIdException +// At least one of the deployment IDs was specified in an invalid format. +// +// * DeploymentNotStartedException +// The specified deployment has not started. +// +// * UnsupportedActionForDeploymentTypeException +// A call was submitted that is not supported for the specified deployment type. +// +// Please also see https://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/SkipWaitTimeForInstanceTermination +func (c *CodeDeploy) SkipWaitTimeForInstanceTermination(input *SkipWaitTimeForInstanceTerminationInput) (*SkipWaitTimeForInstanceTerminationOutput, error) { + req, out := c.SkipWaitTimeForInstanceTerminationRequest(input) + err := req.Send() + return out, err +} + const opStopDeployment = "StopDeployment" // StopDeploymentRequest generates a "aws/request.Request" representing the @@ -3051,6 +3067,19 @@ func (c *CodeDeploy) UpdateDeploymentGroupRequest(input *UpdateDeploymentGroupIn // For example, automatic rollback is enabled but an invalid triggering event // type or no event types were listed. // +// * InvalidLoadBalancerInfoException +// An invalid load balancer name, or no load balancer name, was specified. +// +// * InvalidDeploymentStyleException +// An invalid deployment style was specified. Valid deployment types include +// "IN_PLACE" and "BLUE_GREEN". Valid deployment options for blue/green deployments +// include "WITH_TRAFFIC_CONTROL" and "WITHOUT_TRAFFIC_CONTROL". +// +// * InvalidBlueGreenDeploymentConfigurationException +// The configuration for the blue/green deployment group was provided in an +// invalid format. For information about deployment configuration format, see +// CreateDeploymentConfig. +// // Please also see https://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/UpdateDeploymentGroup func (c *CodeDeploy) UpdateDeploymentGroup(input *UpdateDeploymentGroupInput) (*UpdateDeploymentGroupOutput, error) { req, out := c.UpdateDeploymentGroupRequest(input) @@ -3761,6 +3790,134 @@ func (s *BatchGetOnPremisesInstancesOutput) SetInstanceInfos(v []*InstanceInfo) return s } +// Information about blue/green deployment options for a deployment group. +// Please also see https://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/BlueGreenDeploymentConfiguration +type BlueGreenDeploymentConfiguration struct { + _ struct{} `type:"structure"` + + // Information about the action to take when newly provisioned instances are + // ready to receive traffic in a blue/green deployment. + DeploymentReadyOption *DeploymentReadyOption `locationName:"deploymentReadyOption" type:"structure"` + + // Information about how instances are provisioned for a replacement environment + // in a blue/green deployment. + GreenFleetProvisioningOption *GreenFleetProvisioningOption `locationName:"greenFleetProvisioningOption" type:"structure"` + + // Information about whether to terminate instances in the original fleet during + // a blue/green deployment. + TerminateBlueInstancesOnDeploymentSuccess *BlueInstanceTerminationOption `locationName:"terminateBlueInstancesOnDeploymentSuccess" type:"structure"` +} + +// String returns the string representation +func (s BlueGreenDeploymentConfiguration) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s BlueGreenDeploymentConfiguration) GoString() string { + return s.String() +} + +// SetDeploymentReadyOption sets the DeploymentReadyOption field's value. +func (s *BlueGreenDeploymentConfiguration) SetDeploymentReadyOption(v *DeploymentReadyOption) *BlueGreenDeploymentConfiguration { + s.DeploymentReadyOption = v + return s +} + +// SetGreenFleetProvisioningOption sets the GreenFleetProvisioningOption field's value. +func (s *BlueGreenDeploymentConfiguration) SetGreenFleetProvisioningOption(v *GreenFleetProvisioningOption) *BlueGreenDeploymentConfiguration { + s.GreenFleetProvisioningOption = v + return s +} + +// SetTerminateBlueInstancesOnDeploymentSuccess sets the TerminateBlueInstancesOnDeploymentSuccess field's value. +func (s *BlueGreenDeploymentConfiguration) SetTerminateBlueInstancesOnDeploymentSuccess(v *BlueInstanceTerminationOption) *BlueGreenDeploymentConfiguration { + s.TerminateBlueInstancesOnDeploymentSuccess = v + return s +} + +// Information about whether instances in the original environment are terminated +// when a blue/green deployment is successful. +// Please also see https://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/BlueInstanceTerminationOption +type BlueInstanceTerminationOption struct { + _ struct{} `type:"structure"` + + // The action to take on instances in the original environment after a successful + // blue/green deployment. + // + // * TERMINATE: Instances are terminated after a specified wait time. + // + // * KEEP_ALIVE: Instances are left running after they are deregistered from + // the load balancer and removed from the deployment group. + Action *string `locationName:"action" type:"string" enum:"InstanceAction"` + + // The number of minutes to wait after a successful blue/green deployment before + // terminating instances from the original environment. + TerminationWaitTimeInMinutes *int64 `locationName:"terminationWaitTimeInMinutes" type:"integer"` +} + +// String returns the string representation +func (s BlueInstanceTerminationOption) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s BlueInstanceTerminationOption) GoString() string { + return s.String() +} + +// SetAction sets the Action field's value. +func (s *BlueInstanceTerminationOption) SetAction(v string) *BlueInstanceTerminationOption { + s.Action = &v + return s +} + +// SetTerminationWaitTimeInMinutes sets the TerminationWaitTimeInMinutes field's value. +func (s *BlueInstanceTerminationOption) SetTerminationWaitTimeInMinutes(v int64) *BlueInstanceTerminationOption { + s.TerminationWaitTimeInMinutes = &v + return s +} + +// Please also see https://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/ContinueDeploymentInput +type ContinueDeploymentInput struct { + _ struct{} `type:"structure"` + + // The deployment ID of the blue/green deployment for which you want to start + // rerouting traffic to the replacement environment. + DeploymentId *string `locationName:"deploymentId" type:"string"` +} + +// String returns the string representation +func (s ContinueDeploymentInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ContinueDeploymentInput) GoString() string { + return s.String() +} + +// SetDeploymentId sets the DeploymentId field's value. +func (s *ContinueDeploymentInput) SetDeploymentId(v string) *ContinueDeploymentInput { + s.DeploymentId = &v + return s +} + +// Please also see https://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/ContinueDeploymentOutput +type ContinueDeploymentOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation +func (s ContinueDeploymentOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ContinueDeploymentOutput) GoString() string { + return s.String() +} + // Represents the input of a create application operation. // Please also see https://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/CreateApplicationInput type CreateApplicationInput struct { @@ -3947,6 +4104,9 @@ type CreateDeploymentGroupInput struct { // A list of associated Auto Scaling groups. AutoScalingGroups []*string `locationName:"autoScalingGroups" type:"list"` + // Information about blue/green deployment options for a deployment group. + BlueGreenDeploymentConfiguration *BlueGreenDeploymentConfiguration `locationName:"blueGreenDeploymentConfiguration" type:"structure"` + // If specified, the deployment configuration name can be either one of the // predefined configurations provided with AWS CodeDeploy or a custom deployment // configuration that you create by calling the create deployment configuration @@ -3966,9 +4126,16 @@ type CreateDeploymentGroupInput struct { // DeploymentGroupName is a required field DeploymentGroupName *string `locationName:"deploymentGroupName" min:"1" type:"string" required:"true"` + // Information about the type of deployment, standard or blue/green, that you + // want to run and whether to route deployment traffic behind a load balancer. + DeploymentStyle *DeploymentStyle `locationName:"deploymentStyle" type:"structure"` + // The Amazon EC2 tags on which to filter. Ec2TagFilters []*EC2TagFilter `locationName:"ec2TagFilters" type:"list"` + // Information about the load balancer used in a blue/green deployment. + LoadBalancerInfo *LoadBalancerInfo `locationName:"loadBalancerInfo" type:"structure"` + // The on-premises instance tags on which to filter. OnPremisesInstanceTagFilters []*TagFilter `locationName:"onPremisesInstanceTagFilters" type:"list"` @@ -4046,6 +4213,12 @@ func (s *CreateDeploymentGroupInput) SetAutoScalingGroups(v []*string) *CreateDe return s } +// SetBlueGreenDeploymentConfiguration sets the BlueGreenDeploymentConfiguration field's value. +func (s *CreateDeploymentGroupInput) SetBlueGreenDeploymentConfiguration(v *BlueGreenDeploymentConfiguration) *CreateDeploymentGroupInput { + s.BlueGreenDeploymentConfiguration = v + return s +} + // SetDeploymentConfigName sets the DeploymentConfigName field's value. func (s *CreateDeploymentGroupInput) SetDeploymentConfigName(v string) *CreateDeploymentGroupInput { s.DeploymentConfigName = &v @@ -4058,12 +4231,24 @@ func (s *CreateDeploymentGroupInput) SetDeploymentGroupName(v string) *CreateDep return s } +// SetDeploymentStyle sets the DeploymentStyle field's value. +func (s *CreateDeploymentGroupInput) SetDeploymentStyle(v *DeploymentStyle) *CreateDeploymentGroupInput { + s.DeploymentStyle = v + return s +} + // SetEc2TagFilters sets the Ec2TagFilters field's value. func (s *CreateDeploymentGroupInput) SetEc2TagFilters(v []*EC2TagFilter) *CreateDeploymentGroupInput { s.Ec2TagFilters = v return s } +// SetLoadBalancerInfo sets the LoadBalancerInfo field's value. +func (s *CreateDeploymentGroupInput) SetLoadBalancerInfo(v *LoadBalancerInfo) *CreateDeploymentGroupInput { + s.LoadBalancerInfo = v + return s +} + // SetOnPremisesInstanceTagFilters sets the OnPremisesInstanceTagFilters field's value. func (s *CreateDeploymentGroupInput) SetOnPremisesInstanceTagFilters(v []*TagFilter) *CreateDeploymentGroupInput { s.OnPremisesInstanceTagFilters = v @@ -4150,6 +4335,10 @@ type CreateDeploymentInput struct { // The type and location of the revision to deploy. Revision *RevisionLocation `locationName:"revision" type:"structure"` + // Information about the instances that will belong to the replacement environment + // in a blue/green deployment. + TargetInstances *TargetInstances `locationName:"targetInstances" type:"structure"` + // Indicates whether to deploy to all instances or only to instances that are // not running the latest application revision. UpdateOutdatedInstancesOnly *bool `locationName:"updateOutdatedInstancesOnly" type:"boolean"` @@ -4229,6 +4418,12 @@ func (s *CreateDeploymentInput) SetRevision(v *RevisionLocation) *CreateDeployme return s } +// SetTargetInstances sets the TargetInstances field's value. +func (s *CreateDeploymentInput) SetTargetInstances(v *TargetInstances) *CreateDeploymentInput { + s.TargetInstances = v + return s +} + // SetUpdateOutdatedInstancesOnly sets the UpdateOutdatedInstancesOnly field's value. func (s *CreateDeploymentInput) SetUpdateOutdatedInstancesOnly(v bool) *CreateDeploymentInput { s.UpdateOutdatedInstancesOnly = &v @@ -4539,6 +4734,9 @@ type DeploymentGroupInfo struct { // A list of associated Auto Scaling groups. AutoScalingGroups []*AutoScalingGroup `locationName:"autoScalingGroups" type:"list"` + // Information about blue/green deployment options for a deployment group. + BlueGreenDeploymentConfiguration *BlueGreenDeploymentConfiguration `locationName:"blueGreenDeploymentConfiguration" type:"structure"` + // The deployment configuration name. DeploymentConfigName *string `locationName:"deploymentConfigName" min:"1" type:"string"` @@ -4548,9 +4746,16 @@ type DeploymentGroupInfo struct { // The deployment group name. DeploymentGroupName *string `locationName:"deploymentGroupName" min:"1" type:"string"` + // Information about the type of deployment, either standard or blue/green, + // you want to run and whether to route deployment traffic behind a load balancer. + DeploymentStyle *DeploymentStyle `locationName:"deploymentStyle" type:"structure"` + // The Amazon EC2 tags on which to filter. Ec2TagFilters []*EC2TagFilter `locationName:"ec2TagFilters" type:"list"` + // Information about the load balancer to use in a blue/green deployment. + LoadBalancerInfo *LoadBalancerInfo `locationName:"loadBalancerInfo" type:"structure"` + // The on-premises instance tags on which to filter. OnPremisesInstanceTagFilters []*TagFilter `locationName:"onPremisesInstanceTagFilters" type:"list"` @@ -4599,6 +4804,12 @@ func (s *DeploymentGroupInfo) SetAutoScalingGroups(v []*AutoScalingGroup) *Deplo return s } +// SetBlueGreenDeploymentConfiguration sets the BlueGreenDeploymentConfiguration field's value. +func (s *DeploymentGroupInfo) SetBlueGreenDeploymentConfiguration(v *BlueGreenDeploymentConfiguration) *DeploymentGroupInfo { + s.BlueGreenDeploymentConfiguration = v + return s +} + // SetDeploymentConfigName sets the DeploymentConfigName field's value. func (s *DeploymentGroupInfo) SetDeploymentConfigName(v string) *DeploymentGroupInfo { s.DeploymentConfigName = &v @@ -4617,12 +4828,24 @@ func (s *DeploymentGroupInfo) SetDeploymentGroupName(v string) *DeploymentGroupI return s } +// SetDeploymentStyle sets the DeploymentStyle field's value. +func (s *DeploymentGroupInfo) SetDeploymentStyle(v *DeploymentStyle) *DeploymentGroupInfo { + s.DeploymentStyle = v + return s +} + // SetEc2TagFilters sets the Ec2TagFilters field's value. func (s *DeploymentGroupInfo) SetEc2TagFilters(v []*EC2TagFilter) *DeploymentGroupInfo { s.Ec2TagFilters = v return s } +// SetLoadBalancerInfo sets the LoadBalancerInfo field's value. +func (s *DeploymentGroupInfo) SetLoadBalancerInfo(v *LoadBalancerInfo) *DeploymentGroupInfo { + s.LoadBalancerInfo = v + return s +} + // SetOnPremisesInstanceTagFilters sets the OnPremisesInstanceTagFilters field's value. func (s *DeploymentGroupInfo) SetOnPremisesInstanceTagFilters(v []*TagFilter) *DeploymentGroupInfo { s.OnPremisesInstanceTagFilters = v @@ -4652,6 +4875,10 @@ func (s *DeploymentGroupInfo) SetTriggerConfigurations(v []*TriggerConfig) *Depl type DeploymentInfo struct { _ struct{} `type:"structure"` + // Provides information about the results of a deployment, such as whether instances + // in the original environment in a blue/green deployment were not terminated. + AdditionalDeploymentStatusInfo *string `locationName:"additionalDeploymentStatusInfo" type:"string"` + // The application name. ApplicationName *string `locationName:"applicationName" min:"1" type:"string"` @@ -4659,6 +4886,9 @@ type DeploymentInfo struct { // deployment. AutoRollbackConfiguration *AutoRollbackConfiguration `locationName:"autoRollbackConfiguration" type:"structure"` + // Information about blue/green deployment options for this deployment. + BlueGreenDeploymentConfiguration *BlueGreenDeploymentConfiguration `locationName:"blueGreenDeploymentConfiguration" type:"structure"` + // A timestamp indicating when the deployment was complete. CompleteTime *time.Time `locationName:"completeTime" type:"timestamp" timestampFormat:"unix"` @@ -4686,6 +4916,10 @@ type DeploymentInfo struct { // A summary of the deployment status of the instances in the deployment. DeploymentOverview *DeploymentOverview `locationName:"deploymentOverview" type:"structure"` + // Information about the type of deployment, either standard or blue/green, + // you want to run and whether to route deployment traffic behind a load balancer. + DeploymentStyle *DeploymentStyle `locationName:"deploymentStyle" type:"structure"` + // A comment about the deployment. Description *string `locationName:"description" type:"string"` @@ -4703,6 +4937,15 @@ type DeploymentInfo struct { // to have failed. IgnoreApplicationStopFailures *bool `locationName:"ignoreApplicationStopFailures" type:"boolean"` + // Indicates whether the wait period set for the termination of instances in + // the original environment has started. Status is 'false' if the KEEP_ALIVE + // option is specified; otherwise, 'true' as soon as the termination wait period + // starts. + InstanceTerminationWaitTimeStarted *bool `locationName:"instanceTerminationWaitTimeStarted" type:"boolean"` + + // Information about the load balancer used in this blue/green deployment. + LoadBalancerInfo *LoadBalancerInfo `locationName:"loadBalancerInfo" type:"structure"` + // Information about the location of stored application artifacts and the service // from which to retrieve them. Revision *RevisionLocation `locationName:"revision" type:"structure"` @@ -4721,6 +4964,10 @@ type DeploymentInfo struct { // The current state of the deployment as a whole. Status *string `locationName:"status" type:"string" enum:"DeploymentStatus"` + // Information about the instances that belong to the replacement environment + // in a blue/green deployment. + TargetInstances *TargetInstances `locationName:"targetInstances" type:"structure"` + // Indicates whether only instances that are not running the latest application // revision are to be deployed to. UpdateOutdatedInstancesOnly *bool `locationName:"updateOutdatedInstancesOnly" type:"boolean"` @@ -4736,6 +4983,12 @@ func (s DeploymentInfo) GoString() string { return s.String() } +// SetAdditionalDeploymentStatusInfo sets the AdditionalDeploymentStatusInfo field's value. +func (s *DeploymentInfo) SetAdditionalDeploymentStatusInfo(v string) *DeploymentInfo { + s.AdditionalDeploymentStatusInfo = &v + return s +} + // SetApplicationName sets the ApplicationName field's value. func (s *DeploymentInfo) SetApplicationName(v string) *DeploymentInfo { s.ApplicationName = &v @@ -4748,6 +5001,12 @@ func (s *DeploymentInfo) SetAutoRollbackConfiguration(v *AutoRollbackConfigurati return s } +// SetBlueGreenDeploymentConfiguration sets the BlueGreenDeploymentConfiguration field's value. +func (s *DeploymentInfo) SetBlueGreenDeploymentConfiguration(v *BlueGreenDeploymentConfiguration) *DeploymentInfo { + s.BlueGreenDeploymentConfiguration = v + return s +} + // SetCompleteTime sets the CompleteTime field's value. func (s *DeploymentInfo) SetCompleteTime(v time.Time) *DeploymentInfo { s.CompleteTime = &v @@ -4790,6 +5049,12 @@ func (s *DeploymentInfo) SetDeploymentOverview(v *DeploymentOverview) *Deploymen return s } +// SetDeploymentStyle sets the DeploymentStyle field's value. +func (s *DeploymentInfo) SetDeploymentStyle(v *DeploymentStyle) *DeploymentInfo { + s.DeploymentStyle = v + return s +} + // SetDescription sets the Description field's value. func (s *DeploymentInfo) SetDescription(v string) *DeploymentInfo { s.Description = &v @@ -4808,6 +5073,18 @@ func (s *DeploymentInfo) SetIgnoreApplicationStopFailures(v bool) *DeploymentInf return s } +// SetInstanceTerminationWaitTimeStarted sets the InstanceTerminationWaitTimeStarted field's value. +func (s *DeploymentInfo) SetInstanceTerminationWaitTimeStarted(v bool) *DeploymentInfo { + s.InstanceTerminationWaitTimeStarted = &v + return s +} + +// SetLoadBalancerInfo sets the LoadBalancerInfo field's value. +func (s *DeploymentInfo) SetLoadBalancerInfo(v *LoadBalancerInfo) *DeploymentInfo { + s.LoadBalancerInfo = v + return s +} + // SetRevision sets the Revision field's value. func (s *DeploymentInfo) SetRevision(v *RevisionLocation) *DeploymentInfo { s.Revision = v @@ -4832,6 +5109,12 @@ func (s *DeploymentInfo) SetStatus(v string) *DeploymentInfo { return s } +// SetTargetInstances sets the TargetInstances field's value. +func (s *DeploymentInfo) SetTargetInstances(v *TargetInstances) *DeploymentInfo { + s.TargetInstances = v + return s +} + // SetUpdateOutdatedInstancesOnly sets the UpdateOutdatedInstancesOnly field's value. func (s *DeploymentInfo) SetUpdateOutdatedInstancesOnly(v bool) *DeploymentInfo { s.UpdateOutdatedInstancesOnly = &v @@ -4852,6 +5135,10 @@ type DeploymentOverview struct { // The number of instances in the deployment in a pending state. Pending *int64 `type:"long"` + // The number of instances in a replacement environment ready to receive traffic + // in a blue/green deployment. + Ready *int64 `type:"long"` + // The number of instances in the deployment in a skipped state. Skipped *int64 `type:"long"` @@ -4888,6 +5175,12 @@ func (s *DeploymentOverview) SetPending(v int64) *DeploymentOverview { return s } +// SetReady sets the Ready field's value. +func (s *DeploymentOverview) SetReady(v int64) *DeploymentOverview { + s.Ready = &v + return s +} + // SetSkipped sets the Skipped field's value. func (s *DeploymentOverview) SetSkipped(v int64) *DeploymentOverview { s.Skipped = &v @@ -4900,6 +5193,88 @@ func (s *DeploymentOverview) SetSucceeded(v int64) *DeploymentOverview { return s } +// Information about how traffic is rerouted to instances in a replacement environment +// in a blue/green deployment. +// Please also see https://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/DeploymentReadyOption +type DeploymentReadyOption struct { + _ struct{} `type:"structure"` + + // Information about when to reroute traffic from an original environment to + // a replacement environment in a blue/green deployment. + // + // * CONTINUE_DEPLOYMENT: Register new instances with the load balancer immediately + // after the new application revision is installed on the instances in the + // replacement environment. + // + // * STOP_DEPLOYMENT: Do not register new instances with load balancer unless + // traffic is rerouted manually. If traffic is not rerouted manually before + // the end of the specified wait period, the deployment status is changed + // to Stopped. + ActionOnTimeout *string `locationName:"actionOnTimeout" type:"string" enum:"DeploymentReadyAction"` + + // The number of minutes to wait before the status of a blue/green deployment + // changed to Stopped if rerouting is not started manually. Applies only to + // the STOP_DEPLOYMENT option for actionOnTimeout + WaitTimeInMinutes *int64 `locationName:"waitTimeInMinutes" type:"integer"` +} + +// String returns the string representation +func (s DeploymentReadyOption) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeploymentReadyOption) GoString() string { + return s.String() +} + +// SetActionOnTimeout sets the ActionOnTimeout field's value. +func (s *DeploymentReadyOption) SetActionOnTimeout(v string) *DeploymentReadyOption { + s.ActionOnTimeout = &v + return s +} + +// SetWaitTimeInMinutes sets the WaitTimeInMinutes field's value. +func (s *DeploymentReadyOption) SetWaitTimeInMinutes(v int64) *DeploymentReadyOption { + s.WaitTimeInMinutes = &v + return s +} + +// Information about the type of deployment, either standard or blue/green, +// you want to run and whether to route deployment traffic behind a load balancer. +// Please also see https://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/DeploymentStyle +type DeploymentStyle struct { + _ struct{} `type:"structure"` + + // Indicates whether to route deployment traffic behind a load balancer. + DeploymentOption *string `locationName:"deploymentOption" type:"string" enum:"DeploymentOption"` + + // Indicates whether to run a standard deployment or a blue/green deployment. + DeploymentType *string `locationName:"deploymentType" type:"string" enum:"DeploymentType"` +} + +// String returns the string representation +func (s DeploymentStyle) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s DeploymentStyle) GoString() string { + return s.String() +} + +// SetDeploymentOption sets the DeploymentOption field's value. +func (s *DeploymentStyle) SetDeploymentOption(v string) *DeploymentStyle { + s.DeploymentOption = &v + return s +} + +// SetDeploymentType sets the DeploymentType field's value. +func (s *DeploymentStyle) SetDeploymentType(v string) *DeploymentStyle { + s.DeploymentType = &v + return s +} + // Represents the input of a deregister on-premises instance operation. // Please also see https://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/DeregisterOnPremisesInstanceInput type DeregisterOnPremisesInstanceInput struct { @@ -5073,11 +5448,42 @@ func (s *EC2TagFilter) SetValue(v string) *EC2TagFilter { return s } +// Information about a load balancer in Elastic Load Balancing to use in a blue/green +// deployment. +// Please also see https://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/ELBInfo +type ELBInfo struct { + _ struct{} `type:"structure"` + + // The name of the load balancer that will be used to route traffic from original + // instances to replacement instances in a blue/green deployment. + Name *string `locationName:"name" type:"string"` +} + +// String returns the string representation +func (s ELBInfo) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ELBInfo) GoString() string { + return s.String() +} + +// SetName sets the Name field's value. +func (s *ELBInfo) SetName(v string) *ELBInfo { + s.Name = &v + return s +} + // Information about a deployment error. // Please also see https://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/ErrorInformation type ErrorInformation struct { _ struct{} `type:"structure"` + // For information about additional error codes, see Error Codes for AWS CodeDeploy + // (http://docs.aws.amazon.com/codedeploy/latest/userguide/error-codes.html) + // in the AWS CodeDeploy User Guide (http://docs.aws.amazon.com/codedeploy/latest/userguide). + // // The error code: // // * APPLICATION_MISSING: The application was missing. This error code will @@ -5775,6 +6181,38 @@ func (s *GitHubLocation) SetRepository(v string) *GitHubLocation { return s } +// Information about the instances that belong to the replacement environment +// in a blue/green deployment. +// Please also see https://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/GreenFleetProvisioningOption +type GreenFleetProvisioningOption struct { + _ struct{} `type:"structure"` + + // The method used to add instances to a replacement environment. + // + // * DISCOVER_EXISTING: Use instances that already exist or will be created + // manually. + // + // * COPY_AUTO_SCALING_GROUP: Use settings from a specified Auto Scaling + // group to define and create instances in a new Auto Scaling group. + Action *string `locationName:"action" type:"string" enum:"GreenFleetProvisioningAction"` +} + +// String returns the string representation +func (s GreenFleetProvisioningOption) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s GreenFleetProvisioningOption) GoString() string { + return s.String() +} + +// SetAction sets the Action field's value. +func (s *GreenFleetProvisioningOption) SetAction(v string) *GreenFleetProvisioningOption { + s.Action = &v + return s +} + // Information about an on-premises instance. // Please also see https://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/InstanceInfo type InstanceInfo struct { @@ -5866,6 +6304,14 @@ type InstanceSummary struct { // The instance ID. InstanceId *string `locationName:"instanceId" type:"string"` + // Information about which environment an instance belongs to in a blue/green + // deployment. + // + // * BLUE: The instance is part of the original environment. + // + // * GREEN: The instance is part of the replacement environment. + InstanceType *string `locationName:"instanceType" type:"string" enum:"InstanceType"` + // A timestamp indicating when the instance information was last updated. LastUpdatedAt *time.Time `locationName:"lastUpdatedAt" type:"timestamp" timestampFormat:"unix"` @@ -5910,6 +6356,12 @@ func (s *InstanceSummary) SetInstanceId(v string) *InstanceSummary { return s } +// SetInstanceType sets the InstanceType field's value. +func (s *InstanceSummary) SetInstanceType(v string) *InstanceSummary { + s.InstanceType = &v + return s +} + // SetLastUpdatedAt sets the LastUpdatedAt field's value. func (s *InstanceSummary) SetLastUpdatedAt(v time.Time) *InstanceSummary { s.LastUpdatedAt = &v @@ -6415,6 +6867,11 @@ type ListDeploymentInstancesInput struct { // * Unknown: Include those instance with deployments in an unknown state. InstanceStatusFilter []*string `locationName:"instanceStatusFilter" type:"list"` + // The set of instances in a blue/green deployment, either those in the original + // environment ("BLUE") or those in the replacement environment ("GREEN"), for + // which you want to view instance information. + InstanceTypeFilter []*string `locationName:"instanceTypeFilter" type:"list"` + // An identifier returned from the previous list deployment instances call. // It can be used to return the next set of deployment instances in the list. NextToken *string `locationName:"nextToken" type:"string"` @@ -6455,6 +6912,12 @@ func (s *ListDeploymentInstancesInput) SetInstanceStatusFilter(v []*string) *Lis return s } +// SetInstanceTypeFilter sets the InstanceTypeFilter field's value. +func (s *ListDeploymentInstancesInput) SetInstanceTypeFilter(v []*string) *ListDeploymentInstancesInput { + s.InstanceTypeFilter = v + return s +} + // SetNextToken sets the NextToken field's value. func (s *ListDeploymentInstancesInput) SetNextToken(v string) *ListDeploymentInstancesInput { s.NextToken = &v @@ -6711,6 +7174,32 @@ func (s *ListOnPremisesInstancesOutput) SetNextToken(v string) *ListOnPremisesIn return s } +// Information about the load balancer used in a blue/green deployment. +// Please also see https://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/LoadBalancerInfo +type LoadBalancerInfo struct { + _ struct{} `type:"structure"` + + // An array containing information about the load balancer in Elastic Load Balancing + // to use in a blue/green deployment. + ElbInfoList []*ELBInfo `locationName:"elbInfoList" type:"list"` +} + +// String returns the string representation +func (s LoadBalancerInfo) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s LoadBalancerInfo) GoString() string { + return s.String() +} + +// SetElbInfoList sets the ElbInfoList field's value. +func (s *LoadBalancerInfo) SetElbInfoList(v []*ELBInfo) *LoadBalancerInfo { + s.ElbInfoList = v + return s +} + // Information about minimum healthy instance. // Please also see https://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/MinimumHealthyHosts type MinimumHealthyHosts struct { @@ -6997,8 +7486,8 @@ func (s RemoveTagsFromOnPremisesInstancesOutput) GoString() string { type RevisionInfo struct { _ struct{} `type:"structure"` - // Information about an application revision, including usage details and currently - // associated deployment groups. + // Information about an application revision, including usage details and associated + // deployment groups. GenericRevisionInfo *GenericRevisionInfo `locationName:"genericRevisionInfo" type:"structure"` // Information about the location and type of an application revision. @@ -7197,6 +7686,46 @@ func (s *S3Location) SetVersion(v string) *S3Location { return s } +// Please also see https://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/SkipWaitTimeForInstanceTerminationInput +type SkipWaitTimeForInstanceTerminationInput struct { + _ struct{} `type:"structure"` + + // The ID of the blue/green deployment for which you want to skip the instance + // termination wait time. + DeploymentId *string `locationName:"deploymentId" type:"string"` +} + +// String returns the string representation +func (s SkipWaitTimeForInstanceTerminationInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s SkipWaitTimeForInstanceTerminationInput) GoString() string { + return s.String() +} + +// SetDeploymentId sets the DeploymentId field's value. +func (s *SkipWaitTimeForInstanceTerminationInput) SetDeploymentId(v string) *SkipWaitTimeForInstanceTerminationInput { + s.DeploymentId = &v + return s +} + +// Please also see https://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/SkipWaitTimeForInstanceTerminationOutput +type SkipWaitTimeForInstanceTerminationOutput struct { + _ struct{} `type:"structure"` +} + +// String returns the string representation +func (s SkipWaitTimeForInstanceTerminationOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s SkipWaitTimeForInstanceTerminationOutput) GoString() string { + return s.String() +} + // Represents the input of a stop deployment operation. // Please also see https://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/StopDeploymentInput type StopDeploymentInput struct { @@ -7369,6 +7898,43 @@ func (s *TagFilter) SetValue(v string) *TagFilter { return s } +// Information about the instances to be used in the replacement environment +// in a blue/green deployment. +// Please also see https://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/TargetInstances +type TargetInstances struct { + _ struct{} `type:"structure"` + + // The names of one or more Auto Scaling groups to identify a replacement environment + // for a blue/green deployment. + AutoScalingGroups []*string `locationName:"autoScalingGroups" type:"list"` + + // The tag filter key, type, and value used to identify Amazon EC2 instances + // in a replacement environment for a blue/green deployment. + TagFilters []*EC2TagFilter `locationName:"tagFilters" type:"list"` +} + +// String returns the string representation +func (s TargetInstances) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s TargetInstances) GoString() string { + return s.String() +} + +// SetAutoScalingGroups sets the AutoScalingGroups field's value. +func (s *TargetInstances) SetAutoScalingGroups(v []*string) *TargetInstances { + s.AutoScalingGroups = v + return s +} + +// SetTagFilters sets the TagFilters field's value. +func (s *TargetInstances) SetTagFilters(v []*EC2TagFilter) *TargetInstances { + s.TagFilters = v + return s +} + // Information about a time range. // Please also see https://docs.aws.amazon.com/goto/WebAPI/codedeploy-2014-10-06/TimeRange type TimeRange struct { @@ -7540,6 +8106,9 @@ type UpdateDeploymentGroupInput struct { // group names. AutoScalingGroups []*string `locationName:"autoScalingGroups" type:"list"` + // Information about blue/green deployment options for a deployment group. + BlueGreenDeploymentConfiguration *BlueGreenDeploymentConfiguration `locationName:"blueGreenDeploymentConfiguration" type:"structure"` + // The current name of the deployment group. // // CurrentDeploymentGroupName is a required field @@ -7549,11 +8118,18 @@ type UpdateDeploymentGroupInput struct { // it. DeploymentConfigName *string `locationName:"deploymentConfigName" min:"1" type:"string"` + // Information about the type of deployment, either standard or blue/green, + // you want to run and whether to route deployment traffic behind a load balancer. + DeploymentStyle *DeploymentStyle `locationName:"deploymentStyle" type:"structure"` + // The replacement set of Amazon EC2 tags on which to filter, if you want to // change them. To keep the existing tags, enter their names. To remove tags, // do not enter any tag names. Ec2TagFilters []*EC2TagFilter `locationName:"ec2TagFilters" type:"list"` + // Information about the load balancer used in a blue/green deployment. + LoadBalancerInfo *LoadBalancerInfo `locationName:"loadBalancerInfo" type:"structure"` + // The new name of the deployment group, if you want to change it. NewDeploymentGroupName *string `locationName:"newDeploymentGroupName" min:"1" type:"string"` @@ -7633,6 +8209,12 @@ func (s *UpdateDeploymentGroupInput) SetAutoScalingGroups(v []*string) *UpdateDe return s } +// SetBlueGreenDeploymentConfiguration sets the BlueGreenDeploymentConfiguration field's value. +func (s *UpdateDeploymentGroupInput) SetBlueGreenDeploymentConfiguration(v *BlueGreenDeploymentConfiguration) *UpdateDeploymentGroupInput { + s.BlueGreenDeploymentConfiguration = v + return s +} + // SetCurrentDeploymentGroupName sets the CurrentDeploymentGroupName field's value. func (s *UpdateDeploymentGroupInput) SetCurrentDeploymentGroupName(v string) *UpdateDeploymentGroupInput { s.CurrentDeploymentGroupName = &v @@ -7645,12 +8227,24 @@ func (s *UpdateDeploymentGroupInput) SetDeploymentConfigName(v string) *UpdateDe return s } +// SetDeploymentStyle sets the DeploymentStyle field's value. +func (s *UpdateDeploymentGroupInput) SetDeploymentStyle(v *DeploymentStyle) *UpdateDeploymentGroupInput { + s.DeploymentStyle = v + return s +} + // SetEc2TagFilters sets the Ec2TagFilters field's value. func (s *UpdateDeploymentGroupInput) SetEc2TagFilters(v []*EC2TagFilter) *UpdateDeploymentGroupInput { s.Ec2TagFilters = v return s } +// SetLoadBalancerInfo sets the LoadBalancerInfo field's value. +func (s *UpdateDeploymentGroupInput) SetLoadBalancerInfo(v *LoadBalancerInfo) *UpdateDeploymentGroupInput { + s.LoadBalancerInfo = v + return s +} + // SetNewDeploymentGroupName sets the NewDeploymentGroupName field's value. func (s *UpdateDeploymentGroupInput) SetNewDeploymentGroupName(v string) *UpdateDeploymentGroupInput { s.NewDeploymentGroupName = &v @@ -7748,6 +8342,22 @@ const ( DeploymentCreatorCodeDeployRollback = "codeDeployRollback" ) +const ( + // DeploymentOptionWithTrafficControl is a DeploymentOption enum value + DeploymentOptionWithTrafficControl = "WITH_TRAFFIC_CONTROL" + + // DeploymentOptionWithoutTrafficControl is a DeploymentOption enum value + DeploymentOptionWithoutTrafficControl = "WITHOUT_TRAFFIC_CONTROL" +) + +const ( + // DeploymentReadyActionContinueDeployment is a DeploymentReadyAction enum value + DeploymentReadyActionContinueDeployment = "CONTINUE_DEPLOYMENT" + + // DeploymentReadyActionStopDeployment is a DeploymentReadyAction enum value + DeploymentReadyActionStopDeployment = "STOP_DEPLOYMENT" +) + const ( // DeploymentStatusCreated is a DeploymentStatus enum value DeploymentStatusCreated = "Created" @@ -7766,6 +8376,17 @@ const ( // DeploymentStatusStopped is a DeploymentStatus enum value DeploymentStatusStopped = "Stopped" + + // DeploymentStatusReady is a DeploymentStatus enum value + DeploymentStatusReady = "Ready" +) + +const ( + // DeploymentTypeInPlace is a DeploymentType enum value + DeploymentTypeInPlace = "IN_PLACE" + + // DeploymentTypeBlueGreen is a DeploymentType enum value + DeploymentTypeBlueGreen = "BLUE_GREEN" ) const ( @@ -7835,6 +8456,22 @@ const ( ErrorCodeManualStop = "MANUAL_STOP" ) +const ( + // GreenFleetProvisioningActionDiscoverExisting is a GreenFleetProvisioningAction enum value + GreenFleetProvisioningActionDiscoverExisting = "DISCOVER_EXISTING" + + // GreenFleetProvisioningActionCopyAutoScalingGroup is a GreenFleetProvisioningAction enum value + GreenFleetProvisioningActionCopyAutoScalingGroup = "COPY_AUTO_SCALING_GROUP" +) + +const ( + // InstanceActionTerminate is a InstanceAction enum value + InstanceActionTerminate = "TERMINATE" + + // InstanceActionKeepAlive is a InstanceAction enum value + InstanceActionKeepAlive = "KEEP_ALIVE" +) + const ( // InstanceStatusPending is a InstanceStatus enum value InstanceStatusPending = "Pending" @@ -7853,6 +8490,17 @@ const ( // InstanceStatusUnknown is a InstanceStatus enum value InstanceStatusUnknown = "Unknown" + + // InstanceStatusReady is a InstanceStatus enum value + InstanceStatusReady = "Ready" +) + +const ( + // InstanceTypeBlue is a InstanceType enum value + InstanceTypeBlue = "Blue" + + // InstanceTypeGreen is a InstanceType enum value + InstanceTypeGreen = "Green" ) const ( @@ -7973,6 +8621,9 @@ const ( // TriggerEventTypeDeploymentRollback is a TriggerEventType enum value TriggerEventTypeDeploymentRollback = "DeploymentRollback" + // TriggerEventTypeDeploymentReady is a TriggerEventType enum value + TriggerEventTypeDeploymentReady = "DeploymentReady" + // TriggerEventTypeInstanceStart is a TriggerEventType enum value TriggerEventTypeInstanceStart = "InstanceStart" @@ -7981,4 +8632,7 @@ const ( // TriggerEventTypeInstanceFailure is a TriggerEventType enum value TriggerEventTypeInstanceFailure = "InstanceFailure" + + // TriggerEventTypeInstanceReady is a TriggerEventType enum value + TriggerEventTypeInstanceReady = "InstanceReady" ) diff --git a/vendor/github.com/aws/aws-sdk-go/service/ec2/api.go b/vendor/github.com/aws/aws-sdk-go/service/ec2/api.go index 822ad740f..125247059 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/ec2/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/ec2/api.go @@ -15504,6 +15504,11 @@ func (s *AccountAttributeValue) SetAttributeValue(v string) *AccountAttributeVal type ActiveInstance struct { _ struct{} `type:"structure"` + // The health status of the instance. If the status of both the instance status + // check and the system status check is impaired, the health status of the instance + // is unhealthy. Otherwise, the health status is healthy. + InstanceHealth *string `locationName:"instanceHealth" type:"string" enum:"InstanceHealthStatus"` + // The ID of the instance. InstanceId *string `locationName:"instanceId" type:"string"` @@ -15524,6 +15529,12 @@ func (s ActiveInstance) GoString() string { return s.String() } +// SetInstanceHealth sets the InstanceHealth field's value. +func (s *ActiveInstance) SetInstanceHealth(v string) *ActiveInstance { + s.InstanceHealth = &v + return s +} + // SetInstanceId sets the InstanceId field's value. func (s *ActiveInstance) SetInstanceId(v string) *ActiveInstance { s.InstanceId = &v @@ -48233,6 +48244,9 @@ type SpotFleetRequestConfigData struct { // LaunchSpecifications is a required field LaunchSpecifications []*SpotFleetLaunchSpecification `locationName:"launchSpecifications" locationNameList:"item" min:"1" type:"list" required:"true"` + // Indicates whether Spot fleet should replace unhealthy instances. + ReplaceUnhealthyInstances *bool `locationName:"replaceUnhealthyInstances" type:"boolean"` + // The bid price per unit hour. // // SpotPrice is a required field @@ -48350,6 +48364,12 @@ func (s *SpotFleetRequestConfigData) SetLaunchSpecifications(v []*SpotFleetLaunc return s } +// SetReplaceUnhealthyInstances sets the ReplaceUnhealthyInstances field's value. +func (s *SpotFleetRequestConfigData) SetReplaceUnhealthyInstances(v bool) *SpotFleetRequestConfigData { + s.ReplaceUnhealthyInstances = &v + return s +} + // SetSpotPrice sets the SpotPrice field's value. func (s *SpotFleetRequestConfigData) SetSpotPrice(v string) *SpotFleetRequestConfigData { s.SpotPrice = &v @@ -51943,6 +51963,14 @@ const ( InstanceAttributeNameEnaSupport = "enaSupport" ) +const ( + // InstanceHealthStatusHealthy is a InstanceHealthStatus enum value + InstanceHealthStatusHealthy = "healthy" + + // InstanceHealthStatusUnhealthy is a InstanceHealthStatus enum value + InstanceHealthStatusUnhealthy = "unhealthy" +) + const ( // InstanceLifecycleTypeSpot is a InstanceLifecycleType enum value InstanceLifecycleTypeSpot = "spot" diff --git a/vendor/github.com/aws/aws-sdk-go/service/ecs/api.go b/vendor/github.com/aws/aws-sdk-go/service/ecs/api.go index 16f10d909..e88a7a9c0 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/ecs/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/ecs/api.go @@ -153,34 +153,33 @@ func (c *ECS) CreateServiceRequest(input *CreateServiceInput) (req *request.Requ // service's tasks that must remain in the RUNNING state during a deployment, // as a percentage of the desiredCount (rounded up to the nearest integer). // This parameter enables you to deploy without using additional cluster capacity. -// For example, if your service has a desiredCount of four tasks and a minimumHealthyPercent -// of 50%, the scheduler may stop two existing tasks to free up cluster capacity -// before starting two new tasks. Tasks for services that do not use a load -// balancer are considered healthy if they are in the RUNNING state; tasks for -// services that do use a load balancer are considered healthy if they are in -// the RUNNING state and the container instance it is hosted on is reported -// as healthy by the load balancer. The default value for minimumHealthyPercent -// is 50% in the console and 100% for the AWS CLI, the AWS SDKs, and the APIs. +// For example, if desiredCount is four tasks and the minimum is 50%, the scheduler +// can stop two existing tasks to free up cluster capacity before starting two +// new tasks. Tasks for services that do not use a load balancer are considered +// healthy if they are in the RUNNING state. Tasks for services that use a load +// balancer are considered healthy if they are in the RUNNING state and the +// container instance they are hosted on is reported as healthy by the load +// balancer. The default value is 50% in the console and 100% for the AWS CLI, +// the AWS SDKs, and the APIs. // // The maximumPercent parameter represents an upper limit on the number of your // service's tasks that are allowed in the RUNNING or PENDING state during a // deployment, as a percentage of the desiredCount (rounded down to the nearest // integer). This parameter enables you to define the deployment batch size. -// For example, if your service has a desiredCount of four tasks and a maximumPercent -// value of 200%, the scheduler may start four new tasks before stopping the -// four older tasks (provided that the cluster resources required to do this -// are available). The default value for maximumPercent is 200%. +// For example, if desiredCount is four tasks and the maximum is 200%, the scheduler +// can start four new tasks before stopping the four older tasks (provided that +// the cluster resources required to do this are available). The default value +// is 200%. // // When the service scheduler launches new tasks, it determines task placement -// in your cluster with the following logic: +// in your cluster using the following logic: // // * Determine which of the container instances in your cluster can support // your service's task definition (for example, they have the required CPU, // memory, ports, and container instance attributes). // // * By default, the service scheduler attempts to balance tasks across Availability -// Zones in this manner (although you can choose a different placement strategy -// with the placementStrategy parameter): +// Zones in this manner (although you can choose a different placement strategy): // // Sort the valid container instances by the fewest number of running tasks // for this service in the same Availability Zone as the instance. For example, @@ -268,7 +267,7 @@ func (c *ECS) DeleteAttributesRequest(input *DeleteAttributesInput) (req *reques // DeleteAttributes API operation for Amazon EC2 Container Service. // -// Deletes one or more attributes from an Amazon ECS resource. +// Deletes one or more custom attributes from an Amazon ECS resource. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -1905,8 +1904,10 @@ func (c *ECS) PutAttributesRequest(input *PutAttributesInput) (req *request.Requ // PutAttributes API operation for Amazon EC2 Container Service. // // Create or update an attribute on an Amazon ECS resource. If the attribute -// does not already exist on the given target, it is created; if it does exist, -// it is replaced with the new value. +// does not exist, it is created. If the attribute exists, its value is replaced +// with the specified value. To delete an attribute, use DeleteAttributes. For +// more information, see Attributes (http://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-placement-constraints.html#attributes) +// in the Amazon EC2 Container Service Developer Guide. // // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about @@ -2610,6 +2611,127 @@ func (c *ECS) UpdateContainerAgent(input *UpdateContainerAgentInput) (*UpdateCon return out, err } +const opUpdateContainerInstancesState = "UpdateContainerInstancesState" + +// UpdateContainerInstancesStateRequest generates a "aws/request.Request" representing the +// client's request for the UpdateContainerInstancesState operation. The "output" return +// value can be used to capture response data after the request's "Send" method +// is called. +// +// See UpdateContainerInstancesState for usage and error information. +// +// Creating a request object using this method should be used when you want to inject +// custom logic into the request's lifecycle using a custom handler, or if you want to +// access properties on the request object before or after sending the request. If +// you just want the service response, call the UpdateContainerInstancesState method directly +// instead. +// +// Note: You must call the "Send" method on the returned request object in order +// to execute the request. +// +// // Example sending a request using the UpdateContainerInstancesStateRequest method. +// req, resp := client.UpdateContainerInstancesStateRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// Please also see https://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/UpdateContainerInstancesState +func (c *ECS) UpdateContainerInstancesStateRequest(input *UpdateContainerInstancesStateInput) (req *request.Request, output *UpdateContainerInstancesStateOutput) { + op := &request.Operation{ + Name: opUpdateContainerInstancesState, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &UpdateContainerInstancesStateInput{} + } + + output = &UpdateContainerInstancesStateOutput{} + req = c.newRequest(op, input, output) + return +} + +// UpdateContainerInstancesState API operation for Amazon EC2 Container Service. +// +// Modifies the status of an Amazon ECS container instance. +// +// You can change the status of a container instance to DRAINING to manually +// remove an instance from a cluster, for example to perform system updates, +// update the Docker daemon, or scale down the cluster size. +// +// When you set a container instance to DRAINING, Amazon ECS prevents new tasks +// from being scheduled for placement on the container instance and replacement +// service tasks are started on other container instances in the cluster if +// the resources are available. Service tasks on the container instance that +// are in the PENDING state are stopped immediately. +// +// Service tasks on the container instance that are in the RUNNING state are +// stopped and replaced according the service's deployment configuration parameters, +// minimumHealthyPercent and maximumPercent. Note that you can change the deployment +// configuration of your service using UpdateService. +// +// * If minimumHealthyPercent is below 100%, the scheduler can ignore desiredCount +// temporarily during task replacement. For example, desiredCount is four +// tasks, a minimum of 50% allows the scheduler to stop two existing tasks +// before starting two new tasks. If the minimum is 100%, the service scheduler +// can't remove existing tasks until the replacement tasks are considered +// healthy. Tasks for services that do not use a load balancer are considered +// healthy if they are in the RUNNING state. Tasks for services that use +// a load balancer are considered healthy if they are in the RUNNING state +// and the container instance they are hosted on is reported as healthy by +// the load balancer. +// +// * The maximumPercent parameter represents an upper limit on the number +// of running tasks during task replacement, which enables you to define +// the replacement batch size. For example, if desiredCount of four tasks, +// a maximum of 200% starts four new tasks before stopping the four tasks +// to be drained (provided that the cluster resources required to do this +// are available). If the maximum is 100%, then replacement tasks can't start +// until the draining tasks have stopped. +// +// Any PENDING or RUNNING tasks that do not belong to a service are not affected; +// you must wait for them to finish or stop them manually. +// +// A container instance has completed draining when it has no more RUNNING tasks. +// You can verify this using ListTasks. +// +// When you set a container instance to ACTIVE, the Amazon ECS scheduler can +// begin scheduling tasks on the instance again. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon EC2 Container Service's +// API operation UpdateContainerInstancesState for usage and error information. +// +// Returned Error Codes: +// * ServerException +// These errors are usually caused by a server issue. +// +// * ClientException +// These errors are usually caused by a client action, such as using an action +// or resource on behalf of a user that doesn't have permission to use the action +// or resource, or specifying an identifier that is not valid. +// +// * InvalidParameterException +// The specified parameter is invalid. Review the available parameters for the +// API request. +// +// * ClusterNotFoundException +// The specified cluster could not be found. You can view your available clusters +// with ListClusters. Amazon ECS clusters are region-specific. +// +// Please also see https://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/UpdateContainerInstancesState +func (c *ECS) UpdateContainerInstancesState(input *UpdateContainerInstancesStateInput) (*UpdateContainerInstancesStateOutput, error) { + req, out := c.UpdateContainerInstancesStateRequest(input) + err := req.Send() + return out, err +} + const opUpdateService = "UpdateService" // UpdateServiceRequest generates a "aws/request.Request" representing the @@ -2670,20 +2792,20 @@ func (c *ECS) UpdateServiceRequest(input *UpdateServiceInput) (req *request.Requ // uses the deployment configuration parameters, minimumHealthyPercent and maximumPercent, // to determine the deployment strategy. // -// If the minimumHealthyPercent is below 100%, the scheduler can ignore the -// desiredCount temporarily during a deployment. For example, if your service -// has a desiredCount of four tasks, a minimumHealthyPercent of 50% allows the -// scheduler to stop two existing tasks before starting two new tasks. Tasks -// for services that do not use a load balancer are considered healthy if they -// are in the RUNNING state; tasks for services that do use a load balancer -// are considered healthy if they are in the RUNNING state and the container -// instance it is hosted on is reported as healthy by the load balancer. +// * If minimumHealthyPercent is below 100%, the scheduler can ignore desiredCount +// temporarily during a deployment. For example, if desiredCount is four +// tasks, a minimum of 50% allows the scheduler to stop two existing tasks +// before starting two new tasks. Tasks for services that do not use a load +// balancer are considered healthy if they are in the RUNNING state. Tasks +// for services that use a load balancer are considered healthy if they are +// in the RUNNING state and the container instance they are hosted on is +// reported as healthy by the load balancer. // -// The maximumPercent parameter represents an upper limit on the number of running -// tasks during a deployment, which enables you to define the deployment batch -// size. For example, if your service has a desiredCount of four tasks, a maximumPercent -// value of 200% starts four new tasks before stopping the four older tasks -// (provided that the cluster resources required to do this are available). +// * The maximumPercent parameter represents an upper limit on the number +// of running tasks during a deployment, which enables you to define the +// deployment batch size. For example, if desiredCount is four tasks, a maximum +// of 200% starts four new tasks before stopping the four older tasks (provided +// that the cluster resources required to do this are available). // // When UpdateService stops a task during a deployment, the equivalent of docker // stop is issued to the containers running in the task. This results in a SIGTERM @@ -2699,8 +2821,7 @@ func (c *ECS) UpdateServiceRequest(input *UpdateServiceInput) (req *request.Requ // memory, ports, and container instance attributes). // // * By default, the service scheduler attempts to balance tasks across Availability -// Zones in this manner (although you can choose a different placement strategy -// with the placementStrategy parameter): +// Zones in this manner (although you can choose a different placement strategy): // // Sort the valid container instances by the fewest number of running tasks // for this service in the same Availability Zone as the instance. For example, @@ -2713,7 +2834,7 @@ func (c *ECS) UpdateServiceRequest(input *UpdateServiceInput) (req *request.Requ // the fewest number of running tasks for this service. // // When the service scheduler stops running tasks, it attempts to maintain balance -// across the Availability Zones in your cluster with the following logic: +// across the Availability Zones in your cluster using the following logic: // // * Sort the container instances by the largest number of running tasks // for this service in the same Availability Zone as the instance. For example, @@ -2764,9 +2885,10 @@ func (c *ECS) UpdateService(input *UpdateServiceInput) (*UpdateServiceOutput, er return out, err } -// Attributes are name-value pairs associated with various Amazon ECS objects. -// Attributes allow you to extend the Amazon ECS data model by adding custom -// metadata to your resources. +// An attribute is a name-value pair associated with an Amazon ECS object. Attributes +// enable you to extend the Amazon ECS data model by adding custom metadata +// to your resources. For more information, see Attributes (http://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-placement-constraints.html#attributes) +// in the Amazon EC2 Container Service Developer Guide. // Please also see https://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/Attribute type Attribute struct { _ struct{} `type:"structure"` @@ -4303,14 +4425,13 @@ type DeploymentConfiguration struct { // The upper limit (as a percentage of the service's desiredCount) of the number // of tasks that are allowed in the RUNNING or PENDING state in a service during // a deployment. The maximum number of tasks during a deployment is the desiredCount - // multiplied by the maximumPercent/100, rounded down to the nearest integer - // value. + // multiplied by maximumPercent/100, rounded down to the nearest integer value. MaximumPercent *int64 `locationName:"maximumPercent" type:"integer"` // The lower limit (as a percentage of the service's desiredCount) of the number // of running tasks that must remain in the RUNNING state in a service during // a deployment. The minimum healthy tasks during a deployment is the desiredCount - // multiplied by the minimumHealthyPercent/100, rounded up to the nearest integer + // multiplied by minimumHealthyPercent/100, rounded up to the nearest integer // value. MinimumHealthyPercent *int64 `locationName:"minimumHealthyPercent" type:"integer"` } @@ -5349,6 +5470,12 @@ type ListContainerInstancesInput struct { // This token should be treated as an opaque identifier that is only used to // retrieve the next items in a list and not for other programmatic purposes. NextToken *string `locationName:"nextToken" type:"string"` + + // The container instance status with which to filter the ListContainerInstances + // results. Specifying a container instance status of DRAINING limits the results + // to container instances that have been set to drain with the UpdateContainerInstancesState + // operation. + Status *string `locationName:"status" type:"string" enum:"ContainerInstanceStatus"` } // String returns the string representation @@ -5385,6 +5512,12 @@ func (s *ListContainerInstancesInput) SetNextToken(v string) *ListContainerInsta return s } +// SetStatus sets the Status field's value. +func (s *ListContainerInstancesInput) SetStatus(v string) *ListContainerInstancesInput { + s.Status = &v + return s +} + // Please also see https://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/ListContainerInstancesResponse type ListContainerInstancesOutput struct { _ struct{} `type:"structure"` @@ -6136,7 +6269,8 @@ type PlacementConstraint struct { // The type of constraint. Use distinctInstance to ensure that each task in // a particular group is running on a different container instance. Use memberOf - // to restrict selection to a group of valid candidates. + // to restrict selection to a group of valid candidates. Note that distinctInstance + // is not supported in task definitions. Type *string `locationName:"type" type:"string" enum:"PlacementConstraintType"` } @@ -6173,7 +6307,8 @@ type PlacementStrategy struct { // strategy, valid values are instanceId (or host, which has the same effect), // or any platform or custom attribute that is applied to a container instance, // such as attribute:ecs.availability-zone. For the binpack placement strategy, - // valid values are CPU and MEMORY. + // valid values are cpu and memory. For the random placement strategy, this + // field is not used. Field *string `locationName:"field" type:"string"` // The type of placement strategy. The random placement strategy randomly places @@ -6661,7 +6796,7 @@ type Resource struct { // precision floating-point type. LongValue *int64 `locationName:"longValue" type:"long"` - // The name of the resource, such as CPU, MEMORY, PORTS, or a user-defined resource. + // The name of the resource, such as cpu, memory, ports, or a user-defined resource. Name *string `locationName:"name" type:"string"` // When the stringSetValue type is set, the value of the resource must be a @@ -6731,8 +6866,8 @@ type RunTaskInput struct { // You can specify up to 10 tasks per call. Count *int64 `locationName:"count" type:"integer"` - // The task group to associate with the task. By default, if you do not specify - // a task group, the group family:TASKDEF-FAMILY is applied. + // The name of the task group to associate with the task. The default value + // is the family name of the task definition (for example, family:my-family-name). Group *string `locationName:"group" type:"string"` // A list of container overrides in JSON format that specify the name of a container @@ -7115,8 +7250,8 @@ type StartTaskInput struct { // ContainerInstances is a required field ContainerInstances []*string `locationName:"containerInstances" type:"list" required:"true"` - // The task group to associate with the task. By default, if you do not specify - // a task group, the default group is family:TASKDEF-FAMILY. + // The name of the task group to associate with the task. The default value + // is the family name of the task definition (for example, family:my-family-name). Group *string `locationName:"group" type:"string"` // A list of container overrides in JSON format that specify the name of a container @@ -7534,7 +7669,7 @@ type Task struct { // The desired status of the task. DesiredStatus *string `locationName:"desiredStatus" type:"string"` - // The task group associated with the task. + // The name of the task group associated with the task. Group *string `locationName:"group" type:"string"` // The last known status of the task. @@ -8020,6 +8155,104 @@ func (s *UpdateContainerAgentOutput) SetContainerInstance(v *ContainerInstance) return s } +// Please also see https://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/UpdateContainerInstancesStateRequest +type UpdateContainerInstancesStateInput struct { + _ struct{} `type:"structure"` + + // The short name or full Amazon Resource Name (ARN) of the cluster that hosts + // the container instance to update. If you do not specify a cluster, the default + // cluster is assumed. + Cluster *string `locationName:"cluster" type:"string"` + + // A space-separated list of container instance IDs or full Amazon Resource + // Name (ARN) entries. + // + // ContainerInstances is a required field + ContainerInstances []*string `locationName:"containerInstances" type:"list" required:"true"` + + // The container instance state with which to update the container instance. + // + // Status is a required field + Status *string `locationName:"status" type:"string" required:"true" enum:"ContainerInstanceStatus"` +} + +// String returns the string representation +func (s UpdateContainerInstancesStateInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UpdateContainerInstancesStateInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *UpdateContainerInstancesStateInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "UpdateContainerInstancesStateInput"} + if s.ContainerInstances == nil { + invalidParams.Add(request.NewErrParamRequired("ContainerInstances")) + } + if s.Status == nil { + invalidParams.Add(request.NewErrParamRequired("Status")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetCluster sets the Cluster field's value. +func (s *UpdateContainerInstancesStateInput) SetCluster(v string) *UpdateContainerInstancesStateInput { + s.Cluster = &v + return s +} + +// SetContainerInstances sets the ContainerInstances field's value. +func (s *UpdateContainerInstancesStateInput) SetContainerInstances(v []*string) *UpdateContainerInstancesStateInput { + s.ContainerInstances = v + return s +} + +// SetStatus sets the Status field's value. +func (s *UpdateContainerInstancesStateInput) SetStatus(v string) *UpdateContainerInstancesStateInput { + s.Status = &v + return s +} + +// Please also see https://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/UpdateContainerInstancesStateResponse +type UpdateContainerInstancesStateOutput struct { + _ struct{} `type:"structure"` + + // The list of container instances. + ContainerInstances []*ContainerInstance `locationName:"containerInstances" type:"list"` + + // Any failures associated with the call. + Failures []*Failure `locationName:"failures" type:"list"` +} + +// String returns the string representation +func (s UpdateContainerInstancesStateOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s UpdateContainerInstancesStateOutput) GoString() string { + return s.String() +} + +// SetContainerInstances sets the ContainerInstances field's value. +func (s *UpdateContainerInstancesStateOutput) SetContainerInstances(v []*ContainerInstance) *UpdateContainerInstancesStateOutput { + s.ContainerInstances = v + return s +} + +// SetFailures sets the Failures field's value. +func (s *UpdateContainerInstancesStateOutput) SetFailures(v []*Failure) *UpdateContainerInstancesStateOutput { + s.Failures = v + return s +} + // Please also see https://docs.aws.amazon.com/goto/WebAPI/ecs-2014-11-13/UpdateServiceRequest type UpdateServiceInput struct { _ struct{} `type:"structure"` @@ -8268,6 +8501,14 @@ const ( AgentUpdateStatusFailed = "FAILED" ) +const ( + // ContainerInstanceStatusActive is a ContainerInstanceStatus enum value + ContainerInstanceStatusActive = "ACTIVE" + + // ContainerInstanceStatusDraining is a ContainerInstanceStatus enum value + ContainerInstanceStatusDraining = "DRAINING" +) + const ( // DesiredStatusRunning is a DesiredStatus enum value DesiredStatusRunning = "RUNNING" diff --git a/vendor/github.com/aws/aws-sdk-go/service/elbv2/api.go b/vendor/github.com/aws/aws-sdk-go/service/elbv2/api.go index 8373490d1..b25f56ee4 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/elbv2/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/elbv2/api.go @@ -247,12 +247,13 @@ func (c *ELBV2) CreateLoadBalancerRequest(input *CreateLoadBalancerInput) (req * // // Creates an Application Load Balancer. // -// To create listeners for your load balancer, use CreateListener. You can add -// security groups, subnets, and tags when you create your load balancer, or -// you can add them later using SetSecurityGroups, SetSubnets, and AddTags. +// When you create a load balancer, you can specify security groups, subnets, +// IP address type, and tags. Otherwise, you could do so later using SetSecurityGroups, +// SetSubnets, SetIpAddressType, and AddTags. // -// To describe your current load balancers, see DescribeLoadBalancers. When -// you are finished with a load balancer, you can delete it using DeleteLoadBalancer. +// To create listeners for your load balancer, use CreateListener. To describe +// your current load balancers, see DescribeLoadBalancers. When you are finished +// with a load balancer, you can delete it using DeleteLoadBalancer. // // You can create up to 20 load balancers per region per account. You can request // an increase for the number of load balancers for your account. For more information, @@ -1992,8 +1993,8 @@ func (c *ELBV2) RegisterTargetsRequest(input *RegisterTargetsInput) (req *reques // override the port for a target when you register it. // // The target must be in the virtual private cloud (VPC) that you specified -// for the target group. If the target is an EC2 instance, it can't be in the -// stopped or running state when you register it. +// for the target group. If the target is an EC2 instance, it must be in the +// running state when you register it. // // To remove a target from a target group, use DeregisterTargets. // @@ -2105,6 +2106,78 @@ func (c *ELBV2) RemoveTags(input *RemoveTagsInput) (*RemoveTagsOutput, error) { return out, err } +const opSetIpAddressType = "SetIpAddressType" + +// SetIpAddressTypeRequest generates a "aws/request.Request" representing the +// client's request for the SetIpAddressType operation. The "output" return +// value can be used to capture response data after the request's "Send" method +// is called. +// +// See SetIpAddressType for usage and error information. +// +// Creating a request object using this method should be used when you want to inject +// custom logic into the request's lifecycle using a custom handler, or if you want to +// access properties on the request object before or after sending the request. If +// you just want the service response, call the SetIpAddressType method directly +// instead. +// +// Note: You must call the "Send" method on the returned request object in order +// to execute the request. +// +// // Example sending a request using the SetIpAddressTypeRequest method. +// req, resp := client.SetIpAddressTypeRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/SetIpAddressType +func (c *ELBV2) SetIpAddressTypeRequest(input *SetIpAddressTypeInput) (req *request.Request, output *SetIpAddressTypeOutput) { + op := &request.Operation{ + Name: opSetIpAddressType, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &SetIpAddressTypeInput{} + } + + output = &SetIpAddressTypeOutput{} + req = c.newRequest(op, input, output) + return +} + +// SetIpAddressType API operation for Elastic Load Balancing. +// +// Sets the type of IP addresses used by the subnets of the specified Application +// Load Balancer. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Elastic Load Balancing's +// API operation SetIpAddressType for usage and error information. +// +// Returned Error Codes: +// * LoadBalancerNotFound +// The specified load balancer does not exist. +// +// * InvalidConfigurationRequest +// The requested configuration is not valid. +// +// * InvalidSubnet +// The specified subnet is out of available addresses. +// +// Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/SetIpAddressType +func (c *ELBV2) SetIpAddressType(input *SetIpAddressTypeInput) (*SetIpAddressTypeOutput, error) { + req, out := c.SetIpAddressTypeRequest(input) + err := req.Send() + return out, err +} + const opSetRulePriorities = "SetRulePriorities" // SetRulePrioritiesRequest generates a "aws/request.Request" representing the @@ -2382,7 +2455,6 @@ func (s *Action) SetType(v string) *Action { return s } -// Contains the parameters for AddTags. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/AddTagsInput type AddTagsInput struct { _ struct{} `type:"structure"` @@ -2449,7 +2521,6 @@ func (s *AddTagsInput) SetTags(v []*Tag) *AddTagsInput { return s } -// Contains the output of AddTags. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/AddTagsOutput type AddTagsOutput struct { _ struct{} `type:"structure"` @@ -2558,7 +2629,6 @@ func (s *Cipher) SetPriority(v int64) *Cipher { return s } -// Contains the parameters for CreateListener. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/CreateListenerInput type CreateListenerInput struct { _ struct{} `type:"structure"` @@ -2673,7 +2743,6 @@ func (s *CreateListenerInput) SetSslPolicy(v string) *CreateListenerInput { return s } -// Contains the output of CreateListener. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/CreateListenerOutput type CreateListenerOutput struct { _ struct{} `type:"structure"` @@ -2698,11 +2767,15 @@ func (s *CreateListenerOutput) SetListeners(v []*Listener) *CreateListenerOutput return s } -// Contains the parameters for CreateLoadBalancer. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/CreateLoadBalancerInput type CreateLoadBalancerInput struct { _ struct{} `type:"structure"` + // The type of IP addresses used by the subnets for your load balancer. The + // possible values are ipv4 (for IPv4 addresses) and dualstack (for IPv4 and + // IPv6 addresses). Internal load balancers must use ipv4. + IpAddressType *string `type:"string" enum:"IpAddressType"` + // The name of the load balancer. // // This name must be unique within your AWS account, can have a maximum of 32 @@ -2778,6 +2851,12 @@ func (s *CreateLoadBalancerInput) Validate() error { return nil } +// SetIpAddressType sets the IpAddressType field's value. +func (s *CreateLoadBalancerInput) SetIpAddressType(v string) *CreateLoadBalancerInput { + s.IpAddressType = &v + return s +} + // SetName sets the Name field's value. func (s *CreateLoadBalancerInput) SetName(v string) *CreateLoadBalancerInput { s.Name = &v @@ -2808,7 +2887,6 @@ func (s *CreateLoadBalancerInput) SetTags(v []*Tag) *CreateLoadBalancerInput { return s } -// Contains the output of CreateLoadBalancer. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/CreateLoadBalancerOutput type CreateLoadBalancerOutput struct { _ struct{} `type:"structure"` @@ -2833,7 +2911,6 @@ func (s *CreateLoadBalancerOutput) SetLoadBalancers(v []*LoadBalancer) *CreateLo return s } -// Contains the parameters for CreateRule. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/CreateRuleInput type CreateRuleInput struct { _ struct{} `type:"structure"` @@ -2844,8 +2921,9 @@ type CreateRuleInput struct { Actions []*Action `type:"list" required:"true"` // A condition. Each condition has the field path-pattern and specifies one - // path pattern. A path pattern is case sensitive, can be up to 255 characters - // in length, and can contain any of the following characters: + // path pattern. A path pattern is case sensitive, can be up to 128 characters + // in length, and can contain any of the following characters. Note that you + // can include up to three wildcard characters in a path pattern. // // * A-Z, a-z, 0-9 // @@ -2941,7 +3019,6 @@ func (s *CreateRuleInput) SetPriority(v int64) *CreateRuleInput { return s } -// Contains the output of CreateRule. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/CreateRuleOutput type CreateRuleOutput struct { _ struct{} `type:"structure"` @@ -2966,7 +3043,6 @@ func (s *CreateRuleOutput) SetRules(v []*Rule) *CreateRuleOutput { return s } -// Contains the parameters for CreateTargetGroup. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/CreateTargetGroupInput type CreateTargetGroupInput struct { _ struct{} `type:"structure"` @@ -3153,7 +3229,6 @@ func (s *CreateTargetGroupInput) SetVpcId(v string) *CreateTargetGroupInput { return s } -// Contains the output of CreateTargetGroup. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/CreateTargetGroupOutput type CreateTargetGroupOutput struct { _ struct{} `type:"structure"` @@ -3178,7 +3253,6 @@ func (s *CreateTargetGroupOutput) SetTargetGroups(v []*TargetGroup) *CreateTarge return s } -// Contains the parameters for DeleteListener. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DeleteListenerInput type DeleteListenerInput struct { _ struct{} `type:"structure"` @@ -3218,7 +3292,6 @@ func (s *DeleteListenerInput) SetListenerArn(v string) *DeleteListenerInput { return s } -// Contains the output of DeleteListener. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DeleteListenerOutput type DeleteListenerOutput struct { _ struct{} `type:"structure"` @@ -3234,7 +3307,6 @@ func (s DeleteListenerOutput) GoString() string { return s.String() } -// Contains the parameters for DeleteLoadBalancer. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DeleteLoadBalancerInput type DeleteLoadBalancerInput struct { _ struct{} `type:"structure"` @@ -3274,7 +3346,6 @@ func (s *DeleteLoadBalancerInput) SetLoadBalancerArn(v string) *DeleteLoadBalanc return s } -// Contains the output of DeleteLoadBalancer. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DeleteLoadBalancerOutput type DeleteLoadBalancerOutput struct { _ struct{} `type:"structure"` @@ -3290,7 +3361,6 @@ func (s DeleteLoadBalancerOutput) GoString() string { return s.String() } -// Contains the parameters for DeleteRule. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DeleteRuleInput type DeleteRuleInput struct { _ struct{} `type:"structure"` @@ -3330,7 +3400,6 @@ func (s *DeleteRuleInput) SetRuleArn(v string) *DeleteRuleInput { return s } -// Contains the output of DeleteRule. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DeleteRuleOutput type DeleteRuleOutput struct { _ struct{} `type:"structure"` @@ -3346,7 +3415,6 @@ func (s DeleteRuleOutput) GoString() string { return s.String() } -// Contains the parameters for DeleteTargetGroup. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DeleteTargetGroupInput type DeleteTargetGroupInput struct { _ struct{} `type:"structure"` @@ -3386,7 +3454,6 @@ func (s *DeleteTargetGroupInput) SetTargetGroupArn(v string) *DeleteTargetGroupI return s } -// Contains the output of DeleteTargetGroup. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DeleteTargetGroupOutput type DeleteTargetGroupOutput struct { _ struct{} `type:"structure"` @@ -3402,7 +3469,6 @@ func (s DeleteTargetGroupOutput) GoString() string { return s.String() } -// Contains the parameters for DeregisterTargets. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DeregisterTargetsInput type DeregisterTargetsInput struct { _ struct{} `type:"structure"` @@ -3467,7 +3533,6 @@ func (s *DeregisterTargetsInput) SetTargets(v []*TargetDescription) *DeregisterT return s } -// Contains the output of DeregisterTargets. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DeregisterTargetsOutput type DeregisterTargetsOutput struct { _ struct{} `type:"structure"` @@ -3483,7 +3548,6 @@ func (s DeregisterTargetsOutput) GoString() string { return s.String() } -// Contains the parameters for DescribeListeners. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeListenersInput type DescribeListenersInput struct { _ struct{} `type:"structure"` @@ -3549,7 +3613,6 @@ func (s *DescribeListenersInput) SetPageSize(v int64) *DescribeListenersInput { return s } -// Contains the output of DescribeListeners. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeListenersOutput type DescribeListenersOutput struct { _ struct{} `type:"structure"` @@ -3584,7 +3647,6 @@ func (s *DescribeListenersOutput) SetNextMarker(v string) *DescribeListenersOutp return s } -// Contains the parameters for DescribeLoadBalancerAttributes. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeLoadBalancerAttributesInput type DescribeLoadBalancerAttributesInput struct { _ struct{} `type:"structure"` @@ -3624,7 +3686,6 @@ func (s *DescribeLoadBalancerAttributesInput) SetLoadBalancerArn(v string) *Desc return s } -// Contains the output of DescribeLoadBalancerAttributes. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeLoadBalancerAttributesOutput type DescribeLoadBalancerAttributesOutput struct { _ struct{} `type:"structure"` @@ -3649,7 +3710,6 @@ func (s *DescribeLoadBalancerAttributesOutput) SetAttributes(v []*LoadBalancerAt return s } -// Contains the parameters for DescribeLoadBalancers. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeLoadBalancersInput type DescribeLoadBalancersInput struct { _ struct{} `type:"structure"` @@ -3715,7 +3775,6 @@ func (s *DescribeLoadBalancersInput) SetPageSize(v int64) *DescribeLoadBalancers return s } -// Contains the output of DescribeLoadBalancers. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeLoadBalancersOutput type DescribeLoadBalancersOutput struct { _ struct{} `type:"structure"` @@ -3750,7 +3809,6 @@ func (s *DescribeLoadBalancersOutput) SetNextMarker(v string) *DescribeLoadBalan return s } -// Contains the parameters for DescribeRules. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeRulesInput type DescribeRulesInput struct { _ struct{} `type:"structure"` @@ -3784,7 +3842,6 @@ func (s *DescribeRulesInput) SetRuleArns(v []*string) *DescribeRulesInput { return s } -// Contains the output of DescribeRules. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeRulesOutput type DescribeRulesOutput struct { _ struct{} `type:"structure"` @@ -3809,7 +3866,6 @@ func (s *DescribeRulesOutput) SetRules(v []*Rule) *DescribeRulesOutput { return s } -// Contains the parameters for DescribeSSLPolicies. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeSSLPoliciesInput type DescribeSSLPoliciesInput struct { _ struct{} `type:"structure"` @@ -3866,7 +3922,6 @@ func (s *DescribeSSLPoliciesInput) SetPageSize(v int64) *DescribeSSLPoliciesInpu return s } -// Contains the output of DescribeSSLPolicies. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeSSLPoliciesOutput type DescribeSSLPoliciesOutput struct { _ struct{} `type:"structure"` @@ -3901,7 +3956,6 @@ func (s *DescribeSSLPoliciesOutput) SetSslPolicies(v []*SslPolicy) *DescribeSSLP return s } -// Contains the parameters for DescribeTags. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeTagsInput type DescribeTagsInput struct { _ struct{} `type:"structure"` @@ -3941,7 +3995,6 @@ func (s *DescribeTagsInput) SetResourceArns(v []*string) *DescribeTagsInput { return s } -// Contains the output of DescribeTags. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeTagsOutput type DescribeTagsOutput struct { _ struct{} `type:"structure"` @@ -3966,7 +4019,6 @@ func (s *DescribeTagsOutput) SetTagDescriptions(v []*TagDescription) *DescribeTa return s } -// Contains the parameters for DescribeTargetGroupAttributes. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeTargetGroupAttributesInput type DescribeTargetGroupAttributesInput struct { _ struct{} `type:"structure"` @@ -4006,7 +4058,6 @@ func (s *DescribeTargetGroupAttributesInput) SetTargetGroupArn(v string) *Descri return s } -// Contains the output of DescribeTargetGroupAttributes. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeTargetGroupAttributesOutput type DescribeTargetGroupAttributesOutput struct { _ struct{} `type:"structure"` @@ -4031,7 +4082,6 @@ func (s *DescribeTargetGroupAttributesOutput) SetAttributes(v []*TargetGroupAttr return s } -// Contains the parameters for DescribeTargetGroups. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeTargetGroupsInput type DescribeTargetGroupsInput struct { _ struct{} `type:"structure"` @@ -4106,7 +4156,6 @@ func (s *DescribeTargetGroupsInput) SetTargetGroupArns(v []*string) *DescribeTar return s } -// Contains the output of DescribeTargetGroups. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeTargetGroupsOutput type DescribeTargetGroupsOutput struct { _ struct{} `type:"structure"` @@ -4141,7 +4190,6 @@ func (s *DescribeTargetGroupsOutput) SetTargetGroups(v []*TargetGroup) *Describe return s } -// Contains the parameters for DescribeTargetHealth. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeTargetHealthInput type DescribeTargetHealthInput struct { _ struct{} `type:"structure"` @@ -4200,7 +4248,6 @@ func (s *DescribeTargetHealthInput) SetTargets(v []*TargetDescription) *Describe return s } -// Contains the output of DescribeTargetHealth. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/DescribeTargetHealthOutput type DescribeTargetHealthOutput struct { _ struct{} `type:"structure"` @@ -4323,6 +4370,11 @@ type LoadBalancer struct { // The public DNS name of the load balancer. DNSName *string `type:"string"` + // The type of IP addresses used by the subnets for your load balancer. The + // possible values are ipv4 (for IPv4 addresses) and dualstack (for IPv4 and + // IPv6 addresses). + IpAddressType *string `type:"string" enum:"IpAddressType"` + // The Amazon Resource Name (ARN) of the load balancer. LoadBalancerArn *string `type:"string"` @@ -4387,6 +4439,12 @@ func (s *LoadBalancer) SetDNSName(v string) *LoadBalancer { return s } +// SetIpAddressType sets the IpAddressType field's value. +func (s *LoadBalancer) SetIpAddressType(v string) *LoadBalancer { + s.IpAddressType = &v + return s +} + // SetLoadBalancerArn sets the LoadBalancerArn field's value. func (s *LoadBalancer) SetLoadBalancerArn(v string) *LoadBalancer { s.LoadBalancerArn = &v @@ -4558,7 +4616,6 @@ func (s *Matcher) SetHttpCode(v string) *Matcher { return s } -// Contains the parameters for ModifyListener. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/ModifyListenerInput type ModifyListenerInput struct { _ struct{} `type:"structure"` @@ -4656,7 +4713,6 @@ func (s *ModifyListenerInput) SetSslPolicy(v string) *ModifyListenerInput { return s } -// Contains the output of ModifyListener. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/ModifyListenerOutput type ModifyListenerOutput struct { _ struct{} `type:"structure"` @@ -4681,7 +4737,6 @@ func (s *ModifyListenerOutput) SetListeners(v []*Listener) *ModifyListenerOutput return s } -// Contains the parameters for ModifyLoadBalancerAttributes. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/ModifyLoadBalancerAttributesInput type ModifyLoadBalancerAttributesInput struct { _ struct{} `type:"structure"` @@ -4735,7 +4790,6 @@ func (s *ModifyLoadBalancerAttributesInput) SetLoadBalancerArn(v string) *Modify return s } -// Contains the output of ModifyLoadBalancerAttributes. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/ModifyLoadBalancerAttributesOutput type ModifyLoadBalancerAttributesOutput struct { _ struct{} `type:"structure"` @@ -4760,7 +4814,6 @@ func (s *ModifyLoadBalancerAttributesOutput) SetAttributes(v []*LoadBalancerAttr return s } -// Contains the parameters for ModifyRules. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/ModifyRuleInput type ModifyRuleInput struct { _ struct{} `type:"structure"` @@ -4828,7 +4881,6 @@ func (s *ModifyRuleInput) SetRuleArn(v string) *ModifyRuleInput { return s } -// Contains the output of ModifyRules. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/ModifyRuleOutput type ModifyRuleOutput struct { _ struct{} `type:"structure"` @@ -4853,7 +4905,6 @@ func (s *ModifyRuleOutput) SetRules(v []*Rule) *ModifyRuleOutput { return s } -// Contains the parameters for ModifyTargetGroupAttributes. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/ModifyTargetGroupAttributesInput type ModifyTargetGroupAttributesInput struct { _ struct{} `type:"structure"` @@ -4907,7 +4958,6 @@ func (s *ModifyTargetGroupAttributesInput) SetTargetGroupArn(v string) *ModifyTa return s } -// Contains the output of ModifyTargetGroupAttributes. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/ModifyTargetGroupAttributesOutput type ModifyTargetGroupAttributesOutput struct { _ struct{} `type:"structure"` @@ -4932,7 +4982,6 @@ func (s *ModifyTargetGroupAttributesOutput) SetAttributes(v []*TargetGroupAttrib return s } -// Contains the parameters for ModifyTargetGroup. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/ModifyTargetGroupInput type ModifyTargetGroupInput struct { _ struct{} `type:"structure"` @@ -5068,7 +5117,6 @@ func (s *ModifyTargetGroupInput) SetUnhealthyThresholdCount(v int64) *ModifyTarg return s } -// Contains the output of ModifyTargetGroup. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/ModifyTargetGroupOutput type ModifyTargetGroupOutput struct { _ struct{} `type:"structure"` @@ -5093,7 +5141,6 @@ func (s *ModifyTargetGroupOutput) SetTargetGroups(v []*TargetGroup) *ModifyTarge return s } -// Contains the parameters for RegisterTargets. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/RegisterTargetsInput type RegisterTargetsInput struct { _ struct{} `type:"structure"` @@ -5159,7 +5206,6 @@ func (s *RegisterTargetsInput) SetTargets(v []*TargetDescription) *RegisterTarge return s } -// Contains the output of RegisterTargets. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/RegisterTargetsOutput type RegisterTargetsOutput struct { _ struct{} `type:"structure"` @@ -5175,7 +5221,6 @@ func (s RegisterTargetsOutput) GoString() string { return s.String() } -// Contains the parameters for RemoveTags. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/RemoveTagsInput type RemoveTagsInput struct { _ struct{} `type:"structure"` @@ -5229,7 +5274,6 @@ func (s *RemoveTagsInput) SetTagKeys(v []*string) *RemoveTagsInput { return s } -// Contains the output of RemoveTags. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/RemoveTagsOutput type RemoveTagsOutput struct { _ struct{} `type:"structure"` @@ -5316,8 +5360,9 @@ type RuleCondition struct { // The path pattern. You can specify a single path pattern. // - // A path pattern is case sensitive, can be up to 255 characters in length, - // and can contain any of the following characters: + // A path pattern is case sensitive, can be up to 128 characters in length, + // and can contain any of the following characters. Note that you can include + // up to three wildcard characters in a path pattern. // // * A-Z, a-z, 0-9 // @@ -5400,7 +5445,85 @@ func (s *RulePriorityPair) SetRuleArn(v string) *RulePriorityPair { return s } -// Contains the parameters for SetRulePriorities. +// Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/SetIpAddressTypeInput +type SetIpAddressTypeInput struct { + _ struct{} `type:"structure"` + + // The IP address type. The possible values are ipv4 (for IPv4 addresses) and + // dualstack (for IPv4 and IPv6 addresses). Internal load balancers must use + // ipv4. + // + // IpAddressType is a required field + IpAddressType *string `type:"string" required:"true" enum:"IpAddressType"` + + // The Amazon Resource Name (ARN) of the load balancer. + // + // LoadBalancerArn is a required field + LoadBalancerArn *string `type:"string" required:"true"` +} + +// String returns the string representation +func (s SetIpAddressTypeInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s SetIpAddressTypeInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *SetIpAddressTypeInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "SetIpAddressTypeInput"} + if s.IpAddressType == nil { + invalidParams.Add(request.NewErrParamRequired("IpAddressType")) + } + if s.LoadBalancerArn == nil { + invalidParams.Add(request.NewErrParamRequired("LoadBalancerArn")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetIpAddressType sets the IpAddressType field's value. +func (s *SetIpAddressTypeInput) SetIpAddressType(v string) *SetIpAddressTypeInput { + s.IpAddressType = &v + return s +} + +// SetLoadBalancerArn sets the LoadBalancerArn field's value. +func (s *SetIpAddressTypeInput) SetLoadBalancerArn(v string) *SetIpAddressTypeInput { + s.LoadBalancerArn = &v + return s +} + +// Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/SetIpAddressTypeOutput +type SetIpAddressTypeOutput struct { + _ struct{} `type:"structure"` + + // The IP address type. + IpAddressType *string `type:"string" enum:"IpAddressType"` +} + +// String returns the string representation +func (s SetIpAddressTypeOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s SetIpAddressTypeOutput) GoString() string { + return s.String() +} + +// SetIpAddressType sets the IpAddressType field's value. +func (s *SetIpAddressTypeOutput) SetIpAddressType(v string) *SetIpAddressTypeOutput { + s.IpAddressType = &v + return s +} + // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/SetRulePrioritiesInput type SetRulePrioritiesInput struct { _ struct{} `type:"structure"` @@ -5450,7 +5573,6 @@ func (s *SetRulePrioritiesInput) SetRulePriorities(v []*RulePriorityPair) *SetRu return s } -// Contains the output of SetRulePriorities. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/SetRulePrioritiesOutput type SetRulePrioritiesOutput struct { _ struct{} `type:"structure"` @@ -5475,7 +5597,6 @@ func (s *SetRulePrioritiesOutput) SetRules(v []*Rule) *SetRulePrioritiesOutput { return s } -// Contains the parameters for SetSecurityGroups. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/SetSecurityGroupsInput type SetSecurityGroupsInput struct { _ struct{} `type:"structure"` @@ -5529,7 +5650,6 @@ func (s *SetSecurityGroupsInput) SetSecurityGroups(v []*string) *SetSecurityGrou return s } -// Contains the output of SetSecurityGroups. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/SetSecurityGroupsOutput type SetSecurityGroupsOutput struct { _ struct{} `type:"structure"` @@ -5554,7 +5674,6 @@ func (s *SetSecurityGroupsOutput) SetSecurityGroupIds(v []*string) *SetSecurityG return s } -// Contains the parameters for SetSubnets. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/SetSubnetsInput type SetSubnetsInput struct { _ struct{} `type:"structure"` @@ -5609,7 +5728,6 @@ func (s *SetSubnetsInput) SetSubnets(v []*string) *SetSubnetsInput { return s } -// Contains the output of SetSubnets. // Please also see https://docs.aws.amazon.com/goto/WebAPI/elasticloadbalancingv2-2015-12-01/SetSubnetsOutput type SetSubnetsOutput struct { _ struct{} `type:"structure"` @@ -6145,6 +6263,14 @@ const ( ActionTypeEnumForward = "forward" ) +const ( + // IpAddressTypeIpv4 is a IpAddressType enum value + IpAddressTypeIpv4 = "ipv4" + + // IpAddressTypeDualstack is a IpAddressType enum value + IpAddressTypeDualstack = "dualstack" +) + const ( // LoadBalancerSchemeEnumInternetFacing is a LoadBalancerSchemeEnum enum value LoadBalancerSchemeEnumInternetFacing = "internet-facing" diff --git a/vendor/github.com/aws/aws-sdk-go/service/rds/api.go b/vendor/github.com/aws/aws-sdk-go/service/rds/api.go index 81104bf8e..b04b72af5 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/rds/api.go +++ b/vendor/github.com/aws/aws-sdk-go/service/rds/api.go @@ -931,6 +931,13 @@ func (c *RDS) CreateDBClusterRequest(input *CreateDBClusterInput) (req *request. // * DBClusterNotFoundFault // DBClusterIdentifier does not refer to an existing DB cluster. // +// * DBInstanceNotFound +// DBInstanceIdentifier does not refer to an existing DB instance. +// +// * DBSubnetGroupDoesNotCoverEnoughAZs +// Subnets in the DB subnet group should cover at least two Availability Zones +// unless there is only one Availability Zone. +// // Please also see https://docs.aws.amazon.com/goto/WebAPI/rds-2014-10-31/CreateDBCluster func (c *RDS) CreateDBCluster(input *CreateDBClusterInput) (*CreateDBClusterOutput, error) { req, out := c.CreateDBClusterRequest(input) @@ -1293,6 +1300,61 @@ func (c *RDS) CreateDBInstanceReadReplicaRequest(input *CreateDBInstanceReadRepl // // The source DB instance must have backup retention enabled. // +// You can create an encrypted Read Replica in a different AWS Region than the +// source DB instance. In that case, the region where you call the CreateDBInstanceReadReplica +// action is the destination region of the encrypted Read Replica. The source +// DB instance must be encrypted. +// +// To create an encrypted Read Replica in another AWS Region, you must provide +// the following values: +// +// * KmsKeyId - The AWS Key Management System (KMS) key identifier for the +// key to use to encrypt the Read Replica in the destination region. +// +// * PreSignedUrl - A URL that contains a Signature Version 4 signed request +// for the CreateDBInstanceReadReplica API action in the AWS region that +// contains the source DB instance. The PreSignedUrl parameter must be used +// when encrypting a Read Replica from another AWS region. +// +// The presigned URL must be a valid request for the CreateDBInstanceReadReplica +// API action that can be executed in the source region that contains the +// encrypted DB instance. The presigned URL request must contain the following +// parameter values: +// +// DestinationRegion - The AWS Region that the Read Replica is created in. This +// region is the same one where the CreateDBInstanceReadReplica action is +// called that contains this presigned URL. +// +// For example, if you create an encrypted Read Replica in the us-east-1 region, +// and the source DB instance is in the west-2 region, then you call the +// CreateDBInstanceReadReplica action in the us-east-1 region and provide +// a presigned URL that contains a call to the CreateDBInstanceReadReplica +// action in the us-west-2 region. For this example, the DestinationRegion +// in the presigned URL must be set to the us-east-1 region. +// +// KmsKeyId - The KMS key identifier for the key to use to encrypt the Read +// Replica in the destination region. This is the same identifier for both +// the CreateDBInstanceReadReplica action that is called in the destination +// region, and the action contained in the presigned URL. +// +// SourceDBInstanceIdentifier - The DB instance identifier for the encrypted +// Read Replica to be created. This identifier must be in the Amazon Resource +// Name (ARN) format for the source region. For example, if you create an +// encrypted Read Replica from a DB instance in the us-west-2 region, then +// your SourceDBInstanceIdentifier would look like this example: arn:aws:rds:us-west-2:123456789012:instance:mysql-instance1-instance-20161115. +// +// To learn how to generate a Signature Version 4 signed request, see Authenticating +// Requests: Using Query Parameters (AWS Signature Version 4) (http://docs.aws.amazon.com/AmazonS3/latest/API/sigv4-query-string-auth.html) +// and Signature Version 4 Signing Process (http://docs.aws.amazon.com/general/latest/gr/signature-version-4.html). +// +// * DBInstanceIdentifier - The identifier for the encrypted Read Replica +// in the destination region. +// +// * SourceDBInstanceIdentifier - The DB instance identifier for the encrypted +// Read Replica. This identifier must be in the ARN format for the source +// region and is the same value as the SourceDBInstanceIdentifier in the +// presigned URL. +// // Returns awserr.Error for service API and SDK errors. Use runtime type assertions // with awserr.Error's Code and Message methods to get detailed information about // the error. @@ -5695,6 +5757,76 @@ func (c *RDS) ModifyDBParameterGroup(input *ModifyDBParameterGroupInput) (*DBPar return out, err } +const opModifyDBSnapshot = "ModifyDBSnapshot" + +// ModifyDBSnapshotRequest generates a "aws/request.Request" representing the +// client's request for the ModifyDBSnapshot operation. The "output" return +// value can be used to capture response data after the request's "Send" method +// is called. +// +// See ModifyDBSnapshot for usage and error information. +// +// Creating a request object using this method should be used when you want to inject +// custom logic into the request's lifecycle using a custom handler, or if you want to +// access properties on the request object before or after sending the request. If +// you just want the service response, call the ModifyDBSnapshot method directly +// instead. +// +// Note: You must call the "Send" method on the returned request object in order +// to execute the request. +// +// // Example sending a request using the ModifyDBSnapshotRequest method. +// req, resp := client.ModifyDBSnapshotRequest(params) +// +// err := req.Send() +// if err == nil { // resp is now filled +// fmt.Println(resp) +// } +// +// Please also see https://docs.aws.amazon.com/goto/WebAPI/rds-2014-10-31/ModifyDBSnapshot +func (c *RDS) ModifyDBSnapshotRequest(input *ModifyDBSnapshotInput) (req *request.Request, output *ModifyDBSnapshotOutput) { + op := &request.Operation{ + Name: opModifyDBSnapshot, + HTTPMethod: "POST", + HTTPPath: "/", + } + + if input == nil { + input = &ModifyDBSnapshotInput{} + } + + output = &ModifyDBSnapshotOutput{} + req = c.newRequest(op, input, output) + return +} + +// ModifyDBSnapshot API operation for Amazon Relational Database Service. +// +// Updates a manual DB snapshot, which can be encrypted or not encrypted, with +// a new engine version. You can update the engine version to either a new major +// or minor engine version. +// +// Amazon RDS supports upgrading a MySQL DB snapshot from MySQL 5.1 to MySQL +// 5.5. +// +// Returns awserr.Error for service API and SDK errors. Use runtime type assertions +// with awserr.Error's Code and Message methods to get detailed information about +// the error. +// +// See the AWS API reference guide for Amazon Relational Database Service's +// API operation ModifyDBSnapshot for usage and error information. +// +// Returned Error Codes: +// * DBSnapshotNotFound +// DBSnapshotIdentifier does not refer to an existing DB snapshot. +// +// Please also see https://docs.aws.amazon.com/goto/WebAPI/rds-2014-10-31/ModifyDBSnapshot +func (c *RDS) ModifyDBSnapshot(input *ModifyDBSnapshotInput) (*ModifyDBSnapshotOutput, error) { + req, out := c.ModifyDBSnapshotRequest(input) + err := req.Send() + return out, err +} + const opModifyDBSnapshotAttribute = "ModifyDBSnapshotAttribute" // ModifyDBSnapshotAttributeRequest generates a "aws/request.Request" representing the @@ -8444,12 +8576,8 @@ type CopyDBSnapshotInput struct { // you don't specify a value for KmsKeyId, then the copy of the DB snapshot // is encrypted with the same KMS key as the source DB snapshot. // - // If you copy an encrypted DB snapshot from your AWS account, you can specify - // a value for KmsKeyId to encrypt the copy with a new KMS encryption key. If - // you don't specify a value for KmsKeyId, then the copy of the DB snapshot - // is encrypted with the same KMS key as the source DB snapshot. If you copy - // an encrypted snapshot to a different AWS region, then you must specify a - // KMS key for the destination AWS region. + // If you copy an encrypted snapshot to a different AWS region, then you must + // specify a KMS key for the destination AWS region. // // If you copy an encrypted DB snapshot that is shared from another AWS account, // then you must specify a value for KmsKeyId. @@ -8493,8 +8621,8 @@ type CopyDBSnapshotInput struct { // would look like Example: arn:aws:rds:us-west-2:123456789012:snapshot:mysql-instance1-snapshot-20161115. // // To learn how to generate a Signature Version 4 signed request, see Authenticating - // Requests: Using Query Parameters (AWS Signature Version 4) (http://docs.aws.amazon.com/http:/docs.aws.amazon.com/AmazonS3/latest/API/sigv4-query-string-auth.html) - // and Signature Version 4 Signing Process (http://docs.aws.amazon.com/http:/docs.aws.amazon.com/general/latest/gr/signature-version-4.html). + // Requests: Using Query Parameters (AWS Signature Version 4) (http://docs.aws.amazon.com/AmazonS3/latest/API/sigv4-query-string-auth.html) + // and Signature Version 4 Signing Process (http://docs.aws.amazon.com/general/latest/gr/signature-version-4.html). PreSignedUrl *string `type:"string"` // The identifier for the source DB snapshot. @@ -9437,7 +9565,8 @@ type CreateDBInstanceInput struct { // Type: String DBClusterIdentifier *string `type:"string"` - // The compute and memory capacity of the DB instance. + // The compute and memory capacity of the DB instance. Note that not all instance + // classes are available in all regions for all DB engines. // // Valid Values: db.t1.micro | db.m1.small | db.m1.medium | db.m1.large | db.m1.xlarge // | db.m2.xlarge |db.m2.2xlarge | db.m2.4xlarge | db.m3.medium | db.m3.large @@ -9658,17 +9787,108 @@ type CreateDBInstanceInput struct { // // * Version 5.5 (available in all AWS regions): 5.5.46 // - // * Version 5.5 (available in these AWS regions: ap-northeast-1, ap-northeast-2, - // ap-southeast-1, ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, us-east-1, - // us-gov-west-1, us-west-1, us-west-2): 5.5.42 - // - // * Version 5.5 (available in these AWS regions: ap-northeast-1, ap-southeast-1, - // ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, us-east-1, us-gov-west-1, - // us-west-1, us-west-2): 5.5.40b | 5.5.41 - // - // * Version 5.5 (available in these AWS regions: ap-northeast-1, ap-southeast-1, + // * Version 5.1 (only available in AWS regions ap-northeast-1, ap-southeast-1, // ap-southeast-2, eu-west-1, sa-east-1, us-east-1, us-gov-west-1, us-west-1, - // us-west-2): 5.5.40 | 5.5.40a + // us-west-2): 5.1.73a | 5.1.73b + // + // Oracle Database Enterprise Edition (oracle-ee) + // + // * Version 12.1 (available in all AWS regions except ap-south-1, ap-northeast-2): + // 12.1.0.1.v1 | 12.1.0.1.v2 + // + // * Version 12.1 (only available in AWS regions ap-northeast-1, ap-southeast-1, + // ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, us-east-1, us-west-1, + // us-west-2): 12.1.0.1.v3 | 12.1.0.1.v4 | 12.1.0.1.v5 + // + // * Version 12.1 (available in all AWS regions): 12.1.0.2.v1 + // + // * Version 12.1 (available in all AWS regions except us-gov-west-1): 12.1.0.2.v2 + // | 12.1.0.2.v3 | 12.1.0.2.v4 + // + // * Version 11.2 (only available in AWS regions ap-northeast-1, ap-southeast-1, + // ap-southeast-2, eu-west-1, sa-east-1, us-east-1, us-gov-west-1, us-west-1, + // us-west-2): 11.2.0.2.v3 | 11.2.0.2.v4 | 11.2.0.2.v5 | 11.2.0.2.v6 | 11.2.0.2.v7 + // + // * Version 11.2 (available in all AWS regions except ap-south-1, ap-northeast-2): + // 11.2.0.3.v1 | 11.2.0.3.v2 | 11.2.0.3.v3 + // + // * Version 11.2 (only available in AWS regions ap-northeast-1, ap-southeast-1, + // ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, us-east-1, us-west-1, + // us-west-2): 11.2.0.3.v4 + // + // * Version 11.2 (available in all AWS regions): 11.2.0.4.v1 | 11.2.0.4.v3 + // | 11.2.0.4.v4 + // + // * Version 11.2 (available in all AWS regions except us-gov-west-1): 11.2.0.4.v5 + // | 11.2.0.4.v6 | 11.2.0.4.v7 | 11.2.0.4.v8 + // + // Oracle Database Standard Edition (oracle-se) + // + // * Version 12.1 (available in all AWS regions except ap-south-1, ap-northeast-2): + // 12.1.0.1.v1 | 12.1.0.1.v2 + // + // * Version 12.1 (only available in AWS regions ap-northeast-1, ap-southeast-1, + // ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, us-east-1, us-west-1, + // us-west-2): 12.1.0.1.v3 | 12.1.0.1.v4 | 12.1.0.1.v5 + // + // * Version 11.2 (only available in AWS regions ap-northeast-1, ap-southeast-1, + // ap-southeast-2, eu-west-1, sa-east-1, us-east-1, us-gov-west-1, us-west-1, + // us-west-2): 11.2.0.2.v3 | 11.2.0.2.v4 | 11.2.0.2.v5 | 11.2.0.2.v6 | 11.2.0.2.v7 + // + // * Version 11.2 (available in all AWS regions except ap-south-1, ap-northeast-2): + // 11.2.0.3.v1 | 11.2.0.3.v2 | 11.2.0.3.v3 + // + // * Version 11.2 (only available in AWS regions ap-northeast-1, ap-southeast-1, + // ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, us-east-1, us-west-1, + // us-west-2): 11.2.0.3.v4 + // + // * Version 11.2 (available in all AWS regions): 11.2.0.4.v1 | 11.2.0.4.v3 + // | 11.2.0.4.v4 + // + // * Version 11.2 (available in all AWS regions except us-gov-west-1): 11.2.0.4.v5 + // | 11.2.0.4.v6 | 11.2.0.4.v7 | 11.2.0.4.v8 + // + // Oracle Database Standard Edition One (oracle-se1) + // + // * Version 12.1 (available in all AWS regions except ap-south-1, ap-northeast-2): + // 12.1.0.1.v1 | 12.1.0.1.v2 + // + // * Version 12.1 (only available in AWS regions ap-northeast-1, ap-southeast-1, + // ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, us-east-1, us-west-1, + // us-west-2): 12.1.0.1.v3 | 12.1.0.1.v4 | 12.1.0.1.v5 + // + // * Version 11.2 (only available in AWS regions ap-northeast-1, ap-southeast-1, + // ap-southeast-2, eu-west-1, sa-east-1, us-east-1, us-gov-west-1, us-west-1, + // us-west-2): 11.2.0.2.v3 | 11.2.0.2.v4 | 11.2.0.2.v5 | 11.2.0.2.v6 | 11.2.0.2.v7 + // + // * Version 11.2 (available in all AWS regions except ap-south-1, ap-northeast-2): + // 11.2.0.3.v1 | 11.2.0.3.v2 | 11.2.0.3.v3 + // + // * Version 11.2 (only available in AWS regions ap-northeast-1, ap-southeast-1, + // ap-southeast-2, eu-central-1, eu-west-1, sa-east-1, us-east-1, us-west-1, + // us-west-2): 11.2.0.3.v4 + // + // * Version 11.2 (available in all AWS regions): 11.2.0.4.v1 | 11.2.0.4.v3 + // | 11.2.0.4.v4 + // + // * Version 11.2 (available in all AWS regions except us-gov-west-1): 11.2.0.4.v5 + // | 11.2.0.4.v6 | 11.2.0.4.v7 | 11.2.0.4.v8 + // + // Oracle Database Standard Edition Two (oracle-se2) + // + // * Version 12.1 (available in all AWS regions except us-gov-west-1): 12.1.0.2.v2 + // | 12.1.0.2.v3 | 12.1.0.2.v4 + // + // PostgreSQL + // + // * Version 9.6: 9.6.1 + // + // * Version 9.5:9.5.4 | 9.5.2 + // + // * Version 9.4: 9.4.9 | 9.4.7 | 9.4.5 | 9.4.4 | 9.4.1 + // + // * Version 9.3: 9.3.14 | 9.3.12 | 9.3.10 | 9.3.9 | 9.3.6 | 9.3.5 | 9.3.3 + // | 9.3.2 | 9.3.1 // // Oracle 12c // @@ -10365,7 +10585,8 @@ type CreateDBInstanceReadReplicaInput struct { // otherwise false. The default is false. CopyTagsToSnapshot *bool `type:"boolean"` - // The compute and memory capacity of the Read Replica. + // The compute and memory capacity of the Read Replica. Note that not all instance + // classes are available in all regions for all DB engines. // // Valid Values: db.m1.small | db.m1.medium | db.m1.large | db.m1.xlarge | db.m2.xlarge // |db.m2.2xlarge | db.m2.4xlarge | db.m3.medium | db.m3.large | db.m3.xlarge @@ -10410,10 +10631,32 @@ type CreateDBInstanceReadReplicaInput struct { // Example: mySubnetgroup DBSubnetGroupName *string `type:"string"` + // DestinationRegion is used for presigning the request to a given region. + DestinationRegion *string `type:"string"` + // The amount of Provisioned IOPS (input/output operations per second) to be // initially allocated for the DB instance. Iops *int64 `type:"integer"` + // The AWS KMS key ID for an encrypted Read Replica. The KMS key ID is the Amazon + // Resource Name (ARN), KMS key identifier, or the KMS key alias for the KMS + // encryption key. + // + // If you create an unencrypted Read Replica and specify a value for the KmsKeyId + // parameter, Amazon RDS encrypts the target Read Replica using the specified + // KMS encryption key. + // + // If you create an encrypted Read Replica from your AWS account, you can specify + // a value for KmsKeyId to encrypt the Read Replica with a new KMS encryption + // key. If you don't specify a value for KmsKeyId, then the Read Replica is + // encrypted with the same KMS key as the source DB instance. + // + // If you create an encrypted Read Replica in a different AWS region, then you + // must specify a KMS key for the destination AWS region. KMS encryption keys + // are specific to the region that they are created in, and you cannot use encryption + // keys from one region in another region. + KmsKeyId *string `type:"string"` + // The interval, in seconds, between points when Enhanced Monitoring metrics // are collected for the Read Replica. To disable collecting Enhanced Monitoring // metrics, specify 0. The default is 0. @@ -10444,6 +10687,42 @@ type CreateDBInstanceReadReplicaInput struct { // Valid Values: 1150-65535 Port *int64 `type:"integer"` + // The URL that contains a Signature Version 4 signed request for the CreateDBInstanceReadReplica + // API action in the AWS region that contains the source DB instance. The PreSignedUrl + // parameter must be used when encrypting a Read Replica from another AWS region. + // + // The presigned URL must be a valid request for the CreateDBInstanceReadReplica + // API action that can be executed in the source region that contains the encrypted + // DB instance. The presigned URL request must contain the following parameter + // values: + // + // * DestinationRegion - The AWS Region that the Read Replica is created + // in. This region is the same one where the CreateDBInstanceReadReplica + // action is called that contains this presigned URL. + // + // For example, if you create an encrypted Read Replica in the us-east-1 region, + // and the source DB instance is in the west-2 region, then you call the + // CreateDBInstanceReadReplica action in the us-east-1 region and provide + // a presigned URL that contains a call to the CreateDBInstanceReadReplica + // action in the us-west-2 region. For this example, the DestinationRegion + // in the presigned URL must be set to the us-east-1 region. + // + // * KmsKeyId - The KMS key identifier for the key to use to encrypt the + // Read Replica in the destination region. This is the same identifier for + // both the CreateDBInstanceReadReplica action that is called in the destination + // region, and the action contained in the presigned URL. + // + // * SourceDBInstanceIdentifier - The DB instance identifier for the encrypted + // Read Replica to be created. This identifier must be in the Amazon Resource + // Name (ARN) format for the source region. For example, if you create an + // encrypted Read Replica from a DB instance in the us-west-2 region, then + // your SourceDBInstanceIdentifier would look like this example: arn:aws:rds:us-west-2:123456789012:instance:mysql-instance1-instance-20161115. + // + // To learn how to generate a Signature Version 4 signed request, see Authenticating + // Requests: Using Query Parameters (AWS Signature Version 4) (http://docs.aws.amazon.com/AmazonS3/latest/API/sigv4-query-string-auth.html) + // and Signature Version 4 Signing Process (http://docs.aws.amazon.com/general/latest/gr/signature-version-4.html). + PreSignedUrl *string `type:"string"` + // Specifies the accessibility options for the DB instance. A value of true // specifies an Internet-facing instance with a publicly resolvable DNS name, // which resolves to a public IP address. A value of false specifies an internal @@ -10473,8 +10752,8 @@ type CreateDBInstanceReadReplicaInput struct { // * Can specify a DB instance that is a MySQL Read Replica only if the source // is running MySQL 5.6. // - // * Can specify a DB instance that is a PostgreSQL Read Replica only if - // the source is running PostgreSQL 9.3.5. + // * Can specify a DB instance that is a PostgreSQL DB instance only if the + // source is running PostgreSQL 9.3.5 or later. // // * The specified DB instance must have automatic backups enabled, its backup // retention period must be greater than 0. @@ -10489,6 +10768,11 @@ type CreateDBInstanceReadReplicaInput struct { // SourceDBInstanceIdentifier is a required field SourceDBInstanceIdentifier *string `type:"string" required:"true"` + // SourceRegion is the source region where the resource exists. This is not + // sent over the wire and is only used for presigning. This value should always + // have the same region as the source ARN. + SourceRegion *string `type:"string" ignore:"true"` + // Specifies the storage type to be associated with the Read Replica. // // Valid values: standard | gp2 | io1 @@ -10564,12 +10848,24 @@ func (s *CreateDBInstanceReadReplicaInput) SetDBSubnetGroupName(v string) *Creat return s } +// SetDestinationRegion sets the DestinationRegion field's value. +func (s *CreateDBInstanceReadReplicaInput) SetDestinationRegion(v string) *CreateDBInstanceReadReplicaInput { + s.DestinationRegion = &v + return s +} + // SetIops sets the Iops field's value. func (s *CreateDBInstanceReadReplicaInput) SetIops(v int64) *CreateDBInstanceReadReplicaInput { s.Iops = &v return s } +// SetKmsKeyId sets the KmsKeyId field's value. +func (s *CreateDBInstanceReadReplicaInput) SetKmsKeyId(v string) *CreateDBInstanceReadReplicaInput { + s.KmsKeyId = &v + return s +} + // SetMonitoringInterval sets the MonitoringInterval field's value. func (s *CreateDBInstanceReadReplicaInput) SetMonitoringInterval(v int64) *CreateDBInstanceReadReplicaInput { s.MonitoringInterval = &v @@ -10594,6 +10890,12 @@ func (s *CreateDBInstanceReadReplicaInput) SetPort(v int64) *CreateDBInstanceRea return s } +// SetPreSignedUrl sets the PreSignedUrl field's value. +func (s *CreateDBInstanceReadReplicaInput) SetPreSignedUrl(v string) *CreateDBInstanceReadReplicaInput { + s.PreSignedUrl = &v + return s +} + // SetPubliclyAccessible sets the PubliclyAccessible field's value. func (s *CreateDBInstanceReadReplicaInput) SetPubliclyAccessible(v bool) *CreateDBInstanceReadReplicaInput { s.PubliclyAccessible = &v @@ -10606,6 +10908,12 @@ func (s *CreateDBInstanceReadReplicaInput) SetSourceDBInstanceIdentifier(v strin return s } +// SetSourceRegion sets the SourceRegion field's value. +func (s *CreateDBInstanceReadReplicaInput) SetSourceRegion(v string) *CreateDBInstanceReadReplicaInput { + s.SourceRegion = &v + return s +} + // SetStorageType sets the StorageType field's value. func (s *CreateDBInstanceReadReplicaInput) SetStorageType(v string) *CreateDBInstanceReadReplicaInput { s.StorageType = &v @@ -12528,7 +12836,7 @@ type DBInstance struct { // PubliclyAccessible value has not been set, the DB instance will be private. PubliclyAccessible *bool `type:"boolean"` - // Contains one or more identifiers of Aurora DB clusters that are read replicas + // Contains one or more identifiers of Aurora DB clusters that are Read Replicas // of this DB instance. ReadReplicaDBClusterIdentifiers []*string `locationNameList:"ReadReplicaDBClusterIdentifier" type:"list"` @@ -19520,7 +19828,8 @@ type ModifyDBInstanceInput struct { // The new compute and memory capacity of the DB instance. To determine the // instance classes that are available for a particular DB engine, use the DescribeOrderableDBInstanceOptions - // action. + // action. Note that not all instance classes are available in all regions for + // all DB engines. // // Passing a value for this setting causes an outage during the change and is // applied during the next maintenance window, unless ApplyImmediately is specified @@ -20297,6 +20606,84 @@ func (s *ModifyDBSnapshotAttributeOutput) SetDBSnapshotAttributesResult(v *DBSna return s } +// Please also see https://docs.aws.amazon.com/goto/WebAPI/rds-2014-10-31/ModifyDBSnapshotMessage +type ModifyDBSnapshotInput struct { + _ struct{} `type:"structure"` + + // The identifier of the DB snapshot to modify. + // + // DBSnapshotIdentifier is a required field + DBSnapshotIdentifier *string `type:"string" required:"true"` + + // The engine version to update the DB snapshot to. + EngineVersion *string `type:"string"` +} + +// String returns the string representation +func (s ModifyDBSnapshotInput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ModifyDBSnapshotInput) GoString() string { + return s.String() +} + +// Validate inspects the fields of the type to determine if they are valid. +func (s *ModifyDBSnapshotInput) Validate() error { + invalidParams := request.ErrInvalidParams{Context: "ModifyDBSnapshotInput"} + if s.DBSnapshotIdentifier == nil { + invalidParams.Add(request.NewErrParamRequired("DBSnapshotIdentifier")) + } + + if invalidParams.Len() > 0 { + return invalidParams + } + return nil +} + +// SetDBSnapshotIdentifier sets the DBSnapshotIdentifier field's value. +func (s *ModifyDBSnapshotInput) SetDBSnapshotIdentifier(v string) *ModifyDBSnapshotInput { + s.DBSnapshotIdentifier = &v + return s +} + +// SetEngineVersion sets the EngineVersion field's value. +func (s *ModifyDBSnapshotInput) SetEngineVersion(v string) *ModifyDBSnapshotInput { + s.EngineVersion = &v + return s +} + +// Please also see https://docs.aws.amazon.com/goto/WebAPI/rds-2014-10-31/ModifyDBSnapshotResult +type ModifyDBSnapshotOutput struct { + _ struct{} `type:"structure"` + + // Contains the result of a successful invocation of the following actions: + // + // * CreateDBSnapshot + // + // * DeleteDBSnapshot + // + // This data type is used as a response element in the DescribeDBSnapshots action. + DBSnapshot *DBSnapshot `type:"structure"` +} + +// String returns the string representation +func (s ModifyDBSnapshotOutput) String() string { + return awsutil.Prettify(s) +} + +// GoString returns the string representation +func (s ModifyDBSnapshotOutput) GoString() string { + return s.String() +} + +// SetDBSnapshot sets the DBSnapshot field's value. +func (s *ModifyDBSnapshotOutput) SetDBSnapshot(v *DBSnapshot) *ModifyDBSnapshotOutput { + s.DBSnapshot = v + return s +} + // Please also see https://docs.aws.amazon.com/goto/WebAPI/rds-2014-10-31/ModifyDBSubnetGroupMessage type ModifyDBSubnetGroupInput struct { _ struct{} `type:"structure"` diff --git a/vendor/github.com/aws/aws-sdk-go/service/rds/customizations.go b/vendor/github.com/aws/aws-sdk-go/service/rds/customizations.go index 2aac06865..e25b8dd80 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/rds/customizations.go +++ b/vendor/github.com/aws/aws-sdk-go/service/rds/customizations.go @@ -12,6 +12,7 @@ import ( func init() { ops := []string{ opCopyDBSnapshot, + opCreateDBInstanceReadReplica, } initRequest = func(r *request.Request) { for _, operation := range ops { @@ -24,7 +25,8 @@ func init() { func fillPresignedURL(r *request.Request) { fns := map[string]func(r *request.Request){ - opCopyDBSnapshot: copyDBSnapshotPresign, + opCopyDBSnapshot: copyDBSnapshotPresign, + opCreateDBInstanceReadReplica: createDBInstanceReadReplicaPresign, } if !r.ParamsFilled() { return @@ -46,6 +48,18 @@ func copyDBSnapshotPresign(r *request.Request) { originParams.PreSignedUrl = presignURL(r, originParams.SourceRegion, newParams) } +func createDBInstanceReadReplicaPresign(r *request.Request) { + originParams := r.Params.(*CreateDBInstanceReadReplicaInput) + + if originParams.PreSignedUrl != nil || originParams.DestinationRegion != nil { + return + } + + originParams.DestinationRegion = r.Config.Region + newParams := awsutil.CopyOf(r.Params).(*CreateDBInstanceReadReplicaInput) + originParams.PreSignedUrl = presignURL(r, originParams.SourceRegion, newParams) +} + // presignURL will presign the request by using SoureRegion to sign with. SourceRegion is not // sent to the service, and is only used to not have the SDKs parsing ARNs. func presignURL(r *request.Request, sourceRegion *string, newParams interface{}) *string { diff --git a/vendor/vendor.json b/vendor/vendor.json index 833682c5f..cd9bc2243 100644 --- a/vendor/vendor.json +++ b/vendor/vendor.json @@ -453,612 +453,612 @@ "revisionTime": "2016-01-15T23:47:25Z" }, { - "checksumSHA1": "ReGBI5ApZL525kbKFlfM/ZzfLBI=", + "checksumSHA1": "HAa+3kwYDqSoGvpNuxiyWNV74oE=", "path": "github.com/aws/aws-sdk-go", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { - "checksumSHA1": "EtsDwBdplTNbvbIVWFkd5yWIorE=", + "checksumSHA1": "CBkrMzvLXmGD/guNcRCzPHTO66c=", "path": "github.com/aws/aws-sdk-go/aws", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "Y9W+4GimK4Fuxq+vyIskVYFRnX4=", "path": "github.com/aws/aws-sdk-go/aws/awserr", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "yyYr41HZ1Aq0hWc3J5ijXwYEcac=", "path": "github.com/aws/aws-sdk-go/aws/awsutil", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "7cQU8tU9hBgsG23XZmko1GePqjQ=", "path": "github.com/aws/aws-sdk-go/aws/client", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "ieAJ+Cvp/PKv1LpUEnUXpc3OI6E=", "path": "github.com/aws/aws-sdk-go/aws/client/metadata", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "Fl8vRSCY0MbM04cmiz/0MID+goA=", "path": "github.com/aws/aws-sdk-go/aws/corehandlers", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "zu5C95rmCZff6NYZb62lEaT5ibE=", "path": "github.com/aws/aws-sdk-go/aws/credentials", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "u3GOAJLmdvbuNUeUEcZSEAOeL/0=", "path": "github.com/aws/aws-sdk-go/aws/credentials/ec2rolecreds", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "NUJUTWlc1sV8b7WjfiYc4JZbXl0=", "path": "github.com/aws/aws-sdk-go/aws/credentials/endpointcreds", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "4Ipx+5xN0gso+cENC2MHMWmQlR4=", "path": "github.com/aws/aws-sdk-go/aws/credentials/stscreds", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "lqh3fG7wCochvB4iHAZJuhhEJW0=", "path": "github.com/aws/aws-sdk-go/aws/defaults", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "/EXbk/z2TWjWc1Hvb4QYs3Wmhb8=", "path": "github.com/aws/aws-sdk-go/aws/ec2metadata", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "IOFLZi8jpN+LOQIvMgHqIDGxG50=", "path": "github.com/aws/aws-sdk-go/aws/endpoints", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "M78rTxU55Qagqr3MYj91im2031E=", "path": "github.com/aws/aws-sdk-go/aws/request", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { - "checksumSHA1": "HynfxYegMG8sq9MpFfPu7h1EOvI=", + "checksumSHA1": "/qrYhYWKtQA7Rxthy4YP8EnfIn8=", "path": "github.com/aws/aws-sdk-go/aws/session", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "0FvPLvkBUpTElfUc/FZtPsJfuV0=", "path": "github.com/aws/aws-sdk-go/aws/signer/v4", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "wk7EyvDaHwb5qqoOP/4d3cV0708=", "path": "github.com/aws/aws-sdk-go/private/protocol", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "1QmQ3FqV37w0Zi44qv8pA1GeR0A=", "path": "github.com/aws/aws-sdk-go/private/protocol/ec2query", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "ZVReWkb98VVOWIl64qW9qwGcE7k=", "path": "github.com/aws/aws-sdk-go/private/protocol/json/jsonutil", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "R00RL5jJXRYq1iiK1+PGvMfvXyM=", "path": "github.com/aws/aws-sdk-go/private/protocol/jsonrpc", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "ZqY5RWavBLWTo6j9xqdyBEaNFRk=", "path": "github.com/aws/aws-sdk-go/private/protocol/query", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "hqTEmgtchF9SwVTW0IQId2eLUKM=", "path": "github.com/aws/aws-sdk-go/private/protocol/query/queryutil", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "szZSLm3BlYkL3vqlZhNAlYk8iwM=", "path": "github.com/aws/aws-sdk-go/private/protocol/rest", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "Rpu8KBtHZgvhkwHxUfaky+qW+G4=", "path": "github.com/aws/aws-sdk-go/private/protocol/restjson", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "ODo+ko8D6unAxZuN1jGzMcN4QCc=", "path": "github.com/aws/aws-sdk-go/private/protocol/restxml", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "lZ1z4xAbT8euCzKoAsnEYic60VE=", "path": "github.com/aws/aws-sdk-go/private/protocol/xml/xmlutil", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "F6mth+G7dXN1GI+nktaGo8Lx8aE=", "path": "github.com/aws/aws-sdk-go/private/signer/v2", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "Eo9yODN5U99BK0pMzoqnBm7PCrY=", "path": "github.com/aws/aws-sdk-go/private/waiter", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { - "checksumSHA1": "e1DXjRWrAqxEgfB4oSx991WidKc=", + "checksumSHA1": "BorHbvG1T9bw9QZJH6bBz4LSIq8=", "path": "github.com/aws/aws-sdk-go/service/acm", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "D3+BtcDP6Zomh8jKcY2cSiztKxE=", "path": "github.com/aws/aws-sdk-go/service/apigateway", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "j0OKzcnRVPppKBQV3fXePlf1j1w=", "path": "github.com/aws/aws-sdk-go/service/applicationautoscaling", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "mkODVxyzBA4AkglDS7CxLbVC5DY=", "path": "github.com/aws/aws-sdk-go/service/autoscaling", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "j6v8H9gHd1KXh8pIIkAk6VcGaDE=", "path": "github.com/aws/aws-sdk-go/service/cloudformation", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "h2RWKtzLOfds4HglRdrkHqmz+1E=", "path": "github.com/aws/aws-sdk-go/service/cloudfront", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "bojdej4K/db0xKjPNMPOcig2FmY=", "path": "github.com/aws/aws-sdk-go/service/cloudtrail", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "3fgYYgnRNPGj67Gb6rMVw1KwsuI=", "path": "github.com/aws/aws-sdk-go/service/cloudwatch", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "clswuelF9suTJBu0vmlsZKrtKMw=", "path": "github.com/aws/aws-sdk-go/service/cloudwatchevents", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "TaApEG1ONjBsjEIXvZZ3TCQBJM0=", "path": "github.com/aws/aws-sdk-go/service/cloudwatchlogs", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { - "checksumSHA1": "o+r9bN+jdUjnvI1Wdaw+MH5QisI=", + "checksumSHA1": "lHCqaKjIV/AO1B8nxDUyM0AW/+0=", "path": "github.com/aws/aws-sdk-go/service/codecommit", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { - "checksumSHA1": "lpuQan5Ys7BbBGVhQJGF3821/n4=", + "checksumSHA1": "DqhhrFKRlBxsbHkYx9mp0u6TvOA=", "path": "github.com/aws/aws-sdk-go/service/codedeploy", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "Za8qpzWLuINPVNczth0NuK5YsIk=", "path": "github.com/aws/aws-sdk-go/service/configservice", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "W29S9x3pVL3xha1nsGqGtSQtGwA=", "path": "github.com/aws/aws-sdk-go/service/directoryservice", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "dazzJPyvMaO0oAgP5NhKZ6I9qpE=", "path": "github.com/aws/aws-sdk-go/service/dynamodb", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { - "checksumSHA1": "DWhbR96d4Vl80WSAfbausUEs6Cc=", + "checksumSHA1": "mdO7lO2+VVOAZeVui2PneNMKvBo=", "path": "github.com/aws/aws-sdk-go/service/ec2", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "SkMfV6MeROBeBjeWnKn+3F9UAls=", "path": "github.com/aws/aws-sdk-go/service/ecr", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { - "checksumSHA1": "IHRbWo8N67yT6ZXPppg2/QaP42Y=", + "checksumSHA1": "Eb7wQIvWWPD3quZac/ccBul2olk=", "path": "github.com/aws/aws-sdk-go/service/ecs", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "E1c2Vp1SBbeZrZx4/odZTm6lnQI=", "path": "github.com/aws/aws-sdk-go/service/efs", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "7Y1TqdDqbwxuci8gPlyvBAVFqVU=", "path": "github.com/aws/aws-sdk-go/service/elasticache", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "t5fdR4aOBKSWUrGeW4Mm5DV8pGk=", "path": "github.com/aws/aws-sdk-go/service/elasticbeanstalk", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "H1Qmk3Uy1pf7hcaMeAlE5vCsNmY=", "path": "github.com/aws/aws-sdk-go/service/elasticsearchservice", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "IB+/L9cxo6mugWoZRqyrP7jOqDg=", "path": "github.com/aws/aws-sdk-go/service/elastictranscoder", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "eCwASSwUvcs1SNHQFXEl/Ptl/yo=", "path": "github.com/aws/aws-sdk-go/service/elb", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { - "checksumSHA1": "R60lg7K18+iMnR0tnUIWG9J4DGA=", + "checksumSHA1": "M2UlSZHy3SU2KNFzq+yoQDjynwM=", "path": "github.com/aws/aws-sdk-go/service/elbv2", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "SLwn3a5SANMXXIr8Nmwt2+3S4mc=", "path": "github.com/aws/aws-sdk-go/service/emr", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "LWts23CSWzzO7W8PxlNK0itTTw0=", "path": "github.com/aws/aws-sdk-go/service/firehose", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "cloD8pQqFHiB1A/3K8RYcjYDGdk=", "path": "github.com/aws/aws-sdk-go/service/glacier", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "yaGpMDf20gnzeb87kNOraNMkOAM=", "path": "github.com/aws/aws-sdk-go/service/iam", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "lL1vgSAaM89zLB0QBCwm2FnTzTw=", "path": "github.com/aws/aws-sdk-go/service/inspector", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "EibH1IYjCi/+94UiZppNSdpFlwM=", "path": "github.com/aws/aws-sdk-go/service/kinesis", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "F/V2X5eR5fvPU2fUaCG2K4InD3g=", "path": "github.com/aws/aws-sdk-go/service/kms", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "lXBpdfMGsc8tBfos7RMuALVwXEs=", "path": "github.com/aws/aws-sdk-go/service/lambda", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "hgWqBA4RBW0w1iKkHWQTWTU0kg4=", "path": "github.com/aws/aws-sdk-go/service/lightsail", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "kS4/JNdcfm4i8jehICm8tHPF9xs=", "path": "github.com/aws/aws-sdk-go/service/opsworks", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { - "checksumSHA1": "H24jyYTFb2FXBc6ca1Yy3kdUKG4=", + "checksumSHA1": "uc/XhCIgkY7tHdHr2nLSxCSIYtU=", "path": "github.com/aws/aws-sdk-go/service/rds", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "SLzK6JxfhgqNOA/7lQnLJoFvTM8=", "path": "github.com/aws/aws-sdk-go/service/redshift", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "p5+3dacTOwp9S+OmV85cvsiYYX4=", "path": "github.com/aws/aws-sdk-go/service/route53", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "yeut1ZgvmDnjhSDTen7oKOtrfos=", "path": "github.com/aws/aws-sdk-go/service/s3", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "2zyV8bqNC4+ZNw4Z6p6A9JxaBnw=", "path": "github.com/aws/aws-sdk-go/service/ses", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "SRJS82uj09bM6vYrYPr56LbXlog=", "path": "github.com/aws/aws-sdk-go/service/sfn", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "KjZVzxlcIzZI1bVCrt/2KOehRHs=", "path": "github.com/aws/aws-sdk-go/service/simpledb", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "yhRoTq4+Va0g191F2252OZJK108=", "path": "github.com/aws/aws-sdk-go/service/sns", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "lUgSCELfdGC5p5ttveXgA40rmG0=", "path": "github.com/aws/aws-sdk-go/service/sqs", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "lN4r2bTxoo/8BgX0nqH14NAD4n8=", "path": "github.com/aws/aws-sdk-go/service/ssm", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "mTYnOiyBDqdeG6pBQi8FRbHO7Qg=", "path": "github.com/aws/aws-sdk-go/service/sts", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "iIg3cHs591Gs5mpQlSftC351VvE=", "path": "github.com/aws/aws-sdk-go/service/waf", - "revision": "f82d132783af109928d89d526ccc8d9fc320639e", - "revisionTime": "2017-01-19T23:36:13Z", - "version": "v1.6.14", - "versionExact": "v1.6.14" + "revision": "3f8f870ec9939e32b3372abf74d24e468bcd285d", + "revisionTime": "2017-01-27T01:21:58Z", + "version": "v1.6.18", + "versionExact": "v1.6.18" }, { "checksumSHA1": "nqw2Qn5xUklssHTubS5HDvEL9L4=",