Documentation ¶
Index ¶
- Constants
- func AWSErrorCode(err error) string
- func AWSErrorMessage(err error) string
- func EC2TagSpecification(resourceType string, tags map[string]string) []*ec2.TagSpecification
- func ELBv2Tags(tags map[string]string) []*elbv2.Tag
- func FindASGTag(tags []*autoscaling.TagDescription, key string) (string, bool)
- func FindAutoscalingGroups(c AWSCloud, tags map[string]string) ([]*autoscaling.Group, error)
- func FindEC2Tag(tags []*ec2.Tag, key string) (string, bool)
- func FindELBTag(tags []*elb.Tag, key string) (string, bool)
- func FindELBV2Tag(tags []*elbv2.Tag, key string) (string, bool)
- func FindRegion(cluster *kops.Cluster) (string, error)
- func GetResourceName32(cluster string, prefix string) string
- func GetRolesInInstanceProfile(c AWSCloud, profileName string) ([]string, error)
- func GetTargetGroupNameFromARN(targetGroupARN string) (string, error)
- func NewAWSAuthenticator(region string) (fi.Authenticator, error)
- func NewAWSVerifier(opt *AWSVerifierOptions) (fi.Verifier, error)
- func NewEC2Filter(name string, values ...string) *ec2.Filter
- func RegionFromMetadata(ctx context.Context) (string, error)
- func TruncateString(s string, opt TruncateStringOptions) string
- func ValidateRegion(region string) error
- func ValidateZones(zones []string, cloud AWSCloud) error
- type AWSAPITarget
- func (t *AWSAPITarget) AddAWSTags(id string, expected map[string]string) error
- func (t *AWSAPITarget) AddELBTags(loadBalancerName string, expected map[string]string) error
- func (t *AWSAPITarget) AddELBV2Tags(ResourceArn string, expected map[string]string) error
- func (t *AWSAPITarget) CreateTags(id string, tags map[string]string) error
- func (t *AWSAPITarget) DeleteTags(id string, tags map[string]string) error
- func (t *AWSAPITarget) Finish(taskMap map[string]fi.Task) error
- func (t *AWSAPITarget) GetTags(id string) (map[string]string, error)
- func (t *AWSAPITarget) ProcessDeletions() bool
- func (t *AWSAPITarget) RemoveELBTags(loadBalancerName string, expected map[string]string) error
- func (t *AWSAPITarget) RemoveELBV2Tags(ResourceArn string, expected map[string]string) error
- func (t *AWSAPITarget) UpdateTags(id string, tags map[string]string) error
- func (t *AWSAPITarget) WaitForInstanceRunning(instanceID string) error
- type AWSCloud
- type AWSMachineTypeInfo
- type AWSVerifierOptions
- type EphemeralDevice
- type GetCallerIdentityResponse
- type GetCallerIdentityResult
- type LoggingRetryer
- type MockAWSCloud
- func (c *MockAWSCloud) AccountInfo() (string, string, error)
- func (c *MockAWSCloud) AddAWSTags(id string, expected map[string]string) error
- func (c *MockAWSCloud) AddTags(name *string, tags map[string]string)
- func (c *MockAWSCloud) Autoscaling() autoscalingiface.AutoScalingAPI
- func (c *MockAWSCloud) BuildFilters(name *string) []*ec2.Filter
- func (c *MockAWSCloud) BuildTags(name *string) map[string]string
- func (c *MockAWSCloud) CloudFormation() *cloudformation.CloudFormation
- func (c *MockAWSCloud) CreateELBTags(loadBalancerName string, tags map[string]string) error
- func (c *MockAWSCloud) CreateELBV2Tags(ResourceArn string, tags map[string]string) error
- func (c *MockAWSCloud) CreateTags(resourceId string, tags map[string]string) error
- func (c *MockAWSCloud) DefaultInstanceType(cluster *kops.Cluster, ig *kops.InstanceGroup) (string, error)
- func (c *MockAWSCloud) DeleteGroup(g *cloudinstances.CloudInstanceGroup) error
- func (c *MockAWSCloud) DeleteInstance(i *cloudinstances.CloudInstance) error
- func (c *MockAWSCloud) DeleteTags(id string, tags map[string]string) error
- func (c *MockAWSCloud) DescribeAvailabilityZones() ([]*ec2.AvailabilityZone, error)
- func (c *MockAWSCloud) DescribeInstance(instanceID string) (*ec2.Instance, error)
- func (c *MockAWSCloud) DescribeInstanceType(instanceType string) (*ec2.InstanceTypeInfo, error)
- func (c *MockAWSCloud) DescribeVPC(vpcID string) (*ec2.Vpc, error)
- func (c *MockAWSCloud) DetachInstance(i *cloudinstances.CloudInstance) error
- func (c *MockAWSCloud) EC2() ec2iface.EC2API
- func (c *MockAWSCloud) ELB() elbiface.ELBAPI
- func (c *MockAWSCloud) ELBV2() elbv2iface.ELBV2API
- func (c *MockAWSCloud) EventBridge() eventbridgeiface.EventBridgeAPI
- func (c *MockAWSCloud) FindClusterStatus(cluster *kops.Cluster) (*kops.ClusterStatus, error)
- func (c *MockAWSCloud) FindVPCInfo(id string) (*fi.VPCInfo, error)
- func (c *MockAWSCloud) GetCloudGroups(cluster *kops.Cluster, instancegroups []*kops.InstanceGroup, ...) (map[string]*cloudinstances.CloudInstanceGroup, error)
- func (c *MockAWSCloud) GetELBTags(loadBalancerName string) (map[string]string, error)
- func (c *MockAWSCloud) GetELBV2Tags(ResourceArn string) (map[string]string, error)
- func (c *MockAWSCloud) GetTags(resourceID string) (map[string]string, error)
- func (c *MockAWSCloud) IAM() iamiface.IAMAPI
- func (c *MockAWSCloud) Region() string
- func (c *MockAWSCloud) RemoveELBTags(loadBalancerName string, tags map[string]string) error
- func (c *MockAWSCloud) RemoveELBV2Tags(ResourceArn string, tags map[string]string) error
- func (c *MockAWSCloud) ResolveImage(name string) (*ec2.Image, error)
- func (c *MockAWSCloud) Route53() route53iface.Route53API
- func (c *MockAWSCloud) SQS() sqsiface.SQSAPI
- func (c *MockAWSCloud) Spotinst() spotinst.Cloud
- func (c *MockAWSCloud) Tags() map[string]string
- func (c *MockAWSCloud) UpdateTags(id string, tags map[string]string) error
- func (c *MockAWSCloud) WithTags(tags map[string]string) AWSCloud
- type MockCloud
- type RegionDelayers
- type RequestLogger
- type ResponseMetadata
- type TruncateStringOptions
Constants ¶
const ( WellKnownAccountAmazonLinux2 = "137112412989" WellKnownAccountCentOS = "125523088429" WellKnownAccountCoreOS = "595879546273" WellKnownAccountDebian9 = "379101102735" WellKnownAccountDebian10 = "136693071363" WellKnownAccountFlatcar = "075585003325" WellKnownAccountKopeio = "383156758163" WellKnownAccountRedhat = "309956199498" WellKnownAccountUbuntu = "099720109477" )
const AWSAuthenticationTokenPrefix = "x-aws-sts "
const ClientMaxRetries = 13
By default, aws-sdk-go only retries 3 times, which doesn't give much time for exponential backoff to work for serious issues. At 13 retries, we'll try a given request for up to ~6m with exponential backoff along the way.
const CreateTagsLogInterval = 10 // this is in "retry intervals"
const CreateTagsMaxAttempts = 120
const CreateTagsRetryInterval = 2 * time.Second
const DeleteTagsLogInterval = 10 // this is in "retry intervals"
const DeleteTagsMaxAttempts = 120
const DeleteTagsRetryInterval = 2 * time.Second
const DescribeTagsLogInterval = 10 // this is in "retry intervals"
const DescribeTagsMaxAttempts = 120
const DescribeTagsRetryInterval = 2 * time.Second
const TagClusterName = "KubernetesCluster"
const TagNameClusterOwnershipPrefix = "kubernetes.io/cluster/"
TagNameClusterOwnershipPrefix is the AWS tag used for ownership
const TagNameEtcdClusterPrefix = "k8s.io/etcd/"
const TagNameKopsRole = "kubernetes.io/kops/role"
TagNameKopsRole is the AWS tag used to identify the role an object plays for a cluster
const TagNameRolePrefix = "k8s.io/role/"
const TagRoleMaster = "master"
Variables ¶
This section is empty.
Functions ¶
func AWSErrorCode ¶
AWSErrorCode returns the aws error code, if it is an awserr.Error, otherwise ""
func AWSErrorMessage ¶
AWSErrorMessage returns the aws error message, if it is an awserr.Error, otherwise ""
func EC2TagSpecification ¶ added in v1.19.0
func EC2TagSpecification(resourceType string, tags map[string]string) []*ec2.TagSpecification
EC2TagSpecification converts a map of tags to an EC2 TagSpecification
func FindASGTag ¶
func FindASGTag(tags []*autoscaling.TagDescription, key string) (string, bool)
FindASGTag find the value of the tag with the specified key
func FindAutoscalingGroups ¶ added in v1.10.0
FindAutoscalingGroups finds autoscaling groups matching the specified tags This isn't entirely trivial because autoscaling doesn't let us filter with as much precision as we would like
func FindEC2Tag ¶
FindEC2Tag find the value of the tag with the specified key
func FindELBTag ¶
FindELBTag find the value of the tag with the specified key
func FindELBV2Tag ¶ added in v1.11.0
FindELBV2Tag find the value of the tag with the specified key
func FindRegion ¶ added in v1.10.0
FindRegion determines the region from the zones specified in the cluster
func GetResourceName32 ¶ added in v1.18.3
GetResourceName32 will attempt to calculate a meaningful name for a resource given a prefix Will never return a string longer than 32 chars
func GetRolesInInstanceProfile ¶ added in v1.19.1
GetRolesInInstanceProfile return role names which are associated with the instance profile specified by profileName.
func GetTargetGroupNameFromARN ¶ added in v1.18.3
GetTargetGroupNameFromARN will attempt to parse a target group ARN and return its name
func NewAWSAuthenticator ¶ added in v1.19.0
func NewAWSAuthenticator(region string) (fi.Authenticator, error)
func NewAWSVerifier ¶ added in v1.19.0
func NewAWSVerifier(opt *AWSVerifierOptions) (fi.Verifier, error)
func RegionFromMetadata ¶ added in v1.21.0
RegionFromMetadata returns the current region from the aws metdata
func TruncateString ¶ added in v1.18.3
func TruncateString(s string, opt TruncateStringOptions) string
TruncateString will attempt to truncate a string to a max, adding a prefix to avoid collisions. Will never return a string longer than maxLength chars
func ValidateRegion ¶
ValidateRegion checks that an AWS region name is valid
func ValidateZones ¶
ValidateZones checks that every zone in the sliced passed is recognized
Types ¶
type AWSAPITarget ¶
type AWSAPITarget struct {
Cloud AWSCloud
}
func NewAWSAPITarget ¶
func NewAWSAPITarget(cloud AWSCloud) *AWSAPITarget
func (*AWSAPITarget) AddAWSTags ¶
func (t *AWSAPITarget) AddAWSTags(id string, expected map[string]string) error
func (*AWSAPITarget) AddELBTags ¶
func (t *AWSAPITarget) AddELBTags(loadBalancerName string, expected map[string]string) error
func (*AWSAPITarget) AddELBV2Tags ¶ added in v1.19.0
func (t *AWSAPITarget) AddELBV2Tags(ResourceArn string, expected map[string]string) error
func (*AWSAPITarget) CreateTags ¶ added in v1.19.0
func (t *AWSAPITarget) CreateTags(id string, tags map[string]string) error
func (*AWSAPITarget) DeleteTags ¶ added in v1.10.0
func (t *AWSAPITarget) DeleteTags(id string, tags map[string]string) error
func (*AWSAPITarget) GetTags ¶ added in v1.19.0
func (t *AWSAPITarget) GetTags(id string) (map[string]string, error)
func (*AWSAPITarget) ProcessDeletions ¶ added in v1.10.0
func (t *AWSAPITarget) ProcessDeletions() bool
func (*AWSAPITarget) RemoveELBTags ¶ added in v1.15.1
func (t *AWSAPITarget) RemoveELBTags(loadBalancerName string, expected map[string]string) error
func (*AWSAPITarget) RemoveELBV2Tags ¶ added in v1.19.0
func (t *AWSAPITarget) RemoveELBV2Tags(ResourceArn string, expected map[string]string) error
func (*AWSAPITarget) UpdateTags ¶ added in v1.19.0
func (t *AWSAPITarget) UpdateTags(id string, tags map[string]string) error
func (*AWSAPITarget) WaitForInstanceRunning ¶
func (t *AWSAPITarget) WaitForInstanceRunning(instanceID string) error
type AWSCloud ¶
type AWSCloud interface { fi.Cloud CloudFormation() *cloudformation.CloudFormation EC2() ec2iface.EC2API IAM() iamiface.IAMAPI ELB() elbiface.ELBAPI ELBV2() elbv2iface.ELBV2API Autoscaling() autoscalingiface.AutoScalingAPI Route53() route53iface.Route53API Spotinst() spotinst.Cloud SQS() sqsiface.SQSAPI EventBridge() eventbridgeiface.EventBridgeAPI // TODO: Document and rationalize these tags/filters methods AddTags(name *string, tags map[string]string) BuildFilters(name *string) []*ec2.Filter BuildTags(name *string) map[string]string Tags() map[string]string // GetTags will fetch the tags for the specified resource, retrying (up to MaxDescribeTagsAttempts) if it hits an eventual-consistency type error GetTags(resourceId string) (map[string]string, error) // CreateTags will add/modify tags to the specified resource, retrying up to MaxCreateTagsAttempts times if it hits an eventual-consistency type error CreateTags(resourceId string, tags map[string]string) error // DeleteTags will remove tags from the specified resource, retrying up to MaxCreateTagsAttempts times if it hits an eventual-consistency type error DeleteTags(resourceId string, tags map[string]string) error // UpdateTags will update tags of the specified resource to match tags, using getTags(), createTags() and deleteTags() UpdateTags(resourceId string, tags map[string]string) error AddAWSTags(id string, expected map[string]string) error GetELBTags(loadBalancerName string) (map[string]string, error) GetELBV2Tags(ResourceArn string) (map[string]string, error) // CreateELBTags will add tags to the specified loadBalancer, retrying up to MaxCreateTagsAttempts times if it hits an eventual-consistency type error CreateELBTags(loadBalancerName string, tags map[string]string) error CreateELBV2Tags(ResourceArn string, tags map[string]string) error // RemoveELBTags will remove tags from the specified loadBalancer, retrying up to MaxCreateTagsAttempts times if it hits an eventual-consistency type error RemoveELBTags(loadBalancerName string, tags map[string]string) error RemoveELBV2Tags(ResourceArn string, tags map[string]string) error // DescribeInstance is a helper that queries for the specified instance by id DescribeInstance(instanceID string) (*ec2.Instance, error) // DescribeVPC is a helper that queries for the specified vpc by id DescribeVPC(vpcID string) (*ec2.Vpc, error) DescribeAvailabilityZones() ([]*ec2.AvailabilityZone, error) // ResolveImage finds an AMI image based on the given name. // The name can be one of: // `ami-...` in which case it is presumed to be an id // owner/name in which case we find the image with the specified name, owned by owner // name in which case we find the image with the specified name, with the current owner ResolveImage(name string) (*ec2.Image, error) // WithTags created a copy of AWSCloud with the specified default-tags bound WithTags(tags map[string]string) AWSCloud // DefaultInstanceType determines a suitable instance type for the specified instance group DefaultInstanceType(cluster *kops.Cluster, ig *kops.InstanceGroup) (string, error) // DescribeInstanceType calls ec2.DescribeInstanceType to get information for a particular instance type DescribeInstanceType(instanceType string) (*ec2.InstanceTypeInfo, error) // FindClusterStatus gets the status of the cluster as it exists in AWS, inferred from volumes FindClusterStatus(cluster *kops.Cluster) (*kops.ClusterStatus, error) // AccountInfo returns the AWS account ID and AWS partition that we are deploying into AccountInfo() (string, string, error) }
type AWSMachineTypeInfo ¶
type AWSMachineTypeInfo struct { Name string MemoryGB float32 Cores int EphemeralDisks []int GPU bool MaxPods int InstanceENIs int InstanceIPsPerENI int }
func GetMachineTypeInfo ¶
func GetMachineTypeInfo(c AWSCloud, machineType string) (*AWSMachineTypeInfo, error)
func (*AWSMachineTypeInfo) EphemeralDevices ¶
func (m *AWSMachineTypeInfo) EphemeralDevices() []*EphemeralDevice
type AWSVerifierOptions ¶ added in v1.19.0
type EphemeralDevice ¶
type GetCallerIdentityResponse ¶ added in v1.19.0
type GetCallerIdentityResponse struct { XMLName xml.Name `xml:"GetCallerIdentityResponse"` GetCallerIdentityResult []GetCallerIdentityResult `xml:"GetCallerIdentityResult"` ResponseMetadata []ResponseMetadata `xml:"ResponseMetadata"` }
type GetCallerIdentityResult ¶ added in v1.19.0
type LoggingRetryer ¶ added in v1.10.0
type LoggingRetryer struct {
client.DefaultRetryer
}
LoggingRetryer adds some logging when we are retrying, so we have some idea what is happening Right now it is very basic - e.g. it only logs when we retry (so doesn't log when we fail due to too many retries)
func (LoggingRetryer) RetryRules ¶ added in v1.10.0
func (l LoggingRetryer) RetryRules(r *request.Request) time.Duration
type MockAWSCloud ¶
type MockAWSCloud struct { MockCloud // contains filtered or unexported fields }
func BuildMockAWSCloud ¶ added in v1.10.0
func BuildMockAWSCloud(region string, zoneLetters string) *MockAWSCloud
func InstallMockAWSCloud ¶
func InstallMockAWSCloud(region string, zoneLetters string) *MockAWSCloud
func (*MockAWSCloud) AccountInfo ¶ added in v1.19.0
func (c *MockAWSCloud) AccountInfo() (string, string, error)
AccountInfo returns the AWS account ID and AWS partition that we are deploying into
func (*MockAWSCloud) AddAWSTags ¶
func (c *MockAWSCloud) AddAWSTags(id string, expected map[string]string) error
func (*MockAWSCloud) Autoscaling ¶
func (c *MockAWSCloud) Autoscaling() autoscalingiface.AutoScalingAPI
func (*MockAWSCloud) BuildFilters ¶
func (c *MockAWSCloud) BuildFilters(name *string) []*ec2.Filter
func (*MockAWSCloud) CloudFormation ¶ added in v1.10.0
func (c *MockAWSCloud) CloudFormation() *cloudformation.CloudFormation
func (*MockAWSCloud) CreateELBTags ¶
func (c *MockAWSCloud) CreateELBTags(loadBalancerName string, tags map[string]string) error
func (*MockAWSCloud) CreateELBV2Tags ¶ added in v1.11.0
func (c *MockAWSCloud) CreateELBV2Tags(ResourceArn string, tags map[string]string) error
func (*MockAWSCloud) CreateTags ¶
func (c *MockAWSCloud) CreateTags(resourceId string, tags map[string]string) error
func (*MockAWSCloud) DefaultInstanceType ¶ added in v1.10.0
func (c *MockAWSCloud) DefaultInstanceType(cluster *kops.Cluster, ig *kops.InstanceGroup) (string, error)
DefaultInstanceType determines an instance type for the specified cluster & instance group
func (*MockAWSCloud) DeleteGroup ¶ added in v1.10.0
func (c *MockAWSCloud) DeleteGroup(g *cloudinstances.CloudInstanceGroup) error
func (*MockAWSCloud) DeleteInstance ¶ added in v1.10.0
func (c *MockAWSCloud) DeleteInstance(i *cloudinstances.CloudInstance) error
func (*MockAWSCloud) DeleteTags ¶ added in v1.10.0
func (c *MockAWSCloud) DeleteTags(id string, tags map[string]string) error
func (*MockAWSCloud) DescribeAvailabilityZones ¶
func (c *MockAWSCloud) DescribeAvailabilityZones() ([]*ec2.AvailabilityZone, error)
func (*MockAWSCloud) DescribeInstance ¶
func (c *MockAWSCloud) DescribeInstance(instanceID string) (*ec2.Instance, error)
func (*MockAWSCloud) DescribeInstanceType ¶ added in v1.19.0
func (c *MockAWSCloud) DescribeInstanceType(instanceType string) (*ec2.InstanceTypeInfo, error)
DescribeInstanceType calls ec2.DescribeInstanceType to get information for a particular instance type
func (*MockAWSCloud) DescribeVPC ¶
func (c *MockAWSCloud) DescribeVPC(vpcID string) (*ec2.Vpc, error)
func (*MockAWSCloud) DetachInstance ¶ added in v1.18.0
func (c *MockAWSCloud) DetachInstance(i *cloudinstances.CloudInstance) error
func (*MockAWSCloud) EC2 ¶
func (c *MockAWSCloud) EC2() ec2iface.EC2API
func (*MockAWSCloud) ELB ¶
func (c *MockAWSCloud) ELB() elbiface.ELBAPI
func (*MockAWSCloud) ELBV2 ¶ added in v1.11.0
func (c *MockAWSCloud) ELBV2() elbv2iface.ELBV2API
func (*MockAWSCloud) EventBridge ¶ added in v1.21.0
func (c *MockAWSCloud) EventBridge() eventbridgeiface.EventBridgeAPI
func (*MockAWSCloud) FindClusterStatus ¶ added in v1.10.0
func (c *MockAWSCloud) FindClusterStatus(cluster *kops.Cluster) (*kops.ClusterStatus, error)
FindEtcdStatus discovers the status of the cluster, by looking for the tagged etcd volumes
func (*MockAWSCloud) FindVPCInfo ¶ added in v1.10.0
func (c *MockAWSCloud) FindVPCInfo(id string) (*fi.VPCInfo, error)
func (*MockAWSCloud) GetCloudGroups ¶ added in v1.10.0
func (c *MockAWSCloud) GetCloudGroups(cluster *kops.Cluster, instancegroups []*kops.InstanceGroup, warnUnmatched bool, nodes []v1.Node) (map[string]*cloudinstances.CloudInstanceGroup, error)
func (*MockAWSCloud) GetELBTags ¶
func (c *MockAWSCloud) GetELBTags(loadBalancerName string) (map[string]string, error)
func (*MockAWSCloud) GetELBV2Tags ¶ added in v1.11.0
func (c *MockAWSCloud) GetELBV2Tags(ResourceArn string) (map[string]string, error)
func (*MockAWSCloud) GetTags ¶
func (c *MockAWSCloud) GetTags(resourceID string) (map[string]string, error)
func (*MockAWSCloud) IAM ¶
func (c *MockAWSCloud) IAM() iamiface.IAMAPI
func (*MockAWSCloud) Region ¶
func (c *MockAWSCloud) Region() string
func (*MockAWSCloud) RemoveELBTags ¶ added in v1.15.1
func (c *MockAWSCloud) RemoveELBTags(loadBalancerName string, tags map[string]string) error
func (*MockAWSCloud) RemoveELBV2Tags ¶ added in v1.19.0
func (c *MockAWSCloud) RemoveELBV2Tags(ResourceArn string, tags map[string]string) error
func (*MockAWSCloud) ResolveImage ¶
func (c *MockAWSCloud) ResolveImage(name string) (*ec2.Image, error)
func (*MockAWSCloud) Route53 ¶
func (c *MockAWSCloud) Route53() route53iface.Route53API
func (*MockAWSCloud) SQS ¶ added in v1.21.0
func (c *MockAWSCloud) SQS() sqsiface.SQSAPI
func (*MockAWSCloud) Spotinst ¶ added in v1.11.0
func (c *MockAWSCloud) Spotinst() spotinst.Cloud
func (*MockAWSCloud) Tags ¶
func (c *MockAWSCloud) Tags() map[string]string
func (*MockAWSCloud) UpdateTags ¶ added in v1.19.0
func (c *MockAWSCloud) UpdateTags(id string, tags map[string]string) error
type MockCloud ¶
type MockCloud struct { MockAutoscaling autoscalingiface.AutoScalingAPI MockCloudFormation *cloudformation.CloudFormation MockEC2 ec2iface.EC2API MockIAM iamiface.IAMAPI MockRoute53 route53iface.Route53API MockELB elbiface.ELBAPI MockELBV2 elbv2iface.ELBV2API MockSpotinst spotinst.Cloud MockSQS sqsiface.SQSAPI MockEventBridge eventbridgeiface.EventBridgeAPI }
func (*MockCloud) ProviderID ¶
func (c *MockCloud) ProviderID() kops.CloudProviderID
type RegionDelayers ¶ added in v1.10.0
type RegionDelayers struct {
// contains filtered or unexported fields
}
type RequestLogger ¶ added in v1.10.0
type RequestLogger struct {
// contains filtered or unexported fields
}
RequestLogger logs every AWS request
type ResponseMetadata ¶ added in v1.19.0
type ResponseMetadata struct {
RequestId string `xml:"RequestId"`
}
type TruncateStringOptions ¶ added in v1.18.3
type TruncateStringOptions struct { // AlwaysAddHash will always cause the hash to be appended. // Useful to stop users assuming that the name will never be truncated. AlwaysAddHash bool // MaxLength controls the maximum length of the string. MaxLength int // HashLength controls the length of the hash to be appended. HashLength int }
TruncateStringOptions contains parameters for how we truncate strings