diff --git a/go.mod b/go.mod index 7c0bfbad5..daca22fa1 100644 --- a/go.mod +++ b/go.mod @@ -14,7 +14,7 @@ require ( github.com/Azure/go-autorest/autorest/to v0.4.0 // indirect github.com/Azure/go-autorest/autorest/validation v0.3.1 // indirect github.com/BurntSushi/toml v1.1.0 - github.com/aws/aws-sdk-go v1.43.42 + github.com/aws/aws-sdk-go v1.44.4 github.com/cenkalti/backoff/v4 v4.1.1 // indirect github.com/coreos/go-semver v0.3.0 github.com/coreos/go-systemd v0.0.0-20190719114852-fd7a80b32e1f diff --git a/go.sum b/go.sum index 91158b5b5..77f472f1e 100644 --- a/go.sum +++ b/go.sum @@ -115,8 +115,8 @@ github.com/aryann/difflib v0.0.0-20170710044230-e206f873d14a/go.mod h1:DAHtR1m6l github.com/asaskevich/govalidator v0.0.0-20210307081110-f21760c49a8d/go.mod h1:WaHUgvxTVq04UNunO+XhnAqY/wQc+bxr74GqbsZ/Jqw= github.com/aws/aws-lambda-go v1.13.3/go.mod h1:4UKl9IzQMoD+QF79YdCuzCwp8VbmG4VAQwij/eHl5CU= github.com/aws/aws-sdk-go v1.27.0/go.mod h1:KmX6BPdI08NWTb3/sm4ZGu5ShLoqVDhKgpiN924inxo= -github.com/aws/aws-sdk-go v1.43.42 h1:y2Ay+hJnaybK6qsiV38tS+FnKJhb3F/3L/TZFxjbusM= -github.com/aws/aws-sdk-go v1.43.42/go.mod h1:y4AeaBuwd2Lk+GepC1E9v0qOiTws0MIWAX4oIKwKHZo= +github.com/aws/aws-sdk-go v1.44.4 h1:ePN0CVJMdiz2vYUcJH96eyxRrtKGSDMgyhP6rah2OgE= +github.com/aws/aws-sdk-go v1.44.4/go.mod h1:y4AeaBuwd2Lk+GepC1E9v0qOiTws0MIWAX4oIKwKHZo= github.com/aws/aws-sdk-go-v2 v0.18.0/go.mod h1:JWVYvqSMppoMJC0x5wdwiImzgXTI9FuZwxzkQq9wy+g= github.com/aymerick/douceur v0.2.0 h1:Mv+mAeH1Q+n9Fr+oyamOlAkUNPWPlA8PPGR0QAaYuPk= github.com/aymerick/douceur v0.2.0/go.mod h1:wlT5vV2O3h55X9m7iVYN0TBM0NH/MmbLnd30/FjWUq4= diff --git a/vendor/github.com/aws/aws-sdk-go/aws/endpoints/defaults.go b/vendor/github.com/aws/aws-sdk-go/aws/endpoints/defaults.go index 27ef3813b..8e41aa0ea 100644 --- a/vendor/github.com/aws/aws-sdk-go/aws/endpoints/defaults.go +++ b/vendor/github.com/aws/aws-sdk-go/aws/endpoints/defaults.go @@ -5673,6 +5673,9 @@ var awsPartition = partition{ endpointKey{ Region: "ap-southeast-2", }: endpoint{}, + endpointKey{ + Region: "ap-southeast-3", + }: endpoint{}, endpointKey{ Region: "ca-central-1", }: endpoint{}, diff --git a/vendor/github.com/aws/aws-sdk-go/aws/request/handlers.go b/vendor/github.com/aws/aws-sdk-go/aws/request/handlers.go index e819ab6c0..9556332b6 100644 --- a/vendor/github.com/aws/aws-sdk-go/aws/request/handlers.go +++ b/vendor/github.com/aws/aws-sdk-go/aws/request/handlers.go @@ -330,6 +330,9 @@ func MakeAddToUserAgentFreeFormHandler(s string) func(*Request) { // WithSetRequestHeaders updates the operation request's HTTP header to contain // the header key value pairs provided. If the header key already exists in the // request's HTTP header set, the existing value(s) will be replaced. +// +// Header keys added will be added as canonical format with title casing +// applied via http.Header.Set method. func WithSetRequestHeaders(h map[string]string) Option { return withRequestHeader(h).SetRequestHeaders } @@ -338,6 +341,6 @@ type withRequestHeader map[string]string func (h withRequestHeader) SetRequestHeaders(r *Request) { for k, v := range h { - r.HTTPRequest.Header[k] = []string{v} + r.HTTPRequest.Header.Set(k, v) } } 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 2f055b57c..b4b2db9a9 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.43.42" +const SDKVersion = "1.44.4" 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 85508634c..8a13edf28 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 @@ -5615,11 +5615,12 @@ func (c *EC2) CreateKeyPairRequest(input *CreateKeyPairInput) (req *request.Requ // CreateKeyPair API operation for Amazon Elastic Compute Cloud. // -// Creates an ED25519 or 2048-bit RSA key pair with the specified name. Amazon -// EC2 stores the public key and displays the private key for you to save to -// a file. The private key is returned as an unencrypted PEM encoded PKCS#1 -// private key. If a key with the specified name already exists, Amazon EC2 -// returns an error. +// Creates an ED25519 or 2048-bit RSA key pair with the specified name and in +// the specified PEM or PPK format. Amazon EC2 stores the public key and displays +// the private key for you to save to a file. The private key is returned as +// an unencrypted PEM encoded PKCS#1 private key or an unencrypted PPK formatted +// private key for use with PuTTY. If a key with the specified name already +// exists, Amazon EC2 returns an error. // // The key pair returned to you is available only in the Amazon Web Services // Region in which you create it. If you prefer, you can create your own key @@ -45629,6 +45630,11 @@ func (c *EC2) RequestSpotFleetRequest(input *RequestSpotFleetInput) (req *reques // For more information, see Spot Fleet requests (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-requests.html) // in the Amazon EC2 User Guide for Linux Instances. // +// We strongly discourage using the RequestSpotFleet API because it is a legacy +// API with no planned investment. For options for requesting Spot Instances, +// see Which is the best Spot request method to use? (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-best-practices.html#which-spot-request-method-to-use) +// in the Amazon EC2 User Guide for Linux Instances. +// // 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. @@ -45706,6 +45712,11 @@ func (c *EC2) RequestSpotInstancesRequest(input *RequestSpotInstancesInput) (req // For more information, see Spot Instance requests (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-requests.html) // in the Amazon EC2 User Guide for Linux Instances. // +// We strongly discourage using the RequestSpotInstances API because it is a +// legacy API with no planned investment. For options for requesting Spot Instances, +// see Which is the best Spot request method to use? (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-best-practices.html#which-spot-request-method-to-use) +// in the Amazon EC2 User Guide for Linux Instances. +// // 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. @@ -63302,6 +63313,11 @@ type CreateKeyPairInput struct { // it is UnauthorizedOperation. DryRun *bool `locationName:"dryRun" type:"boolean"` + // The format of the key pair. + // + // Default: pem + KeyFormat *string `type:"string" enum:"KeyFormat"` + // A unique name for the key pair. // // Constraints: Up to 255 ASCII characters @@ -63356,6 +63372,12 @@ func (s *CreateKeyPairInput) SetDryRun(v bool) *CreateKeyPairInput { return s } +// SetKeyFormat sets the KeyFormat field's value. +func (s *CreateKeyPairInput) SetKeyFormat(v string) *CreateKeyPairInput { + s.KeyFormat = &v + return s +} + // SetKeyName sets the KeyName field's value. func (s *CreateKeyPairInput) SetKeyName(v string) *CreateKeyPairInput { s.KeyName = &v @@ -63378,7 +63400,11 @@ func (s *CreateKeyPairInput) SetTagSpecifications(v []*TagSpecification) *Create type CreateKeyPairOutput struct { _ struct{} `type:"structure"` - // The SHA-1 digest of the DER encoded private key. + // * For RSA key pairs, the key fingerprint is the SHA-1 digest of the DER + // encoded private key. + // + // * For ED25519 key pairs, the key fingerprint is the base64-encoded SHA-256 + // digest, which is the default for OpenSSH, starting with OpenSSH 6.8. KeyFingerprint *string `locationName:"keyFingerprint" type:"string"` // An unencrypted PEM encoded RSA or ED25519 private key. @@ -84191,6 +84217,9 @@ type DescribeInstancesInput struct { // // * block-device-mapping.volume-id - The volume ID of the EBS volume. // + // * capacity-reservation-id - The ID of the Capacity Reservation into which + // the instance was launched. + // // * client-token - The idempotency token you provided when you launched // the instance. // @@ -85212,6 +85241,11 @@ type DescribeKeyPairsInput struct { // the filter value. Filters []*Filter `locationName:"Filter" locationNameList:"Filter" type:"list"` + // If true, the public key material is included in the response. + // + // Default: false + IncludePublicKey *bool `type:"boolean"` + // The key pair names. // // Default: Describes all of your key pairs. @@ -85251,6 +85285,12 @@ func (s *DescribeKeyPairsInput) SetFilters(v []*Filter) *DescribeKeyPairsInput { return s } +// SetIncludePublicKey sets the IncludePublicKey field's value. +func (s *DescribeKeyPairsInput) SetIncludePublicKey(v bool) *DescribeKeyPairsInput { + s.IncludePublicKey = &v + return s +} + // SetKeyNames sets the KeyNames field's value. func (s *DescribeKeyPairsInput) SetKeyNames(v []*string) *DescribeKeyPairsInput { s.KeyNames = v @@ -91428,7 +91468,7 @@ type DescribeSpotInstanceRequestsInput struct { // * state - The state of the Spot Instance request (open | active | closed // | cancelled | failed). Spot request status information can help you track // your Amazon EC2 Spot Instance requests. For more information, see Spot - // request status (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-bid-status.html) + // request status (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-request-status.html) // in the Amazon EC2 User Guide for Linux Instances. // // * status-code - The short code describing the most recent evaluation of @@ -112750,7 +112790,11 @@ func (s *ImportKeyPairInput) SetTagSpecifications(v []*TagSpecification) *Import type ImportKeyPairOutput struct { _ struct{} `type:"structure"` - // The MD5 public key fingerprint as specified in section 4 of RFC 4716. + // * For RSA key pairs, the key fingerprint is the MD5 public key fingerprint + // as specified in section 4 of RFC 4716. + // + // * For ED25519 key pairs, the key fingerprint is the base64-encoded SHA-256 + // digest, which is the default for OpenSSH, starting with OpenSSH 6.8 (http://www.openssh.com/txt/release-6.8). KeyFingerprint *string `locationName:"keyFingerprint" type:"string"` // The key pair name that you provided. @@ -119355,6 +119399,15 @@ func (s *Ipv6Range) SetDescription(v string) *Ipv6Range { type KeyPairInfo struct { _ struct{} `type:"structure"` + // If you used Amazon EC2 to create the key pair, this is the date and time + // when the key was created, in ISO 8601 date-time format (https://www.iso.org/iso-8601-date-and-time-format.html), + // in the UTC time zone. + // + // If you imported an existing key pair to Amazon EC2, this is the date and + // time the key was imported, in ISO 8601 date-time format (https://www.iso.org/iso-8601-date-and-time-format.html), + // in the UTC time zone. + CreateTime *time.Time `locationName:"createTime" type:"timestamp"` + // If you used CreateKeyPair to create the key pair: // // * For RSA key pairs, the key fingerprint is the SHA-1 digest of the DER @@ -119381,6 +119434,9 @@ type KeyPairInfo struct { // The type of key pair. KeyType *string `locationName:"keyType" type:"string" enum:"KeyType"` + // The public key material. + PublicKey *string `locationName:"publicKey" type:"string"` + // Any tags applied to the key pair. Tags []*Tag `locationName:"tagSet" locationNameList:"item" type:"list"` } @@ -119403,6 +119459,12 @@ func (s KeyPairInfo) GoString() string { return s.String() } +// SetCreateTime sets the CreateTime field's value. +func (s *KeyPairInfo) SetCreateTime(v time.Time) *KeyPairInfo { + s.CreateTime = &v + return s +} + // SetKeyFingerprint sets the KeyFingerprint field's value. func (s *KeyPairInfo) SetKeyFingerprint(v string) *KeyPairInfo { s.KeyFingerprint = &v @@ -119427,6 +119489,12 @@ func (s *KeyPairInfo) SetKeyType(v string) *KeyPairInfo { return s } +// SetPublicKey sets the PublicKey field's value. +func (s *KeyPairInfo) SetPublicKey(v string) *KeyPairInfo { + s.PublicKey = &v + return s +} + // SetTags sets the Tags field's value. func (s *KeyPairInfo) SetTags(v []*Tag) *KeyPairInfo { s.Tags = v @@ -119603,7 +119671,7 @@ type LaunchSpecification struct { // The ID of the AMI. ImageId *string `locationName:"imageId" type:"string"` - // The instance type. + // The instance type. Only one instance type can be specified. InstanceType *string `locationName:"instanceType" type:"string" enum:"InstanceType"` // The ID of the kernel. @@ -128488,11 +128556,11 @@ type ModifySubnetAttributeInput struct { // in the specified subnet should be assigned a public IPv4 address. MapPublicIpOnLaunch *AttributeBooleanValue `type:"structure"` - // The type of hostnames to assign to instances in the subnet at launch. For - // IPv4 only subnets, an instance DNS name must be based on the instance IPv4 - // address. For IPv6 only subnets, an instance DNS name must be based on the - // instance ID. For dual-stack subnets, you can specify whether DNS names use - // the instance IPv4 address or the instance ID. + // The type of hostname to assign to instances in the subnet at launch. For + // IPv4-only and dual-stack (IPv4 and IPv6) subnets, an instance DNS name can + // be based on the instance IPv4 address (ip-name) or the instance ID (resource-name). + // For IPv6 only subnets, an instance DNS name must be based on the instance + // ID (resource-name). PrivateDnsHostnameTypeOnLaunch *string `type:"string" enum:"HostnameType"` // The ID of the subnet. @@ -141059,7 +141127,7 @@ type RequestSpotLaunchSpecification struct { // The ID of the AMI. ImageId *string `locationName:"imageId" type:"string"` - // The instance type. + // The instance type. Only one instance type can be specified. InstanceType *string `locationName:"instanceType" type:"string" enum:"InstanceType"` // The ID of the kernel. @@ -145089,7 +145157,11 @@ type RunInstancesInput struct { // If you are using a command line tool, base64-encoding is performed for you, // and you can load the text from a file. Otherwise, you must provide base64-encoded // text. User data is limited to 16 KB. - UserData *string `type:"string"` + // + // UserData is a sensitive parameter and its value will be + // replaced with "sensitive" in string returned by RunInstancesInput's + // String and GoString methods. + UserData *string `type:"string" sensitive:"true"` } // String returns the string representation. @@ -150089,8 +150161,9 @@ type SpotInstanceRequest struct { // The maximum price per hour that you are willing to pay for a Spot Instance. SpotPrice *string `locationName:"spotPrice" type:"string"` - // The state of the Spot Instance request. Spot status information helps track - // your Spot Instance requests. For more information, see Spot status (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-bid-status.html) + // The state of the Spot Instance request. Spot request status information helps + // track your Spot Instance requests. For more information, see Spot request + // status (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-request-status.html) // in the Amazon EC2 User Guide for Linux Instances. State *string `locationName:"state" type:"string" enum:"SpotInstanceState"` @@ -150297,7 +150370,8 @@ func (s *SpotInstanceStateFault) SetMessage(v string) *SpotInstanceStateFault { type SpotInstanceStatus struct { _ struct{} `type:"structure"` - // The status code. For a list of status codes, see Spot status codes (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-bid-status.html#spot-instance-bid-status-understand) + // The status code. For a list of status codes, see Spot request status codes + // (https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-request-status.html#spot-instance-request-status-understand) // in the Amazon EC2 User Guide for Linux Instances. Code *string `locationName:"code" type:"string"` @@ -165511,6 +165585,22 @@ func Ipv6SupportValue_Values() []string { } } +const ( + // KeyFormatPem is a KeyFormat enum value + KeyFormatPem = "pem" + + // KeyFormatPpk is a KeyFormat enum value + KeyFormatPpk = "ppk" +) + +// KeyFormat_Values returns all elements of the KeyFormat enum +func KeyFormat_Values() []string { + return []string{ + KeyFormatPem, + KeyFormatPpk, + } +} + const ( // KeyTypeRsa is a KeyType enum value KeyTypeRsa = "rsa" diff --git a/vendor/github.com/aws/aws-sdk-go/service/ec2/waiters.go b/vendor/github.com/aws/aws-sdk-go/service/ec2/waiters.go index b58f6a0d1..a10de4f3f 100644 --- a/vendor/github.com/aws/aws-sdk-go/service/ec2/waiters.go +++ b/vendor/github.com/aws/aws-sdk-go/service/ec2/waiters.go @@ -906,6 +906,57 @@ func (c *EC2) WaitUntilNatGatewayAvailableWithContext(ctx aws.Context, input *De return w.WaitWithContext(ctx) } +// WaitUntilNatGatewayDeleted uses the Amazon EC2 API operation +// DescribeNatGateways to wait for a condition to be met before returning. +// If the condition is not met within the max attempt window, an error will +// be returned. +func (c *EC2) WaitUntilNatGatewayDeleted(input *DescribeNatGatewaysInput) error { + return c.WaitUntilNatGatewayDeletedWithContext(aws.BackgroundContext(), input) +} + +// WaitUntilNatGatewayDeletedWithContext is an extended version of WaitUntilNatGatewayDeleted. +// With the support for passing in a context and options to configure the +// Waiter and the underlying request options. +// +// The context must be non-nil and will be used for request cancellation. If +// the context is nil a panic will occur. In the future the SDK may create +// sub-contexts for http.Requests. See https://golang.org/pkg/context/ +// for more information on using Contexts. +func (c *EC2) WaitUntilNatGatewayDeletedWithContext(ctx aws.Context, input *DescribeNatGatewaysInput, opts ...request.WaiterOption) error { + w := request.Waiter{ + Name: "WaitUntilNatGatewayDeleted", + MaxAttempts: 40, + Delay: request.ConstantWaiterDelay(15 * time.Second), + Acceptors: []request.WaiterAcceptor{ + { + State: request.SuccessWaiterState, + Matcher: request.PathAllWaiterMatch, Argument: "NatGateways[].State", + Expected: "deleted", + }, + { + State: request.SuccessWaiterState, + Matcher: request.ErrorWaiterMatch, + Expected: "NatGatewayNotFound", + }, + }, + Logger: c.Config.Logger, + NewRequest: func(opts []request.Option) (*request.Request, error) { + var inCpy *DescribeNatGatewaysInput + if input != nil { + tmp := *input + inCpy = &tmp + } + req, _ := c.DescribeNatGatewaysRequest(inCpy) + req.SetContext(ctx) + req.ApplyOptions(opts...) + return req, nil + }, + } + w.ApplyOptions(opts...) + + return w.WaitWithContext(ctx) +} + // WaitUntilNetworkInterfaceAvailable uses the Amazon EC2 API operation // DescribeNetworkInterfaces to wait for a condition to be met before returning. // If the condition is not met within the max attempt window, an error will diff --git a/vendor/modules.txt b/vendor/modules.txt index 8f6e3295d..0ed514305 100644 --- a/vendor/modules.txt +++ b/vendor/modules.txt @@ -67,7 +67,7 @@ github.com/Azure/go-autorest/tracing ## explicit github.com/BurntSushi/toml github.com/BurntSushi/toml/internal -# github.com/aws/aws-sdk-go v1.43.42 +# github.com/aws/aws-sdk-go v1.44.4 ## explicit github.com/aws/aws-sdk-go/aws github.com/aws/aws-sdk-go/aws/arn