types

package
v1.198.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 19, 2024 License: Apache-2.0 Imports: 2 Imported by: 914

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AcceleratorCount added in v1.21.0

type AcceleratorCount struct {

	// The maximum number of accelerators. If this parameter is not specified, there
	// is no maximum limit.
	Max *int32

	// The minimum number of accelerators. If this parameter is not specified, there
	// is no minimum limit.
	Min *int32
	// contains filtered or unexported fields
}

The minimum and maximum number of accelerators (GPUs, FPGAs, or Amazon Web Services Inferentia chips) on an instance.

type AcceleratorCountRequest added in v1.21.0

type AcceleratorCountRequest struct {

	// The maximum number of accelerators. To specify no maximum limit, omit this
	// parameter. To exclude accelerator-enabled instance types, set Max to 0 .
	Max *int32

	// The minimum number of accelerators. To specify no minimum limit, omit this
	// parameter.
	Min *int32
	// contains filtered or unexported fields
}

The minimum and maximum number of accelerators (GPUs, FPGAs, or Amazon Web Services Inferentia chips) on an instance. To exclude accelerator-enabled instance types, set Max to 0 .

type AcceleratorManufacturer added in v1.21.0

type AcceleratorManufacturer string
const (
	AcceleratorManufacturerAmazonWebServices AcceleratorManufacturer = "amazon-web-services"
	AcceleratorManufacturerAmd               AcceleratorManufacturer = "amd"
	AcceleratorManufacturerNvidia            AcceleratorManufacturer = "nvidia"
	AcceleratorManufacturerXilinx            AcceleratorManufacturer = "xilinx"
	AcceleratorManufacturerHabana            AcceleratorManufacturer = "habana"
)

Enum values for AcceleratorManufacturer

func (AcceleratorManufacturer) Values added in v1.21.0

Values returns all known values for AcceleratorManufacturer. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type AcceleratorName added in v1.21.0

type AcceleratorName string
const (
	AcceleratorNameA100          AcceleratorName = "a100"
	AcceleratorNameInferentia    AcceleratorName = "inferentia"
	AcceleratorNameK520          AcceleratorName = "k520"
	AcceleratorNameK80           AcceleratorName = "k80"
	AcceleratorNameM60           AcceleratorName = "m60"
	AcceleratorNameRadeonProV520 AcceleratorName = "radeon-pro-v520"
	AcceleratorNameT4            AcceleratorName = "t4"
	AcceleratorNameVu9p          AcceleratorName = "vu9p"
	AcceleratorNameV100          AcceleratorName = "v100"
	AcceleratorNameA10g          AcceleratorName = "a10g"
	AcceleratorNameH100          AcceleratorName = "h100"
	AcceleratorNameT4g           AcceleratorName = "t4g"
)

Enum values for AcceleratorName

func (AcceleratorName) Values added in v1.21.0

func (AcceleratorName) Values() []AcceleratorName

Values returns all known values for AcceleratorName. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type AcceleratorTotalMemoryMiB added in v1.21.0

type AcceleratorTotalMemoryMiB struct {

	// The maximum amount of accelerator memory, in MiB. If this parameter is not
	// specified, there is no maximum limit.
	Max *int32

	// The minimum amount of accelerator memory, in MiB. If this parameter is not
	// specified, there is no minimum limit.
	Min *int32
	// contains filtered or unexported fields
}

The minimum and maximum amount of total accelerator memory, in MiB.

type AcceleratorTotalMemoryMiBRequest added in v1.21.0

type AcceleratorTotalMemoryMiBRequest struct {

	// The maximum amount of accelerator memory, in MiB. To specify no maximum limit,
	// omit this parameter.
	Max *int32

	// The minimum amount of accelerator memory, in MiB. To specify no minimum limit,
	// omit this parameter.
	Min *int32
	// contains filtered or unexported fields
}

The minimum and maximum amount of total accelerator memory, in MiB.

type AcceleratorType added in v1.21.0

type AcceleratorType string
const (
	AcceleratorTypeGpu       AcceleratorType = "gpu"
	AcceleratorTypeFpga      AcceleratorType = "fpga"
	AcceleratorTypeInference AcceleratorType = "inference"
)

Enum values for AcceleratorType

func (AcceleratorType) Values added in v1.21.0

func (AcceleratorType) Values() []AcceleratorType

Values returns all known values for AcceleratorType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type AccessScopeAnalysisFinding added in v1.25.0

type AccessScopeAnalysisFinding struct {

	// The finding components.
	FindingComponents []PathComponent

	// The ID of the finding.
	FindingId *string

	// The ID of the Network Access Scope analysis.
	NetworkInsightsAccessScopeAnalysisId *string

	// The ID of the Network Access Scope.
	NetworkInsightsAccessScopeId *string
	// contains filtered or unexported fields
}

Describes a finding for a Network Access Scope.

type AccessScopePath added in v1.25.0

type AccessScopePath struct {

	// The destination.
	Destination *PathStatement

	// The source.
	Source *PathStatement

	// The through resources.
	ThroughResources []ThroughResourcesStatement
	// contains filtered or unexported fields
}

Describes a path.

type AccessScopePathRequest added in v1.25.0

type AccessScopePathRequest struct {

	// The destination.
	Destination *PathStatementRequest

	// The source.
	Source *PathStatementRequest

	// The through resources.
	ThroughResources []ThroughResourcesStatementRequest
	// contains filtered or unexported fields
}

Describes a path.

type AccountAttribute

type AccountAttribute struct {

	// The name of the account attribute.
	AttributeName *string

	// The values for the account attribute.
	AttributeValues []AccountAttributeValue
	// contains filtered or unexported fields
}

Describes an account attribute.

type AccountAttributeName

type AccountAttributeName string
const (
	AccountAttributeNameSupportedPlatforms AccountAttributeName = "supported-platforms"
	AccountAttributeNameDefaultVpc         AccountAttributeName = "default-vpc"
)

Enum values for AccountAttributeName

func (AccountAttributeName) Values added in v0.29.0

Values returns all known values for AccountAttributeName. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type AccountAttributeValue

type AccountAttributeValue struct {

	// The value of the attribute.
	AttributeValue *string
	// contains filtered or unexported fields
}

Describes a value of an account attribute.

type ActiveInstance

type ActiveInstance struct {

	// The health status of the instance. If the status of either the instance status
	// check or the system status check is impaired , the health status of the instance
	// is unhealthy . Otherwise, the health status is healthy .
	InstanceHealth InstanceHealthStatus

	// The ID of the instance.
	InstanceId *string

	// The instance type.
	InstanceType *string

	// The ID of the Spot Instance request.
	SpotInstanceRequestId *string
	// contains filtered or unexported fields
}

Describes a running instance in a Spot Fleet.

type ActivityStatus

type ActivityStatus string
const (
	ActivityStatusError              ActivityStatus = "error"
	ActivityStatusPendingFulfillment ActivityStatus = "pending_fulfillment"
	ActivityStatusPendingTermination ActivityStatus = "pending_termination"
	ActivityStatusFulfilled          ActivityStatus = "fulfilled"
)

Enum values for ActivityStatus

func (ActivityStatus) Values added in v0.29.0

func (ActivityStatus) Values() []ActivityStatus

Values returns all known values for ActivityStatus. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type AddIpamOperatingRegion added in v1.25.0

type AddIpamOperatingRegion struct {

	// The name of the operating Region.
	RegionName *string
	// contains filtered or unexported fields
}

Add an operating Region to an IPAM. Operating Regions are Amazon Web Services Regions where the IPAM is allowed to manage IP address CIDRs. IPAM only discovers and monitors resources in the Amazon Web Services Regions you select as operating Regions.

For more information about operating Regions, see Create an IPAM in the Amazon VPC IPAM User Guide.

type AddIpamOrganizationalUnitExclusion added in v1.193.0

type AddIpamOrganizationalUnitExclusion struct {

	// An Amazon Web Services Organizations entity path. Build the path for the OU(s)
	// using Amazon Web Services Organizations IDs separated by a / . Include all child
	// OUs by ending the path with /* .
	//
	//   - Example 1
	//
	//   - Path to a child OU:
	//   o-a1b2c3d4e5/r-f6g7h8i9j0example/ou-ghi0-awsccccc/ou-jkl0-awsddddd/
	//
	//   - In this example, o-a1b2c3d4e5 is the organization ID, r-f6g7h8i9j0example is
	//   the root ID , ou-ghi0-awsccccc is an OU ID, and ou-jkl0-awsddddd is a child OU
	//   ID.
	//
	//   - IPAM will not manage the IP addresses in accounts in the child OU.
	//
	//   - Example 2
	//
	//   - Path where all child OUs will be part of the exclusion:
	//   o-a1b2c3d4e5/r-f6g7h8i9j0example/ou-ghi0-awsccccc/*
	//
	//   - In this example, IPAM will not manage the IP addresses in accounts in the
	//   OU ( ou-ghi0-awsccccc ) or in accounts in any OUs that are children of the OU.
	//
	// For more information on how to construct an entity path, see [Understand the Amazon Web Services Organizations entity path] in the Amazon Web
	// Services Identity and Access Management User Guide.
	//
	// [Understand the Amazon Web Services Organizations entity path]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_last-accessed-view-data-orgs.html#access_policies_access-advisor-viewing-orgs-entity-path
	OrganizationsEntityPath *string
	// contains filtered or unexported fields
}

Add an Organizational Unit (OU) exclusion to your IPAM. If your IPAM is integrated with Amazon Web Services Organizations and you add an organizational unit (OU) exclusion, IPAM will not manage the IP addresses in accounts in that OU exclusion. There is a limit on the number of exclusions you can create. For more information, see Quotas for your IPAMin the Amazon VPC IPAM User Guide.

type AddPrefixListEntry

type AddPrefixListEntry struct {

	// The CIDR block.
	//
	// This member is required.
	Cidr *string

	// A description for the entry.
	//
	// Constraints: Up to 255 characters in length.
	Description *string
	// contains filtered or unexported fields
}

An entry for a prefix list.

type AddedPrincipal added in v1.56.0

type AddedPrincipal struct {

	// The Amazon Resource Name (ARN) of the principal.
	Principal *string

	// The type of principal.
	PrincipalType PrincipalType

	// The ID of the service.
	ServiceId *string

	// The ID of the service permission.
	ServicePermissionId *string
	// contains filtered or unexported fields
}

Describes a principal.

type AdditionalDetail added in v1.33.0

type AdditionalDetail struct {

	// The additional detail code.
	AdditionalDetailType *string

	// The path component.
	Component *AnalysisComponent

	// The load balancers.
	LoadBalancers []AnalysisComponent

	// The rule options.
	RuleGroupRuleOptionsPairs []RuleGroupRuleOptionsPair

	// The rule group type.
	RuleGroupTypePairs []RuleGroupTypePair

	// The rule options.
	RuleOptions []RuleOption

	// The name of the VPC endpoint service.
	ServiceName *string

	// The VPC endpoint service.
	VpcEndpointService *AnalysisComponent
	// contains filtered or unexported fields
}

Describes an additional detail for a path analysis. For more information, see Reachability Analyzer additional detail codes.

type Address

type Address struct {

	// The ID representing the allocation of the address.
	AllocationId *string

	// The ID representing the association of the address with an instance.
	AssociationId *string

	// The carrier IP address associated. This option is only available for network
	// interfaces which reside in a subnet in a Wavelength Zone (for example an EC2
	// instance).
	CarrierIp *string

	// The customer-owned IP address.
	CustomerOwnedIp *string

	// The ID of the customer-owned address pool.
	CustomerOwnedIpv4Pool *string

	// The network ( vpc ).
	Domain DomainType

	// The ID of the instance that the address is associated with (if any).
	InstanceId *string

	// The name of the unique set of Availability Zones, Local Zones, or Wavelength
	// Zones from which Amazon Web Services advertises IP addresses.
	NetworkBorderGroup *string

	// The ID of the network interface.
	NetworkInterfaceId *string

	// The ID of the Amazon Web Services account that owns the network interface.
	NetworkInterfaceOwnerId *string

	// The private IP address associated with the Elastic IP address.
	PrivateIpAddress *string

	// The Elastic IP address.
	PublicIp *string

	// The ID of an address pool.
	PublicIpv4Pool *string

	// Any tags assigned to the Elastic IP address.
	Tags []Tag
	// contains filtered or unexported fields
}

Describes an Elastic IP address, or a carrier IP address.

type AddressAttribute added in v0.31.0

type AddressAttribute struct {

	// [EC2-VPC] The allocation ID.
	AllocationId *string

	// The pointer (PTR) record for the IP address.
	PtrRecord *string

	// The updated PTR record for the IP address.
	PtrRecordUpdate *PtrUpdateStatus

	// The public IP address.
	PublicIp *string
	// contains filtered or unexported fields
}

The attributes associated with an Elastic IP address.

type AddressAttributeName added in v0.31.0

type AddressAttributeName string
const (
	AddressAttributeNameDomainName AddressAttributeName = "domain-name"
)

Enum values for AddressAttributeName

func (AddressAttributeName) Values added in v0.31.0

Values returns all known values for AddressAttributeName. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type AddressFamily added in v1.25.0

type AddressFamily string
const (
	AddressFamilyIpv4 AddressFamily = "ipv4"
	AddressFamilyIpv6 AddressFamily = "ipv6"
)

Enum values for AddressFamily

func (AddressFamily) Values added in v1.25.0

func (AddressFamily) Values() []AddressFamily

Values returns all known values for AddressFamily. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type AddressTransfer added in v1.65.0

type AddressTransfer struct {

	// The Elastic IP address transfer status.
	AddressTransferStatus AddressTransferStatus

	// The allocation ID of an Elastic IP address.
	AllocationId *string

	// The Elastic IP address being transferred.
	PublicIp *string

	// The ID of the account that you want to transfer the Elastic IP address to.
	TransferAccountId *string

	// The timestamp when the Elastic IP address transfer was accepted.
	TransferOfferAcceptedTimestamp *time.Time

	// The timestamp when the Elastic IP address transfer expired. When the source
	// account starts the transfer, the transfer account has seven hours to allocate
	// the Elastic IP address to complete the transfer, or the Elastic IP address will
	// return to its original owner.
	TransferOfferExpirationTimestamp *time.Time
	// contains filtered or unexported fields
}

Details on the Elastic IP address transfer. For more information, see Transfer Elastic IP addresses in the Amazon VPC User Guide.

type AddressTransferStatus added in v1.65.0

type AddressTransferStatus string
const (
	AddressTransferStatusPending  AddressTransferStatus = "pending"
	AddressTransferStatusDisabled AddressTransferStatus = "disabled"
	AddressTransferStatusAccepted AddressTransferStatus = "accepted"
)

Enum values for AddressTransferStatus

func (AddressTransferStatus) Values added in v1.65.0

Values returns all known values for AddressTransferStatus. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type Affinity

type Affinity string
const (
	AffinityDefault Affinity = "default"
	AffinityHost    Affinity = "host"
)

Enum values for Affinity

func (Affinity) Values added in v0.29.0

func (Affinity) Values() []Affinity

Values returns all known values for Affinity. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type AllocationState

type AllocationState string
const (
	AllocationStateAvailable                AllocationState = "available"
	AllocationStateUnderAssessment          AllocationState = "under-assessment"
	AllocationStatePermanentFailure         AllocationState = "permanent-failure"
	AllocationStateReleased                 AllocationState = "released"
	AllocationStateReleasedPermanentFailure AllocationState = "released-permanent-failure"
	AllocationStatePending                  AllocationState = "pending"
)

Enum values for AllocationState

func (AllocationState) Values added in v0.29.0

func (AllocationState) Values() []AllocationState

Values returns all known values for AllocationState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type AllocationStrategy

type AllocationStrategy string
const (
	AllocationStrategyLowestPrice                  AllocationStrategy = "lowestPrice"
	AllocationStrategyDiversified                  AllocationStrategy = "diversified"
	AllocationStrategyCapacityOptimized            AllocationStrategy = "capacityOptimized"
	AllocationStrategyCapacityOptimizedPrioritized AllocationStrategy = "capacityOptimizedPrioritized"
	AllocationStrategyPriceCapacityOptimized       AllocationStrategy = "priceCapacityOptimized"
)

Enum values for AllocationStrategy

func (AllocationStrategy) Values added in v0.29.0

Values returns all known values for AllocationStrategy. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type AllocationType added in v1.57.0

type AllocationType string
const (
	AllocationTypeUsed AllocationType = "used"
)

Enum values for AllocationType

func (AllocationType) Values added in v1.57.0

func (AllocationType) Values() []AllocationType

Values returns all known values for AllocationType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type AllowedImagesSettingsDisabledState added in v1.195.0

type AllowedImagesSettingsDisabledState string
const (
	AllowedImagesSettingsDisabledStateDisabled AllowedImagesSettingsDisabledState = "disabled"
)

Enum values for AllowedImagesSettingsDisabledState

func (AllowedImagesSettingsDisabledState) Values added in v1.195.0

Values returns all known values for AllowedImagesSettingsDisabledState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type AllowedImagesSettingsEnabledState added in v1.195.0

type AllowedImagesSettingsEnabledState string
const (
	AllowedImagesSettingsEnabledStateEnabled   AllowedImagesSettingsEnabledState = "enabled"
	AllowedImagesSettingsEnabledStateAuditMode AllowedImagesSettingsEnabledState = "audit-mode"
)

Enum values for AllowedImagesSettingsEnabledState

func (AllowedImagesSettingsEnabledState) Values added in v1.195.0

Values returns all known values for AllowedImagesSettingsEnabledState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type AllowedPrincipal

type AllowedPrincipal struct {

	// The Amazon Resource Name (ARN) of the principal.
	Principal *string

	// The type of principal.
	PrincipalType PrincipalType

	// The ID of the service.
	ServiceId *string

	// The ID of the service permission.
	ServicePermissionId *string

	// The tags.
	Tags []Tag
	// contains filtered or unexported fields
}

Describes a principal.

type AllowsMultipleInstanceTypes

type AllowsMultipleInstanceTypes string
const (
	AllowsMultipleInstanceTypesOn  AllowsMultipleInstanceTypes = "on"
	AllowsMultipleInstanceTypesOff AllowsMultipleInstanceTypes = "off"
)

Enum values for AllowsMultipleInstanceTypes

func (AllowsMultipleInstanceTypes) Values added in v0.29.0

Values returns all known values for AllowsMultipleInstanceTypes. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type AlternatePathHint added in v0.31.0

type AlternatePathHint struct {

	// The Amazon Resource Name (ARN) of the component.
	ComponentArn *string

	// The ID of the component.
	ComponentId *string
	// contains filtered or unexported fields
}

Describes an potential intermediate component of a feasible path.

type AmdSevSnpSpecification added in v1.95.0

type AmdSevSnpSpecification string
const (
	AmdSevSnpSpecificationEnabled  AmdSevSnpSpecification = "enabled"
	AmdSevSnpSpecificationDisabled AmdSevSnpSpecification = "disabled"
)

Enum values for AmdSevSnpSpecification

func (AmdSevSnpSpecification) Values added in v1.95.0

Values returns all known values for AmdSevSnpSpecification. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type AnalysisAclRule added in v0.31.0

type AnalysisAclRule struct {

	// The IPv4 address range, in CIDR notation.
	Cidr *string

	// Indicates whether the rule is an outbound rule.
	Egress *bool

	// The range of ports.
	PortRange *PortRange

	// The protocol.
	Protocol *string

	// Indicates whether to allow or deny traffic that matches the rule.
	RuleAction *string

	// The rule number.
	RuleNumber *int32
	// contains filtered or unexported fields
}

Describes a network access control (ACL) rule.

type AnalysisComponent added in v0.31.0

type AnalysisComponent struct {

	// The Amazon Resource Name (ARN) of the component.
	Arn *string

	// The ID of the component.
	Id *string

	// The name of the analysis component.
	Name *string
	// contains filtered or unexported fields
}

Describes a path component.

type AnalysisLoadBalancerListener added in v0.31.0

type AnalysisLoadBalancerListener struct {

	// [Classic Load Balancers] The back-end port for the listener.
	InstancePort *int32

	// The port on which the load balancer is listening.
	LoadBalancerPort *int32
	// contains filtered or unexported fields
}

Describes a load balancer listener.

type AnalysisLoadBalancerTarget added in v0.31.0

type AnalysisLoadBalancerTarget struct {

	// The IP address.
	Address *string

	// The Availability Zone.
	AvailabilityZone *string

	// Information about the instance.
	Instance *AnalysisComponent

	// The port on which the target is listening.
	Port *int32
	// contains filtered or unexported fields
}

Describes a load balancer target.

type AnalysisPacketHeader added in v0.31.0

type AnalysisPacketHeader struct {

	// The destination addresses.
	DestinationAddresses []string

	// The destination port ranges.
	DestinationPortRanges []PortRange

	// The protocol.
	Protocol *string

	// The source addresses.
	SourceAddresses []string

	// The source port ranges.
	SourcePortRanges []PortRange
	// contains filtered or unexported fields
}

Describes a header. Reflects any changes made by a component as traffic passes through. The fields of an inbound header are null except for the first component of a path.

type AnalysisRouteTableRoute added in v0.31.0

type AnalysisRouteTableRoute struct {

	// The ID of a carrier gateway.
	CarrierGatewayId *string

	// The Amazon Resource Name (ARN) of a core network.
	CoreNetworkArn *string

	// The destination IPv4 address, in CIDR notation.
	DestinationCidr *string

	// The prefix of the Amazon Web Services service.
	DestinationPrefixListId *string

	// The ID of an egress-only internet gateway.
	EgressOnlyInternetGatewayId *string

	// The ID of the gateway, such as an internet gateway or virtual private gateway.
	GatewayId *string

	// The ID of the instance, such as a NAT instance.
	InstanceId *string

	// The ID of a local gateway.
	LocalGatewayId *string

	// The ID of a NAT gateway.
	NatGatewayId *string

	// The ID of a network interface.
	NetworkInterfaceId *string

	// Describes how the route was created. The following are the possible values:
	//
	//   - CreateRouteTable - The route was automatically created when the route table
	//   was created.
	//
	//   - CreateRoute - The route was manually added to the route table.
	//
	//   - EnableVgwRoutePropagation - The route was propagated by route propagation.
	Origin *string

	// The state. The following are the possible values:
	//
	//   - active
	//
	//   - blackhole
	State *string

	// The ID of a transit gateway.
	TransitGatewayId *string

	// The ID of a VPC peering connection.
	VpcPeeringConnectionId *string
	// contains filtered or unexported fields
}

Describes a route table route.

type AnalysisSecurityGroupRule added in v0.31.0

type AnalysisSecurityGroupRule struct {

	// The IPv4 address range, in CIDR notation.
	Cidr *string

	// The direction. The following are the possible values:
	//
	//   - egress
	//
	//   - ingress
	Direction *string

	// The port range.
	PortRange *PortRange

	// The prefix list ID.
	PrefixListId *string

	// The protocol name.
	Protocol *string

	// The security group ID.
	SecurityGroupId *string
	// contains filtered or unexported fields
}

Describes a security group rule.

type AnalysisStatus added in v0.31.0

type AnalysisStatus string
const (
	AnalysisStatusRunning   AnalysisStatus = "running"
	AnalysisStatusSucceeded AnalysisStatus = "succeeded"
	AnalysisStatusFailed    AnalysisStatus = "failed"
)

Enum values for AnalysisStatus

func (AnalysisStatus) Values added in v0.31.0

func (AnalysisStatus) Values() []AnalysisStatus

Values returns all known values for AnalysisStatus. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type ApplianceModeSupportValue added in v0.29.0

type ApplianceModeSupportValue string
const (
	ApplianceModeSupportValueEnable  ApplianceModeSupportValue = "enable"
	ApplianceModeSupportValueDisable ApplianceModeSupportValue = "disable"
)

Enum values for ApplianceModeSupportValue

func (ApplianceModeSupportValue) Values added in v0.29.0

Values returns all known values for ApplianceModeSupportValue. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type ArchitectureType

type ArchitectureType string
const (
	ArchitectureTypeI386     ArchitectureType = "i386"
	ArchitectureTypeX8664    ArchitectureType = "x86_64"
	ArchitectureTypeArm64    ArchitectureType = "arm64"
	ArchitectureTypeX8664Mac ArchitectureType = "x86_64_mac"
	ArchitectureTypeArm64Mac ArchitectureType = "arm64_mac"
)

Enum values for ArchitectureType

func (ArchitectureType) Values added in v0.29.0

Values returns all known values for ArchitectureType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type ArchitectureValues

type ArchitectureValues string
const (
	ArchitectureValuesI386     ArchitectureValues = "i386"
	ArchitectureValuesX8664    ArchitectureValues = "x86_64"
	ArchitectureValuesArm64    ArchitectureValues = "arm64"
	ArchitectureValuesX8664Mac ArchitectureValues = "x86_64_mac"
	ArchitectureValuesArm64Mac ArchitectureValues = "arm64_mac"
)

Enum values for ArchitectureValues

func (ArchitectureValues) Values added in v0.29.0

Values returns all known values for ArchitectureValues. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type AsnAssociation added in v1.136.0

type AsnAssociation struct {

	// The association's ASN.
	Asn *string

	// The association's CIDR.
	Cidr *string

	// The association's state.
	State AsnAssociationState

	// The association's status message.
	StatusMessage *string
	// contains filtered or unexported fields
}

An Autonomous System Number (ASN) and BYOIP CIDR association.

type AsnAssociationState added in v1.136.0

type AsnAssociationState string
const (
	AsnAssociationStateDisassociated         AsnAssociationState = "disassociated"
	AsnAssociationStateFailedDisassociation  AsnAssociationState = "failed-disassociation"
	AsnAssociationStateFailedAssociation     AsnAssociationState = "failed-association"
	AsnAssociationStatePendingDisassociation AsnAssociationState = "pending-disassociation"
	AsnAssociationStatePendingAssociation    AsnAssociationState = "pending-association"
	AsnAssociationStateAssociated            AsnAssociationState = "associated"
)

Enum values for AsnAssociationState

func (AsnAssociationState) Values added in v1.136.0

Values returns all known values for AsnAssociationState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type AsnAuthorizationContext added in v1.136.0

type AsnAuthorizationContext struct {

	// The authorization context's message.
	//
	// This member is required.
	Message *string

	// The authorization context's signature.
	//
	// This member is required.
	Signature *string
	// contains filtered or unexported fields
}

Provides authorization for Amazon to bring an Autonomous System Number (ASN) to a specific Amazon Web Services account using bring your own ASN (BYOASN). For details on the format of the message and signature, see Tutorial: Bring your ASN to IPAMin the Amazon VPC IPAM guide.

type AsnState added in v1.136.0

type AsnState string
const (
	AsnStateDeprovisioned      AsnState = "deprovisioned"
	AsnStateFailedDeprovision  AsnState = "failed-deprovision"
	AsnStateFailedProvision    AsnState = "failed-provision"
	AsnStatePendingDeprovision AsnState = "pending-deprovision"
	AsnStatePendingProvision   AsnState = "pending-provision"
	AsnStateProvisioned        AsnState = "provisioned"
)

Enum values for AsnState

func (AsnState) Values added in v1.136.0

func (AsnState) Values() []AsnState

Values returns all known values for AsnState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type AssignedPrivateIpAddress

type AssignedPrivateIpAddress struct {

	// The private IP address assigned to the network interface.
	PrivateIpAddress *string
	// contains filtered or unexported fields
}

Describes the private IP addresses assigned to a network interface.

type AssociatedNetworkType

type AssociatedNetworkType string
const (
	AssociatedNetworkTypeVpc AssociatedNetworkType = "vpc"
)

Enum values for AssociatedNetworkType

func (AssociatedNetworkType) Values added in v0.29.0

Values returns all known values for AssociatedNetworkType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type AssociatedRole added in v0.29.0

type AssociatedRole struct {

	// The ARN of the associated IAM role.
	AssociatedRoleArn *string

	// The name of the Amazon S3 bucket in which the Amazon S3 object is stored.
	CertificateS3BucketName *string

	// The key of the Amazon S3 object where the certificate, certificate chain, and
	// encrypted private key bundle are stored. The object key is formatted as follows:
	// role_arn / certificate_arn .
	CertificateS3ObjectKey *string

	// The ID of the KMS key used to encrypt the private key.
	EncryptionKmsKeyId *string
	// contains filtered or unexported fields
}

Information about the associated IAM roles.

type AssociatedTargetNetwork

type AssociatedTargetNetwork struct {

	// The ID of the subnet.
	NetworkId *string

	// The target network type.
	NetworkType AssociatedNetworkType
	// contains filtered or unexported fields
}

Describes a target network that is associated with a Client VPN endpoint. A target network is a subnet in a VPC.

type AssociationStatus

type AssociationStatus struct {

	// The state of the target network association.
	Code AssociationStatusCode

	// A message about the status of the target network association, if applicable.
	Message *string
	// contains filtered or unexported fields
}

Describes the state of a target network association.

type AssociationStatusCode

type AssociationStatusCode string
const (
	AssociationStatusCodeAssociating       AssociationStatusCode = "associating"
	AssociationStatusCodeAssociated        AssociationStatusCode = "associated"
	AssociationStatusCodeAssociationFailed AssociationStatusCode = "association-failed"
	AssociationStatusCodeDisassociating    AssociationStatusCode = "disassociating"
	AssociationStatusCodeDisassociated     AssociationStatusCode = "disassociated"
)

Enum values for AssociationStatusCode

func (AssociationStatusCode) Values added in v0.29.0

Values returns all known values for AssociationStatusCode. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type AthenaIntegration added in v1.4.0

type AthenaIntegration struct {

	// The location in Amazon S3 to store the generated CloudFormation template.
	//
	// This member is required.
	IntegrationResultS3DestinationArn *string

	// The schedule for adding new partitions to the table.
	//
	// This member is required.
	PartitionLoadFrequency PartitionLoadFrequency

	// The end date for the partition.
	PartitionEndDate *time.Time

	// The start date for the partition.
	PartitionStartDate *time.Time
	// contains filtered or unexported fields
}

Describes integration options for Amazon Athena.

type AttachmentEnaSrdSpecification added in v1.73.0

type AttachmentEnaSrdSpecification struct {

	// Indicates whether ENA Express is enabled for the network interface.
	EnaSrdEnabled *bool

	// Configures ENA Express for UDP network traffic.
	EnaSrdUdpSpecification *AttachmentEnaSrdUdpSpecification
	// contains filtered or unexported fields
}

ENA Express uses Amazon Web Services Scalable Reliable Datagram (SRD) technology to increase the maximum bandwidth used per stream and minimize tail latency of network traffic between EC2 instances. With ENA Express, you can communicate between two EC2 instances in the same subnet within the same account, or in different accounts. Both sending and receiving instances must have ENA Express enabled.

To improve the reliability of network packet delivery, ENA Express reorders network packets on the receiving end by default. However, some UDP-based applications are designed to handle network packets that are out of order to reduce the overhead for packet delivery at the network layer. When ENA Express is enabled, you can specify whether UDP network traffic uses it.

type AttachmentEnaSrdUdpSpecification added in v1.73.0

type AttachmentEnaSrdUdpSpecification struct {

	// Indicates whether UDP traffic to and from the instance uses ENA Express. To
	// specify this setting, you must first enable ENA Express.
	EnaSrdUdpEnabled *bool
	// contains filtered or unexported fields
}

ENA Express is compatible with both TCP and UDP transport protocols. When it's enabled, TCP traffic automatically uses it. However, some UDP-based applications are designed to handle network packets that are out of order, without a need for retransmission, such as live video broadcasting or other near-real-time applications. For UDP traffic, you can specify whether to use ENA Express, based on your application environment needs.

type AttachmentStatus

type AttachmentStatus string
const (
	AttachmentStatusAttaching AttachmentStatus = "attaching"
	AttachmentStatusAttached  AttachmentStatus = "attached"
	AttachmentStatusDetaching AttachmentStatus = "detaching"
	AttachmentStatusDetached  AttachmentStatus = "detached"
)

Enum values for AttachmentStatus

func (AttachmentStatus) Values added in v0.29.0

Values returns all known values for AttachmentStatus. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type AttributeBooleanValue

type AttributeBooleanValue struct {

	// The attribute value. The valid values are true or false .
	Value *bool
	// contains filtered or unexported fields
}

Describes a value for a resource attribute that is a Boolean value.

type AttributeSummary added in v1.195.0

type AttributeSummary struct {

	// The name of the attribute.
	AttributeName *string

	// The configuration value that is most frequently observed for the attribute.
	MostFrequentValue *string

	// The number of accounts with the same configuration value for the attribute that
	// is most frequently observed.
	NumberOfMatchedAccounts *int32

	// The number of accounts with a configuration value different from the most
	// frequently observed value for the attribute.
	NumberOfUnmatchedAccounts *int32

	// The summary report for each Region for the attribute.
	RegionalSummaries []RegionalSummary
	// contains filtered or unexported fields
}

A summary report for the attribute across all Regions.

type AttributeValue

type AttributeValue struct {

	// The attribute value. The value is case-sensitive.
	Value *string
	// contains filtered or unexported fields
}

Describes a value for a resource attribute that is a String.

type AuthorizationRule

type AuthorizationRule struct {

	// Indicates whether the authorization rule grants access to all clients.
	AccessAll *bool

	// The ID of the Client VPN endpoint with which the authorization rule is
	// associated.
	ClientVpnEndpointId *string

	// A brief description of the authorization rule.
	Description *string

	// The IPv4 address range, in CIDR notation, of the network to which the
	// authorization rule applies.
	DestinationCidr *string

	// The ID of the Active Directory group to which the authorization rule grants
	// access.
	GroupId *string

	// The current state of the authorization rule.
	Status *ClientVpnAuthorizationRuleStatus
	// contains filtered or unexported fields
}

Information about an authorization rule.

type AutoAcceptSharedAssociationsValue added in v0.31.0

type AutoAcceptSharedAssociationsValue string
const (
	AutoAcceptSharedAssociationsValueEnable  AutoAcceptSharedAssociationsValue = "enable"
	AutoAcceptSharedAssociationsValueDisable AutoAcceptSharedAssociationsValue = "disable"
)

Enum values for AutoAcceptSharedAssociationsValue

func (AutoAcceptSharedAssociationsValue) Values added in v0.31.0

Values returns all known values for AutoAcceptSharedAssociationsValue. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type AutoAcceptSharedAttachmentsValue

type AutoAcceptSharedAttachmentsValue string
const (
	AutoAcceptSharedAttachmentsValueEnable  AutoAcceptSharedAttachmentsValue = "enable"
	AutoAcceptSharedAttachmentsValueDisable AutoAcceptSharedAttachmentsValue = "disable"
)

Enum values for AutoAcceptSharedAttachmentsValue

func (AutoAcceptSharedAttachmentsValue) Values added in v0.29.0

Values returns all known values for AutoAcceptSharedAttachmentsValue. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type AutoPlacement

type AutoPlacement string
const (
	AutoPlacementOn  AutoPlacement = "on"
	AutoPlacementOff AutoPlacement = "off"
)

Enum values for AutoPlacement

func (AutoPlacement) Values added in v0.29.0

func (AutoPlacement) Values() []AutoPlacement

Values returns all known values for AutoPlacement. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type AvailabilityZone

type AvailabilityZone struct {

	//  For Availability Zones, this parameter has the same value as the Region name.
	//
	// For Local Zones, the name of the associated group, for example us-west-2-lax-1 .
	//
	// For Wavelength Zones, the name of the associated group, for example
	// us-east-1-wl1-bos-wlz-1 .
	GroupName *string

	// Any messages about the Availability Zone, Local Zone, or Wavelength Zone.
	Messages []AvailabilityZoneMessage

	// The name of the network border group.
	NetworkBorderGroup *string

	// For Availability Zones, this parameter always has the value of
	// opt-in-not-required .
	//
	// For Local Zones and Wavelength Zones, this parameter is the opt-in status. The
	// possible values are opted-in , and not-opted-in .
	OptInStatus AvailabilityZoneOptInStatus

	// The ID of the zone that handles some of the Local Zone or Wavelength Zone
	// control plane operations, such as API calls.
	ParentZoneId *string

	// The name of the zone that handles some of the Local Zone or Wavelength Zone
	// control plane operations, such as API calls.
	ParentZoneName *string

	// The name of the Region.
	RegionName *string

	// The state of the Availability Zone, Local Zone, or Wavelength Zone. This value
	// is always available .
	State AvailabilityZoneState

	// The ID of the Availability Zone, Local Zone, or Wavelength Zone.
	ZoneId *string

	// The name of the Availability Zone, Local Zone, or Wavelength Zone.
	ZoneName *string

	// The type of zone. The valid values are availability-zone , local-zone , and
	// wavelength-zone .
	ZoneType *string
	// contains filtered or unexported fields
}

Describes Availability Zones, Local Zones, and Wavelength Zones.

type AvailabilityZoneMessage

type AvailabilityZoneMessage struct {

	// The message about the Availability Zone, Local Zone, or Wavelength Zone.
	Message *string
	// contains filtered or unexported fields
}

Describes a message about an Availability Zone, Local Zone, or Wavelength Zone.

type AvailabilityZoneOptInStatus

type AvailabilityZoneOptInStatus string
const (
	AvailabilityZoneOptInStatusOptInNotRequired AvailabilityZoneOptInStatus = "opt-in-not-required"
	AvailabilityZoneOptInStatusOptedIn          AvailabilityZoneOptInStatus = "opted-in"
	AvailabilityZoneOptInStatusNotOptedIn       AvailabilityZoneOptInStatus = "not-opted-in"
)

Enum values for AvailabilityZoneOptInStatus

func (AvailabilityZoneOptInStatus) Values added in v0.29.0

Values returns all known values for AvailabilityZoneOptInStatus. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type AvailabilityZoneState

type AvailabilityZoneState string
const (
	AvailabilityZoneStateAvailable   AvailabilityZoneState = "available"
	AvailabilityZoneStateInformation AvailabilityZoneState = "information"
	AvailabilityZoneStateImpaired    AvailabilityZoneState = "impaired"
	AvailabilityZoneStateUnavailable AvailabilityZoneState = "unavailable"
	AvailabilityZoneStateConstrained AvailabilityZoneState = "constrained"
)

Enum values for AvailabilityZoneState

func (AvailabilityZoneState) Values added in v0.29.0

Values returns all known values for AvailabilityZoneState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type AvailableCapacity

type AvailableCapacity struct {

	// The number of instances that can be launched onto the Dedicated Host depending
	// on the host's available capacity. For Dedicated Hosts that support multiple
	// instance types, this parameter represents the number of instances for each
	// instance size that is supported on the host.
	AvailableInstanceCapacity []InstanceCapacity

	// The number of vCPUs available for launching instances onto the Dedicated Host.
	AvailableVCpus *int32
	// contains filtered or unexported fields
}

The capacity information for instances that can be launched onto the Dedicated Host.

type BandwidthWeightingType added in v1.196.0

type BandwidthWeightingType string
const (
	BandwidthWeightingTypeDefault BandwidthWeightingType = "default"
	BandwidthWeightingTypeVpc1    BandwidthWeightingType = "vpc-1"
	BandwidthWeightingTypeEbs1    BandwidthWeightingType = "ebs-1"
)

Enum values for BandwidthWeightingType

func (BandwidthWeightingType) Values added in v1.196.0

Values returns all known values for BandwidthWeightingType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type BareMetal added in v1.21.0

type BareMetal string
const (
	BareMetalIncluded BareMetal = "included"
	BareMetalRequired BareMetal = "required"
	BareMetalExcluded BareMetal = "excluded"
)

Enum values for BareMetal

func (BareMetal) Values added in v1.21.0

func (BareMetal) Values() []BareMetal

Values returns all known values for BareMetal. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type BaselineEbsBandwidthMbps added in v1.21.0

type BaselineEbsBandwidthMbps struct {

	// The maximum baseline bandwidth, in Mbps. If this parameter is not specified,
	// there is no maximum limit.
	Max *int32

	// The minimum baseline bandwidth, in Mbps. If this parameter is not specified,
	// there is no minimum limit.
	Min *int32
	// contains filtered or unexported fields
}

The minimum and maximum baseline bandwidth to Amazon EBS, in Mbps. For more information, see Amazon EBS–optimized instancesin the Amazon EC2 User Guide.

type BaselineEbsBandwidthMbpsRequest added in v1.21.0

type BaselineEbsBandwidthMbpsRequest struct {

	// The maximum baseline bandwidth, in Mbps. To specify no maximum limit, omit this
	// parameter.
	Max *int32

	// The minimum baseline bandwidth, in Mbps. To specify no minimum limit, omit this
	// parameter.
	Min *int32
	// contains filtered or unexported fields
}

The minimum and maximum baseline bandwidth to Amazon EBS, in Mbps. For more information, see Amazon EBS–optimized instancesin the Amazon EC2 User Guide.

type BaselinePerformanceFactors added in v1.192.0

type BaselinePerformanceFactors struct {

	// The CPU performance to consider, using an instance family as the baseline
	// reference.
	Cpu *CpuPerformanceFactor
	// contains filtered or unexported fields
}

The baseline performance to consider, using an instance family as a baseline reference. The instance family establishes the lowest acceptable level of performance. Amazon EC2 uses this baseline to guide instance type selection, but there is no guarantee that the selected instance types will always exceed the baseline for every application.

Currently, this parameter only supports CPU performance as a baseline performance factor. For example, specifying c6i would use the CPU performance of the c6i family as the baseline reference.

type BaselinePerformanceFactorsRequest added in v1.192.0

type BaselinePerformanceFactorsRequest struct {

	// The CPU performance to consider, using an instance family as the baseline
	// reference.
	Cpu *CpuPerformanceFactorRequest
	// contains filtered or unexported fields
}

The baseline performance to consider, using an instance family as a baseline reference. The instance family establishes the lowest acceptable level of performance. Amazon EC2 uses this baseline to guide instance type selection, but there is no guarantee that the selected instance types will always exceed the baseline for every application.

Currently, this parameter only supports CPU performance as a baseline performance factor. For example, specifying c6i would use the CPU performance of the c6i family as the baseline reference.

type BatchState

type BatchState string
const (
	BatchStateSubmitted                     BatchState = "submitted"
	BatchStateActive                        BatchState = "active"
	BatchStateCancelled                     BatchState = "cancelled"
	BatchStateFailed                        BatchState = "failed"
	BatchStateCancelledRunning              BatchState = "cancelled_running"
	BatchStateCancelledTerminatingInstances BatchState = "cancelled_terminating"
	BatchStateModifying                     BatchState = "modifying"
)

Enum values for BatchState

func (BatchState) Values added in v0.29.0

func (BatchState) Values() []BatchState

Values returns all known values for BatchState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type BgpStatus added in v0.31.0

type BgpStatus string
const (
	BgpStatusUp   BgpStatus = "up"
	BgpStatusDown BgpStatus = "down"
)

Enum values for BgpStatus

func (BgpStatus) Values added in v0.31.0

func (BgpStatus) Values() []BgpStatus

Values returns all known values for BgpStatus. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type BlobAttributeValue

type BlobAttributeValue struct {
	Value []byte
	// contains filtered or unexported fields
}

type BlockDeviceMapping

type BlockDeviceMapping struct {

	// The device name (for example, /dev/sdh or xvdh ).
	DeviceName *string

	// Parameters used to automatically set up EBS volumes when the instance is
	// launched.
	Ebs *EbsBlockDevice

	// To omit the device from the block device mapping, specify an empty string. When
	// this property is specified, the device is removed from the block device mapping
	// regardless of the assigned value.
	NoDevice *string

	// The virtual device name ( ephemeral N). Instance store volumes are numbered
	// starting from 0. An instance type with 2 available instance store volumes can
	// specify mappings for ephemeral0 and ephemeral1 . The number of available
	// instance store volumes depends on the instance type. After you connect to the
	// instance, you must mount the volume.
	//
	// NVMe instance store volumes are automatically enumerated and assigned a device
	// name. Including them in your block device mapping has no effect.
	//
	// Constraints: For M3 instances, you must specify instance store volumes in the
	// block device mapping for the instance. When you launch an M3 instance, we ignore
	// any instance store volumes specified in the block device mapping for the AMI.
	VirtualName *string
	// contains filtered or unexported fields
}

Describes a block device mapping, which defines the EBS volumes and instance store volumes to attach to an instance at launch.

type BlockPublicAccessMode added in v1.191.0

type BlockPublicAccessMode string
const (
	BlockPublicAccessModeOff                BlockPublicAccessMode = "off"
	BlockPublicAccessModeBlockBidirectional BlockPublicAccessMode = "block-bidirectional"
	BlockPublicAccessModeBlockIngress       BlockPublicAccessMode = "block-ingress"
)

Enum values for BlockPublicAccessMode

func (BlockPublicAccessMode) Values added in v1.191.0

Values returns all known values for BlockPublicAccessMode. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type BlockPublicAccessStates added in v1.191.0

type BlockPublicAccessStates struct {

	// The mode of VPC BPA.
	//
	//   - off : VPC BPA is not enabled and traffic is allowed to and from internet
	//   gateways and egress-only internet gateways in this Region.
	//
	//   - block-bidirectional : Block all traffic to and from internet gateways and
	//   egress-only internet gateways in this Region (except for excluded VPCs and
	//   subnets).
	//
	//   - block-ingress : Block all internet traffic to the VPCs in this Region
	//   (except for VPCs or subnets which are excluded). Only traffic to and from NAT
	//   gateways and egress-only internet gateways is allowed because these gateways
	//   only allow outbound connections to be established.
	InternetGatewayBlockMode BlockPublicAccessMode
	// contains filtered or unexported fields
}

The state of VPC Block Public Access (BPA).

type BootModeType added in v0.31.0

type BootModeType string
const (
	BootModeTypeLegacyBios BootModeType = "legacy-bios"
	BootModeTypeUefi       BootModeType = "uefi"
)

Enum values for BootModeType

func (BootModeType) Values added in v0.31.0

func (BootModeType) Values() []BootModeType

Values returns all known values for BootModeType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type BootModeValues added in v0.31.0

type BootModeValues string
const (
	BootModeValuesLegacyBios    BootModeValues = "legacy-bios"
	BootModeValuesUefi          BootModeValues = "uefi"
	BootModeValuesUefiPreferred BootModeValues = "uefi-preferred"
)

Enum values for BootModeValues

func (BootModeValues) Values added in v0.31.0

func (BootModeValues) Values() []BootModeValues

Values returns all known values for BootModeValues. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type BundleTask

type BundleTask struct {

	// The ID of the bundle task.
	BundleId *string

	// If the task fails, a description of the error.
	BundleTaskError *BundleTaskError

	// The ID of the instance associated with this bundle task.
	InstanceId *string

	// The level of task completion, as a percent (for example, 20%).
	Progress *string

	// The time this task started.
	StartTime *time.Time

	// The state of the task.
	State BundleTaskState

	// The Amazon S3 storage locations.
	Storage *Storage

	// The time of the most recent update for the task.
	UpdateTime *time.Time
	// contains filtered or unexported fields
}

Describes a bundle task.

type BundleTaskError

type BundleTaskError struct {

	// The error code.
	Code *string

	// The error message.
	Message *string
	// contains filtered or unexported fields
}

Describes an error for BundleInstance.

type BundleTaskState

type BundleTaskState string
const (
	BundleTaskStatePending            BundleTaskState = "pending"
	BundleTaskStateWaitingForShutdown BundleTaskState = "waiting-for-shutdown"
	BundleTaskStateBundling           BundleTaskState = "bundling"
	BundleTaskStateStoring            BundleTaskState = "storing"
	BundleTaskStateCancelling         BundleTaskState = "cancelling"
	BundleTaskStateComplete           BundleTaskState = "complete"
	BundleTaskStateFailed             BundleTaskState = "failed"
)

Enum values for BundleTaskState

func (BundleTaskState) Values added in v0.29.0

func (BundleTaskState) Values() []BundleTaskState

Values returns all known values for BundleTaskState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type BurstablePerformance added in v1.21.0

type BurstablePerformance string
const (
	BurstablePerformanceIncluded BurstablePerformance = "included"
	BurstablePerformanceRequired BurstablePerformance = "required"
	BurstablePerformanceExcluded BurstablePerformance = "excluded"
)

Enum values for BurstablePerformance

func (BurstablePerformance) Values added in v1.21.0

Values returns all known values for BurstablePerformance. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type Byoasn added in v1.136.0

type Byoasn struct {

	// A public 2-byte or 4-byte ASN.
	Asn *string

	// An IPAM ID.
	IpamId *string

	// The provisioning state of the BYOASN.
	State AsnState

	// The status message.
	StatusMessage *string
	// contains filtered or unexported fields
}

The Autonomous System Number (ASN) and BYOIP CIDR association.

type ByoipCidr

type ByoipCidr struct {

	// The BYOIP CIDR associations with ASNs.
	AsnAssociations []AsnAssociation

	// The address range, in CIDR notation.
	Cidr *string

	// The description of the address range.
	Description *string

	// If you have [Local Zones] enabled, you can choose a network border group for Local Zones
	// when you provision and advertise a BYOIPv4 CIDR. Choose the network border group
	// carefully as the EIP and the Amazon Web Services resource it is associated with
	// must reside in the same network border group.
	//
	// You can provision BYOIP address ranges to and advertise them in the following
	// Local Zone network border groups:
	//
	//   - us-east-1-dfw-2
	//
	//   - us-west-2-lax-1
	//
	//   - us-west-2-phx-2
	//
	// You cannot provision or advertise BYOIPv6 address ranges in Local Zones at this
	// time.
	//
	// [Local Zones]: https://docs.aws.amazon.com/local-zones/latest/ug/how-local-zones-work.html
	NetworkBorderGroup *string

	// The state of the address range.
	//
	//   - advertised : The address range is being advertised to the internet by Amazon
	//   Web Services.
	//
	//   - deprovisioned : The address range is deprovisioned.
	//
	//   - failed-deprovision : The request to deprovision the address range was
	//   unsuccessful. Ensure that all EIPs from the range have been deallocated and try
	//   again.
	//
	//   - failed-provision : The request to provision the address range was
	//   unsuccessful.
	//
	//   - pending-deprovision : You’ve submitted a request to deprovision an address
	//   range and it's pending.
	//
	//   - pending-provision : You’ve submitted a request to provision an address range
	//   and it's pending.
	//
	//   - provisioned : The address range is provisioned and can be advertised. The
	//   range is not currently advertised.
	//
	//   - provisioned-not-publicly-advertisable : The address range is provisioned and
	//   cannot be advertised.
	State ByoipCidrState

	// Upon success, contains the ID of the address pool. Otherwise, contains an error
	// message.
	StatusMessage *string
	// contains filtered or unexported fields
}

Information about an address range that is provisioned for use with your Amazon Web Services resources through bring your own IP addresses (BYOIP).

type ByoipCidrState

type ByoipCidrState string
const (
	ByoipCidrStateAdvertised                         ByoipCidrState = "advertised"
	ByoipCidrStateDeprovisioned                      ByoipCidrState = "deprovisioned"
	ByoipCidrStateFailedDeprovision                  ByoipCidrState = "failed-deprovision"
	ByoipCidrStateFailedProvision                    ByoipCidrState = "failed-provision"
	ByoipCidrStatePendingDeprovision                 ByoipCidrState = "pending-deprovision"
	ByoipCidrStatePendingProvision                   ByoipCidrState = "pending-provision"
	ByoipCidrStateProvisioned                        ByoipCidrState = "provisioned"
	ByoipCidrStateProvisionedNotPubliclyAdvertisable ByoipCidrState = "provisioned-not-publicly-advertisable"
)

Enum values for ByoipCidrState

func (ByoipCidrState) Values added in v0.29.0

func (ByoipCidrState) Values() []ByoipCidrState

Values returns all known values for ByoipCidrState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type CallerRole added in v1.182.0

type CallerRole string
const (
	CallerRoleOdcrOwner                     CallerRole = "odcr-owner"
	CallerRoleUnusedReservationBillingOwner CallerRole = "unused-reservation-billing-owner"
)

Enum values for CallerRole

func (CallerRole) Values added in v1.182.0

func (CallerRole) Values() []CallerRole

Values returns all known values for CallerRole. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type CancelBatchErrorCode

type CancelBatchErrorCode string
const (
	CancelBatchErrorCodeFleetRequestIdDoesNotExist        CancelBatchErrorCode = "fleetRequestIdDoesNotExist"
	CancelBatchErrorCodeFleetRequestIdMalformed           CancelBatchErrorCode = "fleetRequestIdMalformed"
	CancelBatchErrorCodeFleetRequestNotInCancellableState CancelBatchErrorCode = "fleetRequestNotInCancellableState"
	CancelBatchErrorCodeUnexpectedError                   CancelBatchErrorCode = "unexpectedError"
)

Enum values for CancelBatchErrorCode

func (CancelBatchErrorCode) Values added in v0.29.0

Values returns all known values for CancelBatchErrorCode. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type CancelCapacityReservationFleetError added in v1.19.0

type CancelCapacityReservationFleetError struct {

	// The error code.
	Code *string

	// The error message.
	Message *string
	// contains filtered or unexported fields
}

Describes a Capacity Reservation Fleet cancellation error.

type CancelSpotFleetRequestsError

type CancelSpotFleetRequestsError struct {

	// The error code.
	Code CancelBatchErrorCode

	// The description for the error code.
	Message *string
	// contains filtered or unexported fields
}

Describes a Spot Fleet error.

type CancelSpotFleetRequestsErrorItem

type CancelSpotFleetRequestsErrorItem struct {

	// The error.
	Error *CancelSpotFleetRequestsError

	// The ID of the Spot Fleet request.
	SpotFleetRequestId *string
	// contains filtered or unexported fields
}

Describes a Spot Fleet request that was not successfully canceled.

type CancelSpotFleetRequestsSuccessItem

type CancelSpotFleetRequestsSuccessItem struct {

	// The current state of the Spot Fleet request.
	CurrentSpotFleetRequestState BatchState

	// The previous state of the Spot Fleet request.
	PreviousSpotFleetRequestState BatchState

	// The ID of the Spot Fleet request.
	SpotFleetRequestId *string
	// contains filtered or unexported fields
}

Describes a Spot Fleet request that was successfully canceled.

type CancelSpotInstanceRequestState

type CancelSpotInstanceRequestState string
const (
	CancelSpotInstanceRequestStateActive    CancelSpotInstanceRequestState = "active"
	CancelSpotInstanceRequestStateOpen      CancelSpotInstanceRequestState = "open"
	CancelSpotInstanceRequestStateClosed    CancelSpotInstanceRequestState = "closed"
	CancelSpotInstanceRequestStateCancelled CancelSpotInstanceRequestState = "cancelled"
	CancelSpotInstanceRequestStateCompleted CancelSpotInstanceRequestState = "completed"
)

Enum values for CancelSpotInstanceRequestState

func (CancelSpotInstanceRequestState) Values added in v0.29.0

Values returns all known values for CancelSpotInstanceRequestState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type CancelledSpotInstanceRequest

type CancelledSpotInstanceRequest struct {

	// The ID of the Spot Instance request.
	SpotInstanceRequestId *string

	// The state of the Spot Instance request.
	State CancelSpotInstanceRequestState
	// contains filtered or unexported fields
}

Describes a request to cancel a Spot Instance.

type CapacityAllocation added in v1.57.0

type CapacityAllocation struct {

	// The usage type. used indicates that the instance capacity is in use by
	// instances that are running in the Capacity Reservation.
	AllocationType AllocationType

	// The amount of instance capacity associated with the usage. For example a value
	// of 4 indicates that instance capacity for 4 instances is currently in use.
	Count *int32
	// contains filtered or unexported fields
}

Information about instance capacity usage for a Capacity Reservation.

type CapacityBlockExtension added in v1.193.0

type CapacityBlockExtension struct {

	// The Availability Zone of the Capacity Block extension.
	AvailabilityZone *string

	// The Availability Zone ID of the Capacity Block extension.
	AvailabilityZoneId *string

	// The duration of the Capacity Block extension in hours.
	CapacityBlockExtensionDurationHours *int32

	// The end date of the Capacity Block extension.
	CapacityBlockExtensionEndDate *time.Time

	// The ID of the Capacity Block extension offering.
	CapacityBlockExtensionOfferingId *string

	// The date when the Capacity Block extension was purchased.
	CapacityBlockExtensionPurchaseDate *time.Time

	// The start date of the Capacity Block extension.
	CapacityBlockExtensionStartDate *time.Time

	// The status of the Capacity Block extension. A Capacity Block extension can have
	// one of the following statuses:
	//
	//   - payment-pending - The Capacity Block extension payment is processing. If
	//   your payment can't be processed within 12 hours, the Capacity Block extension is
	//   failed.
	//
	//   - payment-failed - Payment for the Capacity Block extension request was not
	//   successful.
	//
	//   - payment-succeeded - Payment for the Capacity Block extension request was
	//   successful. You receive an invoice that reflects the one-time upfront payment.
	//   In the invoice, you can associate the paid amount with the Capacity Block
	//   reservation ID.
	CapacityBlockExtensionStatus CapacityBlockExtensionStatus

	// The reservation ID of the Capacity Block extension.
	CapacityReservationId *string

	// The currency of the payment for the Capacity Block extension.
	CurrencyCode *string

	// The number of instances in the Capacity Block extension.
	InstanceCount *int32

	// The instance type of the Capacity Block extension.
	InstanceType *string

	// The total price to be paid up front.
	UpfrontFee *string
	// contains filtered or unexported fields
}

Describes a Capacity Block extension. With an extension, you can extend the duration of time for an existing Capacity Block.

type CapacityBlockExtensionOffering added in v1.193.0

type CapacityBlockExtensionOffering struct {

	// The Availability Zone of the Capacity Block that will be extended.
	AvailabilityZone *string

	// The Availability Zone ID of the Capacity Block that will be extended.
	AvailabilityZoneId *string

	// The amount of time of the Capacity Block extension offering in hours.
	CapacityBlockExtensionDurationHours *int32

	// The date and time at which the Capacity Block extension expires. When a
	// Capacity Block expires, the reserved capacity is released and you can no longer
	// launch instances into it. The Capacity Block's state changes to expired when it
	// reaches its end date
	CapacityBlockExtensionEndDate *time.Time

	// The ID of the Capacity Block extension offering.
	CapacityBlockExtensionOfferingId *string

	// The date and time at which the Capacity Block extension will start. This date
	// is also the same as the end date of the Capacity Block that will be extended.
	CapacityBlockExtensionStartDate *time.Time

	// The currency of the payment for the Capacity Block extension offering.
	CurrencyCode *string

	// The number of instances in the Capacity Block extension offering.
	InstanceCount *int32

	// The instance type of the Capacity Block that will be extended.
	InstanceType *string

	// The start date of the Capacity Block that will be extended.
	StartDate *time.Time

	// Indicates the tenancy of the Capacity Block extension offering. A Capacity
	// Block can have one of the following tenancy settings:
	//
	//   - default - The Capacity Block is created on hardware that is shared with
	//   other Amazon Web Services accounts.
	//
	//   - dedicated - The Capacity Block is created on single-tenant hardware that is
	//   dedicated to a single Amazon Web Services account.
	Tenancy CapacityReservationTenancy

	// The total price of the Capacity Block extension offering, to be paid up front.
	UpfrontFee *string
	// contains filtered or unexported fields
}

The recommended Capacity Block extension that fits your search requirements.

type CapacityBlockExtensionStatus added in v1.193.0

type CapacityBlockExtensionStatus string
const (
	CapacityBlockExtensionStatusPaymentPending   CapacityBlockExtensionStatus = "payment-pending"
	CapacityBlockExtensionStatusPaymentFailed    CapacityBlockExtensionStatus = "payment-failed"
	CapacityBlockExtensionStatusPaymentSucceeded CapacityBlockExtensionStatus = "payment-succeeded"
)

Enum values for CapacityBlockExtensionStatus

func (CapacityBlockExtensionStatus) Values added in v1.193.0

Values returns all known values for CapacityBlockExtensionStatus. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type CapacityBlockOffering added in v1.129.0

type CapacityBlockOffering struct {

	// The Availability Zone of the Capacity Block offering.
	AvailabilityZone *string

	// The number of hours (in addition to capacityBlockDurationMinutes ) for the
	// duration of the Capacity Block reservation. For example, if a Capacity Block
	// starts at 04:55 and ends at 11:30, the hours field would be 6.
	CapacityBlockDurationHours *int32

	// The number of minutes (in addition to capacityBlockDurationHours ) for the
	// duration of the Capacity Block reservation. For example, if a Capacity Block
	// starts at 08:55 and ends at 11:30, the minutes field would be 35.
	CapacityBlockDurationMinutes *int32

	// The ID of the Capacity Block offering.
	CapacityBlockOfferingId *string

	// The currency of the payment for the Capacity Block.
	CurrencyCode *string

	// The end date of the Capacity Block offering.
	EndDate *time.Time

	// The number of instances in the Capacity Block offering.
	InstanceCount *int32

	// The instance type of the Capacity Block offering.
	InstanceType *string

	// The start date of the Capacity Block offering.
	StartDate *time.Time

	// The tenancy of the Capacity Block.
	Tenancy CapacityReservationTenancy

	// The total price to be paid up front.
	UpfrontFee *string
	// contains filtered or unexported fields
}

The recommended Capacity Block that fits your search requirements.

type CapacityReservation

type CapacityReservation struct {

	// The Availability Zone in which the capacity is reserved.
	AvailabilityZone *string

	// The Availability Zone ID of the Capacity Reservation.
	AvailabilityZoneId *string

	// The remaining capacity. Indicates the number of instances that can be launched
	// in the Capacity Reservation.
	AvailableInstanceCount *int32

	// Information about instance capacity usage.
	CapacityAllocations []CapacityAllocation

	// The Amazon Resource Name (ARN) of the Capacity Reservation.
	CapacityReservationArn *string

	// The ID of the Capacity Reservation Fleet to which the Capacity Reservation
	// belongs. Only valid for Capacity Reservations that were created by a Capacity
	// Reservation Fleet.
	CapacityReservationFleetId *string

	// The ID of the Capacity Reservation.
	CapacityReservationId *string

	// Information about your commitment for a future-dated Capacity Reservation.
	CommitmentInfo *CapacityReservationCommitmentInfo

	// The date and time at which the Capacity Reservation was created.
	CreateDate *time.Time

	// The delivery method for a future-dated Capacity Reservation. incremental
	// indicates that the requested capacity is delivered in addition to any running
	// instances and reserved capacity that you have in your account at the requested
	// date and time.
	DeliveryPreference CapacityReservationDeliveryPreference

	// Indicates whether the Capacity Reservation supports EBS-optimized instances.
	// This optimization provides dedicated throughput to Amazon EBS and an optimized
	// configuration stack to provide optimal I/O performance. This optimization isn't
	// available with all instance types. Additional usage charges apply when using an
	// EBS- optimized instance.
	EbsOptimized *bool

	// The date and time at which the Capacity Reservation expires. When a Capacity
	// Reservation expires, the reserved capacity is released and you can no longer
	// launch instances into it. The Capacity Reservation's state changes to expired
	// when it reaches its end date and time.
	EndDate *time.Time

	// Indicates the way in which the Capacity Reservation ends. A Capacity
	// Reservation can have one of the following end types:
	//
	//   - unlimited - The Capacity Reservation remains active until you explicitly
	//   cancel it.
	//
	//   - limited - The Capacity Reservation expires automatically at a specified date
	//   and time.
	EndDateType EndDateType

	//  Deprecated.
	EphemeralStorage *bool

	// Indicates the type of instance launches that the Capacity Reservation accepts.
	// The options include:
	//
	//   - open - The Capacity Reservation accepts all instances that have matching
	//   attributes (instance type, platform, and Availability Zone). Instances that have
	//   matching attributes launch into the Capacity Reservation automatically without
	//   specifying any additional parameters.
	//
	//   - targeted - The Capacity Reservation only accepts instances that have
	//   matching attributes (instance type, platform, and Availability Zone), and
	//   explicitly target the Capacity Reservation. This ensures that only permitted
	//   instances can use the reserved capacity.
	InstanceMatchCriteria InstanceMatchCriteria

	// The type of operating system for which the Capacity Reservation reserves
	// capacity.
	InstancePlatform CapacityReservationInstancePlatform

	// The type of instance for which the Capacity Reservation reserves capacity.
	InstanceType *string

	// The Amazon Resource Name (ARN) of the Outpost on which the Capacity Reservation
	// was created.
	OutpostArn *string

	// The ID of the Amazon Web Services account that owns the Capacity Reservation.
	OwnerId *string

	// The Amazon Resource Name (ARN) of the cluster placement group in which the
	// Capacity Reservation was created. For more information, see [Capacity Reservations for cluster placement groups]in the Amazon EC2
	// User Guide.
	//
	// [Capacity Reservations for cluster placement groups]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/cr-cpg.html
	PlacementGroupArn *string

	// The type of Capacity Reservation.
	ReservationType CapacityReservationType

	// The date and time at which the Capacity Reservation was started.
	StartDate *time.Time

	// The current state of the Capacity Reservation. A Capacity Reservation can be in
	// one of the following states:
	//
	//   - active - The capacity is available for use.
	//
	//   - expired - The Capacity Reservation expired automatically at the date and
	//   time specified in your reservation request. The reserved capacity is no longer
	//   available for your use.
	//
	//   - cancelled - The Capacity Reservation was canceled. The reserved capacity is
	//   no longer available for your use.
	//
	//   - pending - The Capacity Reservation request was successful but the capacity
	//   provisioning is still pending.
	//
	//   - failed - The Capacity Reservation request has failed. A request can fail due
	//   to request parameters that are not valid, capacity constraints, or instance
	//   limit constraints. You can view a failed request for 60 minutes.
	//
	//   - scheduled - (Future-dated Capacity Reservations only) The future-dated
	//   Capacity Reservation request was approved and the Capacity Reservation is
	//   scheduled for delivery on the requested start date.
	//
	//   - assessing - (Future-dated Capacity Reservations only) Amazon EC2 is
	//   assessing your request for a future-dated Capacity Reservation.
	//
	//   - delayed - (Future-dated Capacity Reservations only) Amazon EC2 encountered a
	//   delay in provisioning the requested future-dated Capacity Reservation. Amazon
	//   EC2 is unable to deliver the requested capacity by the requested start date and
	//   time.
	//
	//   - unsupported - (Future-dated Capacity Reservations only) Amazon EC2 can't
	//   support the future-dated Capacity Reservation request due to capacity
	//   constraints. You can view unsupported requests for 30 days. The Capacity
	//   Reservation will not be delivered.
	State CapacityReservationState

	// Any tags assigned to the Capacity Reservation.
	Tags []Tag

	// Indicates the tenancy of the Capacity Reservation. A Capacity Reservation can
	// have one of the following tenancy settings:
	//
	//   - default - The Capacity Reservation is created on hardware that is shared
	//   with other Amazon Web Services accounts.
	//
	//   - dedicated - The Capacity Reservation is created on single-tenant hardware
	//   that is dedicated to a single Amazon Web Services account.
	Tenancy CapacityReservationTenancy

	// The total number of instances for which the Capacity Reservation reserves
	// capacity.
	TotalInstanceCount *int32

	// The ID of the Amazon Web Services account to which billing of the unused
	// capacity of the Capacity Reservation is assigned.
	UnusedReservationBillingOwnerId *string
	// contains filtered or unexported fields
}

Describes a Capacity Reservation.

type CapacityReservationBillingRequest added in v1.182.0

type CapacityReservationBillingRequest struct {

	// The ID of the Capacity Reservation.
	CapacityReservationId *string

	// Information about the Capacity Reservation.
	CapacityReservationInfo *CapacityReservationInfo

	// The date and time, in UTC time format, at which the request was initiated.
	LastUpdateTime *time.Time

	// The ID of the Amazon Web Services account that initiated the request.
	RequestedBy *string

	// The status of the request. For more information, see [View billing assignment requests for a shared Amazon EC2 Capacity Reservation].
	//
	// [View billing assignment requests for a shared Amazon EC2 Capacity Reservation]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/view-billing-transfers.html
	Status CapacityReservationBillingRequestStatus

	// Information about the status.
	StatusMessage *string

	// The ID of the Amazon Web Services account to which the request was sent.
	UnusedReservationBillingOwnerId *string
	// contains filtered or unexported fields
}

Information about a request to assign billing of the unused capacity of a Capacity Reservation.

type CapacityReservationBillingRequestStatus added in v1.182.0

type CapacityReservationBillingRequestStatus string
const (
	CapacityReservationBillingRequestStatusPending   CapacityReservationBillingRequestStatus = "pending"
	CapacityReservationBillingRequestStatusAccepted  CapacityReservationBillingRequestStatus = "accepted"
	CapacityReservationBillingRequestStatusRejected  CapacityReservationBillingRequestStatus = "rejected"
	CapacityReservationBillingRequestStatusCancelled CapacityReservationBillingRequestStatus = "cancelled"
	CapacityReservationBillingRequestStatusRevoked   CapacityReservationBillingRequestStatus = "revoked"
	CapacityReservationBillingRequestStatusExpired   CapacityReservationBillingRequestStatus = "expired"
)

Enum values for CapacityReservationBillingRequestStatus

func (CapacityReservationBillingRequestStatus) Values added in v1.182.0

Values returns all known values for CapacityReservationBillingRequestStatus. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type CapacityReservationCommitmentInfo added in v1.193.0

type CapacityReservationCommitmentInfo struct {

	// The date and time at which the commitment duration expires, in the ISO8601
	// format in the UTC time zone ( YYYY-MM-DDThh:mm:ss.sssZ ). You can't decrease the
	// instance count or cancel the Capacity Reservation before this date and time.
	CommitmentEndDate *time.Time

	// The instance capacity that you committed to when you requested the future-dated
	// Capacity Reservation.
	CommittedInstanceCount *int32
	// contains filtered or unexported fields
}

Information about your commitment for a future-dated Capacity Reservation.

type CapacityReservationDeliveryPreference added in v1.193.0

type CapacityReservationDeliveryPreference string
const (
	CapacityReservationDeliveryPreferenceFixed       CapacityReservationDeliveryPreference = "fixed"
	CapacityReservationDeliveryPreferenceIncremental CapacityReservationDeliveryPreference = "incremental"
)

Enum values for CapacityReservationDeliveryPreference

func (CapacityReservationDeliveryPreference) Values added in v1.193.0

Values returns all known values for CapacityReservationDeliveryPreference. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type CapacityReservationFleet added in v1.19.0

type CapacityReservationFleet struct {

	// The strategy used by the Capacity Reservation Fleet to determine which of the
	// specified instance types to use. For more information, see For more information,
	// see [Allocation strategy]in the Amazon EC2 User Guide.
	//
	// [Allocation strategy]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/crfleet-concepts.html#allocation-strategy
	AllocationStrategy *string

	// The ARN of the Capacity Reservation Fleet.
	CapacityReservationFleetArn *string

	// The ID of the Capacity Reservation Fleet.
	CapacityReservationFleetId *string

	// The date and time at which the Capacity Reservation Fleet was created.
	CreateTime *time.Time

	// The date and time at which the Capacity Reservation Fleet expires.
	EndDate *time.Time

	// Indicates the type of instance launches that the Capacity Reservation Fleet
	// accepts. All Capacity Reservations in the Fleet inherit this instance matching
	// criteria.
	//
	// Currently, Capacity Reservation Fleets support open instance matching criteria
	// only. This means that instances that have matching attributes (instance type,
	// platform, and Availability Zone) run in the Capacity Reservations automatically.
	// Instances do not need to explicitly target a Capacity Reservation Fleet to use
	// its reserved capacity.
	InstanceMatchCriteria FleetInstanceMatchCriteria

	// Information about the instance types for which to reserve the capacity.
	InstanceTypeSpecifications []FleetCapacityReservation

	// The state of the Capacity Reservation Fleet. Possible states include:
	//
	//   - submitted - The Capacity Reservation Fleet request has been submitted and
	//   Amazon Elastic Compute Cloud is preparing to create the Capacity Reservations.
	//
	//   - modifying - The Capacity Reservation Fleet is being modified. The Fleet
	//   remains in this state until the modification is complete.
	//
	//   - active - The Capacity Reservation Fleet has fulfilled its total target
	//   capacity and it is attempting to maintain this capacity. The Fleet remains in
	//   this state until it is modified or deleted.
	//
	//   - partially_fulfilled - The Capacity Reservation Fleet has partially fulfilled
	//   its total target capacity. There is insufficient Amazon EC2 to fulfill the total
	//   target capacity. The Fleet is attempting to asynchronously fulfill its total
	//   target capacity.
	//
	//   - expiring - The Capacity Reservation Fleet has reach its end date and it is
	//   in the process of expiring. One or more of its Capacity reservations might still
	//   be active.
	//
	//   - expired - The Capacity Reservation Fleet has reach its end date. The Fleet
	//   and its Capacity Reservations are expired. The Fleet can't create new Capacity
	//   Reservations.
	//
	//   - cancelling - The Capacity Reservation Fleet is in the process of being
	//   cancelled. One or more of its Capacity reservations might still be active.
	//
	//   - cancelled - The Capacity Reservation Fleet has been manually cancelled. The
	//   Fleet and its Capacity Reservations are cancelled and the Fleet can't create new
	//   Capacity Reservations.
	//
	//   - failed - The Capacity Reservation Fleet failed to reserve capacity for the
	//   specified instance types.
	State CapacityReservationFleetState

	// The tags assigned to the Capacity Reservation Fleet.
	Tags []Tag

	// The tenancy of the Capacity Reservation Fleet. Tenancies include:
	//
	//   - default - The Capacity Reservation Fleet is created on hardware that is
	//   shared with other Amazon Web Services accounts.
	//
	//   - dedicated - The Capacity Reservation Fleet is created on single-tenant
	//   hardware that is dedicated to a single Amazon Web Services account.
	Tenancy FleetCapacityReservationTenancy

	// The capacity units that have been fulfilled.
	TotalFulfilledCapacity *float64

	// The total number of capacity units for which the Capacity Reservation Fleet
	// reserves capacity. For more information, see [Total target capacity]in the Amazon EC2 User Guide.
	//
	// [Total target capacity]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/crfleet-concepts.html#target-capacity
	TotalTargetCapacity *int32
	// contains filtered or unexported fields
}

Information about a Capacity Reservation Fleet.

type CapacityReservationFleetCancellationState added in v1.19.0

type CapacityReservationFleetCancellationState struct {

	// The ID of the Capacity Reservation Fleet that was successfully cancelled.
	CapacityReservationFleetId *string

	// The current state of the Capacity Reservation Fleet.
	CurrentFleetState CapacityReservationFleetState

	// The previous state of the Capacity Reservation Fleet.
	PreviousFleetState CapacityReservationFleetState
	// contains filtered or unexported fields
}

Describes a Capacity Reservation Fleet that was successfully cancelled.

type CapacityReservationFleetState added in v1.19.0

type CapacityReservationFleetState string
const (
	CapacityReservationFleetStateSubmitted          CapacityReservationFleetState = "submitted"
	CapacityReservationFleetStateModifying          CapacityReservationFleetState = "modifying"
	CapacityReservationFleetStateActive             CapacityReservationFleetState = "active"
	CapacityReservationFleetStatePartiallyFulfilled CapacityReservationFleetState = "partially_fulfilled"
	CapacityReservationFleetStateExpiring           CapacityReservationFleetState = "expiring"
	CapacityReservationFleetStateExpired            CapacityReservationFleetState = "expired"
	CapacityReservationFleetStateCancelling         CapacityReservationFleetState = "cancelling"
	CapacityReservationFleetStateCancelled          CapacityReservationFleetState = "cancelled"
	CapacityReservationFleetStateFailed             CapacityReservationFleetState = "failed"
)

Enum values for CapacityReservationFleetState

func (CapacityReservationFleetState) Values added in v1.19.0

Values returns all known values for CapacityReservationFleetState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type CapacityReservationGroup

type CapacityReservationGroup struct {

	// The ARN of the resource group.
	GroupArn *string

	// The ID of the Amazon Web Services account that owns the resource group.
	OwnerId *string
	// contains filtered or unexported fields
}

Describes a resource group to which a Capacity Reservation has been added.

type CapacityReservationInfo added in v1.182.0

type CapacityReservationInfo struct {

	// The Availability Zone for the Capacity Reservation.
	AvailabilityZone *string

	// The instance type for the Capacity Reservation.
	InstanceType *string

	// The tenancy of the Capacity Reservation.
	Tenancy CapacityReservationTenancy
	// contains filtered or unexported fields
}

Information about a Capacity Reservation.

type CapacityReservationInstancePlatform

type CapacityReservationInstancePlatform string
const (
	CapacityReservationInstancePlatformLinuxUnix                        CapacityReservationInstancePlatform = "Linux/UNIX"
	CapacityReservationInstancePlatformRedHatEnterpriseLinux            CapacityReservationInstancePlatform = "Red Hat Enterprise Linux"
	CapacityReservationInstancePlatformSuseLinux                        CapacityReservationInstancePlatform = "SUSE Linux"
	CapacityReservationInstancePlatformWindows                          CapacityReservationInstancePlatform = "Windows"
	CapacityReservationInstancePlatformWindowsWithSqlServer             CapacityReservationInstancePlatform = "Windows with SQL Server"
	CapacityReservationInstancePlatformWindowsWithSqlServerEnterprise   CapacityReservationInstancePlatform = "Windows with SQL Server Enterprise"
	CapacityReservationInstancePlatformWindowsWithSqlServerStandard     CapacityReservationInstancePlatform = "Windows with SQL Server Standard"
	CapacityReservationInstancePlatformWindowsWithSqlServerWeb          CapacityReservationInstancePlatform = "Windows with SQL Server Web"
	CapacityReservationInstancePlatformLinuxWithSqlServerStandard       CapacityReservationInstancePlatform = "Linux with SQL Server Standard"
	CapacityReservationInstancePlatformLinuxWithSqlServerWeb            CapacityReservationInstancePlatform = "Linux with SQL Server Web"
	CapacityReservationInstancePlatformLinuxWithSqlServerEnterprise     CapacityReservationInstancePlatform = "Linux with SQL Server Enterprise"
	CapacityReservationInstancePlatformRhelWithSqlServerStandard        CapacityReservationInstancePlatform = "RHEL with SQL Server Standard"
	CapacityReservationInstancePlatformRhelWithSqlServerEnterprise      CapacityReservationInstancePlatform = "RHEL with SQL Server Enterprise"
	CapacityReservationInstancePlatformRhelWithSqlServerWeb             CapacityReservationInstancePlatform = "RHEL with SQL Server Web"
	CapacityReservationInstancePlatformRhelWithHa                       CapacityReservationInstancePlatform = "RHEL with HA"
	CapacityReservationInstancePlatformRhelWithHaAndSqlServerStandard   CapacityReservationInstancePlatform = "RHEL with HA and SQL Server Standard"
	CapacityReservationInstancePlatformRhelWithHaAndSqlServerEnterprise CapacityReservationInstancePlatform = "RHEL with HA and SQL Server Enterprise"
	CapacityReservationInstancePlatformUbuntuProLinux                   CapacityReservationInstancePlatform = "Ubuntu Pro"
)

Enum values for CapacityReservationInstancePlatform

func (CapacityReservationInstancePlatform) Values added in v0.29.0

Values returns all known values for CapacityReservationInstancePlatform. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type CapacityReservationOptions

type CapacityReservationOptions struct {

	// Indicates whether to use unused Capacity Reservations for fulfilling On-Demand
	// capacity.
	//
	// If you specify use-capacity-reservations-first , the fleet uses unused Capacity
	// Reservations to fulfill On-Demand capacity up to the target On-Demand capacity.
	// If multiple instance pools have unused Capacity Reservations, the On-Demand
	// allocation strategy ( lowest-price or prioritized ) is applied. If the number of
	// unused Capacity Reservations is less than the On-Demand target capacity, the
	// remaining On-Demand target capacity is launched according to the On-Demand
	// allocation strategy ( lowest-price or prioritized ).
	//
	// If you do not specify a value, the fleet fulfils the On-Demand capacity
	// according to the chosen On-Demand allocation strategy.
	UsageStrategy FleetCapacityReservationUsageStrategy
	// contains filtered or unexported fields
}

Describes the strategy for using unused Capacity Reservations for fulfilling On-Demand capacity.

This strategy can only be used if the EC2 Fleet is of type instant .

For more information about Capacity Reservations, see On-Demand Capacity Reservations in the Amazon EC2 User Guide. For examples of using Capacity Reservations in an EC2 Fleet, see EC2 Fleet example configurationsin the Amazon EC2 User Guide.

type CapacityReservationOptionsRequest

type CapacityReservationOptionsRequest struct {

	// Indicates whether to use unused Capacity Reservations for fulfilling On-Demand
	// capacity.
	//
	// If you specify use-capacity-reservations-first , the fleet uses unused Capacity
	// Reservations to fulfill On-Demand capacity up to the target On-Demand capacity.
	// If multiple instance pools have unused Capacity Reservations, the On-Demand
	// allocation strategy ( lowest-price or prioritized ) is applied. If the number of
	// unused Capacity Reservations is less than the On-Demand target capacity, the
	// remaining On-Demand target capacity is launched according to the On-Demand
	// allocation strategy ( lowest-price or prioritized ).
	//
	// If you do not specify a value, the fleet fulfils the On-Demand capacity
	// according to the chosen On-Demand allocation strategy.
	UsageStrategy FleetCapacityReservationUsageStrategy
	// contains filtered or unexported fields
}

Describes the strategy for using unused Capacity Reservations for fulfilling On-Demand capacity.

This strategy can only be used if the EC2 Fleet is of type instant .

For more information about Capacity Reservations, see On-Demand Capacity Reservations in the Amazon EC2 User Guide. For examples of using Capacity Reservations in an EC2 Fleet, see EC2 Fleet example configurationsin the Amazon EC2 User Guide.

type CapacityReservationPreference

type CapacityReservationPreference string
const (
	CapacityReservationPreferenceCapacityReservationsOnly CapacityReservationPreference = "capacity-reservations-only"
	CapacityReservationPreferenceOpen                     CapacityReservationPreference = "open"
	CapacityReservationPreferenceNone                     CapacityReservationPreference = "none"
)

Enum values for CapacityReservationPreference

func (CapacityReservationPreference) Values added in v0.29.0

Values returns all known values for CapacityReservationPreference. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type CapacityReservationSpecification

type CapacityReservationSpecification struct {

	// Indicates the instance's Capacity Reservation preferences. Possible preferences
	// include:
	//
	//   - capacity-reservations-only - The instance will only run in a Capacity
	//   Reservation or Capacity Reservation group. If capacity isn't available, the
	//   instance will fail to launch.
	//
	//   - open - The instance can run in any open Capacity Reservation that has
	//   matching attributes (instance type, platform, Availability Zone, and tenancy).
	//   If capacity isn't available, the instance runs as an On-Demand Instance.
	//
	//   - none - The instance doesn't run in a Capacity Reservation even if one is
	//   available. The instance runs as an On-Demand Instance.
	CapacityReservationPreference CapacityReservationPreference

	// Information about the target Capacity Reservation or Capacity Reservation group.
	CapacityReservationTarget *CapacityReservationTarget
	// contains filtered or unexported fields
}

Describes an instance's Capacity Reservation targeting option.

Use the CapacityReservationPreference parameter to configure the instance to run as an On-Demand Instance, to run in any open Capacity Reservation that has matching attributes, or to run only in a Capacity Reservation or Capacity Reservation group. Use the CapacityReservationTarget parameter to explicitly target a specific Capacity Reservation or a Capacity Reservation group.

You can only specify CapacityReservationPreference and CapacityReservationTarget if the CapacityReservationPreference is capacity-reservations-only .

type CapacityReservationSpecificationResponse

type CapacityReservationSpecificationResponse struct {

	// Describes the instance's Capacity Reservation preferences. Possible preferences
	// include:
	//
	//   - open - The instance can run in any open Capacity Reservation that has
	//   matching attributes (instance type, platform, Availability Zone).
	//
	//   - none - The instance avoids running in a Capacity Reservation even if one is
	//   available. The instance runs in On-Demand capacity.
	CapacityReservationPreference CapacityReservationPreference

	// Information about the targeted Capacity Reservation or Capacity Reservation
	// group.
	CapacityReservationTarget *CapacityReservationTargetResponse
	// contains filtered or unexported fields
}

Describes the instance's Capacity Reservation targeting preferences. The action returns the capacityReservationPreference response element if the instance is configured to run in On-Demand capacity, or if it is configured in run in any open Capacity Reservation that has matching attributes (instance type, platform, Availability Zone). The action returns the capacityReservationTarget response element if the instance explicily targets a specific Capacity Reservation or Capacity Reservation group.

type CapacityReservationState

type CapacityReservationState string
const (
	CapacityReservationStateActive         CapacityReservationState = "active"
	CapacityReservationStateExpired        CapacityReservationState = "expired"
	CapacityReservationStateCancelled      CapacityReservationState = "cancelled"
	CapacityReservationStatePending        CapacityReservationState = "pending"
	CapacityReservationStateFailed         CapacityReservationState = "failed"
	CapacityReservationStateScheduled      CapacityReservationState = "scheduled"
	CapacityReservationStatePaymentPending CapacityReservationState = "payment-pending"
	CapacityReservationStatePaymentFailed  CapacityReservationState = "payment-failed"
	CapacityReservationStateAssessing      CapacityReservationState = "assessing"
	CapacityReservationStateDelayed        CapacityReservationState = "delayed"
	CapacityReservationStateUnsupported    CapacityReservationState = "unsupported"
)

Enum values for CapacityReservationState

func (CapacityReservationState) Values added in v0.29.0

Values returns all known values for CapacityReservationState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type CapacityReservationTarget

type CapacityReservationTarget struct {

	// The ID of the Capacity Reservation in which to run the instance.
	CapacityReservationId *string

	// The ARN of the Capacity Reservation resource group in which to run the instance.
	CapacityReservationResourceGroupArn *string
	// contains filtered or unexported fields
}

Describes a target Capacity Reservation or Capacity Reservation group.

type CapacityReservationTargetResponse

type CapacityReservationTargetResponse struct {

	// The ID of the targeted Capacity Reservation.
	CapacityReservationId *string

	// The ARN of the targeted Capacity Reservation group.
	CapacityReservationResourceGroupArn *string
	// contains filtered or unexported fields
}

Describes a target Capacity Reservation or Capacity Reservation group.

type CapacityReservationTenancy

type CapacityReservationTenancy string
const (
	CapacityReservationTenancyDefault   CapacityReservationTenancy = "default"
	CapacityReservationTenancyDedicated CapacityReservationTenancy = "dedicated"
)

Enum values for CapacityReservationTenancy

func (CapacityReservationTenancy) Values added in v0.29.0

Values returns all known values for CapacityReservationTenancy. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type CapacityReservationType added in v1.129.0

type CapacityReservationType string
const (
	CapacityReservationTypeDefault       CapacityReservationType = "default"
	CapacityReservationTypeCapacityBlock CapacityReservationType = "capacity-block"
)

Enum values for CapacityReservationType

func (CapacityReservationType) Values added in v1.129.0

Values returns all known values for CapacityReservationType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type CarrierGateway added in v0.29.0

type CarrierGateway struct {

	// The ID of the carrier gateway.
	CarrierGatewayId *string

	// The Amazon Web Services account ID of the owner of the carrier gateway.
	OwnerId *string

	// The state of the carrier gateway.
	State CarrierGatewayState

	// The tags assigned to the carrier gateway.
	Tags []Tag

	// The ID of the VPC associated with the carrier gateway.
	VpcId *string
	// contains filtered or unexported fields
}

Describes a carrier gateway.

type CarrierGatewayState added in v0.29.0

type CarrierGatewayState string
const (
	CarrierGatewayStatePending   CarrierGatewayState = "pending"
	CarrierGatewayStateAvailable CarrierGatewayState = "available"
	CarrierGatewayStateDeleting  CarrierGatewayState = "deleting"
	CarrierGatewayStateDeleted   CarrierGatewayState = "deleted"
)

Enum values for CarrierGatewayState

func (CarrierGatewayState) Values added in v0.29.0

Values returns all known values for CarrierGatewayState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type CertificateAuthentication

type CertificateAuthentication struct {

	// The ARN of the client certificate.
	ClientRootCertificateChain *string
	// contains filtered or unexported fields
}

Information about the client certificate used for authentication.

type CertificateAuthenticationRequest

type CertificateAuthenticationRequest struct {

	// The ARN of the client certificate. The certificate must be signed by a
	// certificate authority (CA) and it must be provisioned in Certificate Manager
	// (ACM).
	ClientRootCertificateChainArn *string
	// contains filtered or unexported fields
}

Information about the client certificate to be used for authentication.

type CidrAuthorizationContext

type CidrAuthorizationContext struct {

	// The plain-text authorization message for the prefix and account.
	//
	// This member is required.
	Message *string

	// The signed authorization message for the prefix and account.
	//
	// This member is required.
	Signature *string
	// contains filtered or unexported fields
}

Provides authorization for Amazon to bring a specific IP address range to a specific Amazon Web Services account using bring your own IP addresses (BYOIP). For more information, see Configuring your BYOIP address rangein the Amazon EC2 User Guide.

type CidrBlock

type CidrBlock struct {

	// The IPv4 CIDR block.
	CidrBlock *string
	// contains filtered or unexported fields
}

Describes an IPv4 CIDR block.

type ClassicLinkDnsSupport

type ClassicLinkDnsSupport struct {

	// Indicates whether ClassicLink DNS support is enabled for the VPC.
	ClassicLinkDnsSupported *bool

	// The ID of the VPC.
	VpcId *string
	// contains filtered or unexported fields
}

Deprecated.

Describes the ClassicLink DNS support status of a VPC.

type ClassicLinkInstance

type ClassicLinkInstance struct {

	// The security groups.
	Groups []GroupIdentifier

	// The ID of the instance.
	InstanceId *string

	// Any tags assigned to the instance.
	Tags []Tag

	// The ID of the VPC.
	VpcId *string
	// contains filtered or unexported fields
}

Deprecated.

Describes a linked EC2-Classic instance.

type ClassicLoadBalancer

type ClassicLoadBalancer struct {

	// The name of the load balancer.
	Name *string
	// contains filtered or unexported fields
}

Describes a Classic Load Balancer.

type ClassicLoadBalancersConfig

type ClassicLoadBalancersConfig struct {

	// One or more Classic Load Balancers.
	ClassicLoadBalancers []ClassicLoadBalancer
	// contains filtered or unexported fields
}

Describes the Classic Load Balancers to attach to a Spot Fleet. Spot Fleet registers the running Spot Instances with these Classic Load Balancers.

type ClientCertificateRevocationListStatus

type ClientCertificateRevocationListStatus struct {

	// The state of the client certificate revocation list.
	Code ClientCertificateRevocationListStatusCode

	// A message about the status of the client certificate revocation list, if
	// applicable.
	Message *string
	// contains filtered or unexported fields
}

Describes the state of a client certificate revocation list.

type ClientCertificateRevocationListStatusCode

type ClientCertificateRevocationListStatusCode string
const (
	ClientCertificateRevocationListStatusCodePending ClientCertificateRevocationListStatusCode = "pending"
	ClientCertificateRevocationListStatusCodeActive  ClientCertificateRevocationListStatusCode = "active"
)

Enum values for ClientCertificateRevocationListStatusCode

func (ClientCertificateRevocationListStatusCode) Values added in v0.29.0

Values returns all known values for ClientCertificateRevocationListStatusCode. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type ClientConnectOptions added in v0.30.0

type ClientConnectOptions struct {

	// Indicates whether client connect options are enabled. The default is false (not
	// enabled).
	Enabled *bool

	// The Amazon Resource Name (ARN) of the Lambda function used for connection
	// authorization.
	LambdaFunctionArn *string
	// contains filtered or unexported fields
}

The options for managing connection authorization for new client connections.

type ClientConnectResponseOptions added in v0.30.0

type ClientConnectResponseOptions struct {

	// Indicates whether client connect options are enabled.
	Enabled *bool

	// The Amazon Resource Name (ARN) of the Lambda function used for connection
	// authorization.
	LambdaFunctionArn *string

	// The status of any updates to the client connect options.
	Status *ClientVpnEndpointAttributeStatus
	// contains filtered or unexported fields
}

The options for managing connection authorization for new client connections.

type ClientData

type ClientData struct {

	// A user-defined comment about the disk upload.
	Comment *string

	// The time that the disk upload ends.
	UploadEnd *time.Time

	// The size of the uploaded disk image, in GiB.
	UploadSize *float64

	// The time that the disk upload starts.
	UploadStart *time.Time
	// contains filtered or unexported fields
}

Describes the client-specific data.

type ClientLoginBannerOptions added in v1.29.0

type ClientLoginBannerOptions struct {

	// Customizable text that will be displayed in a banner on Amazon Web Services
	// provided clients when a VPN session is established. UTF-8 encoded characters
	// only. Maximum of 1400 characters.
	BannerText *string

	// Enable or disable a customizable text banner that will be displayed on Amazon
	// Web Services provided clients when a VPN session is established.
	//
	// Valid values: true | false
	//
	// Default value: false
	Enabled *bool
	// contains filtered or unexported fields
}

Options for enabling a customizable text banner that will be displayed on Amazon Web Services provided clients when a VPN session is established.

type ClientLoginBannerResponseOptions added in v1.29.0

type ClientLoginBannerResponseOptions struct {

	// Customizable text that will be displayed in a banner on Amazon Web Services
	// provided clients when a VPN session is established. UTF-8 encoded characters
	// only. Maximum of 1400 characters.
	BannerText *string

	// Current state of text banner feature.
	//
	// Valid values: true | false
	Enabled *bool
	// contains filtered or unexported fields
}

Current state of options for customizable text banner that will be displayed on Amazon Web Services provided clients when a VPN session is established.

type ClientVpnAuthentication

type ClientVpnAuthentication struct {

	// Information about the Active Directory, if applicable.
	ActiveDirectory *DirectoryServiceAuthentication

	// Information about the IAM SAML identity provider, if applicable.
	FederatedAuthentication *FederatedAuthentication

	// Information about the authentication certificates, if applicable.
	MutualAuthentication *CertificateAuthentication

	// The authentication type used.
	Type ClientVpnAuthenticationType
	// contains filtered or unexported fields
}

Describes the authentication methods used by a Client VPN endpoint. For more information, see Authenticationin the Client VPN Administrator Guide.

type ClientVpnAuthenticationRequest

type ClientVpnAuthenticationRequest struct {

	// Information about the Active Directory to be used, if applicable. You must
	// provide this information if Type is directory-service-authentication .
	ActiveDirectory *DirectoryServiceAuthenticationRequest

	// Information about the IAM SAML identity provider to be used, if applicable. You
	// must provide this information if Type is federated-authentication .
	FederatedAuthentication *FederatedAuthenticationRequest

	// Information about the authentication certificates to be used, if applicable.
	// You must provide this information if Type is certificate-authentication .
	MutualAuthentication *CertificateAuthenticationRequest

	// The type of client authentication to be used.
	Type ClientVpnAuthenticationType
	// contains filtered or unexported fields
}

Describes the authentication method to be used by a Client VPN endpoint. For more information, see Authenticationin the Client VPN Administrator Guide.

type ClientVpnAuthenticationType

type ClientVpnAuthenticationType string
const (
	ClientVpnAuthenticationTypeCertificateAuthentication      ClientVpnAuthenticationType = "certificate-authentication"
	ClientVpnAuthenticationTypeDirectoryServiceAuthentication ClientVpnAuthenticationType = "directory-service-authentication"
	ClientVpnAuthenticationTypeFederatedAuthentication        ClientVpnAuthenticationType = "federated-authentication"
)

Enum values for ClientVpnAuthenticationType

func (ClientVpnAuthenticationType) Values added in v0.29.0

Values returns all known values for ClientVpnAuthenticationType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type ClientVpnAuthorizationRuleStatus

type ClientVpnAuthorizationRuleStatus struct {

	// The state of the authorization rule.
	Code ClientVpnAuthorizationRuleStatusCode

	// A message about the status of the authorization rule, if applicable.
	Message *string
	// contains filtered or unexported fields
}

Describes the state of an authorization rule.

type ClientVpnAuthorizationRuleStatusCode

type ClientVpnAuthorizationRuleStatusCode string
const (
	ClientVpnAuthorizationRuleStatusCodeAuthorizing ClientVpnAuthorizationRuleStatusCode = "authorizing"
	ClientVpnAuthorizationRuleStatusCodeActive      ClientVpnAuthorizationRuleStatusCode = "active"
	ClientVpnAuthorizationRuleStatusCodeFailed      ClientVpnAuthorizationRuleStatusCode = "failed"
	ClientVpnAuthorizationRuleStatusCodeRevoking    ClientVpnAuthorizationRuleStatusCode = "revoking"
)

Enum values for ClientVpnAuthorizationRuleStatusCode

func (ClientVpnAuthorizationRuleStatusCode) Values added in v0.29.0

Values returns all known values for ClientVpnAuthorizationRuleStatusCode. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type ClientVpnConnection

type ClientVpnConnection struct {

	// The IP address of the client.
	ClientIp *string

	// The ID of the Client VPN endpoint to which the client is connected.
	ClientVpnEndpointId *string

	// The common name associated with the client. This is either the name of the
	// client certificate, or the Active Directory user name.
	CommonName *string

	// The date and time the client connection was terminated.
	ConnectionEndTime *string

	// The date and time the client connection was established.
	ConnectionEstablishedTime *string

	// The ID of the client connection.
	ConnectionId *string

	// The number of bytes received by the client.
	EgressBytes *string

	// The number of packets received by the client.
	EgressPackets *string

	// The number of bytes sent by the client.
	IngressBytes *string

	// The number of packets sent by the client.
	IngressPackets *string

	// The statuses returned by the client connect handler for posture compliance, if
	// applicable.
	PostureComplianceStatuses []string

	// The current state of the client connection.
	Status *ClientVpnConnectionStatus

	// The current date and time.
	Timestamp *string

	// The username of the client who established the client connection. This
	// information is only provided if Active Directory client authentication is used.
	Username *string
	// contains filtered or unexported fields
}

Describes a client connection.

type ClientVpnConnectionStatus

type ClientVpnConnectionStatus struct {

	// The state of the client connection.
	Code ClientVpnConnectionStatusCode

	// A message about the status of the client connection, if applicable.
	Message *string
	// contains filtered or unexported fields
}

Describes the status of a client connection.

type ClientVpnConnectionStatusCode

type ClientVpnConnectionStatusCode string
const (
	ClientVpnConnectionStatusCodeActive            ClientVpnConnectionStatusCode = "active"
	ClientVpnConnectionStatusCodeFailedToTerminate ClientVpnConnectionStatusCode = "failed-to-terminate"
	ClientVpnConnectionStatusCodeTerminating       ClientVpnConnectionStatusCode = "terminating"
	ClientVpnConnectionStatusCodeTerminated        ClientVpnConnectionStatusCode = "terminated"
)

Enum values for ClientVpnConnectionStatusCode

func (ClientVpnConnectionStatusCode) Values added in v0.29.0

Values returns all known values for ClientVpnConnectionStatusCode. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type ClientVpnEndpoint

type ClientVpnEndpoint struct {

	// Information about the associated target networks. A target network is a subnet
	// in a VPC.
	//
	// Deprecated: This property is deprecated. To view the target networks associated
	// with a Client VPN endpoint, call DescribeClientVpnTargetNetworks and inspect the
	// clientVpnTargetNetworks response element.
	AssociatedTargetNetworks []AssociatedTargetNetwork

	// Information about the authentication method used by the Client VPN endpoint.
	AuthenticationOptions []ClientVpnAuthentication

	// The IPv4 address range, in CIDR notation, from which client IP addresses are
	// assigned.
	ClientCidrBlock *string

	// The options for managing connection authorization for new client connections.
	ClientConnectOptions *ClientConnectResponseOptions

	// Options for enabling a customizable text banner that will be displayed on
	// Amazon Web Services provided clients when a VPN session is established.
	ClientLoginBannerOptions *ClientLoginBannerResponseOptions

	// The ID of the Client VPN endpoint.
	ClientVpnEndpointId *string

	// Information about the client connection logging options for the Client VPN
	// endpoint.
	ConnectionLogOptions *ConnectionLogResponseOptions

	// The date and time the Client VPN endpoint was created.
	CreationTime *string

	// The date and time the Client VPN endpoint was deleted, if applicable.
	DeletionTime *string

	// A brief description of the endpoint.
	Description *string

	// The DNS name to be used by clients when connecting to the Client VPN endpoint.
	DnsName *string

	// Information about the DNS servers to be used for DNS resolution.
	DnsServers []string

	// The IDs of the security groups for the target network.
	SecurityGroupIds []string

	// The URL of the self-service portal.
	SelfServicePortalUrl *string

	// The ARN of the server certificate.
	ServerCertificateArn *string

	// The maximum VPN session duration time in hours.
	//
	// Valid values: 8 | 10 | 12 | 24
	//
	// Default value: 24
	SessionTimeoutHours *int32

	// Indicates whether split-tunnel is enabled in the Client VPN endpoint.
	//
	// For information about split-tunnel VPN endpoints, see [Split-Tunnel Client VPN endpoint] in the Client VPN
	// Administrator Guide.
	//
	// [Split-Tunnel Client VPN endpoint]: https://docs.aws.amazon.com/vpn/latest/clientvpn-admin/split-tunnel-vpn.html
	SplitTunnel *bool

	// The current state of the Client VPN endpoint.
	Status *ClientVpnEndpointStatus

	// Any tags assigned to the Client VPN endpoint.
	Tags []Tag

	// The transport protocol used by the Client VPN endpoint.
	TransportProtocol TransportProtocol

	// The ID of the VPC.
	VpcId *string

	// The port number for the Client VPN endpoint.
	VpnPort *int32

	// The protocol used by the VPN session.
	VpnProtocol VpnProtocol
	// contains filtered or unexported fields
}

Describes a Client VPN endpoint.

type ClientVpnEndpointAttributeStatus added in v0.30.0

type ClientVpnEndpointAttributeStatus struct {

	// The status code.
	Code ClientVpnEndpointAttributeStatusCode

	// The status message.
	Message *string
	// contains filtered or unexported fields
}

Describes the status of the Client VPN endpoint attribute.

type ClientVpnEndpointAttributeStatusCode added in v0.30.0

type ClientVpnEndpointAttributeStatusCode string
const (
	ClientVpnEndpointAttributeStatusCodeApplying ClientVpnEndpointAttributeStatusCode = "applying"
	ClientVpnEndpointAttributeStatusCodeApplied  ClientVpnEndpointAttributeStatusCode = "applied"
)

Enum values for ClientVpnEndpointAttributeStatusCode

func (ClientVpnEndpointAttributeStatusCode) Values added in v0.30.0

Values returns all known values for ClientVpnEndpointAttributeStatusCode. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type ClientVpnEndpointStatus

type ClientVpnEndpointStatus struct {

	// The state of the Client VPN endpoint. Possible states include:
	//
	//   - pending-associate - The Client VPN endpoint has been created but no target
	//   networks have been associated. The Client VPN endpoint cannot accept
	//   connections.
	//
	//   - available - The Client VPN endpoint has been created and a target network
	//   has been associated. The Client VPN endpoint can accept connections.
	//
	//   - deleting - The Client VPN endpoint is being deleted. The Client VPN endpoint
	//   cannot accept connections.
	//
	//   - deleted - The Client VPN endpoint has been deleted. The Client VPN endpoint
	//   cannot accept connections.
	Code ClientVpnEndpointStatusCode

	// A message about the status of the Client VPN endpoint.
	Message *string
	// contains filtered or unexported fields
}

Describes the state of a Client VPN endpoint.

type ClientVpnEndpointStatusCode

type ClientVpnEndpointStatusCode string
const (
	ClientVpnEndpointStatusCodePendingAssociate ClientVpnEndpointStatusCode = "pending-associate"
	ClientVpnEndpointStatusCodeAvailable        ClientVpnEndpointStatusCode = "available"
	ClientVpnEndpointStatusCodeDeleting         ClientVpnEndpointStatusCode = "deleting"
	ClientVpnEndpointStatusCodeDeleted          ClientVpnEndpointStatusCode = "deleted"
)

Enum values for ClientVpnEndpointStatusCode

func (ClientVpnEndpointStatusCode) Values added in v0.29.0

Values returns all known values for ClientVpnEndpointStatusCode. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type ClientVpnRoute

type ClientVpnRoute struct {

	// The ID of the Client VPN endpoint with which the route is associated.
	ClientVpnEndpointId *string

	// A brief description of the route.
	Description *string

	// The IPv4 address range, in CIDR notation, of the route destination.
	DestinationCidr *string

	// Indicates how the route was associated with the Client VPN endpoint. associate
	// indicates that the route was automatically added when the target network was
	// associated with the Client VPN endpoint. add-route indicates that the route was
	// manually added using the CreateClientVpnRoute action.
	Origin *string

	// The current state of the route.
	Status *ClientVpnRouteStatus

	// The ID of the subnet through which traffic is routed.
	TargetSubnet *string

	// The route type.
	Type *string
	// contains filtered or unexported fields
}

Information about a Client VPN endpoint route.

type ClientVpnRouteStatus

type ClientVpnRouteStatus struct {

	// The state of the Client VPN endpoint route.
	Code ClientVpnRouteStatusCode

	// A message about the status of the Client VPN endpoint route, if applicable.
	Message *string
	// contains filtered or unexported fields
}

Describes the state of a Client VPN endpoint route.

type ClientVpnRouteStatusCode

type ClientVpnRouteStatusCode string
const (
	ClientVpnRouteStatusCodeCreating ClientVpnRouteStatusCode = "creating"
	ClientVpnRouteStatusCodeActive   ClientVpnRouteStatusCode = "active"
	ClientVpnRouteStatusCodeFailed   ClientVpnRouteStatusCode = "failed"
	ClientVpnRouteStatusCodeDeleting ClientVpnRouteStatusCode = "deleting"
)

Enum values for ClientVpnRouteStatusCode

func (ClientVpnRouteStatusCode) Values added in v0.29.0

Values returns all known values for ClientVpnRouteStatusCode. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type CloudWatchLogOptions added in v1.53.0

type CloudWatchLogOptions struct {

	// Status of VPN tunnel logging feature. Default value is False .
	//
	// Valid values: True | False
	LogEnabled *bool

	// The Amazon Resource Name (ARN) of the CloudWatch log group to send logs to.
	LogGroupArn *string

	// Configured log format. Default format is json .
	//
	// Valid values: json | text
	LogOutputFormat *string
	// contains filtered or unexported fields
}

Options for sending VPN tunnel logs to CloudWatch.

type CloudWatchLogOptionsSpecification added in v1.53.0

type CloudWatchLogOptionsSpecification struct {

	// Enable or disable VPN tunnel logging feature. Default value is False .
	//
	// Valid values: True | False
	LogEnabled *bool

	// The Amazon Resource Name (ARN) of the CloudWatch log group to send logs to.
	LogGroupArn *string

	// Set log format. Default format is json .
	//
	// Valid values: json | text
	LogOutputFormat *string
	// contains filtered or unexported fields
}

Options for sending VPN tunnel logs to CloudWatch.

type CoipAddressUsage

type CoipAddressUsage struct {

	// The allocation ID of the address.
	AllocationId *string

	// The Amazon Web Services account ID.
	AwsAccountId *string

	// The Amazon Web Services service.
	AwsService *string

	// The customer-owned IP address.
	CoIp *string
	// contains filtered or unexported fields
}

Describes address usage for a customer-owned address pool.

type CoipCidr added in v1.55.0

type CoipCidr struct {

	//  An address range in a customer-owned IP address space.
	Cidr *string

	//  The ID of the address pool.
	CoipPoolId *string

	//  The ID of the local gateway route table.
	LocalGatewayRouteTableId *string
	// contains filtered or unexported fields
}

Information about a customer-owned IP address range.

type CoipPool

type CoipPool struct {

	// The ID of the local gateway route table.
	LocalGatewayRouteTableId *string

	// The ARN of the address pool.
	PoolArn *string

	// The address ranges of the address pool.
	PoolCidrs []string

	// The ID of the address pool.
	PoolId *string

	// The tags.
	Tags []Tag
	// contains filtered or unexported fields
}

Describes a customer-owned address pool.

type ConnectionLogOptions

type ConnectionLogOptions struct {

	// The name of the CloudWatch Logs log group. Required if connection logging is
	// enabled.
	CloudwatchLogGroup *string

	// The name of the CloudWatch Logs log stream to which the connection data is
	// published.
	CloudwatchLogStream *string

	// Indicates whether connection logging is enabled.
	Enabled *bool
	// contains filtered or unexported fields
}

Describes the client connection logging options for the Client VPN endpoint.

type ConnectionLogResponseOptions

type ConnectionLogResponseOptions struct {

	// The name of the Amazon CloudWatch Logs log group to which connection logging
	// data is published.
	CloudwatchLogGroup *string

	// The name of the Amazon CloudWatch Logs log stream to which connection logging
	// data is published.
	CloudwatchLogStream *string

	// Indicates whether client connection logging is enabled for the Client VPN
	// endpoint.
	Enabled *bool
	// contains filtered or unexported fields
}

Information about the client connection logging options for a Client VPN endpoint.

type ConnectionNotification

type ConnectionNotification struct {

	// The events for the notification. Valid values are Accept , Connect , Delete ,
	// and Reject .
	ConnectionEvents []string

	// The ARN of the SNS topic for the notification.
	ConnectionNotificationArn *string

	// The ID of the notification.
	ConnectionNotificationId *string

	// The state of the notification.
	ConnectionNotificationState ConnectionNotificationState

	// The type of notification.
	ConnectionNotificationType ConnectionNotificationType

	// The ID of the endpoint service.
	ServiceId *string

	// The Region for the endpoint service.
	ServiceRegion *string

	// The ID of the VPC endpoint.
	VpcEndpointId *string
	// contains filtered or unexported fields
}

Describes a connection notification for a VPC endpoint or VPC endpoint service.

type ConnectionNotificationState

type ConnectionNotificationState string
const (
	ConnectionNotificationStateEnabled  ConnectionNotificationState = "Enabled"
	ConnectionNotificationStateDisabled ConnectionNotificationState = "Disabled"
)

Enum values for ConnectionNotificationState

func (ConnectionNotificationState) Values added in v0.29.0

Values returns all known values for ConnectionNotificationState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type ConnectionNotificationType

type ConnectionNotificationType string
const (
	ConnectionNotificationTypeTopic ConnectionNotificationType = "Topic"
)

Enum values for ConnectionNotificationType

func (ConnectionNotificationType) Values added in v0.29.0

Values returns all known values for ConnectionNotificationType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type ConnectionTrackingConfiguration added in v1.136.0

type ConnectionTrackingConfiguration struct {

	// Timeout (in seconds) for idle TCP connections in an established state. Min: 60
	// seconds. Max: 432000 seconds (5 days). Default: 432000 seconds. Recommended:
	// Less than 432000 seconds.
	TcpEstablishedTimeout *int32

	// Timeout (in seconds) for idle UDP flows classified as streams which have seen
	// more than one request-response transaction. Min: 60 seconds. Max: 180 seconds (3
	// minutes). Default: 180 seconds.
	UdpStreamTimeout *int32

	// Timeout (in seconds) for idle UDP flows that have seen traffic only in a single
	// direction or a single request-response transaction. Min: 30 seconds. Max: 60
	// seconds. Default: 30 seconds.
	UdpTimeout *int32
	// contains filtered or unexported fields
}

A security group connection tracking configuration that enables you to set the idle timeout for connection tracking on an Elastic network interface. For more information, see Connection tracking timeoutsin the Amazon EC2 User Guide.

type ConnectionTrackingSpecification added in v1.136.0

type ConnectionTrackingSpecification struct {

	// Timeout (in seconds) for idle TCP connections in an established state. Min: 60
	// seconds. Max: 432000 seconds (5 days). Default: 432000 seconds. Recommended:
	// Less than 432000 seconds.
	TcpEstablishedTimeout *int32

	// Timeout (in seconds) for idle UDP flows classified as streams which have seen
	// more than one request-response transaction. Min: 60 seconds. Max: 180 seconds (3
	// minutes). Default: 180 seconds.
	UdpStreamTimeout *int32

	// Timeout (in seconds) for idle UDP flows that have seen traffic only in a single
	// direction or a single request-response transaction. Min: 30 seconds. Max: 60
	// seconds. Default: 30 seconds.
	UdpTimeout *int32
	// contains filtered or unexported fields
}

A security group connection tracking specification that enables you to set the idle timeout for connection tracking on an Elastic network interface. For more information, see Connection tracking timeoutsin the Amazon EC2 User Guide.

type ConnectionTrackingSpecificationRequest added in v1.136.0

type ConnectionTrackingSpecificationRequest struct {

	// Timeout (in seconds) for idle TCP connections in an established state. Min: 60
	// seconds. Max: 432000 seconds (5 days). Default: 432000 seconds. Recommended:
	// Less than 432000 seconds.
	TcpEstablishedTimeout *int32

	// Timeout (in seconds) for idle UDP flows classified as streams which have seen
	// more than one request-response transaction. Min: 60 seconds. Max: 180 seconds (3
	// minutes). Default: 180 seconds.
	UdpStreamTimeout *int32

	// Timeout (in seconds) for idle UDP flows that have seen traffic only in a single
	// direction or a single request-response transaction. Min: 30 seconds. Max: 60
	// seconds. Default: 30 seconds.
	UdpTimeout *int32
	// contains filtered or unexported fields
}

A security group connection tracking specification request that enables you to set the idle timeout for connection tracking on an Elastic network interface. For more information, see Connection tracking timeoutsin the Amazon EC2 User Guide.

type ConnectionTrackingSpecificationResponse added in v1.136.0

type ConnectionTrackingSpecificationResponse struct {

	// Timeout (in seconds) for idle TCP connections in an established state. Min: 60
	// seconds. Max: 432000 seconds (5 days). Default: 432000 seconds. Recommended:
	// Less than 432000 seconds.
	TcpEstablishedTimeout *int32

	// Timeout (in seconds) for idle UDP flows classified as streams which have seen
	// more than one request-response transaction. Min: 60 seconds. Max: 180 seconds (3
	// minutes). Default: 180 seconds.
	UdpStreamTimeout *int32

	// Timeout (in seconds) for idle UDP flows that have seen traffic only in a single
	// direction or a single request-response transaction. Min: 30 seconds. Max: 60
	// seconds. Default: 30 seconds.
	UdpTimeout *int32
	// contains filtered or unexported fields
}

A security group connection tracking specification response that enables you to set the idle timeout for connection tracking on an Elastic network interface. For more information, see Connection tracking timeoutsin the Amazon EC2 User Guide.

type ConnectivityType added in v1.10.0

type ConnectivityType string
const (
	ConnectivityTypePrivate ConnectivityType = "private"
	ConnectivityTypePublic  ConnectivityType = "public"
)

Enum values for ConnectivityType

func (ConnectivityType) Values added in v1.10.0

Values returns all known values for ConnectivityType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type ContainerFormat

type ContainerFormat string
const (
	ContainerFormatOva ContainerFormat = "ova"
)

Enum values for ContainerFormat

func (ContainerFormat) Values added in v0.29.0

func (ContainerFormat) Values() []ContainerFormat

Values returns all known values for ContainerFormat. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type ConversionTask

type ConversionTask struct {

	// The ID of the conversion task.
	ConversionTaskId *string

	// The time when the task expires. If the upload isn't complete before the
	// expiration time, we automatically cancel the task.
	ExpirationTime *string

	// If the task is for importing an instance, this contains information about the
	// import instance task.
	ImportInstance *ImportInstanceTaskDetails

	// If the task is for importing a volume, this contains information about the
	// import volume task.
	ImportVolume *ImportVolumeTaskDetails

	// The state of the conversion task.
	State ConversionTaskState

	// The status message related to the conversion task.
	StatusMessage *string

	// Any tags assigned to the task.
	Tags []Tag
	// contains filtered or unexported fields
}

Describes a conversion task.

type ConversionTaskState

type ConversionTaskState string
const (
	ConversionTaskStateActive     ConversionTaskState = "active"
	ConversionTaskStateCancelling ConversionTaskState = "cancelling"
	ConversionTaskStateCancelled  ConversionTaskState = "cancelled"
	ConversionTaskStateCompleted  ConversionTaskState = "completed"
)

Enum values for ConversionTaskState

func (ConversionTaskState) Values added in v0.29.0

Values returns all known values for ConversionTaskState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type CopyTagsFromSource

type CopyTagsFromSource string
const (
	CopyTagsFromSourceVolume CopyTagsFromSource = "volume"
)

Enum values for CopyTagsFromSource

func (CopyTagsFromSource) Values added in v0.29.0

Values returns all known values for CopyTagsFromSource. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type CpuManufacturer added in v1.21.0

type CpuManufacturer string
const (
	CpuManufacturerIntel             CpuManufacturer = "intel"
	CpuManufacturerAmd               CpuManufacturer = "amd"
	CpuManufacturerAmazonWebServices CpuManufacturer = "amazon-web-services"
	CpuManufacturerApple             CpuManufacturer = "apple"
)

Enum values for CpuManufacturer

func (CpuManufacturer) Values added in v1.21.0

func (CpuManufacturer) Values() []CpuManufacturer

Values returns all known values for CpuManufacturer. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type CpuOptions

type CpuOptions struct {

	// Indicates whether the instance is enabled for AMD SEV-SNP. For more
	// information, see [AMD SEV-SNP].
	//
	// [AMD SEV-SNP]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/sev-snp.html
	AmdSevSnp AmdSevSnpSpecification

	// The number of CPU cores for the instance.
	CoreCount *int32

	// The number of threads per CPU core.
	ThreadsPerCore *int32
	// contains filtered or unexported fields
}

The CPU options for the instance.

type CpuOptionsRequest

type CpuOptionsRequest struct {

	// Indicates whether to enable the instance for AMD SEV-SNP. AMD SEV-SNP is
	// supported with M6a, R6a, and C6a instance types only. For more information, see [AMD SEV-SNP]
	// .
	//
	// [AMD SEV-SNP]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/sev-snp.html
	AmdSevSnp AmdSevSnpSpecification

	// The number of CPU cores for the instance.
	CoreCount *int32

	// The number of threads per CPU core. To disable multithreading for the instance,
	// specify a value of 1 . Otherwise, specify the default value of 2 .
	ThreadsPerCore *int32
	// contains filtered or unexported fields
}

The CPU options for the instance. Both the core count and threads per core must be specified in the request.

type CpuPerformanceFactor added in v1.192.0

type CpuPerformanceFactor struct {

	// Specify an instance family to use as the baseline reference for CPU
	// performance. All instance types that match your specified attributes will be
	// compared against the CPU performance of the referenced instance family,
	// regardless of CPU manufacturer or architecture differences.
	//
	// Currently, only one instance family can be specified in the list.
	References []PerformanceFactorReference
	// contains filtered or unexported fields
}

The CPU performance to consider, using an instance family as the baseline reference.

type CpuPerformanceFactorRequest added in v1.192.0

type CpuPerformanceFactorRequest struct {

	// Specify an instance family to use as the baseline reference for CPU
	// performance. All instance types that match your specified attributes will be
	// compared against the CPU performance of the referenced instance family,
	// regardless of CPU manufacturer or architecture differences.
	//
	// Currently, only one instance family can be specified in the list.
	References []PerformanceFactorReferenceRequest
	// contains filtered or unexported fields
}

The CPU performance to consider, using an instance family as the baseline reference.

type CreateFleetError

type CreateFleetError struct {

	// The error code that indicates why the instance could not be launched. For more
	// information about error codes, see [Error codes].
	//
	// [Error codes]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/errors-overview.html
	ErrorCode *string

	// The error message that describes why the instance could not be launched. For
	// more information about error messages, see [Error codes].
	//
	// [Error codes]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/errors-overview.html
	ErrorMessage *string

	// The launch templates and overrides that were used for launching the instances.
	// The values that you specify in the Overrides replace the values in the launch
	// template.
	LaunchTemplateAndOverrides *LaunchTemplateAndOverridesResponse

	// Indicates if the instance that could not be launched was a Spot Instance or
	// On-Demand Instance.
	Lifecycle InstanceLifecycle
	// contains filtered or unexported fields
}

Describes the instances that could not be launched by the fleet.

type CreateFleetInstance

type CreateFleetInstance struct {

	// The IDs of the instances.
	InstanceIds []string

	// The instance type.
	InstanceType InstanceType

	// The launch templates and overrides that were used for launching the instances.
	// The values that you specify in the Overrides replace the values in the launch
	// template.
	LaunchTemplateAndOverrides *LaunchTemplateAndOverridesResponse

	// Indicates if the instance that was launched is a Spot Instance or On-Demand
	// Instance.
	Lifecycle InstanceLifecycle

	// The value is windows for Windows instances in an EC2 Fleet. Otherwise, the
	// value is blank.
	Platform PlatformValues
	// contains filtered or unexported fields
}

Describes the instances that were launched by the fleet.

type CreateTransitGatewayConnectRequestOptions added in v0.31.0

type CreateTransitGatewayConnectRequestOptions struct {

	// The tunnel protocol.
	//
	// This member is required.
	Protocol ProtocolValue
	// contains filtered or unexported fields
}

The options for a Connect attachment.

type CreateTransitGatewayMulticastDomainRequestOptions added in v0.31.0

type CreateTransitGatewayMulticastDomainRequestOptions struct {

	// Indicates whether to automatically accept cross-account subnet associations
	// that are associated with the transit gateway multicast domain.
	AutoAcceptSharedAssociations AutoAcceptSharedAssociationsValue

	// Specify whether to enable Internet Group Management Protocol (IGMP) version 2
	// for the transit gateway multicast domain.
	Igmpv2Support Igmpv2SupportValue

	// Specify whether to enable support for statically configuring multicast group
	// sources for a domain.
	StaticSourcesSupport StaticSourcesSupportValue
	// contains filtered or unexported fields
}

The options for the transit gateway multicast domain.

type CreateTransitGatewayPeeringAttachmentRequestOptions added in v1.48.0

type CreateTransitGatewayPeeringAttachmentRequestOptions struct {

	// Indicates whether dynamic routing is enabled or disabled.
	DynamicRouting DynamicRoutingValue
	// contains filtered or unexported fields
}

Describes whether dynamic routing is enabled or disabled for the transit gateway peering request.

type CreateTransitGatewayVpcAttachmentRequestOptions

type CreateTransitGatewayVpcAttachmentRequestOptions struct {

	// Enable or disable support for appliance mode. If enabled, a traffic flow
	// between a source and destination uses the same Availability Zone for the VPC
	// attachment for the lifetime of that flow. The default is disable .
	ApplianceModeSupport ApplianceModeSupportValue

	// Enable or disable DNS support. The default is enable .
	DnsSupport DnsSupportValue

	// Enable or disable IPv6 support. The default is disable .
	Ipv6Support Ipv6SupportValue

	// Enables you to reference a security group across VPCs attached to a transit
	// gateway to simplify security group management.
	//
	// This option is set to enable by default. However, at the transit gateway level
	// the default is set to disable .
	//
	// For more information about security group referencing, see [Security group referencing] in the Amazon Web
	// Services Transit Gateways Guide.
	//
	// [Security group referencing]: https://docs.aws.amazon.com/vpc/latest/tgw/tgw-vpc-attachments.html#vpc-attachment-security
	SecurityGroupReferencingSupport SecurityGroupReferencingSupportValue
	// contains filtered or unexported fields
}

Describes the options for a VPC attachment.

type CreateVerifiedAccessEndpointCidrOptions added in v1.195.0

type CreateVerifiedAccessEndpointCidrOptions struct {

	// The CIDR.
	Cidr *string

	// The port ranges.
	PortRanges []CreateVerifiedAccessEndpointPortRange

	// The protocol.
	Protocol VerifiedAccessEndpointProtocol

	// The IDs of the subnets.
	SubnetIds []string
	// contains filtered or unexported fields
}

Describes the CIDR options for a Verified Access endpoint.

type CreateVerifiedAccessEndpointEniOptions added in v1.74.0

type CreateVerifiedAccessEndpointEniOptions struct {

	// The ID of the network interface.
	NetworkInterfaceId *string

	// The IP port number.
	Port *int32

	// The port ranges.
	PortRanges []CreateVerifiedAccessEndpointPortRange

	// The IP protocol.
	Protocol VerifiedAccessEndpointProtocol
	// contains filtered or unexported fields
}

Describes the network interface options when creating an Amazon Web Services Verified Access endpoint using the network-interface type.

type CreateVerifiedAccessEndpointLoadBalancerOptions added in v1.74.0

type CreateVerifiedAccessEndpointLoadBalancerOptions struct {

	// The ARN of the load balancer.
	LoadBalancerArn *string

	// The IP port number.
	Port *int32

	// The port ranges.
	PortRanges []CreateVerifiedAccessEndpointPortRange

	// The IP protocol.
	Protocol VerifiedAccessEndpointProtocol

	// The IDs of the subnets.
	SubnetIds []string
	// contains filtered or unexported fields
}

Describes the load balancer options when creating an Amazon Web Services Verified Access endpoint using the load-balancer type.

type CreateVerifiedAccessEndpointPortRange added in v1.195.0

type CreateVerifiedAccessEndpointPortRange struct {

	// The start of the port range.
	FromPort *int32

	// The end of the port range.
	ToPort *int32
	// contains filtered or unexported fields
}

Describes the port range for a Verified Access endpoint.

type CreateVerifiedAccessEndpointRdsOptions added in v1.195.0

type CreateVerifiedAccessEndpointRdsOptions struct {

	// The port.
	Port *int32

	// The protocol.
	Protocol VerifiedAccessEndpointProtocol

	// The ARN of the DB cluster.
	RdsDbClusterArn *string

	// The ARN of the RDS instance.
	RdsDbInstanceArn *string

	// The ARN of the RDS proxy.
	RdsDbProxyArn *string

	// The RDS endpoint.
	RdsEndpoint *string

	// The IDs of the subnets.
	SubnetIds []string
	// contains filtered or unexported fields
}

Describes the RDS options for a Verified Access endpoint.

type CreateVerifiedAccessNativeApplicationOidcOptions added in v1.195.0

type CreateVerifiedAccessNativeApplicationOidcOptions struct {

	// The authorization endpoint of the IdP.
	AuthorizationEndpoint *string

	// The OAuth 2.0 client identifier.
	ClientId *string

	// The OAuth 2.0 client secret.
	ClientSecret *string

	// The OIDC issuer identifier of the IdP.
	Issuer *string

	// The public signing key endpoint.
	PublicSigningKeyEndpoint *string

	// The set of user claims to be requested from the IdP.
	Scope *string

	// The token endpoint of the IdP.
	TokenEndpoint *string

	// The user info endpoint of the IdP.
	UserInfoEndpoint *string
	// contains filtered or unexported fields
}

Describes the OpenID Connect (OIDC) options.

type CreateVerifiedAccessTrustProviderDeviceOptions added in v1.74.0

type CreateVerifiedAccessTrustProviderDeviceOptions struct {

	//  The URL Amazon Web Services Verified Access will use to verify the
	// authenticity of the device tokens.
	PublicSigningKeyUrl *string

	// The ID of the tenant application with the device-identity provider.
	TenantId *string
	// contains filtered or unexported fields
}

Describes the options when creating an Amazon Web Services Verified Access trust provider using the device type.

type CreateVerifiedAccessTrustProviderOidcOptions added in v1.74.0

type CreateVerifiedAccessTrustProviderOidcOptions struct {

	// The OIDC authorization endpoint.
	AuthorizationEndpoint *string

	// The client identifier.
	ClientId *string

	// The client secret.
	ClientSecret *string

	// The OIDC issuer.
	Issuer *string

	// OpenID Connect (OIDC) scopes are used by an application during authentication
	// to authorize access to a user's details. Each scope returns a specific set of
	// user attributes.
	Scope *string

	// The OIDC token endpoint.
	TokenEndpoint *string

	// The OIDC user info endpoint.
	UserInfoEndpoint *string
	// contains filtered or unexported fields
}

Describes the options when creating an Amazon Web Services Verified Access trust provider using the user type.

type CreateVolumePermission

type CreateVolumePermission struct {

	// The group to be added or removed. The possible value is all .
	Group PermissionGroup

	// The ID of the Amazon Web Services account to be added or removed.
	UserId *string
	// contains filtered or unexported fields
}

Describes the user or group to be added or removed from the list of create volume permissions for a volume.

type CreateVolumePermissionModifications

type CreateVolumePermissionModifications struct {

	// Adds the specified Amazon Web Services account ID or group to the list.
	Add []CreateVolumePermission

	// Removes the specified Amazon Web Services account ID or group from the list.
	Remove []CreateVolumePermission
	// contains filtered or unexported fields
}

Describes modifications to the list of create volume permissions for a volume.

type CreditSpecification

type CreditSpecification struct {

	// The credit option for CPU usage of a T instance.
	//
	// Valid values: standard | unlimited
	CpuCredits *string
	// contains filtered or unexported fields
}

Describes the credit option for CPU usage of a T instance.

type CreditSpecificationRequest

type CreditSpecificationRequest struct {

	// The credit option for CPU usage of a T instance.
	//
	// Valid values: standard | unlimited
	//
	// This member is required.
	CpuCredits *string
	// contains filtered or unexported fields
}

The credit option for CPU usage of a T instance.

type CurrencyCodeValues

type CurrencyCodeValues string
const (
	CurrencyCodeValuesUsd CurrencyCodeValues = "USD"
)

Enum values for CurrencyCodeValues

func (CurrencyCodeValues) Values added in v0.29.0

Values returns all known values for CurrencyCodeValues. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type CustomerGateway

type CustomerGateway struct {

	// The customer gateway device's Border Gateway Protocol (BGP) Autonomous System
	// Number (ASN).
	//
	// Valid values: 1 to 2,147,483,647
	BgpAsn *string

	// The customer gateway device's Border Gateway Protocol (BGP) Autonomous System
	// Number (ASN).
	//
	// Valid values: 2,147,483,648 to 4,294,967,295
	BgpAsnExtended *string

	// The Amazon Resource Name (ARN) for the customer gateway certificate.
	CertificateArn *string

	// The ID of the customer gateway.
	CustomerGatewayId *string

	// The name of customer gateway device.
	DeviceName *string

	//  IPv4 address for the customer gateway device's outside interface. The address
	// must be static. If OutsideIpAddressType in your VPN connection options is set
	// to PrivateIpv4 , you can use an RFC6598 or RFC1918 private IPv4 address. If
	// OutsideIpAddressType is set to PublicIpv4 , you can use a public IPv4 address.
	IpAddress *string

	// The current state of the customer gateway ( pending | available | deleting |
	// deleted ).
	State *string

	// Any tags assigned to the customer gateway.
	Tags []Tag

	// The type of VPN connection the customer gateway supports ( ipsec.1 ).
	Type *string
	// contains filtered or unexported fields
}

Describes a customer gateway.

type DataQuery added in v1.73.0

type DataQuery struct {

	// The Region or Availability Zone that's the target for the data query. For
	// example, eu-north-1 .
	Destination *string

	// A user-defined ID associated with a data query that's returned in the
	// dataResponse identifying the query. For example, if you set the Id to MyQuery01
	// in the query, the dataResponse identifies the query as MyQuery01 .
	Id *string

	// The metric used for the network performance request.
	Metric MetricType

	// The aggregation period used for the data query.
	Period PeriodType

	// The Region or Availability Zone that's the source for the data query. For
	// example, us-east-1 .
	Source *string

	// The metric data aggregation period, p50 , between the specified startDate and
	// endDate . For example, a metric of five_minutes is the median of all the data
	// points gathered within those five minutes. p50 is the only supported metric.
	Statistic StatisticType
	// contains filtered or unexported fields
}

A query used for retrieving network health data.

type DataResponse added in v1.73.0

type DataResponse struct {

	// The Region or Availability Zone that's the destination for the data query. For
	// example, eu-west-1 .
	Destination *string

	// The ID passed in the DataQuery .
	Id *string

	// The metric used for the network performance request.
	Metric MetricType

	// A list of MetricPoint objects.
	MetricPoints []MetricPoint

	// The period used for the network performance request.
	Period PeriodType

	// The Region or Availability Zone that's the source for the data query. For
	// example, us-east-1 .
	Source *string

	// The statistic used for the network performance request.
	Statistic StatisticType
	// contains filtered or unexported fields
}

The response to a DataQuery .

type DatafeedSubscriptionState

type DatafeedSubscriptionState string
const (
	DatafeedSubscriptionStateActive   DatafeedSubscriptionState = "Active"
	DatafeedSubscriptionStateInactive DatafeedSubscriptionState = "Inactive"
)

Enum values for DatafeedSubscriptionState

func (DatafeedSubscriptionState) Values added in v0.29.0

Values returns all known values for DatafeedSubscriptionState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type DeclarativePoliciesReport added in v1.195.0

type DeclarativePoliciesReport struct {

	// The time when the report generation ended.
	EndTime *time.Time

	// The ID of the report.
	ReportId *string

	// The name of the Amazon S3 bucket where the report is located.
	S3Bucket *string

	// The prefix for your S3 object.
	S3Prefix *string

	// The time when the report generation started.
	StartTime *time.Time

	// The current status of the report.
	Status ReportState

	// Any tags assigned to the report.
	Tags []Tag

	// The root ID, organizational unit ID, or account ID.
	//
	// Format:
	//
	//   - For root: r-ab12
	//
	//   - For OU: ou-ab12-cdef1234
	//
	//   - For account: 123456789012
	TargetId *string
	// contains filtered or unexported fields
}

Describes the metadata of the account status report.

type DefaultInstanceMetadataEndpointState added in v1.153.0

type DefaultInstanceMetadataEndpointState string
const (
	DefaultInstanceMetadataEndpointStateDisabled     DefaultInstanceMetadataEndpointState = "disabled"
	DefaultInstanceMetadataEndpointStateEnabled      DefaultInstanceMetadataEndpointState = "enabled"
	DefaultInstanceMetadataEndpointStateNoPreference DefaultInstanceMetadataEndpointState = "no-preference"
)

Enum values for DefaultInstanceMetadataEndpointState

func (DefaultInstanceMetadataEndpointState) Values added in v1.153.0

Values returns all known values for DefaultInstanceMetadataEndpointState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type DefaultInstanceMetadataTagsState added in v1.153.0

type DefaultInstanceMetadataTagsState string
const (
	DefaultInstanceMetadataTagsStateDisabled     DefaultInstanceMetadataTagsState = "disabled"
	DefaultInstanceMetadataTagsStateEnabled      DefaultInstanceMetadataTagsState = "enabled"
	DefaultInstanceMetadataTagsStateNoPreference DefaultInstanceMetadataTagsState = "no-preference"
)

Enum values for DefaultInstanceMetadataTagsState

func (DefaultInstanceMetadataTagsState) Values added in v1.153.0

Values returns all known values for DefaultInstanceMetadataTagsState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type DefaultRouteTableAssociationValue

type DefaultRouteTableAssociationValue string
const (
	DefaultRouteTableAssociationValueEnable  DefaultRouteTableAssociationValue = "enable"
	DefaultRouteTableAssociationValueDisable DefaultRouteTableAssociationValue = "disable"
)

Enum values for DefaultRouteTableAssociationValue

func (DefaultRouteTableAssociationValue) Values added in v0.29.0

Values returns all known values for DefaultRouteTableAssociationValue. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type DefaultRouteTablePropagationValue

type DefaultRouteTablePropagationValue string
const (
	DefaultRouteTablePropagationValueEnable  DefaultRouteTablePropagationValue = "enable"
	DefaultRouteTablePropagationValueDisable DefaultRouteTablePropagationValue = "disable"
)

Enum values for DefaultRouteTablePropagationValue

func (DefaultRouteTablePropagationValue) Values added in v0.29.0

Values returns all known values for DefaultRouteTablePropagationValue. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type DefaultTargetCapacityType

type DefaultTargetCapacityType string
const (
	DefaultTargetCapacityTypeSpot          DefaultTargetCapacityType = "spot"
	DefaultTargetCapacityTypeOnDemand      DefaultTargetCapacityType = "on-demand"
	DefaultTargetCapacityTypeCapacityBlock DefaultTargetCapacityType = "capacity-block"
)

Enum values for DefaultTargetCapacityType

func (DefaultTargetCapacityType) Values added in v0.29.0

Values returns all known values for DefaultTargetCapacityType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type DeleteFleetError

type DeleteFleetError struct {

	// The error code.
	Code DeleteFleetErrorCode

	// The description for the error code.
	Message *string
	// contains filtered or unexported fields
}

Describes an EC2 Fleet error.

type DeleteFleetErrorCode

type DeleteFleetErrorCode string
const (
	DeleteFleetErrorCodeFleetIdDoesNotExist      DeleteFleetErrorCode = "fleetIdDoesNotExist"
	DeleteFleetErrorCodeFleetIdMalformed         DeleteFleetErrorCode = "fleetIdMalformed"
	DeleteFleetErrorCodeFleetNotInDeletableState DeleteFleetErrorCode = "fleetNotInDeletableState"
	DeleteFleetErrorCodeUnexpectedError          DeleteFleetErrorCode = "unexpectedError"
)

Enum values for DeleteFleetErrorCode

func (DeleteFleetErrorCode) Values added in v0.29.0

Values returns all known values for DeleteFleetErrorCode. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type DeleteFleetErrorItem

type DeleteFleetErrorItem struct {

	// The error.
	Error *DeleteFleetError

	// The ID of the EC2 Fleet.
	FleetId *string
	// contains filtered or unexported fields
}

Describes an EC2 Fleet that was not successfully deleted.

type DeleteFleetSuccessItem

type DeleteFleetSuccessItem struct {

	// The current state of the EC2 Fleet.
	CurrentFleetState FleetStateCode

	// The ID of the EC2 Fleet.
	FleetId *string

	// The previous state of the EC2 Fleet.
	PreviousFleetState FleetStateCode
	// contains filtered or unexported fields
}

Describes an EC2 Fleet that was successfully deleted.

type DeleteLaunchTemplateVersionsResponseErrorItem

type DeleteLaunchTemplateVersionsResponseErrorItem struct {

	// The ID of the launch template.
	LaunchTemplateId *string

	// The name of the launch template.
	LaunchTemplateName *string

	// Information about the error.
	ResponseError *ResponseError

	// The version number of the launch template.
	VersionNumber *int64
	// contains filtered or unexported fields
}

Describes a launch template version that could not be deleted.

type DeleteLaunchTemplateVersionsResponseSuccessItem

type DeleteLaunchTemplateVersionsResponseSuccessItem struct {

	// The ID of the launch template.
	LaunchTemplateId *string

	// The name of the launch template.
	LaunchTemplateName *string

	// The version number of the launch template.
	VersionNumber *int64
	// contains filtered or unexported fields
}

Describes a launch template version that was successfully deleted.

type DeleteQueuedReservedInstancesError

type DeleteQueuedReservedInstancesError struct {

	// The error code.
	Code DeleteQueuedReservedInstancesErrorCode

	// The error message.
	Message *string
	// contains filtered or unexported fields
}

Describes the error for a Reserved Instance whose queued purchase could not be deleted.

type DeleteQueuedReservedInstancesErrorCode

type DeleteQueuedReservedInstancesErrorCode string
const (
	DeleteQueuedReservedInstancesErrorCodeReservedInstancesIdInvalid        DeleteQueuedReservedInstancesErrorCode = "reserved-instances-id-invalid"
	DeleteQueuedReservedInstancesErrorCodeReservedInstancesNotInQueuedState DeleteQueuedReservedInstancesErrorCode = "reserved-instances-not-in-queued-state"
	DeleteQueuedReservedInstancesErrorCodeUnexpectedError                   DeleteQueuedReservedInstancesErrorCode = "unexpected-error"
)

Enum values for DeleteQueuedReservedInstancesErrorCode

func (DeleteQueuedReservedInstancesErrorCode) Values added in v0.29.0

Values returns all known values for DeleteQueuedReservedInstancesErrorCode. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type DeregisterInstanceTagAttributeRequest

type DeregisterInstanceTagAttributeRequest struct {

	// Indicates whether to deregister all tag keys in the current Region. Specify
	// false to deregister all tag keys.
	IncludeAllTagsOfInstance *bool

	// Information about the tag keys to deregister.
	InstanceTagKeys []string
	// contains filtered or unexported fields
}

Information about the tag keys to deregister for the current Region. You can either specify individual tag keys or deregister all tag keys in the current Region. You must specify either IncludeAllTagsOfInstance or InstanceTagKeys in the request

type DescribeFastLaunchImagesSuccessItem added in v1.28.0

type DescribeFastLaunchImagesSuccessItem struct {

	// The image ID that identifies the Windows fast launch enabled image.
	ImageId *string

	// The launch template that the Windows fast launch enabled AMI uses when it
	// launches Windows instances from pre-provisioned snapshots.
	LaunchTemplate *FastLaunchLaunchTemplateSpecificationResponse

	// The maximum number of instances that Amazon EC2 can launch at the same time to
	// create pre-provisioned snapshots for Windows fast launch.
	MaxParallelLaunches *int32

	// The owner ID for the Windows fast launch enabled AMI.
	OwnerId *string

	// The resource type that Amazon EC2 uses for pre-provisioning the Windows AMI.
	// Supported values include: snapshot .
	ResourceType FastLaunchResourceType

	// A group of parameters that are used for pre-provisioning the associated Windows
	// AMI using snapshots.
	SnapshotConfiguration *FastLaunchSnapshotConfigurationResponse

	// The current state of Windows fast launch for the specified Windows AMI.
	State FastLaunchStateCode

	// The reason that Windows fast launch for the AMI changed to the current state.
	StateTransitionReason *string

	// The time that Windows fast launch for the AMI changed to the current state.
	StateTransitionTime *time.Time
	// contains filtered or unexported fields
}

Describe details about a Windows image with Windows fast launch enabled that meets the requested criteria. Criteria are defined by the DescribeFastLaunchImages action filters.

type DescribeFastSnapshotRestoreSuccessItem

type DescribeFastSnapshotRestoreSuccessItem struct {

	// The Availability Zone.
	AvailabilityZone *string

	// The time at which fast snapshot restores entered the disabled state.
	DisabledTime *time.Time

	// The time at which fast snapshot restores entered the disabling state.
	DisablingTime *time.Time

	// The time at which fast snapshot restores entered the enabled state.
	EnabledTime *time.Time

	// The time at which fast snapshot restores entered the enabling state.
	EnablingTime *time.Time

	// The time at which fast snapshot restores entered the optimizing state.
	OptimizingTime *time.Time

	// The Amazon Web Services owner alias that enabled fast snapshot restores on the
	// snapshot. This is intended for future use.
	OwnerAlias *string

	// The ID of the Amazon Web Services account that enabled fast snapshot restores
	// on the snapshot.
	OwnerId *string

	// The ID of the snapshot.
	SnapshotId *string

	// The state of fast snapshot restores.
	State FastSnapshotRestoreStateCode

	// The reason for the state transition. The possible values are as follows:
	//
	//   - Client.UserInitiated - The state successfully transitioned to enabling or
	//   disabling .
	//
	//   - Client.UserInitiated - Lifecycle state transition - The state successfully
	//   transitioned to optimizing , enabled , or disabled .
	StateTransitionReason *string
	// contains filtered or unexported fields
}

Describes fast snapshot restores for a snapshot.

type DescribeFleetError

type DescribeFleetError struct {

	// The error code that indicates why the instance could not be launched. For more
	// information about error codes, see [Error codes].
	//
	// [Error codes]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/errors-overview.html.html
	ErrorCode *string

	// The error message that describes why the instance could not be launched. For
	// more information about error messages, see [Error codes].
	//
	// [Error codes]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/errors-overview.html.html
	ErrorMessage *string

	// The launch templates and overrides that were used for launching the instances.
	// The values that you specify in the Overrides replace the values in the launch
	// template.
	LaunchTemplateAndOverrides *LaunchTemplateAndOverridesResponse

	// Indicates if the instance that could not be launched was a Spot Instance or
	// On-Demand Instance.
	Lifecycle InstanceLifecycle
	// contains filtered or unexported fields
}

Describes the instances that could not be launched by the fleet.

type DescribeFleetsInstances

type DescribeFleetsInstances struct {

	// The IDs of the instances.
	InstanceIds []string

	// The instance type.
	InstanceType InstanceType

	// The launch templates and overrides that were used for launching the instances.
	// The values that you specify in the Overrides replace the values in the launch
	// template.
	LaunchTemplateAndOverrides *LaunchTemplateAndOverridesResponse

	// Indicates if the instance that was launched is a Spot Instance or On-Demand
	// Instance.
	Lifecycle InstanceLifecycle

	// The value is windows for Windows instances in an EC2 Fleet. Otherwise, the
	// value is blank.
	Platform PlatformValues
	// contains filtered or unexported fields
}

Describes the instances that were launched by the fleet.

type DestinationFileFormat added in v1.20.0

type DestinationFileFormat string
const (
	DestinationFileFormatPlainText DestinationFileFormat = "plain-text"
	DestinationFileFormatParquet   DestinationFileFormat = "parquet"
)

Enum values for DestinationFileFormat

func (DestinationFileFormat) Values added in v1.20.0

Values returns all known values for DestinationFileFormat. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type DestinationOptionsRequest added in v1.20.0

type DestinationOptionsRequest struct {

	// The format for the flow log. The default is plain-text .
	FileFormat DestinationFileFormat

	// Indicates whether to use Hive-compatible prefixes for flow logs stored in
	// Amazon S3. The default is false .
	HiveCompatiblePartitions *bool

	// Indicates whether to partition the flow log per hour. This reduces the cost and
	// response time for queries. The default is false .
	PerHourPartition *bool
	// contains filtered or unexported fields
}

Describes the destination options for a flow log.

type DestinationOptionsResponse added in v1.20.0

type DestinationOptionsResponse struct {

	// The format for the flow log.
	FileFormat DestinationFileFormat

	// Indicates whether to use Hive-compatible prefixes for flow logs stored in
	// Amazon S3.
	HiveCompatiblePartitions *bool

	// Indicates whether to partition the flow log per hour.
	PerHourPartition *bool
	// contains filtered or unexported fields
}

Describes the destination options for a flow log.

type DeviceOptions added in v1.74.0

type DeviceOptions struct {

	//  The URL Amazon Web Services Verified Access will use to verify the
	// authenticity of the device tokens.
	PublicSigningKeyUrl *string

	// The ID of the tenant application with the device-identity provider.
	TenantId *string
	// contains filtered or unexported fields
}

Describes the options for an Amazon Web Services Verified Access device-identity based trust provider.

type DeviceTrustProviderType added in v1.74.0

type DeviceTrustProviderType string
const (
	DeviceTrustProviderTypeJamf        DeviceTrustProviderType = "jamf"
	DeviceTrustProviderTypeCrowdstrike DeviceTrustProviderType = "crowdstrike"
	DeviceTrustProviderTypeJumpcloud   DeviceTrustProviderType = "jumpcloud"
)

Enum values for DeviceTrustProviderType

func (DeviceTrustProviderType) Values added in v1.74.0

Values returns all known values for DeviceTrustProviderType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type DeviceType

type DeviceType string
const (
	DeviceTypeEbs           DeviceType = "ebs"
	DeviceTypeInstanceStore DeviceType = "instance-store"
)

Enum values for DeviceType

func (DeviceType) Values added in v0.29.0

func (DeviceType) Values() []DeviceType

Values returns all known values for DeviceType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type DhcpConfiguration

type DhcpConfiguration struct {

	// The name of a DHCP option.
	Key *string

	// The values for the DHCP option.
	Values []AttributeValue
	// contains filtered or unexported fields
}

Describes a DHCP configuration option.

type DhcpOptions

type DhcpOptions struct {

	// The DHCP options in the set.
	DhcpConfigurations []DhcpConfiguration

	// The ID of the set of DHCP options.
	DhcpOptionsId *string

	// The ID of the Amazon Web Services account that owns the DHCP options set.
	OwnerId *string

	// Any tags assigned to the DHCP options set.
	Tags []Tag
	// contains filtered or unexported fields
}

The set of DHCP options.

type DirectoryServiceAuthentication

type DirectoryServiceAuthentication struct {

	// The ID of the Active Directory used for authentication.
	DirectoryId *string
	// contains filtered or unexported fields
}

Describes an Active Directory.

type DirectoryServiceAuthenticationRequest

type DirectoryServiceAuthenticationRequest struct {

	// The ID of the Active Directory to be used for authentication.
	DirectoryId *string
	// contains filtered or unexported fields
}

Describes the Active Directory to be used for client authentication.

type DisableFastSnapshotRestoreErrorItem

type DisableFastSnapshotRestoreErrorItem struct {

	// The errors.
	FastSnapshotRestoreStateErrors []DisableFastSnapshotRestoreStateErrorItem

	// The ID of the snapshot.
	SnapshotId *string
	// contains filtered or unexported fields
}

Contains information about the errors that occurred when disabling fast snapshot restores.

type DisableFastSnapshotRestoreStateError

type DisableFastSnapshotRestoreStateError struct {

	// The error code.
	Code *string

	// The error message.
	Message *string
	// contains filtered or unexported fields
}

Describes an error that occurred when disabling fast snapshot restores.

type DisableFastSnapshotRestoreStateErrorItem

type DisableFastSnapshotRestoreStateErrorItem struct {

	// The Availability Zone.
	AvailabilityZone *string

	// The error.
	Error *DisableFastSnapshotRestoreStateError
	// contains filtered or unexported fields
}

Contains information about an error that occurred when disabling fast snapshot restores.

type DisableFastSnapshotRestoreSuccessItem

type DisableFastSnapshotRestoreSuccessItem struct {

	// The Availability Zone.
	AvailabilityZone *string

	// The time at which fast snapshot restores entered the disabled state.
	DisabledTime *time.Time

	// The time at which fast snapshot restores entered the disabling state.
	DisablingTime *time.Time

	// The time at which fast snapshot restores entered the enabled state.
	EnabledTime *time.Time

	// The time at which fast snapshot restores entered the enabling state.
	EnablingTime *time.Time

	// The time at which fast snapshot restores entered the optimizing state.
	OptimizingTime *time.Time

	// The Amazon Web Services owner alias that enabled fast snapshot restores on the
	// snapshot. This is intended for future use.
	OwnerAlias *string

	// The ID of the Amazon Web Services account that enabled fast snapshot restores
	// on the snapshot.
	OwnerId *string

	// The ID of the snapshot.
	SnapshotId *string

	// The state of fast snapshot restores for the snapshot.
	State FastSnapshotRestoreStateCode

	// The reason for the state transition. The possible values are as follows:
	//
	//   - Client.UserInitiated - The state successfully transitioned to enabling or
	//   disabling .
	//
	//   - Client.UserInitiated - Lifecycle state transition - The state successfully
	//   transitioned to optimizing , enabled , or disabled .
	StateTransitionReason *string
	// contains filtered or unexported fields
}

Describes fast snapshot restores that were successfully disabled.

type DiskImage

type DiskImage struct {

	// A description of the disk image.
	Description *string

	// Information about the disk image.
	Image *DiskImageDetail

	// Information about the volume.
	Volume *VolumeDetail
	// contains filtered or unexported fields
}

Describes a disk image.

type DiskImageDescription

type DiskImageDescription struct {

	// The checksum computed for the disk image.
	Checksum *string

	// The disk image format.
	Format DiskImageFormat

	// A presigned URL for the import manifest stored in Amazon S3. For information
	// about creating a presigned URL for an Amazon S3 object, read the "Query String
	// Request Authentication Alternative" section of the [Authenticating REST Requests]topic in the Amazon Simple
	// Storage Service Developer Guide.
	//
	// For information about the import manifest referenced by this API action, see [VM Import Manifest].
	//
	// [Authenticating REST Requests]: https://docs.aws.amazon.com/AmazonS3/latest/dev/RESTAuthentication.html
	// [VM Import Manifest]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/manifest.html
	ImportManifestUrl *string

	// The size of the disk image, in GiB.
	Size *int64
	// contains filtered or unexported fields
}

Describes a disk image.

type DiskImageDetail

type DiskImageDetail struct {

	// The size of the disk image, in GiB.
	//
	// This member is required.
	Bytes *int64

	// The disk image format.
	//
	// This member is required.
	Format DiskImageFormat

	// A presigned URL for the import manifest stored in Amazon S3 and presented here
	// as an Amazon S3 presigned URL. For information about creating a presigned URL
	// for an Amazon S3 object, read the "Query String Request Authentication
	// Alternative" section of the [Authenticating REST Requests]topic in the Amazon Simple Storage Service
	// Developer Guide.
	//
	// For information about the import manifest referenced by this API action, see [VM Import Manifest].
	//
	// [Authenticating REST Requests]: https://docs.aws.amazon.com/AmazonS3/latest/dev/RESTAuthentication.html
	// [VM Import Manifest]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/manifest.html
	//
	// This member is required.
	ImportManifestUrl *string
	// contains filtered or unexported fields
}

Describes a disk image.

type DiskImageFormat

type DiskImageFormat string
const (
	DiskImageFormatVmdk DiskImageFormat = "VMDK"
	DiskImageFormatRaw  DiskImageFormat = "RAW"
	DiskImageFormatVhd  DiskImageFormat = "VHD"
)

Enum values for DiskImageFormat

func (DiskImageFormat) Values added in v0.29.0

func (DiskImageFormat) Values() []DiskImageFormat

Values returns all known values for DiskImageFormat. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type DiskImageVolumeDescription

type DiskImageVolumeDescription struct {

	// The volume identifier.
	Id *string

	// The size of the volume, in GiB.
	Size *int64
	// contains filtered or unexported fields
}

Describes a disk image volume.

type DiskInfo

type DiskInfo struct {

	// The number of disks with this configuration.
	Count *int32

	// The size of the disk in GB.
	SizeInGB *int64

	// The type of disk.
	Type DiskType
	// contains filtered or unexported fields
}

Describes a disk.

type DiskType

type DiskType string
const (
	DiskTypeHdd DiskType = "hdd"
	DiskTypeSsd DiskType = "ssd"
)

Enum values for DiskType

func (DiskType) Values added in v0.29.0

func (DiskType) Values() []DiskType

Values returns all known values for DiskType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type DnsEntry

type DnsEntry struct {

	// The DNS name.
	DnsName *string

	// The ID of the private hosted zone.
	HostedZoneId *string
	// contains filtered or unexported fields
}

Describes a DNS entry.

type DnsNameState

type DnsNameState string
const (
	DnsNameStatePendingVerification DnsNameState = "pendingVerification"
	DnsNameStateVerified            DnsNameState = "verified"
	DnsNameStateFailed              DnsNameState = "failed"
)

Enum values for DnsNameState

func (DnsNameState) Values added in v0.29.0

func (DnsNameState) Values() []DnsNameState

Values returns all known values for DnsNameState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type DnsOptions added in v1.42.0

type DnsOptions struct {

	// The DNS records created for the endpoint.
	DnsRecordIpType DnsRecordIpType

	// Indicates whether to enable private DNS only for inbound endpoints.
	PrivateDnsOnlyForInboundResolverEndpoint *bool
	// contains filtered or unexported fields
}

Describes the DNS options for an endpoint.

type DnsOptionsSpecification added in v1.42.0

type DnsOptionsSpecification struct {

	// The DNS records created for the endpoint.
	DnsRecordIpType DnsRecordIpType

	// Indicates whether to enable private DNS only for inbound endpoints. This option
	// is available only for services that support both gateway and interface
	// endpoints. It routes traffic that originates from the VPC to the gateway
	// endpoint and traffic that originates from on-premises to the interface endpoint.
	PrivateDnsOnlyForInboundResolverEndpoint *bool
	// contains filtered or unexported fields
}

Describes the DNS options for an endpoint.

type DnsRecordIpType added in v1.42.0

type DnsRecordIpType string
const (
	DnsRecordIpTypeIpv4           DnsRecordIpType = "ipv4"
	DnsRecordIpTypeDualstack      DnsRecordIpType = "dualstack"
	DnsRecordIpTypeIpv6           DnsRecordIpType = "ipv6"
	DnsRecordIpTypeServiceDefined DnsRecordIpType = "service-defined"
)

Enum values for DnsRecordIpType

func (DnsRecordIpType) Values added in v1.42.0

func (DnsRecordIpType) Values() []DnsRecordIpType

Values returns all known values for DnsRecordIpType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type DnsServersOptionsModifyStructure

type DnsServersOptionsModifyStructure struct {

	// The IPv4 address range, in CIDR notation, of the DNS servers to be used. You
	// can specify up to two DNS servers. Ensure that the DNS servers can be reached by
	// the clients. The specified values overwrite the existing values.
	CustomDnsServers []string

	// Indicates whether DNS servers should be used. Specify False to delete the
	// existing DNS servers.
	Enabled *bool
	// contains filtered or unexported fields
}

Information about the DNS server to be used.

type DnsSupportValue

type DnsSupportValue string
const (
	DnsSupportValueEnable  DnsSupportValue = "enable"
	DnsSupportValueDisable DnsSupportValue = "disable"
)

Enum values for DnsSupportValue

func (DnsSupportValue) Values added in v0.29.0

func (DnsSupportValue) Values() []DnsSupportValue

Values returns all known values for DnsSupportValue. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type DomainType

type DomainType string
const (
	DomainTypeVpc      DomainType = "vpc"
	DomainTypeStandard DomainType = "standard"
)

Enum values for DomainType

func (DomainType) Values added in v0.29.0

func (DomainType) Values() []DomainType

Values returns all known values for DomainType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type DynamicRoutingValue added in v1.48.0

type DynamicRoutingValue string
const (
	DynamicRoutingValueEnable  DynamicRoutingValue = "enable"
	DynamicRoutingValueDisable DynamicRoutingValue = "disable"
)

Enum values for DynamicRoutingValue

func (DynamicRoutingValue) Values added in v1.48.0

Values returns all known values for DynamicRoutingValue. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type EbsBlockDevice

type EbsBlockDevice struct {

	// Indicates whether the EBS volume is deleted on instance termination. For more
	// information, see [Preserving Amazon EBS volumes on instance termination]in the Amazon EC2 User Guide.
	//
	// [Preserving Amazon EBS volumes on instance termination]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/terminating-instances.html#preserving-volumes-on-termination
	DeleteOnTermination *bool

	// Indicates whether the encryption state of an EBS volume is changed while being
	// restored from a backing snapshot. The effect of setting the encryption state to
	// true depends on the volume origin (new or from a snapshot), starting encryption
	// state, ownership, and whether encryption by default is enabled. For more
	// information, see [Amazon EBS encryption]in the Amazon EBS User Guide.
	//
	// In no case can you remove encryption from an encrypted volume.
	//
	// Encrypted volumes can only be attached to instances that support Amazon EBS
	// encryption. For more information, see [Supported instance types].
	//
	// This parameter is not returned by DescribeImageAttribute.
	//
	// For CreateImage and RegisterImage, whether you can include this parameter, and the allowed values
	// differ depending on the type of block device mapping you are creating.
	//
	//   - If you are creating a block device mapping for a new (empty) volume, you
	//   can include this parameter, and specify either true for an encrypted volume,
	//   or false for an unencrypted volume. If you omit this parameter, it defaults to
	//   false (unencrypted).
	//
	//   - If you are creating a block device mapping from an existing encrypted or
	//   unencrypted snapshot, you must omit this parameter. If you include this
	//   parameter, the request will fail, regardless of the value that you specify.
	//
	//   - If you are creating a block device mapping from an existing unencrypted
	//   volume, you can include this parameter, but you must specify false . If you
	//   specify true , the request will fail. In this case, we recommend that you omit
	//   the parameter.
	//
	//   - If you are creating a block device mapping from an existing encrypted
	//   volume, you can include this parameter, and specify either true or false .
	//   However, if you specify false , the parameter is ignored and the block device
	//   mapping is always encrypted. In this case, we recommend that you omit the
	//   parameter.
	//
	// [Amazon EBS encryption]: https://docs.aws.amazon.com/ebs/latest/userguide/ebs-encryption.html#encryption-parameters
	// [Supported instance types]: https://docs.aws.amazon.com/ebs/latest/userguide/ebs-encryption-requirements.html#ebs-encryption_supported_instances
	Encrypted *bool

	// The number of I/O operations per second (IOPS). For gp3 , io1 , and io2
	// volumes, this represents the number of IOPS that are provisioned for the volume.
	// For gp2 volumes, this represents the baseline performance of the volume and the
	// rate at which the volume accumulates I/O credits for bursting.
	//
	// The following are the supported values for each volume type:
	//
	//   - gp3 : 3,000 - 16,000 IOPS
	//
	//   - io1 : 100 - 64,000 IOPS
	//
	//   - io2 : 100 - 256,000 IOPS
	//
	// For io2 volumes, you can achieve up to 256,000 IOPS on [instances built on the Nitro System]. On other instances,
	// you can achieve performance up to 32,000 IOPS.
	//
	// This parameter is required for io1 and io2 volumes. The default for gp3 volumes
	// is 3,000 IOPS.
	//
	// [instances built on the Nitro System]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#ec2-nitro-instances
	Iops *int32

	// Identifier (key ID, key alias, key ARN, or alias ARN) of the customer managed
	// KMS key to use for EBS encryption.
	//
	// This parameter is only supported on BlockDeviceMapping objects called by [RunInstances], [RequestSpotFleet],
	// and [RequestSpotInstances].
	//
	// [RequestSpotInstances]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RequestSpotInstances.html
	// [RunInstances]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html
	// [RequestSpotFleet]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RequestSpotFleet.html
	KmsKeyId *string

	// The ARN of the Outpost on which the snapshot is stored.
	//
	// This parameter is not supported when using [CreateImage].
	//
	// [CreateImage]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateImage.html
	OutpostArn *string

	// The ID of the snapshot.
	SnapshotId *string

	// The throughput that the volume supports, in MiB/s.
	//
	// This parameter is valid only for gp3 volumes.
	//
	// Valid Range: Minimum value of 125. Maximum value of 1000.
	Throughput *int32

	// The size of the volume, in GiBs. You must specify either a snapshot ID or a
	// volume size. If you specify a snapshot, the default is the snapshot size. You
	// can specify a volume size that is equal to or larger than the snapshot size.
	//
	// The following are the supported sizes for each volume type:
	//
	//   - gp2 and gp3 : 1 - 16,384 GiB
	//
	//   - io1 : 4 - 16,384 GiB
	//
	//   - io2 : 4 - 65,536 GiB
	//
	//   - st1 and sc1 : 125 - 16,384 GiB
	//
	//   - standard : 1 - 1024 GiB
	VolumeSize *int32

	// The volume type. For more information, see [Amazon EBS volume types] in the Amazon EBS User Guide.
	//
	// [Amazon EBS volume types]: https://docs.aws.amazon.com/ebs/latest/userguide/ebs-volume-types.html
	VolumeType VolumeType
	// contains filtered or unexported fields
}

Describes a block device for an EBS volume.

type EbsEncryptionSupport

type EbsEncryptionSupport string
const (
	EbsEncryptionSupportUnsupported EbsEncryptionSupport = "unsupported"
	EbsEncryptionSupportSupported   EbsEncryptionSupport = "supported"
)

Enum values for EbsEncryptionSupport

func (EbsEncryptionSupport) Values added in v0.29.0

Values returns all known values for EbsEncryptionSupport. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type EbsInfo

type EbsInfo struct {

	// Describes the optimized EBS performance for the instance type.
	EbsOptimizedInfo *EbsOptimizedInfo

	// Indicates whether the instance type is Amazon EBS-optimized. For more
	// information, see [Amazon EBS-optimized instances]in Amazon EC2 User Guide.
	//
	// [Amazon EBS-optimized instances]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSOptimized.html
	EbsOptimizedSupport EbsOptimizedSupport

	// Indicates whether Amazon EBS encryption is supported.
	EncryptionSupport EbsEncryptionSupport

	// Indicates whether non-volatile memory express (NVMe) is supported.
	NvmeSupport EbsNvmeSupport
	// contains filtered or unexported fields
}

Describes the Amazon EBS features supported by the instance type.

type EbsInstanceBlockDevice

type EbsInstanceBlockDevice struct {

	// The ARN of the Amazon ECS or Fargate task to which the volume is attached.
	AssociatedResource *string

	// The time stamp when the attachment initiated.
	AttachTime *time.Time

	// Indicates whether the volume is deleted on instance termination.
	DeleteOnTermination *bool

	// The service provider that manages the EBS volume.
	Operator *OperatorResponse

	// The attachment state.
	Status AttachmentStatus

	// The ID of the EBS volume.
	VolumeId *string

	// The ID of the Amazon Web Services account that owns the volume.
	//
	// This parameter is returned only for volumes that are attached to Fargate tasks.
	VolumeOwnerId *string
	// contains filtered or unexported fields
}

Describes a parameter used to set up an EBS volume in a block device mapping.

type EbsInstanceBlockDeviceSpecification

type EbsInstanceBlockDeviceSpecification struct {

	// Indicates whether the volume is deleted on instance termination.
	DeleteOnTermination *bool

	// The ID of the EBS volume.
	VolumeId *string
	// contains filtered or unexported fields
}

Describes information used to set up an EBS volume specified in a block device mapping.

type EbsNvmeSupport

type EbsNvmeSupport string
const (
	EbsNvmeSupportUnsupported EbsNvmeSupport = "unsupported"
	EbsNvmeSupportSupported   EbsNvmeSupport = "supported"
	EbsNvmeSupportRequired    EbsNvmeSupport = "required"
)

Enum values for EbsNvmeSupport

func (EbsNvmeSupport) Values added in v0.29.0

func (EbsNvmeSupport) Values() []EbsNvmeSupport

Values returns all known values for EbsNvmeSupport. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type EbsOptimizedInfo

type EbsOptimizedInfo struct {

	// The baseline bandwidth performance for an EBS-optimized instance type, in Mbps.
	BaselineBandwidthInMbps *int32

	// The baseline input/output storage operations per seconds for an EBS-optimized
	// instance type.
	BaselineIops *int32

	// The baseline throughput performance for an EBS-optimized instance type, in MB/s.
	BaselineThroughputInMBps *float64

	// The maximum bandwidth performance for an EBS-optimized instance type, in Mbps.
	MaximumBandwidthInMbps *int32

	// The maximum input/output storage operations per second for an EBS-optimized
	// instance type.
	MaximumIops *int32

	// The maximum throughput performance for an EBS-optimized instance type, in MB/s.
	MaximumThroughputInMBps *float64
	// contains filtered or unexported fields
}

Describes the optimized EBS performance for supported instance types.

type EbsOptimizedSupport

type EbsOptimizedSupport string
const (
	EbsOptimizedSupportUnsupported EbsOptimizedSupport = "unsupported"
	EbsOptimizedSupportSupported   EbsOptimizedSupport = "supported"
	EbsOptimizedSupportDefault     EbsOptimizedSupport = "default"
)

Enum values for EbsOptimizedSupport

func (EbsOptimizedSupport) Values added in v0.29.0

Values returns all known values for EbsOptimizedSupport. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type EbsStatusDetails added in v1.176.0

type EbsStatusDetails struct {

	// The date and time when the attached EBS status check failed.
	ImpairedSince *time.Time

	// The name of the attached EBS status check.
	Name StatusName

	// The result of the attached EBS status check.
	Status StatusType
	// contains filtered or unexported fields
}

Describes the attached EBS status check for an instance.

type EbsStatusSummary added in v1.176.0

type EbsStatusSummary struct {

	// Details about the attached EBS status check for an instance.
	Details []EbsStatusDetails

	// The current status.
	Status SummaryStatus
	// contains filtered or unexported fields
}

Provides a summary of the attached EBS volume status for an instance.

type Ec2InstanceConnectEndpoint added in v1.100.0

type Ec2InstanceConnectEndpoint struct {

	// The Availability Zone of the EC2 Instance Connect Endpoint.
	AvailabilityZone *string

	// The date and time that the EC2 Instance Connect Endpoint was created.
	CreatedAt *time.Time

	// The DNS name of the EC2 Instance Connect Endpoint.
	DnsName *string

	//
	FipsDnsName *string

	// The Amazon Resource Name (ARN) of the EC2 Instance Connect Endpoint.
	InstanceConnectEndpointArn *string

	// The ID of the EC2 Instance Connect Endpoint.
	InstanceConnectEndpointId *string

	// The ID of the elastic network interface that Amazon EC2 automatically created
	// when creating the EC2 Instance Connect Endpoint.
	NetworkInterfaceIds []string

	// The ID of the Amazon Web Services account that created the EC2 Instance Connect
	// Endpoint.
	OwnerId *string

	// Indicates whether your client's IP address is preserved as the source. The
	// value is true or false .
	//
	//   - If true , your client's IP address is used when you connect to a resource.
	//
	//   - If false , the elastic network interface IP address is used when you connect
	//   to a resource.
	//
	// Default: true
	PreserveClientIp *bool

	// The security groups associated with the endpoint. If you didn't specify a
	// security group, the default security group for your VPC is associated with the
	// endpoint.
	SecurityGroupIds []string

	// The current state of the EC2 Instance Connect Endpoint.
	State Ec2InstanceConnectEndpointState

	// The message for the current state of the EC2 Instance Connect Endpoint. Can
	// include a failure message.
	StateMessage *string

	// The ID of the subnet in which the EC2 Instance Connect Endpoint was created.
	SubnetId *string

	// The tags assigned to the EC2 Instance Connect Endpoint.
	Tags []Tag

	// The ID of the VPC in which the EC2 Instance Connect Endpoint was created.
	VpcId *string
	// contains filtered or unexported fields
}

The EC2 Instance Connect Endpoint.

type Ec2InstanceConnectEndpointState added in v1.100.0

type Ec2InstanceConnectEndpointState string
const (
	Ec2InstanceConnectEndpointStateCreateInProgress Ec2InstanceConnectEndpointState = "create-in-progress"
	Ec2InstanceConnectEndpointStateCreateComplete   Ec2InstanceConnectEndpointState = "create-complete"
	Ec2InstanceConnectEndpointStateCreateFailed     Ec2InstanceConnectEndpointState = "create-failed"
	Ec2InstanceConnectEndpointStateDeleteInProgress Ec2InstanceConnectEndpointState = "delete-in-progress"
	Ec2InstanceConnectEndpointStateDeleteComplete   Ec2InstanceConnectEndpointState = "delete-complete"
	Ec2InstanceConnectEndpointStateDeleteFailed     Ec2InstanceConnectEndpointState = "delete-failed"
)

Enum values for Ec2InstanceConnectEndpointState

func (Ec2InstanceConnectEndpointState) Values added in v1.100.0

Values returns all known values for Ec2InstanceConnectEndpointState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type EfaInfo added in v1.3.0

type EfaInfo struct {

	// The maximum number of Elastic Fabric Adapters for the instance type.
	MaximumEfaInterfaces *int32
	// contains filtered or unexported fields
}

Describes the Elastic Fabric Adapters for the instance type.

type EgressOnlyInternetGateway

type EgressOnlyInternetGateway struct {

	// Information about the attachment of the egress-only internet gateway.
	Attachments []InternetGatewayAttachment

	// The ID of the egress-only internet gateway.
	EgressOnlyInternetGatewayId *string

	// The tags assigned to the egress-only internet gateway.
	Tags []Tag
	// contains filtered or unexported fields
}

Describes an egress-only internet gateway.

type EkPubKeyFormat added in v1.160.0

type EkPubKeyFormat string
const (
	EkPubKeyFormatDer  EkPubKeyFormat = "der"
	EkPubKeyFormatTpmt EkPubKeyFormat = "tpmt"
)

Enum values for EkPubKeyFormat

func (EkPubKeyFormat) Values added in v1.160.0

func (EkPubKeyFormat) Values() []EkPubKeyFormat

Values returns all known values for EkPubKeyFormat. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type EkPubKeyType added in v1.160.0

type EkPubKeyType string
const (
	EkPubKeyTypeRsa2048    EkPubKeyType = "rsa-2048"
	EkPubKeyTypeEccSecP384 EkPubKeyType = "ecc-sec-p384"
)

Enum values for EkPubKeyType

func (EkPubKeyType) Values added in v1.160.0

func (EkPubKeyType) Values() []EkPubKeyType

Values returns all known values for EkPubKeyType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type ElasticGpuAssociation

type ElasticGpuAssociation struct {

	// The ID of the association.
	ElasticGpuAssociationId *string

	// The state of the association between the instance and the Elastic Graphics
	// accelerator.
	ElasticGpuAssociationState *string

	// The time the Elastic Graphics accelerator was associated with the instance.
	ElasticGpuAssociationTime *string

	// The ID of the Elastic Graphics accelerator.
	ElasticGpuId *string
	// contains filtered or unexported fields
}

Amazon Elastic Graphics reached end of life on January 8, 2024.

Describes the association between an instance and an Elastic Graphics accelerator.

type ElasticGpuHealth

type ElasticGpuHealth struct {

	// The health status.
	Status ElasticGpuStatus
	// contains filtered or unexported fields
}

Amazon Elastic Graphics reached end of life on January 8, 2024.

Describes the status of an Elastic Graphics accelerator.

type ElasticGpuSpecification

type ElasticGpuSpecification struct {

	// The type of Elastic Graphics accelerator.
	//
	// This member is required.
	Type *string
	// contains filtered or unexported fields
}

Amazon Elastic Graphics reached end of life on January 8, 2024.

A specification for an Elastic Graphics accelerator.

type ElasticGpuSpecificationResponse

type ElasticGpuSpecificationResponse struct {

	// Deprecated.
	//
	// Amazon Elastic Graphics reached end of life on January 8, 2024. For workloads
	// that require graphics acceleration, we recommend that you use Amazon EC2 G4ad,
	// G4dn, or G5 instances.
	Type *string
	// contains filtered or unexported fields
}

Deprecated.

Amazon Elastic Graphics reached end of life on January 8, 2024. For workloads that require graphics acceleration, we recommend that you use Amazon EC2 G4ad, G4dn, or G5 instances.

type ElasticGpuState

type ElasticGpuState string
const (
	ElasticGpuStateAttached ElasticGpuState = "ATTACHED"
)

Enum values for ElasticGpuState

func (ElasticGpuState) Values added in v0.29.0

func (ElasticGpuState) Values() []ElasticGpuState

Values returns all known values for ElasticGpuState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type ElasticGpuStatus

type ElasticGpuStatus string
const (
	ElasticGpuStatusOk       ElasticGpuStatus = "OK"
	ElasticGpuStatusImpaired ElasticGpuStatus = "IMPAIRED"
)

Enum values for ElasticGpuStatus

func (ElasticGpuStatus) Values added in v0.29.0

Values returns all known values for ElasticGpuStatus. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type ElasticGpus

type ElasticGpus struct {

	// The Availability Zone in the which the Elastic Graphics accelerator resides.
	AvailabilityZone *string

	// The status of the Elastic Graphics accelerator.
	ElasticGpuHealth *ElasticGpuHealth

	// The ID of the Elastic Graphics accelerator.
	ElasticGpuId *string

	// The state of the Elastic Graphics accelerator.
	ElasticGpuState ElasticGpuState

	// The type of Elastic Graphics accelerator.
	ElasticGpuType *string

	// The ID of the instance to which the Elastic Graphics accelerator is attached.
	InstanceId *string

	// The tags assigned to the Elastic Graphics accelerator.
	Tags []Tag
	// contains filtered or unexported fields
}

Amazon Elastic Graphics reached end of life on January 8, 2024.

Describes an Elastic Graphics accelerator.

type ElasticInferenceAccelerator

type ElasticInferenceAccelerator struct {

	//  The type of elastic inference accelerator. The possible values are eia1.medium
	// , eia1.large , eia1.xlarge , eia2.medium , eia2.large , and eia2.xlarge .
	//
	// This member is required.
	Type *string

	//  The number of elastic inference accelerators to attach to the instance.
	//
	// Default: 1
	Count *int32
	// contains filtered or unexported fields
}

Amazon Elastic Inference is no longer available.

Describes an elastic inference accelerator.

type ElasticInferenceAcceleratorAssociation

type ElasticInferenceAcceleratorAssociation struct {

	//  The Amazon Resource Name (ARN) of the elastic inference accelerator.
	ElasticInferenceAcceleratorArn *string

	//  The ID of the association.
	ElasticInferenceAcceleratorAssociationId *string

	//  The state of the elastic inference accelerator.
	ElasticInferenceAcceleratorAssociationState *string

	//  The time at which the elastic inference accelerator is associated with an
	// instance.
	ElasticInferenceAcceleratorAssociationTime *time.Time
	// contains filtered or unexported fields
}

Amazon Elastic Inference is no longer available.

Describes the association between an instance and an elastic inference accelerator.

type EnaSrdSpecification added in v1.73.0

type EnaSrdSpecification struct {

	// Indicates whether ENA Express is enabled for the network interface.
	EnaSrdEnabled *bool

	// Configures ENA Express for UDP network traffic.
	EnaSrdUdpSpecification *EnaSrdUdpSpecification
	// contains filtered or unexported fields
}

ENA Express uses Amazon Web Services Scalable Reliable Datagram (SRD) technology to increase the maximum bandwidth used per stream and minimize tail latency of network traffic between EC2 instances. With ENA Express, you can communicate between two EC2 instances in the same subnet within the same account, or in different accounts. Both sending and receiving instances must have ENA Express enabled.

To improve the reliability of network packet delivery, ENA Express reorders network packets on the receiving end by default. However, some UDP-based applications are designed to handle network packets that are out of order to reduce the overhead for packet delivery at the network layer. When ENA Express is enabled, you can specify whether UDP network traffic uses it.

type EnaSrdSpecificationRequest added in v1.132.0

type EnaSrdSpecificationRequest struct {

	// Specifies whether ENA Express is enabled for the network interface when you
	// launch an instance from your launch template.
	EnaSrdEnabled *bool

	// Contains ENA Express settings for UDP network traffic in your launch template.
	EnaSrdUdpSpecification *EnaSrdUdpSpecificationRequest
	// contains filtered or unexported fields
}

Launch instances with ENA Express settings configured from your launch template.

type EnaSrdUdpSpecification added in v1.73.0

type EnaSrdUdpSpecification struct {

	// Indicates whether UDP traffic to and from the instance uses ENA Express. To
	// specify this setting, you must first enable ENA Express.
	EnaSrdUdpEnabled *bool
	// contains filtered or unexported fields
}

ENA Express is compatible with both TCP and UDP transport protocols. When it's enabled, TCP traffic automatically uses it. However, some UDP-based applications are designed to handle network packets that are out of order, without a need for retransmission, such as live video broadcasting or other near-real-time applications. For UDP traffic, you can specify whether to use ENA Express, based on your application environment needs.

type EnaSrdUdpSpecificationRequest added in v1.132.0

type EnaSrdUdpSpecificationRequest struct {

	// Indicates whether UDP traffic uses ENA Express for your instance. To ensure
	// that UDP traffic can use ENA Express when you launch an instance, you must also
	// set EnaSrdEnabled in the EnaSrdSpecificationRequest to true in your launch
	// template.
	EnaSrdUdpEnabled *bool
	// contains filtered or unexported fields
}

Configures ENA Express for UDP network traffic from your launch template.

type EnaSupport

type EnaSupport string
const (
	EnaSupportUnsupported EnaSupport = "unsupported"
	EnaSupportSupported   EnaSupport = "supported"
	EnaSupportRequired    EnaSupport = "required"
)

Enum values for EnaSupport

func (EnaSupport) Values added in v0.29.0

func (EnaSupport) Values() []EnaSupport

Values returns all known values for EnaSupport. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type EnableFastSnapshotRestoreErrorItem

type EnableFastSnapshotRestoreErrorItem struct {

	// The errors.
	FastSnapshotRestoreStateErrors []EnableFastSnapshotRestoreStateErrorItem

	// The ID of the snapshot.
	SnapshotId *string
	// contains filtered or unexported fields
}

Contains information about the errors that occurred when enabling fast snapshot restores.

type EnableFastSnapshotRestoreStateError

type EnableFastSnapshotRestoreStateError struct {

	// The error code.
	Code *string

	// The error message.
	Message *string
	// contains filtered or unexported fields
}

Describes an error that occurred when enabling fast snapshot restores.

type EnableFastSnapshotRestoreStateErrorItem

type EnableFastSnapshotRestoreStateErrorItem struct {

	// The Availability Zone.
	AvailabilityZone *string

	// The error.
	Error *EnableFastSnapshotRestoreStateError
	// contains filtered or unexported fields
}

Contains information about an error that occurred when enabling fast snapshot restores.

type EnableFastSnapshotRestoreSuccessItem

type EnableFastSnapshotRestoreSuccessItem struct {

	// The Availability Zone.
	AvailabilityZone *string

	// The time at which fast snapshot restores entered the disabled state.
	DisabledTime *time.Time

	// The time at which fast snapshot restores entered the disabling state.
	DisablingTime *time.Time

	// The time at which fast snapshot restores entered the enabled state.
	EnabledTime *time.Time

	// The time at which fast snapshot restores entered the enabling state.
	EnablingTime *time.Time

	// The time at which fast snapshot restores entered the optimizing state.
	OptimizingTime *time.Time

	// The Amazon Web Services owner alias that enabled fast snapshot restores on the
	// snapshot. This is intended for future use.
	OwnerAlias *string

	// The ID of the Amazon Web Services account that enabled fast snapshot restores
	// on the snapshot.
	OwnerId *string

	// The ID of the snapshot.
	SnapshotId *string

	// The state of fast snapshot restores.
	State FastSnapshotRestoreStateCode

	// The reason for the state transition. The possible values are as follows:
	//
	//   - Client.UserInitiated - The state successfully transitioned to enabling or
	//   disabling .
	//
	//   - Client.UserInitiated - Lifecycle state transition - The state successfully
	//   transitioned to optimizing , enabled , or disabled .
	StateTransitionReason *string
	// contains filtered or unexported fields
}

Describes fast snapshot restores that were successfully enabled.

type EnclaveOptions added in v0.29.0

type EnclaveOptions struct {

	// If this parameter is set to true , the instance is enabled for Amazon Web
	// Services Nitro Enclaves; otherwise, it is not enabled for Amazon Web Services
	// Nitro Enclaves.
	Enabled *bool
	// contains filtered or unexported fields
}

Indicates whether the instance is enabled for Amazon Web Services Nitro Enclaves.

type EnclaveOptionsRequest added in v0.29.0

type EnclaveOptionsRequest struct {

	// To enable the instance for Amazon Web Services Nitro Enclaves, set this
	// parameter to true .
	Enabled *bool
	// contains filtered or unexported fields
}

Indicates whether the instance is enabled for Amazon Web Services Nitro Enclaves. For more information, see What is Amazon Web Services Nitro Enclaves?in the Amazon Web Services Nitro Enclaves User Guide.

type EndDateType

type EndDateType string
const (
	EndDateTypeUnlimited EndDateType = "unlimited"
	EndDateTypeLimited   EndDateType = "limited"
)

Enum values for EndDateType

func (EndDateType) Values added in v0.29.0

func (EndDateType) Values() []EndDateType

Values returns all known values for EndDateType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type EphemeralNvmeSupport added in v0.29.0

type EphemeralNvmeSupport string
const (
	EphemeralNvmeSupportUnsupported EphemeralNvmeSupport = "unsupported"
	EphemeralNvmeSupportSupported   EphemeralNvmeSupport = "supported"
	EphemeralNvmeSupportRequired    EphemeralNvmeSupport = "required"
)

Enum values for EphemeralNvmeSupport

func (EphemeralNvmeSupport) Values added in v0.29.0

Values returns all known values for EphemeralNvmeSupport. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type EventCode

type EventCode string
const (
	EventCodeInstanceReboot     EventCode = "instance-reboot"
	EventCodeSystemReboot       EventCode = "system-reboot"
	EventCodeSystemMaintenance  EventCode = "system-maintenance"
	EventCodeInstanceRetirement EventCode = "instance-retirement"
	EventCodeInstanceStop       EventCode = "instance-stop"
)

Enum values for EventCode

func (EventCode) Values added in v0.29.0

func (EventCode) Values() []EventCode

Values returns all known values for EventCode. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type EventInformation

type EventInformation struct {

	// The description of the event.
	EventDescription *string

	// The event.
	//
	// error events:
	//
	//   - iamFleetRoleInvalid - The EC2 Fleet or Spot Fleet does not have the required
	//   permissions either to launch or terminate an instance.
	//
	//   - allLaunchSpecsTemporarilyBlacklisted - None of the configurations are valid,
	//   and several attempts to launch instances have failed. For more information, see
	//   the description of the event.
	//
	//   - spotInstanceCountLimitExceeded - You've reached the limit on the number of
	//   Spot Instances that you can launch.
	//
	//   - spotFleetRequestConfigurationInvalid - The configuration is not valid. For
	//   more information, see the description of the event.
	//
	// fleetRequestChange events:
	//
	//   - active - The EC2 Fleet or Spot Fleet request has been validated and Amazon
	//   EC2 is attempting to maintain the target number of running instances.
	//
	//   - deleted (EC2 Fleet) / cancelled (Spot Fleet) - The EC2 Fleet is deleted or
	//   the Spot Fleet request is canceled and has no running instances. The EC2 Fleet
	//   or Spot Fleet will be deleted two days after its instances are terminated.
	//
	//   - deleted_running (EC2 Fleet) / cancelled_running (Spot Fleet) - The EC2 Fleet
	//   is deleted or the Spot Fleet request is canceled and does not launch additional
	//   instances. Its existing instances continue to run until they are interrupted or
	//   terminated. The request remains in this state until all instances are
	//   interrupted or terminated.
	//
	//   - deleted_terminating (EC2 Fleet) / cancelled_terminating (Spot Fleet) - The
	//   EC2 Fleet is deleted or the Spot Fleet request is canceled and its instances are
	//   terminating. The request remains in this state until all instances are
	//   terminated.
	//
	//   - expired - The EC2 Fleet or Spot Fleet request has expired. If the request
	//   was created with TerminateInstancesWithExpiration set, a subsequent terminated
	//   event indicates that the instances are terminated.
	//
	//   - modify_in_progress - The EC2 Fleet or Spot Fleet request is being modified.
	//   The request remains in this state until the modification is fully processed.
	//
	//   - modify_succeeded - The EC2 Fleet or Spot Fleet request was modified.
	//
	//   - submitted - The EC2 Fleet or Spot Fleet request is being evaluated and
	//   Amazon EC2 is preparing to launch the target number of instances.
	//
	//   - progress - The EC2 Fleet or Spot Fleet request is in the process of being
	//   fulfilled.
	//
	// instanceChange events:
	//
	//   - launched - A new instance was launched.
	//
	//   - terminated - An instance was terminated by the user.
	//
	//   - termination_notified - An instance termination notification was sent when a
	//   Spot Instance was terminated by Amazon EC2 during scale-down, when the target
	//   capacity of the fleet was modified down, for example, from a target capacity of
	//   4 to a target capacity of 3.
	//
	// Information events:
	//
	//   - fleetProgressHalted - The price in every launch specification is not valid
	//   because it is below the Spot price (all the launch specifications have produced
	//   launchSpecUnusable events). A launch specification might become valid if the
	//   Spot price changes.
	//
	//   - launchSpecTemporarilyBlacklisted - The configuration is not valid and
	//   several attempts to launch instances have failed. For more information, see the
	//   description of the event.
	//
	//   - launchSpecUnusable - The price in a launch specification is not valid
	//   because it is below the Spot price.
	//
	//   - registerWithLoadBalancersFailed - An attempt to register instances with load
	//   balancers failed. For more information, see the description of the event.
	EventSubType *string

	// The ID of the instance. This information is available only for instanceChange
	// events.
	InstanceId *string
	// contains filtered or unexported fields
}

Describes an EC2 Fleet or Spot Fleet event.

type EventType

type EventType string
const (
	EventTypeInstanceChange EventType = "instanceChange"
	EventTypeBatchChange    EventType = "fleetRequestChange"
	EventTypeError          EventType = "error"
	EventTypeInformation    EventType = "information"
)

Enum values for EventType

func (EventType) Values added in v0.29.0

func (EventType) Values() []EventType

Values returns all known values for EventType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type ExcessCapacityTerminationPolicy

type ExcessCapacityTerminationPolicy string
const (
	ExcessCapacityTerminationPolicyNoTermination ExcessCapacityTerminationPolicy = "noTermination"
	ExcessCapacityTerminationPolicyDefault       ExcessCapacityTerminationPolicy = "default"
)

Enum values for ExcessCapacityTerminationPolicy

func (ExcessCapacityTerminationPolicy) Values added in v0.29.0

Values returns all known values for ExcessCapacityTerminationPolicy. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type Explanation added in v0.31.0

type Explanation struct {

	// The network ACL.
	Acl *AnalysisComponent

	// The network ACL rule.
	AclRule *AnalysisAclRule

	// The IPv4 address, in CIDR notation.
	Address *string

	// The IPv4 addresses, in CIDR notation.
	Addresses []string

	// The resource to which the component is attached.
	AttachedTo *AnalysisComponent

	// The Availability Zones.
	AvailabilityZones []string

	// The CIDR ranges.
	Cidrs []string

	// The listener for a Classic Load Balancer.
	ClassicLoadBalancerListener *AnalysisLoadBalancerListener

	// The component.
	Component *AnalysisComponent

	// The Amazon Web Services account for the component.
	ComponentAccount *string

	// The Region for the component.
	ComponentRegion *string

	// The customer gateway.
	CustomerGateway *AnalysisComponent

	// The destination.
	Destination *AnalysisComponent

	// The destination VPC.
	DestinationVpc *AnalysisComponent

	// The direction. The following are the possible values:
	//
	//   - egress
	//
	//   - ingress
	Direction *string

	// The load balancer listener.
	ElasticLoadBalancerListener *AnalysisComponent

	// The explanation code.
	ExplanationCode *string

	// The Network Firewall stateful rule.
	FirewallStatefulRule *FirewallStatefulRule

	// The Network Firewall stateless rule.
	FirewallStatelessRule *FirewallStatelessRule

	// The route table.
	IngressRouteTable *AnalysisComponent

	// The internet gateway.
	InternetGateway *AnalysisComponent

	// The Amazon Resource Name (ARN) of the load balancer.
	LoadBalancerArn *string

	// The listener port of the load balancer.
	LoadBalancerListenerPort *int32

	// The target.
	LoadBalancerTarget *AnalysisLoadBalancerTarget

	// The target group.
	LoadBalancerTargetGroup *AnalysisComponent

	// The target groups.
	LoadBalancerTargetGroups []AnalysisComponent

	// The target port.
	LoadBalancerTargetPort *int32

	// The missing component.
	MissingComponent *string

	// The NAT gateway.
	NatGateway *AnalysisComponent

	// The network interface.
	NetworkInterface *AnalysisComponent

	// The packet field.
	PacketField *string

	// The port.
	Port *int32

	// The port ranges.
	PortRanges []PortRange

	// The prefix list.
	PrefixList *AnalysisComponent

	// The protocols.
	Protocols []string

	// The route table.
	RouteTable *AnalysisComponent

	// The route table route.
	RouteTableRoute *AnalysisRouteTableRoute

	// The security group.
	SecurityGroup *AnalysisComponent

	// The security group rule.
	SecurityGroupRule *AnalysisSecurityGroupRule

	// The security groups.
	SecurityGroups []AnalysisComponent

	// The source VPC.
	SourceVpc *AnalysisComponent

	// The state.
	State *string

	// The subnet.
	Subnet *AnalysisComponent

	// The route table for the subnet.
	SubnetRouteTable *AnalysisComponent

	// The transit gateway.
	TransitGateway *AnalysisComponent

	// The transit gateway attachment.
	TransitGatewayAttachment *AnalysisComponent

	// The transit gateway route table.
	TransitGatewayRouteTable *AnalysisComponent

	// The transit gateway route table route.
	TransitGatewayRouteTableRoute *TransitGatewayRouteTableRoute

	// The component VPC.
	Vpc *AnalysisComponent

	// The VPC endpoint.
	VpcEndpoint *AnalysisComponent

	// The VPC peering connection.
	VpcPeeringConnection *AnalysisComponent

	// The VPN connection.
	VpnConnection *AnalysisComponent

	// The VPN gateway.
	VpnGateway *AnalysisComponent
	// contains filtered or unexported fields
}

Describes an explanation code for an unreachable path. For more information, see Reachability Analyzer explanation codes.

type ExportEnvironment

type ExportEnvironment string
const (
	ExportEnvironmentCitrix    ExportEnvironment = "citrix"
	ExportEnvironmentVmware    ExportEnvironment = "vmware"
	ExportEnvironmentMicrosoft ExportEnvironment = "microsoft"
)

Enum values for ExportEnvironment

func (ExportEnvironment) Values added in v0.29.0

Values returns all known values for ExportEnvironment. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type ExportImageTask

type ExportImageTask struct {

	// A description of the image being exported.
	Description *string

	// The ID of the export image task.
	ExportImageTaskId *string

	// The ID of the image.
	ImageId *string

	// The percent complete of the export image task.
	Progress *string

	// Information about the destination Amazon S3 bucket.
	S3ExportLocation *ExportTaskS3Location

	// The status of the export image task. The possible values are active , completed
	// , deleting , and deleted .
	Status *string

	// The status message for the export image task.
	StatusMessage *string

	// Any tags assigned to the export image task.
	Tags []Tag
	// contains filtered or unexported fields
}

Describes an export image task.

type ExportTask

type ExportTask struct {

	// A description of the resource being exported.
	Description *string

	// The ID of the export task.
	ExportTaskId *string

	// Information about the export task.
	ExportToS3Task *ExportToS3Task

	// Information about the instance to export.
	InstanceExportDetails *InstanceExportDetails

	// The state of the export task.
	State ExportTaskState

	// The status message related to the export task.
	StatusMessage *string

	// The tags for the export task.
	Tags []Tag
	// contains filtered or unexported fields
}

Describes an export instance task.

type ExportTaskS3Location

type ExportTaskS3Location struct {

	// The destination Amazon S3 bucket.
	S3Bucket *string

	// The prefix (logical hierarchy) in the bucket.
	S3Prefix *string
	// contains filtered or unexported fields
}

Describes the destination for an export image task.

type ExportTaskS3LocationRequest

type ExportTaskS3LocationRequest struct {

	// The destination Amazon S3 bucket.
	//
	// This member is required.
	S3Bucket *string

	// The prefix (logical hierarchy) in the bucket.
	S3Prefix *string
	// contains filtered or unexported fields
}

Describes the destination for an export image task.

type ExportTaskState

type ExportTaskState string
const (
	ExportTaskStateActive     ExportTaskState = "active"
	ExportTaskStateCancelling ExportTaskState = "cancelling"
	ExportTaskStateCancelled  ExportTaskState = "cancelled"
	ExportTaskStateCompleted  ExportTaskState = "completed"
)

Enum values for ExportTaskState

func (ExportTaskState) Values added in v0.29.0

func (ExportTaskState) Values() []ExportTaskState

Values returns all known values for ExportTaskState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type ExportToS3Task

type ExportToS3Task struct {

	// The container format used to combine disk images with metadata (such as OVF).
	// If absent, only the disk image is exported.
	ContainerFormat ContainerFormat

	// The format for the exported image.
	DiskImageFormat DiskImageFormat

	// The Amazon S3 bucket for the destination image. The destination bucket must
	// exist and have an access control list (ACL) attached that specifies the
	// Region-specific canonical account ID for the Grantee . For more information
	// about the ACL to your S3 bucket, see [Prerequisites]in the VM Import/Export User Guide.
	//
	// [Prerequisites]: https://docs.aws.amazon.com/vm-import/latest/userguide/vmexport.html#vmexport-prerequisites
	S3Bucket *string

	// The encryption key for your S3 bucket.
	S3Key *string
	// contains filtered or unexported fields
}

Describes the format and location for the export task.

type ExportToS3TaskSpecification

type ExportToS3TaskSpecification struct {

	// The container format used to combine disk images with metadata (such as OVF).
	// If absent, only the disk image is exported.
	ContainerFormat ContainerFormat

	// The format for the exported image.
	DiskImageFormat DiskImageFormat

	// The Amazon S3 bucket for the destination image. The destination bucket must
	// exist and have an access control list (ACL) attached that specifies the
	// Region-specific canonical account ID for the Grantee . For more information
	// about the ACL to your S3 bucket, see [Prerequisites]in the VM Import/Export User Guide.
	//
	// [Prerequisites]: https://docs.aws.amazon.com/vm-import/latest/userguide/vmexport.html#vmexport-prerequisites
	S3Bucket *string

	// The image is written to a single object in the Amazon S3 bucket at the S3 key
	// s3prefix + exportTaskId + '.' + diskImageFormat.
	S3Prefix *string
	// contains filtered or unexported fields
}

Describes an export instance task.

type FailedCapacityReservationFleetCancellationResult added in v1.19.0

type FailedCapacityReservationFleetCancellationResult struct {

	// Information about the Capacity Reservation Fleet cancellation error.
	CancelCapacityReservationFleetError *CancelCapacityReservationFleetError

	// The ID of the Capacity Reservation Fleet that could not be cancelled.
	CapacityReservationFleetId *string
	// contains filtered or unexported fields
}

Describes a Capacity Reservation Fleet that could not be cancelled.

type FailedQueuedPurchaseDeletion

type FailedQueuedPurchaseDeletion struct {

	// The error.
	Error *DeleteQueuedReservedInstancesError

	// The ID of the Reserved Instance.
	ReservedInstancesId *string
	// contains filtered or unexported fields
}

Describes a Reserved Instance whose queued purchase was not deleted.

type FastLaunchLaunchTemplateSpecificationRequest added in v1.28.0

type FastLaunchLaunchTemplateSpecificationRequest struct {

	// Specify the version of the launch template that the AMI should use for Windows
	// fast launch.
	//
	// This member is required.
	Version *string

	// Specify the ID of the launch template that the AMI should use for Windows fast
	// launch.
	LaunchTemplateId *string

	// Specify the name of the launch template that the AMI should use for Windows
	// fast launch.
	LaunchTemplateName *string
	// contains filtered or unexported fields
}

Request to create a launch template for a Windows fast launch enabled AMI.

Note - You can specify either the LaunchTemplateName or the LaunchTemplateId , but not both.

type FastLaunchLaunchTemplateSpecificationResponse added in v1.28.0

type FastLaunchLaunchTemplateSpecificationResponse struct {

	// The ID of the launch template that the AMI uses for Windows fast launch.
	LaunchTemplateId *string

	// The name of the launch template that the AMI uses for Windows fast launch.
	LaunchTemplateName *string

	// The version of the launch template that the AMI uses for Windows fast launch.
	Version *string
	// contains filtered or unexported fields
}

Identifies the launch template that the AMI uses for Windows fast launch.

type FastLaunchResourceType added in v1.28.0

type FastLaunchResourceType string
const (
	FastLaunchResourceTypeSnapshot FastLaunchResourceType = "snapshot"
)

Enum values for FastLaunchResourceType

func (FastLaunchResourceType) Values added in v1.28.0

Values returns all known values for FastLaunchResourceType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type FastLaunchSnapshotConfigurationRequest added in v1.28.0

type FastLaunchSnapshotConfigurationRequest struct {

	// The number of pre-provisioned snapshots to keep on hand for a Windows fast
	// launch enabled AMI.
	TargetResourceCount *int32
	// contains filtered or unexported fields
}

Configuration settings for creating and managing pre-provisioned snapshots for a Windows fast launch enabled AMI.

type FastLaunchSnapshotConfigurationResponse added in v1.28.0

type FastLaunchSnapshotConfigurationResponse struct {

	// The number of pre-provisioned snapshots requested to keep on hand for a Windows
	// fast launch enabled AMI.
	TargetResourceCount *int32
	// contains filtered or unexported fields
}

Configuration settings for creating and managing pre-provisioned snapshots for a Windows fast launch enabled Windows AMI.

type FastLaunchStateCode added in v1.28.0

type FastLaunchStateCode string
const (
	FastLaunchStateCodeEnabling        FastLaunchStateCode = "enabling"
	FastLaunchStateCodeEnablingFailed  FastLaunchStateCode = "enabling-failed"
	FastLaunchStateCodeEnabled         FastLaunchStateCode = "enabled"
	FastLaunchStateCodeEnabledFailed   FastLaunchStateCode = "enabled-failed"
	FastLaunchStateCodeDisabling       FastLaunchStateCode = "disabling"
	FastLaunchStateCodeDisablingFailed FastLaunchStateCode = "disabling-failed"
)

Enum values for FastLaunchStateCode

func (FastLaunchStateCode) Values added in v1.28.0

Values returns all known values for FastLaunchStateCode. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type FastSnapshotRestoreStateCode

type FastSnapshotRestoreStateCode string
const (
	FastSnapshotRestoreStateCodeEnabling   FastSnapshotRestoreStateCode = "enabling"
	FastSnapshotRestoreStateCodeOptimizing FastSnapshotRestoreStateCode = "optimizing"
	FastSnapshotRestoreStateCodeEnabled    FastSnapshotRestoreStateCode = "enabled"
	FastSnapshotRestoreStateCodeDisabling  FastSnapshotRestoreStateCode = "disabling"
	FastSnapshotRestoreStateCodeDisabled   FastSnapshotRestoreStateCode = "disabled"
)

Enum values for FastSnapshotRestoreStateCode

func (FastSnapshotRestoreStateCode) Values added in v0.29.0

Values returns all known values for FastSnapshotRestoreStateCode. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type FederatedAuthentication

type FederatedAuthentication struct {

	// The Amazon Resource Name (ARN) of the IAM SAML identity provider.
	SamlProviderArn *string

	// The Amazon Resource Name (ARN) of the IAM SAML identity provider for the
	// self-service portal.
	SelfServiceSamlProviderArn *string
	// contains filtered or unexported fields
}

Describes the IAM SAML identity providers used for federated authentication.

type FederatedAuthenticationRequest

type FederatedAuthenticationRequest struct {

	// The Amazon Resource Name (ARN) of the IAM SAML identity provider.
	SAMLProviderArn *string

	// The Amazon Resource Name (ARN) of the IAM SAML identity provider for the
	// self-service portal.
	SelfServiceSAMLProviderArn *string
	// contains filtered or unexported fields
}

The IAM SAML identity provider used for federated authentication.

type Filter

type Filter struct {

	// The name of the filter. Filter names are case-sensitive.
	Name *string

	// The filter values. Filter values are case-sensitive. If you specify multiple
	// values for a filter, the values are joined with an OR , and the request returns
	// all results that match any of the specified values.
	Values []string
	// contains filtered or unexported fields
}

A filter name and value pair that is used to return a more specific list of results from a describe operation. Filters can be used to match a set of resources by specific criteria, such as tags, attributes, or IDs.

If you specify multiple filters, the filters are joined with an AND , and the request returns only results that match all of the specified filters.

For more information, see List and filter using the CLI and API in the Amazon EC2 User Guide.

type FilterPortRange added in v1.91.0

type FilterPortRange struct {

	// The first port in the range.
	FromPort *int32

	// The last port in the range.
	ToPort *int32
	// contains filtered or unexported fields
}

Describes a port range.

type FindingsFound added in v1.25.0

type FindingsFound string
const (
	FindingsFoundTrue    FindingsFound = "true"
	FindingsFoundFalse   FindingsFound = "false"
	FindingsFoundUnknown FindingsFound = "unknown"
)

Enum values for FindingsFound

func (FindingsFound) Values added in v1.25.0

func (FindingsFound) Values() []FindingsFound

Values returns all known values for FindingsFound. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type FirewallStatefulRule added in v1.91.0

type FirewallStatefulRule struct {

	// The destination ports.
	DestinationPorts []PortRange

	// The destination IP addresses, in CIDR notation.
	Destinations []string

	// The direction. The possible values are FORWARD and ANY .
	Direction *string

	// The protocol.
	Protocol *string

	// The rule action. The possible values are pass , drop , and alert .
	RuleAction *string

	// The ARN of the stateful rule group.
	RuleGroupArn *string

	// The source ports.
	SourcePorts []PortRange

	// The source IP addresses, in CIDR notation.
	Sources []string
	// contains filtered or unexported fields
}

Describes a stateful rule.

type FirewallStatelessRule added in v1.91.0

type FirewallStatelessRule struct {

	// The destination ports.
	DestinationPorts []PortRange

	// The destination IP addresses, in CIDR notation.
	Destinations []string

	// The rule priority.
	Priority *int32

	// The protocols.
	Protocols []int32

	// The rule action. The possible values are pass , drop , and forward_to_site .
	RuleAction *string

	// The ARN of the stateless rule group.
	RuleGroupArn *string

	// The source ports.
	SourcePorts []PortRange

	// The source IP addresses, in CIDR notation.
	Sources []string
	// contains filtered or unexported fields
}

Describes a stateless rule.

type FleetActivityStatus

type FleetActivityStatus string
const (
	FleetActivityStatusError              FleetActivityStatus = "error"
	FleetActivityStatusPendingFulfillment FleetActivityStatus = "pending_fulfillment"
	FleetActivityStatusPendingTermination FleetActivityStatus = "pending_termination"
	FleetActivityStatusFulfilled          FleetActivityStatus = "fulfilled"
)

Enum values for FleetActivityStatus

func (FleetActivityStatus) Values added in v0.29.0

Values returns all known values for FleetActivityStatus. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type FleetCapacityReservation added in v1.19.0

type FleetCapacityReservation struct {

	// The Availability Zone in which the Capacity Reservation reserves capacity.
	AvailabilityZone *string

	// The ID of the Availability Zone in which the Capacity Reservation reserves
	// capacity.
	AvailabilityZoneId *string

	// The ID of the Capacity Reservation.
	CapacityReservationId *string

	// The date and time at which the Capacity Reservation was created.
	CreateDate *time.Time

	// Indicates whether the Capacity Reservation reserves capacity for EBS-optimized
	// instance types.
	EbsOptimized *bool

	// The number of capacity units fulfilled by the Capacity Reservation. For more
	// information, see [Total target capacity]in the Amazon EC2 User Guide.
	//
	// [Total target capacity]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/crfleet-concepts.html#target-capacity
	FulfilledCapacity *float64

	// The type of operating system for which the Capacity Reservation reserves
	// capacity.
	InstancePlatform CapacityReservationInstancePlatform

	// The instance type for which the Capacity Reservation reserves capacity.
	InstanceType InstanceType

	// The priority of the instance type in the Capacity Reservation Fleet. For more
	// information, see [Instance type priority]in the Amazon EC2 User Guide.
	//
	// [Instance type priority]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/crfleet-concepts.html#instance-priority
	Priority *int32

	// The total number of instances for which the Capacity Reservation reserves
	// capacity.
	TotalInstanceCount *int32

	// The weight of the instance type in the Capacity Reservation Fleet. For more
	// information, see [Instance type weight]in the Amazon EC2 User Guide.
	//
	// [Instance type weight]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/crfleet-concepts.html#instance-weight
	Weight *float64
	// contains filtered or unexported fields
}

Information about a Capacity Reservation in a Capacity Reservation Fleet.

type FleetCapacityReservationTenancy added in v1.19.0

type FleetCapacityReservationTenancy string
const (
	FleetCapacityReservationTenancyDefault FleetCapacityReservationTenancy = "default"
)

Enum values for FleetCapacityReservationTenancy

func (FleetCapacityReservationTenancy) Values added in v1.19.0

Values returns all known values for FleetCapacityReservationTenancy. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type FleetCapacityReservationUsageStrategy

type FleetCapacityReservationUsageStrategy string
const (
	FleetCapacityReservationUsageStrategyUseCapacityReservationsFirst FleetCapacityReservationUsageStrategy = "use-capacity-reservations-first"
)

Enum values for FleetCapacityReservationUsageStrategy

func (FleetCapacityReservationUsageStrategy) Values added in v0.29.0

Values returns all known values for FleetCapacityReservationUsageStrategy. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type FleetData

type FleetData struct {

	// The progress of the EC2 Fleet. If there is an error, the status is error . After
	// all requests are placed, the status is pending_fulfillment . If the size of the
	// EC2 Fleet is equal to or greater than its target capacity, the status is
	// fulfilled . If the size of the EC2 Fleet is decreased, the status is
	// pending_termination while instances are terminating.
	ActivityStatus FleetActivityStatus

	// Unique, case-sensitive identifier that you provide to ensure the idempotency of
	// the request. For more information, see [Ensuring idempotency].
	//
	// Constraints: Maximum 64 ASCII characters
	//
	// [Ensuring idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
	ClientToken *string

	// Reserved.
	Context *string

	// The creation date and time of the EC2 Fleet.
	CreateTime *time.Time

	// Information about the instances that could not be launched by the fleet. Valid
	// only when Type is set to instant .
	Errors []DescribeFleetError

	// Indicates whether running instances should be terminated if the target capacity
	// of the EC2 Fleet is decreased below the current size of the EC2 Fleet.
	//
	// Supported only for fleets of type maintain .
	ExcessCapacityTerminationPolicy FleetExcessCapacityTerminationPolicy

	// The ID of the EC2 Fleet.
	FleetId *string

	// The state of the EC2 Fleet.
	FleetState FleetStateCode

	// The number of units fulfilled by this request compared to the set target
	// capacity.
	FulfilledCapacity *float64

	// The number of units fulfilled by this request compared to the set target
	// On-Demand capacity.
	FulfilledOnDemandCapacity *float64

	// Information about the instances that were launched by the fleet. Valid only
	// when Type is set to instant .
	Instances []DescribeFleetsInstances

	// The launch template and overrides.
	LaunchTemplateConfigs []FleetLaunchTemplateConfig

	// The allocation strategy of On-Demand Instances in an EC2 Fleet.
	OnDemandOptions *OnDemandOptions

	// Indicates whether EC2 Fleet should replace unhealthy Spot Instances. Supported
	// only for fleets of type maintain . For more information, see [EC2 Fleet health checks] in the Amazon EC2
	// User Guide.
	//
	// [EC2 Fleet health checks]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/manage-ec2-fleet.html#ec2-fleet-health-checks
	ReplaceUnhealthyInstances *bool

	// The configuration of Spot Instances in an EC2 Fleet.
	SpotOptions *SpotOptions

	// The tags for an EC2 Fleet resource.
	Tags []Tag

	// The number of units to request. You can choose to set the target capacity in
	// terms of instances or a performance characteristic that is important to your
	// application workload, such as vCPUs, memory, or I/O. If the request type is
	// maintain , you can specify a target capacity of 0 and add capacity later.
	TargetCapacitySpecification *TargetCapacitySpecification

	// Indicates whether running instances should be terminated when the EC2 Fleet
	// expires.
	TerminateInstancesWithExpiration *bool

	// The type of request. Indicates whether the EC2 Fleet only requests the target
	// capacity, or also attempts to maintain it. If you request a certain target
	// capacity, EC2 Fleet only places the required requests; it does not attempt to
	// replenish instances if capacity is diminished, and it does not submit requests
	// in alternative capacity pools if capacity is unavailable. To maintain a certain
	// target capacity, EC2 Fleet places the required requests to meet this target
	// capacity. It also automatically replenishes any interrupted Spot Instances.
	// Default: maintain .
	Type FleetType

	// The start date and time of the request, in UTC format (for example,
	// YYYY-MM-DDTHH:MM:SSZ). The default is to start fulfilling the request
	// immediately.
	ValidFrom *time.Time

	// The end date and time of the request, in UTC format (for example,
	// YYYY-MM-DDTHH:MM:SSZ). At this point, no new instance requests are placed or
	// able to fulfill the request. The default end date is 7 days from the current
	// date.
	ValidUntil *time.Time
	// contains filtered or unexported fields
}

Describes an EC2 Fleet.

type FleetEventType

type FleetEventType string
const (
	FleetEventTypeInstanceChange FleetEventType = "instance-change"
	FleetEventTypeFleetChange    FleetEventType = "fleet-change"
	FleetEventTypeServiceError   FleetEventType = "service-error"
)

Enum values for FleetEventType

func (FleetEventType) Values added in v0.29.0

func (FleetEventType) Values() []FleetEventType

Values returns all known values for FleetEventType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type FleetExcessCapacityTerminationPolicy

type FleetExcessCapacityTerminationPolicy string
const (
	FleetExcessCapacityTerminationPolicyNoTermination FleetExcessCapacityTerminationPolicy = "no-termination"
	FleetExcessCapacityTerminationPolicyTermination   FleetExcessCapacityTerminationPolicy = "termination"
)

Enum values for FleetExcessCapacityTerminationPolicy

func (FleetExcessCapacityTerminationPolicy) Values added in v0.29.0

Values returns all known values for FleetExcessCapacityTerminationPolicy. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type FleetInstanceMatchCriteria added in v1.19.0

type FleetInstanceMatchCriteria string
const (
	FleetInstanceMatchCriteriaOpen FleetInstanceMatchCriteria = "open"
)

Enum values for FleetInstanceMatchCriteria

func (FleetInstanceMatchCriteria) Values added in v1.19.0

Values returns all known values for FleetInstanceMatchCriteria. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type FleetLaunchTemplateConfig

type FleetLaunchTemplateConfig struct {

	// The launch template.
	LaunchTemplateSpecification *FleetLaunchTemplateSpecification

	// Any parameters that you specify override the same parameters in the launch
	// template.
	Overrides []FleetLaunchTemplateOverrides
	// contains filtered or unexported fields
}

Describes a launch template and overrides.

type FleetLaunchTemplateConfigRequest

type FleetLaunchTemplateConfigRequest struct {

	// The launch template to use. You must specify either the launch template ID or
	// launch template name in the request.
	LaunchTemplateSpecification *FleetLaunchTemplateSpecificationRequest

	// Any parameters that you specify override the same parameters in the launch
	// template.
	//
	// For fleets of type request and maintain , a maximum of 300 items is allowed
	// across all launch templates.
	Overrides []FleetLaunchTemplateOverridesRequest
	// contains filtered or unexported fields
}

Describes a launch template and overrides.

type FleetLaunchTemplateOverrides

type FleetLaunchTemplateOverrides struct {

	// The Availability Zone in which to launch the instances.
	AvailabilityZone *string

	// The ID of the AMI in the format ami-17characters00000 .
	//
	// Alternatively, you can specify a Systems Manager parameter, using one of the
	// following formats. The Systems Manager parameter will resolve to an AMI ID on
	// launch.
	//
	// To reference a public parameter:
	//
	//   - resolve:ssm:public-parameter
	//
	// To reference a parameter stored in the same account:
	//
	//   - resolve:ssm:parameter-name
	//
	//   - resolve:ssm:parameter-name:version-number
	//
	//   - resolve:ssm:parameter-name:label
	//
	// To reference a parameter shared from another Amazon Web Services account:
	//
	//   - resolve:ssm:parameter-ARN
	//
	//   - resolve:ssm:parameter-ARN:version-number
	//
	//   - resolve:ssm:parameter-ARN:label
	//
	// For more information, see [Use a Systems Manager parameter instead of an AMI ID] in the Amazon EC2 User Guide.
	//
	// This parameter is only available for fleets of type instant . For fleets of type
	// maintain and request , you must specify the AMI ID in the launch template.
	//
	// [Use a Systems Manager parameter instead of an AMI ID]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/create-launch-template.html#use-an-ssm-parameter-instead-of-an-ami-id
	ImageId *string

	// The attributes for the instance types. When you specify instance attributes,
	// Amazon EC2 will identify instance types with those attributes.
	//
	// If you specify InstanceRequirements , you can't specify InstanceType .
	InstanceRequirements *InstanceRequirements

	// The instance type.
	//
	// mac1.metal is not supported as a launch template override.
	//
	// If you specify InstanceType , you can't specify InstanceRequirements .
	InstanceType InstanceType

	// The maximum price per unit hour that you are willing to pay for a Spot
	// Instance. We do not recommend using this parameter because it can lead to
	// increased interruptions. If you do not specify this parameter, you will pay the
	// current Spot price.
	//
	// If you specify a maximum price, your instances will be interrupted more
	// frequently than if you do not specify this parameter.
	MaxPrice *string

	// The location where the instance launched, if applicable.
	Placement *PlacementResponse

	// The priority for the launch template override. The highest priority is launched
	// first.
	//
	// If the On-Demand AllocationStrategy is set to prioritized , EC2 Fleet uses
	// priority to determine which launch template override to use first in fulfilling
	// On-Demand capacity.
	//
	// If the Spot AllocationStrategy is set to capacity-optimized-prioritized , EC2
	// Fleet uses priority on a best-effort basis to determine which launch template
	// override to use in fulfilling Spot capacity, but optimizes for capacity first.
	//
	// Valid values are whole numbers starting at 0 . The lower the number, the higher
	// the priority. If no number is set, the override has the lowest priority. You can
	// set the same priority for different launch template overrides.
	Priority *float64

	// The ID of the subnet in which to launch the instances.
	SubnetId *string

	// The number of units provided by the specified instance type. These are the same
	// units that you chose to set the target capacity in terms of instances, or a
	// performance characteristic such as vCPUs, memory, or I/O.
	//
	// If the target capacity divided by this value is not a whole number, Amazon EC2
	// rounds the number of instances to the next whole number. If this value is not
	// specified, the default is 1.
	//
	// When specifying weights, the price used in the lowest-price and
	// price-capacity-optimized allocation strategies is per unit hour (where the
	// instance price is divided by the specified weight). However, if all the
	// specified weights are above the requested TargetCapacity , resulting in only 1
	// instance being launched, the price used is per instance hour.
	WeightedCapacity *float64
	// contains filtered or unexported fields
}

Describes overrides for a launch template.

type FleetLaunchTemplateOverridesRequest

type FleetLaunchTemplateOverridesRequest struct {

	// The Availability Zone in which to launch the instances.
	AvailabilityZone *string

	// The ID of the AMI in the format ami-17characters00000 .
	//
	// Alternatively, you can specify a Systems Manager parameter, using one of the
	// following formats. The Systems Manager parameter will resolve to an AMI ID on
	// launch.
	//
	// To reference a public parameter:
	//
	//   - resolve:ssm:public-parameter
	//
	// To reference a parameter stored in the same account:
	//
	//   - resolve:ssm:parameter-name
	//
	//   - resolve:ssm:parameter-name:version-number
	//
	//   - resolve:ssm:parameter-name:label
	//
	// To reference a parameter shared from another Amazon Web Services account:
	//
	//   - resolve:ssm:parameter-ARN
	//
	//   - resolve:ssm:parameter-ARN:version-number
	//
	//   - resolve:ssm:parameter-ARN:label
	//
	// For more information, see [Use a Systems Manager parameter instead of an AMI ID] in the Amazon EC2 User Guide.
	//
	// This parameter is only available for fleets of type instant . For fleets of type
	// maintain and request , you must specify the AMI ID in the launch template.
	//
	// [Use a Systems Manager parameter instead of an AMI ID]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/create-launch-template.html#use-an-ssm-parameter-instead-of-an-ami-id
	ImageId *string

	// The attributes for the instance types. When you specify instance attributes,
	// Amazon EC2 will identify instance types with those attributes.
	//
	// If you specify InstanceRequirements , you can't specify InstanceType .
	InstanceRequirements *InstanceRequirementsRequest

	// The instance type.
	//
	// mac1.metal is not supported as a launch template override.
	//
	// If you specify InstanceType , you can't specify InstanceRequirements .
	InstanceType InstanceType

	// The maximum price per unit hour that you are willing to pay for a Spot
	// Instance. We do not recommend using this parameter because it can lead to
	// increased interruptions. If you do not specify this parameter, you will pay the
	// current Spot price.
	//
	// If you specify a maximum price, your instances will be interrupted more
	// frequently than if you do not specify this parameter.
	MaxPrice *string

	// The location where the instance launched, if applicable.
	Placement *Placement

	// The priority for the launch template override. The highest priority is launched
	// first.
	//
	// If the On-Demand AllocationStrategy is set to prioritized , EC2 Fleet uses
	// priority to determine which launch template override to use first in fulfilling
	// On-Demand capacity.
	//
	// If the Spot AllocationStrategy is set to capacity-optimized-prioritized , EC2
	// Fleet uses priority on a best-effort basis to determine which launch template
	// override to use in fulfilling Spot capacity, but optimizes for capacity first.
	//
	// Valid values are whole numbers starting at 0 . The lower the number, the higher
	// the priority. If no number is set, the launch template override has the lowest
	// priority. You can set the same priority for different launch template overrides.
	Priority *float64

	// The IDs of the subnets in which to launch the instances. Separate multiple
	// subnet IDs using commas (for example, subnet-1234abcdeexample1,
	// subnet-0987cdef6example2 ). A request of type instant can have only one subnet
	// ID.
	SubnetId *string

	// The number of units provided by the specified instance type. These are the same
	// units that you chose to set the target capacity in terms of instances, or a
	// performance characteristic such as vCPUs, memory, or I/O.
	//
	// If the target capacity divided by this value is not a whole number, Amazon EC2
	// rounds the number of instances to the next whole number. If this value is not
	// specified, the default is 1.
	//
	// When specifying weights, the price used in the lowest-price and
	// price-capacity-optimized allocation strategies is per unit hour (where the
	// instance price is divided by the specified weight). However, if all the
	// specified weights are above the requested TargetCapacity , resulting in only 1
	// instance being launched, the price used is per instance hour.
	WeightedCapacity *float64
	// contains filtered or unexported fields
}

Describes overrides for a launch template.

type FleetLaunchTemplateSpecification

type FleetLaunchTemplateSpecification struct {

	// The ID of the launch template.
	//
	// You must specify the LaunchTemplateId or the LaunchTemplateName , but not both.
	LaunchTemplateId *string

	// The name of the launch template.
	//
	// You must specify the LaunchTemplateName or the LaunchTemplateId , but not both.
	LaunchTemplateName *string

	// The launch template version number, $Latest , or $Default . You must specify a
	// value, otherwise the request fails.
	//
	// If the value is $Latest , Amazon EC2 uses the latest version of the launch
	// template.
	//
	// If the value is $Default , Amazon EC2 uses the default version of the launch
	// template.
	Version *string
	// contains filtered or unexported fields
}

The Amazon EC2 launch template that can be used by a Spot Fleet to configure Amazon EC2 instances. You must specify either the ID or name of the launch template in the request, but not both.

For information about launch templates, see Launch an instance from a launch template in the Amazon EC2 User Guide.

type FleetLaunchTemplateSpecificationRequest

type FleetLaunchTemplateSpecificationRequest struct {

	// The ID of the launch template.
	//
	// You must specify the LaunchTemplateId or the LaunchTemplateName , but not both.
	LaunchTemplateId *string

	// The name of the launch template.
	//
	// You must specify the LaunchTemplateName or the LaunchTemplateId , but not both.
	LaunchTemplateName *string

	// The launch template version number, $Latest , or $Default . You must specify a
	// value, otherwise the request fails.
	//
	// If the value is $Latest , Amazon EC2 uses the latest version of the launch
	// template.
	//
	// If the value is $Default , Amazon EC2 uses the default version of the launch
	// template.
	Version *string
	// contains filtered or unexported fields
}

The Amazon EC2 launch template that can be used by an EC2 Fleet to configure Amazon EC2 instances. You must specify either the ID or name of the launch template in the request, but not both.

For information about launch templates, see Launch an instance from a launch template in the Amazon EC2 User Guide.

type FleetOnDemandAllocationStrategy

type FleetOnDemandAllocationStrategy string
const (
	FleetOnDemandAllocationStrategyLowestPrice FleetOnDemandAllocationStrategy = "lowest-price"
	FleetOnDemandAllocationStrategyPrioritized FleetOnDemandAllocationStrategy = "prioritized"
)

Enum values for FleetOnDemandAllocationStrategy

func (FleetOnDemandAllocationStrategy) Values added in v0.29.0

Values returns all known values for FleetOnDemandAllocationStrategy. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type FleetReplacementStrategy added in v0.30.0

type FleetReplacementStrategy string
const (
	FleetReplacementStrategyLaunch                FleetReplacementStrategy = "launch"
	FleetReplacementStrategyLaunchBeforeTerminate FleetReplacementStrategy = "launch-before-terminate"
)

Enum values for FleetReplacementStrategy

func (FleetReplacementStrategy) Values added in v0.30.0

Values returns all known values for FleetReplacementStrategy. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type FleetSpotCapacityRebalance added in v0.30.0

type FleetSpotCapacityRebalance struct {

	// The replacement strategy to use. Only available for fleets of type maintain .
	//
	// launch - EC2 Fleet launches a new replacement Spot Instance when a rebalance
	// notification is emitted for an existing Spot Instance in the fleet. EC2 Fleet
	// does not terminate the instances that receive a rebalance notification. You can
	// terminate the old instances, or you can leave them running. You are charged for
	// all instances while they are running.
	//
	// launch-before-terminate - EC2 Fleet launches a new replacement Spot Instance
	// when a rebalance notification is emitted for an existing Spot Instance in the
	// fleet, and then, after a delay that you specify (in TerminationDelay ),
	// terminates the instances that received a rebalance notification.
	ReplacementStrategy FleetReplacementStrategy

	// The amount of time (in seconds) that Amazon EC2 waits before terminating the
	// old Spot Instance after launching a new replacement Spot Instance.
	//
	// Required when ReplacementStrategy is set to launch-before-terminate .
	//
	// Not valid when ReplacementStrategy is set to launch .
	//
	// Valid values: Minimum value of 120 seconds. Maximum value of 7200 seconds.
	TerminationDelay *int32
	// contains filtered or unexported fields
}

The strategy to use when Amazon EC2 emits a signal that your Spot Instance is at an elevated risk of being interrupted.

type FleetSpotCapacityRebalanceRequest added in v0.30.0

type FleetSpotCapacityRebalanceRequest struct {

	// The replacement strategy to use. Only available for fleets of type maintain .
	//
	// launch - EC2 Fleet launches a replacement Spot Instance when a rebalance
	// notification is emitted for an existing Spot Instance in the fleet. EC2 Fleet
	// does not terminate the instances that receive a rebalance notification. You can
	// terminate the old instances, or you can leave them running. You are charged for
	// all instances while they are running.
	//
	// launch-before-terminate - EC2 Fleet launches a replacement Spot Instance when a
	// rebalance notification is emitted for an existing Spot Instance in the fleet,
	// and then, after a delay that you specify (in TerminationDelay ), terminates the
	// instances that received a rebalance notification.
	ReplacementStrategy FleetReplacementStrategy

	// The amount of time (in seconds) that Amazon EC2 waits before terminating the
	// old Spot Instance after launching a new replacement Spot Instance.
	//
	// Required when ReplacementStrategy is set to launch-before-terminate .
	//
	// Not valid when ReplacementStrategy is set to launch .
	//
	// Valid values: Minimum value of 120 seconds. Maximum value of 7200 seconds.
	TerminationDelay *int32
	// contains filtered or unexported fields
}

The Spot Instance replacement strategy to use when Amazon EC2 emits a rebalance notification signal that your Spot Instance is at an elevated risk of being interrupted. For more information, see Capacity rebalancingin the Amazon EC2 User Guide.

type FleetSpotMaintenanceStrategies added in v0.30.0

type FleetSpotMaintenanceStrategies struct {

	// The strategy to use when Amazon EC2 emits a signal that your Spot Instance is
	// at an elevated risk of being interrupted.
	CapacityRebalance *FleetSpotCapacityRebalance
	// contains filtered or unexported fields
}

The strategies for managing your Spot Instances that are at an elevated risk of being interrupted.

type FleetSpotMaintenanceStrategiesRequest added in v0.30.0

type FleetSpotMaintenanceStrategiesRequest struct {

	// The strategy to use when Amazon EC2 emits a signal that your Spot Instance is
	// at an elevated risk of being interrupted.
	CapacityRebalance *FleetSpotCapacityRebalanceRequest
	// contains filtered or unexported fields
}

The strategies for managing your Spot Instances that are at an elevated risk of being interrupted.

type FleetStateCode

type FleetStateCode string
const (
	FleetStateCodeSubmitted                   FleetStateCode = "submitted"
	FleetStateCodeActive                      FleetStateCode = "active"
	FleetStateCodeDeleted                     FleetStateCode = "deleted"
	FleetStateCodeFailed                      FleetStateCode = "failed"
	FleetStateCodeDeletedRunning              FleetStateCode = "deleted_running"
	FleetStateCodeDeletedTerminatingInstances FleetStateCode = "deleted_terminating"
	FleetStateCodeModifying                   FleetStateCode = "modifying"
)

Enum values for FleetStateCode

func (FleetStateCode) Values added in v0.29.0

func (FleetStateCode) Values() []FleetStateCode

Values returns all known values for FleetStateCode. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type FleetType

type FleetType string
const (
	FleetTypeRequest  FleetType = "request"
	FleetTypeMaintain FleetType = "maintain"
	FleetTypeInstant  FleetType = "instant"
)

Enum values for FleetType

func (FleetType) Values added in v0.29.0

func (FleetType) Values() []FleetType

Values returns all known values for FleetType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type FlowLog

type FlowLog struct {

	// The date and time the flow log was created.
	CreationTime *time.Time

	// The ARN of the IAM role that allows the service to publish flow logs across
	// accounts.
	DeliverCrossAccountRole *string

	// Information about the error that occurred. Rate limited indicates that
	// CloudWatch Logs throttling has been applied for one or more network interfaces,
	// or that you've reached the limit on the number of log groups that you can
	// create. Access error indicates that the IAM role associated with the flow log
	// does not have sufficient permissions to publish to CloudWatch Logs. Unknown
	// error indicates an internal error.
	DeliverLogsErrorMessage *string

	// The ARN of the IAM role allows the service to publish logs to CloudWatch Logs.
	DeliverLogsPermissionArn *string

	// The status of the logs delivery ( SUCCESS | FAILED ).
	DeliverLogsStatus *string

	// The destination options.
	DestinationOptions *DestinationOptionsResponse

	// The ID of the flow log.
	FlowLogId *string

	// The status of the flow log ( ACTIVE ).
	FlowLogStatus *string

	// The Amazon Resource Name (ARN) of the destination for the flow log data.
	LogDestination *string

	// The type of destination for the flow log data.
	LogDestinationType LogDestinationType

	// The format of the flow log record.
	LogFormat *string

	// The name of the flow log group.
	LogGroupName *string

	// The maximum interval of time, in seconds, during which a flow of packets is
	// captured and aggregated into a flow log record.
	//
	// When a network interface is attached to a [Nitro-based instance], the aggregation interval is always
	// 60 seconds (1 minute) or less, regardless of the specified value.
	//
	// Valid Values: 60 | 600
	//
	// [Nitro-based instance]: https://docs.aws.amazon.com/ec2/latest/instancetypes/ec2-nitro-instances.html
	MaxAggregationInterval *int32

	// The ID of the resource being monitored.
	ResourceId *string

	// The tags for the flow log.
	Tags []Tag

	// The type of traffic captured for the flow log.
	TrafficType TrafficType
	// contains filtered or unexported fields
}

Describes a flow log.

type FlowLogsResourceType

type FlowLogsResourceType string
const (
	FlowLogsResourceTypeVpc                      FlowLogsResourceType = "VPC"
	FlowLogsResourceTypeSubnet                   FlowLogsResourceType = "Subnet"
	FlowLogsResourceTypeNetworkInterface         FlowLogsResourceType = "NetworkInterface"
	FlowLogsResourceTypeTransitGateway           FlowLogsResourceType = "TransitGateway"
	FlowLogsResourceTypeTransitGatewayAttachment FlowLogsResourceType = "TransitGatewayAttachment"
)

Enum values for FlowLogsResourceType

func (FlowLogsResourceType) Values added in v0.29.0

Values returns all known values for FlowLogsResourceType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type FpgaDeviceInfo

type FpgaDeviceInfo struct {

	// The count of FPGA accelerators for the instance type.
	Count *int32

	// The manufacturer of the FPGA accelerator.
	Manufacturer *string

	// Describes the memory for the FPGA accelerator for the instance type.
	MemoryInfo *FpgaDeviceMemoryInfo

	// The name of the FPGA accelerator.
	Name *string
	// contains filtered or unexported fields
}

Describes the FPGA accelerator for the instance type.

type FpgaDeviceMemoryInfo

type FpgaDeviceMemoryInfo struct {

	// The size of the memory available to the FPGA accelerator, in MiB.
	SizeInMiB *int32
	// contains filtered or unexported fields
}

Describes the memory for the FPGA accelerator for the instance type.

type FpgaImage

type FpgaImage struct {

	// The date and time the AFI was created.
	CreateTime *time.Time

	// Indicates whether data retention support is enabled for the AFI.
	DataRetentionSupport *bool

	// The description of the AFI.
	Description *string

	// The global FPGA image identifier (AGFI ID).
	FpgaImageGlobalId *string

	// The FPGA image identifier (AFI ID).
	FpgaImageId *string

	// The instance types supported by the AFI.
	InstanceTypes []string

	// The name of the AFI.
	Name *string

	// The alias of the AFI owner. Possible values include self , amazon , and
	// aws-marketplace .
	OwnerAlias *string

	// The ID of the Amazon Web Services account that owns the AFI.
	OwnerId *string

	// Information about the PCI bus.
	PciId *PciId

	// The product codes for the AFI.
	ProductCodes []ProductCode

	// Indicates whether the AFI is public.
	Public *bool

	// The version of the Amazon Web Services Shell that was used to create the
	// bitstream.
	ShellVersion *string

	// Information about the state of the AFI.
	State *FpgaImageState

	// Any tags assigned to the AFI.
	Tags []Tag

	// The time of the most recent update to the AFI.
	UpdateTime *time.Time
	// contains filtered or unexported fields
}

Describes an Amazon FPGA image (AFI).

type FpgaImageAttribute

type FpgaImageAttribute struct {

	// The description of the AFI.
	Description *string

	// The ID of the AFI.
	FpgaImageId *string

	// The load permissions.
	LoadPermissions []LoadPermission

	// The name of the AFI.
	Name *string

	// The product codes.
	ProductCodes []ProductCode
	// contains filtered or unexported fields
}

Describes an Amazon FPGA image (AFI) attribute.

type FpgaImageAttributeName

type FpgaImageAttributeName string
const (
	FpgaImageAttributeNameDescription    FpgaImageAttributeName = "description"
	FpgaImageAttributeNameName           FpgaImageAttributeName = "name"
	FpgaImageAttributeNameLoadPermission FpgaImageAttributeName = "loadPermission"
	FpgaImageAttributeNameProductCodes   FpgaImageAttributeName = "productCodes"
)

Enum values for FpgaImageAttributeName

func (FpgaImageAttributeName) Values added in v0.29.0

Values returns all known values for FpgaImageAttributeName. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type FpgaImageState

type FpgaImageState struct {

	// The state. The following are the possible values:
	//
	//   - pending - AFI bitstream generation is in progress.
	//
	//   - available - The AFI is available for use.
	//
	//   - failed - AFI bitstream generation failed.
	//
	//   - unavailable - The AFI is no longer available for use.
	Code FpgaImageStateCode

	// If the state is failed , this is the error message.
	Message *string
	// contains filtered or unexported fields
}

Describes the state of the bitstream generation process for an Amazon FPGA image (AFI).

type FpgaImageStateCode

type FpgaImageStateCode string
const (
	FpgaImageStateCodePending     FpgaImageStateCode = "pending"
	FpgaImageStateCodeFailed      FpgaImageStateCode = "failed"
	FpgaImageStateCodeAvailable   FpgaImageStateCode = "available"
	FpgaImageStateCodeUnavailable FpgaImageStateCode = "unavailable"
)

Enum values for FpgaImageStateCode

func (FpgaImageStateCode) Values added in v0.29.0

Values returns all known values for FpgaImageStateCode. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type FpgaInfo

type FpgaInfo struct {

	// Describes the FPGAs for the instance type.
	Fpgas []FpgaDeviceInfo

	// The total memory of all FPGA accelerators for the instance type.
	TotalFpgaMemoryInMiB *int32
	// contains filtered or unexported fields
}

Describes the FPGAs for the instance type.

type GatewayAssociationState added in v1.22.0

type GatewayAssociationState string
const (
	GatewayAssociationStateAssociated     GatewayAssociationState = "associated"
	GatewayAssociationStateNotAssociated  GatewayAssociationState = "not-associated"
	GatewayAssociationStateAssociating    GatewayAssociationState = "associating"
	GatewayAssociationStateDisassociating GatewayAssociationState = "disassociating"
)

Enum values for GatewayAssociationState

func (GatewayAssociationState) Values added in v1.22.0

Values returns all known values for GatewayAssociationState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type GatewayType

type GatewayType string
const (
	GatewayTypeIpsec1 GatewayType = "ipsec.1"
)

Enum values for GatewayType

func (GatewayType) Values added in v0.29.0

func (GatewayType) Values() []GatewayType

Values returns all known values for GatewayType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type GpuDeviceInfo

type GpuDeviceInfo struct {

	// The number of GPUs for the instance type.
	Count *int32

	// The manufacturer of the GPU accelerator.
	Manufacturer *string

	// Describes the memory available to the GPU accelerator.
	MemoryInfo *GpuDeviceMemoryInfo

	// The name of the GPU accelerator.
	Name *string
	// contains filtered or unexported fields
}

Describes the GPU accelerators for the instance type.

type GpuDeviceMemoryInfo

type GpuDeviceMemoryInfo struct {

	// The size of the memory available to the GPU accelerator, in MiB.
	SizeInMiB *int32
	// contains filtered or unexported fields
}

Describes the memory available to the GPU accelerator.

type GpuInfo

type GpuInfo struct {

	// Describes the GPU accelerators for the instance type.
	Gpus []GpuDeviceInfo

	// The total size of the memory for the GPU accelerators for the instance type, in
	// MiB.
	TotalGpuMemoryInMiB *int32
	// contains filtered or unexported fields
}

Describes the GPU accelerators for the instance type.

type GroupIdentifier

type GroupIdentifier struct {

	// The ID of the security group.
	GroupId *string

	// The name of the security group.
	GroupName *string
	// contains filtered or unexported fields
}

Describes a security group.

type HibernationOptions

type HibernationOptions struct {

	// If true , your instance is enabled for hibernation; otherwise, it is not enabled
	// for hibernation.
	Configured *bool
	// contains filtered or unexported fields
}

Indicates whether your instance is configured for hibernation. This parameter is valid only if the instance meets the hibernation prerequisites. For more information, see Hibernate your Amazon EC2 instance in the Amazon EC2 User Guide.

type HibernationOptionsRequest

type HibernationOptionsRequest struct {

	// Set to true to enable your instance for hibernation.
	//
	// For Spot Instances, if you set Configured to true , either omit the
	// InstanceInterruptionBehavior parameter (for [SpotMarketOptions]SpotMarketOptions ), or set it to
	// hibernate . When Configured is true:
	//
	//   - If you omit InstanceInterruptionBehavior , it defaults to hibernate .
	//
	//   - If you set InstanceInterruptionBehavior to a value other than hibernate ,
	//   you'll get an error.
	//
	// Default: false
	//
	// [SpotMarketOptions]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SpotMarketOptions.html
	Configured *bool
	// contains filtered or unexported fields
}

Indicates whether your instance is configured for hibernation. This parameter is valid only if the instance meets the hibernation prerequisites. For more information, see Hibernate your Amazon EC2 instance in the Amazon EC2 User Guide.

type HistoryRecord

type HistoryRecord struct {

	// Information about the event.
	EventInformation *EventInformation

	// The event type.
	//
	//   - error - An error with the Spot Fleet request.
	//
	//   - fleetRequestChange - A change in the status or configuration of the Spot
	//   Fleet request.
	//
	//   - instanceChange - An instance was launched or terminated.
	//
	//   - Information - An informational event.
	EventType EventType

	// The date and time of the event, in UTC format (for example,
	// YYYY-MM-DDTHH:MM:SSZ).
	Timestamp *time.Time
	// contains filtered or unexported fields
}

Describes an event in the history of the Spot Fleet request.

type HistoryRecordEntry

type HistoryRecordEntry struct {

	// Information about the event.
	EventInformation *EventInformation

	// The event type.
	EventType FleetEventType

	// The date and time of the event, in UTC format (for example,
	// YYYY-MM-DDTHH:MM:SSZ).
	Timestamp *time.Time
	// contains filtered or unexported fields
}

Describes an event in the history of an EC2 Fleet.

type Host

type Host struct {

	// The time that the Dedicated Host was allocated.
	AllocationTime *time.Time

	// Indicates whether the Dedicated Host supports multiple instance types of the
	// same instance family. If the value is on , the Dedicated Host supports multiple
	// instance types in the instance family. If the value is off , the Dedicated Host
	// supports a single instance type only.
	AllowsMultipleInstanceTypes AllowsMultipleInstanceTypes

	// The ID of the Outpost hardware asset on which the Dedicated Host is allocated.
	AssetId *string

	// Whether auto-placement is on or off.
	AutoPlacement AutoPlacement

	// The Availability Zone of the Dedicated Host.
	AvailabilityZone *string

	// The ID of the Availability Zone in which the Dedicated Host is allocated.
	AvailabilityZoneId *string

	// Information about the instances running on the Dedicated Host.
	AvailableCapacity *AvailableCapacity

	// Unique, case-sensitive identifier that you provide to ensure the idempotency of
	// the request. For more information, see [Ensuring Idempotency].
	//
	// [Ensuring Idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
	ClientToken *string

	// The ID of the Dedicated Host.
	HostId *string

	// Indicates whether host maintenance is enabled or disabled for the Dedicated
	// Host.
	HostMaintenance HostMaintenance

	// The hardware specifications of the Dedicated Host.
	HostProperties *HostProperties

	// Indicates whether host recovery is enabled or disabled for the Dedicated Host.
	HostRecovery HostRecovery

	// The reservation ID of the Dedicated Host. This returns a null response if the
	// Dedicated Host doesn't have an associated reservation.
	HostReservationId *string

	// The IDs and instance type that are currently running on the Dedicated Host.
	Instances []HostInstance

	// Indicates whether the Dedicated Host is in a host resource group. If
	// memberOfServiceLinkedResourceGroup is true , the host is in a host resource
	// group; otherwise, it is not.
	MemberOfServiceLinkedResourceGroup *bool

	// The Amazon Resource Name (ARN) of the Amazon Web Services Outpost on which the
	// Dedicated Host is allocated.
	OutpostArn *string

	// The ID of the Amazon Web Services account that owns the Dedicated Host.
	OwnerId *string

	// The time that the Dedicated Host was released.
	ReleaseTime *time.Time

	// The Dedicated Host's state.
	State AllocationState

	// Any tags assigned to the Dedicated Host.
	Tags []Tag
	// contains filtered or unexported fields
}

Describes the properties of the Dedicated Host.

type HostInstance

type HostInstance struct {

	// The ID of instance that is running on the Dedicated Host.
	InstanceId *string

	// The instance type (for example, m3.medium ) of the running instance.
	InstanceType *string

	// The ID of the Amazon Web Services account that owns the instance.
	OwnerId *string
	// contains filtered or unexported fields
}

Describes an instance running on a Dedicated Host.

type HostMaintenance added in v1.86.0

type HostMaintenance string
const (
	HostMaintenanceOn  HostMaintenance = "on"
	HostMaintenanceOff HostMaintenance = "off"
)

Enum values for HostMaintenance

func (HostMaintenance) Values added in v1.86.0

func (HostMaintenance) Values() []HostMaintenance

Values returns all known values for HostMaintenance. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type HostOffering

type HostOffering struct {

	// The currency of the offering.
	CurrencyCode CurrencyCodeValues

	// The duration of the offering (in seconds).
	Duration *int32

	// The hourly price of the offering.
	HourlyPrice *string

	// The instance family of the offering.
	InstanceFamily *string

	// The ID of the offering.
	OfferingId *string

	// The available payment option.
	PaymentOption PaymentOption

	// The upfront price of the offering. Does not apply to No Upfront offerings.
	UpfrontPrice *string
	// contains filtered or unexported fields
}

Details about the Dedicated Host Reservation offering.

type HostProperties

type HostProperties struct {

	// The number of cores on the Dedicated Host.
	Cores *int32

	// The instance family supported by the Dedicated Host. For example, m5 .
	InstanceFamily *string

	// The instance type supported by the Dedicated Host. For example, m5.large . If
	// the host supports multiple instance types, no instanceType is returned.
	InstanceType *string

	// The number of sockets on the Dedicated Host.
	Sockets *int32

	// The total number of vCPUs on the Dedicated Host.
	TotalVCpus *int32
	// contains filtered or unexported fields
}

Describes the properties of a Dedicated Host.

type HostRecovery

type HostRecovery string
const (
	HostRecoveryOn  HostRecovery = "on"
	HostRecoveryOff HostRecovery = "off"
)

Enum values for HostRecovery

func (HostRecovery) Values added in v0.29.0

func (HostRecovery) Values() []HostRecovery

Values returns all known values for HostRecovery. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type HostReservation

type HostReservation struct {

	// The number of Dedicated Hosts the reservation is associated with.
	Count *int32

	// The currency in which the upfrontPrice and hourlyPrice amounts are specified.
	// At this time, the only supported currency is USD .
	CurrencyCode CurrencyCodeValues

	// The length of the reservation's term, specified in seconds. Can be 31536000 (1
	// year) | 94608000 (3 years) .
	Duration *int32

	// The date and time that the reservation ends.
	End *time.Time

	// The IDs of the Dedicated Hosts associated with the reservation.
	HostIdSet []string

	// The ID of the reservation that specifies the associated Dedicated Hosts.
	HostReservationId *string

	// The hourly price of the reservation.
	HourlyPrice *string

	// The instance family of the Dedicated Host Reservation. The instance family on
	// the Dedicated Host must be the same in order for it to benefit from the
	// reservation.
	InstanceFamily *string

	// The ID of the reservation. This remains the same regardless of which Dedicated
	// Hosts are associated with it.
	OfferingId *string

	// The payment option selected for this reservation.
	PaymentOption PaymentOption

	// The date and time that the reservation started.
	Start *time.Time

	// The state of the reservation.
	State ReservationState

	// Any tags assigned to the Dedicated Host Reservation.
	Tags []Tag

	// The upfront price of the reservation.
	UpfrontPrice *string
	// contains filtered or unexported fields
}

Details about the Dedicated Host Reservation and associated Dedicated Hosts.

type HostTenancy

type HostTenancy string
const (
	HostTenancyDefault   HostTenancy = "default"
	HostTenancyDedicated HostTenancy = "dedicated"
	HostTenancyHost      HostTenancy = "host"
)

Enum values for HostTenancy

func (HostTenancy) Values added in v0.29.0

func (HostTenancy) Values() []HostTenancy

Values returns all known values for HostTenancy. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type HostnameType added in v1.24.0

type HostnameType string
const (
	HostnameTypeIpName       HostnameType = "ip-name"
	HostnameTypeResourceName HostnameType = "resource-name"
)

Enum values for HostnameType

func (HostnameType) Values added in v1.24.0

func (HostnameType) Values() []HostnameType

Values returns all known values for HostnameType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type HttpTokensState

type HttpTokensState string
const (
	HttpTokensStateOptional HttpTokensState = "optional"
	HttpTokensStateRequired HttpTokensState = "required"
)

Enum values for HttpTokensState

func (HttpTokensState) Values added in v0.29.0

func (HttpTokensState) Values() []HttpTokensState

Values returns all known values for HttpTokensState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type HypervisorType

type HypervisorType string
const (
	HypervisorTypeOvm HypervisorType = "ovm"
	HypervisorTypeXen HypervisorType = "xen"
)

Enum values for HypervisorType

func (HypervisorType) Values added in v0.29.0

func (HypervisorType) Values() []HypervisorType

Values returns all known values for HypervisorType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type IKEVersionsListValue

type IKEVersionsListValue struct {

	// The IKE version.
	Value *string
	// contains filtered or unexported fields
}

The internet key exchange (IKE) version permitted for the VPN tunnel.

type IKEVersionsRequestListValue

type IKEVersionsRequestListValue struct {

	// The IKE version.
	Value *string
	// contains filtered or unexported fields
}

The IKE version that is permitted for the VPN tunnel.

type IamInstanceProfile

type IamInstanceProfile struct {

	// The Amazon Resource Name (ARN) of the instance profile.
	Arn *string

	// The ID of the instance profile.
	Id *string
	// contains filtered or unexported fields
}

Describes an IAM instance profile.

type IamInstanceProfileAssociation

type IamInstanceProfileAssociation struct {

	// The ID of the association.
	AssociationId *string

	// The IAM instance profile.
	IamInstanceProfile *IamInstanceProfile

	// The ID of the instance.
	InstanceId *string

	// The state of the association.
	State IamInstanceProfileAssociationState

	// The time the IAM instance profile was associated with the instance.
	Timestamp *time.Time
	// contains filtered or unexported fields
}

Describes an association between an IAM instance profile and an instance.

type IamInstanceProfileAssociationState

type IamInstanceProfileAssociationState string
const (
	IamInstanceProfileAssociationStateAssociating    IamInstanceProfileAssociationState = "associating"
	IamInstanceProfileAssociationStateAssociated     IamInstanceProfileAssociationState = "associated"
	IamInstanceProfileAssociationStateDisassociating IamInstanceProfileAssociationState = "disassociating"
	IamInstanceProfileAssociationStateDisassociated  IamInstanceProfileAssociationState = "disassociated"
)

Enum values for IamInstanceProfileAssociationState

func (IamInstanceProfileAssociationState) Values added in v0.29.0

Values returns all known values for IamInstanceProfileAssociationState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type IamInstanceProfileSpecification

type IamInstanceProfileSpecification struct {

	// The Amazon Resource Name (ARN) of the instance profile.
	Arn *string

	// The name of the instance profile.
	Name *string
	// contains filtered or unexported fields
}

Describes an IAM instance profile.

type IcmpTypeCode

type IcmpTypeCode struct {

	// The ICMP code. A value of -1 means all codes for the specified ICMP type.
	Code *int32

	// The ICMP type. A value of -1 means all types.
	Type *int32
	// contains filtered or unexported fields
}

Describes the ICMP type and code.

type IdFormat

type IdFormat struct {

	// The date in UTC at which you are permanently switched over to using longer IDs.
	// If a deadline is not yet available for this resource type, this field is not
	// returned.
	Deadline *time.Time

	// The type of resource.
	Resource *string

	// Indicates whether longer IDs (17-character IDs) are enabled for the resource.
	UseLongIds *bool
	// contains filtered or unexported fields
}

Describes the ID format for a resource.

type Igmpv2SupportValue added in v0.31.0

type Igmpv2SupportValue string
const (
	Igmpv2SupportValueEnable  Igmpv2SupportValue = "enable"
	Igmpv2SupportValueDisable Igmpv2SupportValue = "disable"
)

Enum values for Igmpv2SupportValue

func (Igmpv2SupportValue) Values added in v0.31.0

Values returns all known values for Igmpv2SupportValue. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type Image

type Image struct {

	// The architecture of the image.
	Architecture ArchitectureValues

	// Any block device mapping entries.
	BlockDeviceMappings []BlockDeviceMapping

	// The boot mode of the image. For more information, see [Boot modes] in the Amazon EC2 User
	// Guide.
	//
	// [Boot modes]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ami-boot.html
	BootMode BootModeValues

	// The date and time the image was created.
	CreationDate *string

	// The date and time to deprecate the AMI, in UTC, in the following format:
	// YYYY-MM-DDTHH:MM:SSZ. If you specified a value for seconds, Amazon EC2 rounds
	// the seconds to the nearest minute.
	DeprecationTime *string

	// Indicates whether deregistration protection is enabled for the AMI.
	DeregistrationProtection *string

	// The description of the AMI that was provided during image creation.
	Description *string

	// Specifies whether enhanced networking with ENA is enabled.
	EnaSupport *bool

	// The hypervisor type of the image. Only xen is supported. ovm is not supported.
	Hypervisor HypervisorType

	// If true , the AMI satisfies the criteria for Allowed AMIs and can be discovered
	// and used in the account. If false and Allowed AMIs is set to enabled , the AMI
	// can't be discovered or used in the account. If false and Allowed AMIs is set to
	// audit-mode , the AMI can be discovered and used in the account.
	//
	// For more information, see [Control the discovery and use of AMIs in Amazon EC2 with Allowed AMIs] in Amazon EC2 User Guide.
	//
	// [Control the discovery and use of AMIs in Amazon EC2 with Allowed AMIs]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-allowed-amis.html
	ImageAllowed *bool

	// The ID of the AMI.
	ImageId *string

	// The location of the AMI.
	ImageLocation *string

	// The owner alias ( amazon | aws-backup-vault | aws-marketplace ).
	ImageOwnerAlias *string

	// The type of image.
	ImageType ImageTypeValues

	// If v2.0 , it indicates that IMDSv2 is specified in the AMI. Instances launched
	// from this AMI will have HttpTokens automatically set to required so that, by
	// default, the instance requires that IMDSv2 is used when requesting instance
	// metadata. In addition, HttpPutResponseHopLimit is set to 2 . For more
	// information, see [Configure the AMI]in the Amazon EC2 User Guide.
	//
	// [Configure the AMI]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/configuring-IMDS-new-instances.html#configure-IMDS-new-instances-ami-configuration
	ImdsSupport ImdsSupportValues

	// The kernel associated with the image, if any. Only applicable for machine
	// images.
	KernelId *string

	// The date and time, in [ISO 8601 date-time format], when the AMI was last used to launch an EC2 instance.
	// When the AMI is used to launch an instance, there is a 24-hour delay before that
	// usage is reported.
	//
	// lastLaunchedTime data is available starting April 2017.
	//
	// [ISO 8601 date-time format]: http://www.iso.org/iso/iso8601
	LastLaunchedTime *string

	// The name of the AMI that was provided during image creation.
	Name *string

	// The ID of the Amazon Web Services account that owns the image.
	OwnerId *string

	// This value is set to windows for Windows AMIs; otherwise, it is blank.
	Platform PlatformValues

	// The platform details associated with the billing code of the AMI. For more
	// information, see [Understand AMI billing information]in the Amazon EC2 User Guide.
	//
	// [Understand AMI billing information]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ami-billing-info.html
	PlatformDetails *string

	// Any product codes associated with the AMI.
	ProductCodes []ProductCode

	// Indicates whether the image has public launch permissions. The value is true if
	// this image has public launch permissions or false if it has only implicit and
	// explicit launch permissions.
	Public *bool

	// The RAM disk associated with the image, if any. Only applicable for machine
	// images.
	RamdiskId *string

	// The device name of the root device volume (for example, /dev/sda1 ).
	RootDeviceName *string

	// The type of root device used by the AMI. The AMI can use an Amazon EBS volume
	// or an instance store volume.
	RootDeviceType DeviceType

	// The ID of the source AMI from which the AMI was created.
	//
	// The ID only appears if the AMI was created using CreateImage, CopyImage, or CreateRestoreImageTask. The ID does not
	// appear if the AMI was created using any other API. For some older AMIs, the ID
	// might not be available. For more information, see [Identify the source AMI used to create a new AMI]in the Amazon EC2 User Guide.
	//
	// [Identify the source AMI used to create a new AMI]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/identify-source-ami-used-to-create-new-ami.html
	SourceImageId *string

	// The Region of the source AMI.
	//
	// The Region only appears if the AMI was created using CreateImage, CopyImage, or CreateRestoreImageTask. The Region does
	// not appear if the AMI was created using any other API. For some older AMIs, the
	// Region might not be available. For more information, see [Identify the source AMI used to create a new AMI]in the Amazon EC2 User
	// Guide.
	//
	// [Identify the source AMI used to create a new AMI]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/identify-source-ami-used-to-create-new-ami.html
	SourceImageRegion *string

	// The ID of the instance that the AMI was created from if the AMI was created
	// using [CreateImage]. This field only appears if the AMI was created using CreateImage.
	//
	// [CreateImage]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateImage.html
	SourceInstanceId *string

	// Specifies whether enhanced networking with the Intel 82599 Virtual Function
	// interface is enabled.
	SriovNetSupport *string

	// The current state of the AMI. If the state is available , the image is
	// successfully registered and can be used to launch an instance.
	State ImageState

	// The reason for the state change.
	StateReason *StateReason

	// Any tags assigned to the image.
	Tags []Tag

	// If the image is configured for NitroTPM support, the value is v2.0 . For more
	// information, see [NitroTPM]in the Amazon EC2 User Guide.
	//
	// [NitroTPM]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/nitrotpm.html
	TpmSupport TpmSupportValues

	// The operation of the Amazon EC2 instance and the billing code that is
	// associated with the AMI. usageOperation corresponds to the [lineitem/Operation] column on your
	// Amazon Web Services Cost and Usage Report and in the [Amazon Web Services Price List API]. You can view these
	// fields on the Instances or AMIs pages in the Amazon EC2 console, or in the
	// responses that are returned by the [DescribeImages]command in the Amazon EC2 API, or the [describe-images]
	// command in the CLI.
	//
	// [describe-images]: https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-images.html
	// [lineitem/Operation]: https://docs.aws.amazon.com/cur/latest/userguide/Lineitem-columns.html#Lineitem-details-O-Operation
	// [DescribeImages]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeImages.html
	// [Amazon Web Services Price List API]: https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/price-changes.html
	UsageOperation *string

	// The type of virtualization of the AMI.
	VirtualizationType VirtualizationType
	// contains filtered or unexported fields
}

Describes an image.

type ImageAttributeName

type ImageAttributeName string
const (
	ImageAttributeNameDescription              ImageAttributeName = "description"
	ImageAttributeNameKernel                   ImageAttributeName = "kernel"
	ImageAttributeNameRamdisk                  ImageAttributeName = "ramdisk"
	ImageAttributeNameLaunchPermission         ImageAttributeName = "launchPermission"
	ImageAttributeNameProductCodes             ImageAttributeName = "productCodes"
	ImageAttributeNameBlockDeviceMapping       ImageAttributeName = "blockDeviceMapping"
	ImageAttributeNameSriovNetSupport          ImageAttributeName = "sriovNetSupport"
	ImageAttributeNameBootMode                 ImageAttributeName = "bootMode"
	ImageAttributeNameTpmSupport               ImageAttributeName = "tpmSupport"
	ImageAttributeNameUefiData                 ImageAttributeName = "uefiData"
	ImageAttributeNameLastLaunchedTime         ImageAttributeName = "lastLaunchedTime"
	ImageAttributeNameImdsSupport              ImageAttributeName = "imdsSupport"
	ImageAttributeNameDeregistrationProtection ImageAttributeName = "deregistrationProtection"
)

Enum values for ImageAttributeName

func (ImageAttributeName) Values added in v0.29.0

Values returns all known values for ImageAttributeName. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type ImageBlockPublicAccessDisabledState added in v1.118.0

type ImageBlockPublicAccessDisabledState string
const (
	ImageBlockPublicAccessDisabledStateUnblocked ImageBlockPublicAccessDisabledState = "unblocked"
)

Enum values for ImageBlockPublicAccessDisabledState

func (ImageBlockPublicAccessDisabledState) Values added in v1.118.0

Values returns all known values for ImageBlockPublicAccessDisabledState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type ImageBlockPublicAccessEnabledState added in v1.118.0

type ImageBlockPublicAccessEnabledState string
const (
	ImageBlockPublicAccessEnabledStateBlockNewSharing ImageBlockPublicAccessEnabledState = "block-new-sharing"
)

Enum values for ImageBlockPublicAccessEnabledState

func (ImageBlockPublicAccessEnabledState) Values added in v1.118.0

Values returns all known values for ImageBlockPublicAccessEnabledState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type ImageCriterion added in v1.195.0

type ImageCriterion struct {

	// A list of AMI providers whose AMIs are discoverable and useable in the account.
	// Up to a total of 200 values can be specified.
	//
	// Possible values:
	//
	// amazon : Allow AMIs created by Amazon Web Services.
	//
	// aws-marketplace : Allow AMIs created by verified providers in the Amazon Web
	// Services Marketplace.
	//
	// aws-backup-vault : Allow AMIs created by Amazon Web Services Backup.
	//
	// 12-digit account ID: Allow AMIs created by this account. One or more account
	// IDs can be specified.
	//
	// none : Allow AMIs created by your own account only.
	ImageProviders []string
	// contains filtered or unexported fields
}

The list of criteria that are evaluated to determine whch AMIs are discoverable and usable in the account in the specified Amazon Web Services Region. Currently, the only criteria that can be specified are AMI providers.

Up to 10 imageCriteria objects can be specified, and up to a total of 200 values for all imageProviders . For more information, see JSON configuration for the Allowed AMIs criteria in the Amazon EC2 User Guide.

type ImageCriterionRequest added in v1.195.0

type ImageCriterionRequest struct {

	// A list of image providers whose AMIs are discoverable and useable in the
	// account. Up to a total of 200 values can be specified.
	//
	// Possible values:
	//
	// amazon : Allow AMIs created by Amazon Web Services.
	//
	// aws-marketplace : Allow AMIs created by verified providers in the Amazon Web
	// Services Marketplace.
	//
	// aws-backup-vault : Allow AMIs created by Amazon Web Services Backup.
	//
	// 12-digit account ID: Allow AMIs created by this account. One or more account
	// IDs can be specified.
	//
	// none : Allow AMIs created by your own account only. When none is specified, no
	// other values can be specified.
	ImageProviders []string
	// contains filtered or unexported fields
}

The list of criteria that are evaluated to determine whch AMIs are discoverable and usable in the account in the specified Amazon Web Services Region. Currently, the only criteria that can be specified are AMI providers.

Up to 10 imageCriteria objects can be specified, and up to a total of 200 values for all imageProviders . For more information, see JSON configuration for the Allowed AMIs criteria in the Amazon EC2 User Guide.

type ImageDiskContainer

type ImageDiskContainer struct {

	// The description of the disk image.
	Description *string

	// The block device mapping for the disk.
	DeviceName *string

	// The format of the disk image being imported.
	//
	// Valid values: OVA | VHD | VHDX | VMDK | RAW
	Format *string

	// The ID of the EBS snapshot to be used for importing the snapshot.
	SnapshotId *string

	// The URL to the Amazon S3-based disk image being imported. The URL can either be
	// a https URL (https://..) or an Amazon S3 URL (s3://..)
	Url *string

	// The S3 bucket for the disk image.
	UserBucket *UserBucket
	// contains filtered or unexported fields
}

Describes the disk container object for an import image task.

type ImageMetadata added in v1.186.0

type ImageMetadata struct {

	// The date and time the AMI was created.
	CreationDate *string

	// The deprecation date and time of the AMI, in UTC, in the following format:
	// YYYY-MM-DDTHH:MM:SSZ.
	DeprecationTime *string

	// If true , the AMI satisfies the criteria for Allowed AMIs and can be discovered
	// and used in the account. If false , the AMI can't be discovered or used in the
	// account.
	//
	// For more information, see [Control the discovery and use of AMIs in Amazon EC2 with Allowed AMIs] in Amazon EC2 User Guide.
	//
	// [Control the discovery and use of AMIs in Amazon EC2 with Allowed AMIs]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-allowed-amis.html
	ImageAllowed *bool

	// The ID of the AMI.
	ImageId *string

	// The alias of the AMI owner.
	//
	// Valid values: amazon | aws-backup-vault | aws-marketplace
	ImageOwnerAlias *string

	// Indicates whether the AMI has public launch permissions. A value of true means
	// this AMI has public launch permissions, while false means it has only implicit
	// (AMI owner) or explicit (shared with your account) launch permissions.
	IsPublic *bool

	// The name of the AMI.
	Name *string

	// The ID of the Amazon Web Services account that owns the AMI.
	OwnerId *string

	// The current state of the AMI. If the state is available , the AMI is
	// successfully registered and can be used to launch an instance.
	State ImageState
	// contains filtered or unexported fields
}

Information about the AMI.

type ImageRecycleBinInfo added in v1.30.0

type ImageRecycleBinInfo struct {

	// The description of the AMI.
	Description *string

	// The ID of the AMI.
	ImageId *string

	// The name of the AMI.
	Name *string

	// The date and time when the AMI entered the Recycle Bin.
	RecycleBinEnterTime *time.Time

	// The date and time when the AMI is to be permanently deleted from the Recycle
	// Bin.
	RecycleBinExitTime *time.Time
	// contains filtered or unexported fields
}

Information about an AMI that is currently in the Recycle Bin.

type ImageState

type ImageState string
const (
	ImageStatePending      ImageState = "pending"
	ImageStateAvailable    ImageState = "available"
	ImageStateInvalid      ImageState = "invalid"
	ImageStateDeregistered ImageState = "deregistered"
	ImageStateTransient    ImageState = "transient"
	ImageStateFailed       ImageState = "failed"
	ImageStateError        ImageState = "error"
	ImageStateDisabled     ImageState = "disabled"
)

Enum values for ImageState

func (ImageState) Values added in v0.29.0

func (ImageState) Values() []ImageState

Values returns all known values for ImageState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type ImageTypeValues

type ImageTypeValues string
const (
	ImageTypeValuesMachine ImageTypeValues = "machine"
	ImageTypeValuesKernel  ImageTypeValues = "kernel"
	ImageTypeValuesRamdisk ImageTypeValues = "ramdisk"
)

Enum values for ImageTypeValues

func (ImageTypeValues) Values added in v0.29.0

func (ImageTypeValues) Values() []ImageTypeValues

Values returns all known values for ImageTypeValues. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type ImdsSupportValues added in v1.62.0

type ImdsSupportValues string
const (
	ImdsSupportValuesV20 ImdsSupportValues = "v2.0"
)

Enum values for ImdsSupportValues

func (ImdsSupportValues) Values added in v1.62.0

Values returns all known values for ImdsSupportValues. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type ImportImageLicenseConfigurationRequest

type ImportImageLicenseConfigurationRequest struct {

	// The ARN of a license configuration.
	LicenseConfigurationArn *string
	// contains filtered or unexported fields
}

The request information of license configurations.

type ImportImageLicenseConfigurationResponse

type ImportImageLicenseConfigurationResponse struct {

	// The ARN of a license configuration.
	LicenseConfigurationArn *string
	// contains filtered or unexported fields
}

The response information for license configurations.

type ImportImageTask

type ImportImageTask struct {

	// The architecture of the virtual machine.
	//
	// Valid values: i386 | x86_64 | arm64
	Architecture *string

	// The boot mode of the virtual machine.
	BootMode BootModeValues

	// A description of the import task.
	Description *string

	// Indicates whether the image is encrypted.
	Encrypted *bool

	// The target hypervisor for the import task.
	//
	// Valid values: xen
	Hypervisor *string

	// The ID of the Amazon Machine Image (AMI) of the imported virtual machine.
	ImageId *string

	// The ID of the import image task.
	ImportTaskId *string

	// The identifier for the KMS key that was used to create the encrypted image.
	KmsKeyId *string

	// The ARNs of the license configurations that are associated with the import
	// image task.
	LicenseSpecifications []ImportImageLicenseConfigurationResponse

	// The license type of the virtual machine.
	LicenseType *string

	// The description string for the import image task.
	Platform *string

	// The percentage of progress of the import image task.
	Progress *string

	// Information about the snapshots.
	SnapshotDetails []SnapshotDetail

	// A brief status for the import image task.
	Status *string

	// A descriptive status message for the import image task.
	StatusMessage *string

	// The tags for the import image task.
	Tags []Tag

	// The usage operation value.
	UsageOperation *string
	// contains filtered or unexported fields
}

Describes an import image task.

type ImportInstanceLaunchSpecification

type ImportInstanceLaunchSpecification struct {

	// Reserved.
	AdditionalInfo *string

	// The architecture of the instance.
	Architecture ArchitectureValues

	// The security group IDs.
	GroupIds []string

	// The security group names.
	GroupNames []string

	// Indicates whether an instance stops or terminates when you initiate shutdown
	// from the instance (using the operating system command for system shutdown).
	InstanceInitiatedShutdownBehavior ShutdownBehavior

	// The instance type. For more information about the instance types that you can
	// import, see [Instance Types]in the VM Import/Export User Guide.
	//
	// [Instance Types]: https://docs.aws.amazon.com/vm-import/latest/userguide/vmie_prereqs.html#vmimport-instance-types
	InstanceType InstanceType

	// Indicates whether monitoring is enabled.
	Monitoring *bool

	// The placement information for the instance.
	Placement *Placement

	// [EC2-VPC] An available IP address from the IP address range of the subnet.
	PrivateIpAddress *string

	// [EC2-VPC] The ID of the subnet in which to launch the instance.
	SubnetId *string

	// The Base64-encoded user data to make available to the instance.
	UserData *UserData
	// contains filtered or unexported fields
}

Describes the launch specification for VM import.

type ImportInstanceTaskDetails

type ImportInstanceTaskDetails struct {

	// A description of the task.
	Description *string

	// The ID of the instance.
	InstanceId *string

	// The instance operating system.
	Platform PlatformValues

	// The volumes.
	Volumes []ImportInstanceVolumeDetailItem
	// contains filtered or unexported fields
}

Describes an import instance task.

type ImportInstanceVolumeDetailItem

type ImportInstanceVolumeDetailItem struct {

	// The Availability Zone where the resulting instance will reside.
	AvailabilityZone *string

	// The number of bytes converted so far.
	BytesConverted *int64

	// A description of the task.
	Description *string

	// The image.
	Image *DiskImageDescription

	// The status of the import of this particular disk image.
	Status *string

	// The status information or errors related to the disk image.
	StatusMessage *string

	// The volume.
	Volume *DiskImageVolumeDescription
	// contains filtered or unexported fields
}

Describes an import volume task.

type ImportSnapshotTask

type ImportSnapshotTask struct {

	// A description of the import snapshot task.
	Description *string

	// The ID of the import snapshot task.
	ImportTaskId *string

	// Describes an import snapshot task.
	SnapshotTaskDetail *SnapshotTaskDetail

	// The tags for the import snapshot task.
	Tags []Tag
	// contains filtered or unexported fields
}

Describes an import snapshot task.

type ImportVolumeTaskDetails

type ImportVolumeTaskDetails struct {

	// The Availability Zone where the resulting volume will reside.
	AvailabilityZone *string

	// The number of bytes converted so far.
	BytesConverted *int64

	// The description you provided when starting the import volume task.
	Description *string

	// The image.
	Image *DiskImageDescription

	// The volume.
	Volume *DiskImageVolumeDescription
	// contains filtered or unexported fields
}

Describes an import volume task.

type InferenceAcceleratorInfo

type InferenceAcceleratorInfo struct {

	// Describes the Inference accelerators for the instance type.
	Accelerators []InferenceDeviceInfo

	// The total size of the memory for the inference accelerators for the instance
	// type, in MiB.
	TotalInferenceMemoryInMiB *int32
	// contains filtered or unexported fields
}

Amazon Elastic Inference is no longer available.

Describes the Inference accelerators for the instance type.

type InferenceDeviceInfo

type InferenceDeviceInfo struct {

	// The number of Inference accelerators for the instance type.
	Count *int32

	// The manufacturer of the Inference accelerator.
	Manufacturer *string

	// Describes the memory available to the inference accelerator.
	MemoryInfo *InferenceDeviceMemoryInfo

	// The name of the Inference accelerator.
	Name *string
	// contains filtered or unexported fields
}

Amazon Elastic Inference is no longer available.

Describes the Inference accelerators for the instance type.

type InferenceDeviceMemoryInfo added in v1.107.0

type InferenceDeviceMemoryInfo struct {

	// The size of the memory available to the inference accelerator, in MiB.
	SizeInMiB *int32
	// contains filtered or unexported fields
}

Amazon Elastic Inference is no longer available.

Describes the memory available to the inference accelerator.

type Instance

type Instance struct {

	// The AMI launch index, which can be used to find this instance in the launch
	// group.
	AmiLaunchIndex *int32

	// The architecture of the image.
	Architecture ArchitectureValues

	// Any block device mapping entries for the instance.
	BlockDeviceMappings []InstanceBlockDeviceMapping

	// The boot mode that was specified by the AMI. If the value is uefi-preferred ,
	// the AMI supports both UEFI and Legacy BIOS. The currentInstanceBootMode
	// parameter is the boot mode that is used to boot the instance at launch or start.
	//
	// The operating system contained in the AMI must be configured to support the
	// specified boot mode.
	//
	// For more information, see [Boot modes] in the Amazon EC2 User Guide.
	//
	// [Boot modes]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ami-boot.html
	BootMode BootModeValues

	// The ID of the Capacity Reservation.
	CapacityReservationId *string

	// Information about the Capacity Reservation targeting option.
	CapacityReservationSpecification *CapacityReservationSpecificationResponse

	// The idempotency token you provided when you launched the instance, if
	// applicable.
	ClientToken *string

	// The CPU options for the instance.
	CpuOptions *CpuOptions

	// The boot mode that is used to boot the instance at launch or start. For more
	// information, see [Boot modes]in the Amazon EC2 User Guide.
	//
	// [Boot modes]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ami-boot.html
	CurrentInstanceBootMode InstanceBootModeValues

	// Indicates whether the instance is optimized for Amazon EBS I/O. This
	// optimization provides dedicated throughput to Amazon EBS and an optimized
	// configuration stack to provide optimal I/O performance. This optimization isn't
	// available with all instance types. Additional usage charges apply when using an
	// EBS Optimized instance.
	EbsOptimized *bool

	// Deprecated.
	//
	// Amazon Elastic Graphics reached end of life on January 8, 2024.
	ElasticGpuAssociations []ElasticGpuAssociation

	// Deprecated
	//
	// Amazon Elastic Inference is no longer available.
	ElasticInferenceAcceleratorAssociations []ElasticInferenceAcceleratorAssociation

	// Specifies whether enhanced networking with ENA is enabled.
	EnaSupport *bool

	// Indicates whether the instance is enabled for Amazon Web Services Nitro
	// Enclaves.
	EnclaveOptions *EnclaveOptions

	// Indicates whether the instance is enabled for hibernation.
	HibernationOptions *HibernationOptions

	// The hypervisor type of the instance. The value xen is used for both Xen and
	// Nitro hypervisors.
	Hypervisor HypervisorType

	// The IAM instance profile associated with the instance, if applicable.
	IamInstanceProfile *IamInstanceProfile

	// The ID of the AMI used to launch the instance.
	ImageId *string

	// The ID of the instance.
	InstanceId *string

	// Indicates whether this is a Spot Instance or a Scheduled Instance.
	InstanceLifecycle InstanceLifecycleType

	// The instance type.
	InstanceType InstanceType

	// The IPv6 address assigned to the instance.
	Ipv6Address *string

	// The kernel associated with this instance, if applicable.
	KernelId *string

	// The name of the key pair, if this instance was launched with an associated key
	// pair.
	KeyName *string

	// The time that the instance was last launched. To determine the time that
	// instance was first launched, see the attachment time for the primary network
	// interface.
	LaunchTime *time.Time

	// The license configurations for the instance.
	Licenses []LicenseConfiguration

	// Provides information on the recovery and maintenance options of your instance.
	MaintenanceOptions *InstanceMaintenanceOptions

	// The metadata options for the instance.
	MetadataOptions *InstanceMetadataOptionsResponse

	// The monitoring for the instance.
	Monitoring *Monitoring

	// The network interfaces for the instance.
	NetworkInterfaces []InstanceNetworkInterface

	// Contains settings for the network performance options for your instance.
	NetworkPerformanceOptions *InstanceNetworkPerformanceOptions

	// The service provider that manages the instance.
	Operator *OperatorResponse

	// The Amazon Resource Name (ARN) of the Outpost.
	OutpostArn *string

	// The location where the instance launched, if applicable.
	Placement *Placement

	// The platform. This value is windows for Windows instances; otherwise, it is
	// empty.
	Platform PlatformValues

	// The platform details value for the instance. For more information, see [AMI billing information fields] in the
	// Amazon EC2 User Guide.
	//
	// [AMI billing information fields]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/billing-info-fields.html
	PlatformDetails *string

	// [IPv4 only] The private DNS hostname name assigned to the instance. This DNS
	// hostname can only be used inside the Amazon EC2 network. This name is not
	// available until the instance enters the running state.
	//
	// The Amazon-provided DNS server resolves Amazon-provided private DNS hostnames
	// if you've enabled DNS resolution and DNS hostnames in your VPC. If you are not
	// using the Amazon-provided DNS server in your VPC, your custom domain name
	// servers must resolve the hostname as appropriate.
	PrivateDnsName *string

	// The options for the instance hostname.
	PrivateDnsNameOptions *PrivateDnsNameOptionsResponse

	// The private IPv4 address assigned to the instance.
	PrivateIpAddress *string

	// The product codes attached to this instance, if applicable.
	ProductCodes []ProductCode

	// [IPv4 only] The public DNS name assigned to the instance. This name is not
	// available until the instance enters the running state. This name is only
	// available if you've enabled DNS hostnames for your VPC.
	PublicDnsName *string

	// The public IPv4 address, or the Carrier IP address assigned to the instance, if
	// applicable.
	//
	// A Carrier IP address only applies to an instance launched in a subnet
	// associated with a Wavelength Zone.
	PublicIpAddress *string

	// The RAM disk associated with this instance, if applicable.
	RamdiskId *string

	// The device name of the root device volume (for example, /dev/sda1 ).
	RootDeviceName *string

	// The root device type used by the AMI. The AMI can use an EBS volume or an
	// instance store volume.
	RootDeviceType DeviceType

	// The security groups for the instance.
	SecurityGroups []GroupIdentifier

	// Indicates whether source/destination checking is enabled.
	SourceDestCheck *bool

	// If the request is a Spot Instance request, the ID of the request.
	SpotInstanceRequestId *string

	// Specifies whether enhanced networking with the Intel 82599 Virtual Function
	// interface is enabled.
	SriovNetSupport *string

	// The current state of the instance.
	State *InstanceState

	// The reason for the most recent state transition.
	StateReason *StateReason

	// The reason for the most recent state transition. This might be an empty string.
	StateTransitionReason *string

	// The ID of the subnet in which the instance is running.
	SubnetId *string

	// Any tags assigned to the instance.
	Tags []Tag

	// If the instance is configured for NitroTPM support, the value is v2.0 . For more
	// information, see [NitroTPM]in the Amazon EC2 User Guide.
	//
	// [NitroTPM]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/nitrotpm.html
	TpmSupport *string

	// The usage operation value for the instance. For more information, see [AMI billing information fields] in the
	// Amazon EC2 User Guide.
	//
	// [AMI billing information fields]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/billing-info-fields.html
	UsageOperation *string

	// The time that the usage operation was last updated.
	UsageOperationUpdateTime *time.Time

	// The virtualization type of the instance.
	VirtualizationType VirtualizationType

	// The ID of the VPC in which the instance is running.
	VpcId *string
	// contains filtered or unexported fields
}

Describes an instance.

type InstanceAttachmentEnaSrdSpecification added in v1.132.0

type InstanceAttachmentEnaSrdSpecification struct {

	// Indicates whether ENA Express is enabled for the network interface.
	EnaSrdEnabled *bool

	// Configures ENA Express for UDP network traffic.
	EnaSrdUdpSpecification *InstanceAttachmentEnaSrdUdpSpecification
	// contains filtered or unexported fields
}

ENA Express uses Amazon Web Services Scalable Reliable Datagram (SRD) technology to increase the maximum bandwidth used per stream and minimize tail latency of network traffic between EC2 instances. With ENA Express, you can communicate between two EC2 instances in the same subnet within the same account, or in different accounts. Both sending and receiving instances must have ENA Express enabled.

To improve the reliability of network packet delivery, ENA Express reorders network packets on the receiving end by default. However, some UDP-based applications are designed to handle network packets that are out of order to reduce the overhead for packet delivery at the network layer. When ENA Express is enabled, you can specify whether UDP network traffic uses it.

type InstanceAttachmentEnaSrdUdpSpecification added in v1.132.0

type InstanceAttachmentEnaSrdUdpSpecification struct {

	// Indicates whether UDP traffic to and from the instance uses ENA Express. To
	// specify this setting, you must first enable ENA Express.
	EnaSrdUdpEnabled *bool
	// contains filtered or unexported fields
}

ENA Express is compatible with both TCP and UDP transport protocols. When it's enabled, TCP traffic automatically uses it. However, some UDP-based applications are designed to handle network packets that are out of order, without a need for retransmission, such as live video broadcasting or other near-real-time applications. For UDP traffic, you can specify whether to use ENA Express, based on your application environment needs.

type InstanceAttributeName

type InstanceAttributeName string
const (
	InstanceAttributeNameInstanceType                      InstanceAttributeName = "instanceType"
	InstanceAttributeNameKernel                            InstanceAttributeName = "kernel"
	InstanceAttributeNameRamdisk                           InstanceAttributeName = "ramdisk"
	InstanceAttributeNameUserData                          InstanceAttributeName = "userData"
	InstanceAttributeNameDisableApiTermination             InstanceAttributeName = "disableApiTermination"
	InstanceAttributeNameInstanceInitiatedShutdownBehavior InstanceAttributeName = "instanceInitiatedShutdownBehavior"
	InstanceAttributeNameRootDeviceName                    InstanceAttributeName = "rootDeviceName"
	InstanceAttributeNameBlockDeviceMapping                InstanceAttributeName = "blockDeviceMapping"
	InstanceAttributeNameProductCodes                      InstanceAttributeName = "productCodes"
	InstanceAttributeNameSourceDestCheck                   InstanceAttributeName = "sourceDestCheck"
	InstanceAttributeNameGroupSet                          InstanceAttributeName = "groupSet"
	InstanceAttributeNameEbsOptimized                      InstanceAttributeName = "ebsOptimized"
	InstanceAttributeNameSriovNetSupport                   InstanceAttributeName = "sriovNetSupport"
	InstanceAttributeNameEnaSupport                        InstanceAttributeName = "enaSupport"
	InstanceAttributeNameEnclaveOptions                    InstanceAttributeName = "enclaveOptions"
	InstanceAttributeNameDisableApiStop                    InstanceAttributeName = "disableApiStop"
)

Enum values for InstanceAttributeName

func (InstanceAttributeName) Values added in v0.29.0

Values returns all known values for InstanceAttributeName. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type InstanceAutoRecoveryState added in v1.34.0

type InstanceAutoRecoveryState string
const (
	InstanceAutoRecoveryStateDisabled InstanceAutoRecoveryState = "disabled"
	InstanceAutoRecoveryStateDefault  InstanceAutoRecoveryState = "default"
)

Enum values for InstanceAutoRecoveryState

func (InstanceAutoRecoveryState) Values added in v1.34.0

Values returns all known values for InstanceAutoRecoveryState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type InstanceBandwidthWeighting added in v1.196.0

type InstanceBandwidthWeighting string
const (
	InstanceBandwidthWeightingDefault InstanceBandwidthWeighting = "default"
	InstanceBandwidthWeightingVpc1    InstanceBandwidthWeighting = "vpc-1"
	InstanceBandwidthWeightingEbs1    InstanceBandwidthWeighting = "ebs-1"
)

Enum values for InstanceBandwidthWeighting

func (InstanceBandwidthWeighting) Values added in v1.196.0

Values returns all known values for InstanceBandwidthWeighting. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type InstanceBlockDeviceMapping

type InstanceBlockDeviceMapping struct {

	// The device name (for example, /dev/sdh or xvdh ).
	DeviceName *string

	// Parameters used to automatically set up EBS volumes when the instance is
	// launched.
	Ebs *EbsInstanceBlockDevice
	// contains filtered or unexported fields
}

Describes a block device mapping.

type InstanceBlockDeviceMappingSpecification

type InstanceBlockDeviceMappingSpecification struct {

	// The device name (for example, /dev/sdh or xvdh ).
	DeviceName *string

	// Parameters used to automatically set up EBS volumes when the instance is
	// launched.
	Ebs *EbsInstanceBlockDeviceSpecification

	// suppress the specified device included in the block device mapping.
	NoDevice *string

	// The virtual device name.
	VirtualName *string
	// contains filtered or unexported fields
}

Describes a block device mapping entry.

type InstanceBootModeValues added in v1.88.0

type InstanceBootModeValues string
const (
	InstanceBootModeValuesLegacyBios InstanceBootModeValues = "legacy-bios"
	InstanceBootModeValuesUefi       InstanceBootModeValues = "uefi"
)

Enum values for InstanceBootModeValues

func (InstanceBootModeValues) Values added in v1.88.0

Values returns all known values for InstanceBootModeValues. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type InstanceCapacity

type InstanceCapacity struct {

	// The number of instances that can be launched onto the Dedicated Host based on
	// the host's available capacity.
	AvailableCapacity *int32

	// The instance type supported by the Dedicated Host.
	InstanceType *string

	// The total number of instances that can be launched onto the Dedicated Host if
	// there are no instances running on it.
	TotalCapacity *int32
	// contains filtered or unexported fields
}

Information about the number of instances that can be launched onto the Dedicated Host.

type InstanceCount

type InstanceCount struct {

	// The number of listed Reserved Instances in the state specified by the state .
	InstanceCount *int32

	// The states of the listed Reserved Instances.
	State ListingState
	// contains filtered or unexported fields
}

Describes a Reserved Instance listing state.

type InstanceCreditSpecification

type InstanceCreditSpecification struct {

	// The credit option for CPU usage of the instance.
	//
	// Valid values: standard | unlimited
	CpuCredits *string

	// The ID of the instance.
	InstanceId *string
	// contains filtered or unexported fields
}

Describes the credit option for CPU usage of a burstable performance instance.

type InstanceCreditSpecificationRequest

type InstanceCreditSpecificationRequest struct {

	// The ID of the instance.
	//
	// This member is required.
	InstanceId *string

	// The credit option for CPU usage of the instance.
	//
	// Valid values: standard | unlimited
	//
	// T3 instances with host tenancy do not support the unlimited CPU credit option.
	CpuCredits *string
	// contains filtered or unexported fields
}

Describes the credit option for CPU usage of a burstable performance instance.

type InstanceEventWindow added in v1.13.0

type InstanceEventWindow struct {

	// One or more targets associated with the event window.
	AssociationTarget *InstanceEventWindowAssociationTarget

	// The cron expression defined for the event window.
	CronExpression *string

	// The ID of the event window.
	InstanceEventWindowId *string

	// The name of the event window.
	Name *string

	// The current state of the event window.
	State InstanceEventWindowState

	// The instance tags associated with the event window.
	Tags []Tag

	// One or more time ranges defined for the event window.
	TimeRanges []InstanceEventWindowTimeRange
	// contains filtered or unexported fields
}

The event window.

type InstanceEventWindowAssociationRequest added in v1.13.0

type InstanceEventWindowAssociationRequest struct {

	// The IDs of the Dedicated Hosts to associate with the event window.
	DedicatedHostIds []string

	// The IDs of the instances to associate with the event window. If the instance is
	// on a Dedicated Host, you can't specify the Instance ID parameter; you must use
	// the Dedicated Host ID parameter.
	InstanceIds []string

	// The instance tags to associate with the event window. Any instances associated
	// with the tags will be associated with the event window.
	InstanceTags []Tag
	// contains filtered or unexported fields
}

One or more targets associated with the specified event window. Only one type of target (instance ID, instance tag, or Dedicated Host ID) can be associated with an event window.

type InstanceEventWindowAssociationTarget added in v1.13.0

type InstanceEventWindowAssociationTarget struct {

	// The IDs of the Dedicated Hosts associated with the event window.
	DedicatedHostIds []string

	// The IDs of the instances associated with the event window.
	InstanceIds []string

	// The instance tags associated with the event window. Any instances associated
	// with the tags will be associated with the event window.
	Tags []Tag
	// contains filtered or unexported fields
}

One or more targets associated with the event window.

type InstanceEventWindowDisassociationRequest added in v1.13.0

type InstanceEventWindowDisassociationRequest struct {

	// The IDs of the Dedicated Hosts to disassociate from the event window.
	DedicatedHostIds []string

	// The IDs of the instances to disassociate from the event window.
	InstanceIds []string

	// The instance tags to disassociate from the event window. Any instances
	// associated with the tags will be disassociated from the event window.
	InstanceTags []Tag
	// contains filtered or unexported fields
}

The targets to disassociate from the specified event window.

type InstanceEventWindowState added in v1.13.0

type InstanceEventWindowState string
const (
	InstanceEventWindowStateCreating InstanceEventWindowState = "creating"
	InstanceEventWindowStateDeleting InstanceEventWindowState = "deleting"
	InstanceEventWindowStateActive   InstanceEventWindowState = "active"
	InstanceEventWindowStateDeleted  InstanceEventWindowState = "deleted"
)

Enum values for InstanceEventWindowState

func (InstanceEventWindowState) Values added in v1.13.0

Values returns all known values for InstanceEventWindowState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type InstanceEventWindowStateChange added in v1.13.0

type InstanceEventWindowStateChange struct {

	// The ID of the event window.
	InstanceEventWindowId *string

	// The current state of the event window.
	State InstanceEventWindowState
	// contains filtered or unexported fields
}

The state of the event window.

type InstanceEventWindowTimeRange added in v1.13.0

type InstanceEventWindowTimeRange struct {

	// The hour when the time range ends.
	EndHour *int32

	// The day on which the time range ends.
	EndWeekDay WeekDay

	// The hour when the time range begins.
	StartHour *int32

	// The day on which the time range begins.
	StartWeekDay WeekDay
	// contains filtered or unexported fields
}

The start day and time and the end day and time of the time range, in UTC.

type InstanceEventWindowTimeRangeRequest added in v1.13.0

type InstanceEventWindowTimeRangeRequest struct {

	// The hour when the time range ends.
	EndHour *int32

	// The day on which the time range ends.
	EndWeekDay WeekDay

	// The hour when the time range begins.
	StartHour *int32

	// The day on which the time range begins.
	StartWeekDay WeekDay
	// contains filtered or unexported fields
}

The start day and time and the end day and time of the time range, in UTC.

type InstanceExportDetails

type InstanceExportDetails struct {

	// The ID of the resource being exported.
	InstanceId *string

	// The target virtualization environment.
	TargetEnvironment ExportEnvironment
	// contains filtered or unexported fields
}

Describes an instance to export.

type InstanceFamilyCreditSpecification

type InstanceFamilyCreditSpecification struct {

	// The default credit option for CPU usage of the instance family. Valid values
	// are standard and unlimited .
	CpuCredits *string

	// The instance family.
	InstanceFamily UnlimitedSupportedInstanceFamily
	// contains filtered or unexported fields
}

Describes the default credit option for CPU usage of a burstable performance instance family.

type InstanceGeneration added in v1.21.0

type InstanceGeneration string
const (
	InstanceGenerationCurrent  InstanceGeneration = "current"
	InstanceGenerationPrevious InstanceGeneration = "previous"
)

Enum values for InstanceGeneration

func (InstanceGeneration) Values added in v1.21.0

Values returns all known values for InstanceGeneration. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type InstanceHealthStatus

type InstanceHealthStatus string
const (
	InstanceHealthStatusHealthyStatus   InstanceHealthStatus = "healthy"
	InstanceHealthStatusUnhealthyStatus InstanceHealthStatus = "unhealthy"
)

Enum values for InstanceHealthStatus

func (InstanceHealthStatus) Values added in v0.29.0

Values returns all known values for InstanceHealthStatus. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type InstanceImageMetadata added in v1.186.0

type InstanceImageMetadata struct {

	// The Availability Zone or Local Zone of the instance.
	AvailabilityZone *string

	// Information about the AMI used to launch the instance.
	ImageMetadata *ImageMetadata

	// The ID of the instance.
	InstanceId *string

	// The instance type.
	InstanceType InstanceType

	// The time the instance was launched.
	LaunchTime *time.Time

	// The entity that manages the instance.
	Operator *OperatorResponse

	// The ID of the Amazon Web Services account that owns the instance.
	OwnerId *string

	// The current state of the instance.
	State *InstanceState

	// Any tags assigned to the instance.
	Tags []Tag

	// The ID of the Availability Zone or Local Zone of the instance.
	ZoneId *string
	// contains filtered or unexported fields
}

Information about the instance and the AMI used to launch the instance.

type InstanceInterruptionBehavior

type InstanceInterruptionBehavior string
const (
	InstanceInterruptionBehaviorHibernate InstanceInterruptionBehavior = "hibernate"
	InstanceInterruptionBehaviorStop      InstanceInterruptionBehavior = "stop"
	InstanceInterruptionBehaviorTerminate InstanceInterruptionBehavior = "terminate"
)

Enum values for InstanceInterruptionBehavior

func (InstanceInterruptionBehavior) Values added in v0.29.0

Values returns all known values for InstanceInterruptionBehavior. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type InstanceIpv4Prefix added in v1.13.0

type InstanceIpv4Prefix struct {

	// One or more IPv4 prefixes assigned to the network interface.
	Ipv4Prefix *string
	// contains filtered or unexported fields
}

Information about an IPv4 prefix.

type InstanceIpv6Address

type InstanceIpv6Address struct {

	// The IPv6 address.
	Ipv6Address *string

	// Determines if an IPv6 address associated with a network interface is the
	// primary IPv6 address. When you enable an IPv6 GUA address to be a primary IPv6,
	// the first IPv6 GUA will be made the primary IPv6 address until the instance is
	// terminated or the network interface is detached. For more information, see [RunInstances].
	//
	// [RunInstances]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html
	IsPrimaryIpv6 *bool
	// contains filtered or unexported fields
}

Describes an IPv6 address.

type InstanceIpv6AddressRequest

type InstanceIpv6AddressRequest struct {

	// The IPv6 address.
	Ipv6Address *string
	// contains filtered or unexported fields
}

Describes an IPv6 address.

type InstanceIpv6Prefix added in v1.13.0

type InstanceIpv6Prefix struct {

	// One or more IPv6 prefixes assigned to the network interface.
	Ipv6Prefix *string
	// contains filtered or unexported fields
}

Information about an IPv6 prefix.

type InstanceLifecycle

type InstanceLifecycle string
const (
	InstanceLifecycleSpot     InstanceLifecycle = "spot"
	InstanceLifecycleOnDemand InstanceLifecycle = "on-demand"
)

Enum values for InstanceLifecycle

func (InstanceLifecycle) Values added in v0.29.0

Values returns all known values for InstanceLifecycle. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type InstanceLifecycleType

type InstanceLifecycleType string
const (
	InstanceLifecycleTypeSpot          InstanceLifecycleType = "spot"
	InstanceLifecycleTypeScheduled     InstanceLifecycleType = "scheduled"
	InstanceLifecycleTypeCapacityBlock InstanceLifecycleType = "capacity-block"
)

Enum values for InstanceLifecycleType

func (InstanceLifecycleType) Values added in v0.29.0

Values returns all known values for InstanceLifecycleType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type InstanceMaintenanceOptions added in v1.34.0

type InstanceMaintenanceOptions struct {

	// Provides information on the current automatic recovery behavior of your
	// instance.
	AutoRecovery InstanceAutoRecoveryState
	// contains filtered or unexported fields
}

The maintenance options for the instance.

type InstanceMaintenanceOptionsRequest added in v1.34.0

type InstanceMaintenanceOptionsRequest struct {

	// Disables the automatic recovery behavior of your instance or sets it to
	// default. For more information, see [Simplified automatic recovery].
	//
	// [Simplified automatic recovery]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-recover.html#instance-configuration-recovery
	AutoRecovery InstanceAutoRecoveryState
	// contains filtered or unexported fields
}

The maintenance options for the instance.

type InstanceMarketOptionsRequest

type InstanceMarketOptionsRequest struct {

	// The market type.
	MarketType MarketType

	// The options for Spot Instances.
	SpotOptions *SpotMarketOptions
	// contains filtered or unexported fields
}

Describes the market (purchasing) option for the instances.

type InstanceMatchCriteria

type InstanceMatchCriteria string
const (
	InstanceMatchCriteriaOpen     InstanceMatchCriteria = "open"
	InstanceMatchCriteriaTargeted InstanceMatchCriteria = "targeted"
)

Enum values for InstanceMatchCriteria

func (InstanceMatchCriteria) Values added in v0.29.0

Values returns all known values for InstanceMatchCriteria. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type InstanceMetadataDefaultsResponse added in v1.153.0

type InstanceMetadataDefaultsResponse struct {

	// Indicates whether the IMDS endpoint for an instance is enabled or disabled.
	// When disabled, the instance metadata can't be accessed.
	HttpEndpoint InstanceMetadataEndpointState

	// The maximum number of hops that the metadata token can travel.
	HttpPutResponseHopLimit *int32

	// Indicates whether IMDSv2 is required.
	//
	//   - optional – IMDSv2 is optional, which means that you can use either IMDSv2 or
	//   IMDSv1.
	//
	//   - required – IMDSv2 is required, which means that IMDSv1 is disabled, and you
	//   must use IMDSv2.
	HttpTokens HttpTokensState

	// Indicates whether access to instance tags from the instance metadata is enabled
	// or disabled. For more information, see [Work with instance tags using the instance metadata]in the Amazon EC2 User Guide.
	//
	// [Work with instance tags using the instance metadata]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#work-with-tags-in-IMDS
	InstanceMetadataTags InstanceMetadataTagsState

	// The entity that manages the IMDS default settings. Possible values include:
	//
	//   - account - The IMDS default settings are managed by the account.
	//
	//   - declarative-policy - The IMDS default settings are managed by a declarative
	//   policy and can't be modified by the account.
	ManagedBy ManagedBy

	// The customized exception message that is specified in the declarative policy.
	ManagedExceptionMessage *string
	// contains filtered or unexported fields
}

The default instance metadata service (IMDS) settings that were set at the account level in the specified Amazon Web Services
 Region.

type InstanceMetadataEndpointState

type InstanceMetadataEndpointState string
const (
	InstanceMetadataEndpointStateDisabled InstanceMetadataEndpointState = "disabled"
	InstanceMetadataEndpointStateEnabled  InstanceMetadataEndpointState = "enabled"
)

Enum values for InstanceMetadataEndpointState

func (InstanceMetadataEndpointState) Values added in v0.29.0

Values returns all known values for InstanceMetadataEndpointState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type InstanceMetadataOptionsRequest

type InstanceMetadataOptionsRequest struct {

	// Enables or disables the HTTP metadata endpoint on your instances.
	//
	// If you specify a value of disabled , you cannot access your instance metadata.
	//
	// Default: enabled
	HttpEndpoint InstanceMetadataEndpointState

	// Enables or disables the IPv6 endpoint for the instance metadata service.
	//
	// Default: disabled
	HttpProtocolIpv6 InstanceMetadataProtocolState

	// The maximum number of hops that the metadata token can travel.
	//
	// Possible values: Integers from 1 to 64
	HttpPutResponseHopLimit *int32

	// Indicates whether IMDSv2 is required.
	//
	//   - optional - IMDSv2 is optional, which means that you can use either IMDSv2 or
	//   IMDSv1.
	//
	//   - required - IMDSv2 is required, which means that IMDSv1 is disabled, and you
	//   must use IMDSv2.
	//
	// Default:
	//
	//   - If the value of ImdsSupport for the Amazon Machine Image (AMI) for your
	//   instance is v2.0 and the account level default is set to no-preference , the
	//   default is required .
	//
	//   - If the value of ImdsSupport for the Amazon Machine Image (AMI) for your
	//   instance is v2.0 , but the account level default is set to V1 or V2 , the
	//   default is optional .
	//
	// The default value can also be affected by other combinations of parameters. For
	// more information, see [Order of precedence for instance metadata options]in the Amazon EC2 User Guide.
	//
	// [Order of precedence for instance metadata options]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/configuring-instance-metadata-options.html#instance-metadata-options-order-of-precedence
	HttpTokens HttpTokensState

	// Set to enabled to allow access to instance tags from the instance metadata. Set
	// to disabled to turn off access to instance tags from the instance metadata. For
	// more information, see [Work with instance tags using the instance metadata].
	//
	// Default: disabled
	//
	// [Work with instance tags using the instance metadata]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#work-with-tags-in-IMDS
	InstanceMetadataTags InstanceMetadataTagsState
	// contains filtered or unexported fields
}

The metadata options for the instance.

type InstanceMetadataOptionsResponse

type InstanceMetadataOptionsResponse struct {

	// Indicates whether the HTTP metadata endpoint on your instances is enabled or
	// disabled.
	//
	// If the value is disabled , you cannot access your instance metadata.
	HttpEndpoint InstanceMetadataEndpointState

	// Indicates whether the IPv6 endpoint for the instance metadata service is
	// enabled or disabled.
	//
	// Default: disabled
	HttpProtocolIpv6 InstanceMetadataProtocolState

	// The maximum number of hops that the metadata token can travel.
	//
	// Possible values: Integers from 1 to 64
	HttpPutResponseHopLimit *int32

	// Indicates whether IMDSv2 is required.
	//
	//   - optional - IMDSv2 is optional, which means that you can use either IMDSv2 or
	//   IMDSv1.
	//
	//   - required - IMDSv2 is required, which means that IMDSv1 is disabled, and you
	//   must use IMDSv2.
	HttpTokens HttpTokensState

	// Indicates whether access to instance tags from the instance metadata is enabled
	// or disabled. For more information, see [Work with instance tags using the instance metadata].
	//
	// [Work with instance tags using the instance metadata]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#work-with-tags-in-IMDS
	InstanceMetadataTags InstanceMetadataTagsState

	// The state of the metadata option changes.
	//
	// pending - The metadata options are being updated and the instance is not ready
	// to process metadata traffic with the new selection.
	//
	// applied - The metadata options have been successfully applied on the instance.
	State InstanceMetadataOptionsState
	// contains filtered or unexported fields
}

The metadata options for the instance.

type InstanceMetadataOptionsState

type InstanceMetadataOptionsState string
const (
	InstanceMetadataOptionsStatePending InstanceMetadataOptionsState = "pending"
	InstanceMetadataOptionsStateApplied InstanceMetadataOptionsState = "applied"
)

Enum values for InstanceMetadataOptionsState

func (InstanceMetadataOptionsState) Values added in v0.29.0

Values returns all known values for InstanceMetadataOptionsState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type InstanceMetadataProtocolState added in v1.15.0

type InstanceMetadataProtocolState string
const (
	InstanceMetadataProtocolStateDisabled InstanceMetadataProtocolState = "disabled"
	InstanceMetadataProtocolStateEnabled  InstanceMetadataProtocolState = "enabled"
)

Enum values for InstanceMetadataProtocolState

func (InstanceMetadataProtocolState) Values added in v1.15.0

Values returns all known values for InstanceMetadataProtocolState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type InstanceMetadataTagsState added in v1.28.0

type InstanceMetadataTagsState string
const (
	InstanceMetadataTagsStateDisabled InstanceMetadataTagsState = "disabled"
	InstanceMetadataTagsStateEnabled  InstanceMetadataTagsState = "enabled"
)

Enum values for InstanceMetadataTagsState

func (InstanceMetadataTagsState) Values added in v1.28.0

Values returns all known values for InstanceMetadataTagsState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type InstanceMonitoring

type InstanceMonitoring struct {

	// The ID of the instance.
	InstanceId *string

	// The monitoring for the instance.
	Monitoring *Monitoring
	// contains filtered or unexported fields
}

Describes the monitoring of an instance.

type InstanceNetworkInterface

type InstanceNetworkInterface struct {

	// The association information for an Elastic IPv4 associated with the network
	// interface.
	Association *InstanceNetworkInterfaceAssociation

	// The network interface attachment.
	Attachment *InstanceNetworkInterfaceAttachment

	// A security group connection tracking configuration that enables you to set the
	// timeout for connection tracking on an Elastic network interface. For more
	// information, see [Connection tracking timeouts]in the Amazon EC2 User Guide.
	//
	// [Connection tracking timeouts]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-connection-tracking.html#connection-tracking-timeouts
	ConnectionTrackingConfiguration *ConnectionTrackingSpecificationResponse

	// The description.
	Description *string

	// The security groups.
	Groups []GroupIdentifier

	// The type of network interface.
	//
	// Valid values: interface | efa | efa-only | trunk
	InterfaceType *string

	// The IPv4 delegated prefixes that are assigned to the network interface.
	Ipv4Prefixes []InstanceIpv4Prefix

	// The IPv6 addresses associated with the network interface.
	Ipv6Addresses []InstanceIpv6Address

	// The IPv6 delegated prefixes that are assigned to the network interface.
	Ipv6Prefixes []InstanceIpv6Prefix

	// The MAC address.
	MacAddress *string

	// The ID of the network interface.
	NetworkInterfaceId *string

	// The service provider that manages the network interface.
	Operator *OperatorResponse

	// The ID of the Amazon Web Services account that created the network interface.
	OwnerId *string

	// The private DNS name.
	PrivateDnsName *string

	// The IPv4 address of the network interface within the subnet.
	PrivateIpAddress *string

	// The private IPv4 addresses associated with the network interface.
	PrivateIpAddresses []InstancePrivateIpAddress

	// Indicates whether source/destination checking is enabled.
	SourceDestCheck *bool

	// The status of the network interface.
	Status NetworkInterfaceStatus

	// The ID of the subnet.
	SubnetId *string

	// The ID of the VPC.
	VpcId *string
	// contains filtered or unexported fields
}

Describes a network interface.

type InstanceNetworkInterfaceAssociation

type InstanceNetworkInterfaceAssociation struct {

	// The carrier IP address associated with the network interface.
	CarrierIp *string

	// The customer-owned IP address associated with the network interface.
	CustomerOwnedIp *string

	// The ID of the owner of the Elastic IP address.
	IpOwnerId *string

	// The public DNS name.
	PublicDnsName *string

	// The public IP address or Elastic IP address bound to the network interface.
	PublicIp *string
	// contains filtered or unexported fields
}

Describes association information for an Elastic IP address (IPv4).

type InstanceNetworkInterfaceAttachment

type InstanceNetworkInterfaceAttachment struct {

	// The time stamp when the attachment initiated.
	AttachTime *time.Time

	// The ID of the network interface attachment.
	AttachmentId *string

	// Indicates whether the network interface is deleted when the instance is
	// terminated.
	DeleteOnTermination *bool

	// The index of the device on the instance for the network interface attachment.
	DeviceIndex *int32

	// Contains the ENA Express settings for the network interface that's attached to
	// the instance.
	EnaSrdSpecification *InstanceAttachmentEnaSrdSpecification

	// The index of the network card.
	NetworkCardIndex *int32

	// The attachment state.
	Status AttachmentStatus
	// contains filtered or unexported fields
}

Describes a network interface attachment.

type InstanceNetworkInterfaceSpecification

type InstanceNetworkInterfaceSpecification struct {

	// Indicates whether to assign a carrier IP address to the network interface.
	//
	// You can only assign a carrier IP address to a network interface that is in a
	// subnet in a Wavelength Zone. For more information about carrier IP addresses,
	// see [Carrier IP address]in the Amazon Web Services Wavelength Developer Guide.
	//
	// [Carrier IP address]: https://docs.aws.amazon.com/wavelength/latest/developerguide/how-wavelengths-work.html#provider-owned-ip
	AssociateCarrierIpAddress *bool

	// Indicates whether to assign a public IPv4 address to an instance you launch in
	// a VPC. The public IP address can only be assigned to a network interface for
	// eth0, and can only be assigned to a new network interface, not an existing one.
	// You cannot specify more than one network interface in the request. If launching
	// into a default subnet, the default value is true .
	//
	// Amazon Web Services charges for all public IPv4 addresses, including public
	// IPv4 addresses associated with running instances and Elastic IP addresses. For
	// more information, see the Public IPv4 Address tab on the [Amazon VPC pricing page].
	//
	// [Amazon VPC pricing page]: http://aws.amazon.com/vpc/pricing/
	AssociatePublicIpAddress *bool

	// A security group connection tracking specification that enables you to set the
	// timeout for connection tracking on an Elastic network interface. For more
	// information, see [Connection tracking timeouts]in the Amazon EC2 User Guide.
	//
	// [Connection tracking timeouts]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-connection-tracking.html#connection-tracking-timeouts
	ConnectionTrackingSpecification *ConnectionTrackingSpecificationRequest

	// If set to true , the interface is deleted when the instance is terminated. You
	// can specify true only if creating a new network interface when launching an
	// instance.
	DeleteOnTermination *bool

	// The description of the network interface. Applies only if creating a network
	// interface when launching an instance.
	Description *string

	// The position of the network interface in the attachment order. A primary
	// network interface has a device index of 0.
	//
	// If you specify a network interface when launching an instance, you must specify
	// the device index.
	DeviceIndex *int32

	// Specifies the ENA Express settings for the network interface that's attached to
	// the instance.
	EnaSrdSpecification *EnaSrdSpecificationRequest

	// The IDs of the security groups for the network interface. Applies only if
	// creating a network interface when launching an instance.
	Groups []string

	// The type of network interface.
	//
	// If you specify efa-only , do not assign any IP addresses to the network
	// interface. EFA-only network interfaces do not support IP addresses.
	//
	// Valid values: interface | efa | efa-only
	InterfaceType *string

	// The number of IPv4 delegated prefixes to be automatically assigned to the
	// network interface. You cannot use this option if you use the Ipv4Prefix option.
	Ipv4PrefixCount *int32

	// The IPv4 delegated prefixes to be assigned to the network interface. You cannot
	// use this option if you use the Ipv4PrefixCount option.
	Ipv4Prefixes []Ipv4PrefixSpecificationRequest

	// A number of IPv6 addresses to assign to the network interface. Amazon EC2
	// chooses the IPv6 addresses from the range of the subnet. You cannot specify this
	// option and the option to assign specific IPv6 addresses in the same request. You
	// can specify this option if you've specified a minimum number of instances to
	// launch.
	Ipv6AddressCount *int32

	// The IPv6 addresses to assign to the network interface. You cannot specify this
	// option and the option to assign a number of IPv6 addresses in the same request.
	// You cannot specify this option if you've specified a minimum number of instances
	// to launch.
	Ipv6Addresses []InstanceIpv6Address

	// The number of IPv6 delegated prefixes to be automatically assigned to the
	// network interface. You cannot use this option if you use the Ipv6Prefix option.
	Ipv6PrefixCount *int32

	// The IPv6 delegated prefixes to be assigned to the network interface. You cannot
	// use this option if you use the Ipv6PrefixCount option.
	Ipv6Prefixes []Ipv6PrefixSpecificationRequest

	// The index of the network card. Some instance types support multiple network
	// cards. The primary network interface must be assigned to network card index 0.
	// The default is network card index 0.
	//
	// If you are using [RequestSpotInstances] to create Spot Instances, omit this parameter because you
	// can’t specify the network card index when using this API. To specify the network
	// card index, use [RunInstances].
	//
	// [RequestSpotInstances]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RequestSpotInstances.html
	// [RunInstances]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html
	NetworkCardIndex *int32

	// The ID of the network interface.
	//
	// If you are creating a Spot Fleet, omit this parameter because you can’t specify
	// a network interface ID in a launch specification.
	NetworkInterfaceId *string

	// The primary IPv6 address of the network interface. When you enable an IPv6 GUA
	// address to be a primary IPv6, the first IPv6 GUA will be made the primary IPv6
	// address until the instance is terminated or the network interface is detached.
	// For more information about primary IPv6 addresses, see [RunInstances].
	//
	// [RunInstances]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html
	PrimaryIpv6 *bool

	// The private IPv4 address of the network interface. Applies only if creating a
	// network interface when launching an instance. You cannot specify this option if
	// you're launching more than one instance in a [RunInstances]request.
	//
	// [RunInstances]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html
	PrivateIpAddress *string

	// The private IPv4 addresses to assign to the network interface. Only one private
	// IPv4 address can be designated as primary. You cannot specify this option if
	// you're launching more than one instance in a [RunInstances]request.
	//
	// [RunInstances]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html
	PrivateIpAddresses []PrivateIpAddressSpecification

	// The number of secondary private IPv4 addresses. You can't specify this option
	// and specify more than one private IP address using the private IP addresses
	// option. You cannot specify this option if you're launching more than one
	// instance in a [RunInstances]request.
	//
	// [RunInstances]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html
	SecondaryPrivateIpAddressCount *int32

	// The ID of the subnet associated with the network interface. Applies only if
	// creating a network interface when launching an instance.
	SubnetId *string
	// contains filtered or unexported fields
}

Describes a network interface.

type InstanceNetworkPerformanceOptions added in v1.196.0

type InstanceNetworkPerformanceOptions struct {

	// When you configure network bandwidth weighting, you can boost your baseline
	// bandwidth for either networking or EBS by up to 25%. The total available
	// baseline bandwidth for your instance remains the same. The default option uses
	// the standard bandwidth configuration for your instance type.
	BandwidthWeighting InstanceBandwidthWeighting
	// contains filtered or unexported fields
}

With network performance options, you can adjust your bandwidth preferences to meet the needs of the workload that runs on your instance.

type InstanceNetworkPerformanceOptionsRequest added in v1.196.0

type InstanceNetworkPerformanceOptionsRequest struct {

	// Specify the bandwidth weighting option to boost the associated type of baseline
	// bandwidth, as follows:
	//
	// default This option uses the standard bandwidth configuration for your instance
	// type.
	//
	// vpc-1 This option boosts your networking baseline bandwidth and reduces your
	// EBS baseline bandwidth.
	//
	// ebs-1 This option boosts your EBS baseline bandwidth and reduces your
	// networking baseline bandwidth.
	BandwidthWeighting InstanceBandwidthWeighting
	// contains filtered or unexported fields
}

Configure network performance options for your instance that are geared towards performance improvements based on the workload that it runs.

type InstancePrivateIpAddress

type InstancePrivateIpAddress struct {

	// The association information for an Elastic IP address for the network interface.
	Association *InstanceNetworkInterfaceAssociation

	// Indicates whether this IPv4 address is the primary private IP address of the
	// network interface.
	Primary *bool

	// The private IPv4 DNS name.
	PrivateDnsName *string

	// The private IPv4 address of the network interface.
	PrivateIpAddress *string
	// contains filtered or unexported fields
}

Describes a private IPv4 address.

type InstanceRequirements added in v1.21.0

type InstanceRequirements struct {

	// The minimum and maximum number of accelerators (GPUs, FPGAs, or Amazon Web
	// Services Inferentia chips) on an instance.
	//
	// To exclude accelerator-enabled instance types, set Max to 0 .
	//
	// Default: No minimum or maximum limits
	AcceleratorCount *AcceleratorCount

	// Indicates whether instance types must have accelerators by specific
	// manufacturers.
	//
	//   - For instance types with Amazon Web Services devices, specify
	//   amazon-web-services .
	//
	//   - For instance types with AMD devices, specify amd .
	//
	//   - For instance types with Habana devices, specify habana .
	//
	//   - For instance types with NVIDIA devices, specify nvidia .
	//
	//   - For instance types with Xilinx devices, specify xilinx .
	//
	// Default: Any manufacturer
	AcceleratorManufacturers []AcceleratorManufacturer

	// The accelerators that must be on the instance type.
	//
	//   - For instance types with NVIDIA A10G GPUs, specify a10g .
	//
	//   - For instance types with NVIDIA A100 GPUs, specify a100 .
	//
	//   - For instance types with NVIDIA H100 GPUs, specify h100 .
	//
	//   - For instance types with Amazon Web Services Inferentia chips, specify
	//   inferentia .
	//
	//   - For instance types with NVIDIA GRID K520 GPUs, specify k520 .
	//
	//   - For instance types with NVIDIA K80 GPUs, specify k80 .
	//
	//   - For instance types with NVIDIA M60 GPUs, specify m60 .
	//
	//   - For instance types with AMD Radeon Pro V520 GPUs, specify radeon-pro-v520 .
	//
	//   - For instance types with NVIDIA T4 GPUs, specify t4 .
	//
	//   - For instance types with NVIDIA T4G GPUs, specify t4g .
	//
	//   - For instance types with Xilinx VU9P FPGAs, specify vu9p .
	//
	//   - For instance types with NVIDIA V100 GPUs, specify v100 .
	//
	// Default: Any accelerator
	AcceleratorNames []AcceleratorName

	// The minimum and maximum amount of total accelerator memory, in MiB.
	//
	// Default: No minimum or maximum limits
	AcceleratorTotalMemoryMiB *AcceleratorTotalMemoryMiB

	// The accelerator types that must be on the instance type.
	//
	//   - For instance types with GPU accelerators, specify gpu .
	//
	//   - For instance types with FPGA accelerators, specify fpga .
	//
	// Default: Any accelerator type
	AcceleratorTypes []AcceleratorType

	// The instance types to apply your specified attributes against. All other
	// instance types are ignored, even if they match your specified attributes.
	//
	// You can use strings with one or more wild cards, represented by an asterisk ( *
	// ), to allow an instance type, size, or generation. The following are examples:
	// m5.8xlarge , c5*.* , m5a.* , r* , *3* .
	//
	// For example, if you specify c5* ,Amazon EC2 will allow the entire C5 instance
	// family, which includes all C5a and C5n instance types. If you specify m5a.* ,
	// Amazon EC2 will allow all the M5a instance types, but not the M5n instance
	// types.
	//
	// If you specify AllowedInstanceTypes , you can't specify ExcludedInstanceTypes .
	//
	// Default: All instance types
	AllowedInstanceTypes []string

	// Indicates whether bare metal instance types must be included, excluded, or
	// required.
	//
	//   - To include bare metal instance types, specify included .
	//
	//   - To require only bare metal instance types, specify required .
	//
	//   - To exclude bare metal instance types, specify excluded .
	//
	// Default: excluded
	BareMetal BareMetal

	// The minimum and maximum baseline bandwidth to Amazon EBS, in Mbps. For more
	// information, see [Amazon EBS–optimized instances]in the Amazon EC2 User Guide.
	//
	// Default: No minimum or maximum limits
	//
	// [Amazon EBS–optimized instances]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-optimized.html
	BaselineEbsBandwidthMbps *BaselineEbsBandwidthMbps

	// The baseline performance to consider, using an instance family as a baseline
	// reference. The instance family establishes the lowest acceptable level of
	// performance. Amazon EC2 uses this baseline to guide instance type selection, but
	// there is no guarantee that the selected instance types will always exceed the
	// baseline for every application. Currently, this parameter only supports CPU
	// performance as a baseline performance factor. For more information, see [Performance protection]in the
	// Amazon EC2 User Guide.
	//
	// [Performance protection]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-attribute-based-instance-type-selection.html#ec2fleet-abis-performance-protection
	BaselinePerformanceFactors *BaselinePerformanceFactors

	// Indicates whether burstable performance T instance types are included,
	// excluded, or required. For more information, see [Burstable performance instances].
	//
	//   - To include burstable performance instance types, specify included .
	//
	//   - To require only burstable performance instance types, specify required .
	//
	//   - To exclude burstable performance instance types, specify excluded .
	//
	// Default: excluded
	//
	// [Burstable performance instances]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances.html
	BurstablePerformance BurstablePerformance

	// The CPU manufacturers to include.
	//
	//   - For instance types with Intel CPUs, specify intel .
	//
	//   - For instance types with AMD CPUs, specify amd .
	//
	//   - For instance types with Amazon Web Services CPUs, specify
	//   amazon-web-services .
	//
	//   - For instance types with Apple CPUs, specify apple .
	//
	// Don't confuse the CPU manufacturer with the CPU architecture. Instances will be
	// launched with a compatible CPU architecture based on the Amazon Machine Image
	// (AMI) that you specify in your launch template.
	//
	// Default: Any manufacturer
	CpuManufacturers []CpuManufacturer

	// The instance types to exclude.
	//
	// You can use strings with one or more wild cards, represented by an asterisk ( *
	// ), to exclude an instance type, size, or generation. The following are examples:
	// m5.8xlarge , c5*.* , m5a.* , r* , *3* .
	//
	// For example, if you specify c5* ,Amazon EC2 will exclude the entire C5 instance
	// family, which includes all C5a and C5n instance types. If you specify m5a.* ,
	// Amazon EC2 will exclude all the M5a instance types, but not the M5n instance
	// types.
	//
	// If you specify ExcludedInstanceTypes , you can't specify AllowedInstanceTypes .
	//
	// Default: No excluded instance types
	ExcludedInstanceTypes []string

	// Indicates whether current or previous generation instance types are included.
	// The current generation instance types are recommended for use. Current
	// generation instance types are typically the latest two to three generations in
	// each instance family. For more information, see [Instance types]in the Amazon EC2 User Guide.
	//
	// For current generation instance types, specify current .
	//
	// For previous generation instance types, specify previous .
	//
	// Default: Current and previous generation instance types
	//
	// [Instance types]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html
	InstanceGenerations []InstanceGeneration

	// Indicates whether instance types with instance store volumes are included,
	// excluded, or required. For more information, [Amazon EC2 instance store]in the Amazon EC2 User Guide.
	//
	//   - To include instance types with instance store volumes, specify included .
	//
	//   - To require only instance types with instance store volumes, specify required
	//   .
	//
	//   - To exclude instance types with instance store volumes, specify excluded .
	//
	// Default: included
	//
	// [Amazon EC2 instance store]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/InstanceStorage.html
	LocalStorage LocalStorage

	// The type of local storage that is required.
	//
	//   - For instance types with hard disk drive (HDD) storage, specify hdd .
	//
	//   - For instance types with solid state drive (SSD) storage, specify ssd .
	//
	// Default: hdd and ssd
	LocalStorageTypes []LocalStorageType

	// [Price protection] The price protection threshold for Spot Instances, as a
	// percentage of an identified On-Demand price. The identified On-Demand price is
	// the price of the lowest priced current generation C, M, or R instance type with
	// your specified attributes. If no current generation C, M, or R instance type
	// matches your attributes, then the identified price is from the lowest priced
	// current generation instance types, and failing that, from the lowest priced
	// previous generation instance types that match your attributes. When Amazon EC2
	// selects instance types with your attributes, it will exclude instance types
	// whose price exceeds your specified threshold.
	//
	// The parameter accepts an integer, which Amazon EC2 interprets as a percentage.
	//
	// If you set TargetCapacityUnitType to vcpu or memory-mib , the price protection
	// threshold is based on the per vCPU or per memory price instead of the per
	// instance price.
	//
	// Only one of SpotMaxPricePercentageOverLowestPrice or
	// MaxSpotPriceAsPercentageOfOptimalOnDemandPrice can be specified. If you don't
	// specify either, Amazon EC2 will automatically apply optimal price protection to
	// consistently select from a wide range of instance types. To indicate no price
	// protection threshold for Spot Instances, meaning you want to consider all
	// instance types that match your attributes, include one of these parameters and
	// specify a high value, such as 999999 .
	MaxSpotPriceAsPercentageOfOptimalOnDemandPrice *int32

	// The minimum and maximum amount of memory per vCPU, in GiB.
	//
	// Default: No minimum or maximum limits
	MemoryGiBPerVCpu *MemoryGiBPerVCpu

	// The minimum and maximum amount of memory, in MiB.
	MemoryMiB *MemoryMiB

	// The minimum and maximum amount of network bandwidth, in gigabits per second
	// (Gbps).
	//
	// Default: No minimum or maximum limits
	NetworkBandwidthGbps *NetworkBandwidthGbps

	// The minimum and maximum number of network interfaces.
	//
	// Default: No minimum or maximum limits
	NetworkInterfaceCount *NetworkInterfaceCount

	// [Price protection] The price protection threshold for On-Demand Instances, as a
	// percentage higher than an identified On-Demand price. The identified On-Demand
	// price is the price of the lowest priced current generation C, M, or R instance
	// type with your specified attributes. When Amazon EC2 selects instance types with
	// your attributes, it will exclude instance types whose price exceeds your
	// specified threshold.
	//
	// The parameter accepts an integer, which Amazon EC2 interprets as a percentage.
	//
	// To turn off price protection, specify a high value, such as 999999 .
	//
	// This parameter is not supported for [GetSpotPlacementScores] and [GetInstanceTypesFromInstanceRequirements].
	//
	// If you set TargetCapacityUnitType to vcpu or memory-mib , the price protection
	// threshold is applied based on the per-vCPU or per-memory price instead of the
	// per-instance price.
	//
	// Default: 20
	//
	// [GetSpotPlacementScores]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html
	// [GetInstanceTypesFromInstanceRequirements]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetInstanceTypesFromInstanceRequirements.html
	OnDemandMaxPricePercentageOverLowestPrice *int32

	// Indicates whether instance types must support hibernation for On-Demand
	// Instances.
	//
	// This parameter is not supported for [GetSpotPlacementScores].
	//
	// Default: false
	//
	// [GetSpotPlacementScores]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html
	RequireHibernateSupport *bool

	// [Price protection] The price protection threshold for Spot Instances, as a
	// percentage higher than an identified Spot price. The identified Spot price is
	// the Spot price of the lowest priced current generation C, M, or R instance type
	// with your specified attributes. If no current generation C, M, or R instance
	// type matches your attributes, then the identified Spot price is from the lowest
	// priced current generation instance types, and failing that, from the lowest
	// priced previous generation instance types that match your attributes. When
	// Amazon EC2 selects instance types with your attributes, it will exclude instance
	// types whose Spot price exceeds your specified threshold.
	//
	// The parameter accepts an integer, which Amazon EC2 interprets as a percentage.
	//
	// If you set TargetCapacityUnitType to vcpu or memory-mib , the price protection
	// threshold is applied based on the per-vCPU or per-memory price instead of the
	// per-instance price.
	//
	// This parameter is not supported for [GetSpotPlacementScores] and [GetInstanceTypesFromInstanceRequirements].
	//
	// Only one of SpotMaxPricePercentageOverLowestPrice or
	// MaxSpotPriceAsPercentageOfOptimalOnDemandPrice can be specified. If you don't
	// specify either, Amazon EC2 will automatically apply optimal price protection to
	// consistently select from a wide range of instance types. To indicate no price
	// protection threshold for Spot Instances, meaning you want to consider all
	// instance types that match your attributes, include one of these parameters and
	// specify a high value, such as 999999 .
	//
	// Default: 100
	//
	// [GetSpotPlacementScores]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html
	// [GetInstanceTypesFromInstanceRequirements]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetInstanceTypesFromInstanceRequirements.html
	SpotMaxPricePercentageOverLowestPrice *int32

	// The minimum and maximum amount of total local storage, in GB.
	//
	// Default: No minimum or maximum limits
	TotalLocalStorageGB *TotalLocalStorageGB

	// The minimum and maximum number of vCPUs.
	VCpuCount *VCpuCountRange
	// contains filtered or unexported fields
}

The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with these attributes.

You must specify VCpuCount and MemoryMiB . All other attributes are optional. Any unspecified optional attribute is set to its default.

When you specify multiple attributes, you get instance types that satisfy all of the specified attributes. If you specify multiple values for an attribute, you get instance types that satisfy any of the specified values.

To limit the list of instance types from which Amazon EC2 can identify matching instance types, you can use one of the following parameters, but not both in the same request:

  • AllowedInstanceTypes - The instance types to include in the list. All other instance types are ignored, even if they match your specified attributes.

  • ExcludedInstanceTypes - The instance types to exclude from the list, even if they match your specified attributes.

If you specify InstanceRequirements , you can't specify InstanceType .

Attribute-based instance type selection is only supported when using Auto Scaling groups, EC2 Fleet, and Spot Fleet to launch instances. If you plan to use the launch template in the launch instance wizardor with the RunInstances API, you can't specify InstanceRequirements .

For more information, see Create mixed instances group using attribute-based instance type selection in the Amazon EC2 Auto Scaling User Guide, and also Specify attributes for instance type selection for EC2 Fleet or Spot Fleet and Spot placement scorein the Amazon EC2 User Guide.

type InstanceRequirementsRequest added in v1.21.0

type InstanceRequirementsRequest struct {

	// The minimum and maximum amount of memory, in MiB.
	//
	// This member is required.
	MemoryMiB *MemoryMiBRequest

	// The minimum and maximum number of vCPUs.
	//
	// This member is required.
	VCpuCount *VCpuCountRangeRequest

	// The minimum and maximum number of accelerators (GPUs, FPGAs, or Amazon Web
	// Services Inferentia chips) on an instance.
	//
	// To exclude accelerator-enabled instance types, set Max to 0 .
	//
	// Default: No minimum or maximum limits
	AcceleratorCount *AcceleratorCountRequest

	// Indicates whether instance types must have accelerators by specific
	// manufacturers.
	//
	//   - For instance types with Amazon Web Services devices, specify
	//   amazon-web-services .
	//
	//   - For instance types with AMD devices, specify amd .
	//
	//   - For instance types with Habana devices, specify habana .
	//
	//   - For instance types with NVIDIA devices, specify nvidia .
	//
	//   - For instance types with Xilinx devices, specify xilinx .
	//
	// Default: Any manufacturer
	AcceleratorManufacturers []AcceleratorManufacturer

	// The accelerators that must be on the instance type.
	//
	//   - For instance types with NVIDIA A10G GPUs, specify a10g .
	//
	//   - For instance types with NVIDIA A100 GPUs, specify a100 .
	//
	//   - For instance types with NVIDIA H100 GPUs, specify h100 .
	//
	//   - For instance types with Amazon Web Services Inferentia chips, specify
	//   inferentia .
	//
	//   - For instance types with NVIDIA GRID K520 GPUs, specify k520 .
	//
	//   - For instance types with NVIDIA K80 GPUs, specify k80 .
	//
	//   - For instance types with NVIDIA M60 GPUs, specify m60 .
	//
	//   - For instance types with AMD Radeon Pro V520 GPUs, specify radeon-pro-v520 .
	//
	//   - For instance types with NVIDIA T4 GPUs, specify t4 .
	//
	//   - For instance types with NVIDIA T4G GPUs, specify t4g .
	//
	//   - For instance types with Xilinx VU9P FPGAs, specify vu9p .
	//
	//   - For instance types with NVIDIA V100 GPUs, specify v100 .
	//
	// Default: Any accelerator
	AcceleratorNames []AcceleratorName

	// The minimum and maximum amount of total accelerator memory, in MiB.
	//
	// Default: No minimum or maximum limits
	AcceleratorTotalMemoryMiB *AcceleratorTotalMemoryMiBRequest

	// The accelerator types that must be on the instance type.
	//
	//   - To include instance types with GPU hardware, specify gpu .
	//
	//   - To include instance types with FPGA hardware, specify fpga .
	//
	// Default: Any accelerator type
	AcceleratorTypes []AcceleratorType

	// The instance types to apply your specified attributes against. All other
	// instance types are ignored, even if they match your specified attributes.
	//
	// You can use strings with one or more wild cards, represented by an asterisk ( *
	// ), to allow an instance type, size, or generation. The following are examples:
	// m5.8xlarge , c5*.* , m5a.* , r* , *3* .
	//
	// For example, if you specify c5* ,Amazon EC2 will allow the entire C5 instance
	// family, which includes all C5a and C5n instance types. If you specify m5a.* ,
	// Amazon EC2 will allow all the M5a instance types, but not the M5n instance
	// types.
	//
	// If you specify AllowedInstanceTypes , you can't specify ExcludedInstanceTypes .
	//
	// Default: All instance types
	AllowedInstanceTypes []string

	// Indicates whether bare metal instance types must be included, excluded, or
	// required.
	//
	//   - To include bare metal instance types, specify included .
	//
	//   - To require only bare metal instance types, specify required .
	//
	//   - To exclude bare metal instance types, specify excluded .
	//
	// Default: excluded
	BareMetal BareMetal

	// The minimum and maximum baseline bandwidth to Amazon EBS, in Mbps. For more
	// information, see [Amazon EBS–optimized instances]in the Amazon EC2 User Guide.
	//
	// Default: No minimum or maximum limits
	//
	// [Amazon EBS–optimized instances]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-optimized.html
	BaselineEbsBandwidthMbps *BaselineEbsBandwidthMbpsRequest

	// The baseline performance to consider, using an instance family as a baseline
	// reference. The instance family establishes the lowest acceptable level of
	// performance. Amazon EC2 uses this baseline to guide instance type selection, but
	// there is no guarantee that the selected instance types will always exceed the
	// baseline for every application. Currently, this parameter only supports CPU
	// performance as a baseline performance factor. For more information, see [Performance protection]in the
	// Amazon EC2 User Guide.
	//
	// [Performance protection]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-attribute-based-instance-type-selection.html#ec2fleet-abis-performance-protection
	BaselinePerformanceFactors *BaselinePerformanceFactorsRequest

	// Indicates whether burstable performance T instance types are included,
	// excluded, or required. For more information, see [Burstable performance instances].
	//
	//   - To include burstable performance instance types, specify included .
	//
	//   - To require only burstable performance instance types, specify required .
	//
	//   - To exclude burstable performance instance types, specify excluded .
	//
	// Default: excluded
	//
	// [Burstable performance instances]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances.html
	BurstablePerformance BurstablePerformance

	// The CPU manufacturers to include.
	//
	//   - For instance types with Intel CPUs, specify intel .
	//
	//   - For instance types with AMD CPUs, specify amd .
	//
	//   - For instance types with Amazon Web Services CPUs, specify
	//   amazon-web-services .
	//
	//   - For instance types with Apple CPUs, specify apple .
	//
	// Don't confuse the CPU manufacturer with the CPU architecture. Instances will be
	// launched with a compatible CPU architecture based on the Amazon Machine Image
	// (AMI) that you specify in your launch template.
	//
	// Default: Any manufacturer
	CpuManufacturers []CpuManufacturer

	// The instance types to exclude.
	//
	// You can use strings with one or more wild cards, represented by an asterisk ( *
	// ), to exclude an instance family, type, size, or generation. The following are
	// examples: m5.8xlarge , c5*.* , m5a.* , r* , *3* .
	//
	// For example, if you specify c5* ,Amazon EC2 will exclude the entire C5 instance
	// family, which includes all C5a and C5n instance types. If you specify m5a.* ,
	// Amazon EC2 will exclude all the M5a instance types, but not the M5n instance
	// types.
	//
	// If you specify ExcludedInstanceTypes , you can't specify AllowedInstanceTypes .
	//
	// Default: No excluded instance types
	ExcludedInstanceTypes []string

	// Indicates whether current or previous generation instance types are included.
	// The current generation instance types are recommended for use. Current
	// generation instance types are typically the latest two to three generations in
	// each instance family. For more information, see [Instance types]in the Amazon EC2 User Guide.
	//
	// For current generation instance types, specify current .
	//
	// For previous generation instance types, specify previous .
	//
	// Default: Current and previous generation instance types
	//
	// [Instance types]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html
	InstanceGenerations []InstanceGeneration

	// Indicates whether instance types with instance store volumes are included,
	// excluded, or required. For more information, [Amazon EC2 instance store]in the Amazon EC2 User Guide.
	//
	//   - To include instance types with instance store volumes, specify included .
	//
	//   - To require only instance types with instance store volumes, specify required
	//   .
	//
	//   - To exclude instance types with instance store volumes, specify excluded .
	//
	// Default: included
	//
	// [Amazon EC2 instance store]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/InstanceStorage.html
	LocalStorage LocalStorage

	// The type of local storage that is required.
	//
	//   - For instance types with hard disk drive (HDD) storage, specify hdd .
	//
	//   - For instance types with solid state drive (SSD) storage, specify ssd .
	//
	// Default: hdd and ssd
	LocalStorageTypes []LocalStorageType

	// [Price protection] The price protection threshold for Spot Instances, as a
	// percentage of an identified On-Demand price. The identified On-Demand price is
	// the price of the lowest priced current generation C, M, or R instance type with
	// your specified attributes. If no current generation C, M, or R instance type
	// matches your attributes, then the identified price is from the lowest priced
	// current generation instance types, and failing that, from the lowest priced
	// previous generation instance types that match your attributes. When Amazon EC2
	// selects instance types with your attributes, it will exclude instance types
	// whose price exceeds your specified threshold.
	//
	// The parameter accepts an integer, which Amazon EC2 interprets as a percentage.
	//
	// If you set TargetCapacityUnitType to vcpu or memory-mib , the price protection
	// threshold is based on the per vCPU or per memory price instead of the per
	// instance price.
	//
	// Only one of SpotMaxPricePercentageOverLowestPrice or
	// MaxSpotPriceAsPercentageOfOptimalOnDemandPrice can be specified. If you don't
	// specify either, Amazon EC2 will automatically apply optimal price protection to
	// consistently select from a wide range of instance types. To indicate no price
	// protection threshold for Spot Instances, meaning you want to consider all
	// instance types that match your attributes, include one of these parameters and
	// specify a high value, such as 999999 .
	MaxSpotPriceAsPercentageOfOptimalOnDemandPrice *int32

	// The minimum and maximum amount of memory per vCPU, in GiB.
	//
	// Default: No minimum or maximum limits
	MemoryGiBPerVCpu *MemoryGiBPerVCpuRequest

	// The minimum and maximum amount of baseline network bandwidth, in gigabits per
	// second (Gbps). For more information, see [Amazon EC2 instance network bandwidth]in the Amazon EC2 User Guide.
	//
	// Default: No minimum or maximum limits
	//
	// [Amazon EC2 instance network bandwidth]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-network-bandwidth.html
	NetworkBandwidthGbps *NetworkBandwidthGbpsRequest

	// The minimum and maximum number of network interfaces.
	//
	// Default: No minimum or maximum limits
	NetworkInterfaceCount *NetworkInterfaceCountRequest

	// [Price protection] The price protection threshold for On-Demand Instances, as a
	// percentage higher than an identified On-Demand price. The identified On-Demand
	// price is the price of the lowest priced current generation C, M, or R instance
	// type with your specified attributes. When Amazon EC2 selects instance types with
	// your attributes, it will exclude instance types whose price exceeds your
	// specified threshold.
	//
	// The parameter accepts an integer, which Amazon EC2 interprets as a percentage.
	//
	// To indicate no price protection threshold, specify a high value, such as 999999 .
	//
	// This parameter is not supported for [GetSpotPlacementScores] and [GetInstanceTypesFromInstanceRequirements].
	//
	// If you set TargetCapacityUnitType to vcpu or memory-mib , the price protection
	// threshold is applied based on the per-vCPU or per-memory price instead of the
	// per-instance price.
	//
	// Default: 20
	//
	// [GetSpotPlacementScores]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html
	// [GetInstanceTypesFromInstanceRequirements]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetInstanceTypesFromInstanceRequirements.html
	OnDemandMaxPricePercentageOverLowestPrice *int32

	// Indicates whether instance types must support hibernation for On-Demand
	// Instances.
	//
	// This parameter is not supported for [GetSpotPlacementScores].
	//
	// Default: false
	//
	// [GetSpotPlacementScores]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html
	RequireHibernateSupport *bool

	// [Price protection] The price protection threshold for Spot Instances, as a
	// percentage higher than an identified Spot price. The identified Spot price is
	// the Spot price of the lowest priced current generation C, M, or R instance type
	// with your specified attributes. If no current generation C, M, or R instance
	// type matches your attributes, then the identified Spot price is from the lowest
	// priced current generation instance types, and failing that, from the lowest
	// priced previous generation instance types that match your attributes. When
	// Amazon EC2 selects instance types with your attributes, it will exclude instance
	// types whose Spot price exceeds your specified threshold.
	//
	// The parameter accepts an integer, which Amazon EC2 interprets as a percentage.
	//
	// If you set TargetCapacityUnitType to vcpu or memory-mib , the price protection
	// threshold is applied based on the per-vCPU or per-memory price instead of the
	// per-instance price.
	//
	// This parameter is not supported for [GetSpotPlacementScores] and [GetInstanceTypesFromInstanceRequirements].
	//
	// Only one of SpotMaxPricePercentageOverLowestPrice or
	// MaxSpotPriceAsPercentageOfOptimalOnDemandPrice can be specified. If you don't
	// specify either, Amazon EC2 will automatically apply optimal price protection to
	// consistently select from a wide range of instance types. To indicate no price
	// protection threshold for Spot Instances, meaning you want to consider all
	// instance types that match your attributes, include one of these parameters and
	// specify a high value, such as 999999 .
	//
	// Default: 100
	//
	// [GetSpotPlacementScores]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html
	// [GetInstanceTypesFromInstanceRequirements]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetInstanceTypesFromInstanceRequirements.html
	SpotMaxPricePercentageOverLowestPrice *int32

	// The minimum and maximum amount of total local storage, in GB.
	//
	// Default: No minimum or maximum limits
	TotalLocalStorageGB *TotalLocalStorageGBRequest
	// contains filtered or unexported fields
}

The attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with these attributes.

You must specify VCpuCount and MemoryMiB . All other attributes are optional. Any unspecified optional attribute is set to its default.

When you specify multiple attributes, you get instance types that satisfy all of the specified attributes. If you specify multiple values for an attribute, you get instance types that satisfy any of the specified values.

To limit the list of instance types from which Amazon EC2 can identify matching instance types, you can use one of the following parameters, but not both in the same request:

  • AllowedInstanceTypes - The instance types to include in the list. All other instance types are ignored, even if they match your specified attributes.

  • ExcludedInstanceTypes - The instance types to exclude from the list, even if they match your specified attributes.

If you specify InstanceRequirements , you can't specify InstanceType .

Attribute-based instance type selection is only supported when using Auto Scaling groups, EC2 Fleet, and Spot Fleet to launch instances. If you plan to use the launch template in the launch instance wizard, or with the RunInstances API or AWS::EC2::Instance Amazon Web Services CloudFormation resource, you can't specify InstanceRequirements .

For more information, see Specify attributes for instance type selection for EC2 Fleet or Spot Fleet and Spot placement score in the Amazon EC2 User Guide.

type InstanceRequirementsWithMetadataRequest added in v1.21.0

type InstanceRequirementsWithMetadataRequest struct {

	// The architecture type.
	ArchitectureTypes []ArchitectureType

	// The attributes for the instance types. When you specify instance attributes,
	// Amazon EC2 will identify instance types with those attributes.
	InstanceRequirements *InstanceRequirementsRequest

	// The virtualization type.
	VirtualizationTypes []VirtualizationType
	// contains filtered or unexported fields
}

The architecture type, virtualization type, and other attributes for the instance types. When you specify instance attributes, Amazon EC2 will identify instance types with those attributes.

If you specify InstanceRequirementsWithMetadataRequest , you can't specify InstanceTypes .

type InstanceSpecification

type InstanceSpecification struct {

	// The instance to specify which volumes should be snapshotted.
	//
	// This member is required.
	InstanceId *string

	// Excludes the root volume from being snapshotted.
	ExcludeBootVolume *bool

	// The IDs of the data (non-root) volumes to exclude from the multi-volume
	// snapshot set. If you specify the ID of the root volume, the request fails. To
	// exclude the root volume, use ExcludeBootVolume.
	//
	// You can specify up to 40 volume IDs per request.
	ExcludeDataVolumeIds []string
	// contains filtered or unexported fields
}

The instance details to specify which volumes should be snapshotted.

type InstanceState

type InstanceState struct {

	// The state of the instance as a 16-bit unsigned integer.
	//
	// The high byte is all of the bits between 2^8 and (2^16)-1, which equals decimal
	// values between 256 and 65,535. These numerical values are used for internal
	// purposes and should be ignored.
	//
	// The low byte is all of the bits between 2^0 and (2^8)-1, which equals decimal
	// values between 0 and 255.
	//
	// The valid values for instance-state-code will all be in the range of the low
	// byte and they are:
	//
	//   - 0 : pending
	//
	//   - 16 : running
	//
	//   - 32 : shutting-down
	//
	//   - 48 : terminated
	//
	//   - 64 : stopping
	//
	//   - 80 : stopped
	//
	// You can ignore the high byte value by zeroing out all of the bits above 2^8 or
	// 256 in decimal.
	Code *int32

	// The current state of the instance.
	Name InstanceStateName
	// contains filtered or unexported fields
}

Describes the current state of an instance.

type InstanceStateChange

type InstanceStateChange struct {

	// The current state of the instance.
	CurrentState *InstanceState

	// The ID of the instance.
	InstanceId *string

	// The previous state of the instance.
	PreviousState *InstanceState
	// contains filtered or unexported fields
}

Describes an instance state change.

type InstanceStateName

type InstanceStateName string
const (
	InstanceStateNamePending      InstanceStateName = "pending"
	InstanceStateNameRunning      InstanceStateName = "running"
	InstanceStateNameShuttingDown InstanceStateName = "shutting-down"
	InstanceStateNameTerminated   InstanceStateName = "terminated"
	InstanceStateNameStopping     InstanceStateName = "stopping"
	InstanceStateNameStopped      InstanceStateName = "stopped"
)

Enum values for InstanceStateName

func (InstanceStateName) Values added in v0.29.0

Values returns all known values for InstanceStateName. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type InstanceStatus

type InstanceStatus struct {

	// Reports impaired functionality that stems from an attached Amazon EBS volume
	// that is unreachable and unable to complete I/O operations.
	AttachedEbsStatus *EbsStatusSummary

	// The Availability Zone of the instance.
	AvailabilityZone *string

	// Any scheduled events associated with the instance.
	Events []InstanceStatusEvent

	// The ID of the instance.
	InstanceId *string

	// The intended state of the instance. DescribeInstanceStatus requires that an instance be in the running
	// state.
	InstanceState *InstanceState

	// Reports impaired functionality that stems from issues internal to the instance,
	// such as impaired reachability.
	InstanceStatus *InstanceStatusSummary

	// The service provider that manages the instance.
	Operator *OperatorResponse

	// The Amazon Resource Name (ARN) of the Outpost.
	OutpostArn *string

	// Reports impaired functionality that stems from issues related to the systems
	// that support an instance, such as hardware failures and network connectivity
	// problems.
	SystemStatus *InstanceStatusSummary
	// contains filtered or unexported fields
}

Describes the status of an instance.

type InstanceStatusDetails

type InstanceStatusDetails struct {

	// The time when a status check failed. For an instance that was launched and
	// impaired, this is the time when the instance was launched.
	ImpairedSince *time.Time

	// The type of instance status.
	Name StatusName

	// The status.
	Status StatusType
	// contains filtered or unexported fields
}

Describes the instance status.

type InstanceStatusEvent

type InstanceStatusEvent struct {

	// The event code.
	Code EventCode

	// A description of the event.
	//
	// After a scheduled event is completed, it can still be described for up to a
	// week. If the event has been completed, this description starts with the
	// following text: [Completed].
	Description *string

	// The ID of the event.
	InstanceEventId *string

	// The latest scheduled end time for the event.
	NotAfter *time.Time

	// The earliest scheduled start time for the event.
	NotBefore *time.Time

	// The deadline for starting the event.
	NotBeforeDeadline *time.Time
	// contains filtered or unexported fields
}

Describes a scheduled event for an instance.

type InstanceStatusSummary

type InstanceStatusSummary struct {

	// The system instance health or application instance health.
	Details []InstanceStatusDetails

	// The status.
	Status SummaryStatus
	// contains filtered or unexported fields
}

Describes the status of an instance.

type InstanceStorageEncryptionSupport added in v1.20.0

type InstanceStorageEncryptionSupport string
const (
	InstanceStorageEncryptionSupportUnsupported InstanceStorageEncryptionSupport = "unsupported"
	InstanceStorageEncryptionSupportRequired    InstanceStorageEncryptionSupport = "required"
)

Enum values for InstanceStorageEncryptionSupport

func (InstanceStorageEncryptionSupport) Values added in v1.20.0

Values returns all known values for InstanceStorageEncryptionSupport. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type InstanceStorageInfo

type InstanceStorageInfo struct {

	// Describes the disks that are available for the instance type.
	Disks []DiskInfo

	// Indicates whether data is encrypted at rest.
	EncryptionSupport InstanceStorageEncryptionSupport

	// Indicates whether non-volatile memory express (NVMe) is supported.
	NvmeSupport EphemeralNvmeSupport

	// The total size of the disks, in GB.
	TotalSizeInGB *int64
	// contains filtered or unexported fields
}

Describes the instance store features that are supported by the instance type.

type InstanceTagNotificationAttribute

type InstanceTagNotificationAttribute struct {

	// Indicates wheter all tag keys in the current Region are registered to appear in
	// scheduled event notifications. true indicates that all tag keys in the current
	// Region are registered.
	IncludeAllTagsOfInstance *bool

	// The registered tag keys.
	InstanceTagKeys []string
	// contains filtered or unexported fields
}

Describes the registered tag keys for the current Region.

type InstanceTopology added in v1.133.0

type InstanceTopology struct {

	// The name of the Availability Zone or Local Zone that the instance is in.
	AvailabilityZone *string

	// The name of the placement group that the instance is in.
	GroupName *string

	// The instance ID.
	InstanceId *string

	// The instance type.
	InstanceType *string

	// The network nodes. The nodes are hashed based on your account. Instances from
	// different accounts running under the same server will return a different hashed
	// list of strings.
	NetworkNodes []string

	// The ID of the Availability Zone or Local Zone that the instance is in.
	ZoneId *string
	// contains filtered or unexported fields
}

Information about the instance topology.

type InstanceType

type InstanceType string
const (
	InstanceTypeA1Medium          InstanceType = "a1.medium"
	InstanceTypeA1Large           InstanceType = "a1.large"
	InstanceTypeA1Xlarge          InstanceType = "a1.xlarge"
	InstanceTypeA12xlarge         InstanceType = "a1.2xlarge"
	InstanceTypeA14xlarge         InstanceType = "a1.4xlarge"
	InstanceTypeA1Metal           InstanceType = "a1.metal"
	InstanceTypeC1Medium          InstanceType = "c1.medium"
	InstanceTypeC1Xlarge          InstanceType = "c1.xlarge"
	InstanceTypeC3Large           InstanceType = "c3.large"
	InstanceTypeC3Xlarge          InstanceType = "c3.xlarge"
	InstanceTypeC32xlarge         InstanceType = "c3.2xlarge"
	InstanceTypeC34xlarge         InstanceType = "c3.4xlarge"
	InstanceTypeC38xlarge         InstanceType = "c3.8xlarge"
	InstanceTypeC4Large           InstanceType = "c4.large"
	InstanceTypeC4Xlarge          InstanceType = "c4.xlarge"
	InstanceTypeC42xlarge         InstanceType = "c4.2xlarge"
	InstanceTypeC44xlarge         InstanceType = "c4.4xlarge"
	InstanceTypeC48xlarge         InstanceType = "c4.8xlarge"
	InstanceTypeC5Large           InstanceType = "c5.large"
	InstanceTypeC5Xlarge          InstanceType = "c5.xlarge"
	InstanceTypeC52xlarge         InstanceType = "c5.2xlarge"
	InstanceTypeC54xlarge         InstanceType = "c5.4xlarge"
	InstanceTypeC59xlarge         InstanceType = "c5.9xlarge"
	InstanceTypeC512xlarge        InstanceType = "c5.12xlarge"
	InstanceTypeC518xlarge        InstanceType = "c5.18xlarge"
	InstanceTypeC524xlarge        InstanceType = "c5.24xlarge"
	InstanceTypeC5Metal           InstanceType = "c5.metal"
	InstanceTypeC5aLarge          InstanceType = "c5a.large"
	InstanceTypeC5aXlarge         InstanceType = "c5a.xlarge"
	InstanceTypeC5a2xlarge        InstanceType = "c5a.2xlarge"
	InstanceTypeC5a4xlarge        InstanceType = "c5a.4xlarge"
	InstanceTypeC5a8xlarge        InstanceType = "c5a.8xlarge"
	InstanceTypeC5a12xlarge       InstanceType = "c5a.12xlarge"
	InstanceTypeC5a16xlarge       InstanceType = "c5a.16xlarge"
	InstanceTypeC5a24xlarge       InstanceType = "c5a.24xlarge"
	InstanceTypeC5adLarge         InstanceType = "c5ad.large"
	InstanceTypeC5adXlarge        InstanceType = "c5ad.xlarge"
	InstanceTypeC5ad2xlarge       InstanceType = "c5ad.2xlarge"
	InstanceTypeC5ad4xlarge       InstanceType = "c5ad.4xlarge"
	InstanceTypeC5ad8xlarge       InstanceType = "c5ad.8xlarge"
	InstanceTypeC5ad12xlarge      InstanceType = "c5ad.12xlarge"
	InstanceTypeC5ad16xlarge      InstanceType = "c5ad.16xlarge"
	InstanceTypeC5ad24xlarge      InstanceType = "c5ad.24xlarge"
	InstanceTypeC5dLarge          InstanceType = "c5d.large"
	InstanceTypeC5dXlarge         InstanceType = "c5d.xlarge"
	InstanceTypeC5d2xlarge        InstanceType = "c5d.2xlarge"
	InstanceTypeC5d4xlarge        InstanceType = "c5d.4xlarge"
	InstanceTypeC5d9xlarge        InstanceType = "c5d.9xlarge"
	InstanceTypeC5d12xlarge       InstanceType = "c5d.12xlarge"
	InstanceTypeC5d18xlarge       InstanceType = "c5d.18xlarge"
	InstanceTypeC5d24xlarge       InstanceType = "c5d.24xlarge"
	InstanceTypeC5dMetal          InstanceType = "c5d.metal"
	InstanceTypeC5nLarge          InstanceType = "c5n.large"
	InstanceTypeC5nXlarge         InstanceType = "c5n.xlarge"
	InstanceTypeC5n2xlarge        InstanceType = "c5n.2xlarge"
	InstanceTypeC5n4xlarge        InstanceType = "c5n.4xlarge"
	InstanceTypeC5n9xlarge        InstanceType = "c5n.9xlarge"
	InstanceTypeC5n18xlarge       InstanceType = "c5n.18xlarge"
	InstanceTypeC5nMetal          InstanceType = "c5n.metal"
	InstanceTypeC6gMedium         InstanceType = "c6g.medium"
	InstanceTypeC6gLarge          InstanceType = "c6g.large"
	InstanceTypeC6gXlarge         InstanceType = "c6g.xlarge"
	InstanceTypeC6g2xlarge        InstanceType = "c6g.2xlarge"
	InstanceTypeC6g4xlarge        InstanceType = "c6g.4xlarge"
	InstanceTypeC6g8xlarge        InstanceType = "c6g.8xlarge"
	InstanceTypeC6g12xlarge       InstanceType = "c6g.12xlarge"
	InstanceTypeC6g16xlarge       InstanceType = "c6g.16xlarge"
	InstanceTypeC6gMetal          InstanceType = "c6g.metal"
	InstanceTypeC6gdMedium        InstanceType = "c6gd.medium"
	InstanceTypeC6gdLarge         InstanceType = "c6gd.large"
	InstanceTypeC6gdXlarge        InstanceType = "c6gd.xlarge"
	InstanceTypeC6gd2xlarge       InstanceType = "c6gd.2xlarge"
	InstanceTypeC6gd4xlarge       InstanceType = "c6gd.4xlarge"
	InstanceTypeC6gd8xlarge       InstanceType = "c6gd.8xlarge"
	InstanceTypeC6gd12xlarge      InstanceType = "c6gd.12xlarge"
	InstanceTypeC6gd16xlarge      InstanceType = "c6gd.16xlarge"
	InstanceTypeC6gdMetal         InstanceType = "c6gd.metal"
	InstanceTypeC6gnMedium        InstanceType = "c6gn.medium"
	InstanceTypeC6gnLarge         InstanceType = "c6gn.large"
	InstanceTypeC6gnXlarge        InstanceType = "c6gn.xlarge"
	InstanceTypeC6gn2xlarge       InstanceType = "c6gn.2xlarge"
	InstanceTypeC6gn4xlarge       InstanceType = "c6gn.4xlarge"
	InstanceTypeC6gn8xlarge       InstanceType = "c6gn.8xlarge"
	InstanceTypeC6gn12xlarge      InstanceType = "c6gn.12xlarge"
	InstanceTypeC6gn16xlarge      InstanceType = "c6gn.16xlarge"
	InstanceTypeC6iLarge          InstanceType = "c6i.large"
	InstanceTypeC6iXlarge         InstanceType = "c6i.xlarge"
	InstanceTypeC6i2xlarge        InstanceType = "c6i.2xlarge"
	InstanceTypeC6i4xlarge        InstanceType = "c6i.4xlarge"
	InstanceTypeC6i8xlarge        InstanceType = "c6i.8xlarge"
	InstanceTypeC6i12xlarge       InstanceType = "c6i.12xlarge"
	InstanceTypeC6i16xlarge       InstanceType = "c6i.16xlarge"
	InstanceTypeC6i24xlarge       InstanceType = "c6i.24xlarge"
	InstanceTypeC6i32xlarge       InstanceType = "c6i.32xlarge"
	InstanceTypeC6iMetal          InstanceType = "c6i.metal"
	InstanceTypeCc14xlarge        InstanceType = "cc1.4xlarge"
	InstanceTypeCc28xlarge        InstanceType = "cc2.8xlarge"
	InstanceTypeCg14xlarge        InstanceType = "cg1.4xlarge"
	InstanceTypeCr18xlarge        InstanceType = "cr1.8xlarge"
	InstanceTypeD2Xlarge          InstanceType = "d2.xlarge"
	InstanceTypeD22xlarge         InstanceType = "d2.2xlarge"
	InstanceTypeD24xlarge         InstanceType = "d2.4xlarge"
	InstanceTypeD28xlarge         InstanceType = "d2.8xlarge"
	InstanceTypeD3Xlarge          InstanceType = "d3.xlarge"
	InstanceTypeD32xlarge         InstanceType = "d3.2xlarge"
	InstanceTypeD34xlarge         InstanceType = "d3.4xlarge"
	InstanceTypeD38xlarge         InstanceType = "d3.8xlarge"
	InstanceTypeD3enXlarge        InstanceType = "d3en.xlarge"
	InstanceTypeD3en2xlarge       InstanceType = "d3en.2xlarge"
	InstanceTypeD3en4xlarge       InstanceType = "d3en.4xlarge"
	InstanceTypeD3en6xlarge       InstanceType = "d3en.6xlarge"
	InstanceTypeD3en8xlarge       InstanceType = "d3en.8xlarge"
	InstanceTypeD3en12xlarge      InstanceType = "d3en.12xlarge"
	InstanceTypeDl124xlarge       InstanceType = "dl1.24xlarge"
	InstanceTypeF12xlarge         InstanceType = "f1.2xlarge"
	InstanceTypeF14xlarge         InstanceType = "f1.4xlarge"
	InstanceTypeF116xlarge        InstanceType = "f1.16xlarge"
	InstanceTypeG22xlarge         InstanceType = "g2.2xlarge"
	InstanceTypeG28xlarge         InstanceType = "g2.8xlarge"
	InstanceTypeG34xlarge         InstanceType = "g3.4xlarge"
	InstanceTypeG38xlarge         InstanceType = "g3.8xlarge"
	InstanceTypeG316xlarge        InstanceType = "g3.16xlarge"
	InstanceTypeG3sXlarge         InstanceType = "g3s.xlarge"
	InstanceTypeG4adXlarge        InstanceType = "g4ad.xlarge"
	InstanceTypeG4ad2xlarge       InstanceType = "g4ad.2xlarge"
	InstanceTypeG4ad4xlarge       InstanceType = "g4ad.4xlarge"
	InstanceTypeG4ad8xlarge       InstanceType = "g4ad.8xlarge"
	InstanceTypeG4ad16xlarge      InstanceType = "g4ad.16xlarge"
	InstanceTypeG4dnXlarge        InstanceType = "g4dn.xlarge"
	InstanceTypeG4dn2xlarge       InstanceType = "g4dn.2xlarge"
	InstanceTypeG4dn4xlarge       InstanceType = "g4dn.4xlarge"
	InstanceTypeG4dn8xlarge       InstanceType = "g4dn.8xlarge"
	InstanceTypeG4dn12xlarge      InstanceType = "g4dn.12xlarge"
	InstanceTypeG4dn16xlarge      InstanceType = "g4dn.16xlarge"
	InstanceTypeG4dnMetal         InstanceType = "g4dn.metal"
	InstanceTypeG5Xlarge          InstanceType = "g5.xlarge"
	InstanceTypeG52xlarge         InstanceType = "g5.2xlarge"
	InstanceTypeG54xlarge         InstanceType = "g5.4xlarge"
	InstanceTypeG58xlarge         InstanceType = "g5.8xlarge"
	InstanceTypeG512xlarge        InstanceType = "g5.12xlarge"
	InstanceTypeG516xlarge        InstanceType = "g5.16xlarge"
	InstanceTypeG524xlarge        InstanceType = "g5.24xlarge"
	InstanceTypeG548xlarge        InstanceType = "g5.48xlarge"
	InstanceTypeG5gXlarge         InstanceType = "g5g.xlarge"
	InstanceTypeG5g2xlarge        InstanceType = "g5g.2xlarge"
	InstanceTypeG5g4xlarge        InstanceType = "g5g.4xlarge"
	InstanceTypeG5g8xlarge        InstanceType = "g5g.8xlarge"
	InstanceTypeG5g16xlarge       InstanceType = "g5g.16xlarge"
	InstanceTypeG5gMetal          InstanceType = "g5g.metal"
	InstanceTypeHi14xlarge        InstanceType = "hi1.4xlarge"
	InstanceTypeHpc6a48xlarge     InstanceType = "hpc6a.48xlarge"
	InstanceTypeHs18xlarge        InstanceType = "hs1.8xlarge"
	InstanceTypeH12xlarge         InstanceType = "h1.2xlarge"
	InstanceTypeH14xlarge         InstanceType = "h1.4xlarge"
	InstanceTypeH18xlarge         InstanceType = "h1.8xlarge"
	InstanceTypeH116xlarge        InstanceType = "h1.16xlarge"
	InstanceTypeI2Xlarge          InstanceType = "i2.xlarge"
	InstanceTypeI22xlarge         InstanceType = "i2.2xlarge"
	InstanceTypeI24xlarge         InstanceType = "i2.4xlarge"
	InstanceTypeI28xlarge         InstanceType = "i2.8xlarge"
	InstanceTypeI3Large           InstanceType = "i3.large"
	InstanceTypeI3Xlarge          InstanceType = "i3.xlarge"
	InstanceTypeI32xlarge         InstanceType = "i3.2xlarge"
	InstanceTypeI34xlarge         InstanceType = "i3.4xlarge"
	InstanceTypeI38xlarge         InstanceType = "i3.8xlarge"
	InstanceTypeI316xlarge        InstanceType = "i3.16xlarge"
	InstanceTypeI3Metal           InstanceType = "i3.metal"
	InstanceTypeI3enLarge         InstanceType = "i3en.large"
	InstanceTypeI3enXlarge        InstanceType = "i3en.xlarge"
	InstanceTypeI3en2xlarge       InstanceType = "i3en.2xlarge"
	InstanceTypeI3en3xlarge       InstanceType = "i3en.3xlarge"
	InstanceTypeI3en6xlarge       InstanceType = "i3en.6xlarge"
	InstanceTypeI3en12xlarge      InstanceType = "i3en.12xlarge"
	InstanceTypeI3en24xlarge      InstanceType = "i3en.24xlarge"
	InstanceTypeI3enMetal         InstanceType = "i3en.metal"
	InstanceTypeIm4gnLarge        InstanceType = "im4gn.large"
	InstanceTypeIm4gnXlarge       InstanceType = "im4gn.xlarge"
	InstanceTypeIm4gn2xlarge      InstanceType = "im4gn.2xlarge"
	InstanceTypeIm4gn4xlarge      InstanceType = "im4gn.4xlarge"
	InstanceTypeIm4gn8xlarge      InstanceType = "im4gn.8xlarge"
	InstanceTypeIm4gn16xlarge     InstanceType = "im4gn.16xlarge"
	InstanceTypeInf1Xlarge        InstanceType = "inf1.xlarge"
	InstanceTypeInf12xlarge       InstanceType = "inf1.2xlarge"
	InstanceTypeInf16xlarge       InstanceType = "inf1.6xlarge"
	InstanceTypeInf124xlarge      InstanceType = "inf1.24xlarge"
	InstanceTypeIs4genMedium      InstanceType = "is4gen.medium"
	InstanceTypeIs4genLarge       InstanceType = "is4gen.large"
	InstanceTypeIs4genXlarge      InstanceType = "is4gen.xlarge"
	InstanceTypeIs4gen2xlarge     InstanceType = "is4gen.2xlarge"
	InstanceTypeIs4gen4xlarge     InstanceType = "is4gen.4xlarge"
	InstanceTypeIs4gen8xlarge     InstanceType = "is4gen.8xlarge"
	InstanceTypeM1Small           InstanceType = "m1.small"
	InstanceTypeM1Medium          InstanceType = "m1.medium"
	InstanceTypeM1Large           InstanceType = "m1.large"
	InstanceTypeM1Xlarge          InstanceType = "m1.xlarge"
	InstanceTypeM2Xlarge          InstanceType = "m2.xlarge"
	InstanceTypeM22xlarge         InstanceType = "m2.2xlarge"
	InstanceTypeM24xlarge         InstanceType = "m2.4xlarge"
	InstanceTypeM3Medium          InstanceType = "m3.medium"
	InstanceTypeM3Large           InstanceType = "m3.large"
	InstanceTypeM3Xlarge          InstanceType = "m3.xlarge"
	InstanceTypeM32xlarge         InstanceType = "m3.2xlarge"
	InstanceTypeM4Large           InstanceType = "m4.large"
	InstanceTypeM4Xlarge          InstanceType = "m4.xlarge"
	InstanceTypeM42xlarge         InstanceType = "m4.2xlarge"
	InstanceTypeM44xlarge         InstanceType = "m4.4xlarge"
	InstanceTypeM410xlarge        InstanceType = "m4.10xlarge"
	InstanceTypeM416xlarge        InstanceType = "m4.16xlarge"
	InstanceTypeM5Large           InstanceType = "m5.large"
	InstanceTypeM5Xlarge          InstanceType = "m5.xlarge"
	InstanceTypeM52xlarge         InstanceType = "m5.2xlarge"
	InstanceTypeM54xlarge         InstanceType = "m5.4xlarge"
	InstanceTypeM58xlarge         InstanceType = "m5.8xlarge"
	InstanceTypeM512xlarge        InstanceType = "m5.12xlarge"
	InstanceTypeM516xlarge        InstanceType = "m5.16xlarge"
	InstanceTypeM524xlarge        InstanceType = "m5.24xlarge"
	InstanceTypeM5Metal           InstanceType = "m5.metal"
	InstanceTypeM5aLarge          InstanceType = "m5a.large"
	InstanceTypeM5aXlarge         InstanceType = "m5a.xlarge"
	InstanceTypeM5a2xlarge        InstanceType = "m5a.2xlarge"
	InstanceTypeM5a4xlarge        InstanceType = "m5a.4xlarge"
	InstanceTypeM5a8xlarge        InstanceType = "m5a.8xlarge"
	InstanceTypeM5a12xlarge       InstanceType = "m5a.12xlarge"
	InstanceTypeM5a16xlarge       InstanceType = "m5a.16xlarge"
	InstanceTypeM5a24xlarge       InstanceType = "m5a.24xlarge"
	InstanceTypeM5adLarge         InstanceType = "m5ad.large"
	InstanceTypeM5adXlarge        InstanceType = "m5ad.xlarge"
	InstanceTypeM5ad2xlarge       InstanceType = "m5ad.2xlarge"
	InstanceTypeM5ad4xlarge       InstanceType = "m5ad.4xlarge"
	InstanceTypeM5ad8xlarge       InstanceType = "m5ad.8xlarge"
	InstanceTypeM5ad12xlarge      InstanceType = "m5ad.12xlarge"
	InstanceTypeM5ad16xlarge      InstanceType = "m5ad.16xlarge"
	InstanceTypeM5ad24xlarge      InstanceType = "m5ad.24xlarge"
	InstanceTypeM5dLarge          InstanceType = "m5d.large"
	InstanceTypeM5dXlarge         InstanceType = "m5d.xlarge"
	InstanceTypeM5d2xlarge        InstanceType = "m5d.2xlarge"
	InstanceTypeM5d4xlarge        InstanceType = "m5d.4xlarge"
	InstanceTypeM5d8xlarge        InstanceType = "m5d.8xlarge"
	InstanceTypeM5d12xlarge       InstanceType = "m5d.12xlarge"
	InstanceTypeM5d16xlarge       InstanceType = "m5d.16xlarge"
	InstanceTypeM5d24xlarge       InstanceType = "m5d.24xlarge"
	InstanceTypeM5dMetal          InstanceType = "m5d.metal"
	InstanceTypeM5dnLarge         InstanceType = "m5dn.large"
	InstanceTypeM5dnXlarge        InstanceType = "m5dn.xlarge"
	InstanceTypeM5dn2xlarge       InstanceType = "m5dn.2xlarge"
	InstanceTypeM5dn4xlarge       InstanceType = "m5dn.4xlarge"
	InstanceTypeM5dn8xlarge       InstanceType = "m5dn.8xlarge"
	InstanceTypeM5dn12xlarge      InstanceType = "m5dn.12xlarge"
	InstanceTypeM5dn16xlarge      InstanceType = "m5dn.16xlarge"
	InstanceTypeM5dn24xlarge      InstanceType = "m5dn.24xlarge"
	InstanceTypeM5dnMetal         InstanceType = "m5dn.metal"
	InstanceTypeM5nLarge          InstanceType = "m5n.large"
	InstanceTypeM5nXlarge         InstanceType = "m5n.xlarge"
	InstanceTypeM5n2xlarge        InstanceType = "m5n.2xlarge"
	InstanceTypeM5n4xlarge        InstanceType = "m5n.4xlarge"
	InstanceTypeM5n8xlarge        InstanceType = "m5n.8xlarge"
	InstanceTypeM5n12xlarge       InstanceType = "m5n.12xlarge"
	InstanceTypeM5n16xlarge       InstanceType = "m5n.16xlarge"
	InstanceTypeM5n24xlarge       InstanceType = "m5n.24xlarge"
	InstanceTypeM5nMetal          InstanceType = "m5n.metal"
	InstanceTypeM5znLarge         InstanceType = "m5zn.large"
	InstanceTypeM5znXlarge        InstanceType = "m5zn.xlarge"
	InstanceTypeM5zn2xlarge       InstanceType = "m5zn.2xlarge"
	InstanceTypeM5zn3xlarge       InstanceType = "m5zn.3xlarge"
	InstanceTypeM5zn6xlarge       InstanceType = "m5zn.6xlarge"
	InstanceTypeM5zn12xlarge      InstanceType = "m5zn.12xlarge"
	InstanceTypeM5znMetal         InstanceType = "m5zn.metal"
	InstanceTypeM6aLarge          InstanceType = "m6a.large"
	InstanceTypeM6aXlarge         InstanceType = "m6a.xlarge"
	InstanceTypeM6a2xlarge        InstanceType = "m6a.2xlarge"
	InstanceTypeM6a4xlarge        InstanceType = "m6a.4xlarge"
	InstanceTypeM6a8xlarge        InstanceType = "m6a.8xlarge"
	InstanceTypeM6a12xlarge       InstanceType = "m6a.12xlarge"
	InstanceTypeM6a16xlarge       InstanceType = "m6a.16xlarge"
	InstanceTypeM6a24xlarge       InstanceType = "m6a.24xlarge"
	InstanceTypeM6a32xlarge       InstanceType = "m6a.32xlarge"
	InstanceTypeM6a48xlarge       InstanceType = "m6a.48xlarge"
	InstanceTypeM6gMetal          InstanceType = "m6g.metal"
	InstanceTypeM6gMedium         InstanceType = "m6g.medium"
	InstanceTypeM6gLarge          InstanceType = "m6g.large"
	InstanceTypeM6gXlarge         InstanceType = "m6g.xlarge"
	InstanceTypeM6g2xlarge        InstanceType = "m6g.2xlarge"
	InstanceTypeM6g4xlarge        InstanceType = "m6g.4xlarge"
	InstanceTypeM6g8xlarge        InstanceType = "m6g.8xlarge"
	InstanceTypeM6g12xlarge       InstanceType = "m6g.12xlarge"
	InstanceTypeM6g16xlarge       InstanceType = "m6g.16xlarge"
	InstanceTypeM6gdMetal         InstanceType = "m6gd.metal"
	InstanceTypeM6gdMedium        InstanceType = "m6gd.medium"
	InstanceTypeM6gdLarge         InstanceType = "m6gd.large"
	InstanceTypeM6gdXlarge        InstanceType = "m6gd.xlarge"
	InstanceTypeM6gd2xlarge       InstanceType = "m6gd.2xlarge"
	InstanceTypeM6gd4xlarge       InstanceType = "m6gd.4xlarge"
	InstanceTypeM6gd8xlarge       InstanceType = "m6gd.8xlarge"
	InstanceTypeM6gd12xlarge      InstanceType = "m6gd.12xlarge"
	InstanceTypeM6gd16xlarge      InstanceType = "m6gd.16xlarge"
	InstanceTypeM6iLarge          InstanceType = "m6i.large"
	InstanceTypeM6iXlarge         InstanceType = "m6i.xlarge"
	InstanceTypeM6i2xlarge        InstanceType = "m6i.2xlarge"
	InstanceTypeM6i4xlarge        InstanceType = "m6i.4xlarge"
	InstanceTypeM6i8xlarge        InstanceType = "m6i.8xlarge"
	InstanceTypeM6i12xlarge       InstanceType = "m6i.12xlarge"
	InstanceTypeM6i16xlarge       InstanceType = "m6i.16xlarge"
	InstanceTypeM6i24xlarge       InstanceType = "m6i.24xlarge"
	InstanceTypeM6i32xlarge       InstanceType = "m6i.32xlarge"
	InstanceTypeM6iMetal          InstanceType = "m6i.metal"
	InstanceTypeMac1Metal         InstanceType = "mac1.metal"
	InstanceTypeP2Xlarge          InstanceType = "p2.xlarge"
	InstanceTypeP28xlarge         InstanceType = "p2.8xlarge"
	InstanceTypeP216xlarge        InstanceType = "p2.16xlarge"
	InstanceTypeP32xlarge         InstanceType = "p3.2xlarge"
	InstanceTypeP38xlarge         InstanceType = "p3.8xlarge"
	InstanceTypeP316xlarge        InstanceType = "p3.16xlarge"
	InstanceTypeP3dn24xlarge      InstanceType = "p3dn.24xlarge"
	InstanceTypeP4d24xlarge       InstanceType = "p4d.24xlarge"
	InstanceTypeR3Large           InstanceType = "r3.large"
	InstanceTypeR3Xlarge          InstanceType = "r3.xlarge"
	InstanceTypeR32xlarge         InstanceType = "r3.2xlarge"
	InstanceTypeR34xlarge         InstanceType = "r3.4xlarge"
	InstanceTypeR38xlarge         InstanceType = "r3.8xlarge"
	InstanceTypeR4Large           InstanceType = "r4.large"
	InstanceTypeR4Xlarge          InstanceType = "r4.xlarge"
	InstanceTypeR42xlarge         InstanceType = "r4.2xlarge"
	InstanceTypeR44xlarge         InstanceType = "r4.4xlarge"
	InstanceTypeR48xlarge         InstanceType = "r4.8xlarge"
	InstanceTypeR416xlarge        InstanceType = "r4.16xlarge"
	InstanceTypeR5Large           InstanceType = "r5.large"
	InstanceTypeR5Xlarge          InstanceType = "r5.xlarge"
	InstanceTypeR52xlarge         InstanceType = "r5.2xlarge"
	InstanceTypeR54xlarge         InstanceType = "r5.4xlarge"
	InstanceTypeR58xlarge         InstanceType = "r5.8xlarge"
	InstanceTypeR512xlarge        InstanceType = "r5.12xlarge"
	InstanceTypeR516xlarge        InstanceType = "r5.16xlarge"
	InstanceTypeR524xlarge        InstanceType = "r5.24xlarge"
	InstanceTypeR5Metal           InstanceType = "r5.metal"
	InstanceTypeR5aLarge          InstanceType = "r5a.large"
	InstanceTypeR5aXlarge         InstanceType = "r5a.xlarge"
	InstanceTypeR5a2xlarge        InstanceType = "r5a.2xlarge"
	InstanceTypeR5a4xlarge        InstanceType = "r5a.4xlarge"
	InstanceTypeR5a8xlarge        InstanceType = "r5a.8xlarge"
	InstanceTypeR5a12xlarge       InstanceType = "r5a.12xlarge"
	InstanceTypeR5a16xlarge       InstanceType = "r5a.16xlarge"
	InstanceTypeR5a24xlarge       InstanceType = "r5a.24xlarge"
	InstanceTypeR5adLarge         InstanceType = "r5ad.large"
	InstanceTypeR5adXlarge        InstanceType = "r5ad.xlarge"
	InstanceTypeR5ad2xlarge       InstanceType = "r5ad.2xlarge"
	InstanceTypeR5ad4xlarge       InstanceType = "r5ad.4xlarge"
	InstanceTypeR5ad8xlarge       InstanceType = "r5ad.8xlarge"
	InstanceTypeR5ad12xlarge      InstanceType = "r5ad.12xlarge"
	InstanceTypeR5ad16xlarge      InstanceType = "r5ad.16xlarge"
	InstanceTypeR5ad24xlarge      InstanceType = "r5ad.24xlarge"
	InstanceTypeR5bLarge          InstanceType = "r5b.large"
	InstanceTypeR5bXlarge         InstanceType = "r5b.xlarge"
	InstanceTypeR5b2xlarge        InstanceType = "r5b.2xlarge"
	InstanceTypeR5b4xlarge        InstanceType = "r5b.4xlarge"
	InstanceTypeR5b8xlarge        InstanceType = "r5b.8xlarge"
	InstanceTypeR5b12xlarge       InstanceType = "r5b.12xlarge"
	InstanceTypeR5b16xlarge       InstanceType = "r5b.16xlarge"
	InstanceTypeR5b24xlarge       InstanceType = "r5b.24xlarge"
	InstanceTypeR5bMetal          InstanceType = "r5b.metal"
	InstanceTypeR5dLarge          InstanceType = "r5d.large"
	InstanceTypeR5dXlarge         InstanceType = "r5d.xlarge"
	InstanceTypeR5d2xlarge        InstanceType = "r5d.2xlarge"
	InstanceTypeR5d4xlarge        InstanceType = "r5d.4xlarge"
	InstanceTypeR5d8xlarge        InstanceType = "r5d.8xlarge"
	InstanceTypeR5d12xlarge       InstanceType = "r5d.12xlarge"
	InstanceTypeR5d16xlarge       InstanceType = "r5d.16xlarge"
	InstanceTypeR5d24xlarge       InstanceType = "r5d.24xlarge"
	InstanceTypeR5dMetal          InstanceType = "r5d.metal"
	InstanceTypeR5dnLarge         InstanceType = "r5dn.large"
	InstanceTypeR5dnXlarge        InstanceType = "r5dn.xlarge"
	InstanceTypeR5dn2xlarge       InstanceType = "r5dn.2xlarge"
	InstanceTypeR5dn4xlarge       InstanceType = "r5dn.4xlarge"
	InstanceTypeR5dn8xlarge       InstanceType = "r5dn.8xlarge"
	InstanceTypeR5dn12xlarge      InstanceType = "r5dn.12xlarge"
	InstanceTypeR5dn16xlarge      InstanceType = "r5dn.16xlarge"
	InstanceTypeR5dn24xlarge      InstanceType = "r5dn.24xlarge"
	InstanceTypeR5dnMetal         InstanceType = "r5dn.metal"
	InstanceTypeR5nLarge          InstanceType = "r5n.large"
	InstanceTypeR5nXlarge         InstanceType = "r5n.xlarge"
	InstanceTypeR5n2xlarge        InstanceType = "r5n.2xlarge"
	InstanceTypeR5n4xlarge        InstanceType = "r5n.4xlarge"
	InstanceTypeR5n8xlarge        InstanceType = "r5n.8xlarge"
	InstanceTypeR5n12xlarge       InstanceType = "r5n.12xlarge"
	InstanceTypeR5n16xlarge       InstanceType = "r5n.16xlarge"
	InstanceTypeR5n24xlarge       InstanceType = "r5n.24xlarge"
	InstanceTypeR5nMetal          InstanceType = "r5n.metal"
	InstanceTypeR6gMedium         InstanceType = "r6g.medium"
	InstanceTypeR6gLarge          InstanceType = "r6g.large"
	InstanceTypeR6gXlarge         InstanceType = "r6g.xlarge"
	InstanceTypeR6g2xlarge        InstanceType = "r6g.2xlarge"
	InstanceTypeR6g4xlarge        InstanceType = "r6g.4xlarge"
	InstanceTypeR6g8xlarge        InstanceType = "r6g.8xlarge"
	InstanceTypeR6g12xlarge       InstanceType = "r6g.12xlarge"
	InstanceTypeR6g16xlarge       InstanceType = "r6g.16xlarge"
	InstanceTypeR6gMetal          InstanceType = "r6g.metal"
	InstanceTypeR6gdMedium        InstanceType = "r6gd.medium"
	InstanceTypeR6gdLarge         InstanceType = "r6gd.large"
	InstanceTypeR6gdXlarge        InstanceType = "r6gd.xlarge"
	InstanceTypeR6gd2xlarge       InstanceType = "r6gd.2xlarge"
	InstanceTypeR6gd4xlarge       InstanceType = "r6gd.4xlarge"
	InstanceTypeR6gd8xlarge       InstanceType = "r6gd.8xlarge"
	InstanceTypeR6gd12xlarge      InstanceType = "r6gd.12xlarge"
	InstanceTypeR6gd16xlarge      InstanceType = "r6gd.16xlarge"
	InstanceTypeR6gdMetal         InstanceType = "r6gd.metal"
	InstanceTypeR6iLarge          InstanceType = "r6i.large"
	InstanceTypeR6iXlarge         InstanceType = "r6i.xlarge"
	InstanceTypeR6i2xlarge        InstanceType = "r6i.2xlarge"
	InstanceTypeR6i4xlarge        InstanceType = "r6i.4xlarge"
	InstanceTypeR6i8xlarge        InstanceType = "r6i.8xlarge"
	InstanceTypeR6i12xlarge       InstanceType = "r6i.12xlarge"
	InstanceTypeR6i16xlarge       InstanceType = "r6i.16xlarge"
	InstanceTypeR6i24xlarge       InstanceType = "r6i.24xlarge"
	InstanceTypeR6i32xlarge       InstanceType = "r6i.32xlarge"
	InstanceTypeR6iMetal          InstanceType = "r6i.metal"
	InstanceTypeT1Micro           InstanceType = "t1.micro"
	InstanceTypeT2Nano            InstanceType = "t2.nano"
	InstanceTypeT2Micro           InstanceType = "t2.micro"
	InstanceTypeT2Small           InstanceType = "t2.small"
	InstanceTypeT2Medium          InstanceType = "t2.medium"
	InstanceTypeT2Large           InstanceType = "t2.large"
	InstanceTypeT2Xlarge          InstanceType = "t2.xlarge"
	InstanceTypeT22xlarge         InstanceType = "t2.2xlarge"
	InstanceTypeT3Nano            InstanceType = "t3.nano"
	InstanceTypeT3Micro           InstanceType = "t3.micro"
	InstanceTypeT3Small           InstanceType = "t3.small"
	InstanceTypeT3Medium          InstanceType = "t3.medium"
	InstanceTypeT3Large           InstanceType = "t3.large"
	InstanceTypeT3Xlarge          InstanceType = "t3.xlarge"
	InstanceTypeT32xlarge         InstanceType = "t3.2xlarge"
	InstanceTypeT3aNano           InstanceType = "t3a.nano"
	InstanceTypeT3aMicro          InstanceType = "t3a.micro"
	InstanceTypeT3aSmall          InstanceType = "t3a.small"
	InstanceTypeT3aMedium         InstanceType = "t3a.medium"
	InstanceTypeT3aLarge          InstanceType = "t3a.large"
	InstanceTypeT3aXlarge         InstanceType = "t3a.xlarge"
	InstanceTypeT3a2xlarge        InstanceType = "t3a.2xlarge"
	InstanceTypeT4gNano           InstanceType = "t4g.nano"
	InstanceTypeT4gMicro          InstanceType = "t4g.micro"
	InstanceTypeT4gSmall          InstanceType = "t4g.small"
	InstanceTypeT4gMedium         InstanceType = "t4g.medium"
	InstanceTypeT4gLarge          InstanceType = "t4g.large"
	InstanceTypeT4gXlarge         InstanceType = "t4g.xlarge"
	InstanceTypeT4g2xlarge        InstanceType = "t4g.2xlarge"
	InstanceTypeU6tb156xlarge     InstanceType = "u-6tb1.56xlarge"
	InstanceTypeU6tb1112xlarge    InstanceType = "u-6tb1.112xlarge"
	InstanceTypeU9tb1112xlarge    InstanceType = "u-9tb1.112xlarge"
	InstanceTypeU12tb1112xlarge   InstanceType = "u-12tb1.112xlarge"
	InstanceTypeU6tb1Metal        InstanceType = "u-6tb1.metal"
	InstanceTypeU9tb1Metal        InstanceType = "u-9tb1.metal"
	InstanceTypeU12tb1Metal       InstanceType = "u-12tb1.metal"
	InstanceTypeU18tb1Metal       InstanceType = "u-18tb1.metal"
	InstanceTypeU24tb1Metal       InstanceType = "u-24tb1.metal"
	InstanceTypeVt13xlarge        InstanceType = "vt1.3xlarge"
	InstanceTypeVt16xlarge        InstanceType = "vt1.6xlarge"
	InstanceTypeVt124xlarge       InstanceType = "vt1.24xlarge"
	InstanceTypeX116xlarge        InstanceType = "x1.16xlarge"
	InstanceTypeX132xlarge        InstanceType = "x1.32xlarge"
	InstanceTypeX1eXlarge         InstanceType = "x1e.xlarge"
	InstanceTypeX1e2xlarge        InstanceType = "x1e.2xlarge"
	InstanceTypeX1e4xlarge        InstanceType = "x1e.4xlarge"
	InstanceTypeX1e8xlarge        InstanceType = "x1e.8xlarge"
	InstanceTypeX1e16xlarge       InstanceType = "x1e.16xlarge"
	InstanceTypeX1e32xlarge       InstanceType = "x1e.32xlarge"
	InstanceTypeX2iezn2xlarge     InstanceType = "x2iezn.2xlarge"
	InstanceTypeX2iezn4xlarge     InstanceType = "x2iezn.4xlarge"
	InstanceTypeX2iezn6xlarge     InstanceType = "x2iezn.6xlarge"
	InstanceTypeX2iezn8xlarge     InstanceType = "x2iezn.8xlarge"
	InstanceTypeX2iezn12xlarge    InstanceType = "x2iezn.12xlarge"
	InstanceTypeX2ieznMetal       InstanceType = "x2iezn.metal"
	InstanceTypeX2gdMedium        InstanceType = "x2gd.medium"
	InstanceTypeX2gdLarge         InstanceType = "x2gd.large"
	InstanceTypeX2gdXlarge        InstanceType = "x2gd.xlarge"
	InstanceTypeX2gd2xlarge       InstanceType = "x2gd.2xlarge"
	InstanceTypeX2gd4xlarge       InstanceType = "x2gd.4xlarge"
	InstanceTypeX2gd8xlarge       InstanceType = "x2gd.8xlarge"
	InstanceTypeX2gd12xlarge      InstanceType = "x2gd.12xlarge"
	InstanceTypeX2gd16xlarge      InstanceType = "x2gd.16xlarge"
	InstanceTypeX2gdMetal         InstanceType = "x2gd.metal"
	InstanceTypeZ1dLarge          InstanceType = "z1d.large"
	InstanceTypeZ1dXlarge         InstanceType = "z1d.xlarge"
	InstanceTypeZ1d2xlarge        InstanceType = "z1d.2xlarge"
	InstanceTypeZ1d3xlarge        InstanceType = "z1d.3xlarge"
	InstanceTypeZ1d6xlarge        InstanceType = "z1d.6xlarge"
	InstanceTypeZ1d12xlarge       InstanceType = "z1d.12xlarge"
	InstanceTypeZ1dMetal          InstanceType = "z1d.metal"
	InstanceTypeX2idn16xlarge     InstanceType = "x2idn.16xlarge"
	InstanceTypeX2idn24xlarge     InstanceType = "x2idn.24xlarge"
	InstanceTypeX2idn32xlarge     InstanceType = "x2idn.32xlarge"
	InstanceTypeX2iednXlarge      InstanceType = "x2iedn.xlarge"
	InstanceTypeX2iedn2xlarge     InstanceType = "x2iedn.2xlarge"
	InstanceTypeX2iedn4xlarge     InstanceType = "x2iedn.4xlarge"
	InstanceTypeX2iedn8xlarge     InstanceType = "x2iedn.8xlarge"
	InstanceTypeX2iedn16xlarge    InstanceType = "x2iedn.16xlarge"
	InstanceTypeX2iedn24xlarge    InstanceType = "x2iedn.24xlarge"
	InstanceTypeX2iedn32xlarge    InstanceType = "x2iedn.32xlarge"
	InstanceTypeC6aLarge          InstanceType = "c6a.large"
	InstanceTypeC6aXlarge         InstanceType = "c6a.xlarge"
	InstanceTypeC6a2xlarge        InstanceType = "c6a.2xlarge"
	InstanceTypeC6a4xlarge        InstanceType = "c6a.4xlarge"
	InstanceTypeC6a8xlarge        InstanceType = "c6a.8xlarge"
	InstanceTypeC6a12xlarge       InstanceType = "c6a.12xlarge"
	InstanceTypeC6a16xlarge       InstanceType = "c6a.16xlarge"
	InstanceTypeC6a24xlarge       InstanceType = "c6a.24xlarge"
	InstanceTypeC6a32xlarge       InstanceType = "c6a.32xlarge"
	InstanceTypeC6a48xlarge       InstanceType = "c6a.48xlarge"
	InstanceTypeC6aMetal          InstanceType = "c6a.metal"
	InstanceTypeM6aMetal          InstanceType = "m6a.metal"
	InstanceTypeI4iLarge          InstanceType = "i4i.large"
	InstanceTypeI4iXlarge         InstanceType = "i4i.xlarge"
	InstanceTypeI4i2xlarge        InstanceType = "i4i.2xlarge"
	InstanceTypeI4i4xlarge        InstanceType = "i4i.4xlarge"
	InstanceTypeI4i8xlarge        InstanceType = "i4i.8xlarge"
	InstanceTypeI4i16xlarge       InstanceType = "i4i.16xlarge"
	InstanceTypeI4i32xlarge       InstanceType = "i4i.32xlarge"
	InstanceTypeI4iMetal          InstanceType = "i4i.metal"
	InstanceTypeX2idnMetal        InstanceType = "x2idn.metal"
	InstanceTypeX2iednMetal       InstanceType = "x2iedn.metal"
	InstanceTypeC7gMedium         InstanceType = "c7g.medium"
	InstanceTypeC7gLarge          InstanceType = "c7g.large"
	InstanceTypeC7gXlarge         InstanceType = "c7g.xlarge"
	InstanceTypeC7g2xlarge        InstanceType = "c7g.2xlarge"
	InstanceTypeC7g4xlarge        InstanceType = "c7g.4xlarge"
	InstanceTypeC7g8xlarge        InstanceType = "c7g.8xlarge"
	InstanceTypeC7g12xlarge       InstanceType = "c7g.12xlarge"
	InstanceTypeC7g16xlarge       InstanceType = "c7g.16xlarge"
	InstanceTypeMac2Metal         InstanceType = "mac2.metal"
	InstanceTypeC6idLarge         InstanceType = "c6id.large"
	InstanceTypeC6idXlarge        InstanceType = "c6id.xlarge"
	InstanceTypeC6id2xlarge       InstanceType = "c6id.2xlarge"
	InstanceTypeC6id4xlarge       InstanceType = "c6id.4xlarge"
	InstanceTypeC6id8xlarge       InstanceType = "c6id.8xlarge"
	InstanceTypeC6id12xlarge      InstanceType = "c6id.12xlarge"
	InstanceTypeC6id16xlarge      InstanceType = "c6id.16xlarge"
	InstanceTypeC6id24xlarge      InstanceType = "c6id.24xlarge"
	InstanceTypeC6id32xlarge      InstanceType = "c6id.32xlarge"
	InstanceTypeC6idMetal         InstanceType = "c6id.metal"
	InstanceTypeM6idLarge         InstanceType = "m6id.large"
	InstanceTypeM6idXlarge        InstanceType = "m6id.xlarge"
	InstanceTypeM6id2xlarge       InstanceType = "m6id.2xlarge"
	InstanceTypeM6id4xlarge       InstanceType = "m6id.4xlarge"
	InstanceTypeM6id8xlarge       InstanceType = "m6id.8xlarge"
	InstanceTypeM6id12xlarge      InstanceType = "m6id.12xlarge"
	InstanceTypeM6id16xlarge      InstanceType = "m6id.16xlarge"
	InstanceTypeM6id24xlarge      InstanceType = "m6id.24xlarge"
	InstanceTypeM6id32xlarge      InstanceType = "m6id.32xlarge"
	InstanceTypeM6idMetal         InstanceType = "m6id.metal"
	InstanceTypeR6idLarge         InstanceType = "r6id.large"
	InstanceTypeR6idXlarge        InstanceType = "r6id.xlarge"
	InstanceTypeR6id2xlarge       InstanceType = "r6id.2xlarge"
	InstanceTypeR6id4xlarge       InstanceType = "r6id.4xlarge"
	InstanceTypeR6id8xlarge       InstanceType = "r6id.8xlarge"
	InstanceTypeR6id12xlarge      InstanceType = "r6id.12xlarge"
	InstanceTypeR6id16xlarge      InstanceType = "r6id.16xlarge"
	InstanceTypeR6id24xlarge      InstanceType = "r6id.24xlarge"
	InstanceTypeR6id32xlarge      InstanceType = "r6id.32xlarge"
	InstanceTypeR6idMetal         InstanceType = "r6id.metal"
	InstanceTypeR6aLarge          InstanceType = "r6a.large"
	InstanceTypeR6aXlarge         InstanceType = "r6a.xlarge"
	InstanceTypeR6a2xlarge        InstanceType = "r6a.2xlarge"
	InstanceTypeR6a4xlarge        InstanceType = "r6a.4xlarge"
	InstanceTypeR6a8xlarge        InstanceType = "r6a.8xlarge"
	InstanceTypeR6a12xlarge       InstanceType = "r6a.12xlarge"
	InstanceTypeR6a16xlarge       InstanceType = "r6a.16xlarge"
	InstanceTypeR6a24xlarge       InstanceType = "r6a.24xlarge"
	InstanceTypeR6a32xlarge       InstanceType = "r6a.32xlarge"
	InstanceTypeR6a48xlarge       InstanceType = "r6a.48xlarge"
	InstanceTypeR6aMetal          InstanceType = "r6a.metal"
	InstanceTypeP4de24xlarge      InstanceType = "p4de.24xlarge"
	InstanceTypeU3tb156xlarge     InstanceType = "u-3tb1.56xlarge"
	InstanceTypeU18tb1112xlarge   InstanceType = "u-18tb1.112xlarge"
	InstanceTypeU24tb1112xlarge   InstanceType = "u-24tb1.112xlarge"
	InstanceTypeTrn12xlarge       InstanceType = "trn1.2xlarge"
	InstanceTypeTrn132xlarge      InstanceType = "trn1.32xlarge"
	InstanceTypeHpc6id32xlarge    InstanceType = "hpc6id.32xlarge"
	InstanceTypeC6inLarge         InstanceType = "c6in.large"
	InstanceTypeC6inXlarge        InstanceType = "c6in.xlarge"
	InstanceTypeC6in2xlarge       InstanceType = "c6in.2xlarge"
	InstanceTypeC6in4xlarge       InstanceType = "c6in.4xlarge"
	InstanceTypeC6in8xlarge       InstanceType = "c6in.8xlarge"
	InstanceTypeC6in12xlarge      InstanceType = "c6in.12xlarge"
	InstanceTypeC6in16xlarge      InstanceType = "c6in.16xlarge"
	InstanceTypeC6in24xlarge      InstanceType = "c6in.24xlarge"
	InstanceTypeC6in32xlarge      InstanceType = "c6in.32xlarge"
	InstanceTypeM6inLarge         InstanceType = "m6in.large"
	InstanceTypeM6inXlarge        InstanceType = "m6in.xlarge"
	InstanceTypeM6in2xlarge       InstanceType = "m6in.2xlarge"
	InstanceTypeM6in4xlarge       InstanceType = "m6in.4xlarge"
	InstanceTypeM6in8xlarge       InstanceType = "m6in.8xlarge"
	InstanceTypeM6in12xlarge      InstanceType = "m6in.12xlarge"
	InstanceTypeM6in16xlarge      InstanceType = "m6in.16xlarge"
	InstanceTypeM6in24xlarge      InstanceType = "m6in.24xlarge"
	InstanceTypeM6in32xlarge      InstanceType = "m6in.32xlarge"
	InstanceTypeM6idnLarge        InstanceType = "m6idn.large"
	InstanceTypeM6idnXlarge       InstanceType = "m6idn.xlarge"
	InstanceTypeM6idn2xlarge      InstanceType = "m6idn.2xlarge"
	InstanceTypeM6idn4xlarge      InstanceType = "m6idn.4xlarge"
	InstanceTypeM6idn8xlarge      InstanceType = "m6idn.8xlarge"
	InstanceTypeM6idn12xlarge     InstanceType = "m6idn.12xlarge"
	InstanceTypeM6idn16xlarge     InstanceType = "m6idn.16xlarge"
	InstanceTypeM6idn24xlarge     InstanceType = "m6idn.24xlarge"
	InstanceTypeM6idn32xlarge     InstanceType = "m6idn.32xlarge"
	InstanceTypeR6inLarge         InstanceType = "r6in.large"
	InstanceTypeR6inXlarge        InstanceType = "r6in.xlarge"
	InstanceTypeR6in2xlarge       InstanceType = "r6in.2xlarge"
	InstanceTypeR6in4xlarge       InstanceType = "r6in.4xlarge"
	InstanceTypeR6in8xlarge       InstanceType = "r6in.8xlarge"
	InstanceTypeR6in12xlarge      InstanceType = "r6in.12xlarge"
	InstanceTypeR6in16xlarge      InstanceType = "r6in.16xlarge"
	InstanceTypeR6in24xlarge      InstanceType = "r6in.24xlarge"
	InstanceTypeR6in32xlarge      InstanceType = "r6in.32xlarge"
	InstanceTypeR6idnLarge        InstanceType = "r6idn.large"
	InstanceTypeR6idnXlarge       InstanceType = "r6idn.xlarge"
	InstanceTypeR6idn2xlarge      InstanceType = "r6idn.2xlarge"
	InstanceTypeR6idn4xlarge      InstanceType = "r6idn.4xlarge"
	InstanceTypeR6idn8xlarge      InstanceType = "r6idn.8xlarge"
	InstanceTypeR6idn12xlarge     InstanceType = "r6idn.12xlarge"
	InstanceTypeR6idn16xlarge     InstanceType = "r6idn.16xlarge"
	InstanceTypeR6idn24xlarge     InstanceType = "r6idn.24xlarge"
	InstanceTypeR6idn32xlarge     InstanceType = "r6idn.32xlarge"
	InstanceTypeC7gMetal          InstanceType = "c7g.metal"
	InstanceTypeM7gMedium         InstanceType = "m7g.medium"
	InstanceTypeM7gLarge          InstanceType = "m7g.large"
	InstanceTypeM7gXlarge         InstanceType = "m7g.xlarge"
	InstanceTypeM7g2xlarge        InstanceType = "m7g.2xlarge"
	InstanceTypeM7g4xlarge        InstanceType = "m7g.4xlarge"
	InstanceTypeM7g8xlarge        InstanceType = "m7g.8xlarge"
	InstanceTypeM7g12xlarge       InstanceType = "m7g.12xlarge"
	InstanceTypeM7g16xlarge       InstanceType = "m7g.16xlarge"
	InstanceTypeM7gMetal          InstanceType = "m7g.metal"
	InstanceTypeR7gMedium         InstanceType = "r7g.medium"
	InstanceTypeR7gLarge          InstanceType = "r7g.large"
	InstanceTypeR7gXlarge         InstanceType = "r7g.xlarge"
	InstanceTypeR7g2xlarge        InstanceType = "r7g.2xlarge"
	InstanceTypeR7g4xlarge        InstanceType = "r7g.4xlarge"
	InstanceTypeR7g8xlarge        InstanceType = "r7g.8xlarge"
	InstanceTypeR7g12xlarge       InstanceType = "r7g.12xlarge"
	InstanceTypeR7g16xlarge       InstanceType = "r7g.16xlarge"
	InstanceTypeR7gMetal          InstanceType = "r7g.metal"
	InstanceTypeC6inMetal         InstanceType = "c6in.metal"
	InstanceTypeM6inMetal         InstanceType = "m6in.metal"
	InstanceTypeM6idnMetal        InstanceType = "m6idn.metal"
	InstanceTypeR6inMetal         InstanceType = "r6in.metal"
	InstanceTypeR6idnMetal        InstanceType = "r6idn.metal"
	InstanceTypeInf2Xlarge        InstanceType = "inf2.xlarge"
	InstanceTypeInf28xlarge       InstanceType = "inf2.8xlarge"
	InstanceTypeInf224xlarge      InstanceType = "inf2.24xlarge"
	InstanceTypeInf248xlarge      InstanceType = "inf2.48xlarge"
	InstanceTypeTrn1n32xlarge     InstanceType = "trn1n.32xlarge"
	InstanceTypeI4gLarge          InstanceType = "i4g.large"
	InstanceTypeI4gXlarge         InstanceType = "i4g.xlarge"
	InstanceTypeI4g2xlarge        InstanceType = "i4g.2xlarge"
	InstanceTypeI4g4xlarge        InstanceType = "i4g.4xlarge"
	InstanceTypeI4g8xlarge        InstanceType = "i4g.8xlarge"
	InstanceTypeI4g16xlarge       InstanceType = "i4g.16xlarge"
	InstanceTypeHpc7g4xlarge      InstanceType = "hpc7g.4xlarge"
	InstanceTypeHpc7g8xlarge      InstanceType = "hpc7g.8xlarge"
	InstanceTypeHpc7g16xlarge     InstanceType = "hpc7g.16xlarge"
	InstanceTypeC7gnMedium        InstanceType = "c7gn.medium"
	InstanceTypeC7gnLarge         InstanceType = "c7gn.large"
	InstanceTypeC7gnXlarge        InstanceType = "c7gn.xlarge"
	InstanceTypeC7gn2xlarge       InstanceType = "c7gn.2xlarge"
	InstanceTypeC7gn4xlarge       InstanceType = "c7gn.4xlarge"
	InstanceTypeC7gn8xlarge       InstanceType = "c7gn.8xlarge"
	InstanceTypeC7gn12xlarge      InstanceType = "c7gn.12xlarge"
	InstanceTypeC7gn16xlarge      InstanceType = "c7gn.16xlarge"
	InstanceTypeP548xlarge        InstanceType = "p5.48xlarge"
	InstanceTypeM7iLarge          InstanceType = "m7i.large"
	InstanceTypeM7iXlarge         InstanceType = "m7i.xlarge"
	InstanceTypeM7i2xlarge        InstanceType = "m7i.2xlarge"
	InstanceTypeM7i4xlarge        InstanceType = "m7i.4xlarge"
	InstanceTypeM7i8xlarge        InstanceType = "m7i.8xlarge"
	InstanceTypeM7i12xlarge       InstanceType = "m7i.12xlarge"
	InstanceTypeM7i16xlarge       InstanceType = "m7i.16xlarge"
	InstanceTypeM7i24xlarge       InstanceType = "m7i.24xlarge"
	InstanceTypeM7i48xlarge       InstanceType = "m7i.48xlarge"
	InstanceTypeM7iFlexLarge      InstanceType = "m7i-flex.large"
	InstanceTypeM7iFlexXlarge     InstanceType = "m7i-flex.xlarge"
	InstanceTypeM7iFlex2xlarge    InstanceType = "m7i-flex.2xlarge"
	InstanceTypeM7iFlex4xlarge    InstanceType = "m7i-flex.4xlarge"
	InstanceTypeM7iFlex8xlarge    InstanceType = "m7i-flex.8xlarge"
	InstanceTypeM7aMedium         InstanceType = "m7a.medium"
	InstanceTypeM7aLarge          InstanceType = "m7a.large"
	InstanceTypeM7aXlarge         InstanceType = "m7a.xlarge"
	InstanceTypeM7a2xlarge        InstanceType = "m7a.2xlarge"
	InstanceTypeM7a4xlarge        InstanceType = "m7a.4xlarge"
	InstanceTypeM7a8xlarge        InstanceType = "m7a.8xlarge"
	InstanceTypeM7a12xlarge       InstanceType = "m7a.12xlarge"
	InstanceTypeM7a16xlarge       InstanceType = "m7a.16xlarge"
	InstanceTypeM7a24xlarge       InstanceType = "m7a.24xlarge"
	InstanceTypeM7a32xlarge       InstanceType = "m7a.32xlarge"
	InstanceTypeM7a48xlarge       InstanceType = "m7a.48xlarge"
	InstanceTypeM7aMetal48xl      InstanceType = "m7a.metal-48xl"
	InstanceTypeHpc7a12xlarge     InstanceType = "hpc7a.12xlarge"
	InstanceTypeHpc7a24xlarge     InstanceType = "hpc7a.24xlarge"
	InstanceTypeHpc7a48xlarge     InstanceType = "hpc7a.48xlarge"
	InstanceTypeHpc7a96xlarge     InstanceType = "hpc7a.96xlarge"
	InstanceTypeC7gdMedium        InstanceType = "c7gd.medium"
	InstanceTypeC7gdLarge         InstanceType = "c7gd.large"
	InstanceTypeC7gdXlarge        InstanceType = "c7gd.xlarge"
	InstanceTypeC7gd2xlarge       InstanceType = "c7gd.2xlarge"
	InstanceTypeC7gd4xlarge       InstanceType = "c7gd.4xlarge"
	InstanceTypeC7gd8xlarge       InstanceType = "c7gd.8xlarge"
	InstanceTypeC7gd12xlarge      InstanceType = "c7gd.12xlarge"
	InstanceTypeC7gd16xlarge      InstanceType = "c7gd.16xlarge"
	InstanceTypeM7gdMedium        InstanceType = "m7gd.medium"
	InstanceTypeM7gdLarge         InstanceType = "m7gd.large"
	InstanceTypeM7gdXlarge        InstanceType = "m7gd.xlarge"
	InstanceTypeM7gd2xlarge       InstanceType = "m7gd.2xlarge"
	InstanceTypeM7gd4xlarge       InstanceType = "m7gd.4xlarge"
	InstanceTypeM7gd8xlarge       InstanceType = "m7gd.8xlarge"
	InstanceTypeM7gd12xlarge      InstanceType = "m7gd.12xlarge"
	InstanceTypeM7gd16xlarge      InstanceType = "m7gd.16xlarge"
	InstanceTypeR7gdMedium        InstanceType = "r7gd.medium"
	InstanceTypeR7gdLarge         InstanceType = "r7gd.large"
	InstanceTypeR7gdXlarge        InstanceType = "r7gd.xlarge"
	InstanceTypeR7gd2xlarge       InstanceType = "r7gd.2xlarge"
	InstanceTypeR7gd4xlarge       InstanceType = "r7gd.4xlarge"
	InstanceTypeR7gd8xlarge       InstanceType = "r7gd.8xlarge"
	InstanceTypeR7gd12xlarge      InstanceType = "r7gd.12xlarge"
	InstanceTypeR7gd16xlarge      InstanceType = "r7gd.16xlarge"
	InstanceTypeR7aMedium         InstanceType = "r7a.medium"
	InstanceTypeR7aLarge          InstanceType = "r7a.large"
	InstanceTypeR7aXlarge         InstanceType = "r7a.xlarge"
	InstanceTypeR7a2xlarge        InstanceType = "r7a.2xlarge"
	InstanceTypeR7a4xlarge        InstanceType = "r7a.4xlarge"
	InstanceTypeR7a8xlarge        InstanceType = "r7a.8xlarge"
	InstanceTypeR7a12xlarge       InstanceType = "r7a.12xlarge"
	InstanceTypeR7a16xlarge       InstanceType = "r7a.16xlarge"
	InstanceTypeR7a24xlarge       InstanceType = "r7a.24xlarge"
	InstanceTypeR7a32xlarge       InstanceType = "r7a.32xlarge"
	InstanceTypeR7a48xlarge       InstanceType = "r7a.48xlarge"
	InstanceTypeC7iLarge          InstanceType = "c7i.large"
	InstanceTypeC7iXlarge         InstanceType = "c7i.xlarge"
	InstanceTypeC7i2xlarge        InstanceType = "c7i.2xlarge"
	InstanceTypeC7i4xlarge        InstanceType = "c7i.4xlarge"
	InstanceTypeC7i8xlarge        InstanceType = "c7i.8xlarge"
	InstanceTypeC7i12xlarge       InstanceType = "c7i.12xlarge"
	InstanceTypeC7i16xlarge       InstanceType = "c7i.16xlarge"
	InstanceTypeC7i24xlarge       InstanceType = "c7i.24xlarge"
	InstanceTypeC7i48xlarge       InstanceType = "c7i.48xlarge"
	InstanceTypeMac2M2proMetal    InstanceType = "mac2-m2pro.metal"
	InstanceTypeR7izLarge         InstanceType = "r7iz.large"
	InstanceTypeR7izXlarge        InstanceType = "r7iz.xlarge"
	InstanceTypeR7iz2xlarge       InstanceType = "r7iz.2xlarge"
	InstanceTypeR7iz4xlarge       InstanceType = "r7iz.4xlarge"
	InstanceTypeR7iz8xlarge       InstanceType = "r7iz.8xlarge"
	InstanceTypeR7iz12xlarge      InstanceType = "r7iz.12xlarge"
	InstanceTypeR7iz16xlarge      InstanceType = "r7iz.16xlarge"
	InstanceTypeR7iz32xlarge      InstanceType = "r7iz.32xlarge"
	InstanceTypeC7aMedium         InstanceType = "c7a.medium"
	InstanceTypeC7aLarge          InstanceType = "c7a.large"
	InstanceTypeC7aXlarge         InstanceType = "c7a.xlarge"
	InstanceTypeC7a2xlarge        InstanceType = "c7a.2xlarge"
	InstanceTypeC7a4xlarge        InstanceType = "c7a.4xlarge"
	InstanceTypeC7a8xlarge        InstanceType = "c7a.8xlarge"
	InstanceTypeC7a12xlarge       InstanceType = "c7a.12xlarge"
	InstanceTypeC7a16xlarge       InstanceType = "c7a.16xlarge"
	InstanceTypeC7a24xlarge       InstanceType = "c7a.24xlarge"
	InstanceTypeC7a32xlarge       InstanceType = "c7a.32xlarge"
	InstanceTypeC7a48xlarge       InstanceType = "c7a.48xlarge"
	InstanceTypeC7aMetal48xl      InstanceType = "c7a.metal-48xl"
	InstanceTypeR7aMetal48xl      InstanceType = "r7a.metal-48xl"
	InstanceTypeR7iLarge          InstanceType = "r7i.large"
	InstanceTypeR7iXlarge         InstanceType = "r7i.xlarge"
	InstanceTypeR7i2xlarge        InstanceType = "r7i.2xlarge"
	InstanceTypeR7i4xlarge        InstanceType = "r7i.4xlarge"
	InstanceTypeR7i8xlarge        InstanceType = "r7i.8xlarge"
	InstanceTypeR7i12xlarge       InstanceType = "r7i.12xlarge"
	InstanceTypeR7i16xlarge       InstanceType = "r7i.16xlarge"
	InstanceTypeR7i24xlarge       InstanceType = "r7i.24xlarge"
	InstanceTypeR7i48xlarge       InstanceType = "r7i.48xlarge"
	InstanceTypeDl2q24xlarge      InstanceType = "dl2q.24xlarge"
	InstanceTypeMac2M2Metal       InstanceType = "mac2-m2.metal"
	InstanceTypeI4i12xlarge       InstanceType = "i4i.12xlarge"
	InstanceTypeI4i24xlarge       InstanceType = "i4i.24xlarge"
	InstanceTypeC7iMetal24xl      InstanceType = "c7i.metal-24xl"
	InstanceTypeC7iMetal48xl      InstanceType = "c7i.metal-48xl"
	InstanceTypeM7iMetal24xl      InstanceType = "m7i.metal-24xl"
	InstanceTypeM7iMetal48xl      InstanceType = "m7i.metal-48xl"
	InstanceTypeR7iMetal24xl      InstanceType = "r7i.metal-24xl"
	InstanceTypeR7iMetal48xl      InstanceType = "r7i.metal-48xl"
	InstanceTypeR7izMetal16xl     InstanceType = "r7iz.metal-16xl"
	InstanceTypeR7izMetal32xl     InstanceType = "r7iz.metal-32xl"
	InstanceTypeC7gdMetal         InstanceType = "c7gd.metal"
	InstanceTypeM7gdMetal         InstanceType = "m7gd.metal"
	InstanceTypeR7gdMetal         InstanceType = "r7gd.metal"
	InstanceTypeG6Xlarge          InstanceType = "g6.xlarge"
	InstanceTypeG62xlarge         InstanceType = "g6.2xlarge"
	InstanceTypeG64xlarge         InstanceType = "g6.4xlarge"
	InstanceTypeG68xlarge         InstanceType = "g6.8xlarge"
	InstanceTypeG612xlarge        InstanceType = "g6.12xlarge"
	InstanceTypeG616xlarge        InstanceType = "g6.16xlarge"
	InstanceTypeG624xlarge        InstanceType = "g6.24xlarge"
	InstanceTypeG648xlarge        InstanceType = "g6.48xlarge"
	InstanceTypeGr64xlarge        InstanceType = "gr6.4xlarge"
	InstanceTypeGr68xlarge        InstanceType = "gr6.8xlarge"
	InstanceTypeC7iFlexLarge      InstanceType = "c7i-flex.large"
	InstanceTypeC7iFlexXlarge     InstanceType = "c7i-flex.xlarge"
	InstanceTypeC7iFlex2xlarge    InstanceType = "c7i-flex.2xlarge"
	InstanceTypeC7iFlex4xlarge    InstanceType = "c7i-flex.4xlarge"
	InstanceTypeC7iFlex8xlarge    InstanceType = "c7i-flex.8xlarge"
	InstanceTypeU7i12tb224xlarge  InstanceType = "u7i-12tb.224xlarge"
	InstanceTypeU7in16tb224xlarge InstanceType = "u7in-16tb.224xlarge"
	InstanceTypeU7in24tb224xlarge InstanceType = "u7in-24tb.224xlarge"
	InstanceTypeU7in32tb224xlarge InstanceType = "u7in-32tb.224xlarge"
	InstanceTypeU7ib12tb224xlarge InstanceType = "u7ib-12tb.224xlarge"
	InstanceTypeC7gnMetal         InstanceType = "c7gn.metal"
	InstanceTypeR8gMedium         InstanceType = "r8g.medium"
	InstanceTypeR8gLarge          InstanceType = "r8g.large"
	InstanceTypeR8gXlarge         InstanceType = "r8g.xlarge"
	InstanceTypeR8g2xlarge        InstanceType = "r8g.2xlarge"
	InstanceTypeR8g4xlarge        InstanceType = "r8g.4xlarge"
	InstanceTypeR8g8xlarge        InstanceType = "r8g.8xlarge"
	InstanceTypeR8g12xlarge       InstanceType = "r8g.12xlarge"
	InstanceTypeR8g16xlarge       InstanceType = "r8g.16xlarge"
	InstanceTypeR8g24xlarge       InstanceType = "r8g.24xlarge"
	InstanceTypeR8g48xlarge       InstanceType = "r8g.48xlarge"
	InstanceTypeR8gMetal24xl      InstanceType = "r8g.metal-24xl"
	InstanceTypeR8gMetal48xl      InstanceType = "r8g.metal-48xl"
	InstanceTypeMac2M1ultraMetal  InstanceType = "mac2-m1ultra.metal"
	InstanceTypeG6eXlarge         InstanceType = "g6e.xlarge"
	InstanceTypeG6e2xlarge        InstanceType = "g6e.2xlarge"
	InstanceTypeG6e4xlarge        InstanceType = "g6e.4xlarge"
	InstanceTypeG6e8xlarge        InstanceType = "g6e.8xlarge"
	InstanceTypeG6e12xlarge       InstanceType = "g6e.12xlarge"
	InstanceTypeG6e16xlarge       InstanceType = "g6e.16xlarge"
	InstanceTypeG6e24xlarge       InstanceType = "g6e.24xlarge"
	InstanceTypeG6e48xlarge       InstanceType = "g6e.48xlarge"
	InstanceTypeC8gMedium         InstanceType = "c8g.medium"
	InstanceTypeC8gLarge          InstanceType = "c8g.large"
	InstanceTypeC8gXlarge         InstanceType = "c8g.xlarge"
	InstanceTypeC8g2xlarge        InstanceType = "c8g.2xlarge"
	InstanceTypeC8g4xlarge        InstanceType = "c8g.4xlarge"
	InstanceTypeC8g8xlarge        InstanceType = "c8g.8xlarge"
	InstanceTypeC8g12xlarge       InstanceType = "c8g.12xlarge"
	InstanceTypeC8g16xlarge       InstanceType = "c8g.16xlarge"
	InstanceTypeC8g24xlarge       InstanceType = "c8g.24xlarge"
	InstanceTypeC8g48xlarge       InstanceType = "c8g.48xlarge"
	InstanceTypeC8gMetal24xl      InstanceType = "c8g.metal-24xl"
	InstanceTypeC8gMetal48xl      InstanceType = "c8g.metal-48xl"
	InstanceTypeM8gMedium         InstanceType = "m8g.medium"
	InstanceTypeM8gLarge          InstanceType = "m8g.large"
	InstanceTypeM8gXlarge         InstanceType = "m8g.xlarge"
	InstanceTypeM8g2xlarge        InstanceType = "m8g.2xlarge"
	InstanceTypeM8g4xlarge        InstanceType = "m8g.4xlarge"
	InstanceTypeM8g8xlarge        InstanceType = "m8g.8xlarge"
	InstanceTypeM8g12xlarge       InstanceType = "m8g.12xlarge"
	InstanceTypeM8g16xlarge       InstanceType = "m8g.16xlarge"
	InstanceTypeM8g24xlarge       InstanceType = "m8g.24xlarge"
	InstanceTypeM8g48xlarge       InstanceType = "m8g.48xlarge"
	InstanceTypeM8gMetal24xl      InstanceType = "m8g.metal-24xl"
	InstanceTypeM8gMetal48xl      InstanceType = "m8g.metal-48xl"
	InstanceTypeX8gMedium         InstanceType = "x8g.medium"
	InstanceTypeX8gLarge          InstanceType = "x8g.large"
	InstanceTypeX8gXlarge         InstanceType = "x8g.xlarge"
	InstanceTypeX8g2xlarge        InstanceType = "x8g.2xlarge"
	InstanceTypeX8g4xlarge        InstanceType = "x8g.4xlarge"
	InstanceTypeX8g8xlarge        InstanceType = "x8g.8xlarge"
	InstanceTypeX8g12xlarge       InstanceType = "x8g.12xlarge"
	InstanceTypeX8g16xlarge       InstanceType = "x8g.16xlarge"
	InstanceTypeX8g24xlarge       InstanceType = "x8g.24xlarge"
	InstanceTypeX8g48xlarge       InstanceType = "x8g.48xlarge"
	InstanceTypeX8gMetal24xl      InstanceType = "x8g.metal-24xl"
	InstanceTypeX8gMetal48xl      InstanceType = "x8g.metal-48xl"
	InstanceTypeI7ieLarge         InstanceType = "i7ie.large"
	InstanceTypeI7ieXlarge        InstanceType = "i7ie.xlarge"
	InstanceTypeI7ie2xlarge       InstanceType = "i7ie.2xlarge"
	InstanceTypeI7ie3xlarge       InstanceType = "i7ie.3xlarge"
	InstanceTypeI7ie6xlarge       InstanceType = "i7ie.6xlarge"
	InstanceTypeI7ie12xlarge      InstanceType = "i7ie.12xlarge"
	InstanceTypeI7ie18xlarge      InstanceType = "i7ie.18xlarge"
	InstanceTypeI7ie24xlarge      InstanceType = "i7ie.24xlarge"
	InstanceTypeI7ie48xlarge      InstanceType = "i7ie.48xlarge"
	InstanceTypeI8gLarge          InstanceType = "i8g.large"
	InstanceTypeI8gXlarge         InstanceType = "i8g.xlarge"
	InstanceTypeI8g2xlarge        InstanceType = "i8g.2xlarge"
	InstanceTypeI8g4xlarge        InstanceType = "i8g.4xlarge"
	InstanceTypeI8g8xlarge        InstanceType = "i8g.8xlarge"
	InstanceTypeI8g12xlarge       InstanceType = "i8g.12xlarge"
	InstanceTypeI8g16xlarge       InstanceType = "i8g.16xlarge"
	InstanceTypeI8g24xlarge       InstanceType = "i8g.24xlarge"
	InstanceTypeI8gMetal24xl      InstanceType = "i8g.metal-24xl"
)

Enum values for InstanceType

func (InstanceType) Values added in v0.29.0

func (InstanceType) Values() []InstanceType

Values returns all known values for InstanceType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type InstanceTypeHypervisor

type InstanceTypeHypervisor string
const (
	InstanceTypeHypervisorNitro InstanceTypeHypervisor = "nitro"
	InstanceTypeHypervisorXen   InstanceTypeHypervisor = "xen"
)

Enum values for InstanceTypeHypervisor

func (InstanceTypeHypervisor) Values added in v0.29.0

Values returns all known values for InstanceTypeHypervisor. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type InstanceTypeInfo

type InstanceTypeInfo struct {

	// Indicates whether Amazon CloudWatch action based recovery is supported.
	AutoRecoverySupported *bool

	// Indicates whether the instance is a bare metal instance type.
	BareMetal *bool

	// Indicates whether the instance type is a burstable performance T instance type.
	// For more information, see [Burstable performance instances].
	//
	// [Burstable performance instances]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances.html
	BurstablePerformanceSupported *bool

	// Indicates whether the instance type is current generation.
	CurrentGeneration *bool

	// Indicates whether Dedicated Hosts are supported on the instance type.
	DedicatedHostsSupported *bool

	// Describes the Amazon EBS settings for the instance type.
	EbsInfo *EbsInfo

	// Describes the FPGA accelerator settings for the instance type.
	FpgaInfo *FpgaInfo

	// Indicates whether the instance type is eligible for the free tier.
	FreeTierEligible *bool

	// Describes the GPU accelerator settings for the instance type.
	GpuInfo *GpuInfo

	// Indicates whether On-Demand hibernation is supported.
	HibernationSupported *bool

	// The hypervisor for the instance type.
	Hypervisor InstanceTypeHypervisor

	// Describes the Inference accelerator settings for the instance type.
	InferenceAcceleratorInfo *InferenceAcceleratorInfo

	// Describes the instance storage for the instance type.
	InstanceStorageInfo *InstanceStorageInfo

	// Indicates whether instance storage is supported.
	InstanceStorageSupported *bool

	// The instance type. For more information, see [Instance types] in the Amazon EC2 User Guide.
	//
	// [Instance types]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html
	InstanceType InstanceType

	// Describes the media accelerator settings for the instance type.
	MediaAcceleratorInfo *MediaAcceleratorInfo

	// Describes the memory for the instance type.
	MemoryInfo *MemoryInfo

	// Describes the network settings for the instance type.
	NetworkInfo *NetworkInfo

	// Describes the Neuron accelerator settings for the instance type.
	NeuronInfo *NeuronInfo

	// Indicates whether Nitro Enclaves is supported.
	NitroEnclavesSupport NitroEnclavesSupport

	// Describes the supported NitroTPM versions for the instance type.
	NitroTpmInfo *NitroTpmInfo

	// Indicates whether NitroTPM is supported.
	NitroTpmSupport NitroTpmSupport

	// Indicates whether a local Precision Time Protocol (PTP) hardware clock (PHC) is
	// supported.
	PhcSupport PhcSupport

	// Describes the placement group settings for the instance type.
	PlacementGroupInfo *PlacementGroupInfo

	// Describes the processor.
	ProcessorInfo *ProcessorInfo

	// The supported boot modes. For more information, see [Boot modes] in the Amazon EC2 User
	// Guide.
	//
	// [Boot modes]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ami-boot.html
	SupportedBootModes []BootModeType

	// The supported root device types.
	SupportedRootDeviceTypes []RootDeviceType

	// Indicates whether the instance type is offered for spot, On-Demand, or Capacity
	// Blocks.
	SupportedUsageClasses []UsageClassType

	// The supported virtualization types.
	SupportedVirtualizationTypes []VirtualizationType

	// Describes the vCPU configurations for the instance type.
	VCpuInfo *VCpuInfo
	// contains filtered or unexported fields
}

Describes the instance type.

type InstanceTypeInfoFromInstanceRequirements added in v1.21.0

type InstanceTypeInfoFromInstanceRequirements struct {

	// The matching instance type.
	InstanceType *string
	// contains filtered or unexported fields
}

The list of instance types with the specified instance attributes.

type InstanceTypeOffering

type InstanceTypeOffering struct {

	// The instance type. For more information, see [Instance types] in the Amazon EC2 User Guide.
	//
	// [Instance types]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html
	InstanceType InstanceType

	// The identifier for the location. This depends on the location type. For
	// example, if the location type is region , the location is the Region code (for
	// example, us-east-2 .)
	Location *string

	// The location type.
	LocationType LocationType
	// contains filtered or unexported fields
}

The instance types offered.

type InstanceUsage

type InstanceUsage struct {

	// The ID of the Amazon Web Services account that is making use of the Capacity
	// Reservation.
	AccountId *string

	// The number of instances the Amazon Web Services account currently has in the
	// Capacity Reservation.
	UsedInstanceCount *int32
	// contains filtered or unexported fields
}

Information about the Capacity Reservation usage.

type IntegrateServices added in v1.4.0

type IntegrateServices struct {

	// Information about the integration with Amazon Athena.
	AthenaIntegrations []AthenaIntegration
	// contains filtered or unexported fields
}

Describes service integrations with VPC Flow logs.

type InterfacePermissionType

type InterfacePermissionType string
const (
	InterfacePermissionTypeInstanceAttach InterfacePermissionType = "INSTANCE-ATTACH"
	InterfacePermissionTypeEipAssociate   InterfacePermissionType = "EIP-ASSOCIATE"
)

Enum values for InterfacePermissionType

func (InterfacePermissionType) Values added in v0.29.0

Values returns all known values for InterfacePermissionType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type InterfaceProtocolType added in v1.10.0

type InterfaceProtocolType string
const (
	InterfaceProtocolTypeVlan InterfaceProtocolType = "VLAN"
	InterfaceProtocolTypeGre  InterfaceProtocolType = "GRE"
)

Enum values for InterfaceProtocolType

func (InterfaceProtocolType) Values added in v1.10.0

Values returns all known values for InterfaceProtocolType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type InternetGateway

type InternetGateway struct {

	// Any VPCs attached to the internet gateway.
	Attachments []InternetGatewayAttachment

	// The ID of the internet gateway.
	InternetGatewayId *string

	// The ID of the Amazon Web Services account that owns the internet gateway.
	OwnerId *string

	// Any tags assigned to the internet gateway.
	Tags []Tag
	// contains filtered or unexported fields
}

Describes an internet gateway.

type InternetGatewayAttachment

type InternetGatewayAttachment struct {

	// The current state of the attachment. For an internet gateway, the state is
	// available when attached to a VPC; otherwise, this value is not returned.
	State AttachmentStatus

	// The ID of the VPC.
	VpcId *string
	// contains filtered or unexported fields
}

Describes the attachment of a VPC to an internet gateway or an egress-only internet gateway.

type InternetGatewayBlockMode added in v1.191.0

type InternetGatewayBlockMode string
const (
	InternetGatewayBlockModeOff                InternetGatewayBlockMode = "off"
	InternetGatewayBlockModeBlockBidirectional InternetGatewayBlockMode = "block-bidirectional"
	InternetGatewayBlockModeBlockIngress       InternetGatewayBlockMode = "block-ingress"
)

Enum values for InternetGatewayBlockMode

func (InternetGatewayBlockMode) Values added in v1.191.0

Values returns all known values for InternetGatewayBlockMode. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type InternetGatewayExclusionMode added in v1.191.0

type InternetGatewayExclusionMode string
const (
	InternetGatewayExclusionModeAllowBidirectional InternetGatewayExclusionMode = "allow-bidirectional"
	InternetGatewayExclusionModeAllowEgress        InternetGatewayExclusionMode = "allow-egress"
)

Enum values for InternetGatewayExclusionMode

func (InternetGatewayExclusionMode) Values added in v1.191.0

Values returns all known values for InternetGatewayExclusionMode. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type IpAddressType added in v1.42.0

type IpAddressType string
const (
	IpAddressTypeIpv4      IpAddressType = "ipv4"
	IpAddressTypeDualstack IpAddressType = "dualstack"
	IpAddressTypeIpv6      IpAddressType = "ipv6"
)

Enum values for IpAddressType

func (IpAddressType) Values added in v1.42.0

func (IpAddressType) Values() []IpAddressType

Values returns all known values for IpAddressType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type IpPermission

type IpPermission struct {

	// If the protocol is TCP or UDP, this is the start of the port range. If the
	// protocol is ICMP or ICMPv6, this is the ICMP type or -1 (all ICMP types).
	FromPort *int32

	// The IP protocol name ( tcp , udp , icmp , icmpv6 ) or number (see [Protocol Numbers]).
	//
	// Use -1 to specify all protocols. When authorizing security group rules,
	// specifying -1 or a protocol number other than tcp , udp , icmp , or icmpv6
	// allows traffic on all ports, regardless of any port range you specify. For tcp ,
	// udp , and icmp , you must specify a port range. For icmpv6 , the port range is
	// optional; if you omit the port range, traffic for all types and codes is
	// allowed.
	//
	// [Protocol Numbers]: http://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml
	IpProtocol *string

	// The IPv4 address ranges.
	IpRanges []IpRange

	// The IPv6 address ranges.
	Ipv6Ranges []Ipv6Range

	// The prefix list IDs.
	PrefixListIds []PrefixListId

	// If the protocol is TCP or UDP, this is the end of the port range. If the
	// protocol is ICMP or ICMPv6, this is the ICMP code or -1 (all ICMP codes). If the
	// start port is -1 (all ICMP types), then the end port must be -1 (all ICMP
	// codes).
	ToPort *int32

	// The security group and Amazon Web Services account ID pairs.
	UserIdGroupPairs []UserIdGroupPair
	// contains filtered or unexported fields
}

Describes the permissions for a security group rule.

type IpRange

type IpRange struct {

	// The IPv4 address range. You can either specify a CIDR block or a source
	// security group, not both. To specify a single IPv4 address, use the /32 prefix
	// length.
	CidrIp *string

	// A description for the security group rule that references this IPv4 address
	// range.
	//
	// Constraints: Up to 255 characters in length. Allowed characters are a-z, A-Z,
	// 0-9, spaces, and ._-:/()#,@[]+=&;{}!$*
	Description *string
	// contains filtered or unexported fields
}

Describes an IPv4 address range.

type IpSource added in v1.174.0

type IpSource string
const (
	IpSourceAmazon IpSource = "amazon"
	IpSourceByoip  IpSource = "byoip"
	IpSourceNone   IpSource = "none"
)

Enum values for IpSource

func (IpSource) Values added in v1.174.0

func (IpSource) Values() []IpSource

Values returns all known values for IpSource. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type Ipam added in v1.25.0

type Ipam struct {

	// The IPAM's default resource discovery association ID.
	DefaultResourceDiscoveryAssociationId *string

	// The IPAM's default resource discovery ID.
	DefaultResourceDiscoveryId *string

	// The description for the IPAM.
	Description *string

	// Enable this option to use your own GUA ranges as private IPv6 addresses. This
	// option is disabled by default.
	EnablePrivateGua *bool

	// The Amazon Resource Name (ARN) of the IPAM.
	IpamArn *string

	// The ID of the IPAM.
	IpamId *string

	// The Amazon Web Services Region of the IPAM.
	IpamRegion *string

	// The operating Regions for an IPAM. Operating Regions are Amazon Web Services
	// Regions where the IPAM is allowed to manage IP address CIDRs. IPAM only
	// discovers and monitors resources in the Amazon Web Services Regions you select
	// as operating Regions.
	//
	// For more information about operating Regions, see [Create an IPAM] in the Amazon VPC IPAM User
	// Guide.
	//
	// [Create an IPAM]: https://docs.aws.amazon.com/vpc/latest/ipam/create-ipam.html
	OperatingRegions []IpamOperatingRegion

	// The Amazon Web Services account ID of the owner of the IPAM.
	OwnerId *string

	// The ID of the IPAM's default private scope.
	PrivateDefaultScopeId *string

	// The ID of the IPAM's default public scope.
	PublicDefaultScopeId *string

	// The IPAM's resource discovery association count.
	ResourceDiscoveryAssociationCount *int32

	// The number of scopes in the IPAM. The scope quota is 5. For more information on
	// quotas, see [Quotas in IPAM]in the Amazon VPC IPAM User Guide.
	//
	// [Quotas in IPAM]: https://docs.aws.amazon.com/vpc/latest/ipam/quotas-ipam.html
	ScopeCount *int32

	// The state of the IPAM.
	State IpamState

	// The state message.
	StateMessage *string

	// The key/value combination of a tag assigned to the resource. Use the tag key in
	// the filter name and the tag value as the filter value. For example, to find all
	// resources that have a tag with the key Owner and the value TeamA , specify
	// tag:Owner for the filter name and TeamA for the filter value.
	Tags []Tag

	// IPAM is offered in a Free Tier and an Advanced Tier. For more information about
	// the features available in each tier and the costs associated with the tiers, see
	// [Amazon VPC pricing > IPAM tab].
	//
	// [Amazon VPC pricing > IPAM tab]: http://aws.amazon.com/vpc/pricing/
	Tier IpamTier
	// contains filtered or unexported fields
}

IPAM is a VPC feature that you can use to automate your IP address management workflows including assigning, tracking, troubleshooting, and auditing IP addresses across Amazon Web Services Regions and accounts throughout your Amazon Web Services Organization. For more information, see What is IPAM?in the Amazon VPC IPAM User Guide.

type IpamAddressHistoryRecord added in v1.25.0

type IpamAddressHistoryRecord struct {

	// The CIDR of the resource.
	ResourceCidr *string

	// The compliance status of a resource. For more information on compliance
	// statuses, see [Monitor CIDR usage by resource]in the Amazon VPC IPAM User Guide.
	//
	// [Monitor CIDR usage by resource]: https://docs.aws.amazon.com/vpc/latest/ipam/monitor-cidr-compliance-ipam.html
	ResourceComplianceStatus IpamComplianceStatus

	// The ID of the resource.
	ResourceId *string

	// The name of the resource.
	ResourceName *string

	// The overlap status of an IPAM resource. The overlap status tells you if the
	// CIDR for a resource overlaps with another CIDR in the scope. For more
	// information on overlap statuses, see [Monitor CIDR usage by resource]in the Amazon VPC IPAM User Guide.
	//
	// [Monitor CIDR usage by resource]: https://docs.aws.amazon.com/vpc/latest/ipam/monitor-cidr-compliance-ipam.html
	ResourceOverlapStatus IpamOverlapStatus

	// The ID of the resource owner.
	ResourceOwnerId *string

	// The Amazon Web Services Region of the resource.
	ResourceRegion *string

	// The type of the resource.
	ResourceType IpamAddressHistoryResourceType

	// Sampled end time of the resource-to-CIDR association within the IPAM scope.
	// Changes are picked up in periodic snapshots, so the end time may have occurred
	// before this specific time.
	SampledEndTime *time.Time

	// Sampled start time of the resource-to-CIDR association within the IPAM scope.
	// Changes are picked up in periodic snapshots, so the start time may have occurred
	// before this specific time.
	SampledStartTime *time.Time

	// The VPC ID of the resource.
	VpcId *string
	// contains filtered or unexported fields
}

The historical record of a CIDR within an IPAM scope. For more information, see View the history of IP addresses in the Amazon VPC IPAM User Guide.

type IpamAddressHistoryResourceType added in v1.25.0

type IpamAddressHistoryResourceType string
const (
	IpamAddressHistoryResourceTypeEip              IpamAddressHistoryResourceType = "eip"
	IpamAddressHistoryResourceTypeVpc              IpamAddressHistoryResourceType = "vpc"
	IpamAddressHistoryResourceTypeSubnet           IpamAddressHistoryResourceType = "subnet"
	IpamAddressHistoryResourceTypeNetworkInterface IpamAddressHistoryResourceType = "network-interface"
	IpamAddressHistoryResourceTypeInstance         IpamAddressHistoryResourceType = "instance"
)

Enum values for IpamAddressHistoryResourceType

func (IpamAddressHistoryResourceType) Values added in v1.25.0

Values returns all known values for IpamAddressHistoryResourceType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type IpamAssociatedResourceDiscoveryStatus added in v1.81.0

type IpamAssociatedResourceDiscoveryStatus string
const (
	IpamAssociatedResourceDiscoveryStatusActive   IpamAssociatedResourceDiscoveryStatus = "active"
	IpamAssociatedResourceDiscoveryStatusNotFound IpamAssociatedResourceDiscoveryStatus = "not-found"
)

Enum values for IpamAssociatedResourceDiscoveryStatus

func (IpamAssociatedResourceDiscoveryStatus) Values added in v1.81.0

Values returns all known values for IpamAssociatedResourceDiscoveryStatus. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type IpamCidrAuthorizationContext added in v1.25.0

type IpamCidrAuthorizationContext struct {

	// The plain-text authorization message for the prefix and account.
	Message *string

	// The signed authorization message for the prefix and account.
	Signature *string
	// contains filtered or unexported fields
}

A signed document that proves that you are authorized to bring the specified IP address range to Amazon using BYOIP.

type IpamComplianceStatus added in v1.25.0

type IpamComplianceStatus string
const (
	IpamComplianceStatusCompliant    IpamComplianceStatus = "compliant"
	IpamComplianceStatusNoncompliant IpamComplianceStatus = "noncompliant"
	IpamComplianceStatusUnmanaged    IpamComplianceStatus = "unmanaged"
	IpamComplianceStatusIgnored      IpamComplianceStatus = "ignored"
)

Enum values for IpamComplianceStatus

func (IpamComplianceStatus) Values added in v1.25.0

Values returns all known values for IpamComplianceStatus. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type IpamDiscoveredAccount added in v1.81.0

type IpamDiscoveredAccount struct {

	// The account ID.
	AccountId *string

	// The Amazon Web Services Region that the account information is returned from.
	// An account can be discovered in multiple regions and will have a separate
	// discovered account for each Region.
	DiscoveryRegion *string

	// The resource discovery failure reason.
	FailureReason *IpamDiscoveryFailureReason

	// The last attempted resource discovery time.
	LastAttemptedDiscoveryTime *time.Time

	// The last successful resource discovery time.
	LastSuccessfulDiscoveryTime *time.Time

	// The ID of an Organizational Unit in Amazon Web Services Organizations.
	OrganizationalUnitId *string
	// contains filtered or unexported fields
}

An IPAM discovered account. A discovered account is an Amazon Web Services account that is monitored under a resource discovery. If you have integrated IPAM with Amazon Web Services Organizations, all accounts in the organization are discovered accounts.

type IpamDiscoveredPublicAddress added in v1.136.0

type IpamDiscoveredPublicAddress struct {

	// The IP address.
	Address *string

	// The allocation ID of the resource the IP address is assigned to.
	AddressAllocationId *string

	// The ID of the owner of the resource the IP address is assigned to.
	AddressOwnerId *string

	// The Region of the resource the IP address is assigned to.
	AddressRegion *string

	// The IP address type.
	AddressType IpamPublicAddressType

	// The association status.
	AssociationStatus IpamPublicAddressAssociationStatus

	// The instance ID of the instance the assigned IP address is assigned to.
	InstanceId *string

	// The resource discovery ID.
	IpamResourceDiscoveryId *string

	// The Availability Zone (AZ) or Local Zone (LZ) network border group that the
	// resource that the IP address is assigned to is in. Defaults to an AZ network
	// border group. For more information on available Local Zones, see [Local Zone availability]in the Amazon
	// EC2 User Guide.
	//
	// [Local Zone availability]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-byoip.html#byoip-zone-avail
	NetworkBorderGroup *string

	// The description of the network interface that IP address is assigned to.
	NetworkInterfaceDescription *string

	// The network interface ID of the resource with the assigned IP address.
	NetworkInterfaceId *string

	// The ID of the public IPv4 pool that the resource with the assigned IP address
	// is from.
	PublicIpv4PoolId *string

	// The last successful resource discovery time.
	SampleTime *time.Time

	// Security groups associated with the resource that the IP address is assigned to.
	SecurityGroups []IpamPublicAddressSecurityGroup

	// The Amazon Web Services service associated with the IP address.
	Service IpamPublicAddressAwsService

	// The resource ARN or ID.
	ServiceResource *string

	// The ID of the subnet that the resource with the assigned IP address is in.
	SubnetId *string

	// Tags associated with the IP address.
	Tags *IpamPublicAddressTags

	// The ID of the VPC that the resource with the assigned IP address is in.
	VpcId *string
	// contains filtered or unexported fields
}

A public IP Address discovered by IPAM.

type IpamDiscoveredResourceCidr added in v1.81.0

type IpamDiscoveredResourceCidr struct {

	// The Availability Zone ID.
	AvailabilityZoneId *string

	// The source that allocated the IP address space. byoip or amazon indicates
	// public IP address space allocated by Amazon or space that you have allocated
	// with Bring your own IP (BYOIP). none indicates private space.
	IpSource IpamResourceCidrIpSource

	// The percentage of IP address space in use. To convert the decimal to a
	// percentage, multiply the decimal by 100. Note the following:
	//
	//   - For resources that are VPCs, this is the percentage of IP address space in
	//   the VPC that's taken up by subnet CIDRs.
	//
	//   - For resources that are subnets, if the subnet has an IPv4 CIDR provisioned
	//   to it, this is the percentage of IPv4 address space in the subnet that's in use.
	//   If the subnet has an IPv6 CIDR provisioned to it, the percentage of IPv6 address
	//   space in use is not represented. The percentage of IPv6 address space in use
	//   cannot currently be calculated.
	//
	//   - For resources that are public IPv4 pools, this is the percentage of IP
	//   address space in the pool that's been allocated to Elastic IP addresses (EIPs).
	IpUsage *float64

	// The resource discovery ID.
	IpamResourceDiscoveryId *string

	// For elastic network interfaces, this is the status of whether or not the
	// elastic network interface is attached.
	NetworkInterfaceAttachmentStatus IpamNetworkInterfaceAttachmentStatus

	// The resource CIDR.
	ResourceCidr *string

	// The resource ID.
	ResourceId *string

	// The resource owner ID.
	ResourceOwnerId *string

	// The resource Region.
	ResourceRegion *string

	// The resource tags.
	ResourceTags []IpamResourceTag

	// The resource type.
	ResourceType IpamResourceType

	// The last successful resource discovery time.
	SampleTime *time.Time

	// The subnet ID.
	SubnetId *string

	// The VPC ID.
	VpcId *string
	// contains filtered or unexported fields
}

An IPAM discovered resource CIDR. A discovered resource is a resource CIDR monitored under a resource discovery. The following resources can be discovered: VPCs, Public IPv4 pools, VPC subnets, and Elastic IP addresses. The discovered resource CIDR is the IP address range in CIDR notation that is associated with the resource.

type IpamDiscoveryFailureCode added in v1.81.0

type IpamDiscoveryFailureCode string
const (
	IpamDiscoveryFailureCodeAssumeRoleFailure   IpamDiscoveryFailureCode = "assume-role-failure"
	IpamDiscoveryFailureCodeThrottlingFailure   IpamDiscoveryFailureCode = "throttling-failure"
	IpamDiscoveryFailureCodeUnauthorizedFailure IpamDiscoveryFailureCode = "unauthorized-failure"
)

Enum values for IpamDiscoveryFailureCode

func (IpamDiscoveryFailureCode) Values added in v1.81.0

Values returns all known values for IpamDiscoveryFailureCode. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type IpamDiscoveryFailureReason added in v1.81.0

type IpamDiscoveryFailureReason struct {

	// The discovery failure code.
	//
	//   - assume-role-failure - IPAM could not assume the Amazon Web Services IAM
	//   service-linked role. This could be because of any of the following:
	//
	//   - SLR has not been created yet and IPAM is still creating it.
	//
	//   - You have opted-out of the IPAM home Region.
	//
	//   - Account you are using as your IPAM account has been suspended.
	//
	//   - throttling-failure - IPAM account is already using the allotted transactions
	//   per second and IPAM is receiving a throttling error when assuming the Amazon Web
	//   Services IAM SLR.
	//
	//   - unauthorized-failure - Amazon Web Services account making the request is not
	//   authorized. For more information, see [AuthFailure]in the Amazon Elastic Compute Cloud API
	//   Reference.
	//
	// [AuthFailure]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/errors-overview.html
	Code IpamDiscoveryFailureCode

	// The discovery failure message.
	Message *string
	// contains filtered or unexported fields
}

The discovery failure reason.

type IpamExternalResourceVerificationToken added in v1.171.0

type IpamExternalResourceVerificationToken struct {

	// ARN of the IPAM that created the token.
	IpamArn *string

	// Token ARN.
	IpamExternalResourceVerificationTokenArn *string

	// The ID of the token.
	IpamExternalResourceVerificationTokenId *string

	// The ID of the IPAM that created the token.
	IpamId *string

	// Region of the IPAM that created the token.
	IpamRegion *string

	// Token expiration.
	NotAfter *time.Time

	// Token state.
	State IpamExternalResourceVerificationTokenState

	// Token status.
	Status TokenState

	// Token tags.
	Tags []Tag

	// Token name.
	TokenName *string

	// Token value.
	TokenValue *string
	// contains filtered or unexported fields
}

A verification token is an Amazon Web Services-generated random value that you can use to prove ownership of an external resource. For example, you can use a verification token to validate that you control a public IP address range when you bring an IP address range to Amazon Web Services (BYOIP).

type IpamExternalResourceVerificationTokenState added in v1.171.0

type IpamExternalResourceVerificationTokenState string
const (
	IpamExternalResourceVerificationTokenStateCreateInProgress IpamExternalResourceVerificationTokenState = "create-in-progress"
	IpamExternalResourceVerificationTokenStateCreateComplete   IpamExternalResourceVerificationTokenState = "create-complete"
	IpamExternalResourceVerificationTokenStateCreateFailed     IpamExternalResourceVerificationTokenState = "create-failed"
	IpamExternalResourceVerificationTokenStateDeleteInProgress IpamExternalResourceVerificationTokenState = "delete-in-progress"
	IpamExternalResourceVerificationTokenStateDeleteComplete   IpamExternalResourceVerificationTokenState = "delete-complete"
	IpamExternalResourceVerificationTokenStateDeleteFailed     IpamExternalResourceVerificationTokenState = "delete-failed"
)

Enum values for IpamExternalResourceVerificationTokenState

func (IpamExternalResourceVerificationTokenState) Values added in v1.171.0

Values returns all known values for IpamExternalResourceVerificationTokenState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type IpamManagementState added in v1.25.0

type IpamManagementState string
const (
	IpamManagementStateManaged   IpamManagementState = "managed"
	IpamManagementStateUnmanaged IpamManagementState = "unmanaged"
	IpamManagementStateIgnored   IpamManagementState = "ignored"
)

Enum values for IpamManagementState

func (IpamManagementState) Values added in v1.25.0

Values returns all known values for IpamManagementState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type IpamNetworkInterfaceAttachmentStatus added in v1.169.0

type IpamNetworkInterfaceAttachmentStatus string
const (
	IpamNetworkInterfaceAttachmentStatusAvailable IpamNetworkInterfaceAttachmentStatus = "available"
	IpamNetworkInterfaceAttachmentStatusInUse     IpamNetworkInterfaceAttachmentStatus = "in-use"
)

Enum values for IpamNetworkInterfaceAttachmentStatus

func (IpamNetworkInterfaceAttachmentStatus) Values added in v1.169.0

Values returns all known values for IpamNetworkInterfaceAttachmentStatus. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type IpamOperatingRegion added in v1.25.0

type IpamOperatingRegion struct {

	// The name of the operating Region.
	RegionName *string
	// contains filtered or unexported fields
}

The operating Regions for an IPAM. Operating Regions are Amazon Web Services Regions where the IPAM is allowed to manage IP address CIDRs. IPAM only discovers and monitors resources in the Amazon Web Services Regions you select as operating Regions.

For more information about operating Regions, see Create an IPAM in the Amazon VPC IPAM User Guide.

type IpamOrganizationalUnitExclusion added in v1.193.0

type IpamOrganizationalUnitExclusion struct {

	// An Amazon Web Services Organizations entity path. For more information on the
	// entity path, see [Understand the Amazon Web Services Organizations entity path]in the Amazon Web Services Identity and Access Management User
	// Guide.
	//
	// [Understand the Amazon Web Services Organizations entity path]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_last-accessed-view-data-orgs.html#access_policies_access-advisor-viewing-orgs-entity-path
	OrganizationsEntityPath *string
	// contains filtered or unexported fields
}

If your IPAM is integrated with Amazon Web Services Organizations and you add an organizational unit (OU) exclusion, IPAM will not manage the IP addresses in accounts in that OU exclusion.

type IpamOverlapStatus added in v1.25.0

type IpamOverlapStatus string
const (
	IpamOverlapStatusOverlapping    IpamOverlapStatus = "overlapping"
	IpamOverlapStatusNonoverlapping IpamOverlapStatus = "nonoverlapping"
	IpamOverlapStatusIgnored        IpamOverlapStatus = "ignored"
)

Enum values for IpamOverlapStatus

func (IpamOverlapStatus) Values added in v1.25.0

Values returns all known values for IpamOverlapStatus. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type IpamPool added in v1.25.0

type IpamPool struct {

	// The address family of the pool.
	AddressFamily AddressFamily

	// The default netmask length for allocations added to this pool. If, for example,
	// the CIDR assigned to this pool is 10.0.0.0/8 and you enter 16 here, new
	// allocations will default to 10.0.0.0/16.
	AllocationDefaultNetmaskLength *int32

	// The maximum netmask length possible for CIDR allocations in this IPAM pool to
	// be compliant. The maximum netmask length must be greater than the minimum
	// netmask length. Possible netmask lengths for IPv4 addresses are 0 - 32. Possible
	// netmask lengths for IPv6 addresses are 0 - 128.
	AllocationMaxNetmaskLength *int32

	// The minimum netmask length required for CIDR allocations in this IPAM pool to
	// be compliant. The minimum netmask length must be less than the maximum netmask
	// length. Possible netmask lengths for IPv4 addresses are 0 - 32. Possible netmask
	// lengths for IPv6 addresses are 0 - 128.
	AllocationMinNetmaskLength *int32

	// Tags that are required for resources that use CIDRs from this IPAM pool.
	// Resources that do not have these tags will not be allowed to allocate space from
	// the pool. If the resources have their tags changed after they have allocated
	// space or if the allocation tagging requirements are changed on the pool, the
	// resource may be marked as noncompliant.
	AllocationResourceTags []IpamResourceTag

	// If selected, IPAM will continuously look for resources within the CIDR range of
	// this pool and automatically import them as allocations into your IPAM. The CIDRs
	// that will be allocated for these resources must not already be allocated to
	// other resources in order for the import to succeed. IPAM will import a CIDR
	// regardless of its compliance with the pool's allocation rules, so a resource
	// might be imported and subsequently marked as noncompliant. If IPAM discovers
	// multiple CIDRs that overlap, IPAM will import the largest CIDR only. If IPAM
	// discovers multiple CIDRs with matching CIDRs, IPAM will randomly import one of
	// them only.
	//
	// A locale must be set on the pool for this feature to work.
	AutoImport *bool

	// Limits which service in Amazon Web Services that the pool can be used in.
	// "ec2", for example, allows users to use space for Elastic IP addresses and VPCs.
	AwsService IpamPoolAwsService

	// The description of the IPAM pool.
	Description *string

	// The ARN of the IPAM.
	IpamArn *string

	// The Amazon Resource Name (ARN) of the IPAM pool.
	IpamPoolArn *string

	// The ID of the IPAM pool.
	IpamPoolId *string

	// The Amazon Web Services Region of the IPAM pool.
	IpamRegion *string

	// The ARN of the scope of the IPAM pool.
	IpamScopeArn *string

	// In IPAM, a scope is the highest-level container within IPAM. An IPAM contains
	// two default scopes. Each scope represents the IP space for a single network. The
	// private scope is intended for all private IP address space. The public scope is
	// intended for all public IP address space. Scopes enable you to reuse IP
	// addresses across multiple unconnected networks without causing IP address
	// overlap or conflict.
	IpamScopeType IpamScopeType

	// The locale of the IPAM pool.
	//
	// The locale for the pool should be one of the following:
	//
	//   - An Amazon Web Services Region where you want this IPAM pool to be available
	//   for allocations.
	//
	//   - The network border group for an Amazon Web Services Local Zone where you
	//   want this IPAM pool to be available for allocations ([supported Local Zones] ). This option is only
	//   available for IPAM IPv4 pools in the public scope.
	//
	// If you choose an Amazon Web Services Region for locale that has not been
	// configured as an operating Region for the IPAM, you'll get an error.
	//
	// [supported Local Zones]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-byoip.html#byoip-zone-avail
	Locale *string

	// The Amazon Web Services account ID of the owner of the IPAM pool.
	OwnerId *string

	// The depth of pools in your IPAM pool. The pool depth quota is 10. For more
	// information, see [Quotas in IPAM]in the Amazon VPC IPAM User Guide.
	//
	// [Quotas in IPAM]: https://docs.aws.amazon.com/vpc/latest/ipam/quotas-ipam.html
	PoolDepth *int32

	// The IP address source for pools in the public scope. Only used for provisioning
	// IP address CIDRs to pools in the public scope. Default is BYOIP . For more
	// information, see [Create IPv6 pools]in the Amazon VPC IPAM User Guide. By default, you can add
	// only one Amazon-provided IPv6 CIDR block to a top-level IPv6 pool. For
	// information on increasing the default limit, see [Quotas for your IPAM]in the Amazon VPC IPAM User
	// Guide.
	//
	// [Create IPv6 pools]: https://docs.aws.amazon.com/vpc/latest/ipam/intro-create-ipv6-pools.html
	// [Quotas for your IPAM]: https://docs.aws.amazon.com/vpc/latest/ipam/quotas-ipam.html
	PublicIpSource IpamPoolPublicIpSource

	// Determines if a pool is publicly advertisable. This option is not available for
	// pools with AddressFamily set to ipv4 .
	PubliclyAdvertisable *bool

	// The ID of the source IPAM pool. You can use this option to create an IPAM pool
	// within an existing source pool.
	SourceIpamPoolId *string

	// The resource used to provision CIDRs to a resource planning pool.
	SourceResource *IpamPoolSourceResource

	// The state of the IPAM pool.
	State IpamPoolState

	// The state message.
	StateMessage *string

	// The key/value combination of a tag assigned to the resource. Use the tag key in
	// the filter name and the tag value as the filter value. For example, to find all
	// resources that have a tag with the key Owner and the value TeamA , specify
	// tag:Owner for the filter name and TeamA for the filter value.
	Tags []Tag
	// contains filtered or unexported fields
}

In IPAM, a pool is a collection of contiguous IP addresses CIDRs. Pools enable you to organize your IP addresses according to your routing and security needs. For example, if you have separate routing and security needs for development and production applications, you can create a pool for each.

type IpamPoolAllocation added in v1.25.0

type IpamPoolAllocation struct {

	// The CIDR for the allocation. A CIDR is a representation of an IP address and
	// its associated network mask (or netmask) and refers to a range of IP addresses.
	// An IPv4 CIDR example is 10.24.34.0/23 . An IPv6 CIDR example is 2001:DB8::/32 .
	Cidr *string

	// A description of the pool allocation.
	Description *string

	// The ID of an allocation.
	IpamPoolAllocationId *string

	// The ID of the resource.
	ResourceId *string

	// The owner of the resource.
	ResourceOwner *string

	// The Amazon Web Services Region of the resource.
	ResourceRegion *string

	// The type of the resource.
	ResourceType IpamPoolAllocationResourceType
	// contains filtered or unexported fields
}

In IPAM, an allocation is a CIDR assignment from an IPAM pool to another IPAM pool or to a resource.

type IpamPoolAllocationResourceType added in v1.25.0

type IpamPoolAllocationResourceType string
const (
	IpamPoolAllocationResourceTypeIpamPool          IpamPoolAllocationResourceType = "ipam-pool"
	IpamPoolAllocationResourceTypeVpc               IpamPoolAllocationResourceType = "vpc"
	IpamPoolAllocationResourceTypeEc2PublicIpv4Pool IpamPoolAllocationResourceType = "ec2-public-ipv4-pool"
	IpamPoolAllocationResourceTypeCustom            IpamPoolAllocationResourceType = "custom"
	IpamPoolAllocationResourceTypeSubnet            IpamPoolAllocationResourceType = "subnet"
	IpamPoolAllocationResourceTypeEip               IpamPoolAllocationResourceType = "eip"
)

Enum values for IpamPoolAllocationResourceType

func (IpamPoolAllocationResourceType) Values added in v1.25.0

Values returns all known values for IpamPoolAllocationResourceType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type IpamPoolAwsService added in v1.25.0

type IpamPoolAwsService string
const (
	IpamPoolAwsServiceEc2 IpamPoolAwsService = "ec2"
)

Enum values for IpamPoolAwsService

func (IpamPoolAwsService) Values added in v1.25.0

Values returns all known values for IpamPoolAwsService. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type IpamPoolCidr added in v1.25.0

type IpamPoolCidr struct {

	// The CIDR provisioned to the IPAM pool. A CIDR is a representation of an IP
	// address and its associated network mask (or netmask) and refers to a range of IP
	// addresses. An IPv4 CIDR example is 10.24.34.0/23 . An IPv6 CIDR example is
	// 2001:DB8::/32 .
	Cidr *string

	// Details related to why an IPAM pool CIDR failed to be provisioned.
	FailureReason *IpamPoolCidrFailureReason

	// The IPAM pool CIDR ID.
	IpamPoolCidrId *string

	// The netmask length of the CIDR you'd like to provision to a pool. Can be used
	// for provisioning Amazon-provided IPv6 CIDRs to top-level pools and for
	// provisioning CIDRs to pools with source pools. Cannot be used to provision BYOIP
	// CIDRs to top-level pools. "NetmaskLength" or "Cidr" is required.
	NetmaskLength *int32

	// The state of the CIDR.
	State IpamPoolCidrState
	// contains filtered or unexported fields
}

A CIDR provisioned to an IPAM pool.

type IpamPoolCidrFailureCode added in v1.25.0

type IpamPoolCidrFailureCode string
const (
	IpamPoolCidrFailureCodeCidrNotAvailable IpamPoolCidrFailureCode = "cidr-not-available"
	IpamPoolCidrFailureCodeLimitExceeded    IpamPoolCidrFailureCode = "limit-exceeded"
)

Enum values for IpamPoolCidrFailureCode

func (IpamPoolCidrFailureCode) Values added in v1.25.0

Values returns all known values for IpamPoolCidrFailureCode. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type IpamPoolCidrFailureReason added in v1.25.0

type IpamPoolCidrFailureReason struct {

	// An error code related to why an IPAM pool CIDR failed to be provisioned.
	Code IpamPoolCidrFailureCode

	// A message related to why an IPAM pool CIDR failed to be provisioned.
	Message *string
	// contains filtered or unexported fields
}

Details related to why an IPAM pool CIDR failed to be provisioned.

type IpamPoolCidrState added in v1.25.0

type IpamPoolCidrState string
const (
	IpamPoolCidrStatePendingProvision   IpamPoolCidrState = "pending-provision"
	IpamPoolCidrStateProvisioned        IpamPoolCidrState = "provisioned"
	IpamPoolCidrStateFailedProvision    IpamPoolCidrState = "failed-provision"
	IpamPoolCidrStatePendingDeprovision IpamPoolCidrState = "pending-deprovision"
	IpamPoolCidrStateDeprovisioned      IpamPoolCidrState = "deprovisioned"
	IpamPoolCidrStateFailedDeprovision  IpamPoolCidrState = "failed-deprovision"
	IpamPoolCidrStatePendingImport      IpamPoolCidrState = "pending-import"
	IpamPoolCidrStateFailedImport       IpamPoolCidrState = "failed-import"
)

Enum values for IpamPoolCidrState

func (IpamPoolCidrState) Values added in v1.25.0

Values returns all known values for IpamPoolCidrState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type IpamPoolPublicIpSource added in v1.81.0

type IpamPoolPublicIpSource string
const (
	IpamPoolPublicIpSourceAmazon IpamPoolPublicIpSource = "amazon"
	IpamPoolPublicIpSourceByoip  IpamPoolPublicIpSource = "byoip"
)

Enum values for IpamPoolPublicIpSource

func (IpamPoolPublicIpSource) Values added in v1.81.0

Values returns all known values for IpamPoolPublicIpSource. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type IpamPoolSourceResource added in v1.136.0

type IpamPoolSourceResource struct {

	// The source resource ID.
	ResourceId *string

	// The source resource owner.
	ResourceOwner *string

	// The source resource Region.
	ResourceRegion *string

	// The source resource type.
	ResourceType IpamPoolSourceResourceType
	// contains filtered or unexported fields
}

The resource used to provision CIDRs to a resource planning pool.

type IpamPoolSourceResourceRequest added in v1.136.0

type IpamPoolSourceResourceRequest struct {

	// The source resource ID.
	ResourceId *string

	// The source resource owner.
	ResourceOwner *string

	// The source resource Region.
	ResourceRegion *string

	// The source resource type.
	ResourceType IpamPoolSourceResourceType
	// contains filtered or unexported fields
}

The resource used to provision CIDRs to a resource planning pool.

type IpamPoolSourceResourceType added in v1.136.0

type IpamPoolSourceResourceType string
const (
	IpamPoolSourceResourceTypeVpc IpamPoolSourceResourceType = "vpc"
)

Enum values for IpamPoolSourceResourceType

func (IpamPoolSourceResourceType) Values added in v1.136.0

Values returns all known values for IpamPoolSourceResourceType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type IpamPoolState added in v1.25.0

type IpamPoolState string
const (
	IpamPoolStateCreateInProgress  IpamPoolState = "create-in-progress"
	IpamPoolStateCreateComplete    IpamPoolState = "create-complete"
	IpamPoolStateCreateFailed      IpamPoolState = "create-failed"
	IpamPoolStateModifyInProgress  IpamPoolState = "modify-in-progress"
	IpamPoolStateModifyComplete    IpamPoolState = "modify-complete"
	IpamPoolStateModifyFailed      IpamPoolState = "modify-failed"
	IpamPoolStateDeleteInProgress  IpamPoolState = "delete-in-progress"
	IpamPoolStateDeleteComplete    IpamPoolState = "delete-complete"
	IpamPoolStateDeleteFailed      IpamPoolState = "delete-failed"
	IpamPoolStateIsolateInProgress IpamPoolState = "isolate-in-progress"
	IpamPoolStateIsolateComplete   IpamPoolState = "isolate-complete"
	IpamPoolStateRestoreInProgress IpamPoolState = "restore-in-progress"
)

Enum values for IpamPoolState

func (IpamPoolState) Values added in v1.25.0

func (IpamPoolState) Values() []IpamPoolState

Values returns all known values for IpamPoolState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type IpamPublicAddressAssociationStatus added in v1.136.0

type IpamPublicAddressAssociationStatus string
const (
	IpamPublicAddressAssociationStatusAssociated    IpamPublicAddressAssociationStatus = "associated"
	IpamPublicAddressAssociationStatusDisassociated IpamPublicAddressAssociationStatus = "disassociated"
)

Enum values for IpamPublicAddressAssociationStatus

func (IpamPublicAddressAssociationStatus) Values added in v1.136.0

Values returns all known values for IpamPublicAddressAssociationStatus. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type IpamPublicAddressAwsService added in v1.136.0

type IpamPublicAddressAwsService string
const (
	IpamPublicAddressAwsServiceNatGateway IpamPublicAddressAwsService = "nat-gateway"
	IpamPublicAddressAwsServiceDms        IpamPublicAddressAwsService = "database-migration-service"
	IpamPublicAddressAwsServiceRedshift   IpamPublicAddressAwsService = "redshift"
	IpamPublicAddressAwsServiceEcs        IpamPublicAddressAwsService = "elastic-container-service"
	IpamPublicAddressAwsServiceRds        IpamPublicAddressAwsService = "relational-database-service"
	IpamPublicAddressAwsServiceS2sVpn     IpamPublicAddressAwsService = "site-to-site-vpn"
	IpamPublicAddressAwsServiceEc2Lb      IpamPublicAddressAwsService = "load-balancer"
	IpamPublicAddressAwsServiceAga        IpamPublicAddressAwsService = "global-accelerator"
	IpamPublicAddressAwsServiceOther      IpamPublicAddressAwsService = "other"
)

Enum values for IpamPublicAddressAwsService

func (IpamPublicAddressAwsService) Values added in v1.136.0

Values returns all known values for IpamPublicAddressAwsService. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type IpamPublicAddressSecurityGroup added in v1.136.0

type IpamPublicAddressSecurityGroup struct {

	// The security group's ID.
	GroupId *string

	// The security group's name.
	GroupName *string
	// contains filtered or unexported fields
}

The security group that the resource with the public IP address is in.

type IpamPublicAddressTag added in v1.136.0

type IpamPublicAddressTag struct {

	// The tag's key.
	Key *string

	// The tag's value.
	Value *string
	// contains filtered or unexported fields
}

A tag for a public IP address discovered by IPAM.

type IpamPublicAddressTags added in v1.136.0

type IpamPublicAddressTags struct {

	// Tags for an Elastic IP address.
	EipTags []IpamPublicAddressTag
	// contains filtered or unexported fields
}

Tags for a public IP address discovered by IPAM.

type IpamPublicAddressType added in v1.136.0

type IpamPublicAddressType string
const (
	IpamPublicAddressTypeServiceManagedIp    IpamPublicAddressType = "service-managed-ip"
	IpamPublicAddressTypeServiceManagedByoip IpamPublicAddressType = "service-managed-byoip"
	IpamPublicAddressTypeAmazonOwnedEip      IpamPublicAddressType = "amazon-owned-eip"
	IpamPublicAddressTypeAmazonOwnedContig   IpamPublicAddressType = "amazon-owned-contig"
	IpamPublicAddressTypeByoip               IpamPublicAddressType = "byoip"
	IpamPublicAddressTypeEc2PublicIp         IpamPublicAddressType = "ec2-public-ip"
)

Enum values for IpamPublicAddressType

func (IpamPublicAddressType) Values added in v1.136.0

Values returns all known values for IpamPublicAddressType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type IpamResourceCidr added in v1.25.0

type IpamResourceCidr struct {

	// The Availability Zone ID.
	AvailabilityZoneId *string

	// The compliance status of the IPAM resource. For more information on compliance
	// statuses, see [Monitor CIDR usage by resource]in the Amazon VPC IPAM User Guide.
	//
	// [Monitor CIDR usage by resource]: https://docs.aws.amazon.com/vpc/latest/ipam/monitor-cidr-compliance-ipam.html
	ComplianceStatus IpamComplianceStatus

	// The percentage of IP address space in use. To convert the decimal to a
	// percentage, multiply the decimal by 100. Note the following:
	//
	//   - For resources that are VPCs, this is the percentage of IP address space in
	//   the VPC that's taken up by subnet CIDRs.
	//
	//   - For resources that are subnets, if the subnet has an IPv4 CIDR provisioned
	//   to it, this is the percentage of IPv4 address space in the subnet that's in use.
	//   If the subnet has an IPv6 CIDR provisioned to it, the percentage of IPv6 address
	//   space in use is not represented. The percentage of IPv6 address space in use
	//   cannot currently be calculated.
	//
	//   - For resources that are public IPv4 pools, this is the percentage of IP
	//   address space in the pool that's been allocated to Elastic IP addresses (EIPs).
	IpUsage *float64

	// The IPAM ID for an IPAM resource.
	IpamId *string

	// The pool ID for an IPAM resource.
	IpamPoolId *string

	// The scope ID for an IPAM resource.
	IpamScopeId *string

	// The management state of the resource. For more information about management
	// states, see [Monitor CIDR usage by resource]in the Amazon VPC IPAM User Guide.
	//
	// [Monitor CIDR usage by resource]: https://docs.aws.amazon.com/vpc/latest/ipam/monitor-cidr-compliance-ipam.html
	ManagementState IpamManagementState

	// The overlap status of an IPAM resource. The overlap status tells you if the
	// CIDR for a resource overlaps with another CIDR in the scope. For more
	// information on overlap statuses, see [Monitor CIDR usage by resource]in the Amazon VPC IPAM User Guide.
	//
	// [Monitor CIDR usage by resource]: https://docs.aws.amazon.com/vpc/latest/ipam/monitor-cidr-compliance-ipam.html
	OverlapStatus IpamOverlapStatus

	// The CIDR for an IPAM resource.
	ResourceCidr *string

	// The ID of an IPAM resource.
	ResourceId *string

	// The name of an IPAM resource.
	ResourceName *string

	// The Amazon Web Services account number of the owner of an IPAM resource.
	ResourceOwnerId *string

	// The Amazon Web Services Region for an IPAM resource.
	ResourceRegion *string

	// The tags for an IPAM resource.
	ResourceTags []IpamResourceTag

	// The type of IPAM resource.
	ResourceType IpamResourceType

	// The ID of a VPC.
	VpcId *string
	// contains filtered or unexported fields
}

The CIDR for an IPAM resource.

type IpamResourceCidrIpSource added in v1.174.0

type IpamResourceCidrIpSource string
const (
	IpamResourceCidrIpSourceAmazon IpamResourceCidrIpSource = "amazon"
	IpamResourceCidrIpSourceByoip  IpamResourceCidrIpSource = "byoip"
	IpamResourceCidrIpSourceNone   IpamResourceCidrIpSource = "none"
)

Enum values for IpamResourceCidrIpSource

func (IpamResourceCidrIpSource) Values added in v1.174.0

Values returns all known values for IpamResourceCidrIpSource. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type IpamResourceDiscovery added in v1.81.0

type IpamResourceDiscovery struct {

	// The resource discovery description.
	Description *string

	// The resource discovery Amazon Resource Name (ARN).
	IpamResourceDiscoveryArn *string

	// The resource discovery ID.
	IpamResourceDiscoveryId *string

	// The resource discovery Region.
	IpamResourceDiscoveryRegion *string

	// Defines if the resource discovery is the default. The default resource
	// discovery is the resource discovery automatically created when you create an
	// IPAM.
	IsDefault *bool

	// The operating Regions for the resource discovery. Operating Regions are Amazon
	// Web Services Regions where the IPAM is allowed to manage IP address CIDRs. IPAM
	// only discovers and monitors resources in the Amazon Web Services Regions you
	// select as operating Regions.
	OperatingRegions []IpamOperatingRegion

	// If your IPAM is integrated with Amazon Web Services Organizations and you add
	// an organizational unit (OU) exclusion, IPAM will not manage the IP addresses in
	// accounts in that OU exclusion.
	OrganizationalUnitExclusions []IpamOrganizationalUnitExclusion

	// The ID of the owner.
	OwnerId *string

	// The lifecycle state of the resource discovery.
	//
	//   - create-in-progress - Resource discovery is being created.
	//
	//   - create-complete - Resource discovery creation is complete.
	//
	//   - create-failed - Resource discovery creation has failed.
	//
	//   - modify-in-progress - Resource discovery is being modified.
	//
	//   - modify-complete - Resource discovery modification is complete.
	//
	//   - modify-failed - Resource discovery modification has failed.
	//
	//   - delete-in-progress - Resource discovery is being deleted.
	//
	//   - delete-complete - Resource discovery deletion is complete.
	//
	//   - delete-failed - Resource discovery deletion has failed.
	//
	//   - isolate-in-progress - Amazon Web Services account that created the resource
	//   discovery has been removed and the resource discovery is being isolated.
	//
	//   - isolate-complete - Resource discovery isolation is complete.
	//
	//   - restore-in-progress - Amazon Web Services account that created the resource
	//   discovery and was isolated has been restored.
	State IpamResourceDiscoveryState

	// A tag is a label that you assign to an Amazon Web Services resource. Each tag
	// consists of a key and an optional value. You can use tags to search and filter
	// your resources or track your Amazon Web Services costs.
	Tags []Tag
	// contains filtered or unexported fields
}

A resource discovery is an IPAM component that enables IPAM to manage and monitor resources that belong to the owning account.

type IpamResourceDiscoveryAssociation added in v1.81.0

type IpamResourceDiscoveryAssociation struct {

	// The IPAM ARN.
	IpamArn *string

	// The IPAM ID.
	IpamId *string

	// The IPAM home Region.
	IpamRegion *string

	// The resource discovery association Amazon Resource Name (ARN).
	IpamResourceDiscoveryAssociationArn *string

	// The resource discovery association ID.
	IpamResourceDiscoveryAssociationId *string

	// The resource discovery ID.
	IpamResourceDiscoveryId *string

	// Defines if the resource discovery is the default. When you create an IPAM, a
	// default resource discovery is created for your IPAM and it's associated with
	// your IPAM.
	IsDefault *bool

	// The Amazon Web Services account ID of the resource discovery owner.
	OwnerId *string

	// The resource discovery status.
	//
	//   - active - Connection or permissions required to read the results of the
	//   resource discovery are intact.
	//
	//   - not-found - Connection or permissions required to read the results of the
	//   resource discovery are broken. This may happen if the owner of the resource
	//   discovery stopped sharing it or deleted the resource discovery. Verify the
	//   resource discovery still exists and the Amazon Web Services RAM resource share
	//   is still intact.
	ResourceDiscoveryStatus IpamAssociatedResourceDiscoveryStatus

	// The lifecycle state of the association when you associate or disassociate a
	// resource discovery.
	//
	//   - associate-in-progress - Resource discovery is being associated.
	//
	//   - associate-complete - Resource discovery association is complete.
	//
	//   - associate-failed - Resource discovery association has failed.
	//
	//   - disassociate-in-progress - Resource discovery is being disassociated.
	//
	//   - disassociate-complete - Resource discovery disassociation is complete.
	//
	//   - disassociate-failed - Resource discovery disassociation has failed.
	//
	//   - isolate-in-progress - Amazon Web Services account that created the resource
	//   discovery association has been removed and the resource discovery associatation
	//   is being isolated.
	//
	//   - isolate-complete - Resource discovery isolation is complete..
	//
	//   - restore-in-progress - Resource discovery is being restored.
	State IpamResourceDiscoveryAssociationState

	// A tag is a label that you assign to an Amazon Web Services resource. Each tag
	// consists of a key and an optional value. You can use tags to search and filter
	// your resources or track your Amazon Web Services costs.
	Tags []Tag
	// contains filtered or unexported fields
}

An IPAM resource discovery association. An associated resource discovery is a resource discovery that has been associated with an IPAM. IPAM aggregates the resource CIDRs discovered by the associated resource discovery.

type IpamResourceDiscoveryAssociationState added in v1.81.0

type IpamResourceDiscoveryAssociationState string
const (
	IpamResourceDiscoveryAssociationStateAssociateInProgress    IpamResourceDiscoveryAssociationState = "associate-in-progress"
	IpamResourceDiscoveryAssociationStateAssociateComplete      IpamResourceDiscoveryAssociationState = "associate-complete"
	IpamResourceDiscoveryAssociationStateAssociateFailed        IpamResourceDiscoveryAssociationState = "associate-failed"
	IpamResourceDiscoveryAssociationStateDisassociateInProgress IpamResourceDiscoveryAssociationState = "disassociate-in-progress"
	IpamResourceDiscoveryAssociationStateDisassociateComplete   IpamResourceDiscoveryAssociationState = "disassociate-complete"
	IpamResourceDiscoveryAssociationStateDisassociateFailed     IpamResourceDiscoveryAssociationState = "disassociate-failed"
	IpamResourceDiscoveryAssociationStateIsolateInProgress      IpamResourceDiscoveryAssociationState = "isolate-in-progress"
	IpamResourceDiscoveryAssociationStateIsolateComplete        IpamResourceDiscoveryAssociationState = "isolate-complete"
	IpamResourceDiscoveryAssociationStateRestoreInProgress      IpamResourceDiscoveryAssociationState = "restore-in-progress"
)

Enum values for IpamResourceDiscoveryAssociationState

func (IpamResourceDiscoveryAssociationState) Values added in v1.81.0

Values returns all known values for IpamResourceDiscoveryAssociationState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type IpamResourceDiscoveryState added in v1.81.0

type IpamResourceDiscoveryState string
const (
	IpamResourceDiscoveryStateCreateInProgress  IpamResourceDiscoveryState = "create-in-progress"
	IpamResourceDiscoveryStateCreateComplete    IpamResourceDiscoveryState = "create-complete"
	IpamResourceDiscoveryStateCreateFailed      IpamResourceDiscoveryState = "create-failed"
	IpamResourceDiscoveryStateModifyInProgress  IpamResourceDiscoveryState = "modify-in-progress"
	IpamResourceDiscoveryStateModifyComplete    IpamResourceDiscoveryState = "modify-complete"
	IpamResourceDiscoveryStateModifyFailed      IpamResourceDiscoveryState = "modify-failed"
	IpamResourceDiscoveryStateDeleteInProgress  IpamResourceDiscoveryState = "delete-in-progress"
	IpamResourceDiscoveryStateDeleteComplete    IpamResourceDiscoveryState = "delete-complete"
	IpamResourceDiscoveryStateDeleteFailed      IpamResourceDiscoveryState = "delete-failed"
	IpamResourceDiscoveryStateIsolateInProgress IpamResourceDiscoveryState = "isolate-in-progress"
	IpamResourceDiscoveryStateIsolateComplete   IpamResourceDiscoveryState = "isolate-complete"
	IpamResourceDiscoveryStateRestoreInProgress IpamResourceDiscoveryState = "restore-in-progress"
)

Enum values for IpamResourceDiscoveryState

func (IpamResourceDiscoveryState) Values added in v1.81.0

Values returns all known values for IpamResourceDiscoveryState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type IpamResourceTag added in v1.25.0

type IpamResourceTag struct {

	// The key of a tag assigned to the resource. Use this filter to find all
	// resources assigned a tag with a specific key, regardless of the tag value.
	Key *string

	// The value of the tag.
	Value *string
	// contains filtered or unexported fields
}

The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA , specify tag:Owner for the filter name and TeamA for the filter value.

type IpamResourceType added in v1.25.0

type IpamResourceType string
const (
	IpamResourceTypeVpc            IpamResourceType = "vpc"
	IpamResourceTypeSubnet         IpamResourceType = "subnet"
	IpamResourceTypeEip            IpamResourceType = "eip"
	IpamResourceTypePublicIpv4Pool IpamResourceType = "public-ipv4-pool"
	IpamResourceTypeIpv6Pool       IpamResourceType = "ipv6-pool"
	IpamResourceTypeEni            IpamResourceType = "eni"
)

Enum values for IpamResourceType

func (IpamResourceType) Values added in v1.25.0

Values returns all known values for IpamResourceType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type IpamScope added in v1.25.0

type IpamScope struct {

	// The description of the scope.
	Description *string

	// The ARN of the IPAM.
	IpamArn *string

	// The Amazon Web Services Region of the IPAM scope.
	IpamRegion *string

	// The Amazon Resource Name (ARN) of the scope.
	IpamScopeArn *string

	// The ID of the scope.
	IpamScopeId *string

	// The type of the scope.
	IpamScopeType IpamScopeType

	// Defines if the scope is the default scope or not.
	IsDefault *bool

	// The Amazon Web Services account ID of the owner of the scope.
	OwnerId *string

	// The number of pools in the scope.
	PoolCount *int32

	// The state of the IPAM scope.
	State IpamScopeState

	// The key/value combination of a tag assigned to the resource. Use the tag key in
	// the filter name and the tag value as the filter value. For example, to find all
	// resources that have a tag with the key Owner and the value TeamA , specify
	// tag:Owner for the filter name and TeamA for the filter value.
	Tags []Tag
	// contains filtered or unexported fields
}

In IPAM, a scope is the highest-level container within IPAM. An IPAM contains two default scopes. Each scope represents the IP space for a single network. The private scope is intended for all private IP address space. The public scope is intended for all public IP address space. Scopes enable you to reuse IP addresses across multiple unconnected networks without causing IP address overlap or conflict.

For more information, see How IPAM works in the Amazon VPC IPAM User Guide.

type IpamScopeState added in v1.25.0

type IpamScopeState string
const (
	IpamScopeStateCreateInProgress  IpamScopeState = "create-in-progress"
	IpamScopeStateCreateComplete    IpamScopeState = "create-complete"
	IpamScopeStateCreateFailed      IpamScopeState = "create-failed"
	IpamScopeStateModifyInProgress  IpamScopeState = "modify-in-progress"
	IpamScopeStateModifyComplete    IpamScopeState = "modify-complete"
	IpamScopeStateModifyFailed      IpamScopeState = "modify-failed"
	IpamScopeStateDeleteInProgress  IpamScopeState = "delete-in-progress"
	IpamScopeStateDeleteComplete    IpamScopeState = "delete-complete"
	IpamScopeStateDeleteFailed      IpamScopeState = "delete-failed"
	IpamScopeStateIsolateInProgress IpamScopeState = "isolate-in-progress"
	IpamScopeStateIsolateComplete   IpamScopeState = "isolate-complete"
	IpamScopeStateRestoreInProgress IpamScopeState = "restore-in-progress"
)

Enum values for IpamScopeState

func (IpamScopeState) Values added in v1.25.0

func (IpamScopeState) Values() []IpamScopeState

Values returns all known values for IpamScopeState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type IpamScopeType added in v1.25.0

type IpamScopeType string
const (
	IpamScopeTypePublic  IpamScopeType = "public"
	IpamScopeTypePrivate IpamScopeType = "private"
)

Enum values for IpamScopeType

func (IpamScopeType) Values added in v1.25.0

func (IpamScopeType) Values() []IpamScopeType

Values returns all known values for IpamScopeType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type IpamState added in v1.25.0

type IpamState string
const (
	IpamStateCreateInProgress  IpamState = "create-in-progress"
	IpamStateCreateComplete    IpamState = "create-complete"
	IpamStateCreateFailed      IpamState = "create-failed"
	IpamStateModifyInProgress  IpamState = "modify-in-progress"
	IpamStateModifyComplete    IpamState = "modify-complete"
	IpamStateModifyFailed      IpamState = "modify-failed"
	IpamStateDeleteInProgress  IpamState = "delete-in-progress"
	IpamStateDeleteComplete    IpamState = "delete-complete"
	IpamStateDeleteFailed      IpamState = "delete-failed"
	IpamStateIsolateInProgress IpamState = "isolate-in-progress"
	IpamStateIsolateComplete   IpamState = "isolate-complete"
	IpamStateRestoreInProgress IpamState = "restore-in-progress"
)

Enum values for IpamState

func (IpamState) Values added in v1.25.0

func (IpamState) Values() []IpamState

Values returns all known values for IpamState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type IpamTier added in v1.136.0

type IpamTier string
const (
	IpamTierFree     IpamTier = "free"
	IpamTierAdvanced IpamTier = "advanced"
)

Enum values for IpamTier

func (IpamTier) Values added in v1.136.0

func (IpamTier) Values() []IpamTier

Values returns all known values for IpamTier. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type Ipv4PrefixSpecification added in v1.13.0

type Ipv4PrefixSpecification struct {

	// The IPv4 prefix. For information, see [Assigning prefixes to network interfaces] in the Amazon EC2 User Guide.
	//
	// [Assigning prefixes to network interfaces]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-prefix-eni.html
	Ipv4Prefix *string
	// contains filtered or unexported fields
}

Describes an IPv4 prefix.

type Ipv4PrefixSpecificationRequest added in v1.13.0

type Ipv4PrefixSpecificationRequest struct {

	// The IPv4 prefix. For information, see [Assigning prefixes to network interfaces] in the Amazon EC2 User Guide.
	//
	// [Assigning prefixes to network interfaces]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-prefix-eni.html
	Ipv4Prefix *string
	// contains filtered or unexported fields
}

Describes the IPv4 prefix option for a network interface.

type Ipv4PrefixSpecificationResponse added in v1.13.0

type Ipv4PrefixSpecificationResponse struct {

	// The IPv4 delegated prefixes assigned to the network interface.
	Ipv4Prefix *string
	// contains filtered or unexported fields
}

Information about the IPv4 delegated prefixes assigned to a network interface.

type Ipv6AddressAttribute added in v1.174.0

type Ipv6AddressAttribute string
const (
	Ipv6AddressAttributePublic  Ipv6AddressAttribute = "public"
	Ipv6AddressAttributePrivate Ipv6AddressAttribute = "private"
)

Enum values for Ipv6AddressAttribute

func (Ipv6AddressAttribute) Values added in v1.174.0

Values returns all known values for Ipv6AddressAttribute. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type Ipv6CidrAssociation

type Ipv6CidrAssociation struct {

	// The resource that's associated with the IPv6 CIDR block.
	AssociatedResource *string

	// The IPv6 CIDR block.
	Ipv6Cidr *string
	// contains filtered or unexported fields
}

Describes an IPv6 CIDR block association.

type Ipv6CidrBlock

type Ipv6CidrBlock struct {

	// The IPv6 CIDR block.
	Ipv6CidrBlock *string
	// contains filtered or unexported fields
}

Describes an IPv6 CIDR block.

type Ipv6Pool

type Ipv6Pool struct {

	// The description for the address pool.
	Description *string

	// The CIDR blocks for the address pool.
	PoolCidrBlocks []PoolCidrBlock

	// The ID of the address pool.
	PoolId *string

	// Any tags for the address pool.
	Tags []Tag
	// contains filtered or unexported fields
}

Describes an IPv6 address pool.

type Ipv6PrefixSpecification added in v1.13.0

type Ipv6PrefixSpecification struct {

	// The IPv6 prefix.
	Ipv6Prefix *string
	// contains filtered or unexported fields
}

Describes the IPv6 prefix.

type Ipv6PrefixSpecificationRequest added in v1.13.0

type Ipv6PrefixSpecificationRequest struct {

	// The IPv6 prefix.
	Ipv6Prefix *string
	// contains filtered or unexported fields
}

Describes the IPv4 prefix option for a network interface.

type Ipv6PrefixSpecificationResponse added in v1.13.0

type Ipv6PrefixSpecificationResponse struct {

	// The IPv6 delegated prefixes assigned to the network interface.
	Ipv6Prefix *string
	// contains filtered or unexported fields
}

Information about the IPv6 delegated prefixes assigned to a network interface.

type Ipv6Range

type Ipv6Range struct {

	// The IPv6 address range. You can either specify a CIDR block or a source
	// security group, not both. To specify a single IPv6 address, use the /128 prefix
	// length.
	CidrIpv6 *string

	// A description for the security group rule that references this IPv6 address
	// range.
	//
	// Constraints: Up to 255 characters in length. Allowed characters are a-z, A-Z,
	// 0-9, spaces, and ._-:/()#,@[]+=&;{}!$*
	Description *string
	// contains filtered or unexported fields
}

Describes an IPv6 address range.

type Ipv6SupportValue

type Ipv6SupportValue string
const (
	Ipv6SupportValueEnable  Ipv6SupportValue = "enable"
	Ipv6SupportValueDisable Ipv6SupportValue = "disable"
)

Enum values for Ipv6SupportValue

func (Ipv6SupportValue) Values added in v0.29.0

Values returns all known values for Ipv6SupportValue. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type KeyFormat added in v1.37.0

type KeyFormat string
const (
	KeyFormatPem KeyFormat = "pem"
	KeyFormatPpk KeyFormat = "ppk"
)

Enum values for KeyFormat

func (KeyFormat) Values added in v1.37.0

func (KeyFormat) Values() []KeyFormat

Values returns all known values for KeyFormat. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type KeyPairInfo

type KeyPairInfo struct {

	// 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], 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], in the UTC time zone.
	//
	// [ISO 8601 date-time format]: https://www.iso.org/iso-8601-date-and-time-format.html
	CreateTime *time.Time

	// If you used CreateKeyPair to create the key pair:
	//
	//   - 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].
	//
	// If you used ImportKeyPair to provide Amazon Web Services the public key:
	//
	//   - For RSA key pairs, the key fingerprint is the MD5 public key fingerprint as
	//   specified in section 4 of RFC4716.
	//
	//   - 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].
	//
	// [OpenSSH 6.8]: http://www.openssh.com/txt/release-6.8
	KeyFingerprint *string

	// The name of the key pair.
	KeyName *string

	// The ID of the key pair.
	KeyPairId *string

	// The type of key pair.
	KeyType KeyType

	// The public key material.
	PublicKey *string

	// Any tags applied to the key pair.
	Tags []Tag
	// contains filtered or unexported fields
}

Describes a key pair.

type KeyType added in v1.14.0

type KeyType string
const (
	KeyTypeRsa     KeyType = "rsa"
	KeyTypeEd25519 KeyType = "ed25519"
)

Enum values for KeyType

func (KeyType) Values added in v1.14.0

func (KeyType) Values() []KeyType

Values returns all known values for KeyType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type LastError

type LastError struct {

	// The error code for the VPC endpoint error.
	Code *string

	// The error message for the VPC endpoint error.
	Message *string
	// contains filtered or unexported fields
}

The last error that occurred for a VPC endpoint.

type LaunchPermission

type LaunchPermission struct {

	// The name of the group.
	Group PermissionGroup

	// The Amazon Resource Name (ARN) of an organization.
	OrganizationArn *string

	// The Amazon Resource Name (ARN) of an organizational unit (OU).
	OrganizationalUnitArn *string

	// The Amazon Web Services account ID.
	//
	// Constraints: Up to 10 000 account IDs can be specified in a single request.
	UserId *string
	// contains filtered or unexported fields
}

Describes a launch permission.

type LaunchPermissionModifications

type LaunchPermissionModifications struct {

	// The Amazon Web Services account ID, organization ARN, or OU ARN to add to the
	// list of launch permissions for the AMI.
	Add []LaunchPermission

	// The Amazon Web Services account ID, organization ARN, or OU ARN to remove from
	// the list of launch permissions for the AMI.
	Remove []LaunchPermission
	// contains filtered or unexported fields
}

Describes a launch permission modification.

type LaunchSpecification

type LaunchSpecification struct {

	// Deprecated.
	AddressingType *string

	// The block device mapping entries.
	BlockDeviceMappings []BlockDeviceMapping

	// Indicates whether the instance is optimized for EBS I/O. This optimization
	// provides dedicated throughput to Amazon EBS and an optimized configuration stack
	// to provide optimal EBS I/O performance. This optimization isn't available with
	// all instance types. Additional usage charges apply when using an EBS Optimized
	// instance.
	//
	// Default: false
	EbsOptimized *bool

	// The IAM instance profile.
	IamInstanceProfile *IamInstanceProfileSpecification

	// The ID of the AMI.
	ImageId *string

	// The instance type. Only one instance type can be specified.
	InstanceType InstanceType

	// The ID of the kernel.
	KernelId *string

	// The name of the key pair.
	KeyName *string

	// Describes the monitoring of an instance.
	Monitoring *RunInstancesMonitoringEnabled

	// The network interfaces. If you specify a network interface, you must specify
	// subnet IDs and security group IDs using the network interface.
	NetworkInterfaces []InstanceNetworkInterfaceSpecification

	// The placement information for the instance.
	Placement *SpotPlacement

	// The ID of the RAM disk.
	RamdiskId *string

	// The IDs of the security groups.
	SecurityGroups []GroupIdentifier

	// The ID of the subnet in which to launch the instance.
	SubnetId *string

	// The base64-encoded user data that instances use when starting up. User data is
	// limited to 16 KB.
	UserData *string
	// contains filtered or unexported fields
}

Describes the launch specification for an instance.

type LaunchTemplate

type LaunchTemplate struct {

	// The time launch template was created.
	CreateTime *time.Time

	// The principal that created the launch template.
	CreatedBy *string

	// The version number of the default version of the launch template.
	DefaultVersionNumber *int64

	// The version number of the latest version of the launch template.
	LatestVersionNumber *int64

	// The ID of the launch template.
	LaunchTemplateId *string

	// The name of the launch template.
	LaunchTemplateName *string

	// The entity that manages the launch template.
	Operator *OperatorResponse

	// The tags for the launch template.
	Tags []Tag
	// contains filtered or unexported fields
}

Describes a launch template.

type LaunchTemplateAndOverridesResponse

type LaunchTemplateAndOverridesResponse struct {

	// The launch template.
	LaunchTemplateSpecification *FleetLaunchTemplateSpecification

	// Any parameters that you specify override the same parameters in the launch
	// template.
	Overrides *FleetLaunchTemplateOverrides
	// contains filtered or unexported fields
}

Describes a launch template and overrides.

type LaunchTemplateAutoRecoveryState added in v1.34.0

type LaunchTemplateAutoRecoveryState string
const (
	LaunchTemplateAutoRecoveryStateDefault  LaunchTemplateAutoRecoveryState = "default"
	LaunchTemplateAutoRecoveryStateDisabled LaunchTemplateAutoRecoveryState = "disabled"
)

Enum values for LaunchTemplateAutoRecoveryState

func (LaunchTemplateAutoRecoveryState) Values added in v1.34.0

Values returns all known values for LaunchTemplateAutoRecoveryState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type LaunchTemplateBlockDeviceMapping

type LaunchTemplateBlockDeviceMapping struct {

	// The device name.
	DeviceName *string

	// Information about the block device for an EBS volume.
	Ebs *LaunchTemplateEbsBlockDevice

	// To omit the device from the block device mapping, specify an empty string.
	NoDevice *string

	// The virtual device name (ephemeralN).
	VirtualName *string
	// contains filtered or unexported fields
}

Describes a block device mapping.

type LaunchTemplateBlockDeviceMappingRequest

type LaunchTemplateBlockDeviceMappingRequest struct {

	// The device name (for example, /dev/sdh or xvdh).
	DeviceName *string

	// Parameters used to automatically set up EBS volumes when the instance is
	// launched.
	Ebs *LaunchTemplateEbsBlockDeviceRequest

	// To omit the device from the block device mapping, specify an empty string.
	NoDevice *string

	// The virtual device name (ephemeralN). Instance store volumes are numbered
	// starting from 0. An instance type with 2 available instance store volumes can
	// specify mappings for ephemeral0 and ephemeral1. The number of available instance
	// store volumes depends on the instance type. After you connect to the instance,
	// you must mount the volume.
	VirtualName *string
	// contains filtered or unexported fields
}

Describes a block device mapping.

type LaunchTemplateCapacityReservationSpecificationRequest

type LaunchTemplateCapacityReservationSpecificationRequest struct {

	// Indicates the instance's Capacity Reservation preferences. Possible preferences
	// include:
	//
	//   - capacity-reservations-only - The instance will only run in a Capacity
	//   Reservation or Capacity Reservation group. If capacity isn't available, the
	//   instance will fail to launch.
	//
	//   - open - The instance can run in any open Capacity Reservation that has
	//   matching attributes (instance type, platform, Availability Zone, tenancy).
	//
	//   - none - The instance avoids running in a Capacity Reservation even if one is
	//   available. The instance runs in On-Demand capacity.
	CapacityReservationPreference CapacityReservationPreference

	// Information about the target Capacity Reservation or Capacity Reservation group.
	CapacityReservationTarget *CapacityReservationTarget
	// contains filtered or unexported fields
}

Describes an instance's Capacity Reservation targeting option. You can specify only one option at a time. Use the CapacityReservationPreference parameter to configure the instance to run in On-Demand capacity or to run in any open Capacity Reservation that has matching attributes (instance type, platform, Availability Zone). Use the CapacityReservationTarget parameter to explicitly target a specific Capacity Reservation or a Capacity Reservation group.

type LaunchTemplateCapacityReservationSpecificationResponse

type LaunchTemplateCapacityReservationSpecificationResponse struct {

	// Indicates the instance's Capacity Reservation preferences. Possible preferences
	// include:
	//
	//   - open - The instance can run in any open Capacity Reservation that has
	//   matching attributes (instance type, platform, Availability Zone).
	//
	//   - none - The instance avoids running in a Capacity Reservation even if one is
	//   available. The instance runs in On-Demand capacity.
	CapacityReservationPreference CapacityReservationPreference

	// Information about the target Capacity Reservation or Capacity Reservation group.
	CapacityReservationTarget *CapacityReservationTargetResponse
	// contains filtered or unexported fields
}

Information about the Capacity Reservation targeting option.

type LaunchTemplateConfig

type LaunchTemplateConfig struct {

	// The launch template to use. Make sure that the launch template does not contain
	// the NetworkInterfaceId parameter because you can't specify a network interface
	// ID in a Spot Fleet.
	LaunchTemplateSpecification *FleetLaunchTemplateSpecification

	// Any parameters that you specify override the same parameters in the launch
	// template.
	Overrides []LaunchTemplateOverrides
	// contains filtered or unexported fields
}

Describes a launch template and overrides.

type LaunchTemplateCpuOptions

type LaunchTemplateCpuOptions struct {

	// Indicates whether the instance is enabled for AMD SEV-SNP. For more
	// information, see [AMD SEV-SNP].
	//
	// [AMD SEV-SNP]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/sev-snp.html
	AmdSevSnp AmdSevSnpSpecification

	// The number of CPU cores for the instance.
	CoreCount *int32

	// The number of threads per CPU core.
	ThreadsPerCore *int32
	// contains filtered or unexported fields
}

The CPU options for the instance.

type LaunchTemplateCpuOptionsRequest

type LaunchTemplateCpuOptionsRequest struct {

	// Indicates whether to enable the instance for AMD SEV-SNP. AMD SEV-SNP is
	// supported with M6a, R6a, and C6a instance types only. For more information, see [AMD SEV-SNP]
	// .
	//
	// [AMD SEV-SNP]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/sev-snp.html
	AmdSevSnp AmdSevSnpSpecification

	// The number of CPU cores for the instance.
	CoreCount *int32

	// The number of threads per CPU core. To disable multithreading for the instance,
	// specify a value of 1 . Otherwise, specify the default value of 2 .
	ThreadsPerCore *int32
	// contains filtered or unexported fields
}

The CPU options for the instance. Both the core count and threads per core must be specified in the request.

type LaunchTemplateEbsBlockDevice

type LaunchTemplateEbsBlockDevice struct {

	// Indicates whether the EBS volume is deleted on instance termination.
	DeleteOnTermination *bool

	// Indicates whether the EBS volume is encrypted.
	Encrypted *bool

	// The number of I/O operations per second (IOPS) that the volume supports.
	Iops *int32

	// Identifier (key ID, key alias, key ARN, or alias ARN) of the customer managed
	// KMS key to use for EBS encryption.
	KmsKeyId *string

	// The ID of the snapshot.
	SnapshotId *string

	// The throughput that the volume supports, in MiB/s.
	Throughput *int32

	// The size of the volume, in GiB.
	VolumeSize *int32

	// The volume type.
	VolumeType VolumeType
	// contains filtered or unexported fields
}

Describes a block device for an EBS volume.

type LaunchTemplateEbsBlockDeviceRequest

type LaunchTemplateEbsBlockDeviceRequest struct {

	// Indicates whether the EBS volume is deleted on instance termination.
	DeleteOnTermination *bool

	// Indicates whether the EBS volume is encrypted. Encrypted volumes can only be
	// attached to instances that support Amazon EBS encryption. If you are creating a
	// volume from a snapshot, you can't specify an encryption value.
	Encrypted *bool

	// The number of I/O operations per second (IOPS). For gp3 , io1 , and io2
	// volumes, this represents the number of IOPS that are provisioned for the volume.
	// For gp2 volumes, this represents the baseline performance of the volume and the
	// rate at which the volume accumulates I/O credits for bursting.
	//
	// The following are the supported values for each volume type:
	//
	//   - gp3 : 3,000 - 16,000 IOPS
	//
	//   - io1 : 100 - 64,000 IOPS
	//
	//   - io2 : 100 - 256,000 IOPS
	//
	// For io2 volumes, you can achieve up to 256,000 IOPS on [instances built on the Nitro System]. On other instances,
	// you can achieve performance up to 32,000 IOPS.
	//
	// This parameter is supported for io1 , io2 , and gp3 volumes only.
	//
	// [instances built on the Nitro System]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#ec2-nitro-instances
	Iops *int32

	// Identifier (key ID, key alias, key ARN, or alias ARN) of the customer managed
	// KMS key to use for EBS encryption.
	KmsKeyId *string

	// The ID of the snapshot.
	SnapshotId *string

	// The throughput to provision for a gp3 volume, with a maximum of 1,000 MiB/s.
	//
	// Valid Range: Minimum value of 125. Maximum value of 1000.
	Throughput *int32

	// The size of the volume, in GiBs. You must specify either a snapshot ID or a
	// volume size. The following are the supported volumes sizes for each volume type:
	//
	//   - gp2 and gp3 : 1 - 16,384 GiB
	//
	//   - io1 : 4 - 16,384 GiB
	//
	//   - io2 : 4 - 65,536 GiB
	//
	//   - st1 and sc1 : 125 - 16,384 GiB
	//
	//   - standard : 1 - 1024 GiB
	VolumeSize *int32

	// The volume type. For more information, see [Amazon EBS volume types] in the Amazon EBS User Guide.
	//
	// [Amazon EBS volume types]: https://docs.aws.amazon.com/ebs/latest/userguide/ebs-volume-types.html
	VolumeType VolumeType
	// contains filtered or unexported fields
}

The parameters for a block device for an EBS volume.

type LaunchTemplateElasticInferenceAccelerator

type LaunchTemplateElasticInferenceAccelerator struct {

	//  The type of elastic inference accelerator. The possible values are
	// eia1.medium, eia1.large, and eia1.xlarge.
	//
	// This member is required.
	Type *string

	//  The number of elastic inference accelerators to attach to the instance.
	//
	// Default: 1
	Count *int32
	// contains filtered or unexported fields
}

Amazon Elastic Inference is no longer available.

Describes an elastic inference accelerator.

type LaunchTemplateElasticInferenceAcceleratorResponse

type LaunchTemplateElasticInferenceAcceleratorResponse struct {

	//  The number of elastic inference accelerators to attach to the instance.
	//
	// Default: 1
	Count *int32

	//  The type of elastic inference accelerator. The possible values are
	// eia1.medium, eia1.large, and eia1.xlarge.
	Type *string
	// contains filtered or unexported fields
}

Amazon Elastic Inference is no longer available.

Describes an elastic inference accelerator.

type LaunchTemplateEnaSrdSpecification added in v1.132.0

type LaunchTemplateEnaSrdSpecification struct {

	// Indicates whether ENA Express is enabled for the network interface.
	EnaSrdEnabled *bool

	// Configures ENA Express for UDP network traffic.
	EnaSrdUdpSpecification *LaunchTemplateEnaSrdUdpSpecification
	// contains filtered or unexported fields
}

ENA Express uses Amazon Web Services Scalable Reliable Datagram (SRD) technology to increase the maximum bandwidth used per stream and minimize tail latency of network traffic between EC2 instances. With ENA Express, you can communicate between two EC2 instances in the same subnet within the same account, or in different accounts. Both sending and receiving instances must have ENA Express enabled.

To improve the reliability of network packet delivery, ENA Express reorders network packets on the receiving end by default. However, some UDP-based applications are designed to handle network packets that are out of order to reduce the overhead for packet delivery at the network layer. When ENA Express is enabled, you can specify whether UDP network traffic uses it.

type LaunchTemplateEnaSrdUdpSpecification added in v1.132.0

type LaunchTemplateEnaSrdUdpSpecification struct {

	// Indicates whether UDP traffic to and from the instance uses ENA Express. To
	// specify this setting, you must first enable ENA Express.
	EnaSrdUdpEnabled *bool
	// contains filtered or unexported fields
}

ENA Express is compatible with both TCP and UDP transport protocols. When it's enabled, TCP traffic automatically uses it. However, some UDP-based applications are designed to handle network packets that are out of order, without a need for retransmission, such as live video broadcasting or other near-real-time applications. For UDP traffic, you can specify whether to use ENA Express, based on your application environment needs.

type LaunchTemplateEnclaveOptions added in v0.29.0

type LaunchTemplateEnclaveOptions struct {

	// If this parameter is set to true , the instance is enabled for Amazon Web
	// Services Nitro Enclaves; otherwise, it is not enabled for Amazon Web Services
	// Nitro Enclaves.
	Enabled *bool
	// contains filtered or unexported fields
}

Indicates whether the instance is enabled for Amazon Web Services Nitro Enclaves.

type LaunchTemplateEnclaveOptionsRequest added in v0.29.0

type LaunchTemplateEnclaveOptionsRequest struct {

	// To enable the instance for Amazon Web Services Nitro Enclaves, set this
	// parameter to true .
	Enabled *bool
	// contains filtered or unexported fields
}

Indicates whether the instance is enabled for Amazon Web Services Nitro Enclaves. For more information, see What is Amazon Web Services Nitro Enclaves?in the Amazon Web Services Nitro Enclaves User Guide.

type LaunchTemplateErrorCode

type LaunchTemplateErrorCode string
const (
	LaunchTemplateErrorCodeLaunchTemplateIdDoesNotExist      LaunchTemplateErrorCode = "launchTemplateIdDoesNotExist"
	LaunchTemplateErrorCodeLaunchTemplateIdMalformed         LaunchTemplateErrorCode = "launchTemplateIdMalformed"
	LaunchTemplateErrorCodeLaunchTemplateNameDoesNotExist    LaunchTemplateErrorCode = "launchTemplateNameDoesNotExist"
	LaunchTemplateErrorCodeLaunchTemplateNameMalformed       LaunchTemplateErrorCode = "launchTemplateNameMalformed"
	LaunchTemplateErrorCodeLaunchTemplateVersionDoesNotExist LaunchTemplateErrorCode = "launchTemplateVersionDoesNotExist"
	LaunchTemplateErrorCodeUnexpectedError                   LaunchTemplateErrorCode = "unexpectedError"
)

Enum values for LaunchTemplateErrorCode

func (LaunchTemplateErrorCode) Values added in v0.29.0

Values returns all known values for LaunchTemplateErrorCode. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type LaunchTemplateHibernationOptions

type LaunchTemplateHibernationOptions struct {

	// If this parameter is set to true , the instance is enabled for hibernation;
	// otherwise, it is not enabled for hibernation.
	Configured *bool
	// contains filtered or unexported fields
}

Indicates whether an instance is configured for hibernation.

type LaunchTemplateHibernationOptionsRequest

type LaunchTemplateHibernationOptionsRequest struct {

	// If you set this parameter to true , the instance is enabled for hibernation.
	//
	// Default: false
	Configured *bool
	// contains filtered or unexported fields
}

Indicates whether the instance is configured for hibernation. This parameter is valid only if the instance meets the hibernation prerequisites.

type LaunchTemplateHttpTokensState

type LaunchTemplateHttpTokensState string
const (
	LaunchTemplateHttpTokensStateOptional LaunchTemplateHttpTokensState = "optional"
	LaunchTemplateHttpTokensStateRequired LaunchTemplateHttpTokensState = "required"
)

Enum values for LaunchTemplateHttpTokensState

func (LaunchTemplateHttpTokensState) Values added in v0.29.0

Values returns all known values for LaunchTemplateHttpTokensState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type LaunchTemplateIamInstanceProfileSpecification

type LaunchTemplateIamInstanceProfileSpecification struct {

	// The Amazon Resource Name (ARN) of the instance profile.
	Arn *string

	// The name of the instance profile.
	Name *string
	// contains filtered or unexported fields
}

Describes an IAM instance profile.

type LaunchTemplateIamInstanceProfileSpecificationRequest

type LaunchTemplateIamInstanceProfileSpecificationRequest struct {

	// The Amazon Resource Name (ARN) of the instance profile.
	Arn *string

	// The name of the instance profile.
	Name *string
	// contains filtered or unexported fields
}

An IAM instance profile.

type LaunchTemplateInstanceMaintenanceOptions added in v1.34.0

type LaunchTemplateInstanceMaintenanceOptions struct {

	// Disables the automatic recovery behavior of your instance or sets it to default.
	AutoRecovery LaunchTemplateAutoRecoveryState
	// contains filtered or unexported fields
}

The maintenance options of your instance.

type LaunchTemplateInstanceMaintenanceOptionsRequest added in v1.34.0

type LaunchTemplateInstanceMaintenanceOptionsRequest struct {

	// Disables the automatic recovery behavior of your instance or sets it to
	// default. For more information, see [Simplified automatic recovery].
	//
	// [Simplified automatic recovery]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-recover.html#instance-configuration-recovery
	AutoRecovery LaunchTemplateAutoRecoveryState
	// contains filtered or unexported fields
}

The maintenance options of your instance.

type LaunchTemplateInstanceMarketOptions

type LaunchTemplateInstanceMarketOptions struct {

	// The market type.
	MarketType MarketType

	// The options for Spot Instances.
	SpotOptions *LaunchTemplateSpotMarketOptions
	// contains filtered or unexported fields
}

The market (purchasing) option for the instances.

type LaunchTemplateInstanceMarketOptionsRequest

type LaunchTemplateInstanceMarketOptionsRequest struct {

	// The market type.
	MarketType MarketType

	// The options for Spot Instances.
	SpotOptions *LaunchTemplateSpotMarketOptionsRequest
	// contains filtered or unexported fields
}

The market (purchasing) option for the instances.

type LaunchTemplateInstanceMetadataEndpointState

type LaunchTemplateInstanceMetadataEndpointState string
const (
	LaunchTemplateInstanceMetadataEndpointStateDisabled LaunchTemplateInstanceMetadataEndpointState = "disabled"
	LaunchTemplateInstanceMetadataEndpointStateEnabled  LaunchTemplateInstanceMetadataEndpointState = "enabled"
)

Enum values for LaunchTemplateInstanceMetadataEndpointState

func (LaunchTemplateInstanceMetadataEndpointState) Values added in v0.29.0

Values returns all known values for LaunchTemplateInstanceMetadataEndpointState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type LaunchTemplateInstanceMetadataOptions

type LaunchTemplateInstanceMetadataOptions struct {

	// Enables or disables the HTTP metadata endpoint on your instances. If the
	// parameter is not specified, the default state is enabled .
	//
	// If you specify a value of disabled , you will not be able to access your
	// instance metadata.
	HttpEndpoint LaunchTemplateInstanceMetadataEndpointState

	// Enables or disables the IPv6 endpoint for the instance metadata service.
	//
	// Default: disabled
	HttpProtocolIpv6 LaunchTemplateInstanceMetadataProtocolIpv6

	// The desired HTTP PUT response hop limit for instance metadata requests. The
	// larger the number, the further instance metadata requests can travel.
	//
	// Default: 1
	//
	// Possible values: Integers from 1 to 64
	HttpPutResponseHopLimit *int32

	// Indicates whether IMDSv2 is required.
	//
	//   - optional - IMDSv2 is optional. You can choose whether to send a session
	//   token in your instance metadata retrieval requests. If you retrieve IAM role
	//   credentials without a session token, you receive the IMDSv1 role credentials. If
	//   you retrieve IAM role credentials using a valid session token, you receive the
	//   IMDSv2 role credentials.
	//
	//   - required - IMDSv2 is required. You must send a session token in your
	//   instance metadata retrieval requests. With this option, retrieving the IAM role
	//   credentials always returns IMDSv2 credentials; IMDSv1 credentials are not
	//   available.
	HttpTokens LaunchTemplateHttpTokensState

	// Set to enabled to allow access to instance tags from the instance metadata. Set
	// to disabled to turn off access to instance tags from the instance metadata. For
	// more information, see [Work with instance tags using the instance metadata].
	//
	// Default: disabled
	//
	// [Work with instance tags using the instance metadata]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#work-with-tags-in-IMDS
	InstanceMetadataTags LaunchTemplateInstanceMetadataTagsState

	// The state of the metadata option changes.
	//
	// pending - The metadata options are being updated and the instance is not ready
	// to process metadata traffic with the new selection.
	//
	// applied - The metadata options have been successfully applied on the instance.
	State LaunchTemplateInstanceMetadataOptionsState
	// contains filtered or unexported fields
}

The metadata options for the instance. For more information, see Instance metadata and user data in the Amazon EC2 User Guide.

type LaunchTemplateInstanceMetadataOptionsRequest

type LaunchTemplateInstanceMetadataOptionsRequest struct {

	// Enables or disables the HTTP metadata endpoint on your instances. If the
	// parameter is not specified, the default state is enabled .
	//
	// If you specify a value of disabled , you will not be able to access your
	// instance metadata.
	HttpEndpoint LaunchTemplateInstanceMetadataEndpointState

	// Enables or disables the IPv6 endpoint for the instance metadata service.
	//
	// Default: disabled
	HttpProtocolIpv6 LaunchTemplateInstanceMetadataProtocolIpv6

	// The desired HTTP PUT response hop limit for instance metadata requests. The
	// larger the number, the further instance metadata requests can travel.
	//
	// Default: 1
	//
	// Possible values: Integers from 1 to 64
	HttpPutResponseHopLimit *int32

	// Indicates whether IMDSv2 is required.
	//
	//   - optional - IMDSv2 is optional. You can choose whether to send a session
	//   token in your instance metadata retrieval requests. If you retrieve IAM role
	//   credentials without a session token, you receive the IMDSv1 role credentials. If
	//   you retrieve IAM role credentials using a valid session token, you receive the
	//   IMDSv2 role credentials.
	//
	//   - required - IMDSv2 is required. You must send a session token in your
	//   instance metadata retrieval requests. With this option, retrieving the IAM role
	//   credentials always returns IMDSv2 credentials; IMDSv1 credentials are not
	//   available.
	//
	// Default: If the value of ImdsSupport for the Amazon Machine Image (AMI) for
	// your instance is v2.0 , the default is required .
	HttpTokens LaunchTemplateHttpTokensState

	// Set to enabled to allow access to instance tags from the instance metadata. Set
	// to disabled to turn off access to instance tags from the instance metadata. For
	// more information, see [Work with instance tags using the instance metadata].
	//
	// Default: disabled
	//
	// [Work with instance tags using the instance metadata]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#work-with-tags-in-IMDS
	InstanceMetadataTags LaunchTemplateInstanceMetadataTagsState
	// contains filtered or unexported fields
}

The metadata options for the instance. For more information, see Instance metadata and user data in the Amazon EC2 User Guide.

type LaunchTemplateInstanceMetadataOptionsState

type LaunchTemplateInstanceMetadataOptionsState string
const (
	LaunchTemplateInstanceMetadataOptionsStatePending LaunchTemplateInstanceMetadataOptionsState = "pending"
	LaunchTemplateInstanceMetadataOptionsStateApplied LaunchTemplateInstanceMetadataOptionsState = "applied"
)

Enum values for LaunchTemplateInstanceMetadataOptionsState

func (LaunchTemplateInstanceMetadataOptionsState) Values added in v0.29.0

Values returns all known values for LaunchTemplateInstanceMetadataOptionsState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type LaunchTemplateInstanceMetadataProtocolIpv6 added in v1.16.0

type LaunchTemplateInstanceMetadataProtocolIpv6 string
const (
	LaunchTemplateInstanceMetadataProtocolIpv6Disabled LaunchTemplateInstanceMetadataProtocolIpv6 = "disabled"
	LaunchTemplateInstanceMetadataProtocolIpv6Enabled  LaunchTemplateInstanceMetadataProtocolIpv6 = "enabled"
)

Enum values for LaunchTemplateInstanceMetadataProtocolIpv6

func (LaunchTemplateInstanceMetadataProtocolIpv6) Values added in v1.16.0

Values returns all known values for LaunchTemplateInstanceMetadataProtocolIpv6. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type LaunchTemplateInstanceMetadataTagsState added in v1.28.0

type LaunchTemplateInstanceMetadataTagsState string
const (
	LaunchTemplateInstanceMetadataTagsStateDisabled LaunchTemplateInstanceMetadataTagsState = "disabled"
	LaunchTemplateInstanceMetadataTagsStateEnabled  LaunchTemplateInstanceMetadataTagsState = "enabled"
)

Enum values for LaunchTemplateInstanceMetadataTagsState

func (LaunchTemplateInstanceMetadataTagsState) Values added in v1.28.0

Values returns all known values for LaunchTemplateInstanceMetadataTagsState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type LaunchTemplateInstanceNetworkInterfaceSpecification

type LaunchTemplateInstanceNetworkInterfaceSpecification struct {

	// Indicates whether to associate a Carrier IP address with eth0 for a new network
	// interface.
	//
	// Use this option when you launch an instance in a Wavelength Zone and want to
	// associate a Carrier IP address with the network interface. For more information
	// about Carrier IP addresses, see [Carrier IP addresses]in the Wavelength Developer Guide.
	//
	// [Carrier IP addresses]: https://docs.aws.amazon.com/wavelength/latest/developerguide/how-wavelengths-work.html#provider-owned-ip
	AssociateCarrierIpAddress *bool

	// Indicates whether to associate a public IPv4 address with eth0 for a new
	// network interface.
	//
	// Amazon Web Services charges for all public IPv4 addresses, including public
	// IPv4 addresses associated with running instances and Elastic IP addresses. For
	// more information, see the Public IPv4 Address tab on the [Amazon VPC pricing page].
	//
	// [Amazon VPC pricing page]: http://aws.amazon.com/vpc/pricing/
	AssociatePublicIpAddress *bool

	// A security group connection tracking specification that enables you to set the
	// timeout for connection tracking on an Elastic network interface. For more
	// information, see [Idle connection tracking timeout]in the Amazon EC2 User Guide.
	//
	// [Idle connection tracking timeout]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-connection-tracking.html#connection-tracking-timeouts
	ConnectionTrackingSpecification *ConnectionTrackingSpecification

	// Indicates whether the network interface is deleted when the instance is
	// terminated.
	DeleteOnTermination *bool

	// A description for the network interface.
	Description *string

	// The device index for the network interface attachment.
	DeviceIndex *int32

	// Contains the ENA Express settings for instances launched from your launch
	// template.
	EnaSrdSpecification *LaunchTemplateEnaSrdSpecification

	// The IDs of one or more security groups.
	Groups []string

	// The type of network interface.
	InterfaceType *string

	// The number of IPv4 prefixes that Amazon Web Services automatically assigned to
	// the network interface.
	Ipv4PrefixCount *int32

	// One or more IPv4 prefixes assigned to the network interface.
	Ipv4Prefixes []Ipv4PrefixSpecificationResponse

	// The number of IPv6 addresses for the network interface.
	Ipv6AddressCount *int32

	// The IPv6 addresses for the network interface.
	Ipv6Addresses []InstanceIpv6Address

	// The number of IPv6 prefixes that Amazon Web Services automatically assigned to
	// the network interface.
	Ipv6PrefixCount *int32

	// One or more IPv6 prefixes assigned to the network interface.
	Ipv6Prefixes []Ipv6PrefixSpecificationResponse

	// The index of the network card.
	NetworkCardIndex *int32

	// The ID of the network interface.
	NetworkInterfaceId *string

	// The primary IPv6 address of the network interface. When you enable an IPv6 GUA
	// address to be a primary IPv6, the first IPv6 GUA will be made the primary IPv6
	// address until the instance is terminated or the network interface is detached.
	// For more information about primary IPv6 addresses, see [RunInstances].
	//
	// [RunInstances]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html
	PrimaryIpv6 *bool

	// The primary private IPv4 address of the network interface.
	PrivateIpAddress *string

	// One or more private IPv4 addresses.
	PrivateIpAddresses []PrivateIpAddressSpecification

	// The number of secondary private IPv4 addresses for the network interface.
	SecondaryPrivateIpAddressCount *int32

	// The ID of the subnet for the network interface.
	SubnetId *string
	// contains filtered or unexported fields
}

Describes a network interface.

type LaunchTemplateInstanceNetworkInterfaceSpecificationRequest

type LaunchTemplateInstanceNetworkInterfaceSpecificationRequest struct {

	// Associates a Carrier IP address with eth0 for a new network interface.
	//
	// Use this option when you launch an instance in a Wavelength Zone and want to
	// associate a Carrier IP address with the network interface. For more information
	// about Carrier IP addresses, see [Carrier IP addresses]in the Wavelength Developer Guide.
	//
	// [Carrier IP addresses]: https://docs.aws.amazon.com/wavelength/latest/developerguide/how-wavelengths-work.html#provider-owned-ip
	AssociateCarrierIpAddress *bool

	// Associates a public IPv4 address with eth0 for a new network interface.
	//
	// Amazon Web Services charges for all public IPv4 addresses, including public
	// IPv4 addresses associated with running instances and Elastic IP addresses. For
	// more information, see the Public IPv4 Address tab on the [Amazon VPC pricing page].
	//
	// [Amazon VPC pricing page]: http://aws.amazon.com/vpc/pricing/
	AssociatePublicIpAddress *bool

	// A security group connection tracking specification that enables you to set the
	// timeout for connection tracking on an Elastic network interface. For more
	// information, see [Idle connection tracking timeout]in the Amazon EC2 User Guide.
	//
	// [Idle connection tracking timeout]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-connection-tracking.html#connection-tracking-timeouts
	ConnectionTrackingSpecification *ConnectionTrackingSpecificationRequest

	// Indicates whether the network interface is deleted when the instance is
	// terminated.
	DeleteOnTermination *bool

	// A description for the network interface.
	Description *string

	// The device index for the network interface attachment. Each network interface
	// requires a device index. If you create a launch template that includes secondary
	// network interfaces but not a primary network interface, then you must add a
	// primary network interface as a launch parameter when you launch an instance from
	// the template.
	DeviceIndex *int32

	// Configure ENA Express settings for your launch template.
	EnaSrdSpecification *EnaSrdSpecificationRequest

	// The IDs of one or more security groups.
	Groups []string

	// The type of network interface. To create an Elastic Fabric Adapter (EFA),
	// specify efa or efa . For more information, see [Elastic Fabric Adapter] in the Amazon EC2 User Guide.
	//
	// If you are not creating an EFA, specify interface or omit this parameter.
	//
	// If you specify efa-only , do not assign any IP addresses to the network
	// interface. EFA-only network interfaces do not support IP addresses.
	//
	// Valid values: interface | efa | efa-only
	//
	// [Elastic Fabric Adapter]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/efa.html
	InterfaceType *string

	// The number of IPv4 prefixes to be automatically assigned to the network
	// interface. You cannot use this option if you use the Ipv4Prefix option.
	Ipv4PrefixCount *int32

	// One or more IPv4 prefixes to be assigned to the network interface. You cannot
	// use this option if you use the Ipv4PrefixCount option.
	Ipv4Prefixes []Ipv4PrefixSpecificationRequest

	// The number of IPv6 addresses to assign to a network interface. Amazon EC2
	// automatically selects the IPv6 addresses from the subnet range. You can't use
	// this option if specifying specific IPv6 addresses.
	Ipv6AddressCount *int32

	// One or more specific IPv6 addresses from the IPv6 CIDR block range of your
	// subnet. You can't use this option if you're specifying a number of IPv6
	// addresses.
	Ipv6Addresses []InstanceIpv6AddressRequest

	// The number of IPv6 prefixes to be automatically assigned to the network
	// interface. You cannot use this option if you use the Ipv6Prefix option.
	Ipv6PrefixCount *int32

	// One or more IPv6 prefixes to be assigned to the network interface. You cannot
	// use this option if you use the Ipv6PrefixCount option.
	Ipv6Prefixes []Ipv6PrefixSpecificationRequest

	// The index of the network card. Some instance types support multiple network
	// cards. The primary network interface must be assigned to network card index 0.
	// The default is network card index 0.
	NetworkCardIndex *int32

	// The ID of the network interface.
	NetworkInterfaceId *string

	// The primary IPv6 address of the network interface. When you enable an IPv6 GUA
	// address to be a primary IPv6, the first IPv6 GUA will be made the primary IPv6
	// address until the instance is terminated or the network interface is detached.
	// For more information about primary IPv6 addresses, see [RunInstances].
	//
	// [RunInstances]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html
	PrimaryIpv6 *bool

	// The primary private IPv4 address of the network interface.
	PrivateIpAddress *string

	// One or more private IPv4 addresses.
	PrivateIpAddresses []PrivateIpAddressSpecification

	// The number of secondary private IPv4 addresses to assign to a network interface.
	SecondaryPrivateIpAddressCount *int32

	// The ID of the subnet for the network interface.
	SubnetId *string
	// contains filtered or unexported fields
}

The parameters for a network interface.

type LaunchTemplateLicenseConfiguration

type LaunchTemplateLicenseConfiguration struct {

	// The Amazon Resource Name (ARN) of the license configuration.
	LicenseConfigurationArn *string
	// contains filtered or unexported fields
}

Describes a license configuration.

type LaunchTemplateLicenseConfigurationRequest

type LaunchTemplateLicenseConfigurationRequest struct {

	// The Amazon Resource Name (ARN) of the license configuration.
	LicenseConfigurationArn *string
	// contains filtered or unexported fields
}

Describes a license configuration.

type LaunchTemplateNetworkPerformanceOptions added in v1.196.0

type LaunchTemplateNetworkPerformanceOptions struct {

	// When you configure network bandwidth weighting, you can boost baseline
	// bandwidth for either networking or EBS by up to 25%. The total available
	// baseline bandwidth for your instance remains the same. The default option uses
	// the standard bandwidth configuration for your instance type.
	BandwidthWeighting InstanceBandwidthWeighting
	// contains filtered or unexported fields
}

With network performance options, you can adjust your bandwidth preferences to meet the needs of the workload that runs on your instance at launch.

type LaunchTemplateNetworkPerformanceOptionsRequest added in v1.196.0

type LaunchTemplateNetworkPerformanceOptionsRequest struct {

	// Specify the bandwidth weighting option to boost the associated type of baseline
	// bandwidth, as follows:
	//
	// default This option uses the standard bandwidth configuration for your instance
	// type.
	//
	// vpc-1 This option boosts your networking baseline bandwidth and reduces your
	// EBS baseline bandwidth.
	//
	// ebs-1 This option boosts your EBS baseline bandwidth and reduces your
	// networking baseline bandwidth.
	BandwidthWeighting InstanceBandwidthWeighting
	// contains filtered or unexported fields
}

When you configure network performance options in your launch template, your instance is geared for performance improvements based on the workload that it runs as soon as it's available.

type LaunchTemplateOverrides

type LaunchTemplateOverrides struct {

	// The Availability Zone in which to launch the instances.
	AvailabilityZone *string

	// The instance requirements. When you specify instance requirements, Amazon EC2
	// will identify instance types with the provided requirements, and then use your
	// On-Demand and Spot allocation strategies to launch instances from these instance
	// types, in the same way as when you specify a list of instance types.
	//
	// If you specify InstanceRequirements , you can't specify InstanceType .
	InstanceRequirements *InstanceRequirements

	// The instance type.
	InstanceType InstanceType

	// The priority for the launch template override. The highest priority is launched
	// first.
	//
	// If OnDemandAllocationStrategy is set to prioritized , Spot Fleet uses priority
	// to determine which launch template override to use first in fulfilling On-Demand
	// capacity.
	//
	// If the Spot AllocationStrategy is set to capacityOptimizedPrioritized , Spot
	// Fleet uses priority on a best-effort basis to determine which launch template
	// override to use in fulfilling Spot capacity, but optimizes for capacity first.
	//
	// Valid values are whole numbers starting at 0 . The lower the number, the higher
	// the priority. If no number is set, the launch template override has the lowest
	// priority. You can set the same priority for different launch template overrides.
	Priority *float64

	// The maximum price per unit hour that you are willing to pay for a Spot
	// Instance. We do not recommend using this parameter because it can lead to
	// increased interruptions. If you do not specify this parameter, you will pay the
	// current Spot price.
	//
	// If you specify a maximum price, your instances will be interrupted more
	// frequently than if you do not specify this parameter.
	SpotPrice *string

	// The ID of the subnet in which to launch the instances.
	SubnetId *string

	// The number of units provided by the specified instance type. These are the same
	// units that you chose to set the target capacity in terms of instances, or a
	// performance characteristic such as vCPUs, memory, or I/O.
	//
	// If the target capacity divided by this value is not a whole number, Amazon EC2
	// rounds the number of instances to the next whole number. If this value is not
	// specified, the default is 1.
	//
	// When specifying weights, the price used in the lowestPrice and
	// priceCapacityOptimized allocation strategies is per unit hour (where the
	// instance price is divided by the specified weight). However, if all the
	// specified weights are above the requested TargetCapacity , resulting in only 1
	// instance being launched, the price used is per instance hour.
	WeightedCapacity *float64
	// contains filtered or unexported fields
}

Describes overrides for a launch template.

type LaunchTemplatePlacement

type LaunchTemplatePlacement struct {

	// The affinity setting for the instance on the Dedicated Host.
	Affinity *string

	// The Availability Zone of the instance.
	AvailabilityZone *string

	// The Group ID of the placement group. You must specify the Placement Group Group
	// ID to launch an instance in a shared placement group.
	GroupId *string

	// The name of the placement group for the instance.
	GroupName *string

	// The ID of the Dedicated Host for the instance.
	HostId *string

	// The ARN of the host resource group in which to launch the instances.
	HostResourceGroupArn *string

	// The number of the partition the instance should launch in. Valid only if the
	// placement group strategy is set to partition .
	PartitionNumber *int32

	// Reserved for future use.
	SpreadDomain *string

	// The tenancy of the instance. An instance with a tenancy of dedicated runs on
	// single-tenant hardware.
	Tenancy Tenancy
	// contains filtered or unexported fields
}

Describes the placement of an instance.

type LaunchTemplatePlacementRequest

type LaunchTemplatePlacementRequest struct {

	// The affinity setting for an instance on a Dedicated Host.
	Affinity *string

	// The Availability Zone for the instance.
	AvailabilityZone *string

	// The Group Id of a placement group. You must specify the Placement Group Group
	// Id to launch an instance in a shared placement group.
	GroupId *string

	// The name of the placement group for the instance.
	GroupName *string

	// The ID of the Dedicated Host for the instance.
	HostId *string

	// The ARN of the host resource group in which to launch the instances. If you
	// specify a host resource group ARN, omit the Tenancy parameter or set it to host .
	HostResourceGroupArn *string

	// The number of the partition the instance should launch in. Valid only if the
	// placement group strategy is set to partition .
	PartitionNumber *int32

	// Reserved for future use.
	SpreadDomain *string

	// The tenancy of the instance. An instance with a tenancy of dedicated runs on
	// single-tenant hardware.
	Tenancy Tenancy
	// contains filtered or unexported fields
}

Describes the placement of an instance.

type LaunchTemplatePrivateDnsNameOptions added in v1.24.0

type LaunchTemplatePrivateDnsNameOptions struct {

	// Indicates whether to respond to DNS queries for instance hostnames with DNS
	// AAAA records.
	EnableResourceNameDnsAAAARecord *bool

	// Indicates whether to respond to DNS queries for instance hostnames with DNS A
	// records.
	EnableResourceNameDnsARecord *bool

	// The type of hostname to assign to an instance.
	HostnameType HostnameType
	// contains filtered or unexported fields
}

Describes the options for instance hostnames.

type LaunchTemplatePrivateDnsNameOptionsRequest added in v1.24.0

type LaunchTemplatePrivateDnsNameOptionsRequest struct {

	// Indicates whether to respond to DNS queries for instance hostnames with DNS
	// AAAA records.
	EnableResourceNameDnsAAAARecord *bool

	// Indicates whether to respond to DNS queries for instance hostnames with DNS A
	// records.
	EnableResourceNameDnsARecord *bool

	// The type of hostname for Amazon EC2 instances. For IPv4 only subnets, an
	// instance DNS name must be based on the instance IPv4 address. For IPv6 native
	// 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.
	HostnameType HostnameType
	// contains filtered or unexported fields
}

Describes the options for instance hostnames.

type LaunchTemplateSpecification

type LaunchTemplateSpecification struct {

	// The ID of the launch template.
	//
	// You must specify either the launch template ID or the launch template name, but
	// not both.
	LaunchTemplateId *string

	// The name of the launch template.
	//
	// You must specify either the launch template ID or the launch template name, but
	// not both.
	LaunchTemplateName *string

	// The launch template version number, $Latest , or $Default .
	//
	// A value of $Latest uses the latest version of the launch template.
	//
	// A value of $Default uses the default version of the launch template.
	//
	// Default: The default version of the launch template.
	Version *string
	// contains filtered or unexported fields
}

Describes the launch template to use.

type LaunchTemplateSpotMarketOptions

type LaunchTemplateSpotMarketOptions struct {

	// The required duration for the Spot Instances (also known as Spot blocks), in
	// minutes. This value must be a multiple of 60 (60, 120, 180, 240, 300, or 360).
	BlockDurationMinutes *int32

	// The behavior when a Spot Instance is interrupted.
	InstanceInterruptionBehavior InstanceInterruptionBehavior

	// The maximum hourly price you're willing to pay for the Spot Instances. We do
	// not recommend using this parameter because it can lead to increased
	// interruptions. If you do not specify this parameter, you will pay the current
	// Spot price.
	//
	// If you specify a maximum price, your Spot Instances will be interrupted more
	// frequently than if you do not specify this parameter.
	MaxPrice *string

	// The Spot Instance request type.
	SpotInstanceType SpotInstanceType

	// The end date of the request. For a one-time request, the request remains active
	// until all instances launch, the request is canceled, or this date is reached. If
	// the request is persistent, it remains active until it is canceled or this date
	// and time is reached.
	ValidUntil *time.Time
	// contains filtered or unexported fields
}

The options for Spot Instances.

type LaunchTemplateSpotMarketOptionsRequest

type LaunchTemplateSpotMarketOptionsRequest struct {

	// Deprecated.
	BlockDurationMinutes *int32

	// The behavior when a Spot Instance is interrupted. The default is terminate .
	InstanceInterruptionBehavior InstanceInterruptionBehavior

	// The maximum hourly price you're willing to pay for the Spot Instances. We do
	// not recommend using this parameter because it can lead to increased
	// interruptions. If you do not specify this parameter, you will pay the current
	// Spot price.
	//
	// If you specify a maximum price, your Spot Instances will be interrupted more
	// frequently than if you do not specify this parameter.
	MaxPrice *string

	// The Spot Instance request type.
	SpotInstanceType SpotInstanceType

	// The end date of the request, in UTC format (YYYY-MM-DDTHH:MM:SSZ). Supported
	// only for persistent requests.
	//
	//   - For a persistent request, the request remains active until the ValidUntil
	//   date and time is reached. Otherwise, the request remains active until you cancel
	//   it.
	//
	//   - For a one-time request, ValidUntil is not supported. The request remains
	//   active until all instances launch or you cancel the request.
	//
	// Default: 7 days from the current date
	ValidUntil *time.Time
	// contains filtered or unexported fields
}

The options for Spot Instances.

type LaunchTemplateTagSpecification

type LaunchTemplateTagSpecification struct {

	// The type of resource to tag.
	ResourceType ResourceType

	// The tags for the resource.
	Tags []Tag
	// contains filtered or unexported fields
}

The tags specification for the launch template.

type LaunchTemplateTagSpecificationRequest

type LaunchTemplateTagSpecificationRequest struct {

	// The type of resource to tag.
	//
	// Valid Values lists all resource types for Amazon EC2 that can be tagged. When
	// you create a launch template, you can specify tags for the following resource
	// types only: instance | volume | network-interface | spot-instances-request . If
	// the instance does not include the resource type that you specify, the instance
	// launch fails. For example, not all instance types include a volume.
	//
	// To tag a resource after it has been created, see [CreateTags].
	//
	// [CreateTags]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateTags.html
	ResourceType ResourceType

	// The tags to apply to the resource.
	Tags []Tag
	// contains filtered or unexported fields
}

The tags specification for the resources that are created during instance launch.

type LaunchTemplateVersion

type LaunchTemplateVersion struct {

	// The time the version was created.
	CreateTime *time.Time

	// The principal that created the version.
	CreatedBy *string

	// Indicates whether the version is the default version.
	DefaultVersion *bool

	// Information about the launch template.
	LaunchTemplateData *ResponseLaunchTemplateData

	// The ID of the launch template.
	LaunchTemplateId *string

	// The name of the launch template.
	LaunchTemplateName *string

	// The entity that manages the launch template.
	Operator *OperatorResponse

	// The description for the version.
	VersionDescription *string

	// The version number.
	VersionNumber *int64
	// contains filtered or unexported fields
}

Describes a launch template version.

type LaunchTemplatesMonitoring

type LaunchTemplatesMonitoring struct {

	// Indicates whether detailed monitoring is enabled. Otherwise, basic monitoring
	// is enabled.
	Enabled *bool
	// contains filtered or unexported fields
}

Describes the monitoring for the instance.

type LaunchTemplatesMonitoringRequest

type LaunchTemplatesMonitoringRequest struct {

	// Specify true to enable detailed monitoring. Otherwise, basic monitoring is
	// enabled.
	Enabled *bool
	// contains filtered or unexported fields
}

Describes the monitoring for the instance.

type LicenseConfiguration

type LicenseConfiguration struct {

	// The Amazon Resource Name (ARN) of the license configuration.
	LicenseConfigurationArn *string
	// contains filtered or unexported fields
}

Describes a license configuration.

type LicenseConfigurationRequest

type LicenseConfigurationRequest struct {

	// The Amazon Resource Name (ARN) of the license configuration.
	LicenseConfigurationArn *string
	// contains filtered or unexported fields
}

Describes a license configuration.

type ListingState

type ListingState string
const (
	ListingStateAvailable ListingState = "available"
	ListingStateSold      ListingState = "sold"
	ListingStateCancelled ListingState = "cancelled"
	ListingStatePending   ListingState = "pending"
)

Enum values for ListingState

func (ListingState) Values added in v0.29.0

func (ListingState) Values() []ListingState

Values returns all known values for ListingState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type ListingStatus

type ListingStatus string
const (
	ListingStatusActive    ListingStatus = "active"
	ListingStatusPending   ListingStatus = "pending"
	ListingStatusCancelled ListingStatus = "cancelled"
	ListingStatusClosed    ListingStatus = "closed"
)

Enum values for ListingStatus

func (ListingStatus) Values added in v0.29.0

func (ListingStatus) Values() []ListingStatus

Values returns all known values for ListingStatus. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type LoadBalancersConfig

type LoadBalancersConfig struct {

	// The Classic Load Balancers.
	ClassicLoadBalancersConfig *ClassicLoadBalancersConfig

	// The target groups.
	TargetGroupsConfig *TargetGroupsConfig
	// contains filtered or unexported fields
}

Describes the Classic Load Balancers and target groups to attach to a Spot Fleet request.

type LoadPermission

type LoadPermission struct {

	// The name of the group.
	Group PermissionGroup

	// The Amazon Web Services account ID.
	UserId *string
	// contains filtered or unexported fields
}

Describes a load permission.

type LoadPermissionModifications

type LoadPermissionModifications struct {

	// The load permissions to add.
	Add []LoadPermissionRequest

	// The load permissions to remove.
	Remove []LoadPermissionRequest
	// contains filtered or unexported fields
}

Describes modifications to the load permissions of an Amazon FPGA image (AFI).

type LoadPermissionRequest

type LoadPermissionRequest struct {

	// The name of the group.
	Group PermissionGroup

	// The Amazon Web Services account ID.
	UserId *string
	// contains filtered or unexported fields
}

Describes a load permission.

type LocalGateway

type LocalGateway struct {

	// The ID of the local gateway.
	LocalGatewayId *string

	// The Amazon Resource Name (ARN) of the Outpost.
	OutpostArn *string

	// The ID of the Amazon Web Services account that owns the local gateway.
	OwnerId *string

	// The state of the local gateway.
	State *string

	// The tags assigned to the local gateway.
	Tags []Tag
	// contains filtered or unexported fields
}

Describes a local gateway.

type LocalGatewayRoute

type LocalGatewayRoute struct {

	// The ID of the customer-owned address pool.
	CoipPoolId *string

	// The CIDR block used for destination matches.
	DestinationCidrBlock *string

	//  The ID of the prefix list.
	DestinationPrefixListId *string

	// The Amazon Resource Name (ARN) of the local gateway route table.
	LocalGatewayRouteTableArn *string

	// The ID of the local gateway route table.
	LocalGatewayRouteTableId *string

	// The ID of the virtual interface group.
	LocalGatewayVirtualInterfaceGroupId *string

	// The ID of the network interface.
	NetworkInterfaceId *string

	// The ID of the Amazon Web Services account that owns the local gateway route.
	OwnerId *string

	// The state of the route.
	State LocalGatewayRouteState

	// The ID of the subnet.
	SubnetId *string

	// The route type.
	Type LocalGatewayRouteType
	// contains filtered or unexported fields
}

Describes a route for a local gateway route table.

type LocalGatewayRouteState

type LocalGatewayRouteState string
const (
	LocalGatewayRouteStatePending   LocalGatewayRouteState = "pending"
	LocalGatewayRouteStateActive    LocalGatewayRouteState = "active"
	LocalGatewayRouteStateBlackhole LocalGatewayRouteState = "blackhole"
	LocalGatewayRouteStateDeleting  LocalGatewayRouteState = "deleting"
	LocalGatewayRouteStateDeleted   LocalGatewayRouteState = "deleted"
)

Enum values for LocalGatewayRouteState

func (LocalGatewayRouteState) Values added in v0.29.0

Values returns all known values for LocalGatewayRouteState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type LocalGatewayRouteTable

type LocalGatewayRouteTable struct {

	// The ID of the local gateway.
	LocalGatewayId *string

	// The Amazon Resource Name (ARN) of the local gateway route table.
	LocalGatewayRouteTableArn *string

	// The ID of the local gateway route table.
	LocalGatewayRouteTableId *string

	// The mode of the local gateway route table.
	Mode LocalGatewayRouteTableMode

	// The Amazon Resource Name (ARN) of the Outpost.
	OutpostArn *string

	// The ID of the Amazon Web Services account that owns the local gateway route
	// table.
	OwnerId *string

	// The state of the local gateway route table.
	State *string

	// Information about the state change.
	StateReason *StateReason

	// The tags assigned to the local gateway route table.
	Tags []Tag
	// contains filtered or unexported fields
}

Describes a local gateway route table.

type LocalGatewayRouteTableMode added in v1.55.0

type LocalGatewayRouteTableMode string
const (
	LocalGatewayRouteTableModeDirectVpcRouting LocalGatewayRouteTableMode = "direct-vpc-routing"
	LocalGatewayRouteTableModeCoip             LocalGatewayRouteTableMode = "coip"
)

Enum values for LocalGatewayRouteTableMode

func (LocalGatewayRouteTableMode) Values added in v1.55.0

Values returns all known values for LocalGatewayRouteTableMode. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type LocalGatewayRouteTableVirtualInterfaceGroupAssociation

type LocalGatewayRouteTableVirtualInterfaceGroupAssociation struct {

	// The ID of the local gateway.
	LocalGatewayId *string

	// The Amazon Resource Name (ARN) of the local gateway route table for the virtual
	// interface group.
	LocalGatewayRouteTableArn *string

	// The ID of the local gateway route table.
	LocalGatewayRouteTableId *string

	// The ID of the association.
	LocalGatewayRouteTableVirtualInterfaceGroupAssociationId *string

	// The ID of the virtual interface group.
	LocalGatewayVirtualInterfaceGroupId *string

	// The ID of the Amazon Web Services account that owns the local gateway virtual
	// interface group association.
	OwnerId *string

	// The state of the association.
	State *string

	// The tags assigned to the association.
	Tags []Tag
	// contains filtered or unexported fields
}

Describes an association between a local gateway route table and a virtual interface group.

type LocalGatewayRouteTableVpcAssociation

type LocalGatewayRouteTableVpcAssociation struct {

	// The ID of the local gateway.
	LocalGatewayId *string

	// The Amazon Resource Name (ARN) of the local gateway route table for the
	// association.
	LocalGatewayRouteTableArn *string

	// The ID of the local gateway route table.
	LocalGatewayRouteTableId *string

	// The ID of the association.
	LocalGatewayRouteTableVpcAssociationId *string

	// The ID of the Amazon Web Services account that owns the local gateway route
	// table for the association.
	OwnerId *string

	// The state of the association.
	State *string

	// The tags assigned to the association.
	Tags []Tag

	// The ID of the VPC.
	VpcId *string
	// contains filtered or unexported fields
}

Describes an association between a local gateway route table and a VPC.

type LocalGatewayRouteType

type LocalGatewayRouteType string
const (
	LocalGatewayRouteTypeStatic     LocalGatewayRouteType = "static"
	LocalGatewayRouteTypePropagated LocalGatewayRouteType = "propagated"
)

Enum values for LocalGatewayRouteType

func (LocalGatewayRouteType) Values added in v0.29.0

Values returns all known values for LocalGatewayRouteType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type LocalGatewayVirtualInterface

type LocalGatewayVirtualInterface struct {

	// The local address.
	LocalAddress *string

	// The Border Gateway Protocol (BGP) Autonomous System Number (ASN) of the local
	// gateway.
	LocalBgpAsn *int32

	// The ID of the local gateway.
	LocalGatewayId *string

	// The ID of the virtual interface.
	LocalGatewayVirtualInterfaceId *string

	// The ID of the Amazon Web Services account that owns the local gateway virtual
	// interface.
	OwnerId *string

	// The peer address.
	PeerAddress *string

	// The peer BGP ASN.
	PeerBgpAsn *int32

	// The tags assigned to the virtual interface.
	Tags []Tag

	// The ID of the VLAN.
	Vlan *int32
	// contains filtered or unexported fields
}

Describes a local gateway virtual interface.

type LocalGatewayVirtualInterfaceGroup

type LocalGatewayVirtualInterfaceGroup struct {

	// The ID of the local gateway.
	LocalGatewayId *string

	// The ID of the virtual interface group.
	LocalGatewayVirtualInterfaceGroupId *string

	// The IDs of the virtual interfaces.
	LocalGatewayVirtualInterfaceIds []string

	// The ID of the Amazon Web Services account that owns the local gateway virtual
	// interface group.
	OwnerId *string

	// The tags assigned to the virtual interface group.
	Tags []Tag
	// contains filtered or unexported fields
}

Describes a local gateway virtual interface group.

type LocalStorage added in v1.21.0

type LocalStorage string
const (
	LocalStorageIncluded LocalStorage = "included"
	LocalStorageRequired LocalStorage = "required"
	LocalStorageExcluded LocalStorage = "excluded"
)

Enum values for LocalStorage

func (LocalStorage) Values added in v1.21.0

func (LocalStorage) Values() []LocalStorage

Values returns all known values for LocalStorage. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type LocalStorageType added in v1.21.0

type LocalStorageType string
const (
	LocalStorageTypeHdd LocalStorageType = "hdd"
	LocalStorageTypeSsd LocalStorageType = "ssd"
)

Enum values for LocalStorageType

func (LocalStorageType) Values added in v1.21.0

Values returns all known values for LocalStorageType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type LocationType

type LocationType string
const (
	LocationTypeRegion             LocationType = "region"
	LocationTypeAvailabilityZone   LocationType = "availability-zone"
	LocationTypeAvailabilityZoneId LocationType = "availability-zone-id"
	LocationTypeOutpost            LocationType = "outpost"
)

Enum values for LocationType

func (LocationType) Values added in v0.29.0

func (LocationType) Values() []LocationType

Values returns all known values for LocationType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type LockMode added in v1.134.0

type LockMode string
const (
	LockModeCompliance LockMode = "compliance"
	LockModeGovernance LockMode = "governance"
)

Enum values for LockMode

func (LockMode) Values added in v1.134.0

func (LockMode) Values() []LockMode

Values returns all known values for LockMode. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type LockState added in v1.134.0

type LockState string
const (
	LockStateCompliance        LockState = "compliance"
	LockStateGovernance        LockState = "governance"
	LockStateComplianceCooloff LockState = "compliance-cooloff"
	LockStateExpired           LockState = "expired"
)

Enum values for LockState

func (LockState) Values added in v1.134.0

func (LockState) Values() []LockState

Values returns all known values for LockState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type LockedSnapshotsInfo added in v1.134.0

type LockedSnapshotsInfo struct {

	// The compliance mode cooling-off period, in hours.
	CoolOffPeriod *int32

	// The date and time at which the compliance mode cooling-off period expires, in
	// the UTC time zone ( YYYY-MM-DDThh:mm:ss.sssZ ).
	CoolOffPeriodExpiresOn *time.Time

	// The date and time at which the snapshot was locked, in the UTC time zone (
	// YYYY-MM-DDThh:mm:ss.sssZ ).
	LockCreatedOn *time.Time

	// The period of time for which the snapshot is locked, in days.
	LockDuration *int32

	// The date and time at which the lock duration started, in the UTC time zone (
	// YYYY-MM-DDThh:mm:ss.sssZ ).
	//
	// If you lock a snapshot that is in the pending state, the lock duration starts
	// only once the snapshot enters the completed state.
	LockDurationStartTime *time.Time

	// The date and time at which the lock will expire, in the UTC time zone (
	// YYYY-MM-DDThh:mm:ss.sssZ ).
	LockExpiresOn *time.Time

	// The state of the snapshot lock. Valid states include:
	//
	//   - compliance-cooloff - The snapshot has been locked in compliance mode but it
	//   is still within the cooling-off period. The snapshot can't be deleted, but it
	//   can be unlocked and the lock settings can be modified by users with appropriate
	//   permissions.
	//
	//   - governance - The snapshot is locked in governance mode. The snapshot can't
	//   be deleted, but it can be unlocked and the lock settings can be modified by
	//   users with appropriate permissions.
	//
	//   - compliance - The snapshot is locked in compliance mode and the cooling-off
	//   period has expired. The snapshot can't be unlocked or deleted. The lock duration
	//   can only be increased by users with appropriate permissions.
	//
	//   - expired - The snapshot was locked in compliance or governance mode but the
	//   lock duration has expired. The snapshot is not locked and can be deleted.
	LockState LockState

	// The account ID of the Amazon Web Services account that owns the snapshot.
	OwnerId *string

	// The ID of the snapshot.
	SnapshotId *string
	// contains filtered or unexported fields
}

Information about a locked snapshot.

type LogDestinationType

type LogDestinationType string
const (
	LogDestinationTypeCloudWatchLogs      LogDestinationType = "cloud-watch-logs"
	LogDestinationTypeS3                  LogDestinationType = "s3"
	LogDestinationTypeKinesisDataFirehose LogDestinationType = "kinesis-data-firehose"
)

Enum values for LogDestinationType

func (LogDestinationType) Values added in v0.29.0

Values returns all known values for LogDestinationType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type MacHost added in v1.152.0

type MacHost struct {

	//  The EC2 Mac Dedicated Host ID.
	HostId *string

	//  The latest macOS versions that the EC2 Mac Dedicated Host can launch without
	// being upgraded.
	MacOSLatestSupportedVersions []string
	// contains filtered or unexported fields
}

Information about the EC2 Mac Dedicated Host.

type MaintenanceDetails added in v1.92.0

type MaintenanceDetails struct {

	// Timestamp of last applied maintenance.
	LastMaintenanceApplied *time.Time

	// The timestamp after which Amazon Web Services will automatically apply
	// maintenance.
	MaintenanceAutoAppliedAfter *time.Time

	// Verify existence of a pending maintenance.
	PendingMaintenance *string
	// contains filtered or unexported fields
}

Details for Site-to-Site VPN tunnel endpoint maintenance events.

type ManagedBy added in v1.195.0

type ManagedBy string
const (
	ManagedByAccount           ManagedBy = "account"
	ManagedByDeclarativePolicy ManagedBy = "declarative-policy"
)

Enum values for ManagedBy

func (ManagedBy) Values added in v1.195.0

func (ManagedBy) Values() []ManagedBy

Values returns all known values for ManagedBy. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type ManagedPrefixList

type ManagedPrefixList struct {

	// The IP address version.
	AddressFamily *string

	// The maximum number of entries for the prefix list.
	MaxEntries *int32

	// The ID of the owner of the prefix list.
	OwnerId *string

	// The Amazon Resource Name (ARN) for the prefix list.
	PrefixListArn *string

	// The ID of the prefix list.
	PrefixListId *string

	// The name of the prefix list.
	PrefixListName *string

	// The current state of the prefix list.
	State PrefixListState

	// The state message.
	StateMessage *string

	// The tags for the prefix list.
	Tags []Tag

	// The version of the prefix list.
	Version *int64
	// contains filtered or unexported fields
}

Describes a managed prefix list.

type MarketType

type MarketType string
const (
	MarketTypeSpot          MarketType = "spot"
	MarketTypeCapacityBlock MarketType = "capacity-block"
)

Enum values for MarketType

func (MarketType) Values added in v0.29.0

func (MarketType) Values() []MarketType

Values returns all known values for MarketType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type MediaAcceleratorInfo added in v1.151.0

type MediaAcceleratorInfo struct {

	// Describes the media accelerators for the instance type.
	Accelerators []MediaDeviceInfo

	// The total size of the memory for the media accelerators for the instance type,
	// in MiB.
	TotalMediaMemoryInMiB *int32
	// contains filtered or unexported fields
}

Describes the media accelerators for the instance type.

type MediaDeviceInfo added in v1.151.0

type MediaDeviceInfo struct {

	// The number of media accelerators for the instance type.
	Count *int32

	// The manufacturer of the media accelerator.
	Manufacturer *string

	// Describes the memory available to the media accelerator.
	MemoryInfo *MediaDeviceMemoryInfo

	// The name of the media accelerator.
	Name *string
	// contains filtered or unexported fields
}

Describes the media accelerators for the instance type.

type MediaDeviceMemoryInfo added in v1.151.0

type MediaDeviceMemoryInfo struct {

	// The size of the memory available to each media accelerator, in MiB.
	SizeInMiB *int32
	// contains filtered or unexported fields
}

Describes the memory available to the media accelerator.

type MembershipType

type MembershipType string
const (
	MembershipTypeStatic MembershipType = "static"
	MembershipTypeIgmp   MembershipType = "igmp"
)

Enum values for MembershipType

func (MembershipType) Values added in v0.29.0

func (MembershipType) Values() []MembershipType

Values returns all known values for MembershipType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type MemoryGiBPerVCpu added in v1.21.0

type MemoryGiBPerVCpu struct {

	// The maximum amount of memory per vCPU, in GiB. If this parameter is not
	// specified, there is no maximum limit.
	Max *float64

	// The minimum amount of memory per vCPU, in GiB. If this parameter is not
	// specified, there is no minimum limit.
	Min *float64
	// contains filtered or unexported fields
}

The minimum and maximum amount of memory per vCPU, in GiB.

type MemoryGiBPerVCpuRequest added in v1.21.0

type MemoryGiBPerVCpuRequest struct {

	// The maximum amount of memory per vCPU, in GiB. To specify no maximum limit,
	// omit this parameter.
	Max *float64

	// The minimum amount of memory per vCPU, in GiB. To specify no minimum limit,
	// omit this parameter.
	Min *float64
	// contains filtered or unexported fields
}

The minimum and maximum amount of memory per vCPU, in GiB.

type MemoryInfo

type MemoryInfo struct {

	// The size of the memory, in MiB.
	SizeInMiB *int64
	// contains filtered or unexported fields
}

Describes the memory for the instance type.

type MemoryMiB added in v1.21.0

type MemoryMiB struct {

	// The maximum amount of memory, in MiB. If this parameter is not specified, there
	// is no maximum limit.
	Max *int32

	// The minimum amount of memory, in MiB. If this parameter is not specified, there
	// is no minimum limit.
	Min *int32
	// contains filtered or unexported fields
}

The minimum and maximum amount of memory, in MiB.

type MemoryMiBRequest added in v1.21.0

type MemoryMiBRequest struct {

	// The minimum amount of memory, in MiB. To specify no minimum limit, specify 0 .
	//
	// This member is required.
	Min *int32

	// The maximum amount of memory, in MiB. To specify no maximum limit, omit this
	// parameter.
	Max *int32
	// contains filtered or unexported fields
}

The minimum and maximum amount of memory, in MiB.

type MetadataDefaultHttpTokensState added in v1.153.0

type MetadataDefaultHttpTokensState string
const (
	MetadataDefaultHttpTokensStateOptional     MetadataDefaultHttpTokensState = "optional"
	MetadataDefaultHttpTokensStateRequired     MetadataDefaultHttpTokensState = "required"
	MetadataDefaultHttpTokensStateNoPreference MetadataDefaultHttpTokensState = "no-preference"
)

Enum values for MetadataDefaultHttpTokensState

func (MetadataDefaultHttpTokensState) Values added in v1.153.0

Values returns all known values for MetadataDefaultHttpTokensState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type MetricPoint added in v1.73.0

type MetricPoint struct {

	// The end date for the metric point. The ending time must be formatted as
	// yyyy-mm-ddThh:mm:ss . For example, 2022-06-12T12:00:00.000Z .
	EndDate *time.Time

	// The start date for the metric point. The starting date for the metric point.
	// The starting time must be formatted as yyyy-mm-ddThh:mm:ss . For example,
	// 2022-06-10T12:00:00.000Z .
	StartDate *time.Time

	// The status of the metric point.
	Status *string

	Value *float32
	// contains filtered or unexported fields
}

Indicates whether the network was healthy or degraded at a particular point. The value is aggregated from the startDate to the endDate . Currently only five_minutes is supported.

type MetricType added in v1.73.0

type MetricType string
const (
	MetricTypeAggregateLatency MetricType = "aggregate-latency"
)

Enum values for MetricType

func (MetricType) Values added in v1.73.0

func (MetricType) Values() []MetricType

Values returns all known values for MetricType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type ModifyAvailabilityZoneOptInStatus

type ModifyAvailabilityZoneOptInStatus string
const (
	ModifyAvailabilityZoneOptInStatusOptedIn    ModifyAvailabilityZoneOptInStatus = "opted-in"
	ModifyAvailabilityZoneOptInStatusNotOptedIn ModifyAvailabilityZoneOptInStatus = "not-opted-in"
)

Enum values for ModifyAvailabilityZoneOptInStatus

func (ModifyAvailabilityZoneOptInStatus) Values added in v0.29.0

Values returns all known values for ModifyAvailabilityZoneOptInStatus. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type ModifyTransitGatewayOptions added in v0.29.0

type ModifyTransitGatewayOptions struct {

	// Adds IPv4 or IPv6 CIDR blocks for the transit gateway. Must be a size /24 CIDR
	// block or larger for IPv4, or a size /64 CIDR block or larger for IPv6.
	AddTransitGatewayCidrBlocks []string

	// A private Autonomous System Number (ASN) for the Amazon side of a BGP session.
	// The range is 64512 to 65534 for 16-bit ASNs and 4200000000 to 4294967294 for
	// 32-bit ASNs.
	//
	// The modify ASN operation is not allowed on a transit gateway if it has the
	// following attachments:
	//
	//   - Dynamic VPN
	//
	//   - Static VPN
	//
	//   - Direct Connect Gateway
	//
	//   - Connect
	//
	// You must first delete all transit gateway attachments configured prior to
	// modifying the ASN on the transit gateway.
	AmazonSideAsn *int64

	// The ID of the default association route table.
	AssociationDefaultRouteTableId *string

	// Enable or disable automatic acceptance of attachment requests.
	AutoAcceptSharedAttachments AutoAcceptSharedAttachmentsValue

	// Enable or disable automatic association with the default association route
	// table.
	DefaultRouteTableAssociation DefaultRouteTableAssociationValue

	// Enable or disable automatic propagation of routes to the default propagation
	// route table.
	DefaultRouteTablePropagation DefaultRouteTablePropagationValue

	// Enable or disable DNS support.
	DnsSupport DnsSupportValue

	// The ID of the default propagation route table.
	PropagationDefaultRouteTableId *string

	// Removes CIDR blocks for the transit gateway.
	RemoveTransitGatewayCidrBlocks []string

	// Enables you to reference a security group across VPCs attached to a transit
	// gateway to simplify security group management.
	//
	// This option is disabled by default.
	//
	// For more information about security group referencing, see [Security group referencing] in the Amazon Web
	// Services Transit Gateways Guide.
	//
	// [Security group referencing]: https://docs.aws.amazon.com/vpc/latest/tgw/tgw-vpc-attachments.html#vpc-attachment-security
	SecurityGroupReferencingSupport SecurityGroupReferencingSupportValue

	// Enable or disable Equal Cost Multipath Protocol support.
	VpnEcmpSupport VpnEcmpSupportValue
	// contains filtered or unexported fields
}

The transit gateway options.

type ModifyTransitGatewayVpcAttachmentRequestOptions

type ModifyTransitGatewayVpcAttachmentRequestOptions struct {

	// Enable or disable support for appliance mode. If enabled, a traffic flow
	// between a source and destination uses the same Availability Zone for the VPC
	// attachment for the lifetime of that flow. The default is disable .
	ApplianceModeSupport ApplianceModeSupportValue

	// Enable or disable DNS support. The default is enable .
	DnsSupport DnsSupportValue

	// Enable or disable IPv6 support. The default is enable .
	Ipv6Support Ipv6SupportValue

	// Enables you to reference a security group across VPCs attached to a transit
	// gateway to simplify security group management.
	//
	// This option is disabled by default.
	//
	// For more information about security group referencing, see [Security group referencing] in the Amazon Web
	// Services Transit Gateways Guide.
	//
	// [Security group referencing]: https://docs.aws.amazon.com/vpc/latest/tgw/tgw-vpc-attachments.html#vpc-attachment-security
	SecurityGroupReferencingSupport SecurityGroupReferencingSupportValue
	// contains filtered or unexported fields
}

Describes the options for a VPC attachment.

type ModifyVerifiedAccessEndpointCidrOptions added in v1.195.0

type ModifyVerifiedAccessEndpointCidrOptions struct {

	// The port ranges.
	PortRanges []ModifyVerifiedAccessEndpointPortRange
	// contains filtered or unexported fields
}

The CIDR options for a Verified Access endpoint.

type ModifyVerifiedAccessEndpointEniOptions added in v1.74.0

type ModifyVerifiedAccessEndpointEniOptions struct {

	// The IP port number.
	Port *int32

	// The port ranges.
	PortRanges []ModifyVerifiedAccessEndpointPortRange

	// The IP protocol.
	Protocol VerifiedAccessEndpointProtocol
	// contains filtered or unexported fields
}

Describes the options when modifying a Verified Access endpoint with the network-interface type.

type ModifyVerifiedAccessEndpointLoadBalancerOptions added in v1.74.0

type ModifyVerifiedAccessEndpointLoadBalancerOptions struct {

	// The IP port number.
	Port *int32

	// The port ranges.
	PortRanges []ModifyVerifiedAccessEndpointPortRange

	// The IP protocol.
	Protocol VerifiedAccessEndpointProtocol

	// The IDs of the subnets.
	SubnetIds []string
	// contains filtered or unexported fields
}

Describes a load balancer when creating an Amazon Web Services Verified Access endpoint using the load-balancer type.

type ModifyVerifiedAccessEndpointPortRange added in v1.195.0

type ModifyVerifiedAccessEndpointPortRange struct {

	// The start of the port range.
	FromPort *int32

	// The end of the port range.
	ToPort *int32
	// contains filtered or unexported fields
}

Describes the port range for a Verified Access endpoint.

type ModifyVerifiedAccessEndpointRdsOptions added in v1.195.0

type ModifyVerifiedAccessEndpointRdsOptions struct {

	// The port.
	Port *int32

	// The RDS endpoint.
	RdsEndpoint *string

	// The IDs of the subnets.
	SubnetIds []string
	// contains filtered or unexported fields
}

The RDS options for a Verified Access endpoint.

type ModifyVerifiedAccessNativeApplicationOidcOptions added in v1.195.0

type ModifyVerifiedAccessNativeApplicationOidcOptions struct {

	// The authorization endpoint of the IdP.
	AuthorizationEndpoint *string

	// The OAuth 2.0 client identifier.
	ClientId *string

	// The OAuth 2.0 client secret.
	ClientSecret *string

	// The OIDC issuer identifier of the IdP.
	Issuer *string

	// The public signing key endpoint.
	PublicSigningKeyEndpoint *string

	// The set of user claims to be requested from the IdP.
	Scope *string

	// The token endpoint of the IdP.
	TokenEndpoint *string

	// The user info endpoint of the IdP.
	UserInfoEndpoint *string
	// contains filtered or unexported fields
}

Describes the OpenID Connect (OIDC) options.

type ModifyVerifiedAccessTrustProviderDeviceOptions added in v1.135.0

type ModifyVerifiedAccessTrustProviderDeviceOptions struct {

	//  The URL Amazon Web Services Verified Access will use to verify the
	// authenticity of the device tokens.
	PublicSigningKeyUrl *string
	// contains filtered or unexported fields
}

Modifies the configuration of the specified device-based Amazon Web Services Verified Access trust provider.

type ModifyVerifiedAccessTrustProviderOidcOptions added in v1.74.0

type ModifyVerifiedAccessTrustProviderOidcOptions struct {

	// The OIDC authorization endpoint.
	AuthorizationEndpoint *string

	// The client identifier.
	ClientId *string

	// The client secret.
	ClientSecret *string

	// The OIDC issuer.
	Issuer *string

	// OpenID Connect (OIDC) scopes are used by an application during authentication
	// to authorize access to a user's details. Each scope returns a specific set of
	// user attributes.
	Scope *string

	// The OIDC token endpoint.
	TokenEndpoint *string

	// The OIDC user info endpoint.
	UserInfoEndpoint *string
	// contains filtered or unexported fields
}

Options for an OpenID Connect-compatible user-identity trust provider.

type ModifyVpnTunnelOptionsSpecification

type ModifyVpnTunnelOptionsSpecification struct {

	// The action to take after DPD timeout occurs. Specify restart to restart the IKE
	// initiation. Specify clear to end the IKE session.
	//
	// Valid Values: clear | none | restart
	//
	// Default: clear
	DPDTimeoutAction *string

	// The number of seconds after which a DPD timeout occurs. A DPD timeout of 40
	// seconds means that the VPN endpoint will consider the peer dead 30 seconds after
	// the first failed keep-alive.
	//
	// Constraints: A value greater than or equal to 30.
	//
	// Default: 40
	DPDTimeoutSeconds *int32

	// Turn on or off tunnel endpoint lifecycle control feature.
	EnableTunnelLifecycleControl *bool

	// The IKE versions that are permitted for the VPN tunnel.
	//
	// Valid values: ikev1 | ikev2
	IKEVersions []IKEVersionsRequestListValue

	// Options for logging VPN tunnel activity.
	LogOptions *VpnTunnelLogOptionsSpecification

	// One or more Diffie-Hellman group numbers that are permitted for the VPN tunnel
	// for phase 1 IKE negotiations.
	//
	// Valid values: 2 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24
	Phase1DHGroupNumbers []Phase1DHGroupNumbersRequestListValue

	// One or more encryption algorithms that are permitted for the VPN tunnel for
	// phase 1 IKE negotiations.
	//
	// Valid values: AES128 | AES256 | AES128-GCM-16 | AES256-GCM-16
	Phase1EncryptionAlgorithms []Phase1EncryptionAlgorithmsRequestListValue

	// One or more integrity algorithms that are permitted for the VPN tunnel for
	// phase 1 IKE negotiations.
	//
	// Valid values: SHA1 | SHA2-256 | SHA2-384 | SHA2-512
	Phase1IntegrityAlgorithms []Phase1IntegrityAlgorithmsRequestListValue

	// The lifetime for phase 1 of the IKE negotiation, in seconds.
	//
	// Constraints: A value between 900 and 28,800.
	//
	// Default: 28800
	Phase1LifetimeSeconds *int32

	// One or more Diffie-Hellman group numbers that are permitted for the VPN tunnel
	// for phase 2 IKE negotiations.
	//
	// Valid values: 2 | 5 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24
	Phase2DHGroupNumbers []Phase2DHGroupNumbersRequestListValue

	// One or more encryption algorithms that are permitted for the VPN tunnel for
	// phase 2 IKE negotiations.
	//
	// Valid values: AES128 | AES256 | AES128-GCM-16 | AES256-GCM-16
	Phase2EncryptionAlgorithms []Phase2EncryptionAlgorithmsRequestListValue

	// One or more integrity algorithms that are permitted for the VPN tunnel for
	// phase 2 IKE negotiations.
	//
	// Valid values: SHA1 | SHA2-256 | SHA2-384 | SHA2-512
	Phase2IntegrityAlgorithms []Phase2IntegrityAlgorithmsRequestListValue

	// The lifetime for phase 2 of the IKE negotiation, in seconds.
	//
	// Constraints: A value between 900 and 3,600. The value must be less than the
	// value for Phase1LifetimeSeconds .
	//
	// Default: 3600
	Phase2LifetimeSeconds *int32

	// The pre-shared key (PSK) to establish initial authentication between the
	// virtual private gateway and the customer gateway.
	//
	// Constraints: Allowed characters are alphanumeric characters, periods (.), and
	// underscores (_). Must be between 8 and 64 characters in length and cannot start
	// with zero (0).
	PreSharedKey *string

	// The percentage of the rekey window (determined by RekeyMarginTimeSeconds )
	// during which the rekey time is randomly selected.
	//
	// Constraints: A value between 0 and 100.
	//
	// Default: 100
	RekeyFuzzPercentage *int32

	// The margin time, in seconds, before the phase 2 lifetime expires, during which
	// the Amazon Web Services side of the VPN connection performs an IKE rekey. The
	// exact time of the rekey is randomly selected based on the value for
	// RekeyFuzzPercentage .
	//
	// Constraints: A value between 60 and half of Phase2LifetimeSeconds .
	//
	// Default: 270
	RekeyMarginTimeSeconds *int32

	// The number of packets in an IKE replay window.
	//
	// Constraints: A value between 64 and 2048.
	//
	// Default: 1024
	ReplayWindowSize *int32

	// The action to take when the establishing the tunnel for the VPN connection. By
	// default, your customer gateway device must initiate the IKE negotiation and
	// bring up the tunnel. Specify start for Amazon Web Services to initiate the IKE
	// negotiation.
	//
	// Valid Values: add | start
	//
	// Default: add
	StartupAction *string

	// The range of inside IPv4 addresses for the tunnel. Any specified CIDR blocks
	// must be unique across all VPN connections that use the same virtual private
	// gateway.
	//
	// Constraints: A size /30 CIDR block from the 169.254.0.0/16 range. The following
	// CIDR blocks are reserved and cannot be used:
	//
	//   - 169.254.0.0/30
	//
	//   - 169.254.1.0/30
	//
	//   - 169.254.2.0/30
	//
	//   - 169.254.3.0/30
	//
	//   - 169.254.4.0/30
	//
	//   - 169.254.5.0/30
	//
	//   - 169.254.169.252/30
	TunnelInsideCidr *string

	// The range of inside IPv6 addresses for the tunnel. Any specified CIDR blocks
	// must be unique across all VPN connections that use the same transit gateway.
	//
	// Constraints: A size /126 CIDR block from the local fd00::/8 range.
	TunnelInsideIpv6Cidr *string
	// contains filtered or unexported fields
}

The Amazon Web Services Site-to-Site VPN tunnel options to modify.

type Monitoring

type Monitoring struct {

	// Indicates whether detailed monitoring is enabled. Otherwise, basic monitoring
	// is enabled.
	State MonitoringState
	// contains filtered or unexported fields
}

Describes the monitoring of an instance.

type MonitoringState

type MonitoringState string
const (
	MonitoringStateDisabled  MonitoringState = "disabled"
	MonitoringStateDisabling MonitoringState = "disabling"
	MonitoringStateEnabled   MonitoringState = "enabled"
	MonitoringStatePending   MonitoringState = "pending"
)

Enum values for MonitoringState

func (MonitoringState) Values added in v0.29.0

func (MonitoringState) Values() []MonitoringState

Values returns all known values for MonitoringState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type MoveStatus

type MoveStatus string
const (
	MoveStatusMovingToVpc        MoveStatus = "movingToVpc"
	MoveStatusRestoringToClassic MoveStatus = "restoringToClassic"
)

Enum values for MoveStatus

func (MoveStatus) Values added in v0.29.0

func (MoveStatus) Values() []MoveStatus

Values returns all known values for MoveStatus. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type MovingAddressStatus

type MovingAddressStatus struct {

	// The status of the Elastic IP address that's being moved or restored.
	MoveStatus MoveStatus

	// The Elastic IP address.
	PublicIp *string
	// contains filtered or unexported fields
}

This action is deprecated.

Describes the status of a moving Elastic IP address.

type MulticastSupportValue

type MulticastSupportValue string
const (
	MulticastSupportValueEnable  MulticastSupportValue = "enable"
	MulticastSupportValueDisable MulticastSupportValue = "disable"
)

Enum values for MulticastSupportValue

func (MulticastSupportValue) Values added in v0.29.0

Values returns all known values for MulticastSupportValue. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type NatGateway

type NatGateway struct {

	// Indicates whether the NAT gateway supports public or private connectivity.
	ConnectivityType ConnectivityType

	// The date and time the NAT gateway was created.
	CreateTime *time.Time

	// The date and time the NAT gateway was deleted, if applicable.
	DeleteTime *time.Time

	// If the NAT gateway could not be created, specifies the error code for the
	// failure. ( InsufficientFreeAddressesInSubnet | Gateway.NotAttached |
	// InvalidAllocationID.NotFound | Resource.AlreadyAssociated | InternalError |
	// InvalidSubnetID.NotFound )
	FailureCode *string

	// If the NAT gateway could not be created, specifies the error message for the
	// failure, that corresponds to the error code.
	//
	//   - For InsufficientFreeAddressesInSubnet: "Subnet has insufficient free
	//   addresses to create this NAT gateway"
	//
	//   - For Gateway.NotAttached: "Network vpc-xxxxxxxx has no Internet gateway
	//   attached"
	//
	//   - For InvalidAllocationID.NotFound: "Elastic IP address eipalloc-xxxxxxxx
	//   could not be associated with this NAT gateway"
	//
	//   - For Resource.AlreadyAssociated: "Elastic IP address eipalloc-xxxxxxxx is
	//   already associated"
	//
	//   - For InternalError: "Network interface eni-xxxxxxxx, created and used
	//   internally by this NAT gateway is in an invalid state. Please try again."
	//
	//   - For InvalidSubnetID.NotFound: "The specified subnet subnet-xxxxxxxx does
	//   not exist or could not be found."
	FailureMessage *string

	// Information about the IP addresses and network interface associated with the
	// NAT gateway.
	NatGatewayAddresses []NatGatewayAddress

	// The ID of the NAT gateway.
	NatGatewayId *string

	// Reserved. If you need to sustain traffic greater than the [documented limits], contact Amazon Web
	// Services Support.
	//
	// [documented limits]: https://docs.aws.amazon.com/vpc/latest/userguide/amazon-vpc-limits.html#vpc-limits-gateways
	ProvisionedBandwidth *ProvisionedBandwidth

	// The state of the NAT gateway.
	//
	//   - pending : The NAT gateway is being created and is not ready to process
	//   traffic.
	//
	//   - failed : The NAT gateway could not be created. Check the failureCode and
	//   failureMessage fields for the reason.
	//
	//   - available : The NAT gateway is able to process traffic. This status remains
	//   until you delete the NAT gateway, and does not indicate the health of the NAT
	//   gateway.
	//
	//   - deleting : The NAT gateway is in the process of being terminated and may
	//   still be processing traffic.
	//
	//   - deleted : The NAT gateway has been terminated and is no longer processing
	//   traffic.
	State NatGatewayState

	// The ID of the subnet in which the NAT gateway is located.
	SubnetId *string

	// The tags for the NAT gateway.
	Tags []Tag

	// The ID of the VPC in which the NAT gateway is located.
	VpcId *string
	// contains filtered or unexported fields
}

Describes a NAT gateway.

type NatGatewayAddress

type NatGatewayAddress struct {

	// [Public NAT gateway only] The allocation ID of the Elastic IP address that's
	// associated with the NAT gateway.
	AllocationId *string

	// [Public NAT gateway only] The association ID of the Elastic IP address that's
	// associated with the NAT gateway.
	AssociationId *string

	// The address failure message.
	FailureMessage *string

	// Defines if the IP address is the primary address.
	IsPrimary *bool

	// The ID of the network interface associated with the NAT gateway.
	NetworkInterfaceId *string

	// The private IP address associated with the NAT gateway.
	PrivateIp *string

	// [Public NAT gateway only] The Elastic IP address associated with the NAT
	// gateway.
	PublicIp *string

	// The address status.
	Status NatGatewayAddressStatus
	// contains filtered or unexported fields
}

Describes the IP addresses and network interface associated with a NAT gateway.

type NatGatewayAddressStatus added in v1.83.0

type NatGatewayAddressStatus string
const (
	NatGatewayAddressStatusAssigning      NatGatewayAddressStatus = "assigning"
	NatGatewayAddressStatusUnassigning    NatGatewayAddressStatus = "unassigning"
	NatGatewayAddressStatusAssociating    NatGatewayAddressStatus = "associating"
	NatGatewayAddressStatusDisassociating NatGatewayAddressStatus = "disassociating"
	NatGatewayAddressStatusSucceeded      NatGatewayAddressStatus = "succeeded"
	NatGatewayAddressStatusFailed         NatGatewayAddressStatus = "failed"
)

Enum values for NatGatewayAddressStatus

func (NatGatewayAddressStatus) Values added in v1.83.0

Values returns all known values for NatGatewayAddressStatus. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type NatGatewayState

type NatGatewayState string
const (
	NatGatewayStatePending   NatGatewayState = "pending"
	NatGatewayStateFailed    NatGatewayState = "failed"
	NatGatewayStateAvailable NatGatewayState = "available"
	NatGatewayStateDeleting  NatGatewayState = "deleting"
	NatGatewayStateDeleted   NatGatewayState = "deleted"
)

Enum values for NatGatewayState

func (NatGatewayState) Values added in v0.29.0

func (NatGatewayState) Values() []NatGatewayState

Values returns all known values for NatGatewayState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type NativeApplicationOidcOptions added in v1.195.0

type NativeApplicationOidcOptions struct {

	// The authorization endpoint of the IdP.
	AuthorizationEndpoint *string

	// The OAuth 2.0 client identifier.
	ClientId *string

	// The OIDC issuer identifier of the IdP.
	Issuer *string

	// The public signing key endpoint.
	PublicSigningKeyEndpoint *string

	// The set of user claims to be requested from the IdP.
	Scope *string

	// The token endpoint of the IdP.
	TokenEndpoint *string

	// The user info endpoint of the IdP.
	UserInfoEndpoint *string
	// contains filtered or unexported fields
}

Describes the OpenID Connect (OIDC) options.

type NetworkAcl

type NetworkAcl struct {

	// Any associations between the network ACL and your subnets
	Associations []NetworkAclAssociation

	// The entries (rules) in the network ACL.
	Entries []NetworkAclEntry

	// Indicates whether this is the default network ACL for the VPC.
	IsDefault *bool

	// The ID of the network ACL.
	NetworkAclId *string

	// The ID of the Amazon Web Services account that owns the network ACL.
	OwnerId *string

	// Any tags assigned to the network ACL.
	Tags []Tag

	// The ID of the VPC for the network ACL.
	VpcId *string
	// contains filtered or unexported fields
}

Describes a network ACL.

type NetworkAclAssociation

type NetworkAclAssociation struct {

	// The ID of the association between a network ACL and a subnet.
	NetworkAclAssociationId *string

	// The ID of the network ACL.
	NetworkAclId *string

	// The ID of the subnet.
	SubnetId *string
	// contains filtered or unexported fields
}

Describes an association between a network ACL and a subnet.

type NetworkAclEntry

type NetworkAclEntry struct {

	// The IPv4 network range to allow or deny, in CIDR notation.
	CidrBlock *string

	// Indicates whether the rule is an egress rule (applied to traffic leaving the
	// subnet).
	Egress *bool

	// ICMP protocol: The ICMP type and code.
	IcmpTypeCode *IcmpTypeCode

	// The IPv6 network range to allow or deny, in CIDR notation.
	Ipv6CidrBlock *string

	// TCP or UDP protocols: The range of ports the rule applies to.
	PortRange *PortRange

	// The protocol number. A value of "-1" means all protocols.
	Protocol *string

	// Indicates whether to allow or deny the traffic that matches the rule.
	RuleAction RuleAction

	// The rule number for the entry. ACL entries are processed in ascending order by
	// rule number.
	RuleNumber *int32
	// contains filtered or unexported fields
}

Describes an entry in a network ACL.

type NetworkBandwidthGbps added in v1.67.0

type NetworkBandwidthGbps struct {

	// The maximum amount of network bandwidth, in Gbps. If this parameter is not
	// specified, there is no maximum limit.
	Max *float64

	// The minimum amount of network bandwidth, in Gbps. If this parameter is not
	// specified, there is no minimum limit.
	Min *float64
	// contains filtered or unexported fields
}

The minimum and maximum amount of network bandwidth, in gigabits per second (Gbps).

Setting the minimum bandwidth does not guarantee that your instance will achieve the minimum bandwidth. Amazon EC2 will identify instance types that support the specified minimum bandwidth, but the actual bandwidth of your instance might go below the specified minimum at times. For more information, see Available instance bandwidthin the Amazon EC2 User Guide.

type NetworkBandwidthGbpsRequest added in v1.67.0

type NetworkBandwidthGbpsRequest struct {

	// The maximum amount of network bandwidth, in Gbps. To specify no maximum limit,
	// omit this parameter.
	Max *float64

	// The minimum amount of network bandwidth, in Gbps. To specify no minimum limit,
	// omit this parameter.
	Min *float64
	// contains filtered or unexported fields
}

The minimum and maximum amount of network bandwidth, in gigabits per second (Gbps).

Setting the minimum bandwidth does not guarantee that your instance will achieve the minimum bandwidth. Amazon EC2 will identify instance types that support the specified minimum bandwidth, but the actual bandwidth of your instance might go below the specified minimum at times. For more information, see Available instance bandwidthin the Amazon EC2 User Guide.

type NetworkCardInfo added in v0.30.0

type NetworkCardInfo struct {

	// The baseline network performance of the network card, in Gbps.
	BaselineBandwidthInGbps *float64

	// The maximum number of network interfaces for the network card.
	MaximumNetworkInterfaces *int32

	// The index of the network card.
	NetworkCardIndex *int32

	// The network performance of the network card.
	NetworkPerformance *string

	// The peak (burst) network performance of the network card, in Gbps.
	PeakBandwidthInGbps *float64
	// contains filtered or unexported fields
}

Describes the network card support of the instance type.

type NetworkInfo

type NetworkInfo struct {

	// A list of valid settings for configurable bandwidth weighting for the instance
	// type, if supported.
	BandwidthWeightings []BandwidthWeightingType

	// The index of the default network card, starting at 0.
	DefaultNetworkCardIndex *int32

	// Describes the Elastic Fabric Adapters for the instance type.
	EfaInfo *EfaInfo

	// Indicates whether Elastic Fabric Adapter (EFA) is supported.
	EfaSupported *bool

	// Indicates whether the instance type supports ENA Express. ENA Express uses
	// Amazon Web Services Scalable Reliable Datagram (SRD) technology to increase the
	// maximum bandwidth used per stream and minimize tail latency of network traffic
	// between EC2 instances.
	EnaSrdSupported *bool

	// Indicates whether Elastic Network Adapter (ENA) is supported.
	EnaSupport EnaSupport

	// Indicates whether the instance type automatically encrypts in-transit traffic
	// between instances.
	EncryptionInTransitSupported *bool

	// The maximum number of IPv4 addresses per network interface.
	Ipv4AddressesPerInterface *int32

	// The maximum number of IPv6 addresses per network interface.
	Ipv6AddressesPerInterface *int32

	// Indicates whether IPv6 is supported.
	Ipv6Supported *bool

	// The maximum number of physical network cards that can be allocated to the
	// instance.
	MaximumNetworkCards *int32

	// The maximum number of network interfaces for the instance type.
	MaximumNetworkInterfaces *int32

	// Describes the network cards for the instance type.
	NetworkCards []NetworkCardInfo

	// The network performance.
	NetworkPerformance *string
	// contains filtered or unexported fields
}

Describes the networking features of the instance type.

type NetworkInsightsAccessScope added in v1.25.0

type NetworkInsightsAccessScope struct {

	// The creation date.
	CreatedDate *time.Time

	// The Amazon Resource Name (ARN) of the Network Access Scope.
	NetworkInsightsAccessScopeArn *string

	// The ID of the Network Access Scope.
	NetworkInsightsAccessScopeId *string

	// The tags.
	Tags []Tag

	// The last updated date.
	UpdatedDate *time.Time
	// contains filtered or unexported fields
}

Describes a Network Access Scope.

type NetworkInsightsAccessScopeAnalysis added in v1.25.0

type NetworkInsightsAccessScopeAnalysis struct {

	// The number of network interfaces analyzed.
	AnalyzedEniCount *int32

	// The analysis end date.
	EndDate *time.Time

	// Indicates whether there are findings.
	FindingsFound FindingsFound

	// The Amazon Resource Name (ARN) of the Network Access Scope analysis.
	NetworkInsightsAccessScopeAnalysisArn *string

	// The ID of the Network Access Scope analysis.
	NetworkInsightsAccessScopeAnalysisId *string

	// The ID of the Network Access Scope.
	NetworkInsightsAccessScopeId *string

	// The analysis start date.
	StartDate *time.Time

	// The status.
	Status AnalysisStatus

	// The status message.
	StatusMessage *string

	// The tags.
	Tags []Tag

	// The warning message.
	WarningMessage *string
	// contains filtered or unexported fields
}

Describes a Network Access Scope analysis.

type NetworkInsightsAccessScopeContent added in v1.25.0

type NetworkInsightsAccessScopeContent struct {

	// The paths to exclude.
	ExcludePaths []AccessScopePath

	// The paths to match.
	MatchPaths []AccessScopePath

	// The ID of the Network Access Scope.
	NetworkInsightsAccessScopeId *string
	// contains filtered or unexported fields
}

Describes the Network Access Scope content.

type NetworkInsightsAnalysis added in v0.31.0

type NetworkInsightsAnalysis struct {

	// The member accounts that contain resources that the path can traverse.
	AdditionalAccounts []string

	// Potential intermediate components.
	AlternatePathHints []AlternatePathHint

	// The explanations. For more information, see [Reachability Analyzer explanation codes].
	//
	// [Reachability Analyzer explanation codes]: https://docs.aws.amazon.com/vpc/latest/reachability/explanation-codes.html
	Explanations []Explanation

	// The Amazon Resource Names (ARN) of the resources that the path must traverse.
	FilterInArns []string

	// The components in the path from source to destination.
	ForwardPathComponents []PathComponent

	// The Amazon Resource Name (ARN) of the network insights analysis.
	NetworkInsightsAnalysisArn *string

	// The ID of the network insights analysis.
	NetworkInsightsAnalysisId *string

	// The ID of the path.
	NetworkInsightsPathId *string

	// Indicates whether the destination is reachable from the source.
	NetworkPathFound *bool

	// The components in the path from destination to source.
	ReturnPathComponents []PathComponent

	// The time the analysis started.
	StartDate *time.Time

	// The status of the network insights analysis.
	Status AnalysisStatus

	// The status message, if the status is failed .
	StatusMessage *string

	// Potential intermediate accounts.
	SuggestedAccounts []string

	// The tags.
	Tags []Tag

	// The warning message.
	WarningMessage *string
	// contains filtered or unexported fields
}

Describes a network insights analysis.

type NetworkInsightsPath added in v0.31.0

type NetworkInsightsPath struct {

	// The time stamp when the path was created.
	CreatedDate *time.Time

	// The ID of the destination.
	Destination *string

	// The Amazon Resource Name (ARN) of the destination.
	DestinationArn *string

	// The IP address of the destination.
	DestinationIp *string

	// The destination port.
	DestinationPort *int32

	// Scopes the analysis to network paths that match specific filters at the
	// destination.
	FilterAtDestination *PathFilter

	// Scopes the analysis to network paths that match specific filters at the source.
	FilterAtSource *PathFilter

	// The Amazon Resource Name (ARN) of the path.
	NetworkInsightsPathArn *string

	// The ID of the path.
	NetworkInsightsPathId *string

	// The protocol.
	Protocol Protocol

	// The ID of the source.
	Source *string

	// The Amazon Resource Name (ARN) of the source.
	SourceArn *string

	// The IP address of the source.
	SourceIp *string

	// The tags associated with the path.
	Tags []Tag
	// contains filtered or unexported fields
}

Describes a path.

type NetworkInterface

type NetworkInterface struct {

	// The association information for an Elastic IP address (IPv4) associated with
	// the network interface.
	Association *NetworkInterfaceAssociation

	// The network interface attachment.
	Attachment *NetworkInterfaceAttachment

	// The Availability Zone.
	AvailabilityZone *string

	// A security group connection tracking configuration that enables you to set the
	// timeout for connection tracking on an Elastic network interface. For more
	// information, see [Connection tracking timeouts]in the Amazon EC2 User Guide.
	//
	// [Connection tracking timeouts]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-connection-tracking.html#connection-tracking-timeouts
	ConnectionTrackingConfiguration *ConnectionTrackingConfiguration

	// Indicates whether a network interface with an IPv6 address is unreachable from
	// the public internet. If the value is true , inbound traffic from the internet is
	// dropped and you cannot assign an elastic IP address to the network interface.
	// The network interface is reachable from peered VPCs and resources connected
	// through a transit gateway, including on-premises networks.
	DenyAllIgwTraffic *bool

	// A description.
	Description *string

	// Any security groups for the network interface.
	Groups []GroupIdentifier

	// The type of network interface.
	InterfaceType NetworkInterfaceType

	// The IPv4 prefixes that are assigned to the network interface.
	Ipv4Prefixes []Ipv4PrefixSpecification

	// The IPv6 globally unique address associated with the network interface.
	Ipv6Address *string

	// The IPv6 addresses associated with the network interface.
	Ipv6Addresses []NetworkInterfaceIpv6Address

	// Indicates whether this is an IPv6 only network interface.
	Ipv6Native *bool

	// The IPv6 prefixes that are assigned to the network interface.
	Ipv6Prefixes []Ipv6PrefixSpecification

	// The MAC address.
	MacAddress *string

	// The ID of the network interface.
	NetworkInterfaceId *string

	// The service provider that manages the network interface.
	Operator *OperatorResponse

	// The Amazon Resource Name (ARN) of the Outpost.
	OutpostArn *string

	// The Amazon Web Services account ID of the owner of the network interface.
	OwnerId *string

	// The private DNS name.
	PrivateDnsName *string

	// The IPv4 address of the network interface within the subnet.
	PrivateIpAddress *string

	// The private IPv4 addresses associated with the network interface.
	PrivateIpAddresses []NetworkInterfacePrivateIpAddress

	// The alias or Amazon Web Services account ID of the principal or service that
	// created the network interface.
	RequesterId *string

	// Indicates whether the network interface is being managed by Amazon Web Services.
	RequesterManaged *bool

	// Indicates whether source/destination checking is enabled.
	SourceDestCheck *bool

	// The status of the network interface.
	Status NetworkInterfaceStatus

	// The ID of the subnet.
	SubnetId *string

	// Any tags assigned to the network interface.
	TagSet []Tag

	// The ID of the VPC.
	VpcId *string
	// contains filtered or unexported fields
}

Describes a network interface.

type NetworkInterfaceAssociation

type NetworkInterfaceAssociation struct {

	// The allocation ID.
	AllocationId *string

	// The association ID.
	AssociationId *string

	// The carrier IP address associated with the network interface.
	//
	// This option is only available when the network interface is in a subnet which
	// is associated with a Wavelength Zone.
	CarrierIp *string

	// The customer-owned IP address associated with the network interface.
	CustomerOwnedIp *string

	// The ID of the Elastic IP address owner.
	IpOwnerId *string

	// The public DNS name.
	PublicDnsName *string

	// The address of the Elastic IP address bound to the network interface.
	PublicIp *string
	// contains filtered or unexported fields
}

Describes association information for an Elastic IP address (IPv4 only), or a Carrier IP address (for a network interface which resides in a subnet in a Wavelength Zone).

type NetworkInterfaceAttachment

type NetworkInterfaceAttachment struct {

	// The timestamp indicating when the attachment initiated.
	AttachTime *time.Time

	// The ID of the network interface attachment.
	AttachmentId *string

	// Indicates whether the network interface is deleted when the instance is
	// terminated.
	DeleteOnTermination *bool

	// The device index of the network interface attachment on the instance.
	DeviceIndex *int32

	// Configures ENA Express for the network interface that this action attaches to
	// the instance.
	EnaSrdSpecification *AttachmentEnaSrdSpecification

	// The ID of the instance.
	InstanceId *string

	// The Amazon Web Services account ID of the owner of the instance.
	InstanceOwnerId *string

	// The index of the network card.
	NetworkCardIndex *int32

	// The attachment state.
	Status AttachmentStatus
	// contains filtered or unexported fields
}

Describes a network interface attachment.

type NetworkInterfaceAttachmentChanges

type NetworkInterfaceAttachmentChanges struct {

	// The ID of the network interface attachment.
	AttachmentId *string

	// Indicates whether the network interface is deleted when the instance is
	// terminated.
	DeleteOnTermination *bool
	// contains filtered or unexported fields
}

Describes an attachment change.

type NetworkInterfaceAttribute

type NetworkInterfaceAttribute string
const (
	NetworkInterfaceAttributeDescription              NetworkInterfaceAttribute = "description"
	NetworkInterfaceAttributeGroupSet                 NetworkInterfaceAttribute = "groupSet"
	NetworkInterfaceAttributeSourceDestCheck          NetworkInterfaceAttribute = "sourceDestCheck"
	NetworkInterfaceAttributeAttachment               NetworkInterfaceAttribute = "attachment"
	NetworkInterfaceAttributeAssociatePublicIpAddress NetworkInterfaceAttribute = "associatePublicIpAddress"
)

Enum values for NetworkInterfaceAttribute

func (NetworkInterfaceAttribute) Values added in v0.29.0

Values returns all known values for NetworkInterfaceAttribute. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type NetworkInterfaceCount added in v1.21.0

type NetworkInterfaceCount struct {

	// The maximum number of network interfaces. If this parameter is not specified,
	// there is no maximum limit.
	Max *int32

	// The minimum number of network interfaces. If this parameter is not specified,
	// there is no minimum limit.
	Min *int32
	// contains filtered or unexported fields
}

The minimum and maximum number of network interfaces.

type NetworkInterfaceCountRequest added in v1.21.0

type NetworkInterfaceCountRequest struct {

	// The maximum number of network interfaces. To specify no maximum limit, omit
	// this parameter.
	Max *int32

	// The minimum number of network interfaces. To specify no minimum limit, omit
	// this parameter.
	Min *int32
	// contains filtered or unexported fields
}

The minimum and maximum number of network interfaces.

type NetworkInterfaceCreationType

type NetworkInterfaceCreationType string
const (
	NetworkInterfaceCreationTypeEfa     NetworkInterfaceCreationType = "efa"
	NetworkInterfaceCreationTypeEfaOnly NetworkInterfaceCreationType = "efa-only"
	NetworkInterfaceCreationTypeBranch  NetworkInterfaceCreationType = "branch"
	NetworkInterfaceCreationTypeTrunk   NetworkInterfaceCreationType = "trunk"
)

Enum values for NetworkInterfaceCreationType

func (NetworkInterfaceCreationType) Values added in v0.29.0

Values returns all known values for NetworkInterfaceCreationType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type NetworkInterfaceIpv6Address

type NetworkInterfaceIpv6Address struct {

	// The IPv6 address.
	Ipv6Address *string

	// Determines if an IPv6 address associated with a network interface is the
	// primary IPv6 address. When you enable an IPv6 GUA address to be a primary IPv6,
	// the first IPv6 GUA will be made the primary IPv6 address until the instance is
	// terminated or the network interface is detached. For more information, see [ModifyNetworkInterfaceAttribute].
	//
	// [ModifyNetworkInterfaceAttribute]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ModifyNetworkInterfaceAttribute.html
	IsPrimaryIpv6 *bool
	// contains filtered or unexported fields
}

Describes an IPv6 address associated with a network interface.

type NetworkInterfacePermission

type NetworkInterfacePermission struct {

	// The Amazon Web Services account ID.
	AwsAccountId *string

	// The Amazon Web Services service.
	AwsService *string

	// The ID of the network interface.
	NetworkInterfaceId *string

	// The ID of the network interface permission.
	NetworkInterfacePermissionId *string

	// The type of permission.
	Permission InterfacePermissionType

	// Information about the state of the permission.
	PermissionState *NetworkInterfacePermissionState
	// contains filtered or unexported fields
}

Describes a permission for a network interface.

type NetworkInterfacePermissionState

type NetworkInterfacePermissionState struct {

	// The state of the permission.
	State NetworkInterfacePermissionStateCode

	// A status message, if applicable.
	StatusMessage *string
	// contains filtered or unexported fields
}

Describes the state of a network interface permission.

type NetworkInterfacePermissionStateCode

type NetworkInterfacePermissionStateCode string
const (
	NetworkInterfacePermissionStateCodePending  NetworkInterfacePermissionStateCode = "pending"
	NetworkInterfacePermissionStateCodeGranted  NetworkInterfacePermissionStateCode = "granted"
	NetworkInterfacePermissionStateCodeRevoking NetworkInterfacePermissionStateCode = "revoking"
	NetworkInterfacePermissionStateCodeRevoked  NetworkInterfacePermissionStateCode = "revoked"
)

Enum values for NetworkInterfacePermissionStateCode

func (NetworkInterfacePermissionStateCode) Values added in v0.29.0

Values returns all known values for NetworkInterfacePermissionStateCode. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type NetworkInterfacePrivateIpAddress

type NetworkInterfacePrivateIpAddress struct {

	// The association information for an Elastic IP address (IPv4) associated with
	// the network interface.
	Association *NetworkInterfaceAssociation

	// Indicates whether this IPv4 address is the primary private IPv4 address of the
	// network interface.
	Primary *bool

	// The private DNS name.
	PrivateDnsName *string

	// The private IPv4 address.
	PrivateIpAddress *string
	// contains filtered or unexported fields
}

Describes the private IPv4 address of a network interface.

type NetworkInterfaceStatus

type NetworkInterfaceStatus string
const (
	NetworkInterfaceStatusAvailable  NetworkInterfaceStatus = "available"
	NetworkInterfaceStatusAssociated NetworkInterfaceStatus = "associated"
	NetworkInterfaceStatusAttaching  NetworkInterfaceStatus = "attaching"
	NetworkInterfaceStatusInUse      NetworkInterfaceStatus = "in-use"
	NetworkInterfaceStatusDetaching  NetworkInterfaceStatus = "detaching"
)

Enum values for NetworkInterfaceStatus

func (NetworkInterfaceStatus) Values added in v0.29.0

Values returns all known values for NetworkInterfaceStatus. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type NetworkInterfaceType

type NetworkInterfaceType string
const (
	NetworkInterfaceTypeInterface                     NetworkInterfaceType = "interface"
	NetworkInterfaceTypeNatGateway                    NetworkInterfaceType = "natGateway"
	NetworkInterfaceTypeEfa                           NetworkInterfaceType = "efa"
	NetworkInterfaceTypeEfaOnly                       NetworkInterfaceType = "efa-only"
	NetworkInterfaceTypeTrunk                         NetworkInterfaceType = "trunk"
	NetworkInterfaceTypeLoadBalancer                  NetworkInterfaceType = "load_balancer"
	NetworkInterfaceTypeNetworkLoadBalancer           NetworkInterfaceType = "network_load_balancer"
	NetworkInterfaceTypeVpcEndpoint                   NetworkInterfaceType = "vpc_endpoint"
	NetworkInterfaceTypeBranch                        NetworkInterfaceType = "branch"
	NetworkInterfaceTypeTransitGateway                NetworkInterfaceType = "transit_gateway"
	NetworkInterfaceTypeLambda                        NetworkInterfaceType = "lambda"
	NetworkInterfaceTypeQuicksight                    NetworkInterfaceType = "quicksight"
	NetworkInterfaceTypeGlobalAcceleratorManaged      NetworkInterfaceType = "global_accelerator_managed"
	NetworkInterfaceTypeApiGatewayManaged             NetworkInterfaceType = "api_gateway_managed"
	NetworkInterfaceTypeGatewayLoadBalancer           NetworkInterfaceType = "gateway_load_balancer"
	NetworkInterfaceTypeGatewayLoadBalancerEndpoint   NetworkInterfaceType = "gateway_load_balancer_endpoint"
	NetworkInterfaceTypeIotRulesManaged               NetworkInterfaceType = "iot_rules_managed"
	NetworkInterfaceTypeAwsCodestarConnectionsManaged NetworkInterfaceType = "aws_codestar_connections_managed"
)

Enum values for NetworkInterfaceType

func (NetworkInterfaceType) Values added in v0.29.0

Values returns all known values for NetworkInterfaceType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type NeuronDeviceCoreInfo added in v1.151.0

type NeuronDeviceCoreInfo struct {

	// The number of cores available to the neuron accelerator.
	Count *int32

	// The version of the neuron accelerator.
	Version *int32
	// contains filtered or unexported fields
}

Describes the cores available to the neuron accelerator.

type NeuronDeviceInfo added in v1.151.0

type NeuronDeviceInfo struct {

	// Describes the cores available to each neuron accelerator.
	CoreInfo *NeuronDeviceCoreInfo

	// The number of neuron accelerators for the instance type.
	Count *int32

	// Describes the memory available to each neuron accelerator.
	MemoryInfo *NeuronDeviceMemoryInfo

	// The name of the neuron accelerator.
	Name *string
	// contains filtered or unexported fields
}

Describes the neuron accelerators for the instance type.

type NeuronDeviceMemoryInfo added in v1.151.0

type NeuronDeviceMemoryInfo struct {

	// The size of the memory available to the neuron accelerator, in MiB.
	SizeInMiB *int32
	// contains filtered or unexported fields
}

Describes the memory available to the neuron accelerator.

type NeuronInfo added in v1.151.0

type NeuronInfo struct {

	// Describes the neuron accelerators for the instance type.
	NeuronDevices []NeuronDeviceInfo

	// The total size of the memory for the neuron accelerators for the instance type,
	// in MiB.
	TotalNeuronDeviceMemoryInMiB *int32
	// contains filtered or unexported fields
}

Describes the neuron accelerators for the instance type.

type NewDhcpConfiguration

type NewDhcpConfiguration struct {

	// The name of a DHCP option.
	Key *string

	// The values for the DHCP option.
	Values []string
	// contains filtered or unexported fields
}

Describes a DHCP configuration option.

type NitroEnclavesSupport added in v1.103.0

type NitroEnclavesSupport string
const (
	NitroEnclavesSupportUnsupported NitroEnclavesSupport = "unsupported"
	NitroEnclavesSupportSupported   NitroEnclavesSupport = "supported"
)

Enum values for NitroEnclavesSupport

func (NitroEnclavesSupport) Values added in v1.103.0

Values returns all known values for NitroEnclavesSupport. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type NitroTpmInfo added in v1.105.0

type NitroTpmInfo struct {

	// Indicates the supported NitroTPM versions.
	SupportedVersions []string
	// contains filtered or unexported fields
}

Describes the supported NitroTPM versions for the instance type.

type NitroTpmSupport added in v1.105.0

type NitroTpmSupport string
const (
	NitroTpmSupportUnsupported NitroTpmSupport = "unsupported"
	NitroTpmSupportSupported   NitroTpmSupport = "supported"
)

Enum values for NitroTpmSupport

func (NitroTpmSupport) Values added in v1.105.0

func (NitroTpmSupport) Values() []NitroTpmSupport

Values returns all known values for NitroTpmSupport. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type OfferingClassType

type OfferingClassType string
const (
	OfferingClassTypeStandard    OfferingClassType = "standard"
	OfferingClassTypeConvertible OfferingClassType = "convertible"
)

Enum values for OfferingClassType

func (OfferingClassType) Values added in v0.29.0

Values returns all known values for OfferingClassType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type OfferingTypeValues

type OfferingTypeValues string
const (
	OfferingTypeValuesHeavyUtilization  OfferingTypeValues = "Heavy Utilization"
	OfferingTypeValuesMediumUtilization OfferingTypeValues = "Medium Utilization"
	OfferingTypeValuesLightUtilization  OfferingTypeValues = "Light Utilization"
	OfferingTypeValuesNoUpfront         OfferingTypeValues = "No Upfront"
	OfferingTypeValuesPartialUpfront    OfferingTypeValues = "Partial Upfront"
	OfferingTypeValuesAllUpfront        OfferingTypeValues = "All Upfront"
)

Enum values for OfferingTypeValues

func (OfferingTypeValues) Values added in v0.29.0

Values returns all known values for OfferingTypeValues. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type OidcOptions added in v1.74.0

type OidcOptions struct {

	// The OIDC authorization endpoint.
	AuthorizationEndpoint *string

	// The client identifier.
	ClientId *string

	// The client secret.
	ClientSecret *string

	// The OIDC issuer.
	Issuer *string

	// The OpenID Connect (OIDC) scope specified.
	Scope *string

	// The OIDC token endpoint.
	TokenEndpoint *string

	// The OIDC user info endpoint.
	UserInfoEndpoint *string
	// contains filtered or unexported fields
}

Describes the options for an OpenID Connect-compatible user-identity trust provider.

type OnDemandAllocationStrategy

type OnDemandAllocationStrategy string
const (
	OnDemandAllocationStrategyLowestPrice OnDemandAllocationStrategy = "lowestPrice"
	OnDemandAllocationStrategyPrioritized OnDemandAllocationStrategy = "prioritized"
)

Enum values for OnDemandAllocationStrategy

func (OnDemandAllocationStrategy) Values added in v0.29.0

Values returns all known values for OnDemandAllocationStrategy. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type OnDemandOptions

type OnDemandOptions struct {

	// The strategy that determines the order of the launch template overrides to use
	// in fulfilling On-Demand capacity.
	//
	// lowest-price - EC2 Fleet uses price to determine the order, launching the
	// lowest price first.
	//
	// prioritized - EC2 Fleet uses the priority that you assigned to each launch
	// template override, launching the highest priority first.
	//
	// Default: lowest-price
	AllocationStrategy FleetOnDemandAllocationStrategy

	// The strategy for using unused Capacity Reservations for fulfilling On-Demand
	// capacity.
	//
	// Supported only for fleets of type instant .
	CapacityReservationOptions *CapacityReservationOptions

	// The maximum amount per hour for On-Demand Instances that you're willing to pay.
	//
	// If your fleet includes T instances that are configured as unlimited , and if
	// their average CPU usage exceeds the baseline utilization, you will incur a
	// charge for surplus credits. The maxTotalPrice does not account for surplus
	// credits, and, if you use surplus credits, your final cost might be higher than
	// what you specified for maxTotalPrice . For more information, see [Surplus credits can incur charges] in the Amazon
	// EC2 User Guide.
	//
	// [Surplus credits can incur charges]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances-unlimited-mode-concepts.html#unlimited-mode-surplus-credits
	MaxTotalPrice *string

	// The minimum target capacity for On-Demand Instances in the fleet. If this
	// minimum capacity isn't reached, no instances are launched.
	//
	// Constraints: Maximum value of 1000 . Supported only for fleets of type instant .
	//
	// At least one of the following must be specified: SingleAvailabilityZone |
	// SingleInstanceType
	MinTargetCapacity *int32

	// Indicates that the fleet launches all On-Demand Instances into a single
	// Availability Zone.
	//
	// Supported only for fleets of type instant .
	SingleAvailabilityZone *bool

	// Indicates that the fleet uses a single instance type to launch all On-Demand
	// Instances in the fleet.
	//
	// Supported only for fleets of type instant .
	SingleInstanceType *bool
	// contains filtered or unexported fields
}

Describes the configuration of On-Demand Instances in an EC2 Fleet.

type OnDemandOptionsRequest

type OnDemandOptionsRequest struct {

	// The strategy that determines the order of the launch template overrides to use
	// in fulfilling On-Demand capacity.
	//
	// lowest-price - EC2 Fleet uses price to determine the order, launching the
	// lowest price first.
	//
	// prioritized - EC2 Fleet uses the priority that you assigned to each launch
	// template override, launching the highest priority first.
	//
	// Default: lowest-price
	AllocationStrategy FleetOnDemandAllocationStrategy

	// The strategy for using unused Capacity Reservations for fulfilling On-Demand
	// capacity.
	//
	// Supported only for fleets of type instant .
	CapacityReservationOptions *CapacityReservationOptionsRequest

	// The maximum amount per hour for On-Demand Instances that you're willing to pay.
	//
	// If your fleet includes T instances that are configured as unlimited , and if
	// their average CPU usage exceeds the baseline utilization, you will incur a
	// charge for surplus credits. The MaxTotalPrice does not account for surplus
	// credits, and, if you use surplus credits, your final cost might be higher than
	// what you specified for MaxTotalPrice . For more information, see [Surplus credits can incur charges] in the Amazon
	// EC2 User Guide.
	//
	// [Surplus credits can incur charges]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances-unlimited-mode-concepts.html#unlimited-mode-surplus-credits
	MaxTotalPrice *string

	// The minimum target capacity for On-Demand Instances in the fleet. If this
	// minimum capacity isn't reached, no instances are launched.
	//
	// Constraints: Maximum value of 1000 . Supported only for fleets of type instant .
	//
	// At least one of the following must be specified: SingleAvailabilityZone |
	// SingleInstanceType
	MinTargetCapacity *int32

	// Indicates that the fleet launches all On-Demand Instances into a single
	// Availability Zone.
	//
	// Supported only for fleets of type instant .
	SingleAvailabilityZone *bool

	// Indicates that the fleet uses a single instance type to launch all On-Demand
	// Instances in the fleet.
	//
	// Supported only for fleets of type instant .
	SingleInstanceType *bool
	// contains filtered or unexported fields
}

Describes the configuration of On-Demand Instances in an EC2 Fleet.

type OperationType

type OperationType string
const (
	OperationTypeAdd    OperationType = "add"
	OperationTypeRemove OperationType = "remove"
)

Enum values for OperationType

func (OperationType) Values added in v0.29.0

func (OperationType) Values() []OperationType

Values returns all known values for OperationType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type OperatorRequest added in v1.190.0

type OperatorRequest struct {

	// The service provider that manages the resource.
	Principal *string
	// contains filtered or unexported fields
}

The service provider that manages the resource.

type OperatorResponse added in v1.190.0

type OperatorResponse struct {

	// If true , the resource is managed by an service provider.
	Managed *bool

	// If managed is true , then the principal is returned. The principal is the
	// service provider that manages the resource.
	Principal *string
	// contains filtered or unexported fields
}

Describes whether the resource is managed by an service provider and, if so, describes the service provider that manages it.

type PacketHeaderStatement added in v1.25.0

type PacketHeaderStatement struct {

	// The destination addresses.
	DestinationAddresses []string

	// The destination ports.
	DestinationPorts []string

	// The destination prefix lists.
	DestinationPrefixLists []string

	// The protocols.
	Protocols []Protocol

	// The source addresses.
	SourceAddresses []string

	// The source ports.
	SourcePorts []string

	// The source prefix lists.
	SourcePrefixLists []string
	// contains filtered or unexported fields
}

Describes a packet header statement.

type PacketHeaderStatementRequest added in v1.25.0

type PacketHeaderStatementRequest struct {

	// The destination addresses.
	DestinationAddresses []string

	// The destination ports.
	DestinationPorts []string

	// The destination prefix lists.
	DestinationPrefixLists []string

	// The protocols.
	Protocols []Protocol

	// The source addresses.
	SourceAddresses []string

	// The source ports.
	SourcePorts []string

	// The source prefix lists.
	SourcePrefixLists []string
	// contains filtered or unexported fields
}

Describes a packet header statement.

type PartitionLoadFrequency added in v1.4.0

type PartitionLoadFrequency string
const (
	PartitionLoadFrequencyNone    PartitionLoadFrequency = "none"
	PartitionLoadFrequencyDaily   PartitionLoadFrequency = "daily"
	PartitionLoadFrequencyWeekly  PartitionLoadFrequency = "weekly"
	PartitionLoadFrequencyMonthly PartitionLoadFrequency = "monthly"
)

Enum values for PartitionLoadFrequency

func (PartitionLoadFrequency) Values added in v1.4.0

Values returns all known values for PartitionLoadFrequency. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type PathComponent added in v0.31.0

type PathComponent struct {

	// The network ACL rule.
	AclRule *AnalysisAclRule

	// The additional details.
	AdditionalDetails []AdditionalDetail

	// The resource to which the path component is attached.
	AttachedTo *AnalysisComponent

	// The component.
	Component *AnalysisComponent

	// The destination VPC.
	DestinationVpc *AnalysisComponent

	// The load balancer listener.
	ElasticLoadBalancerListener *AnalysisComponent

	// The explanation codes.
	Explanations []Explanation

	// The Network Firewall stateful rule.
	FirewallStatefulRule *FirewallStatefulRule

	// The Network Firewall stateless rule.
	FirewallStatelessRule *FirewallStatelessRule

	// The inbound header.
	InboundHeader *AnalysisPacketHeader

	// The outbound header.
	OutboundHeader *AnalysisPacketHeader

	// The route table route.
	RouteTableRoute *AnalysisRouteTableRoute

	// The security group rule.
	SecurityGroupRule *AnalysisSecurityGroupRule

	// The sequence number.
	SequenceNumber *int32

	// The name of the VPC endpoint service.
	ServiceName *string

	// The source VPC.
	SourceVpc *AnalysisComponent

	// The subnet.
	Subnet *AnalysisComponent

	// The transit gateway.
	TransitGateway *AnalysisComponent

	// The route in a transit gateway route table.
	TransitGatewayRouteTableRoute *TransitGatewayRouteTableRoute

	// The component VPC.
	Vpc *AnalysisComponent
	// contains filtered or unexported fields
}

Describes a path component.

type PathFilter added in v1.91.0

type PathFilter struct {

	// The destination IPv4 address.
	DestinationAddress *string

	// The destination port range.
	DestinationPortRange *FilterPortRange

	// The source IPv4 address.
	SourceAddress *string

	// The source port range.
	SourcePortRange *FilterPortRange
	// contains filtered or unexported fields
}

Describes a set of filters for a path analysis. Use path filters to scope the analysis when there can be multiple resulting paths.

type PathRequestFilter added in v1.91.0

type PathRequestFilter struct {

	// The destination IPv4 address.
	DestinationAddress *string

	// The destination port range.
	DestinationPortRange *RequestFilterPortRange

	// The source IPv4 address.
	SourceAddress *string

	// The source port range.
	SourcePortRange *RequestFilterPortRange
	// contains filtered or unexported fields
}

Describes a set of filters for a path analysis. Use path filters to scope the analysis when there can be multiple resulting paths.

type PathStatement added in v1.25.0

type PathStatement struct {

	// The packet header statement.
	PacketHeaderStatement *PacketHeaderStatement

	// The resource statement.
	ResourceStatement *ResourceStatement
	// contains filtered or unexported fields
}

Describes a path statement.

type PathStatementRequest added in v1.25.0

type PathStatementRequest struct {

	// The packet header statement.
	PacketHeaderStatement *PacketHeaderStatementRequest

	// The resource statement.
	ResourceStatement *ResourceStatementRequest
	// contains filtered or unexported fields
}

Describes a path statement.

type PayerResponsibility added in v1.27.0

type PayerResponsibility string
const (
	PayerResponsibilityServiceOwner PayerResponsibility = "ServiceOwner"
)

Enum values for PayerResponsibility

func (PayerResponsibility) Values added in v1.27.0

Values returns all known values for PayerResponsibility. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type PaymentOption

type PaymentOption string
const (
	PaymentOptionAllUpfront     PaymentOption = "AllUpfront"
	PaymentOptionPartialUpfront PaymentOption = "PartialUpfront"
	PaymentOptionNoUpfront      PaymentOption = "NoUpfront"
)

Enum values for PaymentOption

func (PaymentOption) Values added in v0.29.0

func (PaymentOption) Values() []PaymentOption

Values returns all known values for PaymentOption. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type PciId

type PciId struct {

	// The ID of the device.
	DeviceId *string

	// The ID of the subsystem.
	SubsystemId *string

	// The ID of the vendor for the subsystem.
	SubsystemVendorId *string

	// The ID of the vendor.
	VendorId *string
	// contains filtered or unexported fields
}

Describes the data that identifies an Amazon FPGA image (AFI) on the PCI bus.

type PeeringAttachmentStatus

type PeeringAttachmentStatus struct {

	// The status code.
	Code *string

	// The status message, if applicable.
	Message *string
	// contains filtered or unexported fields
}

The status of the transit gateway peering attachment.

type PeeringConnectionOptions

type PeeringConnectionOptions struct {

	// If true, the public DNS hostnames of instances in the specified VPC resolve to
	// private IP addresses when queried from instances in the peer VPC.
	AllowDnsResolutionFromRemoteVpc *bool

	// Deprecated.
	AllowEgressFromLocalClassicLinkToRemoteVpc *bool

	// Deprecated.
	AllowEgressFromLocalVpcToRemoteClassicLink *bool
	// contains filtered or unexported fields
}

Describes the VPC peering connection options.

type PeeringConnectionOptionsRequest

type PeeringConnectionOptionsRequest struct {

	// If true, enables a local VPC to resolve public DNS hostnames to private IP
	// addresses when queried from instances in the peer VPC.
	AllowDnsResolutionFromRemoteVpc *bool

	// Deprecated.
	AllowEgressFromLocalClassicLinkToRemoteVpc *bool

	// Deprecated.
	AllowEgressFromLocalVpcToRemoteClassicLink *bool
	// contains filtered or unexported fields
}

The VPC peering connection options.

type PeeringTgwInfo

type PeeringTgwInfo struct {

	// The ID of the core network where the transit gateway peer is located.
	CoreNetworkId *string

	// The ID of the Amazon Web Services account that owns the transit gateway.
	OwnerId *string

	// The Region of the transit gateway.
	Region *string

	// The ID of the transit gateway.
	TransitGatewayId *string
	// contains filtered or unexported fields
}

Information about the transit gateway in the peering attachment.

type PerformanceFactorReference added in v1.192.0

type PerformanceFactorReference struct {

	// The instance family to use as a baseline reference.
	//
	// Ensure that you specify the correct value for the instance family. The instance
	// family is everything before the period ( . ) in the instance type name. For
	// example, in the instance type c6i.large , the instance family is c6i , not c6 .
	// For more information, see [Amazon EC2 instance type naming conventions]in Amazon EC2 Instance Types.
	//
	// The following instance families are not supported for performance protection:
	//
	//   - c1
	//
	//   - g3 | g3s
	//
	//   - hpc7g
	//
	//   - m1 | m2
	//
	//   - mac1 | mac2 | mac2-m1ultra | mac2-m2 | mac2-m2pro
	//
	//   - p3dn | p4d | p5
	//
	//   - t1
	//
	//   - u-12tb1 | u-18tb1 | u-24tb1 | u-3tb1 | u-6tb1 | u-9tb1 | u7i-12tb |
	//   u7in-16tb | u7in-24tb | u7in-32tb
	//
	// If you enable performance protection by specifying a supported instance family,
	// the returned instance types will exclude the above unsupported instance
	// families.
	//
	// If you specify an unsupported instance family as a value for baseline
	// performance, the API returns an empty response for and an exception for , , ,
	// and .
	//
	// [Amazon EC2 instance type naming conventions]: https://docs.aws.amazon.com/ec2/latest/instancetypes/instance-type-names.html
	InstanceFamily *string
	// contains filtered or unexported fields
}

Specify an instance family to use as the baseline reference for CPU performance. All instance types that match your specified attributes will be compared against the CPU performance of the referenced instance family, regardless of CPU manufacturer or architecture.

Currently, only one instance family can be specified in the list.

type PerformanceFactorReferenceRequest added in v1.192.0

type PerformanceFactorReferenceRequest struct {

	// The instance family to use as a baseline reference.
	//
	// Ensure that you specify the correct value for the instance family. The instance
	// family is everything before the period ( . ) in the instance type name. For
	// example, in the instance type c6i.large , the instance family is c6i , not c6 .
	// For more information, see [Amazon EC2 instance type naming conventions]in Amazon EC2 Instance Types.
	//
	// The following instance families are not supported for performance protection:
	//
	//   - c1
	//
	//   - g3 | g3s
	//
	//   - hpc7g
	//
	//   - m1 | m2
	//
	//   - mac1 | mac2 | mac2-m1ultra | mac2-m2 | mac2-m2pro
	//
	//   - p3dn | p4d | p5
	//
	//   - t1
	//
	//   - u-12tb1 | u-18tb1 | u-24tb1 | u-3tb1 | u-6tb1 | u-9tb1 | u7i-12tb |
	//   u7in-16tb | u7in-24tb | u7in-32tb
	//
	// If you enable performance protection by specifying a supported instance family,
	// the returned instance types will exclude the above unsupported instance
	// families.
	//
	// If you specify an unsupported instance family as a value for baseline
	// performance, the API returns an empty response for and an exception for , , ,
	// and .
	//
	// [Amazon EC2 instance type naming conventions]: https://docs.aws.amazon.com/ec2/latest/instancetypes/instance-type-names.html
	InstanceFamily *string
	// contains filtered or unexported fields
}

Specify an instance family to use as the baseline reference for CPU performance. All instance types that match your specified attributes will be compared against the CPU performance of the referenced instance family, regardless of CPU manufacturer or architecture.

Currently, only one instance family can be specified in the list.

type PeriodType added in v1.73.0

type PeriodType string
const (
	PeriodTypeFiveMinutes    PeriodType = "five-minutes"
	PeriodTypeFifteenMinutes PeriodType = "fifteen-minutes"
	PeriodTypeOneHour        PeriodType = "one-hour"
	PeriodTypeThreeHours     PeriodType = "three-hours"
	PeriodTypeOneDay         PeriodType = "one-day"
	PeriodTypeOneWeek        PeriodType = "one-week"
)

Enum values for PeriodType

func (PeriodType) Values added in v1.73.0

func (PeriodType) Values() []PeriodType

Values returns all known values for PeriodType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type PermissionGroup

type PermissionGroup string
const (
	PermissionGroupAll PermissionGroup = "all"
)

Enum values for PermissionGroup

func (PermissionGroup) Values added in v0.29.0

func (PermissionGroup) Values() []PermissionGroup

Values returns all known values for PermissionGroup. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type Phase1DHGroupNumbersListValue

type Phase1DHGroupNumbersListValue struct {

	// The Diffie-Hellmann group number.
	Value *int32
	// contains filtered or unexported fields
}

The Diffie-Hellmann group number for phase 1 IKE negotiations.

type Phase1DHGroupNumbersRequestListValue

type Phase1DHGroupNumbersRequestListValue struct {

	// The Diffie-Hellmann group number.
	Value *int32
	// contains filtered or unexported fields
}

Specifies a Diffie-Hellman group number for the VPN tunnel for phase 1 IKE negotiations.

type Phase1EncryptionAlgorithmsListValue

type Phase1EncryptionAlgorithmsListValue struct {

	// The value for the encryption algorithm.
	Value *string
	// contains filtered or unexported fields
}

The encryption algorithm for phase 1 IKE negotiations.

type Phase1EncryptionAlgorithmsRequestListValue

type Phase1EncryptionAlgorithmsRequestListValue struct {

	// The value for the encryption algorithm.
	Value *string
	// contains filtered or unexported fields
}

Specifies the encryption algorithm for the VPN tunnel for phase 1 IKE negotiations.

type Phase1IntegrityAlgorithmsListValue

type Phase1IntegrityAlgorithmsListValue struct {

	// The value for the integrity algorithm.
	Value *string
	// contains filtered or unexported fields
}

The integrity algorithm for phase 1 IKE negotiations.

type Phase1IntegrityAlgorithmsRequestListValue

type Phase1IntegrityAlgorithmsRequestListValue struct {

	// The value for the integrity algorithm.
	Value *string
	// contains filtered or unexported fields
}

Specifies the integrity algorithm for the VPN tunnel for phase 1 IKE negotiations.

type Phase2DHGroupNumbersListValue

type Phase2DHGroupNumbersListValue struct {

	// The Diffie-Hellmann group number.
	Value *int32
	// contains filtered or unexported fields
}

The Diffie-Hellmann group number for phase 2 IKE negotiations.

type Phase2DHGroupNumbersRequestListValue

type Phase2DHGroupNumbersRequestListValue struct {

	// The Diffie-Hellmann group number.
	Value *int32
	// contains filtered or unexported fields
}

Specifies a Diffie-Hellman group number for the VPN tunnel for phase 2 IKE negotiations.

type Phase2EncryptionAlgorithmsListValue

type Phase2EncryptionAlgorithmsListValue struct {

	// The encryption algorithm.
	Value *string
	// contains filtered or unexported fields
}

The encryption algorithm for phase 2 IKE negotiations.

type Phase2EncryptionAlgorithmsRequestListValue

type Phase2EncryptionAlgorithmsRequestListValue struct {

	// The encryption algorithm.
	Value *string
	// contains filtered or unexported fields
}

Specifies the encryption algorithm for the VPN tunnel for phase 2 IKE negotiations.

type Phase2IntegrityAlgorithmsListValue

type Phase2IntegrityAlgorithmsListValue struct {

	// The integrity algorithm.
	Value *string
	// contains filtered or unexported fields
}

The integrity algorithm for phase 2 IKE negotiations.

type Phase2IntegrityAlgorithmsRequestListValue

type Phase2IntegrityAlgorithmsRequestListValue struct {

	// The integrity algorithm.
	Value *string
	// contains filtered or unexported fields
}

Specifies the integrity algorithm for the VPN tunnel for phase 2 IKE negotiations.

type PhcSupport added in v1.161.0

type PhcSupport string
const (
	PhcSupportUnsupported PhcSupport = "unsupported"
	PhcSupportSupported   PhcSupport = "supported"
)

Enum values for PhcSupport

func (PhcSupport) Values added in v1.161.0

func (PhcSupport) Values() []PhcSupport

Values returns all known values for PhcSupport. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type Placement

type Placement struct {

	// The affinity setting for the instance on the Dedicated Host.
	//
	// This parameter is not supported for [CreateFleet] or [ImportInstance].
	//
	// [CreateFleet]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateFleet
	// [ImportInstance]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ImportInstance.html
	Affinity *string

	// The Availability Zone of the instance.
	//
	// If not specified, an Availability Zone will be automatically chosen for you
	// based on the load balancing criteria for the Region.
	//
	// This parameter is not supported for [CreateFleet].
	//
	// [CreateFleet]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateFleet
	AvailabilityZone *string

	// The ID of the placement group that the instance is in. If you specify GroupId ,
	// you can't specify GroupName .
	GroupId *string

	// The name of the placement group that the instance is in. If you specify
	// GroupName , you can't specify GroupId .
	GroupName *string

	// The ID of the Dedicated Host on which the instance resides.
	//
	// This parameter is not supported for [CreateFleet] or [ImportInstance].
	//
	// [CreateFleet]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateFleet
	// [ImportInstance]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ImportInstance.html
	HostId *string

	// The ARN of the host resource group in which to launch the instances.
	//
	// If you specify this parameter, either omit the Tenancy parameter or set it to
	// host .
	//
	// This parameter is not supported for [CreateFleet].
	//
	// [CreateFleet]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateFleet
	HostResourceGroupArn *string

	// The number of the partition that the instance is in. Valid only if the
	// placement group strategy is set to partition .
	//
	// This parameter is not supported for [CreateFleet].
	//
	// [CreateFleet]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateFleet
	PartitionNumber *int32

	// Reserved for future use.
	SpreadDomain *string

	// The tenancy of the instance. An instance with a tenancy of dedicated runs on
	// single-tenant hardware.
	//
	// This parameter is not supported for [CreateFleet]. The host tenancy is not supported for [ImportInstance] or
	// for T3 instances that are configured for the unlimited CPU credit option.
	//
	// [CreateFleet]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateFleet
	// [ImportInstance]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ImportInstance.html
	Tenancy Tenancy
	// contains filtered or unexported fields
}

Describes the placement of an instance.

type PlacementGroup

type PlacementGroup struct {

	// The Amazon Resource Name (ARN) of the placement group.
	GroupArn *string

	// The ID of the placement group.
	GroupId *string

	// The name of the placement group.
	GroupName *string

	// The number of partitions. Valid only if strategy is set to partition .
	PartitionCount *int32

	// The spread level for the placement group. Only Outpost placement groups can be
	// spread across hosts.
	SpreadLevel SpreadLevel

	// The state of the placement group.
	State PlacementGroupState

	// The placement strategy.
	Strategy PlacementStrategy

	// Any tags applied to the placement group.
	Tags []Tag
	// contains filtered or unexported fields
}

Describes a placement group.

type PlacementGroupInfo

type PlacementGroupInfo struct {

	// The supported placement group types.
	SupportedStrategies []PlacementGroupStrategy
	// contains filtered or unexported fields
}

Describes the placement group support of the instance type.

type PlacementGroupState

type PlacementGroupState string
const (
	PlacementGroupStatePending   PlacementGroupState = "pending"
	PlacementGroupStateAvailable PlacementGroupState = "available"
	PlacementGroupStateDeleting  PlacementGroupState = "deleting"
	PlacementGroupStateDeleted   PlacementGroupState = "deleted"
)

Enum values for PlacementGroupState

func (PlacementGroupState) Values added in v0.29.0

Values returns all known values for PlacementGroupState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type PlacementGroupStrategy

type PlacementGroupStrategy string
const (
	PlacementGroupStrategyCluster   PlacementGroupStrategy = "cluster"
	PlacementGroupStrategyPartition PlacementGroupStrategy = "partition"
	PlacementGroupStrategySpread    PlacementGroupStrategy = "spread"
)

Enum values for PlacementGroupStrategy

func (PlacementGroupStrategy) Values added in v0.29.0

Values returns all known values for PlacementGroupStrategy. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type PlacementResponse

type PlacementResponse struct {

	// The name of the placement group that the instance is in.
	GroupName *string
	// contains filtered or unexported fields
}

Describes the placement of an instance.

type PlacementStrategy

type PlacementStrategy string
const (
	PlacementStrategyCluster   PlacementStrategy = "cluster"
	PlacementStrategySpread    PlacementStrategy = "spread"
	PlacementStrategyPartition PlacementStrategy = "partition"
)

Enum values for PlacementStrategy

func (PlacementStrategy) Values added in v0.29.0

Values returns all known values for PlacementStrategy. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type PlatformValues

type PlatformValues string
const (
	PlatformValuesWindows PlatformValues = "Windows"
)

Enum values for PlatformValues

func (PlatformValues) Values added in v0.29.0

func (PlatformValues) Values() []PlatformValues

Values returns all known values for PlatformValues. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type PoolCidrBlock

type PoolCidrBlock struct {

	// The CIDR block.
	Cidr *string
	// contains filtered or unexported fields
}

Describes a CIDR block for an address pool.

type PortRange

type PortRange struct {

	// The first port in the range.
	From *int32

	// The last port in the range.
	To *int32
	// contains filtered or unexported fields
}

Describes a range of ports.

type PrefixList

type PrefixList struct {

	// The IP address range of the Amazon Web Services service.
	Cidrs []string

	// The ID of the prefix.
	PrefixListId *string

	// The name of the prefix.
	PrefixListName *string
	// contains filtered or unexported fields
}

Describes prefixes for Amazon Web Services services.

type PrefixListAssociation

type PrefixListAssociation struct {

	// The ID of the resource.
	ResourceId *string

	// The owner of the resource.
	ResourceOwner *string
	// contains filtered or unexported fields
}

Describes the resource with which a prefix list is associated.

type PrefixListEntry

type PrefixListEntry struct {

	// The CIDR block.
	Cidr *string

	// The description.
	Description *string
	// contains filtered or unexported fields
}

Describes a prefix list entry.

type PrefixListId

type PrefixListId struct {

	// A description for the security group rule that references this prefix list ID.
	//
	// Constraints: Up to 255 characters in length. Allowed characters are a-z, A-Z,
	// 0-9, spaces, and ._-:/()#,@[]+=;{}!$*
	Description *string

	// The ID of the prefix.
	PrefixListId *string
	// contains filtered or unexported fields
}

Describes a prefix list ID.

type PrefixListState

type PrefixListState string
const (
	PrefixListStateCreateInProgress  PrefixListState = "create-in-progress"
	PrefixListStateCreateComplete    PrefixListState = "create-complete"
	PrefixListStateCreateFailed      PrefixListState = "create-failed"
	PrefixListStateModifyInProgress  PrefixListState = "modify-in-progress"
	PrefixListStateModifyComplete    PrefixListState = "modify-complete"
	PrefixListStateModifyFailed      PrefixListState = "modify-failed"
	PrefixListStateRestoreInProgress PrefixListState = "restore-in-progress"
	PrefixListStateRestoreComplete   PrefixListState = "restore-complete"
	PrefixListStateRestoreFailed     PrefixListState = "restore-failed"
	PrefixListStateDeleteInProgress  PrefixListState = "delete-in-progress"
	PrefixListStateDeleteComplete    PrefixListState = "delete-complete"
	PrefixListStateDeleteFailed      PrefixListState = "delete-failed"
)

Enum values for PrefixListState

func (PrefixListState) Values added in v0.29.0

func (PrefixListState) Values() []PrefixListState

Values returns all known values for PrefixListState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type PriceSchedule

type PriceSchedule struct {

	// The current price schedule, as determined by the term remaining for the
	// Reserved Instance in the listing.
	//
	// A specific price schedule is always in effect, but only one price schedule can
	// be active at any time. Take, for example, a Reserved Instance listing that has
	// five months remaining in its term. When you specify price schedules for five
	// months and two months, this means that schedule 1, covering the first three
	// months of the remaining term, will be active during months 5, 4, and 3. Then
	// schedule 2, covering the last two months of the term, will be active for months
	// 2 and 1.
	Active *bool

	// The currency for transacting the Reserved Instance resale. At this time, the
	// only supported currency is USD .
	CurrencyCode CurrencyCodeValues

	// The fixed price for the term.
	Price *float64

	// The number of months remaining in the reservation. For example, 2 is the second
	// to the last month before the capacity reservation expires.
	Term *int64
	// contains filtered or unexported fields
}

Describes the price for a Reserved Instance.

type PriceScheduleSpecification

type PriceScheduleSpecification struct {

	// The currency for transacting the Reserved Instance resale. At this time, the
	// only supported currency is USD .
	CurrencyCode CurrencyCodeValues

	// The fixed price for the term.
	Price *float64

	// The number of months remaining in the reservation. For example, 2 is the second
	// to the last month before the capacity reservation expires.
	Term *int64
	// contains filtered or unexported fields
}

Describes the price for a Reserved Instance.

type PricingDetail

type PricingDetail struct {

	// The number of reservations available for the price.
	Count *int32

	// The price per instance.
	Price *float64
	// contains filtered or unexported fields
}

Describes a Reserved Instance offering.

type PrincipalIdFormat

type PrincipalIdFormat struct {

	// PrincipalIdFormatARN description
	Arn *string

	// PrincipalIdFormatStatuses description
	Statuses []IdFormat
	// contains filtered or unexported fields
}

PrincipalIdFormat description

type PrincipalType

type PrincipalType string
const (
	PrincipalTypeAll              PrincipalType = "All"
	PrincipalTypeService          PrincipalType = "Service"
	PrincipalTypeOrganizationUnit PrincipalType = "OrganizationUnit"
	PrincipalTypeAccount          PrincipalType = "Account"
	PrincipalTypeUser             PrincipalType = "User"
	PrincipalTypeRole             PrincipalType = "Role"
)

Enum values for PrincipalType

func (PrincipalType) Values added in v0.29.0

func (PrincipalType) Values() []PrincipalType

Values returns all known values for PrincipalType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type PrivateDnsDetails added in v0.31.0

type PrivateDnsDetails struct {

	// The private DNS name assigned to the VPC endpoint service.
	PrivateDnsName *string
	// contains filtered or unexported fields
}

Information about the Private DNS name for interface endpoints.

type PrivateDnsNameConfiguration

type PrivateDnsNameConfiguration struct {

	// The name of the record subdomain the service provider needs to create. The
	// service provider adds the value text to the name .
	Name *string

	// The verification state of the VPC endpoint service.
	//
	// >Consumers of the endpoint service can use the private name only when the state
	// is verified .
	State DnsNameState

	// The endpoint service verification type, for example TXT.
	Type *string

	// The value the service provider adds to the private DNS name domain record
	// before verification.
	Value *string
	// contains filtered or unexported fields
}

Information about the private DNS name for the service endpoint.

type PrivateDnsNameOptionsOnLaunch added in v1.24.0

type PrivateDnsNameOptionsOnLaunch struct {

	// Indicates whether to respond to DNS queries for instance hostname with DNS AAAA
	// records.
	EnableResourceNameDnsAAAARecord *bool

	// Indicates whether to respond to DNS queries for instance hostnames with DNS A
	// records.
	EnableResourceNameDnsARecord *bool

	// The type of hostname for EC2 instances. 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.
	HostnameType HostnameType
	// contains filtered or unexported fields
}

Describes the options for instance hostnames.

type PrivateDnsNameOptionsRequest added in v1.24.0

type PrivateDnsNameOptionsRequest struct {

	// Indicates whether to respond to DNS queries for instance hostnames with DNS
	// AAAA records.
	EnableResourceNameDnsAAAARecord *bool

	// Indicates whether to respond to DNS queries for instance hostnames with DNS A
	// records.
	EnableResourceNameDnsARecord *bool

	// The type of hostname for EC2 instances. 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.
	HostnameType HostnameType
	// contains filtered or unexported fields
}

Describes the options for instance hostnames.

type PrivateDnsNameOptionsResponse added in v1.24.0

type PrivateDnsNameOptionsResponse struct {

	// Indicates whether to respond to DNS queries for instance hostnames with DNS
	// AAAA records.
	EnableResourceNameDnsAAAARecord *bool

	// Indicates whether to respond to DNS queries for instance hostnames with DNS A
	// records.
	EnableResourceNameDnsARecord *bool

	// The type of hostname to assign to an instance.
	HostnameType HostnameType
	// contains filtered or unexported fields
}

Describes the options for instance hostnames.

type PrivateIpAddressSpecification

type PrivateIpAddressSpecification struct {

	// Indicates whether the private IPv4 address is the primary private IPv4 address.
	// Only one IPv4 address can be designated as primary.
	Primary *bool

	// The private IPv4 address.
	PrivateIpAddress *string
	// contains filtered or unexported fields
}

Describes a secondary private IPv4 address for a network interface.

type ProcessorInfo

type ProcessorInfo struct {

	// The manufacturer of the processor.
	Manufacturer *string

	// The architectures supported by the instance type.
	SupportedArchitectures []ArchitectureType

	// Indicates whether the instance type supports AMD SEV-SNP. If the request
	// returns amd-sev-snp , AMD SEV-SNP is supported. Otherwise, it is not supported.
	// For more information, see [AMD SEV-SNP].
	//
	// [AMD SEV-SNP]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/sev-snp.html
	SupportedFeatures []SupportedAdditionalProcessorFeature

	// The speed of the processor, in GHz.
	SustainedClockSpeedInGhz *float64
	// contains filtered or unexported fields
}

Describes the processor used by the instance type.

type ProductCode

type ProductCode struct {

	// The product code.
	ProductCodeId *string

	// The type of product code.
	ProductCodeType ProductCodeValues
	// contains filtered or unexported fields
}

Describes a product code.

type ProductCodeValues

type ProductCodeValues string
const (
	ProductCodeValuesDevpay      ProductCodeValues = "devpay"
	ProductCodeValuesMarketplace ProductCodeValues = "marketplace"
)

Enum values for ProductCodeValues

func (ProductCodeValues) Values added in v0.29.0

Values returns all known values for ProductCodeValues. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type PropagatingVgw

type PropagatingVgw struct {

	// The ID of the virtual private gateway.
	GatewayId *string
	// contains filtered or unexported fields
}

Describes a virtual private gateway propagating route.

type Protocol added in v0.31.0

type Protocol string
const (
	ProtocolTcp Protocol = "tcp"
	ProtocolUdp Protocol = "udp"
)

Enum values for Protocol

func (Protocol) Values added in v0.31.0

func (Protocol) Values() []Protocol

Values returns all known values for Protocol. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type ProtocolValue added in v0.31.0

type ProtocolValue string
const (
	ProtocolValueGre ProtocolValue = "gre"
)

Enum values for ProtocolValue

func (ProtocolValue) Values added in v0.31.0

func (ProtocolValue) Values() []ProtocolValue

Values returns all known values for ProtocolValue. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type ProvisionedBandwidth

type ProvisionedBandwidth struct {

	// Reserved.
	ProvisionTime *time.Time

	// Reserved.
	Provisioned *string

	// Reserved.
	RequestTime *time.Time

	// Reserved.
	Requested *string

	// Reserved.
	Status *string
	// contains filtered or unexported fields
}

Reserved. If you need to sustain traffic greater than the documented limits, contact Amazon Web Services Support.

type PtrUpdateStatus added in v0.31.0

type PtrUpdateStatus struct {

	// The reason for the PTR record update.
	Reason *string

	// The status of the PTR record update.
	Status *string

	// The value for the PTR record update.
	Value *string
	// contains filtered or unexported fields
}

The status of an updated pointer (PTR) record for an Elastic IP address.

type PublicIpv4Pool

type PublicIpv4Pool struct {

	// A description of the address pool.
	Description *string

	// The name of the location from which the address pool is advertised. A network
	// border group is a unique set of Availability Zones or Local Zones from where
	// Amazon Web Services advertises public IP addresses.
	NetworkBorderGroup *string

	// The address ranges.
	PoolAddressRanges []PublicIpv4PoolRange

	// The ID of the address pool.
	PoolId *string

	// Any tags for the address pool.
	Tags []Tag

	// The total number of addresses.
	TotalAddressCount *int32

	// The total number of available addresses.
	TotalAvailableAddressCount *int32
	// contains filtered or unexported fields
}

Describes an IPv4 address pool.

type PublicIpv4PoolRange

type PublicIpv4PoolRange struct {

	// The number of addresses in the range.
	AddressCount *int32

	// The number of available addresses in the range.
	AvailableAddressCount *int32

	// The first IP address in the range.
	FirstAddress *string

	// The last IP address in the range.
	LastAddress *string
	// contains filtered or unexported fields
}

Describes an address range of an IPv4 address pool.

type Purchase

type Purchase struct {

	// The currency in which the UpfrontPrice and HourlyPrice amounts are specified.
	// At this time, the only supported currency is USD .
	CurrencyCode CurrencyCodeValues

	// The duration of the reservation's term in seconds.
	Duration *int32

	// The IDs of the Dedicated Hosts associated with the reservation.
	HostIdSet []string

	// The ID of the reservation.
	HostReservationId *string

	// The hourly price of the reservation per hour.
	HourlyPrice *string

	// The instance family on the Dedicated Host that the reservation can be
	// associated with.
	InstanceFamily *string

	// The payment option for the reservation.
	PaymentOption PaymentOption

	// The upfront price of the reservation.
	UpfrontPrice *string
	// contains filtered or unexported fields
}

Describes the result of the purchase.

type PurchaseRequest

type PurchaseRequest struct {

	// The number of instances.
	//
	// This member is required.
	InstanceCount *int32

	// The purchase token.
	//
	// This member is required.
	PurchaseToken *string
	// contains filtered or unexported fields
}

Describes a request to purchase Scheduled Instances.

type RIProductDescription

type RIProductDescription string
const (
	RIProductDescriptionLinuxUnix          RIProductDescription = "Linux/UNIX"
	RIProductDescriptionLinuxUnixAmazonVpc RIProductDescription = "Linux/UNIX (Amazon VPC)"
	RIProductDescriptionWindows            RIProductDescription = "Windows"
	RIProductDescriptionWindowsAmazonVpc   RIProductDescription = "Windows (Amazon VPC)"
)

Enum values for RIProductDescription

func (RIProductDescription) Values added in v0.29.0

Values returns all known values for RIProductDescription. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type RecurringCharge

type RecurringCharge struct {

	// The amount of the recurring charge.
	Amount *float64

	// The frequency of the recurring charge.
	Frequency RecurringChargeFrequency
	// contains filtered or unexported fields
}

Describes a recurring charge.

type RecurringChargeFrequency

type RecurringChargeFrequency string
const (
	RecurringChargeFrequencyHourly RecurringChargeFrequency = "Hourly"
)

Enum values for RecurringChargeFrequency

func (RecurringChargeFrequency) Values added in v0.29.0

Values returns all known values for RecurringChargeFrequency. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type ReferencedSecurityGroup added in v1.12.0

type ReferencedSecurityGroup struct {

	// The ID of the security group.
	GroupId *string

	// The status of a VPC peering connection, if applicable.
	PeeringStatus *string

	// The Amazon Web Services account ID.
	UserId *string

	// The ID of the VPC.
	VpcId *string

	// The ID of the VPC peering connection (if applicable).
	VpcPeeringConnectionId *string
	// contains filtered or unexported fields
}

Describes the security group that is referenced in the security group rule.

type Region

type Region struct {

	// The Region service endpoint.
	Endpoint *string

	// The Region opt-in status. The possible values are opt-in-not-required , opted-in
	// , and not-opted-in .
	OptInStatus *string

	// The name of the Region.
	RegionName *string
	// contains filtered or unexported fields
}

Describes a Region.

type RegionalSummary added in v1.195.0

type RegionalSummary struct {

	// The number of accounts in the Region with the same configuration value for the
	// attribute that is most frequently observed.
	NumberOfMatchedAccounts *int32

	// The number of accounts in the Region with a configuration value different from
	// the most frequently observed value for the attribute.
	NumberOfUnmatchedAccounts *int32

	// The Amazon Web Services Region.
	RegionName *string
	// contains filtered or unexported fields
}

A summary report for the attribute for a Region.

type RegisterInstanceTagAttributeRequest

type RegisterInstanceTagAttributeRequest struct {

	// Indicates whether to register all tag keys in the current Region. Specify true
	// to register all tag keys.
	IncludeAllTagsOfInstance *bool

	// The tag keys to register.
	InstanceTagKeys []string
	// contains filtered or unexported fields
}

Information about the tag keys to register for the current Region. You can either specify individual tag keys or register all tag keys in the current Region. You must specify either IncludeAllTagsOfInstance or InstanceTagKeys in the request

type RemoveIpamOperatingRegion added in v1.25.0

type RemoveIpamOperatingRegion struct {

	// The name of the operating Region you want to remove.
	RegionName *string
	// contains filtered or unexported fields
}

Remove an operating Region from an IPAM. Operating Regions are Amazon Web Services Regions where the IPAM is allowed to manage IP address CIDRs. IPAM only discovers and monitors resources in the Amazon Web Services Regions you select as operating Regions.

For more information about operating Regions, see Create an IPAM in the Amazon VPC IPAM User Guide

type RemoveIpamOrganizationalUnitExclusion added in v1.193.0

type RemoveIpamOrganizationalUnitExclusion struct {

	// An Amazon Web Services Organizations entity path. Build the path for the OU(s)
	// using Amazon Web Services Organizations IDs separated by a / . Include all child
	// OUs by ending the path with /* .
	//
	//   - Example 1
	//
	//   - Path to a child OU:
	//   o-a1b2c3d4e5/r-f6g7h8i9j0example/ou-ghi0-awsccccc/ou-jkl0-awsddddd/
	//
	//   - In this example, o-a1b2c3d4e5 is the organization ID, r-f6g7h8i9j0example is
	//   the root ID , ou-ghi0-awsccccc is an OU ID, and ou-jkl0-awsddddd is a child OU
	//   ID.
	//
	//   - IPAM will not manage the IP addresses in accounts in the child OU.
	//
	//   - Example 2
	//
	//   - Path where all child OUs will be part of the exclusion:
	//   o-a1b2c3d4e5/r-f6g7h8i9j0example/ou-ghi0-awsccccc/*
	//
	//   - In this example, IPAM will not manage the IP addresses in accounts in the
	//   OU ( ou-ghi0-awsccccc ) or in accounts in any OUs that are children of the OU.
	//
	// For more information on how to construct an entity path, see [Understand the Amazon Web Services Organizations entity path] in the Amazon Web
	// Services Identity and Access Management User Guide.
	//
	// [Understand the Amazon Web Services Organizations entity path]: https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_last-accessed-view-data-orgs.html#access_policies_access-advisor-viewing-orgs-entity-path
	OrganizationsEntityPath *string
	// contains filtered or unexported fields
}

Remove an Organizational Unit (OU) exclusion to your IPAM. If your IPAM is integrated with Amazon Web Services Organizations and you add an organizational unit (OU) exclusion, IPAM will not manage the IP addresses in accounts in that OU exclusion. There is a limit on the number of exclusions you can create. For more information, see Quotas for your IPAMin the Amazon VPC IPAM User Guide.

type RemovePrefixListEntry

type RemovePrefixListEntry struct {

	// The CIDR block.
	//
	// This member is required.
	Cidr *string
	// contains filtered or unexported fields
}

An entry for a prefix list.

type ReplaceRootVolumeTask added in v1.3.0

type ReplaceRootVolumeTask struct {

	// The time the task completed.
	CompleteTime *string

	// Indicates whether the original root volume is to be deleted after the root
	// volume replacement task completes.
	DeleteReplacedRootVolume *bool

	// The ID of the AMI used to create the replacement root volume.
	ImageId *string

	// The ID of the instance for which the root volume replacement task was created.
	InstanceId *string

	// The ID of the root volume replacement task.
	ReplaceRootVolumeTaskId *string

	// The ID of the snapshot used to create the replacement root volume.
	SnapshotId *string

	// The time the task was started.
	StartTime *string

	// The tags assigned to the task.
	Tags []Tag

	// The state of the task. The task can be in one of the following states:
	//
	//   - pending - the replacement volume is being created.
	//
	//   - in-progress - the original volume is being detached and the replacement
	//   volume is being attached.
	//
	//   - succeeded - the replacement volume has been successfully attached to the
	//   instance and the instance is available.
	//
	//   - failing - the replacement task is in the process of failing.
	//
	//   - failed - the replacement task has failed but the original root volume is
	//   still attached.
	//
	//   - failing-detached - the replacement task is in the process of failing. The
	//   instance might have no root volume attached.
	//
	//   - failed-detached - the replacement task has failed and the instance has no
	//   root volume attached.
	TaskState ReplaceRootVolumeTaskState
	// contains filtered or unexported fields
}

Information about a root volume replacement task.

type ReplaceRootVolumeTaskState added in v1.3.0

type ReplaceRootVolumeTaskState string
const (
	ReplaceRootVolumeTaskStatePending        ReplaceRootVolumeTaskState = "pending"
	ReplaceRootVolumeTaskStateInProgress     ReplaceRootVolumeTaskState = "in-progress"
	ReplaceRootVolumeTaskStateFailing        ReplaceRootVolumeTaskState = "failing"
	ReplaceRootVolumeTaskStateSucceeded      ReplaceRootVolumeTaskState = "succeeded"
	ReplaceRootVolumeTaskStateFailed         ReplaceRootVolumeTaskState = "failed"
	ReplaceRootVolumeTaskStateFailedDetached ReplaceRootVolumeTaskState = "failed-detached"
)

Enum values for ReplaceRootVolumeTaskState

func (ReplaceRootVolumeTaskState) Values added in v1.3.0

Values returns all known values for ReplaceRootVolumeTaskState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type ReplacementStrategy added in v0.30.0

type ReplacementStrategy string
const (
	ReplacementStrategyLaunch                ReplacementStrategy = "launch"
	ReplacementStrategyLaunchBeforeTerminate ReplacementStrategy = "launch-before-terminate"
)

Enum values for ReplacementStrategy

func (ReplacementStrategy) Values added in v0.30.0

Values returns all known values for ReplacementStrategy. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type ReportInstanceReasonCodes

type ReportInstanceReasonCodes string
const (
	ReportInstanceReasonCodesInstanceStuckInState     ReportInstanceReasonCodes = "instance-stuck-in-state"
	ReportInstanceReasonCodesUnresponsive             ReportInstanceReasonCodes = "unresponsive"
	ReportInstanceReasonCodesNotAcceptingCredentials  ReportInstanceReasonCodes = "not-accepting-credentials"
	ReportInstanceReasonCodesPasswordNotAvailable     ReportInstanceReasonCodes = "password-not-available"
	ReportInstanceReasonCodesPerformanceNetwork       ReportInstanceReasonCodes = "performance-network"
	ReportInstanceReasonCodesPerformanceInstanceStore ReportInstanceReasonCodes = "performance-instance-store"
	ReportInstanceReasonCodesPerformanceEbsVolume     ReportInstanceReasonCodes = "performance-ebs-volume"
	ReportInstanceReasonCodesPerformanceOther         ReportInstanceReasonCodes = "performance-other"
	ReportInstanceReasonCodesOther                    ReportInstanceReasonCodes = "other"
)

Enum values for ReportInstanceReasonCodes

func (ReportInstanceReasonCodes) Values added in v0.29.0

Values returns all known values for ReportInstanceReasonCodes. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type ReportState added in v1.195.0

type ReportState string
const (
	ReportStateRunning   ReportState = "running"
	ReportStateCancelled ReportState = "cancelled"
	ReportStateComplete  ReportState = "complete"
	ReportStateError     ReportState = "error"
)

Enum values for ReportState

func (ReportState) Values added in v1.195.0

func (ReportState) Values() []ReportState

Values returns all known values for ReportState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type ReportStatusType

type ReportStatusType string
const (
	ReportStatusTypeOk       ReportStatusType = "ok"
	ReportStatusTypeImpaired ReportStatusType = "impaired"
)

Enum values for ReportStatusType

func (ReportStatusType) Values added in v0.29.0

Values returns all known values for ReportStatusType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type RequestFilterPortRange added in v1.91.0

type RequestFilterPortRange struct {

	// The first port in the range.
	FromPort *int32

	// The last port in the range.
	ToPort *int32
	// contains filtered or unexported fields
}

Describes a port range.

type RequestIpamResourceTag added in v1.25.0

type RequestIpamResourceTag struct {

	// The key of a tag assigned to the resource. Use this filter to find all
	// resources assigned a tag with a specific key, regardless of the tag value.
	Key *string

	// The value for the tag.
	Value *string
	// contains filtered or unexported fields
}

A tag on an IPAM resource.

type RequestLaunchTemplateData

type RequestLaunchTemplateData struct {

	// The block device mapping.
	BlockDeviceMappings []LaunchTemplateBlockDeviceMappingRequest

	// The Capacity Reservation targeting option. If you do not specify this
	// parameter, the instance's Capacity Reservation preference defaults to open ,
	// which enables it to run in any open Capacity Reservation that has matching
	// attributes (instance type, platform, Availability Zone).
	CapacityReservationSpecification *LaunchTemplateCapacityReservationSpecificationRequest

	// The CPU options for the instance. For more information, see [Optimize CPU options] in the Amazon EC2
	// User Guide.
	//
	// [Optimize CPU options]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-optimize-cpu.html
	CpuOptions *LaunchTemplateCpuOptionsRequest

	// The credit option for CPU usage of the instance. Valid only for T instances.
	CreditSpecification *CreditSpecificationRequest

	// Indicates whether to enable the instance for stop protection. For more
	// information, see [Enable stop protection for your instance]in the Amazon EC2 User Guide.
	//
	// [Enable stop protection for your instance]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-stop-protection.html
	DisableApiStop *bool

	// If you set this parameter to true , you can't terminate the instance using the
	// Amazon EC2 console, CLI, or API; otherwise, you can. To change this attribute
	// after launch, use [ModifyInstanceAttribute]. Alternatively, if you set InstanceInitiatedShutdownBehavior
	// to terminate , you can terminate the instance by running the shutdown command
	// from the instance.
	//
	// [ModifyInstanceAttribute]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ModifyInstanceAttribute.html
	DisableApiTermination *bool

	// Indicates whether the instance is optimized for Amazon EBS I/O. This
	// optimization provides dedicated throughput to Amazon EBS and an optimized
	// configuration stack to provide optimal Amazon EBS I/O performance. This
	// optimization isn't available with all instance types. Additional usage charges
	// apply when using an EBS-optimized instance.
	EbsOptimized *bool

	// Deprecated.
	//
	// Amazon Elastic Graphics reached end of life on January 8, 2024. For workloads
	// that require graphics acceleration, we recommend that you use Amazon EC2 G4ad,
	// G4dn, or G5 instances.
	ElasticGpuSpecifications []ElasticGpuSpecification

	// Amazon Elastic Inference is no longer available.
	//
	// An elastic inference accelerator to associate with the instance. Elastic
	// inference accelerators are a resource you can attach to your Amazon EC2
	// instances to accelerate your Deep Learning (DL) inference workloads.
	//
	// You cannot specify accelerators from different generations in the same request.
	//
	// Starting April 15, 2023, Amazon Web Services will not onboard new customers to
	// Amazon Elastic Inference (EI), and will help current customers migrate their
	// workloads to options that offer better price and performance. After April 15,
	// 2023, new customers will not be able to launch instances with Amazon EI
	// accelerators in Amazon SageMaker, Amazon ECS, or Amazon EC2. However, customers
	// who have used Amazon EI at least once during the past 30-day period are
	// considered current customers and will be able to continue using the service.
	ElasticInferenceAccelerators []LaunchTemplateElasticInferenceAccelerator

	// Indicates whether the instance is enabled for Amazon Web Services Nitro
	// Enclaves. For more information, see [What is Amazon Web Services Nitro Enclaves?]in the Amazon Web Services Nitro Enclaves
	// User Guide.
	//
	// You can't enable Amazon Web Services Nitro Enclaves and hibernation on the same
	// instance.
	//
	// [What is Amazon Web Services Nitro Enclaves?]: https://docs.aws.amazon.com/enclaves/latest/user/nitro-enclave.html
	EnclaveOptions *LaunchTemplateEnclaveOptionsRequest

	// Indicates whether an instance is enabled for hibernation. This parameter is
	// valid only if the instance meets the [hibernation prerequisites]. For more information, see [Hibernate your Amazon EC2 instance] in the Amazon
	// EC2 User Guide.
	//
	// [Hibernate your Amazon EC2 instance]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Hibernate.html
	// [hibernation prerequisites]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/hibernating-prerequisites.html
	HibernationOptions *LaunchTemplateHibernationOptionsRequest

	// The name or Amazon Resource Name (ARN) of an IAM instance profile.
	IamInstanceProfile *LaunchTemplateIamInstanceProfileSpecificationRequest

	// The ID of the AMI in the format ami-0ac394d6a3example .
	//
	// Alternatively, you can specify a Systems Manager parameter, using one of the
	// following formats. The Systems Manager parameter will resolve to an AMI ID on
	// launch.
	//
	// To reference a public parameter:
	//
	//   - resolve:ssm:public-parameter
	//
	// To reference a parameter stored in the same account:
	//
	//   - resolve:ssm:parameter-name
	//
	//   - resolve:ssm:parameter-name:version-number
	//
	//   - resolve:ssm:parameter-name:label
	//
	// To reference a parameter shared from another Amazon Web Services account:
	//
	//   - resolve:ssm:parameter-ARN
	//
	//   - resolve:ssm:parameter-ARN:version-number
	//
	//   - resolve:ssm:parameter-ARN:label
	//
	// For more information, see [Use a Systems Manager parameter instead of an AMI ID] in the Amazon EC2 User Guide.
	//
	// If the launch template will be used for an EC2 Fleet or Spot Fleet, note the
	// following:
	//
	//   - Only EC2 Fleets of type instant support specifying a Systems Manager
	//   parameter.
	//
	//   - For EC2 Fleets of type maintain or request , or for Spot Fleets, you must
	//   specify the AMI ID.
	//
	// [Use a Systems Manager parameter instead of an AMI ID]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/create-launch-template.html#use-an-ssm-parameter-instead-of-an-ami-id
	ImageId *string

	// Indicates whether an instance stops or terminates when you initiate shutdown
	// from the instance (using the operating system command for system shutdown).
	//
	// Default: stop
	InstanceInitiatedShutdownBehavior ShutdownBehavior

	// The market (purchasing) option for the instances.
	InstanceMarketOptions *LaunchTemplateInstanceMarketOptionsRequest

	// The attributes for the instance types. When you specify instance attributes,
	// Amazon EC2 will identify instance types with these attributes.
	//
	// You must specify VCpuCount and MemoryMiB . All other attributes are optional.
	// Any unspecified optional attribute is set to its default.
	//
	// When you specify multiple attributes, you get instance types that satisfy all
	// of the specified attributes. If you specify multiple values for an attribute,
	// you get instance types that satisfy any of the specified values.
	//
	// To limit the list of instance types from which Amazon EC2 can identify matching
	// instance types, you can use one of the following parameters, but not both in the
	// same request:
	//
	//   - AllowedInstanceTypes - The instance types to include in the list. All other
	//   instance types are ignored, even if they match your specified attributes.
	//
	//   - ExcludedInstanceTypes - The instance types to exclude from the list, even if
	//   they match your specified attributes.
	//
	// If you specify InstanceRequirements , you can't specify InstanceType .
	//
	// Attribute-based instance type selection is only supported when using Auto
	// Scaling groups, EC2 Fleet, and Spot Fleet to launch instances. If you plan to
	// use the launch template in the [launch instance wizard], or with the [RunInstances] API or [AWS::EC2::Instance] Amazon Web Services
	// CloudFormation resource, you can't specify InstanceRequirements .
	//
	// For more information, see [Specify attributes for instance type selection for EC2 Fleet or Spot Fleet] and [Spot placement score] in the Amazon EC2 User Guide.
	//
	// [Specify attributes for instance type selection for EC2 Fleet or Spot Fleet]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-attribute-based-instance-type-selection.html
	// [AWS::EC2::Instance]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html
	// [RunInstances]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html
	// [Spot placement score]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-placement-score.html
	// [launch instance wizard]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-instance-wizard.html
	InstanceRequirements *InstanceRequirementsRequest

	// The instance type. For more information, see [Amazon EC2 instance types] in the Amazon EC2 User Guide.
	//
	// If you specify InstanceType , you can't specify InstanceRequirements .
	//
	// [Amazon EC2 instance types]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html
	InstanceType InstanceType

	// The ID of the kernel.
	//
	// We recommend that you use PV-GRUB instead of kernels and RAM disks. For more
	// information, see [User provided kernels]in the Amazon EC2 User Guide.
	//
	// [User provided kernels]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/UserProvidedkernels.html
	KernelId *string

	// The name of the key pair. You can create a key pair using [CreateKeyPair] or [ImportKeyPair].
	//
	// If you do not specify a key pair, you can't connect to the instance unless you
	// choose an AMI that is configured to allow users another way to log in.
	//
	// [ImportKeyPair]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ImportKeyPair.html
	// [CreateKeyPair]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateKeyPair.html
	KeyName *string

	// The license configurations.
	LicenseSpecifications []LaunchTemplateLicenseConfigurationRequest

	// The maintenance options for the instance.
	MaintenanceOptions *LaunchTemplateInstanceMaintenanceOptionsRequest

	// The metadata options for the instance. For more information, see [Instance metadata and user data] in the Amazon
	// EC2 User Guide.
	//
	// [Instance metadata and user data]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html
	MetadataOptions *LaunchTemplateInstanceMetadataOptionsRequest

	// The monitoring for the instance.
	Monitoring *LaunchTemplatesMonitoringRequest

	// The network interfaces for the instance.
	NetworkInterfaces []LaunchTemplateInstanceNetworkInterfaceSpecificationRequest

	// Contains launch template settings to boost network performance for the type of
	// workload that runs on your instance.
	NetworkPerformanceOptions *LaunchTemplateNetworkPerformanceOptionsRequest

	// The entity that manages the launch template.
	Operator *OperatorRequest

	// The placement for the instance.
	Placement *LaunchTemplatePlacementRequest

	// The options for the instance hostname. The default values are inherited from
	// the subnet.
	PrivateDnsNameOptions *LaunchTemplatePrivateDnsNameOptionsRequest

	// The ID of the RAM disk.
	//
	// We recommend that you use PV-GRUB instead of kernels and RAM disks. For more
	// information, see [User provided kernels]in the Amazon EC2 User Guide.
	//
	// [User provided kernels]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/UserProvidedkernels.html
	RamDiskId *string

	// The IDs of the security groups.
	//
	// If you specify a network interface, you must specify any security groups as
	// part of the network interface instead of using this parameter.
	SecurityGroupIds []string

	// The names of the security groups. For a nondefault VPC, you must use security
	// group IDs instead.
	//
	// If you specify a network interface, you must specify any security groups as
	// part of the network interface instead of using this parameter.
	SecurityGroups []string

	// The tags to apply to the resources that are created during instance launch.
	// These tags are not applied to the launch template.
	TagSpecifications []LaunchTemplateTagSpecificationRequest

	// The user data to make available to the instance. You must provide
	// base64-encoded text. User data is limited to 16 KB. For more information, see [Run commands on your Amazon EC2 instance at launch]
	// in the Amazon EC2 User Guide.
	//
	// If you are creating the launch template for use with Batch, the user data must
	// be provided in the [MIME multi-part archive format]. For more information, see [Amazon EC2 user data in launch templates] in the Batch User Guide.
	//
	// [Amazon EC2 user data in launch templates]: https://docs.aws.amazon.com/batch/latest/userguide/launch-templates.html
	// [MIME multi-part archive format]: https://cloudinit.readthedocs.io/en/latest/topics/format.html#mime-multi-part-archive
	// [Run commands on your Amazon EC2 instance at launch]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/user-data.html
	UserData *string
	// contains filtered or unexported fields
}

The information to include in the launch template.

You must specify at least one parameter for the launch template data.

type RequestSpotLaunchSpecification

type RequestSpotLaunchSpecification struct {

	// Deprecated.
	AddressingType *string

	// The block device mapping entries. You can't specify both a snapshot ID and an
	// encryption value. This is because only blank volumes can be encrypted on
	// creation. If a snapshot is the basis for a volume, it is not blank and its
	// encryption status is used for the volume encryption status.
	BlockDeviceMappings []BlockDeviceMapping

	// Indicates whether the instance is optimized for EBS I/O. This optimization
	// provides dedicated throughput to Amazon EBS and an optimized configuration stack
	// to provide optimal EBS I/O performance. This optimization isn't available with
	// all instance types. Additional usage charges apply when using an EBS Optimized
	// instance.
	//
	// Default: false
	EbsOptimized *bool

	// The IAM instance profile.
	IamInstanceProfile *IamInstanceProfileSpecification

	// The ID of the AMI.
	ImageId *string

	// The instance type. Only one instance type can be specified.
	InstanceType InstanceType

	// The ID of the kernel.
	KernelId *string

	// The name of the key pair.
	KeyName *string

	// Indicates whether basic or detailed monitoring is enabled for the instance.
	//
	// Default: Disabled
	Monitoring *RunInstancesMonitoringEnabled

	// The network interfaces. If you specify a network interface, you must specify
	// subnet IDs and security group IDs using the network interface.
	NetworkInterfaces []InstanceNetworkInterfaceSpecification

	// The placement information for the instance.
	Placement *SpotPlacement

	// The ID of the RAM disk.
	RamdiskId *string

	// The IDs of the security groups.
	SecurityGroupIds []string

	// Not supported.
	SecurityGroups []string

	// The ID of the subnet in which to launch the instance.
	SubnetId *string

	// The base64-encoded user data that instances use when starting up. User data is
	// limited to 16 KB.
	UserData *string
	// contains filtered or unexported fields
}

Describes the launch specification for an instance.

type Reservation

type Reservation struct {

	// Not supported.
	Groups []GroupIdentifier

	// The instances.
	Instances []Instance

	// The ID of the Amazon Web Services account that owns the reservation.
	OwnerId *string

	// The ID of the requester that launched the instances on your behalf (for
	// example, Amazon Web Services Management Console or Auto Scaling).
	RequesterId *string

	// The ID of the reservation.
	ReservationId *string
	// contains filtered or unexported fields
}

Describes a launch request for one or more instances, and includes owner, requester, and security group information that applies to all instances in the launch request.

type ReservationFleetInstanceSpecification added in v1.19.0

type ReservationFleetInstanceSpecification struct {

	// The Availability Zone in which the Capacity Reservation Fleet reserves the
	// capacity. A Capacity Reservation Fleet can't span Availability Zones. All
	// instance type specifications that you specify for the Fleet must use the same
	// Availability Zone.
	AvailabilityZone *string

	// The ID of the Availability Zone in which the Capacity Reservation Fleet
	// reserves the capacity. A Capacity Reservation Fleet can't span Availability
	// Zones. All instance type specifications that you specify for the Fleet must use
	// the same Availability Zone.
	AvailabilityZoneId *string

	// Indicates whether the Capacity Reservation Fleet supports EBS-optimized
	// instances types. This optimization provides dedicated throughput to Amazon EBS
	// and an optimized configuration stack to provide optimal I/O performance. This
	// optimization isn't available with all instance types. Additional usage charges
	// apply when using EBS-optimized instance types.
	EbsOptimized *bool

	// The type of operating system for which the Capacity Reservation Fleet reserves
	// capacity.
	InstancePlatform CapacityReservationInstancePlatform

	// The instance type for which the Capacity Reservation Fleet reserves capacity.
	InstanceType InstanceType

	// The priority to assign to the instance type. This value is used to determine
	// which of the instance types specified for the Fleet should be prioritized for
	// use. A lower value indicates a high priority. For more information, see [Instance type priority]in the
	// Amazon EC2 User Guide.
	//
	// [Instance type priority]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/crfleet-concepts.html#instance-priority
	Priority *int32

	// The number of capacity units provided by the specified instance type. This
	// value, together with the total target capacity that you specify for the Fleet
	// determine the number of instances for which the Fleet reserves capacity. Both
	// values are based on units that make sense for your workload. For more
	// information, see [Total target capacity]in the Amazon EC2 User Guide.
	//
	// [Total target capacity]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/crfleet-concepts.html#target-capacity
	Weight *float64
	// contains filtered or unexported fields
}

Information about an instance type to use in a Capacity Reservation Fleet.

type ReservationState

type ReservationState string
const (
	ReservationStatePaymentPending ReservationState = "payment-pending"
	ReservationStatePaymentFailed  ReservationState = "payment-failed"
	ReservationStateActive         ReservationState = "active"
	ReservationStateRetired        ReservationState = "retired"
)

Enum values for ReservationState

func (ReservationState) Values added in v0.29.0

Values returns all known values for ReservationState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type ReservationValue

type ReservationValue struct {

	// The hourly rate of the reservation.
	HourlyPrice *string

	// The balance of the total value (the sum of remainingUpfrontValue + hourlyPrice
	// * number of hours remaining).
	RemainingTotalValue *string

	// The remaining upfront cost of the reservation.
	RemainingUpfrontValue *string
	// contains filtered or unexported fields
}

The cost associated with the Reserved Instance.

type ReservedInstanceLimitPrice

type ReservedInstanceLimitPrice struct {

	// Used for Reserved Instance Marketplace offerings. Specifies the limit price on
	// the total order (instanceCount * price).
	Amount *float64

	// The currency in which the limitPrice amount is specified. At this time, the
	// only supported currency is USD .
	CurrencyCode CurrencyCodeValues
	// contains filtered or unexported fields
}

Describes the limit price of a Reserved Instance offering.

type ReservedInstanceReservationValue

type ReservedInstanceReservationValue struct {

	// The total value of the Convertible Reserved Instance that you are exchanging.
	ReservationValue *ReservationValue

	// The ID of the Convertible Reserved Instance that you are exchanging.
	ReservedInstanceId *string
	// contains filtered or unexported fields
}

The total value of the Convertible Reserved Instance.

type ReservedInstanceState

type ReservedInstanceState string
const (
	ReservedInstanceStatePaymentPending ReservedInstanceState = "payment-pending"
	ReservedInstanceStateActive         ReservedInstanceState = "active"
	ReservedInstanceStatePaymentFailed  ReservedInstanceState = "payment-failed"
	ReservedInstanceStateRetired        ReservedInstanceState = "retired"
	ReservedInstanceStateQueued         ReservedInstanceState = "queued"
	ReservedInstanceStateQueuedDeleted  ReservedInstanceState = "queued-deleted"
)

Enum values for ReservedInstanceState

func (ReservedInstanceState) Values added in v0.29.0

Values returns all known values for ReservedInstanceState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type ReservedInstances

type ReservedInstances struct {

	// The Availability Zone in which the Reserved Instance can be used.
	AvailabilityZone *string

	// The currency of the Reserved Instance. It's specified using ISO 4217 standard
	// currency codes. At this time, the only supported currency is USD .
	CurrencyCode CurrencyCodeValues

	// The duration of the Reserved Instance, in seconds.
	Duration *int64

	// The time when the Reserved Instance expires.
	End *time.Time

	// The purchase price of the Reserved Instance.
	FixedPrice *float32

	// The number of reservations purchased.
	InstanceCount *int32

	// The tenancy of the instance.
	InstanceTenancy Tenancy

	// The instance type on which the Reserved Instance can be used.
	InstanceType InstanceType

	// The offering class of the Reserved Instance.
	OfferingClass OfferingClassType

	// The Reserved Instance offering type.
	OfferingType OfferingTypeValues

	// The Reserved Instance product platform description.
	ProductDescription RIProductDescription

	// The recurring charge tag assigned to the resource.
	RecurringCharges []RecurringCharge

	// The ID of the Reserved Instance.
	ReservedInstancesId *string

	// The scope of the Reserved Instance.
	Scope Scope

	// The date and time the Reserved Instance started.
	Start *time.Time

	// The state of the Reserved Instance purchase.
	State ReservedInstanceState

	// Any tags assigned to the resource.
	Tags []Tag

	// The usage price of the Reserved Instance, per hour.
	UsagePrice *float32
	// contains filtered or unexported fields
}

Describes a Reserved Instance.

type ReservedInstancesConfiguration

type ReservedInstancesConfiguration struct {

	// The Availability Zone for the modified Reserved Instances.
	AvailabilityZone *string

	// The number of modified Reserved Instances.
	//
	// This is a required field for a request.
	InstanceCount *int32

	// The instance type for the modified Reserved Instances.
	InstanceType InstanceType

	// The network platform of the modified Reserved Instances.
	Platform *string

	// Whether the Reserved Instance is applied to instances in a Region or instances
	// in a specific Availability Zone.
	Scope Scope
	// contains filtered or unexported fields
}

Describes the configuration settings for the modified Reserved Instances.

type ReservedInstancesId

type ReservedInstancesId struct {

	// The ID of the Reserved Instance.
	ReservedInstancesId *string
	// contains filtered or unexported fields
}

Describes the ID of a Reserved Instance.

type ReservedInstancesListing

type ReservedInstancesListing struct {

	// A unique, case-sensitive key supplied by the client to ensure that the request
	// is idempotent. For more information, see [Ensuring Idempotency].
	//
	// [Ensuring Idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
	ClientToken *string

	// The time the listing was created.
	CreateDate *time.Time

	// The number of instances in this state.
	InstanceCounts []InstanceCount

	// The price of the Reserved Instance listing.
	PriceSchedules []PriceSchedule

	// The ID of the Reserved Instance.
	ReservedInstancesId *string

	// The ID of the Reserved Instance listing.
	ReservedInstancesListingId *string

	// The status of the Reserved Instance listing.
	Status ListingStatus

	// The reason for the current status of the Reserved Instance listing. The
	// response can be blank.
	StatusMessage *string

	// Any tags assigned to the resource.
	Tags []Tag

	// The last modified timestamp of the listing.
	UpdateDate *time.Time
	// contains filtered or unexported fields
}

Describes a Reserved Instance listing.

type ReservedInstancesModification

type ReservedInstancesModification struct {

	// A unique, case-sensitive key supplied by the client to ensure that the request
	// is idempotent. For more information, see [Ensuring Idempotency].
	//
	// [Ensuring Idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
	ClientToken *string

	// The time when the modification request was created.
	CreateDate *time.Time

	// The time for the modification to become effective.
	EffectiveDate *time.Time

	// Contains target configurations along with their corresponding new Reserved
	// Instance IDs.
	ModificationResults []ReservedInstancesModificationResult

	// The IDs of one or more Reserved Instances.
	ReservedInstancesIds []ReservedInstancesId

	// A unique ID for the Reserved Instance modification.
	ReservedInstancesModificationId *string

	// The status of the Reserved Instances modification request.
	Status *string

	// The reason for the status.
	StatusMessage *string

	// The time when the modification request was last updated.
	UpdateDate *time.Time
	// contains filtered or unexported fields
}

Describes a Reserved Instance modification.

type ReservedInstancesModificationResult

type ReservedInstancesModificationResult struct {

	// The ID for the Reserved Instances that were created as part of the modification
	// request. This field is only available when the modification is fulfilled.
	ReservedInstancesId *string

	// The target Reserved Instances configurations supplied as part of the
	// modification request.
	TargetConfiguration *ReservedInstancesConfiguration
	// contains filtered or unexported fields
}

Describes the modification request/s.

type ReservedInstancesOffering

type ReservedInstancesOffering struct {

	// The Availability Zone in which the Reserved Instance can be used.
	AvailabilityZone *string

	// The currency of the Reserved Instance offering you are purchasing. It's
	// specified using ISO 4217 standard currency codes. At this time, the only
	// supported currency is USD .
	CurrencyCode CurrencyCodeValues

	// The duration of the Reserved Instance, in seconds.
	Duration *int64

	// The purchase price of the Reserved Instance.
	FixedPrice *float32

	// The tenancy of the instance.
	InstanceTenancy Tenancy

	// The instance type on which the Reserved Instance can be used.
	InstanceType InstanceType

	// Indicates whether the offering is available through the Reserved Instance
	// Marketplace (resale) or Amazon Web Services. If it's a Reserved Instance
	// Marketplace offering, this is true .
	Marketplace *bool

	// If convertible it can be exchanged for Reserved Instances of the same or higher
	// monetary value, with different configurations. If standard , it is not possible
	// to perform an exchange.
	OfferingClass OfferingClassType

	// The Reserved Instance offering type.
	OfferingType OfferingTypeValues

	// The pricing details of the Reserved Instance offering.
	PricingDetails []PricingDetail

	// The Reserved Instance product platform description.
	ProductDescription RIProductDescription

	// The recurring charge tag assigned to the resource.
	RecurringCharges []RecurringCharge

	// The ID of the Reserved Instance offering. This is the offering ID used in GetReservedInstancesExchangeQuote to
	// confirm that an exchange can be made.
	ReservedInstancesOfferingId *string

	// Whether the Reserved Instance is applied to instances in a Region or an
	// Availability Zone.
	Scope Scope

	// The usage price of the Reserved Instance, per hour.
	UsagePrice *float32
	// contains filtered or unexported fields
}

Describes a Reserved Instance offering.

type ResetFpgaImageAttributeName

type ResetFpgaImageAttributeName string
const (
	ResetFpgaImageAttributeNameLoadPermission ResetFpgaImageAttributeName = "loadPermission"
)

Enum values for ResetFpgaImageAttributeName

func (ResetFpgaImageAttributeName) Values added in v0.29.0

Values returns all known values for ResetFpgaImageAttributeName. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type ResetImageAttributeName

type ResetImageAttributeName string
const (
	ResetImageAttributeNameLaunchPermission ResetImageAttributeName = "launchPermission"
)

Enum values for ResetImageAttributeName

func (ResetImageAttributeName) Values added in v0.29.0

Values returns all known values for ResetImageAttributeName. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type ResourceStatement added in v1.25.0

type ResourceStatement struct {

	// The resource types.
	ResourceTypes []string

	// The resources.
	Resources []string
	// contains filtered or unexported fields
}

Describes a resource statement.

type ResourceStatementRequest added in v1.25.0

type ResourceStatementRequest struct {

	// The resource types.
	ResourceTypes []string

	// The resources.
	Resources []string
	// contains filtered or unexported fields
}

Describes a resource statement.

type ResourceType

type ResourceType string
const (
	ResourceTypeCapacityReservation                                    ResourceType = "capacity-reservation"
	ResourceTypeClientVpnEndpoint                                      ResourceType = "client-vpn-endpoint"
	ResourceTypeCustomerGateway                                        ResourceType = "customer-gateway"
	ResourceTypeCarrierGateway                                         ResourceType = "carrier-gateway"
	ResourceTypeCoipPool                                               ResourceType = "coip-pool"
	ResourceTypeDeclarativePoliciesReport                              ResourceType = "declarative-policies-report"
	ResourceTypeDedicatedHost                                          ResourceType = "dedicated-host"
	ResourceTypeDhcpOptions                                            ResourceType = "dhcp-options"
	ResourceTypeEgressOnlyInternetGateway                              ResourceType = "egress-only-internet-gateway"
	ResourceTypeElasticIp                                              ResourceType = "elastic-ip"
	ResourceTypeElasticGpu                                             ResourceType = "elastic-gpu"
	ResourceTypeExportImageTask                                        ResourceType = "export-image-task"
	ResourceTypeExportInstanceTask                                     ResourceType = "export-instance-task"
	ResourceTypeFleet                                                  ResourceType = "fleet"
	ResourceTypeFpgaImage                                              ResourceType = "fpga-image"
	ResourceTypeHostReservation                                        ResourceType = "host-reservation"
	ResourceTypeImage                                                  ResourceType = "image"
	ResourceTypeImportImageTask                                        ResourceType = "import-image-task"
	ResourceTypeImportSnapshotTask                                     ResourceType = "import-snapshot-task"
	ResourceTypeInstance                                               ResourceType = "instance"
	ResourceTypeInstanceEventWindow                                    ResourceType = "instance-event-window"
	ResourceTypeInternetGateway                                        ResourceType = "internet-gateway"
	ResourceTypeIpam                                                   ResourceType = "ipam"
	ResourceTypeIpamPool                                               ResourceType = "ipam-pool"
	ResourceTypeIpamScope                                              ResourceType = "ipam-scope"
	ResourceTypeIpv4poolEc2                                            ResourceType = "ipv4pool-ec2"
	ResourceTypeIpv6poolEc2                                            ResourceType = "ipv6pool-ec2"
	ResourceTypeKeyPair                                                ResourceType = "key-pair"
	ResourceTypeLaunchTemplate                                         ResourceType = "launch-template"
	ResourceTypeLocalGateway                                           ResourceType = "local-gateway"
	ResourceTypeLocalGatewayRouteTable                                 ResourceType = "local-gateway-route-table"
	ResourceTypeLocalGatewayVirtualInterface                           ResourceType = "local-gateway-virtual-interface"
	ResourceTypeLocalGatewayVirtualInterfaceGroup                      ResourceType = "local-gateway-virtual-interface-group"
	ResourceTypeLocalGatewayRouteTableVpcAssociation                   ResourceType = "local-gateway-route-table-vpc-association"
	ResourceTypeLocalGatewayRouteTableVirtualInterfaceGroupAssociation ResourceType = "local-gateway-route-table-virtual-interface-group-association"
	ResourceTypeNatgateway                                             ResourceType = "natgateway"
	ResourceTypeNetworkAcl                                             ResourceType = "network-acl"
	ResourceTypeNetworkInterface                                       ResourceType = "network-interface"
	ResourceTypeNetworkInsightsAnalysis                                ResourceType = "network-insights-analysis"
	ResourceTypeNetworkInsightsPath                                    ResourceType = "network-insights-path"
	ResourceTypeNetworkInsightsAccessScope                             ResourceType = "network-insights-access-scope"
	ResourceTypeNetworkInsightsAccessScopeAnalysis                     ResourceType = "network-insights-access-scope-analysis"
	ResourceTypePlacementGroup                                         ResourceType = "placement-group"
	ResourceTypePrefixList                                             ResourceType = "prefix-list"
	ResourceTypeReplaceRootVolumeTask                                  ResourceType = "replace-root-volume-task"
	ResourceTypeReservedInstances                                      ResourceType = "reserved-instances"
	ResourceTypeRouteTable                                             ResourceType = "route-table"
	ResourceTypeSecurityGroup                                          ResourceType = "security-group"
	ResourceTypeSecurityGroupRule                                      ResourceType = "security-group-rule"
	ResourceTypeSnapshot                                               ResourceType = "snapshot"
	ResourceTypeSpotFleetRequest                                       ResourceType = "spot-fleet-request"
	ResourceTypeSpotInstancesRequest                                   ResourceType = "spot-instances-request"
	ResourceTypeSubnet                                                 ResourceType = "subnet"
	ResourceTypeSubnetCidrReservation                                  ResourceType = "subnet-cidr-reservation"
	ResourceTypeTrafficMirrorFilter                                    ResourceType = "traffic-mirror-filter"
	ResourceTypeTrafficMirrorSession                                   ResourceType = "traffic-mirror-session"
	ResourceTypeTrafficMirrorTarget                                    ResourceType = "traffic-mirror-target"
	ResourceTypeTransitGateway                                         ResourceType = "transit-gateway"
	ResourceTypeTransitGatewayAttachment                               ResourceType = "transit-gateway-attachment"
	ResourceTypeTransitGatewayConnectPeer                              ResourceType = "transit-gateway-connect-peer"
	ResourceTypeTransitGatewayMulticastDomain                          ResourceType = "transit-gateway-multicast-domain"
	ResourceTypeTransitGatewayPolicyTable                              ResourceType = "transit-gateway-policy-table"
	ResourceTypeTransitGatewayRouteTable                               ResourceType = "transit-gateway-route-table"
	ResourceTypeTransitGatewayRouteTableAnnouncement                   ResourceType = "transit-gateway-route-table-announcement"
	ResourceTypeVolume                                                 ResourceType = "volume"
	ResourceTypeVpc                                                    ResourceType = "vpc"
	ResourceTypeVpcEndpoint                                            ResourceType = "vpc-endpoint"
	ResourceTypeVpcEndpointConnection                                  ResourceType = "vpc-endpoint-connection"
	ResourceTypeVpcEndpointService                                     ResourceType = "vpc-endpoint-service"
	ResourceTypeVpcEndpointServicePermission                           ResourceType = "vpc-endpoint-service-permission"
	ResourceTypeVpcPeeringConnection                                   ResourceType = "vpc-peering-connection"
	ResourceTypeVpnConnection                                          ResourceType = "vpn-connection"
	ResourceTypeVpnGateway                                             ResourceType = "vpn-gateway"
	ResourceTypeVpcFlowLog                                             ResourceType = "vpc-flow-log"
	ResourceTypeCapacityReservationFleet                               ResourceType = "capacity-reservation-fleet"
	ResourceTypeTrafficMirrorFilterRule                                ResourceType = "traffic-mirror-filter-rule"
	ResourceTypeVpcEndpointConnectionDeviceType                        ResourceType = "vpc-endpoint-connection-device-type"
	ResourceTypeVerifiedAccessInstance                                 ResourceType = "verified-access-instance"
	ResourceTypeVerifiedAccessGroup                                    ResourceType = "verified-access-group"
	ResourceTypeVerifiedAccessEndpoint                                 ResourceType = "verified-access-endpoint"
	ResourceTypeVerifiedAccessPolicy                                   ResourceType = "verified-access-policy"
	ResourceTypeVerifiedAccessTrustProvider                            ResourceType = "verified-access-trust-provider"
	ResourceTypeVpnConnectionDeviceType                                ResourceType = "vpn-connection-device-type"
	ResourceTypeVpcBlockPublicAccessExclusion                          ResourceType = "vpc-block-public-access-exclusion"
	ResourceTypeIpamResourceDiscovery                                  ResourceType = "ipam-resource-discovery"
	ResourceTypeIpamResourceDiscoveryAssociation                       ResourceType = "ipam-resource-discovery-association"
	ResourceTypeInstanceConnectEndpoint                                ResourceType = "instance-connect-endpoint"
	ResourceTypeVerifiedAccessEndpointTarget                           ResourceType = "verified-access-endpoint-target"
	ResourceTypeIpamExternalResourceVerificationToken                  ResourceType = "ipam-external-resource-verification-token"
)

Enum values for ResourceType

func (ResourceType) Values added in v0.29.0

func (ResourceType) Values() []ResourceType

Values returns all known values for ResourceType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type ResponseError

type ResponseError struct {

	// The error code.
	Code LaunchTemplateErrorCode

	// The error message, if applicable.
	Message *string
	// contains filtered or unexported fields
}

Describes the error that's returned when you cannot delete a launch template version.

type ResponseLaunchTemplateData

type ResponseLaunchTemplateData struct {

	// The block device mappings.
	BlockDeviceMappings []LaunchTemplateBlockDeviceMapping

	// Information about the Capacity Reservation targeting option.
	CapacityReservationSpecification *LaunchTemplateCapacityReservationSpecificationResponse

	// The CPU options for the instance. For more information, see [Optimize CPU options] in the Amazon EC2
	// User Guide.
	//
	// [Optimize CPU options]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-optimize-cpu.html
	CpuOptions *LaunchTemplateCpuOptions

	// The credit option for CPU usage of the instance.
	CreditSpecification *CreditSpecification

	// Indicates whether the instance is enabled for stop protection. For more
	// information, see [Enable stop protection for your instance]in the Amazon EC2 User Guide.
	//
	// [Enable stop protection for your instance]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-stop-protection.html
	DisableApiStop *bool

	// If set to true , indicates that the instance cannot be terminated using the
	// Amazon EC2 console, command line tool, or API.
	DisableApiTermination *bool

	// Indicates whether the instance is optimized for Amazon EBS I/O.
	EbsOptimized *bool

	// Deprecated.
	//
	// Amazon Elastic Graphics reached end of life on January 8, 2024. For workloads
	// that require graphics acceleration, we recommend that you use Amazon EC2 G4ad,
	// G4dn, or G5 instances.
	ElasticGpuSpecifications []ElasticGpuSpecificationResponse

	// Amazon Elastic Inference is no longer available.
	//
	// An elastic inference accelerator to associate with the instance. Elastic
	// inference accelerators are a resource you can attach to your Amazon EC2
	// instances to accelerate your Deep Learning (DL) inference workloads.
	//
	// You cannot specify accelerators from different generations in the same request.
	//
	// Starting April 15, 2023, Amazon Web Services will not onboard new customers to
	// Amazon Elastic Inference (EI), and will help current customers migrate their
	// workloads to options that offer better price and performance. After April 15,
	// 2023, new customers will not be able to launch instances with Amazon EI
	// accelerators in Amazon SageMaker, Amazon ECS, or Amazon EC2. However, customers
	// who have used Amazon EI at least once during the past 30-day period are
	// considered current customers and will be able to continue using the service.
	ElasticInferenceAccelerators []LaunchTemplateElasticInferenceAcceleratorResponse

	// Indicates whether the instance is enabled for Amazon Web Services Nitro
	// Enclaves.
	EnclaveOptions *LaunchTemplateEnclaveOptions

	// Indicates whether an instance is configured for hibernation. For more
	// information, see [Hibernate your Amazon EC2 instance]in the Amazon EC2 User Guide.
	//
	// [Hibernate your Amazon EC2 instance]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Hibernate.html
	HibernationOptions *LaunchTemplateHibernationOptions

	// The IAM instance profile.
	IamInstanceProfile *LaunchTemplateIamInstanceProfileSpecification

	// The ID of the AMI or a Systems Manager parameter. The Systems Manager parameter
	// will resolve to the ID of the AMI at instance launch.
	//
	// The value depends on what you specified in the request. The possible values are:
	//
	//   - If an AMI ID was specified in the request, then this is the AMI ID.
	//
	//   - If a Systems Manager parameter was specified in the request, and
	//   ResolveAlias was configured as true , then this is the AMI ID that the
	//   parameter is mapped to in the Parameter Store.
	//
	//   - If a Systems Manager parameter was specified in the request, and
	//   ResolveAlias was configured as false , then this is the parameter value.
	//
	// For more information, see [Use a Systems Manager parameter instead of an AMI ID] in the Amazon EC2 User Guide.
	//
	// [Use a Systems Manager parameter instead of an AMI ID]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html#use-an-ssm-parameter-instead-of-an-ami-id
	ImageId *string

	// Indicates whether an instance stops or terminates when you initiate shutdown
	// from the instance (using the operating system command for system shutdown).
	InstanceInitiatedShutdownBehavior ShutdownBehavior

	// The market (purchasing) option for the instances.
	InstanceMarketOptions *LaunchTemplateInstanceMarketOptions

	// The attributes for the instance types. When you specify instance attributes,
	// Amazon EC2 will identify instance types with these attributes.
	//
	// If you specify InstanceRequirements , you can't specify InstanceTypes .
	InstanceRequirements *InstanceRequirements

	// The instance type.
	InstanceType InstanceType

	// The ID of the kernel, if applicable.
	KernelId *string

	// The name of the key pair.
	KeyName *string

	// The license configurations.
	LicenseSpecifications []LaunchTemplateLicenseConfiguration

	// The maintenance options for your instance.
	MaintenanceOptions *LaunchTemplateInstanceMaintenanceOptions

	// The metadata options for the instance. For more information, see [Instance metadata and user data] in the Amazon
	// EC2 User Guide.
	//
	// [Instance metadata and user data]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html
	MetadataOptions *LaunchTemplateInstanceMetadataOptions

	// The monitoring for the instance.
	Monitoring *LaunchTemplatesMonitoring

	// The network interfaces.
	NetworkInterfaces []LaunchTemplateInstanceNetworkInterfaceSpecification

	// Contains the launch template settings for network performance options for your
	// instance.
	NetworkPerformanceOptions *LaunchTemplateNetworkPerformanceOptions

	// The entity that manages the launch template.
	Operator *OperatorResponse

	// The placement of the instance.
	Placement *LaunchTemplatePlacement

	// The options for the instance hostname.
	PrivateDnsNameOptions *LaunchTemplatePrivateDnsNameOptions

	// The ID of the RAM disk, if applicable.
	RamDiskId *string

	// The security group IDs.
	SecurityGroupIds []string

	// The security group names.
	SecurityGroups []string

	// The tags that are applied to the resources that are created during instance
	// launch.
	TagSpecifications []LaunchTemplateTagSpecification

	// The user data for the instance.
	UserData *string
	// contains filtered or unexported fields
}

The information for a launch template.

type RevokedSecurityGroupRule added in v1.187.0

type RevokedSecurityGroupRule struct {

	// The IPv4 CIDR of the traffic source.
	CidrIpv4 *string

	// The IPv6 CIDR of the traffic source.
	CidrIpv6 *string

	// A description of the revoked security group rule.
	Description *string

	// The 'from' port number of the security group rule.
	FromPort *int32

	// A security group ID.
	GroupId *string

	// The security group rule's protocol.
	IpProtocol *string

	// Defines if a security group rule is an outbound rule.
	IsEgress *bool

	// The ID of a prefix list that's the traffic source.
	PrefixListId *string

	// The ID of a referenced security group.
	ReferencedGroupId *string

	// A security group rule ID.
	SecurityGroupRuleId *string

	// The 'to' port number of the security group rule.
	ToPort *int32
	// contains filtered or unexported fields
}

A security group rule removed with RevokeSecurityGroupEgress or RevokeSecurityGroupIngress.

type RootDeviceType

type RootDeviceType string
const (
	RootDeviceTypeEbs           RootDeviceType = "ebs"
	RootDeviceTypeInstanceStore RootDeviceType = "instance-store"
)

Enum values for RootDeviceType

func (RootDeviceType) Values added in v0.29.0

func (RootDeviceType) Values() []RootDeviceType

Values returns all known values for RootDeviceType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type Route

type Route struct {

	// The ID of the carrier gateway.
	CarrierGatewayId *string

	// The Amazon Resource Name (ARN) of the core network.
	CoreNetworkArn *string

	// The IPv4 CIDR block used for the destination match.
	DestinationCidrBlock *string

	// The IPv6 CIDR block used for the destination match.
	DestinationIpv6CidrBlock *string

	// The prefix of the Amazon Web Services service.
	DestinationPrefixListId *string

	// The ID of the egress-only internet gateway.
	EgressOnlyInternetGatewayId *string

	// The ID of a gateway attached to your VPC.
	GatewayId *string

	// The ID of a NAT instance in your VPC.
	InstanceId *string

	// The ID of Amazon Web Services account that owns the instance.
	InstanceOwnerId *string

	// The ID of the local gateway.
	LocalGatewayId *string

	// The ID of a NAT gateway.
	NatGatewayId *string

	// The ID of the network interface.
	NetworkInterfaceId *string

	// Describes how the route was created.
	//
	//   - CreateRouteTable - The route was automatically created when the route table
	//   was created.
	//
	//   - CreateRoute - The route was manually added to the route table.
	//
	//   - EnableVgwRoutePropagation - The route was propagated by route propagation.
	Origin RouteOrigin

	// The state of the route. The blackhole state indicates that the route's target
	// isn't available (for example, the specified gateway isn't attached to the VPC,
	// or the specified NAT instance has been terminated).
	State RouteState

	// The ID of a transit gateway.
	TransitGatewayId *string

	// The ID of a VPC peering connection.
	VpcPeeringConnectionId *string
	// contains filtered or unexported fields
}

Describes a route in a route table.

type RouteOrigin

type RouteOrigin string
const (
	RouteOriginCreateRouteTable          RouteOrigin = "CreateRouteTable"
	RouteOriginCreateRoute               RouteOrigin = "CreateRoute"
	RouteOriginEnableVgwRoutePropagation RouteOrigin = "EnableVgwRoutePropagation"
)

Enum values for RouteOrigin

func (RouteOrigin) Values added in v0.29.0

func (RouteOrigin) Values() []RouteOrigin

Values returns all known values for RouteOrigin. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type RouteState

type RouteState string
const (
	RouteStateActive    RouteState = "active"
	RouteStateBlackhole RouteState = "blackhole"
)

Enum values for RouteState

func (RouteState) Values added in v0.29.0

func (RouteState) Values() []RouteState

Values returns all known values for RouteState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type RouteTable

type RouteTable struct {

	// The associations between the route table and your subnets or gateways.
	Associations []RouteTableAssociation

	// The ID of the Amazon Web Services account that owns the route table.
	OwnerId *string

	// Any virtual private gateway (VGW) propagating routes.
	PropagatingVgws []PropagatingVgw

	// The ID of the route table.
	RouteTableId *string

	// The routes in the route table.
	Routes []Route

	// Any tags assigned to the route table.
	Tags []Tag

	// The ID of the VPC.
	VpcId *string
	// contains filtered or unexported fields
}

Describes a route table.

type RouteTableAssociation

type RouteTableAssociation struct {

	// The state of the association.
	AssociationState *RouteTableAssociationState

	// The ID of the internet gateway or virtual private gateway.
	GatewayId *string

	// Indicates whether this is the main route table.
	Main *bool

	// The ID of the association.
	RouteTableAssociationId *string

	// The ID of the route table.
	RouteTableId *string

	// The ID of the subnet. A subnet ID is not returned for an implicit association.
	SubnetId *string
	// contains filtered or unexported fields
}

Describes an association between a route table and a subnet or gateway.

type RouteTableAssociationState

type RouteTableAssociationState struct {

	// The state of the association.
	State RouteTableAssociationStateCode

	// The status message, if applicable.
	StatusMessage *string
	// contains filtered or unexported fields
}

Describes the state of an association between a route table and a subnet or gateway.

type RouteTableAssociationStateCode

type RouteTableAssociationStateCode string
const (
	RouteTableAssociationStateCodeAssociating    RouteTableAssociationStateCode = "associating"
	RouteTableAssociationStateCodeAssociated     RouteTableAssociationStateCode = "associated"
	RouteTableAssociationStateCodeDisassociating RouteTableAssociationStateCode = "disassociating"
	RouteTableAssociationStateCodeDisassociated  RouteTableAssociationStateCode = "disassociated"
	RouteTableAssociationStateCodeFailed         RouteTableAssociationStateCode = "failed"
)

Enum values for RouteTableAssociationStateCode

func (RouteTableAssociationStateCode) Values added in v0.29.0

Values returns all known values for RouteTableAssociationStateCode. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type RuleAction

type RuleAction string
const (
	RuleActionAllow RuleAction = "allow"
	RuleActionDeny  RuleAction = "deny"
)

Enum values for RuleAction

func (RuleAction) Values added in v0.29.0

func (RuleAction) Values() []RuleAction

Values returns all known values for RuleAction. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type RuleGroupRuleOptionsPair added in v1.91.0

type RuleGroupRuleOptionsPair struct {

	// The ARN of the rule group.
	RuleGroupArn *string

	// The rule options.
	RuleOptions []RuleOption
	// contains filtered or unexported fields
}

Describes the rule options for a stateful rule group.

type RuleGroupTypePair added in v1.91.0

type RuleGroupTypePair struct {

	// The ARN of the rule group.
	RuleGroupArn *string

	// The rule group type. The possible values are Domain List and Suricata .
	RuleGroupType *string
	// contains filtered or unexported fields
}

Describes the type of a stateful rule group.

type RuleOption added in v1.91.0

type RuleOption struct {

	// The Suricata keyword.
	Keyword *string

	// The settings for the keyword.
	Settings []string
	// contains filtered or unexported fields
}

Describes additional settings for a stateful rule.

type RunInstancesMonitoringEnabled

type RunInstancesMonitoringEnabled struct {

	// Indicates whether detailed monitoring is enabled. Otherwise, basic monitoring
	// is enabled.
	//
	// This member is required.
	Enabled *bool
	// contains filtered or unexported fields
}

Describes the monitoring of an instance.

type S3ObjectTag added in v1.4.0

type S3ObjectTag struct {

	// The key of the tag.
	//
	// Constraints: Tag keys are case-sensitive and can be up to 128 Unicode
	// characters in length. May not begin with aws :.
	Key *string

	// The value of the tag.
	//
	// Constraints: Tag values are case-sensitive and can be up to 256 Unicode
	// characters in length.
	Value *string
	// contains filtered or unexported fields
}

The tags to apply to the AMI object that will be stored in the Amazon S3 bucket. For more information, see Categorizing your storage using tagsin the Amazon Simple Storage Service User Guide.

type S3Storage

type S3Storage struct {

	// The access key ID of the owner of the bucket. Before you specify a value for
	// your access key ID, review and follow the guidance in [Best Practices for Amazon Web Services accounts]in the Account
	// ManagementReference Guide.
	//
	// [Best Practices for Amazon Web Services accounts]: https://docs.aws.amazon.com/accounts/latest/reference/best-practices.html
	AWSAccessKeyId *string

	// The bucket in which to store the AMI. You can specify a bucket that you already
	// own or a new bucket that Amazon EC2 creates on your behalf. If you specify a
	// bucket that belongs to someone else, Amazon EC2 returns an error.
	Bucket *string

	// The beginning of the file name of the AMI.
	Prefix *string

	// An Amazon S3 upload policy that gives Amazon EC2 permission to upload items
	// into Amazon S3 on your behalf.
	UploadPolicy []byte

	// The signature of the JSON document.
	UploadPolicySignature *string
	// contains filtered or unexported fields
}

Describes the storage parameters for Amazon S3 and Amazon S3 buckets for an instance store-backed AMI.

type SSEType added in v1.108.0

type SSEType string
const (
	SSETypeSseEbs SSEType = "sse-ebs"
	SSETypeSseKms SSEType = "sse-kms"
	SSETypeNone   SSEType = "none"
)

Enum values for SSEType

func (SSEType) Values added in v1.108.0

func (SSEType) Values() []SSEType

Values returns all known values for SSEType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type ScheduledInstance

type ScheduledInstance struct {

	// The Availability Zone.
	AvailabilityZone *string

	// The date when the Scheduled Instance was purchased.
	CreateDate *time.Time

	// The hourly price for a single instance.
	HourlyPrice *string

	// The number of instances.
	InstanceCount *int32

	// The instance type.
	InstanceType *string

	// The network platform.
	NetworkPlatform *string

	// The time for the next schedule to start.
	NextSlotStartTime *time.Time

	// The platform ( Linux/UNIX or Windows ).
	Platform *string

	// The time that the previous schedule ended or will end.
	PreviousSlotEndTime *time.Time

	// The schedule recurrence.
	Recurrence *ScheduledInstanceRecurrence

	// The Scheduled Instance ID.
	ScheduledInstanceId *string

	// The number of hours in the schedule.
	SlotDurationInHours *int32

	// The end date for the Scheduled Instance.
	TermEndDate *time.Time

	// The start date for the Scheduled Instance.
	TermStartDate *time.Time

	// The total number of hours for a single instance for the entire term.
	TotalScheduledInstanceHours *int32
	// contains filtered or unexported fields
}

Describes a Scheduled Instance.

type ScheduledInstanceAvailability

type ScheduledInstanceAvailability struct {

	// The Availability Zone.
	AvailabilityZone *string

	// The number of available instances.
	AvailableInstanceCount *int32

	// The time period for the first schedule to start.
	FirstSlotStartTime *time.Time

	// The hourly price for a single instance.
	HourlyPrice *string

	// The instance type. You can specify one of the C3, C4, M4, or R3 instance types.
	InstanceType *string

	// The maximum term. The only possible value is 365 days.
	MaxTermDurationInDays *int32

	// The minimum term. The only possible value is 365 days.
	MinTermDurationInDays *int32

	// The network platform.
	NetworkPlatform *string

	// The platform ( Linux/UNIX or Windows ).
	Platform *string

	// The purchase token. This token expires in two hours.
	PurchaseToken *string

	// The schedule recurrence.
	Recurrence *ScheduledInstanceRecurrence

	// The number of hours in the schedule.
	SlotDurationInHours *int32

	// The total number of hours for a single instance for the entire term.
	TotalScheduledInstanceHours *int32
	// contains filtered or unexported fields
}

Describes a schedule that is available for your Scheduled Instances.

type ScheduledInstanceRecurrence

type ScheduledInstanceRecurrence struct {

	// The frequency ( Daily , Weekly , or Monthly ).
	Frequency *string

	// The interval quantity. The interval unit depends on the value of frequency . For
	// example, every 2 weeks or every 2 months.
	Interval *int32

	// The days. For a monthly schedule, this is one or more days of the month (1-31).
	// For a weekly schedule, this is one or more days of the week (1-7, where 1 is
	// Sunday).
	OccurrenceDaySet []int32

	// Indicates whether the occurrence is relative to the end of the specified week
	// or month.
	OccurrenceRelativeToEnd *bool

	// The unit for occurrenceDaySet ( DayOfWeek or DayOfMonth ).
	OccurrenceUnit *string
	// contains filtered or unexported fields
}

Describes the recurring schedule for a Scheduled Instance.

type ScheduledInstanceRecurrenceRequest

type ScheduledInstanceRecurrenceRequest struct {

	// The frequency ( Daily , Weekly , or Monthly ).
	Frequency *string

	// The interval quantity. The interval unit depends on the value of Frequency . For
	// example, every 2 weeks or every 2 months.
	Interval *int32

	// The days. For a monthly schedule, this is one or more days of the month (1-31).
	// For a weekly schedule, this is one or more days of the week (1-7, where 1 is
	// Sunday). You can't specify this value with a daily schedule. If the occurrence
	// is relative to the end of the month, you can specify only a single day.
	OccurrenceDays []int32

	// Indicates whether the occurrence is relative to the end of the specified week
	// or month. You can't specify this value with a daily schedule.
	OccurrenceRelativeToEnd *bool

	// The unit for OccurrenceDays ( DayOfWeek or DayOfMonth ). This value is required
	// for a monthly schedule. You can't specify DayOfWeek with a weekly schedule. You
	// can't specify this value with a daily schedule.
	OccurrenceUnit *string
	// contains filtered or unexported fields
}

Describes the recurring schedule for a Scheduled Instance.

type ScheduledInstancesBlockDeviceMapping

type ScheduledInstancesBlockDeviceMapping struct {

	// The device name (for example, /dev/sdh or xvdh ).
	DeviceName *string

	// Parameters used to set up EBS volumes automatically when the instance is
	// launched.
	Ebs *ScheduledInstancesEbs

	// To omit the device from the block device mapping, specify an empty string.
	NoDevice *string

	// The virtual device name ( ephemeral N). Instance store volumes are numbered
	// starting from 0. An instance type with two available instance store volumes can
	// specify mappings for ephemeral0 and ephemeral1 . The number of available
	// instance store volumes depends on the instance type. After you connect to the
	// instance, you must mount the volume.
	//
	// Constraints: For M3 instances, you must specify instance store volumes in the
	// block device mapping for the instance. When you launch an M3 instance, we ignore
	// any instance store volumes specified in the block device mapping for the AMI.
	VirtualName *string
	// contains filtered or unexported fields
}

Describes a block device mapping for a Scheduled Instance.

type ScheduledInstancesEbs

type ScheduledInstancesEbs struct {

	// Indicates whether the volume is deleted on instance termination.
	DeleteOnTermination *bool

	// Indicates whether the volume is encrypted. You can attached encrypted volumes
	// only to instances that support them.
	Encrypted *bool

	// The number of I/O operations per second (IOPS) to provision for a gp3 , io1 , or
	// io2 volume.
	Iops *int32

	// The ID of the snapshot.
	SnapshotId *string

	// The size of the volume, in GiB.
	//
	// Default: If you're creating the volume from a snapshot and don't specify a
	// volume size, the default is the snapshot size.
	VolumeSize *int32

	// The volume type.
	//
	// Default: gp2
	VolumeType *string
	// contains filtered or unexported fields
}

Describes an EBS volume for a Scheduled Instance.

type ScheduledInstancesIamInstanceProfile

type ScheduledInstancesIamInstanceProfile struct {

	// The Amazon Resource Name (ARN).
	Arn *string

	// The name.
	Name *string
	// contains filtered or unexported fields
}

Describes an IAM instance profile for a Scheduled Instance.

type ScheduledInstancesIpv6Address

type ScheduledInstancesIpv6Address struct {

	// The IPv6 address.
	Ipv6Address *string
	// contains filtered or unexported fields
}

Describes an IPv6 address.

type ScheduledInstancesLaunchSpecification

type ScheduledInstancesLaunchSpecification struct {

	// The ID of the Amazon Machine Image (AMI).
	//
	// This member is required.
	ImageId *string

	// The block device mapping entries.
	BlockDeviceMappings []ScheduledInstancesBlockDeviceMapping

	// Indicates whether the instances are optimized for EBS I/O. This optimization
	// provides dedicated throughput to Amazon EBS and an optimized configuration stack
	// to provide optimal EBS I/O performance. This optimization isn't available with
	// all instance types. Additional usage charges apply when using an EBS-optimized
	// instance.
	//
	// Default: false
	EbsOptimized *bool

	// The IAM instance profile.
	IamInstanceProfile *ScheduledInstancesIamInstanceProfile

	// The instance type.
	InstanceType *string

	// The ID of the kernel.
	KernelId *string

	// The name of the key pair.
	KeyName *string

	// Enable or disable monitoring for the instances.
	Monitoring *ScheduledInstancesMonitoring

	// The network interfaces.
	NetworkInterfaces []ScheduledInstancesNetworkInterface

	// The placement information.
	Placement *ScheduledInstancesPlacement

	// The ID of the RAM disk.
	RamdiskId *string

	// The IDs of the security groups.
	SecurityGroupIds []string

	// The ID of the subnet in which to launch the instances.
	SubnetId *string

	// The base64-encoded MIME user data.
	UserData *string
	// contains filtered or unexported fields
}

Describes the launch specification for a Scheduled Instance.

If you are launching the Scheduled Instance in EC2-VPC, you must specify the ID of the subnet. You can specify the subnet using either SubnetId or NetworkInterface .

type ScheduledInstancesMonitoring

type ScheduledInstancesMonitoring struct {

	// Indicates whether monitoring is enabled.
	Enabled *bool
	// contains filtered or unexported fields
}

Describes whether monitoring is enabled for a Scheduled Instance.

type ScheduledInstancesNetworkInterface

type ScheduledInstancesNetworkInterface struct {

	// Indicates whether to assign a public IPv4 address to instances launched in a
	// VPC. The public IPv4 address can only be assigned to a network interface for
	// eth0, and can only be assigned to a new network interface, not an existing one.
	// You cannot specify more than one network interface in the request. If launching
	// into a default subnet, the default value is true .
	//
	// Amazon Web Services charges for all public IPv4 addresses, including public
	// IPv4 addresses associated with running instances and Elastic IP addresses. For
	// more information, see the Public IPv4 Address tab on the [Amazon VPC pricing page].
	//
	// [Amazon VPC pricing page]: http://aws.amazon.com/vpc/pricing/
	AssociatePublicIpAddress *bool

	// Indicates whether to delete the interface when the instance is terminated.
	DeleteOnTermination *bool

	// The description.
	Description *string

	// The index of the device for the network interface attachment.
	DeviceIndex *int32

	// The IDs of the security groups.
	Groups []string

	// The number of IPv6 addresses to assign to the network interface. The IPv6
	// addresses are automatically selected from the subnet range.
	Ipv6AddressCount *int32

	// The specific IPv6 addresses from the subnet range.
	Ipv6Addresses []ScheduledInstancesIpv6Address

	// The ID of the network interface.
	NetworkInterfaceId *string

	// The IPv4 address of the network interface within the subnet.
	PrivateIpAddress *string

	// The private IPv4 addresses.
	PrivateIpAddressConfigs []ScheduledInstancesPrivateIpAddressConfig

	// The number of secondary private IPv4 addresses.
	SecondaryPrivateIpAddressCount *int32

	// The ID of the subnet.
	SubnetId *string
	// contains filtered or unexported fields
}

Describes a network interface for a Scheduled Instance.

type ScheduledInstancesPlacement

type ScheduledInstancesPlacement struct {

	// The Availability Zone.
	AvailabilityZone *string

	// The name of the placement group.
	GroupName *string
	// contains filtered or unexported fields
}

Describes the placement for a Scheduled Instance.

type ScheduledInstancesPrivateIpAddressConfig

type ScheduledInstancesPrivateIpAddressConfig struct {

	// Indicates whether this is a primary IPv4 address. Otherwise, this is a
	// secondary IPv4 address.
	Primary *bool

	// The IPv4 address.
	PrivateIpAddress *string
	// contains filtered or unexported fields
}

Describes a private IPv4 address for a Scheduled Instance.

type Scope

type Scope string
const (
	ScopeAvailabilityZone Scope = "Availability Zone"
	ScopeRegional         Scope = "Region"
)

Enum values for Scope

func (Scope) Values added in v0.29.0

func (Scope) Values() []Scope

Values returns all known values for Scope. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type SecurityGroup

type SecurityGroup struct {

	// A description of the security group.
	Description *string

	// The ID of the security group.
	GroupId *string

	// The name of the security group.
	GroupName *string

	// The inbound rules associated with the security group.
	IpPermissions []IpPermission

	// The outbound rules associated with the security group.
	IpPermissionsEgress []IpPermission

	// The Amazon Web Services account ID of the owner of the security group.
	OwnerId *string

	// The ARN of the security group.
	SecurityGroupArn *string

	// Any tags assigned to the security group.
	Tags []Tag

	// The ID of the VPC for the security group.
	VpcId *string
	// contains filtered or unexported fields
}

Describes a security group.

type SecurityGroupForVpc added in v1.128.0

type SecurityGroupForVpc struct {

	// The security group's description.
	Description *string

	// The security group ID.
	GroupId *string

	// The security group name.
	GroupName *string

	// The security group owner ID.
	OwnerId *string

	// The VPC ID in which the security group was created.
	PrimaryVpcId *string

	// The security group tags.
	Tags []Tag
	// contains filtered or unexported fields
}

A security group that can be used by interfaces in the VPC.

type SecurityGroupIdentifier

type SecurityGroupIdentifier struct {

	// The ID of the security group.
	GroupId *string

	// The name of the security group.
	GroupName *string
	// contains filtered or unexported fields
}

Describes a security group.

type SecurityGroupReference

type SecurityGroupReference struct {

	// The ID of your security group.
	GroupId *string

	// The ID of the VPC with the referencing security group.
	ReferencingVpcId *string

	// This parameter is in preview and may not be available for your account.
	//
	// The ID of the transit gateway (if applicable).
	TransitGatewayId *string

	// The ID of the VPC peering connection (if applicable). For more information
	// about security group referencing for peering connections, see [Update your security groups to reference peer security groups]in the VPC
	// Peering Guide.
	//
	// [Update your security groups to reference peer security groups]: https://docs.aws.amazon.com/vpc/latest/peering/vpc-peering-security-groups.html
	VpcPeeringConnectionId *string
	// contains filtered or unexported fields
}

Describes a VPC with a security group that references your security group.

type SecurityGroupReferencingSupportValue added in v1.137.0

type SecurityGroupReferencingSupportValue string
const (
	SecurityGroupReferencingSupportValueEnable  SecurityGroupReferencingSupportValue = "enable"
	SecurityGroupReferencingSupportValueDisable SecurityGroupReferencingSupportValue = "disable"
)

Enum values for SecurityGroupReferencingSupportValue

func (SecurityGroupReferencingSupportValue) Values added in v1.137.0

Values returns all known values for SecurityGroupReferencingSupportValue. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type SecurityGroupRule added in v1.12.0

type SecurityGroupRule struct {

	// The IPv4 CIDR range.
	CidrIpv4 *string

	// The IPv6 CIDR range.
	CidrIpv6 *string

	// The security group rule description.
	Description *string

	// If the protocol is TCP or UDP, this is the start of the port range. If the
	// protocol is ICMP or ICMPv6, this is the ICMP type or -1 (all ICMP types).
	FromPort *int32

	// The ID of the security group.
	GroupId *string

	// The ID of the Amazon Web Services account that owns the security group.
	GroupOwnerId *string

	// The IP protocol name ( tcp , udp , icmp , icmpv6 ) or number (see [Protocol Numbers]).
	//
	// Use -1 to specify all protocols.
	//
	// [Protocol Numbers]: http://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml
	IpProtocol *string

	// Indicates whether the security group rule is an outbound rule.
	IsEgress *bool

	// The ID of the prefix list.
	PrefixListId *string

	// Describes the security group that is referenced in the rule.
	ReferencedGroupInfo *ReferencedSecurityGroup

	// The ARN of the security group rule.
	SecurityGroupRuleArn *string

	// The ID of the security group rule.
	SecurityGroupRuleId *string

	// The tags applied to the security group rule.
	Tags []Tag

	// If the protocol is TCP or UDP, this is the end of the port range. If the
	// protocol is ICMP or ICMPv6, this is the ICMP code or -1 (all ICMP codes). If the
	// start port is -1 (all ICMP types), then the end port must be -1 (all ICMP
	// codes).
	ToPort *int32
	// contains filtered or unexported fields
}

Describes a security group rule.

type SecurityGroupRuleDescription added in v1.12.0

type SecurityGroupRuleDescription struct {

	// The description of the security group rule.
	Description *string

	// The ID of the security group rule.
	SecurityGroupRuleId *string
	// contains filtered or unexported fields
}

Describes the description of a security group rule.

You can use this when you want to update the security group rule description for either an inbound or outbound rule.

type SecurityGroupRuleRequest added in v1.12.0

type SecurityGroupRuleRequest struct {

	// The IPv4 CIDR range. To specify a single IPv4 address, use the /32 prefix
	// length.
	CidrIpv4 *string

	// The IPv6 CIDR range. To specify a single IPv6 address, use the /128 prefix
	// length.
	CidrIpv6 *string

	// The description of the security group rule.
	Description *string

	// If the protocol is TCP or UDP, this is the start of the port range. If the
	// protocol is ICMP or ICMPv6, this is the ICMP type or -1 (all ICMP types).
	FromPort *int32

	// The IP protocol name ( tcp , udp , icmp , icmpv6 ) or number (see [Protocol Numbers]).
	//
	// Use -1 to specify all protocols.
	//
	// [Protocol Numbers]: http://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml
	IpProtocol *string

	// The ID of the prefix list.
	PrefixListId *string

	// The ID of the security group that is referenced in the security group rule.
	ReferencedGroupId *string

	// If the protocol is TCP or UDP, this is the end of the port range. If the
	// protocol is ICMP or ICMPv6, this is the ICMP code or -1 (all ICMP codes). If the
	// start port is -1 (all ICMP types), then the end port must be -1 (all ICMP
	// codes).
	ToPort *int32
	// contains filtered or unexported fields
}

Describes a security group rule.

You must specify exactly one of the following parameters, based on the rule type:

  • CidrIpv4

  • CidrIpv6

  • PrefixListId

  • ReferencedGroupId

When you modify a rule, you cannot change the rule type. For example, if the rule uses an IPv4 address range, you must use CidrIpv4 to specify a new IPv4 address range.

type SecurityGroupRuleUpdate added in v1.12.0

type SecurityGroupRuleUpdate struct {

	// The ID of the security group rule.
	//
	// This member is required.
	SecurityGroupRuleId *string

	// Information about the security group rule.
	SecurityGroupRule *SecurityGroupRuleRequest
	// contains filtered or unexported fields
}

Describes an update to a security group rule.

type SecurityGroupVpcAssociation added in v1.187.0

type SecurityGroupVpcAssociation struct {

	// The association's security group ID.
	GroupId *string

	// The association's state.
	State SecurityGroupVpcAssociationState

	// The association's state reason.
	StateReason *string

	// The association's VPC ID.
	VpcId *string

	// The Amazon Web Services account ID of the owner of the VPC.
	VpcOwnerId *string
	// contains filtered or unexported fields
}

A security group association with a VPC that you made with AssociateSecurityGroupVpc.

type SecurityGroupVpcAssociationState added in v1.187.0

type SecurityGroupVpcAssociationState string
const (
	SecurityGroupVpcAssociationStateAssociating          SecurityGroupVpcAssociationState = "associating"
	SecurityGroupVpcAssociationStateAssociated           SecurityGroupVpcAssociationState = "associated"
	SecurityGroupVpcAssociationStateAssociationFailed    SecurityGroupVpcAssociationState = "association-failed"
	SecurityGroupVpcAssociationStateDisassociating       SecurityGroupVpcAssociationState = "disassociating"
	SecurityGroupVpcAssociationStateDisassociated        SecurityGroupVpcAssociationState = "disassociated"
	SecurityGroupVpcAssociationStateDisassociationFailed SecurityGroupVpcAssociationState = "disassociation-failed"
)

Enum values for SecurityGroupVpcAssociationState

func (SecurityGroupVpcAssociationState) Values added in v1.187.0

Values returns all known values for SecurityGroupVpcAssociationState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type SelfServicePortal added in v0.29.0

type SelfServicePortal string
const (
	SelfServicePortalEnabled  SelfServicePortal = "enabled"
	SelfServicePortalDisabled SelfServicePortal = "disabled"
)

Enum values for SelfServicePortal

func (SelfServicePortal) Values added in v0.29.0

Values returns all known values for SelfServicePortal. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type ServiceConfiguration

type ServiceConfiguration struct {

	// Indicates whether requests from other Amazon Web Services accounts to create an
	// endpoint to the service must first be accepted.
	AcceptanceRequired *bool

	// The Availability Zones in which the service is available.
	AvailabilityZones []string

	// The DNS names for the service.
	BaseEndpointDnsNames []string

	// The Amazon Resource Names (ARNs) of the Gateway Load Balancers for the service.
	GatewayLoadBalancerArns []string

	// Indicates whether the service manages its VPC endpoints. Management of the
	// service VPC endpoints using the VPC endpoint API is restricted.
	ManagesVpcEndpoints *bool

	// The Amazon Resource Names (ARNs) of the Network Load Balancers for the service.
	NetworkLoadBalancerArns []string

	// The payer responsibility.
	PayerResponsibility PayerResponsibility

	// The private DNS name for the service.
	PrivateDnsName *string

	// Information about the endpoint service private DNS name configuration.
	PrivateDnsNameConfiguration *PrivateDnsNameConfiguration

	// Indicates whether consumers can access the service from a Region other than the
	// Region where the service is hosted.
	RemoteAccessEnabled *bool

	// The ID of the service.
	ServiceId *string

	// The name of the service.
	ServiceName *string

	// The service state.
	ServiceState ServiceState

	// The type of service.
	ServiceType []ServiceTypeDetail

	// The supported IP address types.
	SupportedIpAddressTypes []ServiceConnectivityType

	// The supported Regions.
	SupportedRegions []SupportedRegionDetail

	// The tags assigned to the service.
	Tags []Tag
	// contains filtered or unexported fields
}

Describes a service configuration for a VPC endpoint service.

type ServiceConnectivityType added in v1.42.0

type ServiceConnectivityType string
const (
	ServiceConnectivityTypeIpv4 ServiceConnectivityType = "ipv4"
	ServiceConnectivityTypeIpv6 ServiceConnectivityType = "ipv6"
)

Enum values for ServiceConnectivityType

func (ServiceConnectivityType) Values added in v1.42.0

Values returns all known values for ServiceConnectivityType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type ServiceDetail

type ServiceDetail struct {

	// Indicates whether VPC endpoint connection requests to the service must be
	// accepted by the service owner.
	AcceptanceRequired *bool

	// The Availability Zones in which the service is available.
	AvailabilityZones []string

	// The DNS names for the service.
	BaseEndpointDnsNames []string

	// Indicates whether the service manages its VPC endpoints. Management of the
	// service VPC endpoints using the VPC endpoint API is restricted.
	ManagesVpcEndpoints *bool

	// The Amazon Web Services account ID of the service owner.
	Owner *string

	// The payer responsibility.
	PayerResponsibility PayerResponsibility

	// The private DNS name for the service.
	PrivateDnsName *string

	// The verification state of the VPC endpoint service.
	//
	// Consumers of the endpoint service cannot use the private name when the state is
	// not verified .
	PrivateDnsNameVerificationState DnsNameState

	// The private DNS names assigned to the VPC endpoint service.
	PrivateDnsNames []PrivateDnsDetails

	// The ID of the endpoint service.
	ServiceId *string

	// The name of the service.
	ServiceName *string

	// The Region where the service is hosted.
	ServiceRegion *string

	// The type of service.
	ServiceType []ServiceTypeDetail

	// The supported IP address types.
	SupportedIpAddressTypes []ServiceConnectivityType

	// The tags assigned to the service.
	Tags []Tag

	// Indicates whether the service supports endpoint policies.
	VpcEndpointPolicySupported *bool
	// contains filtered or unexported fields
}

Describes a VPC endpoint service.

type ServiceState

type ServiceState string
const (
	ServiceStatePending   ServiceState = "Pending"
	ServiceStateAvailable ServiceState = "Available"
	ServiceStateDeleting  ServiceState = "Deleting"
	ServiceStateDeleted   ServiceState = "Deleted"
	ServiceStateFailed    ServiceState = "Failed"
)

Enum values for ServiceState

func (ServiceState) Values added in v0.29.0

func (ServiceState) Values() []ServiceState

Values returns all known values for ServiceState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type ServiceType

type ServiceType string
const (
	ServiceTypeInterface           ServiceType = "Interface"
	ServiceTypeGateway             ServiceType = "Gateway"
	ServiceTypeGatewayLoadBalancer ServiceType = "GatewayLoadBalancer"
)

Enum values for ServiceType

func (ServiceType) Values added in v0.29.0

func (ServiceType) Values() []ServiceType

Values returns all known values for ServiceType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type ServiceTypeDetail

type ServiceTypeDetail struct {

	// The type of service.
	ServiceType ServiceType
	// contains filtered or unexported fields
}

Describes the type of service for a VPC endpoint.

type ShutdownBehavior

type ShutdownBehavior string
const (
	ShutdownBehaviorStop      ShutdownBehavior = "stop"
	ShutdownBehaviorTerminate ShutdownBehavior = "terminate"
)

Enum values for ShutdownBehavior

func (ShutdownBehavior) Values added in v0.29.0

Values returns all known values for ShutdownBehavior. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type SlotDateTimeRangeRequest

type SlotDateTimeRangeRequest struct {

	// The earliest date and time, in UTC, for the Scheduled Instance to start.
	//
	// This member is required.
	EarliestTime *time.Time

	// The latest date and time, in UTC, for the Scheduled Instance to start. This
	// value must be later than or equal to the earliest date and at most three months
	// in the future.
	//
	// This member is required.
	LatestTime *time.Time
	// contains filtered or unexported fields
}

Describes the time period for a Scheduled Instance to start its first schedule. The time period must span less than one day.

type SlotStartTimeRangeRequest

type SlotStartTimeRangeRequest struct {

	// The earliest date and time, in UTC, for the Scheduled Instance to start.
	EarliestTime *time.Time

	// The latest date and time, in UTC, for the Scheduled Instance to start.
	LatestTime *time.Time
	// contains filtered or unexported fields
}

Describes the time period for a Scheduled Instance to start its first schedule.

type Snapshot

type Snapshot struct {

	// The Availability Zone or Local Zone of the snapshot. For example, us-west-1a
	// (Availability Zone) or us-west-2-lax-1a (Local Zone).
	AvailabilityZone *string

	// Only for snapshot copies created with time-based snapshot copy operations.
	//
	// The completion duration requested for the time-based snapshot copy operation.
	CompletionDurationMinutes *int32

	// The time stamp when the snapshot was completed.
	CompletionTime *time.Time

	// The data encryption key identifier for the snapshot. This value is a unique
	// identifier that corresponds to the data encryption key that was used to encrypt
	// the original volume or snapshot copy. Because data encryption keys are inherited
	// by volumes created from snapshots, and vice versa, if snapshots share the same
	// data encryption key identifier, then they belong to the same volume/snapshot
	// lineage. This parameter is only returned by DescribeSnapshots.
	DataEncryptionKeyId *string

	// The description for the snapshot.
	Description *string

	// Indicates whether the snapshot is encrypted.
	Encrypted *bool

	// The Amazon Resource Name (ARN) of the KMS key that was used to protect the
	// volume encryption key for the parent volume.
	KmsKeyId *string

	// The ARN of the Outpost on which the snapshot is stored. For more information,
	// see [Amazon EBS local snapshots on Outposts]in the Amazon EBS User Guide.
	//
	// [Amazon EBS local snapshots on Outposts]: https://docs.aws.amazon.com/ebs/latest/userguide/snapshots-outposts.html
	OutpostArn *string

	// The Amazon Web Services owner alias, from an Amazon-maintained list ( amazon ).
	// This is not the user-configured Amazon Web Services account alias set using the
	// IAM console.
	OwnerAlias *string

	// The ID of the Amazon Web Services account that owns the EBS snapshot.
	OwnerId *string

	// The progress of the snapshot, as a percentage.
	Progress *string

	// Only for archived snapshots that are temporarily restored. Indicates the date
	// and time when a temporarily restored snapshot will be automatically re-archived.
	RestoreExpiryTime *time.Time

	// The ID of the snapshot. Each snapshot receives a unique identifier when it is
	// created.
	SnapshotId *string

	// Reserved for future use.
	SseType SSEType

	// The time stamp when the snapshot was initiated.
	StartTime *time.Time

	// The snapshot state.
	State SnapshotState

	// Encrypted Amazon EBS snapshots are copied asynchronously. If a snapshot copy
	// operation fails (for example, if the proper KMS permissions are not obtained)
	// this field displays error state details to help you diagnose why the error
	// occurred. This parameter is only returned by DescribeSnapshots.
	StateMessage *string

	// The storage tier in which the snapshot is stored. standard indicates that the
	// snapshot is stored in the standard snapshot storage tier and that it is ready
	// for use. archive indicates that the snapshot is currently archived and that it
	// must be restored before it can be used.
	StorageTier StorageTier

	// Any tags assigned to the snapshot.
	Tags []Tag

	// Only for snapshot copies.
	//
	// Indicates whether the snapshot copy was created with a standard or time-based
	// snapshot copy operation. Time-based snapshot copy operations complete within the
	// completion duration specified in the request. Standard snapshot copy operations
	// are completed on a best-effort basis.
	//
	//   - standard - The snapshot copy was created with a standard snapshot copy
	//   operation.
	//
	//   - time-based - The snapshot copy was created with a time-based snapshot copy
	//   operation.
	TransferType TransferType

	// The ID of the volume that was used to create the snapshot. Snapshots created by
	// the CopySnapshotaction have an arbitrary volume ID that should not be used for any purpose.
	VolumeId *string

	// The size of the volume, in GiB.
	VolumeSize *int32
	// contains filtered or unexported fields
}

Describes a snapshot.

type SnapshotAttributeName

type SnapshotAttributeName string
const (
	SnapshotAttributeNameProductCodes           SnapshotAttributeName = "productCodes"
	SnapshotAttributeNameCreateVolumePermission SnapshotAttributeName = "createVolumePermission"
)

Enum values for SnapshotAttributeName

func (SnapshotAttributeName) Values added in v0.29.0

Values returns all known values for SnapshotAttributeName. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type SnapshotBlockPublicAccessState added in v1.131.0

type SnapshotBlockPublicAccessState string
const (
	SnapshotBlockPublicAccessStateBlockAllSharing SnapshotBlockPublicAccessState = "block-all-sharing"
	SnapshotBlockPublicAccessStateBlockNewSharing SnapshotBlockPublicAccessState = "block-new-sharing"
	SnapshotBlockPublicAccessStateUnblocked       SnapshotBlockPublicAccessState = "unblocked"
)

Enum values for SnapshotBlockPublicAccessState

func (SnapshotBlockPublicAccessState) Values added in v1.131.0

Values returns all known values for SnapshotBlockPublicAccessState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type SnapshotDetail

type SnapshotDetail struct {

	// A description for the snapshot.
	Description *string

	// The block device mapping for the snapshot.
	DeviceName *string

	// The size of the disk in the snapshot, in GiB.
	DiskImageSize *float64

	// The format of the disk image from which the snapshot is created.
	Format *string

	// The percentage of progress for the task.
	Progress *string

	// The snapshot ID of the disk being imported.
	SnapshotId *string

	// A brief status of the snapshot creation.
	Status *string

	// A detailed status message for the snapshot creation.
	StatusMessage *string

	// The URL used to access the disk image.
	Url *string

	// The Amazon S3 bucket for the disk image.
	UserBucket *UserBucketDetails
	// contains filtered or unexported fields
}

Describes the snapshot created from the imported disk.

type SnapshotDiskContainer

type SnapshotDiskContainer struct {

	// The description of the disk image being imported.
	Description *string

	// The format of the disk image being imported.
	//
	// Valid values: VHD | VMDK | RAW
	Format *string

	// The URL to the Amazon S3-based disk image being imported. It can either be a
	// https URL (https://..) or an Amazon S3 URL (s3://..).
	Url *string

	// The Amazon S3 bucket for the disk image.
	UserBucket *UserBucket
	// contains filtered or unexported fields
}

The disk container object for the import snapshot request.

type SnapshotInfo

type SnapshotInfo struct {

	// The Availability Zone or Local Zone of the snapshots. For example, us-west-1a
	// (Availability Zone) or us-west-2-lax-1a (Local Zone).
	AvailabilityZone *string

	// Description specified by the CreateSnapshotRequest that has been applied to all
	// snapshots.
	Description *string

	// Indicates whether the snapshot is encrypted.
	Encrypted *bool

	// The ARN of the Outpost on which the snapshot is stored. For more information,
	// see [Amazon EBS local snapshots on Outposts]in the Amazon EBS User Guide.
	//
	// [Amazon EBS local snapshots on Outposts]: https://docs.aws.amazon.com/ebs/latest/userguide/snapshots-outposts.html
	OutpostArn *string

	// Account id used when creating this snapshot.
	OwnerId *string

	// Progress this snapshot has made towards completing.
	Progress *string

	// Snapshot id that can be used to describe this snapshot.
	SnapshotId *string

	// Reserved for future use.
	SseType SSEType

	// Time this snapshot was started. This is the same for all snapshots initiated by
	// the same request.
	StartTime *time.Time

	// Current state of the snapshot.
	State SnapshotState

	// Tags associated with this snapshot.
	Tags []Tag

	// Source volume from which this snapshot was created.
	VolumeId *string

	// Size of the volume from which this snapshot was created.
	VolumeSize *int32
	// contains filtered or unexported fields
}

Information about a snapshot.

type SnapshotLocationEnum added in v1.198.0

type SnapshotLocationEnum string
const (
	SnapshotLocationEnumRegional SnapshotLocationEnum = "regional"
	SnapshotLocationEnumLocal    SnapshotLocationEnum = "local"
)

Enum values for SnapshotLocationEnum

func (SnapshotLocationEnum) Values added in v1.198.0

Values returns all known values for SnapshotLocationEnum. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type SnapshotRecycleBinInfo added in v1.24.0

type SnapshotRecycleBinInfo struct {

	// The description for the snapshot.
	Description *string

	// The date and time when the snaphsot entered the Recycle Bin.
	RecycleBinEnterTime *time.Time

	// The date and time when the snapshot is to be permanently deleted from the
	// Recycle Bin.
	RecycleBinExitTime *time.Time

	// The ID of the snapshot.
	SnapshotId *string

	// The ID of the volume from which the snapshot was created.
	VolumeId *string
	// contains filtered or unexported fields
}

Information about a snapshot that is currently in the Recycle Bin.

type SnapshotState

type SnapshotState string
const (
	SnapshotStatePending     SnapshotState = "pending"
	SnapshotStateCompleted   SnapshotState = "completed"
	SnapshotStateError       SnapshotState = "error"
	SnapshotStateRecoverable SnapshotState = "recoverable"
	SnapshotStateRecovering  SnapshotState = "recovering"
)

Enum values for SnapshotState

func (SnapshotState) Values added in v0.29.0

func (SnapshotState) Values() []SnapshotState

Values returns all known values for SnapshotState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type SnapshotTaskDetail

type SnapshotTaskDetail struct {

	// The description of the disk image being imported.
	Description *string

	// The size of the disk in the snapshot, in GiB.
	DiskImageSize *float64

	// Indicates whether the snapshot is encrypted.
	Encrypted *bool

	// The format of the disk image from which the snapshot is created.
	Format *string

	// The identifier for the KMS key that was used to create the encrypted snapshot.
	KmsKeyId *string

	// The percentage of completion for the import snapshot task.
	Progress *string

	// The snapshot ID of the disk being imported.
	SnapshotId *string

	// A brief status for the import snapshot task.
	Status *string

	// A detailed status message for the import snapshot task.
	StatusMessage *string

	// The URL of the disk image from which the snapshot is created.
	Url *string

	// The Amazon S3 bucket for the disk image.
	UserBucket *UserBucketDetails
	// contains filtered or unexported fields
}

Details about the import snapshot task.

type SnapshotTierStatus added in v1.24.0

type SnapshotTierStatus struct {

	// The date and time when the last archive process was completed.
	ArchivalCompleteTime *time.Time

	// The status of the last archive or restore process.
	LastTieringOperationStatus TieringOperationStatus

	// A message describing the status of the last archive or restore process.
	LastTieringOperationStatusDetail *string

	// The progress of the last archive or restore process, as a percentage.
	LastTieringProgress *int32

	// The date and time when the last archive or restore process was started.
	LastTieringStartTime *time.Time

	// The ID of the Amazon Web Services account that owns the snapshot.
	OwnerId *string

	// Only for archived snapshots that are temporarily restored. Indicates the date
	// and time when a temporarily restored snapshot will be automatically re-archived.
	RestoreExpiryTime *time.Time

	// The ID of the snapshot.
	SnapshotId *string

	// The state of the snapshot.
	Status SnapshotState

	// The storage tier in which the snapshot is stored. standard indicates that the
	// snapshot is stored in the standard snapshot storage tier and that it is ready
	// for use. archive indicates that the snapshot is currently archived and that it
	// must be restored before it can be used.
	StorageTier StorageTier

	// The tags that are assigned to the snapshot.
	Tags []Tag

	// The ID of the volume from which the snapshot was created.
	VolumeId *string
	// contains filtered or unexported fields
}

Provides information about a snapshot's storage tier.

type SpotAllocationStrategy

type SpotAllocationStrategy string
const (
	SpotAllocationStrategyLowestPrice                  SpotAllocationStrategy = "lowest-price"
	SpotAllocationStrategyDiversified                  SpotAllocationStrategy = "diversified"
	SpotAllocationStrategyCapacityOptimized            SpotAllocationStrategy = "capacity-optimized"
	SpotAllocationStrategyCapacityOptimizedPrioritized SpotAllocationStrategy = "capacity-optimized-prioritized"
	SpotAllocationStrategyPriceCapacityOptimized       SpotAllocationStrategy = "price-capacity-optimized"
)

Enum values for SpotAllocationStrategy

func (SpotAllocationStrategy) Values added in v0.29.0

Values returns all known values for SpotAllocationStrategy. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type SpotCapacityRebalance added in v0.30.0

type SpotCapacityRebalance struct {

	// The replacement strategy to use. Only available for fleets of type maintain .
	//
	// launch - Spot Fleet launches a new replacement Spot Instance when a rebalance
	// notification is emitted for an existing Spot Instance in the fleet. Spot Fleet
	// does not terminate the instances that receive a rebalance notification. You can
	// terminate the old instances, or you can leave them running. You are charged for
	// all instances while they are running.
	//
	// launch-before-terminate - Spot Fleet launches a new replacement Spot Instance
	// when a rebalance notification is emitted for an existing Spot Instance in the
	// fleet, and then, after a delay that you specify (in TerminationDelay ),
	// terminates the instances that received a rebalance notification.
	ReplacementStrategy ReplacementStrategy

	// The amount of time (in seconds) that Amazon EC2 waits before terminating the
	// old Spot Instance after launching a new replacement Spot Instance.
	//
	// Required when ReplacementStrategy is set to launch-before-terminate .
	//
	// Not valid when ReplacementStrategy is set to launch .
	//
	// Valid values: Minimum value of 120 seconds. Maximum value of 7200 seconds.
	TerminationDelay *int32
	// contains filtered or unexported fields
}

The Spot Instance replacement strategy to use when Amazon EC2 emits a signal that your Spot Instance is at an elevated risk of being interrupted. For more information, see Capacity rebalancingin the Amazon EC2 User Guide.

type SpotDatafeedSubscription

type SpotDatafeedSubscription struct {

	// The name of the Amazon S3 bucket where the Spot Instance data feed is located.
	Bucket *string

	// The fault codes for the Spot Instance request, if any.
	Fault *SpotInstanceStateFault

	// The Amazon Web Services account ID of the account.
	OwnerId *string

	// The prefix for the data feed files.
	Prefix *string

	// The state of the Spot Instance data feed subscription.
	State DatafeedSubscriptionState
	// contains filtered or unexported fields
}

Describes the data feed for a Spot Instance.

type SpotFleetLaunchSpecification

type SpotFleetLaunchSpecification struct {

	// Deprecated.
	AddressingType *string

	// One or more block devices that are mapped to the Spot Instances. You can't
	// specify both a snapshot ID and an encryption value. This is because only blank
	// volumes can be encrypted on creation. If a snapshot is the basis for a volume,
	// it is not blank and its encryption status is used for the volume encryption
	// status.
	BlockDeviceMappings []BlockDeviceMapping

	// Indicates whether the instances are optimized for EBS I/O. This optimization
	// provides dedicated throughput to Amazon EBS and an optimized configuration stack
	// to provide optimal EBS I/O performance. This optimization isn't available with
	// all instance types. Additional usage charges apply when using an EBS Optimized
	// instance.
	//
	// Default: false
	EbsOptimized *bool

	// The IAM instance profile.
	IamInstanceProfile *IamInstanceProfileSpecification

	// The ID of the AMI.
	ImageId *string

	// The attributes for the instance types. When you specify instance attributes,
	// Amazon EC2 will identify instance types with those attributes.
	//
	// If you specify InstanceRequirements , you can't specify InstanceType .
	InstanceRequirements *InstanceRequirements

	// The instance type.
	InstanceType InstanceType

	// The ID of the kernel.
	KernelId *string

	// The name of the key pair.
	KeyName *string

	// Enable or disable monitoring for the instances.
	Monitoring *SpotFleetMonitoring

	// The network interfaces.
	//
	// SpotFleetLaunchSpecification does not support Elastic Fabric Adapter (EFA). You
	// must use [LaunchTemplateConfig]instead.
	//
	// [LaunchTemplateConfig]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_LaunchTemplateConfig.html
	NetworkInterfaces []InstanceNetworkInterfaceSpecification

	// The placement information.
	Placement *SpotPlacement

	// The ID of the RAM disk. Some kernels require additional drivers at launch.
	// Check the kernel requirements for information about whether you need to specify
	// a RAM disk. To find kernel requirements, refer to the Amazon Web Services
	// Resource Center and search for the kernel ID.
	RamdiskId *string

	// The security groups.
	//
	// If you specify a network interface, you must specify any security groups as
	// part of the network interface instead of using this parameter.
	SecurityGroups []GroupIdentifier

	// The maximum price per unit hour that you are willing to pay for a Spot
	// Instance. We do not recommend using this parameter because it can lead to
	// increased interruptions. If you do not specify this parameter, you will pay the
	// current Spot price.
	//
	// If you specify a maximum price, your instances will be interrupted more
	// frequently than if you do not specify this parameter.
	SpotPrice *string

	// The IDs of the subnets in which to launch the instances. To specify multiple
	// subnets, separate them using commas; for example, "subnet-1234abcdeexample1,
	// subnet-0987cdef6example2".
	//
	// If you specify a network interface, you must specify any subnets as part of the
	// network interface instead of using this parameter.
	SubnetId *string

	// The tags to apply during creation.
	TagSpecifications []SpotFleetTagSpecification

	// The base64-encoded user data that instances use when starting up. User data is
	// limited to 16 KB.
	UserData *string

	// The number of units provided by the specified instance type. These are the same
	// units that you chose to set the target capacity in terms of instances, or a
	// performance characteristic such as vCPUs, memory, or I/O.
	//
	// If the target capacity divided by this value is not a whole number, Amazon EC2
	// rounds the number of instances to the next whole number. If this value is not
	// specified, the default is 1.
	//
	// When specifying weights, the price used in the lowestPrice and
	// priceCapacityOptimized allocation strategies is per unit hour (where the
	// instance price is divided by the specified weight). However, if all the
	// specified weights are above the requested TargetCapacity , resulting in only 1
	// instance being launched, the price used is per instance hour.
	WeightedCapacity *float64
	// contains filtered or unexported fields
}

Describes the launch specification for one or more Spot Instances. If you include On-Demand capacity in your fleet request or want to specify an EFA network device, you can't use SpotFleetLaunchSpecification ; you must use LaunchTemplateConfig.

type SpotFleetMonitoring

type SpotFleetMonitoring struct {

	// Enables monitoring for the instance.
	//
	// Default: false
	Enabled *bool
	// contains filtered or unexported fields
}

Describes whether monitoring is enabled.

type SpotFleetRequestConfig

type SpotFleetRequestConfig struct {

	// The progress of the Spot Fleet request. If there is an error, the status is
	// error . After all requests are placed, the status is pending_fulfillment . If
	// the size of the fleet is equal to or greater than its target capacity, the
	// status is fulfilled . If the size of the fleet is decreased, the status is
	// pending_termination while Spot Instances are terminating.
	ActivityStatus ActivityStatus

	// The creation date and time of the request.
	CreateTime *time.Time

	// The configuration of the Spot Fleet request.
	SpotFleetRequestConfig *SpotFleetRequestConfigData

	// The ID of the Spot Fleet request.
	SpotFleetRequestId *string

	// The state of the Spot Fleet request.
	SpotFleetRequestState BatchState

	// The tags for a Spot Fleet resource.
	Tags []Tag
	// contains filtered or unexported fields
}

Describes a Spot Fleet request.

type SpotFleetRequestConfigData

type SpotFleetRequestConfigData struct {

	// The Amazon Resource Name (ARN) of an Identity and Access Management (IAM) role
	// that grants the Spot Fleet the permission to request, launch, terminate, and tag
	// instances on your behalf. For more information, see [Spot Fleet prerequisites]in the Amazon EC2 User
	// Guide. Spot Fleet can terminate Spot Instances on your behalf when you cancel
	// its Spot Fleet request using [CancelSpotFleetRequests]or when the Spot Fleet request expires, if you set
	// TerminateInstancesWithExpiration .
	//
	// [CancelSpotFleetRequests]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CancelSpotFleetRequests
	// [Spot Fleet prerequisites]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-requests.html#spot-fleet-prerequisites
	//
	// This member is required.
	IamFleetRole *string

	// The number of units to request for the Spot Fleet. You can choose to set the
	// target capacity in terms of instances or a performance characteristic that is
	// important to your application workload, such as vCPUs, memory, or I/O. If the
	// request type is maintain , you can specify a target capacity of 0 and add
	// capacity later.
	//
	// This member is required.
	TargetCapacity *int32

	// The strategy that determines how to allocate the target Spot Instance capacity
	// across the Spot Instance pools specified by the Spot Fleet launch configuration.
	// For more information, see [Allocation strategies for Spot Instances]in the Amazon EC2 User Guide.
	//
	// priceCapacityOptimized (recommended) Spot Fleet identifies the pools with the
	// highest capacity availability for the number of instances that are launching.
	// This means that we will request Spot Instances from the pools that we believe
	// have the lowest chance of interruption in the near term. Spot Fleet then
	// requests Spot Instances from the lowest priced of these pools.
	//
	// capacityOptimized Spot Fleet identifies the pools with the highest capacity
	// availability for the number of instances that are launching. This means that we
	// will request Spot Instances from the pools that we believe have the lowest
	// chance of interruption in the near term. To give certain instance types a higher
	// chance of launching first, use capacityOptimizedPrioritized . Set a priority for
	// each instance type by using the Priority parameter for LaunchTemplateOverrides .
	// You can assign the same priority to different LaunchTemplateOverrides . EC2
	// implements the priorities on a best-effort basis, but optimizes for capacity
	// first. capacityOptimizedPrioritized is supported only if your Spot Fleet uses a
	// launch template. Note that if the OnDemandAllocationStrategy is set to
	// prioritized , the same priority is applied when fulfilling On-Demand capacity.
	//
	// diversified Spot Fleet requests instances from all of the Spot Instance pools
	// that you specify.
	//
	// lowestPrice (not recommended) We don't recommend the lowestPrice allocation
	// strategy because it has the highest risk of interruption for your Spot
	// Instances.
	//
	// Spot Fleet requests instances from the lowest priced Spot Instance pool that
	// has available capacity. If the lowest priced pool doesn't have available
	// capacity, the Spot Instances come from the next lowest priced pool that has
	// available capacity. If a pool runs out of capacity before fulfilling your
	// desired capacity, Spot Fleet will continue to fulfill your request by drawing
	// from the next lowest priced pool. To ensure that your desired capacity is met,
	// you might receive Spot Instances from several pools. Because this strategy only
	// considers instance price and not capacity availability, it might lead to high
	// interruption rates.
	//
	// Default: lowestPrice
	//
	// [Allocation strategies for Spot Instances]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-allocation-strategy.html
	AllocationStrategy AllocationStrategy

	// A unique, case-sensitive identifier that you provide to ensure the idempotency
	// of your listings. This helps to avoid duplicate listings. For more information,
	// see [Ensuring Idempotency].
	//
	// [Ensuring Idempotency]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html
	ClientToken *string

	// Reserved.
	Context *string

	// Indicates whether running instances should be terminated if you decrease the
	// target capacity of the Spot Fleet request below the current size of the Spot
	// Fleet.
	//
	// Supported only for fleets of type maintain .
	ExcessCapacityTerminationPolicy ExcessCapacityTerminationPolicy

	// The number of units fulfilled by this request compared to the set target
	// capacity. You cannot set this value.
	FulfilledCapacity *float64

	// The behavior when a Spot Instance is interrupted. The default is terminate .
	InstanceInterruptionBehavior InstanceInterruptionBehavior

	// The number of Spot pools across which to allocate your target Spot capacity.
	// Valid only when Spot AllocationStrategy is set to lowest-price . Spot Fleet
	// selects the cheapest Spot pools and evenly allocates your target Spot capacity
	// across the number of Spot pools that you specify.
	//
	// Note that Spot Fleet attempts to draw Spot Instances from the number of pools
	// that you specify on a best effort basis. If a pool runs out of Spot capacity
	// before fulfilling your target capacity, Spot Fleet will continue to fulfill your
	// request by drawing from the next cheapest pool. To ensure that your target
	// capacity is met, you might receive Spot Instances from more than the number of
	// pools that you specified. Similarly, if most of the pools have no Spot capacity,
	// you might receive your full target capacity from fewer than the number of pools
	// that you specified.
	InstancePoolsToUseCount *int32

	// The launch specifications for the Spot Fleet request. If you specify
	// LaunchSpecifications , you can't specify LaunchTemplateConfigs . If you include
	// On-Demand capacity in your request, you must use LaunchTemplateConfigs .
	//
	// If an AMI specified in a launch specification is deregistered or disabled, no
	// new instances can be launched from the AMI. For fleets of type maintain , the
	// target capacity will not be maintained.
	LaunchSpecifications []SpotFleetLaunchSpecification

	// The launch template and overrides. If you specify LaunchTemplateConfigs , you
	// can't specify LaunchSpecifications . If you include On-Demand capacity in your
	// request, you must use LaunchTemplateConfigs .
	LaunchTemplateConfigs []LaunchTemplateConfig

	// One or more Classic Load Balancers and target groups to attach to the Spot
	// Fleet request. Spot Fleet registers the running Spot Instances with the
	// specified Classic Load Balancers and target groups.
	//
	// With Network Load Balancers, Spot Fleet cannot register instances that have the
	// following instance types: C1, CC1, CC2, CG1, CG2, CR1, CS1, G1, G2, HI1, HS1,
	// M1, M2, M3, and T1.
	LoadBalancersConfig *LoadBalancersConfig

	// The order of the launch template overrides to use in fulfilling On-Demand
	// capacity. If you specify lowestPrice , Spot Fleet uses price to determine the
	// order, launching the lowest price first. If you specify prioritized , Spot Fleet
	// uses the priority that you assign to each Spot Fleet launch template override,
	// launching the highest priority first. If you do not specify a value, Spot Fleet
	// defaults to lowestPrice .
	OnDemandAllocationStrategy OnDemandAllocationStrategy

	// The number of On-Demand units fulfilled by this request compared to the set
	// target On-Demand capacity.
	OnDemandFulfilledCapacity *float64

	// The maximum amount per hour for On-Demand Instances that you're willing to pay.
	// You can use the onDemandMaxTotalPrice parameter, the spotMaxTotalPrice
	// parameter, or both parameters to ensure that your fleet cost does not exceed
	// your budget. If you set a maximum price per hour for the On-Demand Instances and
	// Spot Instances in your request, Spot Fleet will launch instances until it
	// reaches the maximum amount you're willing to pay. When the maximum amount you're
	// willing to pay is reached, the fleet stops launching instances even if it hasn’t
	// met the target capacity.
	//
	// If your fleet includes T instances that are configured as unlimited , and if
	// their average CPU usage exceeds the baseline utilization, you will incur a
	// charge for surplus credits. The onDemandMaxTotalPrice does not account for
	// surplus credits, and, if you use surplus credits, your final cost might be
	// higher than what you specified for onDemandMaxTotalPrice . For more information,
	// see [Surplus credits can incur charges]in the Amazon EC2 User Guide.
	//
	// [Surplus credits can incur charges]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances-unlimited-mode-concepts.html#unlimited-mode-surplus-credits
	OnDemandMaxTotalPrice *string

	// The number of On-Demand units to request. You can choose to set the target
	// capacity in terms of instances or a performance characteristic that is important
	// to your application workload, such as vCPUs, memory, or I/O. If the request type
	// is maintain , you can specify a target capacity of 0 and add capacity later.
	OnDemandTargetCapacity *int32

	// Indicates whether Spot Fleet should replace unhealthy instances.
	ReplaceUnhealthyInstances *bool

	// The strategies for managing your Spot Instances that are at an elevated risk of
	// being interrupted.
	SpotMaintenanceStrategies *SpotMaintenanceStrategies

	// The maximum amount per hour for Spot Instances that you're willing to pay. You
	// can use the spotMaxTotalPrice parameter, the onDemandMaxTotalPrice parameter,
	// or both parameters to ensure that your fleet cost does not exceed your budget.
	// If you set a maximum price per hour for the On-Demand Instances and Spot
	// Instances in your request, Spot Fleet will launch instances until it reaches the
	// maximum amount you're willing to pay. When the maximum amount you're willing to
	// pay is reached, the fleet stops launching instances even if it hasn’t met the
	// target capacity.
	//
	// If your fleet includes T instances that are configured as unlimited , and if
	// their average CPU usage exceeds the baseline utilization, you will incur a
	// charge for surplus credits. The spotMaxTotalPrice does not account for surplus
	// credits, and, if you use surplus credits, your final cost might be higher than
	// what you specified for spotMaxTotalPrice . For more information, see [Surplus credits can incur charges] in the
	// Amazon EC2 User Guide.
	//
	// [Surplus credits can incur charges]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances-unlimited-mode-concepts.html#unlimited-mode-surplus-credits
	SpotMaxTotalPrice *string

	// The maximum price per unit hour that you are willing to pay for a Spot
	// Instance. We do not recommend using this parameter because it can lead to
	// increased interruptions. If you do not specify this parameter, you will pay the
	// current Spot price.
	//
	// If you specify a maximum price, your instances will be interrupted more
	// frequently than if you do not specify this parameter.
	SpotPrice *string

	// The key-value pair for tagging the Spot Fleet request on creation. The value
	// for ResourceType must be spot-fleet-request , otherwise the Spot Fleet request
	// fails. To tag instances at launch, specify the tags in the [launch template](valid only if you
	// use LaunchTemplateConfigs ) or in the [SpotFleetTagSpecification] (valid only if you use
	// LaunchSpecifications ). For information about tagging after launch, see [Tag your resources].
	//
	// [SpotFleetTagSpecification]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SpotFleetTagSpecification.html
	// [launch template]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html#create-launch-template
	// [Tag your resources]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#tag-resources
	TagSpecifications []TagSpecification

	// The unit for the target capacity. You can specify this parameter only when
	// using attribute-based instance type selection.
	//
	// Default: units (the number of instances)
	TargetCapacityUnitType TargetCapacityUnitType

	// Indicates whether running Spot Instances are terminated when the Spot Fleet
	// request expires.
	TerminateInstancesWithExpiration *bool

	// The type of request. Indicates whether the Spot Fleet only requests the target
	// capacity or also attempts to maintain it. When this value is request , the Spot
	// Fleet only places the required requests. It does not attempt to replenish Spot
	// Instances if capacity is diminished, nor does it submit requests in alternative
	// Spot pools if capacity is not available. When this value is maintain , the Spot
	// Fleet maintains the target capacity. The Spot Fleet places the required requests
	// to meet capacity and automatically replenishes any interrupted instances.
	// Default: maintain . instant is listed but is not used by Spot Fleet.
	Type FleetType

	// The start date and time of the request, in UTC format (YYYY-MM-DDTHH:MM:SSZ).
	// By default, Amazon EC2 starts fulfilling the request immediately.
	ValidFrom *time.Time

	// The end date and time of the request, in UTC format (YYYY-MM-DDTHH:MM:SSZ).
	// After the end date and time, no new Spot Instance requests are placed or able to
	// fulfill the request. If no value is specified, the Spot Fleet request remains
	// until you cancel it.
	ValidUntil *time.Time
	// contains filtered or unexported fields
}

Describes the configuration of a Spot Fleet request.

type SpotFleetTagSpecification

type SpotFleetTagSpecification struct {

	// The type of resource. Currently, the only resource type that is supported is
	// instance . To tag the Spot Fleet request on creation, use the TagSpecifications
	// parameter in [SpotFleetRequestConfigData].
	//
	// [SpotFleetRequestConfigData]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SpotFleetRequestConfigData.html
	ResourceType ResourceType

	// The tags.
	Tags []Tag
	// contains filtered or unexported fields
}

The tags for a Spot Fleet resource.

type SpotInstanceInterruptionBehavior

type SpotInstanceInterruptionBehavior string
const (
	SpotInstanceInterruptionBehaviorHibernate SpotInstanceInterruptionBehavior = "hibernate"
	SpotInstanceInterruptionBehaviorStop      SpotInstanceInterruptionBehavior = "stop"
	SpotInstanceInterruptionBehaviorTerminate SpotInstanceInterruptionBehavior = "terminate"
)

Enum values for SpotInstanceInterruptionBehavior

func (SpotInstanceInterruptionBehavior) Values added in v0.29.0

Values returns all known values for SpotInstanceInterruptionBehavior. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type SpotInstanceRequest

type SpotInstanceRequest struct {

	// Deprecated.
	ActualBlockHourlyPrice *string

	// The Availability Zone group. If you specify the same Availability Zone group
	// for all Spot Instance requests, all Spot Instances are launched in the same
	// Availability Zone.
	AvailabilityZoneGroup *string

	// Deprecated.
	BlockDurationMinutes *int32

	// The date and time when the Spot Instance request was created, in UTC format
	// (for example, YYYY-MM-DDTHH:MM:SSZ).
	CreateTime *time.Time

	// The fault codes for the Spot Instance request, if any.
	Fault *SpotInstanceStateFault

	// The instance ID, if an instance has been launched to fulfill the Spot Instance
	// request.
	InstanceId *string

	// The behavior when a Spot Instance is interrupted.
	InstanceInterruptionBehavior InstanceInterruptionBehavior

	// The instance launch group. Launch groups are Spot Instances that launch
	// together and terminate together.
	LaunchGroup *string

	// Additional information for launching instances.
	LaunchSpecification *LaunchSpecification

	// The Availability Zone in which the request is launched.
	LaunchedAvailabilityZone *string

	// The product description associated with the Spot Instance.
	ProductDescription RIProductDescription

	// The ID of the Spot Instance request.
	SpotInstanceRequestId *string

	// The maximum price per unit hour that you are willing to pay for a Spot
	// Instance. We do not recommend using this parameter because it can lead to
	// increased interruptions. If you do not specify this parameter, you will pay the
	// current Spot price.
	//
	// If you specify a maximum price, your instances will be interrupted more
	// frequently than if you do not specify this parameter.
	SpotPrice *string

	// The state of the Spot Instance request. Spot request status information helps
	// track your Spot Instance requests. For more information, see [Spot request status]in the Amazon EC2
	// User Guide.
	//
	// [Spot request status]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-request-status.html
	State SpotInstanceState

	// The status code and status message describing the Spot Instance request.
	Status *SpotInstanceStatus

	// Any tags assigned to the resource.
	Tags []Tag

	// The Spot Instance request type.
	Type SpotInstanceType

	// The start date of the request, in UTC format (for example,
	// YYYY-MM-DDTHH:MM:SSZ). The request becomes active at this date and time.
	ValidFrom *time.Time

	// The end date of the request, in UTC format (YYYY-MM-DDTHH:MM:SSZ).
	//
	//   - For a persistent request, the request remains active until the validUntil
	//   date and time is reached. Otherwise, the request remains active until you cancel
	//   it.
	//
	//   - For a one-time request, the request remains active until all instances
	//   launch, the request is canceled, or the validUntil date and time is reached.
	//   By default, the request is valid for 7 days from the date the request was
	//   created.
	ValidUntil *time.Time
	// contains filtered or unexported fields
}

Describes a Spot Instance request.

type SpotInstanceState

type SpotInstanceState string
const (
	SpotInstanceStateOpen      SpotInstanceState = "open"
	SpotInstanceStateActive    SpotInstanceState = "active"
	SpotInstanceStateClosed    SpotInstanceState = "closed"
	SpotInstanceStateCancelled SpotInstanceState = "cancelled"
	SpotInstanceStateFailed    SpotInstanceState = "failed"
	SpotInstanceStateDisabled  SpotInstanceState = "disabled"
)

Enum values for SpotInstanceState

func (SpotInstanceState) Values added in v0.29.0

Values returns all known values for SpotInstanceState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type SpotInstanceStateFault

type SpotInstanceStateFault struct {

	// The reason code for the Spot Instance state change.
	Code *string

	// The message for the Spot Instance state change.
	Message *string
	// contains filtered or unexported fields
}

Describes a Spot Instance state change.

type SpotInstanceStatus

type SpotInstanceStatus struct {

	// The status code. For a list of status codes, see [Spot request status codes] in the Amazon EC2 User Guide.
	//
	// [Spot request status codes]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-request-status.html#spot-instance-request-status-understand
	Code *string

	// The description for the status code.
	Message *string

	// The date and time of the most recent status update, in UTC format (for example,
	// YYYY-MM-DDTHH:MM:SSZ).
	UpdateTime *time.Time
	// contains filtered or unexported fields
}

Describes the status of a Spot Instance request.

type SpotInstanceType

type SpotInstanceType string
const (
	SpotInstanceTypeOneTime    SpotInstanceType = "one-time"
	SpotInstanceTypePersistent SpotInstanceType = "persistent"
)

Enum values for SpotInstanceType

func (SpotInstanceType) Values added in v0.29.0

Values returns all known values for SpotInstanceType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type SpotMaintenanceStrategies added in v0.30.0

type SpotMaintenanceStrategies struct {

	// The Spot Instance replacement strategy to use when Amazon EC2 emits a signal
	// that your Spot Instance is at an elevated risk of being interrupted. For more
	// information, see [Capacity rebalancing]in the Amazon EC2 User Guide.
	//
	// [Capacity rebalancing]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-capacity-rebalance.html
	CapacityRebalance *SpotCapacityRebalance
	// contains filtered or unexported fields
}

The strategies for managing your Spot Instances that are at an elevated risk of being interrupted.

type SpotMarketOptions

type SpotMarketOptions struct {

	// Deprecated.
	BlockDurationMinutes *int32

	// The behavior when a Spot Instance is interrupted.
	//
	// If Configured (for [HibernationOptions]HibernationOptions ) is set to true , the
	// InstanceInterruptionBehavior parameter is automatically set to hibernate . If
	// you set it to stop or terminate , you'll get an error.
	//
	// If Configured (for [HibernationOptions]HibernationOptions ) is set to false or null , the
	// InstanceInterruptionBehavior parameter is automatically set to terminate . You
	// can also set it to stop or hibernate .
	//
	// For more information, see [Interruption behavior] in the Amazon EC2 User Guide.
	//
	// [HibernationOptions]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_HibernationOptionsRequest.html
	// [Interruption behavior]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/interruption-behavior.html
	InstanceInterruptionBehavior InstanceInterruptionBehavior

	// The maximum hourly price that you're willing to pay for a Spot Instance. We do
	// not recommend using this parameter because it can lead to increased
	// interruptions. If you do not specify this parameter, you will pay the current
	// Spot price.
	//
	// If you specify a maximum price, your Spot Instances will be interrupted more
	// frequently than if you do not specify this parameter.
	MaxPrice *string

	// The Spot Instance request type. For [RunInstances], persistent Spot Instance requests are
	// only supported when the instance interruption behavior is either hibernate or
	// stop .
	//
	// [RunInstances]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances
	SpotInstanceType SpotInstanceType

	// The end date of the request, in UTC format (YYYY-MM-DDTHH:MM:SSZ). Supported
	// only for persistent requests.
	//
	//   - For a persistent request, the request remains active until the ValidUntil
	//   date and time is reached. Otherwise, the request remains active until you cancel
	//   it.
	//
	//   - For a one-time request, ValidUntil is not supported. The request remains
	//   active until all instances launch or you cancel the request.
	ValidUntil *time.Time
	// contains filtered or unexported fields
}

The options for Spot Instances.

type SpotOptions

type SpotOptions struct {

	// The strategy that determines how to allocate the target Spot Instance capacity
	// across the Spot Instance pools specified by the EC2 Fleet launch configuration.
	// For more information, see [Allocation strategies for Spot Instances]in the Amazon EC2 User Guide.
	//
	// price-capacity-optimized (recommended) EC2 Fleet identifies the pools with the
	// highest capacity availability for the number of instances that are launching.
	// This means that we will request Spot Instances from the pools that we believe
	// have the lowest chance of interruption in the near term. EC2 Fleet then requests
	// Spot Instances from the lowest priced of these pools.
	//
	// capacity-optimized EC2 Fleet identifies the pools with the highest capacity
	// availability for the number of instances that are launching. This means that we
	// will request Spot Instances from the pools that we believe have the lowest
	// chance of interruption in the near term. To give certain instance types a higher
	// chance of launching first, use capacity-optimized-prioritized . Set a priority
	// for each instance type by using the Priority parameter for
	// LaunchTemplateOverrides . You can assign the same priority to different
	// LaunchTemplateOverrides . EC2 implements the priorities on a best-effort basis,
	// but optimizes for capacity first. capacity-optimized-prioritized is supported
	// only if your EC2 Fleet uses a launch template. Note that if the On-Demand
	// AllocationStrategy is set to prioritized , the same priority is applied when
	// fulfilling On-Demand capacity.
	//
	// diversified EC2 Fleet requests instances from all of the Spot Instance pools
	// that you specify.
	//
	// lowest-price (not recommended) We don't recommend the lowest-price allocation
	// strategy because it has the highest risk of interruption for your Spot
	// Instances.
	//
	// EC2 Fleet requests instances from the lowest priced Spot Instance pool that has
	// available capacity. If the lowest priced pool doesn't have available capacity,
	// the Spot Instances come from the next lowest priced pool that has available
	// capacity. If a pool runs out of capacity before fulfilling your desired
	// capacity, EC2 Fleet will continue to fulfill your request by drawing from the
	// next lowest priced pool. To ensure that your desired capacity is met, you might
	// receive Spot Instances from several pools. Because this strategy only considers
	// instance price and not capacity availability, it might lead to high interruption
	// rates.
	//
	// Default: lowest-price
	//
	// [Allocation strategies for Spot Instances]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-allocation-strategy.html
	AllocationStrategy SpotAllocationStrategy

	// The behavior when a Spot Instance is interrupted.
	//
	// Default: terminate
	InstanceInterruptionBehavior SpotInstanceInterruptionBehavior

	// The number of Spot pools across which to allocate your target Spot capacity.
	// Supported only when AllocationStrategy is set to lowest-price . EC2 Fleet
	// selects the cheapest Spot pools and evenly allocates your target Spot capacity
	// across the number of Spot pools that you specify.
	//
	// Note that EC2 Fleet attempts to draw Spot Instances from the number of pools
	// that you specify on a best effort basis. If a pool runs out of Spot capacity
	// before fulfilling your target capacity, EC2 Fleet will continue to fulfill your
	// request by drawing from the next cheapest pool. To ensure that your target
	// capacity is met, you might receive Spot Instances from more than the number of
	// pools that you specified. Similarly, if most of the pools have no Spot capacity,
	// you might receive your full target capacity from fewer than the number of pools
	// that you specified.
	InstancePoolsToUseCount *int32

	// The strategies for managing your workloads on your Spot Instances that will be
	// interrupted. Currently only the capacity rebalance strategy is available.
	MaintenanceStrategies *FleetSpotMaintenanceStrategies

	// The maximum amount per hour for Spot Instances that you're willing to pay. We
	// do not recommend using this parameter because it can lead to increased
	// interruptions. If you do not specify this parameter, you will pay the current
	// Spot price.
	//
	// If you specify a maximum price, your Spot Instances will be interrupted more
	// frequently than if you do not specify this parameter.
	//
	// If your fleet includes T instances that are configured as unlimited , and if
	// their average CPU usage exceeds the baseline utilization, you will incur a
	// charge for surplus credits. The maxTotalPrice does not account for surplus
	// credits, and, if you use surplus credits, your final cost might be higher than
	// what you specified for maxTotalPrice . For more information, see [Surplus credits can incur charges] in the Amazon
	// EC2 User Guide.
	//
	// [Surplus credits can incur charges]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances-unlimited-mode-concepts.html#unlimited-mode-surplus-credits
	MaxTotalPrice *string

	// The minimum target capacity for Spot Instances in the fleet. If this minimum
	// capacity isn't reached, no instances are launched.
	//
	// Constraints: Maximum value of 1000 . Supported only for fleets of type instant .
	//
	// At least one of the following must be specified: SingleAvailabilityZone |
	// SingleInstanceType
	MinTargetCapacity *int32

	// Indicates that the fleet launches all Spot Instances into a single Availability
	// Zone.
	//
	// Supported only for fleets of type instant .
	SingleAvailabilityZone *bool

	// Indicates that the fleet uses a single instance type to launch all Spot
	// Instances in the fleet.
	//
	// Supported only for fleets of type instant .
	SingleInstanceType *bool
	// contains filtered or unexported fields
}

Describes the configuration of Spot Instances in an EC2 Fleet.

type SpotOptionsRequest

type SpotOptionsRequest struct {

	// The strategy that determines how to allocate the target Spot Instance capacity
	// across the Spot Instance pools specified by the EC2 Fleet launch configuration.
	// For more information, see [Allocation strategies for Spot Instances]in the Amazon EC2 User Guide.
	//
	// price-capacity-optimized (recommended) EC2 Fleet identifies the pools with the
	// highest capacity availability for the number of instances that are launching.
	// This means that we will request Spot Instances from the pools that we believe
	// have the lowest chance of interruption in the near term. EC2 Fleet then requests
	// Spot Instances from the lowest priced of these pools.
	//
	// capacity-optimized EC2 Fleet identifies the pools with the highest capacity
	// availability for the number of instances that are launching. This means that we
	// will request Spot Instances from the pools that we believe have the lowest
	// chance of interruption in the near term. To give certain instance types a higher
	// chance of launching first, use capacity-optimized-prioritized . Set a priority
	// for each instance type by using the Priority parameter for
	// LaunchTemplateOverrides . You can assign the same priority to different
	// LaunchTemplateOverrides . EC2 implements the priorities on a best-effort basis,
	// but optimizes for capacity first. capacity-optimized-prioritized is supported
	// only if your EC2 Fleet uses a launch template. Note that if the On-Demand
	// AllocationStrategy is set to prioritized , the same priority is applied when
	// fulfilling On-Demand capacity.
	//
	// diversified EC2 Fleet requests instances from all of the Spot Instance pools
	// that you specify.
	//
	// lowest-price (not recommended) We don't recommend the lowest-price allocation
	// strategy because it has the highest risk of interruption for your Spot
	// Instances.
	//
	// EC2 Fleet requests instances from the lowest priced Spot Instance pool that has
	// available capacity. If the lowest priced pool doesn't have available capacity,
	// the Spot Instances come from the next lowest priced pool that has available
	// capacity. If a pool runs out of capacity before fulfilling your desired
	// capacity, EC2 Fleet will continue to fulfill your request by drawing from the
	// next lowest priced pool. To ensure that your desired capacity is met, you might
	// receive Spot Instances from several pools. Because this strategy only considers
	// instance price and not capacity availability, it might lead to high interruption
	// rates.
	//
	// Default: lowest-price
	//
	// [Allocation strategies for Spot Instances]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-allocation-strategy.html
	AllocationStrategy SpotAllocationStrategy

	// The behavior when a Spot Instance is interrupted.
	//
	// Default: terminate
	InstanceInterruptionBehavior SpotInstanceInterruptionBehavior

	// The number of Spot pools across which to allocate your target Spot capacity.
	// Supported only when Spot AllocationStrategy is set to lowest-price . EC2 Fleet
	// selects the cheapest Spot pools and evenly allocates your target Spot capacity
	// across the number of Spot pools that you specify.
	//
	// Note that EC2 Fleet attempts to draw Spot Instances from the number of pools
	// that you specify on a best effort basis. If a pool runs out of Spot capacity
	// before fulfilling your target capacity, EC2 Fleet will continue to fulfill your
	// request by drawing from the next cheapest pool. To ensure that your target
	// capacity is met, you might receive Spot Instances from more than the number of
	// pools that you specified. Similarly, if most of the pools have no Spot capacity,
	// you might receive your full target capacity from fewer than the number of pools
	// that you specified.
	InstancePoolsToUseCount *int32

	// The strategies for managing your Spot Instances that are at an elevated risk of
	// being interrupted.
	MaintenanceStrategies *FleetSpotMaintenanceStrategiesRequest

	// The maximum amount per hour for Spot Instances that you're willing to pay. We
	// do not recommend using this parameter because it can lead to increased
	// interruptions. If you do not specify this parameter, you will pay the current
	// Spot price.
	//
	// If you specify a maximum price, your Spot Instances will be interrupted more
	// frequently than if you do not specify this parameter.
	//
	// If your fleet includes T instances that are configured as unlimited , and if
	// their average CPU usage exceeds the baseline utilization, you will incur a
	// charge for surplus credits. The MaxTotalPrice does not account for surplus
	// credits, and, if you use surplus credits, your final cost might be higher than
	// what you specified for MaxTotalPrice . For more information, see [Surplus credits can incur charges] in the Amazon
	// EC2 User Guide.
	//
	// [Surplus credits can incur charges]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances-unlimited-mode-concepts.html#unlimited-mode-surplus-credits
	MaxTotalPrice *string

	// The minimum target capacity for Spot Instances in the fleet. If this minimum
	// capacity isn't reached, no instances are launched.
	//
	// Constraints: Maximum value of 1000 . Supported only for fleets of type instant .
	//
	// At least one of the following must be specified: SingleAvailabilityZone |
	// SingleInstanceType
	MinTargetCapacity *int32

	// Indicates that the fleet launches all Spot Instances into a single Availability
	// Zone.
	//
	// Supported only for fleets of type instant .
	SingleAvailabilityZone *bool

	// Indicates that the fleet uses a single instance type to launch all Spot
	// Instances in the fleet.
	//
	// Supported only for fleets of type instant .
	SingleInstanceType *bool
	// contains filtered or unexported fields
}

Describes the configuration of Spot Instances in an EC2 Fleet request.

type SpotPlacement

type SpotPlacement struct {

	// The Availability Zone.
	//
	// [Spot Fleet only] To specify multiple Availability Zones, separate them using
	// commas; for example, "us-west-2a, us-west-2b".
	AvailabilityZone *string

	// The name of the placement group.
	GroupName *string

	// The tenancy of the instance (if the instance is running in a VPC). An instance
	// with a tenancy of dedicated runs on single-tenant hardware. The host tenancy is
	// not supported for Spot Instances.
	Tenancy Tenancy
	// contains filtered or unexported fields
}

Describes Spot Instance placement.

type SpotPlacementScore added in v1.21.0

type SpotPlacementScore struct {

	// The Availability Zone.
	AvailabilityZoneId *string

	// The Region.
	Region *string

	// The placement score, on a scale from 1 to 10 . A score of 10 indicates that
	// your Spot request is highly likely to succeed in this Region or Availability
	// Zone. A score of 1 indicates that your Spot request is not likely to succeed.
	Score *int32
	// contains filtered or unexported fields
}

The Spot placement score for this Region or Availability Zone. The score is calculated based on the assumption that the capacity-optimized allocation strategy is used and that all of the Availability Zones in the Region can be used.

type SpotPrice

type SpotPrice struct {

	// The Availability Zone.
	AvailabilityZone *string

	// The instance type.
	InstanceType InstanceType

	// A general description of the AMI.
	ProductDescription RIProductDescription

	// The maximum price per unit hour that you are willing to pay for a Spot
	// Instance. We do not recommend using this parameter because it can lead to
	// increased interruptions. If you do not specify this parameter, you will pay the
	// current Spot price.
	//
	// If you specify a maximum price, your instances will be interrupted more
	// frequently than if you do not specify this parameter.
	SpotPrice *string

	// The date and time the request was created, in UTC format (for example,
	// YYYY-MM-DDTHH:MM:SSZ).
	Timestamp *time.Time
	// contains filtered or unexported fields
}

The maximum price per unit hour that you are willing to pay for a Spot Instance. We do not recommend using this parameter because it can lead to increased interruptions. If you do not specify this parameter, you will pay the current Spot price.

If you specify a maximum price, your instances will be interrupted more frequently than if you do not specify this parameter.

type SpreadLevel added in v1.47.0

type SpreadLevel string
const (
	SpreadLevelHost SpreadLevel = "host"
	SpreadLevelRack SpreadLevel = "rack"
)

Enum values for SpreadLevel

func (SpreadLevel) Values added in v1.47.0

func (SpreadLevel) Values() []SpreadLevel

Values returns all known values for SpreadLevel. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type StaleIpPermission

type StaleIpPermission struct {

	// If the protocol is TCP or UDP, this is the start of the port range. If the
	// protocol is ICMP or ICMPv6, this is the ICMP type or -1 (all ICMP types).
	FromPort *int32

	// The IP protocol name ( tcp , udp , icmp , icmpv6 ) or number (see [Protocol Numbers)].
	//
	// [Protocol Numbers)]: http://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml
	IpProtocol *string

	// The IP ranges. Not applicable for stale security group rules.
	IpRanges []string

	// The prefix list IDs. Not applicable for stale security group rules.
	PrefixListIds []string

	// If the protocol is TCP or UDP, this is the end of the port range. If the
	// protocol is ICMP or ICMPv6, this is the ICMP code or -1 (all ICMP codes).
	ToPort *int32

	// The security group pairs. Returns the ID of the referenced security group and
	// VPC, and the ID and status of the VPC peering connection.
	UserIdGroupPairs []UserIdGroupPair
	// contains filtered or unexported fields
}

Describes a stale rule in a security group.

type StaleSecurityGroup

type StaleSecurityGroup struct {

	// The description of the security group.
	Description *string

	// The ID of the security group.
	GroupId *string

	// The name of the security group.
	GroupName *string

	// Information about the stale inbound rules in the security group.
	StaleIpPermissions []StaleIpPermission

	// Information about the stale outbound rules in the security group.
	StaleIpPermissionsEgress []StaleIpPermission

	// The ID of the VPC for the security group.
	VpcId *string
	// contains filtered or unexported fields
}

Describes a stale security group (a security group that contains stale rules).

type State

type State string
const (
	StatePendingAcceptance State = "PendingAcceptance"
	StatePending           State = "Pending"
	StateAvailable         State = "Available"
	StateDeleting          State = "Deleting"
	StateDeleted           State = "Deleted"
	StateRejected          State = "Rejected"
	StateFailed            State = "Failed"
	StateExpired           State = "Expired"
	StatePartial           State = "Partial"
)

Enum values for State

func (State) Values added in v0.29.0

func (State) Values() []State

Values returns all known values for State. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type StateReason

type StateReason struct {

	// The reason code for the state change.
	Code *string

	// The message for the state change.
	//
	//   - Server.InsufficientInstanceCapacity : There was insufficient capacity
	//   available to satisfy the launch request.
	//
	//   - Server.InternalError : An internal error caused the instance to terminate
	//   during launch.
	//
	//   - Server.ScheduledStop : The instance was stopped due to a scheduled
	//   retirement.
	//
	//   - Server.SpotInstanceShutdown : The instance was stopped because the number of
	//   Spot requests with a maximum price equal to or higher than the Spot price
	//   exceeded available capacity or because of an increase in the Spot price.
	//
	//   - Server.SpotInstanceTermination : The instance was terminated because the
	//   number of Spot requests with a maximum price equal to or higher than the Spot
	//   price exceeded available capacity or because of an increase in the Spot price.
	//
	//   - Client.InstanceInitiatedShutdown : The instance was shut down from the
	//   operating system of the instance.
	//
	//   - Client.InstanceTerminated : The instance was terminated or rebooted during
	//   AMI creation.
	//
	//   - Client.InternalError : A client error caused the instance to terminate
	//   during launch.
	//
	//   - Client.InvalidSnapshot.NotFound : The specified snapshot was not found.
	//
	//   - Client.UserInitiatedHibernate : Hibernation was initiated on the instance.
	//
	//   - Client.UserInitiatedShutdown : The instance was shut down using the Amazon
	//   EC2 API.
	//
	//   - Client.VolumeLimitExceeded : The limit on the number of EBS volumes or total
	//   storage was exceeded. Decrease usage or request an increase in your account
	//   limits.
	Message *string
	// contains filtered or unexported fields
}

Describes a state change.

type StaticSourcesSupportValue added in v0.31.0

type StaticSourcesSupportValue string
const (
	StaticSourcesSupportValueEnable  StaticSourcesSupportValue = "enable"
	StaticSourcesSupportValueDisable StaticSourcesSupportValue = "disable"
)

Enum values for StaticSourcesSupportValue

func (StaticSourcesSupportValue) Values added in v0.31.0

Values returns all known values for StaticSourcesSupportValue. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type StatisticType added in v1.73.0

type StatisticType string
const (
	StatisticTypeP50 StatisticType = "p50"
)

Enum values for StatisticType

func (StatisticType) Values added in v1.73.0

func (StatisticType) Values() []StatisticType

Values returns all known values for StatisticType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type Status

type Status string
const (
	StatusMoveInProgress Status = "MoveInProgress"
	StatusInVpc          Status = "InVpc"
	StatusInClassic      Status = "InClassic"
)

Enum values for Status

func (Status) Values added in v0.29.0

func (Status) Values() []Status

Values returns all known values for Status. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type StatusName

type StatusName string
const (
	StatusNameReachability StatusName = "reachability"
)

Enum values for StatusName

func (StatusName) Values added in v0.29.0

func (StatusName) Values() []StatusName

Values returns all known values for StatusName. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type StatusType

type StatusType string
const (
	StatusTypePassed           StatusType = "passed"
	StatusTypeFailed           StatusType = "failed"
	StatusTypeInsufficientData StatusType = "insufficient-data"
	StatusTypeInitializing     StatusType = "initializing"
)

Enum values for StatusType

func (StatusType) Values added in v0.29.0

func (StatusType) Values() []StatusType

Values returns all known values for StatusType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type Storage

type Storage struct {

	// An Amazon S3 storage location.
	S3 *S3Storage
	// contains filtered or unexported fields
}

Describes the storage location for an instance store-backed AMI.

type StorageLocation

type StorageLocation struct {

	// The name of the S3 bucket.
	Bucket *string

	// The key.
	Key *string
	// contains filtered or unexported fields
}

Describes a storage location in Amazon S3.

type StorageTier added in v1.24.0

type StorageTier string
const (
	StorageTierArchive  StorageTier = "archive"
	StorageTierStandard StorageTier = "standard"
)

Enum values for StorageTier

func (StorageTier) Values added in v1.24.0

func (StorageTier) Values() []StorageTier

Values returns all known values for StorageTier. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type StoreImageTaskResult added in v1.4.0

type StoreImageTaskResult struct {

	// The ID of the AMI that is being stored.
	AmiId *string

	// The name of the Amazon S3 bucket that contains the stored AMI object.
	Bucket *string

	// The progress of the task as a percentage.
	ProgressPercentage *int32

	// The name of the stored AMI object in the bucket.
	S3objectKey *string

	// If the tasks fails, the reason for the failure is returned. If the task
	// succeeds, null is returned.
	StoreTaskFailureReason *string

	// The state of the store task ( InProgress , Completed , or Failed ).
	StoreTaskState *string

	// The time the task started.
	TaskStartTime *time.Time
	// contains filtered or unexported fields
}

The information about the AMI store task, including the progress of the task.

type Subnet

type Subnet struct {

	// Indicates whether a network interface created in this subnet (including a
	// network interface created by RunInstances) receives an IPv6 address.
	AssignIpv6AddressOnCreation *bool

	// The Availability Zone of the subnet.
	AvailabilityZone *string

	// The AZ ID of the subnet.
	AvailabilityZoneId *string

	// The number of unused private IPv4 addresses in the subnet. The IPv4 addresses
	// for any stopped instances are considered unavailable.
	AvailableIpAddressCount *int32

	// The state of VPC Block Public Access (BPA).
	BlockPublicAccessStates *BlockPublicAccessStates

	// The IPv4 CIDR block assigned to the subnet.
	CidrBlock *string

	// The customer-owned IPv4 address pool associated with the subnet.
	CustomerOwnedIpv4Pool *string

	// Indicates whether this is the default subnet for the Availability Zone.
	DefaultForAz *bool

	// Indicates whether DNS queries made to the Amazon-provided DNS Resolver in this
	// subnet should return synthetic IPv6 addresses for IPv4-only destinations.
	EnableDns64 *bool

	//  Indicates the device position for local network interfaces in this subnet. For
	// example, 1 indicates local network interfaces in this subnet are the secondary
	// network interface (eth1).
	EnableLniAtDeviceIndex *int32

	// Information about the IPv6 CIDR blocks associated with the subnet.
	Ipv6CidrBlockAssociationSet []SubnetIpv6CidrBlockAssociation

	// Indicates whether this is an IPv6 only subnet.
	Ipv6Native *bool

	// Indicates whether a network interface created in this subnet (including a
	// network interface created by RunInstances) receives a customer-owned IPv4 address.
	MapCustomerOwnedIpOnLaunch *bool

	// Indicates whether instances launched in this subnet receive a public IPv4
	// address.
	//
	// Amazon Web Services charges for all public IPv4 addresses, including public
	// IPv4 addresses associated with running instances and Elastic IP addresses. For
	// more information, see the Public IPv4 Address tab on the [Amazon VPC pricing page].
	//
	// [Amazon VPC pricing page]: http://aws.amazon.com/vpc/pricing/
	MapPublicIpOnLaunch *bool

	// The Amazon Resource Name (ARN) of the Outpost.
	OutpostArn *string

	// The ID of the Amazon Web Services account that owns the subnet.
	OwnerId *string

	// The type of hostnames to assign to instances in the subnet at launch. An
	// instance hostname is based on the IPv4 address or ID of the instance.
	PrivateDnsNameOptionsOnLaunch *PrivateDnsNameOptionsOnLaunch

	// The current state of the subnet.
	State SubnetState

	// The Amazon Resource Name (ARN) of the subnet.
	SubnetArn *string

	// The ID of the subnet.
	SubnetId *string

	// Any tags assigned to the subnet.
	Tags []Tag

	// The ID of the VPC the subnet is in.
	VpcId *string
	// contains filtered or unexported fields
}

Describes a subnet.

type SubnetAssociation

type SubnetAssociation struct {

	// The state of the subnet association.
	State TransitGatewayMulitcastDomainAssociationState

	// The ID of the subnet.
	SubnetId *string
	// contains filtered or unexported fields
}

Describes the subnet association with the transit gateway multicast domain.

type SubnetCidrBlockState

type SubnetCidrBlockState struct {

	// The state of a CIDR block.
	State SubnetCidrBlockStateCode

	// A message about the status of the CIDR block, if applicable.
	StatusMessage *string
	// contains filtered or unexported fields
}

Describes the state of a CIDR block.

type SubnetCidrBlockStateCode

type SubnetCidrBlockStateCode string
const (
	SubnetCidrBlockStateCodeAssociating    SubnetCidrBlockStateCode = "associating"
	SubnetCidrBlockStateCodeAssociated     SubnetCidrBlockStateCode = "associated"
	SubnetCidrBlockStateCodeDisassociating SubnetCidrBlockStateCode = "disassociating"
	SubnetCidrBlockStateCodeDisassociated  SubnetCidrBlockStateCode = "disassociated"
	SubnetCidrBlockStateCodeFailing        SubnetCidrBlockStateCode = "failing"
	SubnetCidrBlockStateCodeFailed         SubnetCidrBlockStateCode = "failed"
)

Enum values for SubnetCidrBlockStateCode

func (SubnetCidrBlockStateCode) Values added in v0.29.0

Values returns all known values for SubnetCidrBlockStateCode. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type SubnetCidrReservation added in v1.13.0

type SubnetCidrReservation struct {

	// The CIDR that has been reserved.
	Cidr *string

	// The description assigned to the subnet CIDR reservation.
	Description *string

	// The ID of the account that owns the subnet CIDR reservation.
	OwnerId *string

	// The type of reservation.
	ReservationType SubnetCidrReservationType

	// The ID of the subnet CIDR reservation.
	SubnetCidrReservationId *string

	// The ID of the subnet.
	SubnetId *string

	// The tags assigned to the subnet CIDR reservation.
	Tags []Tag
	// contains filtered or unexported fields
}

Describes a subnet CIDR reservation.

type SubnetCidrReservationType added in v1.13.0

type SubnetCidrReservationType string
const (
	SubnetCidrReservationTypePrefix   SubnetCidrReservationType = "prefix"
	SubnetCidrReservationTypeExplicit SubnetCidrReservationType = "explicit"
)

Enum values for SubnetCidrReservationType

func (SubnetCidrReservationType) Values added in v1.13.0

Values returns all known values for SubnetCidrReservationType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type SubnetConfiguration added in v1.113.0

type SubnetConfiguration struct {

	// The IPv4 address to assign to the endpoint network interface in the subnet. You
	// must provide an IPv4 address if the VPC endpoint supports IPv4.
	//
	// If you specify an IPv4 address when modifying a VPC endpoint, we replace the
	// existing endpoint network interface with a new endpoint network interface with
	// this IP address. This process temporarily disconnects the subnet and the VPC
	// endpoint.
	Ipv4 *string

	// The IPv6 address to assign to the endpoint network interface in the subnet. You
	// must provide an IPv6 address if the VPC endpoint supports IPv6.
	//
	// If you specify an IPv6 address when modifying a VPC endpoint, we replace the
	// existing endpoint network interface with a new endpoint network interface with
	// this IP address. This process temporarily disconnects the subnet and the VPC
	// endpoint.
	Ipv6 *string

	// The ID of the subnet.
	SubnetId *string
	// contains filtered or unexported fields
}

Describes the configuration of a subnet for a VPC endpoint.

type SubnetIpPrefixes added in v1.195.0

type SubnetIpPrefixes struct {

	// Array of SubnetIpPrefixes objects.
	IpPrefixes []string

	// ID of the subnet.
	SubnetId *string
	// contains filtered or unexported fields
}

Prefixes of the subnet IP.

type SubnetIpv6CidrBlockAssociation

type SubnetIpv6CidrBlockAssociation struct {

	// The ID of the association.
	AssociationId *string

	// The source that allocated the IP address space. byoip or amazon indicates
	// public IP address space allocated by Amazon or space that you have allocated
	// with Bring your own IP (BYOIP). none indicates private space.
	IpSource IpSource

	// Public IPv6 addresses are those advertised on the internet from Amazon Web
	// Services. Private IP addresses are not and cannot be advertised on the internet
	// from Amazon Web Services.
	Ipv6AddressAttribute Ipv6AddressAttribute

	// The IPv6 CIDR block.
	Ipv6CidrBlock *string

	// The state of the CIDR block.
	Ipv6CidrBlockState *SubnetCidrBlockState
	// contains filtered or unexported fields
}

Describes an association between a subnet and an IPv6 CIDR block.

type SubnetState

type SubnetState string
const (
	SubnetStatePending     SubnetState = "pending"
	SubnetStateAvailable   SubnetState = "available"
	SubnetStateUnavailable SubnetState = "unavailable"
)

Enum values for SubnetState

func (SubnetState) Values added in v0.29.0

func (SubnetState) Values() []SubnetState

Values returns all known values for SubnetState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type Subscription added in v1.73.0

type Subscription struct {

	// The Region or Availability Zone that's the target for the subscription. For
	// example, eu-west-1 .
	Destination *string

	// The metric used for the subscription.
	Metric MetricType

	// The data aggregation time for the subscription.
	Period PeriodType

	// The Region or Availability Zone that's the source for the subscription. For
	// example, us-east-1 .
	Source *string

	// The statistic used for the subscription.
	Statistic StatisticType
	// contains filtered or unexported fields
}

Describes an Infrastructure Performance subscription.

type SuccessfulInstanceCreditSpecificationItem

type SuccessfulInstanceCreditSpecificationItem struct {

	// The ID of the instance.
	InstanceId *string
	// contains filtered or unexported fields
}

Describes the burstable performance instance whose credit option for CPU usage was successfully modified.

type SuccessfulQueuedPurchaseDeletion

type SuccessfulQueuedPurchaseDeletion struct {

	// The ID of the Reserved Instance.
	ReservedInstancesId *string
	// contains filtered or unexported fields
}

Describes a Reserved Instance whose queued purchase was successfully deleted.

type SummaryStatus

type SummaryStatus string
const (
	SummaryStatusOk               SummaryStatus = "ok"
	SummaryStatusImpaired         SummaryStatus = "impaired"
	SummaryStatusInsufficientData SummaryStatus = "insufficient-data"
	SummaryStatusNotApplicable    SummaryStatus = "not-applicable"
	SummaryStatusInitializing     SummaryStatus = "initializing"
)

Enum values for SummaryStatus

func (SummaryStatus) Values added in v0.29.0

func (SummaryStatus) Values() []SummaryStatus

Values returns all known values for SummaryStatus. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type SupportedAdditionalProcessorFeature added in v1.95.0

type SupportedAdditionalProcessorFeature string
const (
	SupportedAdditionalProcessorFeatureAmdSevSnp SupportedAdditionalProcessorFeature = "amd-sev-snp"
)

Enum values for SupportedAdditionalProcessorFeature

func (SupportedAdditionalProcessorFeature) Values added in v1.95.0

Values returns all known values for SupportedAdditionalProcessorFeature. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type SupportedRegionDetail added in v1.194.0

type SupportedRegionDetail struct {

	// The Region code.
	Region *string

	// The service state. The possible values are Pending , Available , Deleting ,
	// Deleted , Failed , and Closed .
	ServiceState *string
	// contains filtered or unexported fields
}

Describes a supported Region.

type Tag

type Tag struct {

	// The key of the tag.
	//
	// Constraints: Tag keys are case-sensitive and accept a maximum of 127 Unicode
	// characters. May not begin with aws: .
	Key *string

	// The value of the tag.
	//
	// Constraints: Tag values are case-sensitive and accept a maximum of 256 Unicode
	// characters.
	Value *string
	// contains filtered or unexported fields
}

Describes a tag.

type TagDescription

type TagDescription struct {

	// The tag key.
	Key *string

	// The ID of the resource.
	ResourceId *string

	// The resource type.
	ResourceType ResourceType

	// The tag value.
	Value *string
	// contains filtered or unexported fields
}

Describes a tag.

type TagSpecification

type TagSpecification struct {

	// The type of resource to tag on creation.
	ResourceType ResourceType

	// The tags to apply to the resource.
	Tags []Tag
	// contains filtered or unexported fields
}

The tags to apply to a resource when the resource is being created. When you specify a tag, you must specify the resource type to tag, otherwise the request will fail.

The Valid Values lists all the resource types that can be tagged. However, the action you're using might not support tagging all of these resource types. If you try to tag a resource type that is unsupported for the action you're using, you'll get an error.

type TargetCapacitySpecification

type TargetCapacitySpecification struct {

	// The default target capacity type.
	DefaultTargetCapacityType DefaultTargetCapacityType

	// The number of On-Demand units to request. If you specify a target capacity for
	// Spot units, you cannot specify a target capacity for On-Demand units.
	OnDemandTargetCapacity *int32

	// The maximum number of Spot units to launch. If you specify a target capacity
	// for On-Demand units, you cannot specify a target capacity for Spot units.
	SpotTargetCapacity *int32

	// The unit for the target capacity.
	TargetCapacityUnitType TargetCapacityUnitType

	// The number of units to request, filled the default target capacity type.
	TotalTargetCapacity *int32
	// contains filtered or unexported fields
}

The number of units to request. You can choose to set the target capacity in terms of instances or a performance characteristic that is important to your application workload, such as vCPUs, memory, or I/O. If the request type is maintain , you can specify a target capacity of 0 and add capacity later.

You can use the On-Demand Instance MaxTotalPrice parameter, the Spot Instance MaxTotalPrice , or both to ensure that your fleet cost does not exceed your budget. If you set a maximum price per hour for the On-Demand Instances and Spot Instances in your request, EC2 Fleet will launch instances until it reaches the maximum amount that you're willing to pay. When the maximum amount you're willing to pay is reached, the fleet stops launching instances even if it hasn’t met the target capacity. The MaxTotalPrice parameters are located in OnDemandOptions and SpotOptions.

type TargetCapacitySpecificationRequest

type TargetCapacitySpecificationRequest struct {

	// The number of units to request, filled using the default target capacity type.
	//
	// This member is required.
	TotalTargetCapacity *int32

	// The default target capacity type.
	DefaultTargetCapacityType DefaultTargetCapacityType

	// The number of On-Demand units to request.
	OnDemandTargetCapacity *int32

	// The number of Spot units to request.
	SpotTargetCapacity *int32

	// The unit for the target capacity. You can specify this parameter only when
	// using attributed-based instance type selection.
	//
	// Default: units (the number of instances)
	TargetCapacityUnitType TargetCapacityUnitType
	// contains filtered or unexported fields
}

The number of units to request. You can choose to set the target capacity as the number of instances. Or you can set the target capacity to a performance characteristic that is important to your application workload, such as vCPUs, memory, or I/O. If the request type is maintain , you can specify a target capacity of 0 and add capacity later.

You can use the On-Demand Instance MaxTotalPrice parameter, the Spot Instance MaxTotalPrice parameter, or both parameters to ensure that your fleet cost does not exceed your budget. If you set a maximum price per hour for the On-Demand Instances and Spot Instances in your request, EC2 Fleet will launch instances until it reaches the maximum amount that you're willing to pay. When the maximum amount you're willing to pay is reached, the fleet stops launching instances even if it hasn't met the target capacity. The MaxTotalPrice parameters are located in OnDemandOptionsRequestand SpotOptionsRequest.

type TargetCapacityUnitType added in v1.21.0

type TargetCapacityUnitType string
const (
	TargetCapacityUnitTypeVcpu      TargetCapacityUnitType = "vcpu"
	TargetCapacityUnitTypeMemoryMib TargetCapacityUnitType = "memory-mib"
	TargetCapacityUnitTypeUnits     TargetCapacityUnitType = "units"
)

Enum values for TargetCapacityUnitType

func (TargetCapacityUnitType) Values added in v1.21.0

Values returns all known values for TargetCapacityUnitType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type TargetConfiguration

type TargetConfiguration struct {

	// The number of instances the Convertible Reserved Instance offering can be
	// applied to. This parameter is reserved and cannot be specified in a request
	InstanceCount *int32

	// The ID of the Convertible Reserved Instance offering.
	OfferingId *string
	// contains filtered or unexported fields
}

Information about the Convertible Reserved Instance offering.

type TargetConfigurationRequest

type TargetConfigurationRequest struct {

	// The Convertible Reserved Instance offering ID.
	//
	// This member is required.
	OfferingId *string

	// The number of instances the Convertible Reserved Instance offering can be
	// applied to. This parameter is reserved and cannot be specified in a request
	InstanceCount *int32
	// contains filtered or unexported fields
}

Details about the target configuration.

type TargetGroup

type TargetGroup struct {

	// The Amazon Resource Name (ARN) of the target group.
	Arn *string
	// contains filtered or unexported fields
}

Describes a load balancer target group.

type TargetGroupsConfig

type TargetGroupsConfig struct {

	// One or more target groups.
	TargetGroups []TargetGroup
	// contains filtered or unexported fields
}

Describes the target groups to attach to a Spot Fleet. Spot Fleet registers the running Spot Instances with these target groups.

type TargetNetwork

type TargetNetwork struct {

	// The ID of the association.
	AssociationId *string

	// The ID of the Client VPN endpoint with which the target network is associated.
	ClientVpnEndpointId *string

	// The IDs of the security groups applied to the target network association.
	SecurityGroups []string

	// The current state of the target network association.
	Status *AssociationStatus

	// The ID of the subnet specified as the target network.
	TargetNetworkId *string

	// The ID of the VPC in which the target network (subnet) is located.
	VpcId *string
	// contains filtered or unexported fields
}

Describes a target network associated with a Client VPN endpoint.

type TargetReservationValue

type TargetReservationValue struct {

	// The total value of the Convertible Reserved Instances that make up the
	// exchange. This is the sum of the list value, remaining upfront price, and
	// additional upfront cost of the exchange.
	ReservationValue *ReservationValue

	// The configuration of the Convertible Reserved Instances that make up the
	// exchange.
	TargetConfiguration *TargetConfiguration
	// contains filtered or unexported fields
}

The total value of the new Convertible Reserved Instances.

type TargetStorageTier added in v1.24.0

type TargetStorageTier string
const (
	TargetStorageTierArchive TargetStorageTier = "archive"
)

Enum values for TargetStorageTier

func (TargetStorageTier) Values added in v1.24.0

Values returns all known values for TargetStorageTier. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type TelemetryStatus

type TelemetryStatus string
const (
	TelemetryStatusUp   TelemetryStatus = "UP"
	TelemetryStatusDown TelemetryStatus = "DOWN"
)

Enum values for TelemetryStatus

func (TelemetryStatus) Values added in v0.29.0

func (TelemetryStatus) Values() []TelemetryStatus

Values returns all known values for TelemetryStatus. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type Tenancy

type Tenancy string
const (
	TenancyDefault   Tenancy = "default"
	TenancyDedicated Tenancy = "dedicated"
	TenancyHost      Tenancy = "host"
)

Enum values for Tenancy

func (Tenancy) Values added in v0.29.0

func (Tenancy) Values() []Tenancy

Values returns all known values for Tenancy. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type TerminateConnectionStatus

type TerminateConnectionStatus struct {

	// The ID of the client connection.
	ConnectionId *string

	// A message about the status of the client connection, if applicable.
	CurrentStatus *ClientVpnConnectionStatus

	// The state of the client connection.
	PreviousStatus *ClientVpnConnectionStatus
	// contains filtered or unexported fields
}

Information about a terminated Client VPN endpoint client connection.

type ThroughResourcesStatement added in v1.25.0

type ThroughResourcesStatement struct {

	// The resource statement.
	ResourceStatement *ResourceStatement
	// contains filtered or unexported fields
}

Describes a through resource statement.

type ThroughResourcesStatementRequest added in v1.25.0

type ThroughResourcesStatementRequest struct {

	// The resource statement.
	ResourceStatement *ResourceStatementRequest
	// contains filtered or unexported fields
}

Describes a through resource statement.

type TieringOperationStatus added in v1.24.0

type TieringOperationStatus string
const (
	TieringOperationStatusArchivalInProgress         TieringOperationStatus = "archival-in-progress"
	TieringOperationStatusArchivalCompleted          TieringOperationStatus = "archival-completed"
	TieringOperationStatusArchivalFailed             TieringOperationStatus = "archival-failed"
	TieringOperationStatusTemporaryRestoreInProgress TieringOperationStatus = "temporary-restore-in-progress"
	TieringOperationStatusTemporaryRestoreCompleted  TieringOperationStatus = "temporary-restore-completed"
	TieringOperationStatusTemporaryRestoreFailed     TieringOperationStatus = "temporary-restore-failed"
	TieringOperationStatusPermanentRestoreInProgress TieringOperationStatus = "permanent-restore-in-progress"
	TieringOperationStatusPermanentRestoreCompleted  TieringOperationStatus = "permanent-restore-completed"
	TieringOperationStatusPermanentRestoreFailed     TieringOperationStatus = "permanent-restore-failed"
)

Enum values for TieringOperationStatus

func (TieringOperationStatus) Values added in v1.24.0

Values returns all known values for TieringOperationStatus. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type TokenState added in v1.171.0

type TokenState string
const (
	TokenStateValid   TokenState = "valid"
	TokenStateExpired TokenState = "expired"
)

Enum values for TokenState

func (TokenState) Values added in v1.171.0

func (TokenState) Values() []TokenState

Values returns all known values for TokenState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type TotalLocalStorageGB added in v1.21.0

type TotalLocalStorageGB struct {

	// The maximum amount of total local storage, in GB. If this parameter is not
	// specified, there is no maximum limit.
	Max *float64

	// The minimum amount of total local storage, in GB. If this parameter is not
	// specified, there is no minimum limit.
	Min *float64
	// contains filtered or unexported fields
}

The minimum and maximum amount of total local storage, in GB.

type TotalLocalStorageGBRequest added in v1.21.0

type TotalLocalStorageGBRequest struct {

	// The maximum amount of total local storage, in GB. To specify no maximum limit,
	// omit this parameter.
	Max *float64

	// The minimum amount of total local storage, in GB. To specify no minimum limit,
	// omit this parameter.
	Min *float64
	// contains filtered or unexported fields
}

The minimum and maximum amount of total local storage, in GB.

type TpmSupportValues added in v1.41.0

type TpmSupportValues string
const (
	TpmSupportValuesV20 TpmSupportValues = "v2.0"
)

Enum values for TpmSupportValues

func (TpmSupportValues) Values added in v1.41.0

Values returns all known values for TpmSupportValues. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type TrafficDirection

type TrafficDirection string
const (
	TrafficDirectionIngress TrafficDirection = "ingress"
	TrafficDirectionEgress  TrafficDirection = "egress"
)

Enum values for TrafficDirection

func (TrafficDirection) Values added in v0.29.0

Values returns all known values for TrafficDirection. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type TrafficMirrorFilter

type TrafficMirrorFilter struct {

	// The description of the Traffic Mirror filter.
	Description *string

	// Information about the egress rules that are associated with the Traffic Mirror
	// filter.
	EgressFilterRules []TrafficMirrorFilterRule

	// Information about the ingress rules that are associated with the Traffic Mirror
	// filter.
	IngressFilterRules []TrafficMirrorFilterRule

	// The network service traffic that is associated with the Traffic Mirror filter.
	NetworkServices []TrafficMirrorNetworkService

	// The tags assigned to the Traffic Mirror filter.
	Tags []Tag

	// The ID of the Traffic Mirror filter.
	TrafficMirrorFilterId *string
	// contains filtered or unexported fields
}

Describes the Traffic Mirror filter.

type TrafficMirrorFilterRule

type TrafficMirrorFilterRule struct {

	// The description of the Traffic Mirror rule.
	Description *string

	// The destination CIDR block assigned to the Traffic Mirror rule.
	DestinationCidrBlock *string

	// The destination port range assigned to the Traffic Mirror rule.
	DestinationPortRange *TrafficMirrorPortRange

	// The protocol assigned to the Traffic Mirror rule.
	Protocol *int32

	// The action assigned to the Traffic Mirror rule.
	RuleAction TrafficMirrorRuleAction

	// The rule number of the Traffic Mirror rule.
	RuleNumber *int32

	// The source CIDR block assigned to the Traffic Mirror rule.
	SourceCidrBlock *string

	// The source port range assigned to the Traffic Mirror rule.
	SourcePortRange *TrafficMirrorPortRange

	// Tags on Traffic Mirroring filter rules.
	Tags []Tag

	// The traffic direction assigned to the Traffic Mirror rule.
	TrafficDirection TrafficDirection

	// The ID of the Traffic Mirror filter that the rule is associated with.
	TrafficMirrorFilterId *string

	// The ID of the Traffic Mirror rule.
	TrafficMirrorFilterRuleId *string
	// contains filtered or unexported fields
}

Describes the Traffic Mirror rule.

type TrafficMirrorFilterRuleField

type TrafficMirrorFilterRuleField string
const (
	TrafficMirrorFilterRuleFieldDestinationPortRange TrafficMirrorFilterRuleField = "destination-port-range"
	TrafficMirrorFilterRuleFieldSourcePortRange      TrafficMirrorFilterRuleField = "source-port-range"
	TrafficMirrorFilterRuleFieldProtocol             TrafficMirrorFilterRuleField = "protocol"
	TrafficMirrorFilterRuleFieldDescription          TrafficMirrorFilterRuleField = "description"
)

Enum values for TrafficMirrorFilterRuleField

func (TrafficMirrorFilterRuleField) Values added in v0.29.0

Values returns all known values for TrafficMirrorFilterRuleField. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type TrafficMirrorNetworkService

type TrafficMirrorNetworkService string
const (
	TrafficMirrorNetworkServiceAmazonDns TrafficMirrorNetworkService = "amazon-dns"
)

Enum values for TrafficMirrorNetworkService

func (TrafficMirrorNetworkService) Values added in v0.29.0

Values returns all known values for TrafficMirrorNetworkService. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type TrafficMirrorPortRange

type TrafficMirrorPortRange struct {

	// The start of the Traffic Mirror port range. This applies to the TCP and UDP
	// protocols.
	FromPort *int32

	// The end of the Traffic Mirror port range. This applies to the TCP and UDP
	// protocols.
	ToPort *int32
	// contains filtered or unexported fields
}

Describes the Traffic Mirror port range.

type TrafficMirrorPortRangeRequest

type TrafficMirrorPortRangeRequest struct {

	// The first port in the Traffic Mirror port range. This applies to the TCP and
	// UDP protocols.
	FromPort *int32

	// The last port in the Traffic Mirror port range. This applies to the TCP and UDP
	// protocols.
	ToPort *int32
	// contains filtered or unexported fields
}

Information about the Traffic Mirror filter rule port range.

type TrafficMirrorRuleAction

type TrafficMirrorRuleAction string
const (
	TrafficMirrorRuleActionAccept TrafficMirrorRuleAction = "accept"
	TrafficMirrorRuleActionReject TrafficMirrorRuleAction = "reject"
)

Enum values for TrafficMirrorRuleAction

func (TrafficMirrorRuleAction) Values added in v0.29.0

Values returns all known values for TrafficMirrorRuleAction. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type TrafficMirrorSession

type TrafficMirrorSession struct {

	// The description of the Traffic Mirror session.
	Description *string

	// The ID of the Traffic Mirror session's network interface.
	NetworkInterfaceId *string

	// The ID of the account that owns the Traffic Mirror session.
	OwnerId *string

	// The number of bytes in each packet to mirror. These are the bytes after the
	// VXLAN header. To mirror a subset, set this to the length (in bytes) to mirror.
	// For example, if you set this value to 100, then the first 100 bytes that meet
	// the filter criteria are copied to the target. Do not specify this parameter when
	// you want to mirror the entire packet
	PacketLength *int32

	// The session number determines the order in which sessions are evaluated when an
	// interface is used by multiple sessions. The first session with a matching filter
	// is the one that mirrors the packets.
	//
	// Valid values are 1-32766.
	SessionNumber *int32

	// The tags assigned to the Traffic Mirror session.
	Tags []Tag

	// The ID of the Traffic Mirror filter.
	TrafficMirrorFilterId *string

	// The ID for the Traffic Mirror session.
	TrafficMirrorSessionId *string

	// The ID of the Traffic Mirror target.
	TrafficMirrorTargetId *string

	// The virtual network ID associated with the Traffic Mirror session.
	VirtualNetworkId *int32
	// contains filtered or unexported fields
}

Describes a Traffic Mirror session.

type TrafficMirrorSessionField

type TrafficMirrorSessionField string
const (
	TrafficMirrorSessionFieldPacketLength     TrafficMirrorSessionField = "packet-length"
	TrafficMirrorSessionFieldDescription      TrafficMirrorSessionField = "description"
	TrafficMirrorSessionFieldVirtualNetworkId TrafficMirrorSessionField = "virtual-network-id"
)

Enum values for TrafficMirrorSessionField

func (TrafficMirrorSessionField) Values added in v0.29.0

Values returns all known values for TrafficMirrorSessionField. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type TrafficMirrorTarget

type TrafficMirrorTarget struct {

	// Information about the Traffic Mirror target.
	Description *string

	// The ID of the Gateway Load Balancer endpoint.
	GatewayLoadBalancerEndpointId *string

	// The network interface ID that is attached to the target.
	NetworkInterfaceId *string

	// The Amazon Resource Name (ARN) of the Network Load Balancer.
	NetworkLoadBalancerArn *string

	// The ID of the account that owns the Traffic Mirror target.
	OwnerId *string

	// The tags assigned to the Traffic Mirror target.
	Tags []Tag

	// The ID of the Traffic Mirror target.
	TrafficMirrorTargetId *string

	// The type of Traffic Mirror target.
	Type TrafficMirrorTargetType
	// contains filtered or unexported fields
}

Describes a Traffic Mirror target.

type TrafficMirrorTargetType

type TrafficMirrorTargetType string
const (
	TrafficMirrorTargetTypeNetworkInterface            TrafficMirrorTargetType = "network-interface"
	TrafficMirrorTargetTypeNetworkLoadBalancer         TrafficMirrorTargetType = "network-load-balancer"
	TrafficMirrorTargetTypeGatewayLoadBalancerEndpoint TrafficMirrorTargetType = "gateway-load-balancer-endpoint"
)

Enum values for TrafficMirrorTargetType

func (TrafficMirrorTargetType) Values added in v0.29.0

Values returns all known values for TrafficMirrorTargetType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type TrafficType

type TrafficType string
const (
	TrafficTypeAccept TrafficType = "ACCEPT"
	TrafficTypeReject TrafficType = "REJECT"
	TrafficTypeAll    TrafficType = "ALL"
)

Enum values for TrafficType

func (TrafficType) Values added in v0.29.0

func (TrafficType) Values() []TrafficType

Values returns all known values for TrafficType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type TransferType added in v1.194.0

type TransferType string
const (
	TransferTypeTimeBased TransferType = "time-based"
	TransferTypeStandard  TransferType = "standard"
)

Enum values for TransferType

func (TransferType) Values added in v1.194.0

func (TransferType) Values() []TransferType

Values returns all known values for TransferType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type TransitGateway

type TransitGateway struct {

	// The creation time.
	CreationTime *time.Time

	// The description of the transit gateway.
	Description *string

	// The transit gateway options.
	Options *TransitGatewayOptions

	// The ID of the Amazon Web Services account that owns the transit gateway.
	OwnerId *string

	// The state of the transit gateway.
	State TransitGatewayState

	// The tags for the transit gateway.
	Tags []Tag

	// The Amazon Resource Name (ARN) of the transit gateway.
	TransitGatewayArn *string

	// The ID of the transit gateway.
	TransitGatewayId *string
	// contains filtered or unexported fields
}

Describes a transit gateway.

type TransitGatewayAssociation

type TransitGatewayAssociation struct {

	// The ID of the resource.
	ResourceId *string

	// The resource type. Note that the tgw-peering resource type has been deprecated.
	ResourceType TransitGatewayAttachmentResourceType

	// The state of the association.
	State TransitGatewayAssociationState

	// The ID of the attachment.
	TransitGatewayAttachmentId *string

	// The ID of the transit gateway route table.
	TransitGatewayRouteTableId *string
	// contains filtered or unexported fields
}

Describes an association between a resource attachment and a transit gateway route table.

type TransitGatewayAssociationState

type TransitGatewayAssociationState string
const (
	TransitGatewayAssociationStateAssociating    TransitGatewayAssociationState = "associating"
	TransitGatewayAssociationStateAssociated     TransitGatewayAssociationState = "associated"
	TransitGatewayAssociationStateDisassociating TransitGatewayAssociationState = "disassociating"
	TransitGatewayAssociationStateDisassociated  TransitGatewayAssociationState = "disassociated"
)

Enum values for TransitGatewayAssociationState

func (TransitGatewayAssociationState) Values added in v0.29.0

Values returns all known values for TransitGatewayAssociationState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type TransitGatewayAttachment

type TransitGatewayAttachment struct {

	// The association.
	Association *TransitGatewayAttachmentAssociation

	// The creation time.
	CreationTime *time.Time

	// The ID of the resource.
	ResourceId *string

	// The ID of the Amazon Web Services account that owns the resource.
	ResourceOwnerId *string

	// The resource type. Note that the tgw-peering resource type has been deprecated.
	ResourceType TransitGatewayAttachmentResourceType

	// The attachment state. Note that the initiating state has been deprecated.
	State TransitGatewayAttachmentState

	// The tags for the attachment.
	Tags []Tag

	// The ID of the attachment.
	TransitGatewayAttachmentId *string

	// The ID of the transit gateway.
	TransitGatewayId *string

	// The ID of the Amazon Web Services account that owns the transit gateway.
	TransitGatewayOwnerId *string
	// contains filtered or unexported fields
}

Describes an attachment between a resource and a transit gateway.

type TransitGatewayAttachmentAssociation

type TransitGatewayAttachmentAssociation struct {

	// The state of the association.
	State TransitGatewayAssociationState

	// The ID of the route table for the transit gateway.
	TransitGatewayRouteTableId *string
	// contains filtered or unexported fields
}

Describes an association.

type TransitGatewayAttachmentBgpConfiguration added in v0.31.0

type TransitGatewayAttachmentBgpConfiguration struct {

	// The BGP status.
	BgpStatus BgpStatus

	// The interior BGP peer IP address for the appliance.
	PeerAddress *string

	// The peer Autonomous System Number (ASN).
	PeerAsn *int64

	// The interior BGP peer IP address for the transit gateway.
	TransitGatewayAddress *string

	// The transit gateway Autonomous System Number (ASN).
	TransitGatewayAsn *int64
	// contains filtered or unexported fields
}

The BGP configuration information.

type TransitGatewayAttachmentPropagation

type TransitGatewayAttachmentPropagation struct {

	// The state of the propagation route table.
	State TransitGatewayPropagationState

	// The ID of the propagation route table.
	TransitGatewayRouteTableId *string
	// contains filtered or unexported fields
}

Describes a propagation route table.

type TransitGatewayAttachmentResourceType

type TransitGatewayAttachmentResourceType string
const (
	TransitGatewayAttachmentResourceTypeVpc                  TransitGatewayAttachmentResourceType = "vpc"
	TransitGatewayAttachmentResourceTypeVpn                  TransitGatewayAttachmentResourceType = "vpn"
	TransitGatewayAttachmentResourceTypeDirectConnectGateway TransitGatewayAttachmentResourceType = "direct-connect-gateway"
	TransitGatewayAttachmentResourceTypeConnect              TransitGatewayAttachmentResourceType = "connect"
	TransitGatewayAttachmentResourceTypePeering              TransitGatewayAttachmentResourceType = "peering"
	TransitGatewayAttachmentResourceTypeTgwPeering           TransitGatewayAttachmentResourceType = "tgw-peering"
)

Enum values for TransitGatewayAttachmentResourceType

func (TransitGatewayAttachmentResourceType) Values added in v0.29.0

Values returns all known values for TransitGatewayAttachmentResourceType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type TransitGatewayAttachmentState

type TransitGatewayAttachmentState string
const (
	TransitGatewayAttachmentStateInitiating        TransitGatewayAttachmentState = "initiating"
	TransitGatewayAttachmentStateInitiatingRequest TransitGatewayAttachmentState = "initiatingRequest"
	TransitGatewayAttachmentStatePendingAcceptance TransitGatewayAttachmentState = "pendingAcceptance"
	TransitGatewayAttachmentStateRollingBack       TransitGatewayAttachmentState = "rollingBack"
	TransitGatewayAttachmentStatePending           TransitGatewayAttachmentState = "pending"
	TransitGatewayAttachmentStateAvailable         TransitGatewayAttachmentState = "available"
	TransitGatewayAttachmentStateModifying         TransitGatewayAttachmentState = "modifying"
	TransitGatewayAttachmentStateDeleting          TransitGatewayAttachmentState = "deleting"
	TransitGatewayAttachmentStateDeleted           TransitGatewayAttachmentState = "deleted"
	TransitGatewayAttachmentStateFailed            TransitGatewayAttachmentState = "failed"
	TransitGatewayAttachmentStateRejected          TransitGatewayAttachmentState = "rejected"
	TransitGatewayAttachmentStateRejecting         TransitGatewayAttachmentState = "rejecting"
	TransitGatewayAttachmentStateFailing           TransitGatewayAttachmentState = "failing"
)

Enum values for TransitGatewayAttachmentState

func (TransitGatewayAttachmentState) Values added in v0.29.0

Values returns all known values for TransitGatewayAttachmentState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type TransitGatewayConnect added in v0.31.0

type TransitGatewayConnect struct {

	// The creation time.
	CreationTime *time.Time

	// The Connect attachment options.
	Options *TransitGatewayConnectOptions

	// The state of the attachment.
	State TransitGatewayAttachmentState

	// The tags for the attachment.
	Tags []Tag

	// The ID of the Connect attachment.
	TransitGatewayAttachmentId *string

	// The ID of the transit gateway.
	TransitGatewayId *string

	// The ID of the attachment from which the Connect attachment was created.
	TransportTransitGatewayAttachmentId *string
	// contains filtered or unexported fields
}

Describes a transit gateway Connect attachment.

type TransitGatewayConnectOptions added in v0.31.0

type TransitGatewayConnectOptions struct {

	// The tunnel protocol.
	Protocol ProtocolValue
	// contains filtered or unexported fields
}

Describes the Connect attachment options.

type TransitGatewayConnectPeer added in v0.31.0

type TransitGatewayConnectPeer struct {

	// The Connect peer details.
	ConnectPeerConfiguration *TransitGatewayConnectPeerConfiguration

	// The creation time.
	CreationTime *time.Time

	// The state of the Connect peer.
	State TransitGatewayConnectPeerState

	// The tags for the Connect peer.
	Tags []Tag

	// The ID of the Connect attachment.
	TransitGatewayAttachmentId *string

	// The ID of the Connect peer.
	TransitGatewayConnectPeerId *string
	// contains filtered or unexported fields
}

Describes a transit gateway Connect peer.

type TransitGatewayConnectPeerConfiguration added in v0.31.0

type TransitGatewayConnectPeerConfiguration struct {

	// The BGP configuration details.
	BgpConfigurations []TransitGatewayAttachmentBgpConfiguration

	// The range of interior BGP peer IP addresses.
	InsideCidrBlocks []string

	// The Connect peer IP address on the appliance side of the tunnel.
	PeerAddress *string

	// The tunnel protocol.
	Protocol ProtocolValue

	// The Connect peer IP address on the transit gateway side of the tunnel.
	TransitGatewayAddress *string
	// contains filtered or unexported fields
}

Describes the Connect peer details.

type TransitGatewayConnectPeerState added in v0.31.0

type TransitGatewayConnectPeerState string
const (
	TransitGatewayConnectPeerStatePending   TransitGatewayConnectPeerState = "pending"
	TransitGatewayConnectPeerStateAvailable TransitGatewayConnectPeerState = "available"
	TransitGatewayConnectPeerStateDeleting  TransitGatewayConnectPeerState = "deleting"
	TransitGatewayConnectPeerStateDeleted   TransitGatewayConnectPeerState = "deleted"
)

Enum values for TransitGatewayConnectPeerState

func (TransitGatewayConnectPeerState) Values added in v0.31.0

Values returns all known values for TransitGatewayConnectPeerState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type TransitGatewayConnectRequestBgpOptions added in v0.31.0

type TransitGatewayConnectRequestBgpOptions struct {

	// The peer Autonomous System Number (ASN).
	PeerAsn *int64
	// contains filtered or unexported fields
}

The BGP options for the Connect attachment.

type TransitGatewayMulitcastDomainAssociationState

type TransitGatewayMulitcastDomainAssociationState string
const (
	TransitGatewayMulitcastDomainAssociationStatePendingAcceptance TransitGatewayMulitcastDomainAssociationState = "pendingAcceptance"
	TransitGatewayMulitcastDomainAssociationStateAssociating       TransitGatewayMulitcastDomainAssociationState = "associating"
	TransitGatewayMulitcastDomainAssociationStateAssociated        TransitGatewayMulitcastDomainAssociationState = "associated"
	TransitGatewayMulitcastDomainAssociationStateDisassociating    TransitGatewayMulitcastDomainAssociationState = "disassociating"
	TransitGatewayMulitcastDomainAssociationStateDisassociated     TransitGatewayMulitcastDomainAssociationState = "disassociated"
	TransitGatewayMulitcastDomainAssociationStateRejected          TransitGatewayMulitcastDomainAssociationState = "rejected"
	TransitGatewayMulitcastDomainAssociationStateFailed            TransitGatewayMulitcastDomainAssociationState = "failed"
)

Enum values for TransitGatewayMulitcastDomainAssociationState

func (TransitGatewayMulitcastDomainAssociationState) Values added in v0.29.0

Values returns all known values for TransitGatewayMulitcastDomainAssociationState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type TransitGatewayMulticastDeregisteredGroupMembers

type TransitGatewayMulticastDeregisteredGroupMembers struct {

	// The network interface IDs of the deregistered members.
	DeregisteredNetworkInterfaceIds []string

	// The IP address assigned to the transit gateway multicast group.
	GroupIpAddress *string

	// The ID of the transit gateway multicast domain.
	TransitGatewayMulticastDomainId *string
	// contains filtered or unexported fields
}

Describes the deregistered transit gateway multicast group members.

type TransitGatewayMulticastDeregisteredGroupSources

type TransitGatewayMulticastDeregisteredGroupSources struct {

	// The network interface IDs of the non-registered members.
	DeregisteredNetworkInterfaceIds []string

	// The IP address assigned to the transit gateway multicast group.
	GroupIpAddress *string

	// The ID of the transit gateway multicast domain.
	TransitGatewayMulticastDomainId *string
	// contains filtered or unexported fields
}

Describes the deregistered transit gateway multicast group sources.

type TransitGatewayMulticastDomain

type TransitGatewayMulticastDomain struct {

	// The time the transit gateway multicast domain was created.
	CreationTime *time.Time

	// The options for the transit gateway multicast domain.
	Options *TransitGatewayMulticastDomainOptions

	//  The ID of the Amazon Web Services account that owns the transit gateway
	// multicast domain.
	OwnerId *string

	// The state of the transit gateway multicast domain.
	State TransitGatewayMulticastDomainState

	// The tags for the transit gateway multicast domain.
	Tags []Tag

	// The ID of the transit gateway.
	TransitGatewayId *string

	// The Amazon Resource Name (ARN) of the transit gateway multicast domain.
	TransitGatewayMulticastDomainArn *string

	// The ID of the transit gateway multicast domain.
	TransitGatewayMulticastDomainId *string
	// contains filtered or unexported fields
}

Describes the transit gateway multicast domain.

type TransitGatewayMulticastDomainAssociation

type TransitGatewayMulticastDomainAssociation struct {

	// The ID of the resource.
	ResourceId *string

	//  The ID of the Amazon Web Services account that owns the transit gateway
	// multicast domain association resource.
	ResourceOwnerId *string

	// The type of resource, for example a VPC attachment.
	ResourceType TransitGatewayAttachmentResourceType

	// The subnet associated with the transit gateway multicast domain.
	Subnet *SubnetAssociation

	// The ID of the transit gateway attachment.
	TransitGatewayAttachmentId *string
	// contains filtered or unexported fields
}

Describes the resources associated with the transit gateway multicast domain.

type TransitGatewayMulticastDomainAssociations

type TransitGatewayMulticastDomainAssociations struct {

	// The ID of the resource.
	ResourceId *string

	//  The ID of the Amazon Web Services account that owns the resource.
	ResourceOwnerId *string

	// The type of resource, for example a VPC attachment.
	ResourceType TransitGatewayAttachmentResourceType

	// The subnets associated with the multicast domain.
	Subnets []SubnetAssociation

	// The ID of the transit gateway attachment.
	TransitGatewayAttachmentId *string

	// The ID of the transit gateway multicast domain.
	TransitGatewayMulticastDomainId *string
	// contains filtered or unexported fields
}

Describes the multicast domain associations.

type TransitGatewayMulticastDomainOptions added in v0.31.0

type TransitGatewayMulticastDomainOptions struct {

	// Indicates whether to automatically cross-account subnet associations that are
	// associated with the transit gateway multicast domain.
	AutoAcceptSharedAssociations AutoAcceptSharedAssociationsValue

	// Indicates whether Internet Group Management Protocol (IGMP) version 2 is turned
	// on for the transit gateway multicast domain.
	Igmpv2Support Igmpv2SupportValue

	// Indicates whether support for statically configuring transit gateway multicast
	// group sources is turned on.
	StaticSourcesSupport StaticSourcesSupportValue
	// contains filtered or unexported fields
}

Describes the options for a transit gateway multicast domain.

type TransitGatewayMulticastDomainState

type TransitGatewayMulticastDomainState string
const (
	TransitGatewayMulticastDomainStatePending   TransitGatewayMulticastDomainState = "pending"
	TransitGatewayMulticastDomainStateAvailable TransitGatewayMulticastDomainState = "available"
	TransitGatewayMulticastDomainStateDeleting  TransitGatewayMulticastDomainState = "deleting"
	TransitGatewayMulticastDomainStateDeleted   TransitGatewayMulticastDomainState = "deleted"
)

Enum values for TransitGatewayMulticastDomainState

func (TransitGatewayMulticastDomainState) Values added in v0.29.0

Values returns all known values for TransitGatewayMulticastDomainState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type TransitGatewayMulticastGroup

type TransitGatewayMulticastGroup struct {

	// The IP address assigned to the transit gateway multicast group.
	GroupIpAddress *string

	// Indicates that the resource is a transit gateway multicast group member.
	GroupMember *bool

	// Indicates that the resource is a transit gateway multicast group member.
	GroupSource *bool

	// The member type (for example, static ).
	MemberType MembershipType

	// The ID of the transit gateway attachment.
	NetworkInterfaceId *string

	// The ID of the resource.
	ResourceId *string

	//  The ID of the Amazon Web Services account that owns the transit gateway
	// multicast domain group resource.
	ResourceOwnerId *string

	// The type of resource, for example a VPC attachment.
	ResourceType TransitGatewayAttachmentResourceType

	// The source type.
	SourceType MembershipType

	// The ID of the subnet.
	SubnetId *string

	// The ID of the transit gateway attachment.
	TransitGatewayAttachmentId *string
	// contains filtered or unexported fields
}

Describes the transit gateway multicast group resources.

type TransitGatewayMulticastRegisteredGroupMembers

type TransitGatewayMulticastRegisteredGroupMembers struct {

	// The IP address assigned to the transit gateway multicast group.
	GroupIpAddress *string

	// The ID of the registered network interfaces.
	RegisteredNetworkInterfaceIds []string

	// The ID of the transit gateway multicast domain.
	TransitGatewayMulticastDomainId *string
	// contains filtered or unexported fields
}

Describes the registered transit gateway multicast group members.

type TransitGatewayMulticastRegisteredGroupSources

type TransitGatewayMulticastRegisteredGroupSources struct {

	// The IP address assigned to the transit gateway multicast group.
	GroupIpAddress *string

	// The IDs of the network interfaces members registered with the transit gateway
	// multicast group.
	RegisteredNetworkInterfaceIds []string

	// The ID of the transit gateway multicast domain.
	TransitGatewayMulticastDomainId *string
	// contains filtered or unexported fields
}

Describes the members registered with the transit gateway multicast group.

type TransitGatewayOptions

type TransitGatewayOptions struct {

	// A private Autonomous System Number (ASN) for the Amazon side of a BGP session.
	// The range is 64512 to 65534 for 16-bit ASNs and 4200000000 to 4294967294 for
	// 32-bit ASNs.
	AmazonSideAsn *int64

	// The ID of the default association route table.
	AssociationDefaultRouteTableId *string

	// Indicates whether attachment requests are automatically accepted.
	AutoAcceptSharedAttachments AutoAcceptSharedAttachmentsValue

	// Indicates whether resource attachments are automatically associated with the
	// default association route table.
	DefaultRouteTableAssociation DefaultRouteTableAssociationValue

	// Indicates whether resource attachments automatically propagate routes to the
	// default propagation route table.
	DefaultRouteTablePropagation DefaultRouteTablePropagationValue

	// Indicates whether DNS support is enabled.
	DnsSupport DnsSupportValue

	// Indicates whether multicast is enabled on the transit gateway
	MulticastSupport MulticastSupportValue

	// The ID of the default propagation route table.
	PropagationDefaultRouteTableId *string

	// Enables you to reference a security group across VPCs attached to a transit
	// gateway to simplify security group management.
	//
	// This option is disabled by default.
	SecurityGroupReferencingSupport SecurityGroupReferencingSupportValue

	// The transit gateway CIDR blocks.
	TransitGatewayCidrBlocks []string

	// Indicates whether Equal Cost Multipath Protocol support is enabled.
	VpnEcmpSupport VpnEcmpSupportValue
	// contains filtered or unexported fields
}

Describes the options for a transit gateway.

type TransitGatewayPeeringAttachment

type TransitGatewayPeeringAttachment struct {

	// Information about the accepter transit gateway.
	AccepterTgwInfo *PeeringTgwInfo

	// The ID of the accepter transit gateway attachment.
	AccepterTransitGatewayAttachmentId *string

	// The time the transit gateway peering attachment was created.
	CreationTime *time.Time

	// Details about the transit gateway peering attachment.
	Options *TransitGatewayPeeringAttachmentOptions

	// Information about the requester transit gateway.
	RequesterTgwInfo *PeeringTgwInfo

	// The state of the transit gateway peering attachment. Note that the initiating
	// state has been deprecated.
	State TransitGatewayAttachmentState

	// The status of the transit gateway peering attachment.
	Status *PeeringAttachmentStatus

	// The tags for the transit gateway peering attachment.
	Tags []Tag

	// The ID of the transit gateway peering attachment.
	TransitGatewayAttachmentId *string
	// contains filtered or unexported fields
}

Describes the transit gateway peering attachment.

type TransitGatewayPeeringAttachmentOptions added in v1.48.0

type TransitGatewayPeeringAttachmentOptions struct {

	// Describes whether dynamic routing is enabled or disabled for the transit
	// gateway peering attachment.
	DynamicRouting DynamicRoutingValue
	// contains filtered or unexported fields
}

Describes dynamic routing for the transit gateway peering attachment.

type TransitGatewayPolicyRule added in v1.48.0

type TransitGatewayPolicyRule struct {

	// The destination CIDR block for the transit gateway policy rule.
	DestinationCidrBlock *string

	// The port range for the transit gateway policy rule. Currently this is set to *
	// (all).
	DestinationPortRange *string

	// The meta data tags used for the transit gateway policy rule.
	MetaData *TransitGatewayPolicyRuleMetaData

	// The protocol used by the transit gateway policy rule.
	Protocol *string

	// The source CIDR block for the transit gateway policy rule.
	SourceCidrBlock *string

	// The port range for the transit gateway policy rule. Currently this is set to *
	// (all).
	SourcePortRange *string
	// contains filtered or unexported fields
}

Describes a rule associated with a transit gateway policy.

type TransitGatewayPolicyRuleMetaData added in v1.48.0

type TransitGatewayPolicyRuleMetaData struct {

	// The key name for the transit gateway policy rule meta data tag.
	MetaDataKey *string

	// The value of the key for the transit gateway policy rule meta data tag.
	MetaDataValue *string
	// contains filtered or unexported fields
}

Describes the meta data tags associated with a transit gateway policy rule.

type TransitGatewayPolicyTable added in v1.48.0

type TransitGatewayPolicyTable struct {

	// The timestamp when the transit gateway policy table was created.
	CreationTime *time.Time

	// The state of the transit gateway policy table
	State TransitGatewayPolicyTableState

	// he key-value pairs associated with the transit gateway policy table.
	Tags []Tag

	// The ID of the transit gateway.
	TransitGatewayId *string

	// The ID of the transit gateway policy table.
	TransitGatewayPolicyTableId *string
	// contains filtered or unexported fields
}

Describes a transit gateway policy table.

type TransitGatewayPolicyTableAssociation added in v1.48.0

type TransitGatewayPolicyTableAssociation struct {

	// The resource ID of the transit gateway attachment.
	ResourceId *string

	// The resource type for the transit gateway policy table association.
	ResourceType TransitGatewayAttachmentResourceType

	// The state of the transit gateway policy table association.
	State TransitGatewayAssociationState

	// The ID of the transit gateway attachment.
	TransitGatewayAttachmentId *string

	// The ID of the transit gateway policy table.
	TransitGatewayPolicyTableId *string
	// contains filtered or unexported fields
}

Describes a transit gateway policy table association.

type TransitGatewayPolicyTableEntry added in v1.48.0

type TransitGatewayPolicyTableEntry struct {

	// The policy rule associated with the transit gateway policy table.
	PolicyRule *TransitGatewayPolicyRule

	// The rule number for the transit gateway policy table entry.
	PolicyRuleNumber *string

	// The ID of the target route table.
	TargetRouteTableId *string
	// contains filtered or unexported fields
}

Describes a transit gateway policy table entry

type TransitGatewayPolicyTableState added in v1.48.0

type TransitGatewayPolicyTableState string
const (
	TransitGatewayPolicyTableStatePending   TransitGatewayPolicyTableState = "pending"
	TransitGatewayPolicyTableStateAvailable TransitGatewayPolicyTableState = "available"
	TransitGatewayPolicyTableStateDeleting  TransitGatewayPolicyTableState = "deleting"
	TransitGatewayPolicyTableStateDeleted   TransitGatewayPolicyTableState = "deleted"
)

Enum values for TransitGatewayPolicyTableState

func (TransitGatewayPolicyTableState) Values added in v1.48.0

Values returns all known values for TransitGatewayPolicyTableState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type TransitGatewayPrefixListAttachment added in v0.29.0

type TransitGatewayPrefixListAttachment struct {

	// The ID of the resource.
	ResourceId *string

	// The resource type. Note that the tgw-peering resource type has been deprecated.
	ResourceType TransitGatewayAttachmentResourceType

	// The ID of the attachment.
	TransitGatewayAttachmentId *string
	// contains filtered or unexported fields
}

Describes a transit gateway prefix list attachment.

type TransitGatewayPrefixListReference added in v0.29.0

type TransitGatewayPrefixListReference struct {

	// Indicates whether traffic that matches this route is dropped.
	Blackhole *bool

	// The ID of the prefix list.
	PrefixListId *string

	// The ID of the prefix list owner.
	PrefixListOwnerId *string

	// The state of the prefix list reference.
	State TransitGatewayPrefixListReferenceState

	// Information about the transit gateway attachment.
	TransitGatewayAttachment *TransitGatewayPrefixListAttachment

	// The ID of the transit gateway route table.
	TransitGatewayRouteTableId *string
	// contains filtered or unexported fields
}

Describes a prefix list reference.

type TransitGatewayPrefixListReferenceState added in v0.29.0

type TransitGatewayPrefixListReferenceState string
const (
	TransitGatewayPrefixListReferenceStatePending   TransitGatewayPrefixListReferenceState = "pending"
	TransitGatewayPrefixListReferenceStateAvailable TransitGatewayPrefixListReferenceState = "available"
	TransitGatewayPrefixListReferenceStateModifying TransitGatewayPrefixListReferenceState = "modifying"
	TransitGatewayPrefixListReferenceStateDeleting  TransitGatewayPrefixListReferenceState = "deleting"
)

Enum values for TransitGatewayPrefixListReferenceState

func (TransitGatewayPrefixListReferenceState) Values added in v0.29.0

Values returns all known values for TransitGatewayPrefixListReferenceState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type TransitGatewayPropagation

type TransitGatewayPropagation struct {

	// The ID of the resource.
	ResourceId *string

	// The resource type. Note that the tgw-peering resource type has been deprecated.
	ResourceType TransitGatewayAttachmentResourceType

	// The state.
	State TransitGatewayPropagationState

	// The ID of the attachment.
	TransitGatewayAttachmentId *string

	// The ID of the transit gateway route table announcement.
	TransitGatewayRouteTableAnnouncementId *string

	// The ID of the transit gateway route table.
	TransitGatewayRouteTableId *string
	// contains filtered or unexported fields
}

Describes route propagation.

type TransitGatewayPropagationState

type TransitGatewayPropagationState string
const (
	TransitGatewayPropagationStateEnabling  TransitGatewayPropagationState = "enabling"
	TransitGatewayPropagationStateEnabled   TransitGatewayPropagationState = "enabled"
	TransitGatewayPropagationStateDisabling TransitGatewayPropagationState = "disabling"
	TransitGatewayPropagationStateDisabled  TransitGatewayPropagationState = "disabled"
)

Enum values for TransitGatewayPropagationState

func (TransitGatewayPropagationState) Values added in v0.29.0

Values returns all known values for TransitGatewayPropagationState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type TransitGatewayRequestOptions

type TransitGatewayRequestOptions struct {

	// A private Autonomous System Number (ASN) for the Amazon side of a BGP session.
	// The range is 64512 to 65534 for 16-bit ASNs and 4200000000 to 4294967294 for
	// 32-bit ASNs. The default is 64512 .
	AmazonSideAsn *int64

	// Enable or disable automatic acceptance of attachment requests. Disabled by
	// default.
	AutoAcceptSharedAttachments AutoAcceptSharedAttachmentsValue

	// Enable or disable automatic association with the default association route
	// table. Enabled by default.
	DefaultRouteTableAssociation DefaultRouteTableAssociationValue

	// Enable or disable automatic propagation of routes to the default propagation
	// route table. Enabled by default.
	DefaultRouteTablePropagation DefaultRouteTablePropagationValue

	// Enable or disable DNS support. Enabled by default.
	DnsSupport DnsSupportValue

	// Indicates whether multicast is enabled on the transit gateway
	MulticastSupport MulticastSupportValue

	// Enables you to reference a security group across VPCs attached to a transit
	// gateway to simplify security group management.
	//
	// This option is disabled by default.
	//
	// For more information about security group referencing, see [Security group referencing] in the Amazon Web
	// Services Transit Gateways Guide.
	//
	// [Security group referencing]: https://docs.aws.amazon.com/vpc/latest/tgw/tgw-vpc-attachments.html#vpc-attachment-security
	SecurityGroupReferencingSupport SecurityGroupReferencingSupportValue

	// One or more IPv4 or IPv6 CIDR blocks for the transit gateway. Must be a size
	// /24 CIDR block or larger for IPv4, or a size /64 CIDR block or larger for IPv6.
	TransitGatewayCidrBlocks []string

	// Enable or disable Equal Cost Multipath Protocol support. Enabled by default.
	VpnEcmpSupport VpnEcmpSupportValue
	// contains filtered or unexported fields
}

Describes the options for a transit gateway.

type TransitGatewayRoute

type TransitGatewayRoute struct {

	// The CIDR block used for destination matches.
	DestinationCidrBlock *string

	// The ID of the prefix list used for destination matches.
	PrefixListId *string

	// The state of the route.
	State TransitGatewayRouteState

	// The attachments.
	TransitGatewayAttachments []TransitGatewayRouteAttachment

	// The ID of the transit gateway route table announcement.
	TransitGatewayRouteTableAnnouncementId *string

	// The route type.
	Type TransitGatewayRouteType
	// contains filtered or unexported fields
}

Describes a route for a transit gateway route table.

type TransitGatewayRouteAttachment

type TransitGatewayRouteAttachment struct {

	// The ID of the resource.
	ResourceId *string

	// The resource type. Note that the tgw-peering resource type has been deprecated.
	ResourceType TransitGatewayAttachmentResourceType

	// The ID of the attachment.
	TransitGatewayAttachmentId *string
	// contains filtered or unexported fields
}

Describes a route attachment.

type TransitGatewayRouteState

type TransitGatewayRouteState string
const (
	TransitGatewayRouteStatePending   TransitGatewayRouteState = "pending"
	TransitGatewayRouteStateActive    TransitGatewayRouteState = "active"
	TransitGatewayRouteStateBlackhole TransitGatewayRouteState = "blackhole"
	TransitGatewayRouteStateDeleting  TransitGatewayRouteState = "deleting"
	TransitGatewayRouteStateDeleted   TransitGatewayRouteState = "deleted"
)

Enum values for TransitGatewayRouteState

func (TransitGatewayRouteState) Values added in v0.29.0

Values returns all known values for TransitGatewayRouteState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type TransitGatewayRouteTable

type TransitGatewayRouteTable struct {

	// The creation time.
	CreationTime *time.Time

	// Indicates whether this is the default association route table for the transit
	// gateway.
	DefaultAssociationRouteTable *bool

	// Indicates whether this is the default propagation route table for the transit
	// gateway.
	DefaultPropagationRouteTable *bool

	// The state of the transit gateway route table.
	State TransitGatewayRouteTableState

	// Any tags assigned to the route table.
	Tags []Tag

	// The ID of the transit gateway.
	TransitGatewayId *string

	// The ID of the transit gateway route table.
	TransitGatewayRouteTableId *string
	// contains filtered or unexported fields
}

Describes a transit gateway route table.

type TransitGatewayRouteTableAnnouncement added in v1.48.0

type TransitGatewayRouteTableAnnouncement struct {

	// The direction for the route table announcement.
	AnnouncementDirection TransitGatewayRouteTableAnnouncementDirection

	// The ID of the core network for the transit gateway route table announcement.
	CoreNetworkId *string

	// The timestamp when the transit gateway route table announcement was created.
	CreationTime *time.Time

	// The ID of the core network ID for the peer.
	PeerCoreNetworkId *string

	// The ID of the peer transit gateway.
	PeerTransitGatewayId *string

	// The ID of the peering attachment.
	PeeringAttachmentId *string

	// The state of the transit gateway announcement.
	State TransitGatewayRouteTableAnnouncementState

	// The key-value pairs associated with the route table announcement.
	Tags []Tag

	// The ID of the transit gateway.
	TransitGatewayId *string

	// The ID of the transit gateway route table announcement.
	TransitGatewayRouteTableAnnouncementId *string

	// The ID of the transit gateway route table.
	TransitGatewayRouteTableId *string
	// contains filtered or unexported fields
}

Describes a transit gateway route table announcement.

type TransitGatewayRouteTableAnnouncementDirection added in v1.48.0

type TransitGatewayRouteTableAnnouncementDirection string
const (
	TransitGatewayRouteTableAnnouncementDirectionOutgoing TransitGatewayRouteTableAnnouncementDirection = "outgoing"
	TransitGatewayRouteTableAnnouncementDirectionIncoming TransitGatewayRouteTableAnnouncementDirection = "incoming"
)

Enum values for TransitGatewayRouteTableAnnouncementDirection

func (TransitGatewayRouteTableAnnouncementDirection) Values added in v1.48.0

Values returns all known values for TransitGatewayRouteTableAnnouncementDirection. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type TransitGatewayRouteTableAnnouncementState added in v1.48.0

type TransitGatewayRouteTableAnnouncementState string
const (
	TransitGatewayRouteTableAnnouncementStateAvailable TransitGatewayRouteTableAnnouncementState = "available"
	TransitGatewayRouteTableAnnouncementStatePending   TransitGatewayRouteTableAnnouncementState = "pending"
	TransitGatewayRouteTableAnnouncementStateFailing   TransitGatewayRouteTableAnnouncementState = "failing"
	TransitGatewayRouteTableAnnouncementStateFailed    TransitGatewayRouteTableAnnouncementState = "failed"
	TransitGatewayRouteTableAnnouncementStateDeleting  TransitGatewayRouteTableAnnouncementState = "deleting"
	TransitGatewayRouteTableAnnouncementStateDeleted   TransitGatewayRouteTableAnnouncementState = "deleted"
)

Enum values for TransitGatewayRouteTableAnnouncementState

func (TransitGatewayRouteTableAnnouncementState) Values added in v1.48.0

Values returns all known values for TransitGatewayRouteTableAnnouncementState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type TransitGatewayRouteTableAssociation

type TransitGatewayRouteTableAssociation struct {

	// The ID of the resource.
	ResourceId *string

	// The resource type. Note that the tgw-peering resource type has been deprecated.
	ResourceType TransitGatewayAttachmentResourceType

	// The state of the association.
	State TransitGatewayAssociationState

	// The ID of the attachment.
	TransitGatewayAttachmentId *string
	// contains filtered or unexported fields
}

Describes an association between a route table and a resource attachment.

type TransitGatewayRouteTablePropagation

type TransitGatewayRouteTablePropagation struct {

	// The ID of the resource.
	ResourceId *string

	// The type of resource. Note that the tgw-peering resource type has been
	// deprecated.
	ResourceType TransitGatewayAttachmentResourceType

	// The state of the resource.
	State TransitGatewayPropagationState

	// The ID of the attachment.
	TransitGatewayAttachmentId *string

	// The ID of the transit gateway route table announcement.
	TransitGatewayRouteTableAnnouncementId *string
	// contains filtered or unexported fields
}

Describes a route table propagation.

type TransitGatewayRouteTableRoute added in v1.33.0

type TransitGatewayRouteTableRoute struct {

	// The ID of the route attachment.
	AttachmentId *string

	// The CIDR block used for destination matches.
	DestinationCidr *string

	// The ID of the prefix list.
	PrefixListId *string

	// The ID of the resource for the route attachment.
	ResourceId *string

	// The resource type for the route attachment.
	ResourceType *string

	// The route origin. The following are the possible values:
	//
	//   - static
	//
	//   - propagated
	RouteOrigin *string

	// The state of the route.
	State *string
	// contains filtered or unexported fields
}

Describes a route in a transit gateway route table.

type TransitGatewayRouteTableState

type TransitGatewayRouteTableState string
const (
	TransitGatewayRouteTableStatePending   TransitGatewayRouteTableState = "pending"
	TransitGatewayRouteTableStateAvailable TransitGatewayRouteTableState = "available"
	TransitGatewayRouteTableStateDeleting  TransitGatewayRouteTableState = "deleting"
	TransitGatewayRouteTableStateDeleted   TransitGatewayRouteTableState = "deleted"
)

Enum values for TransitGatewayRouteTableState

func (TransitGatewayRouteTableState) Values added in v0.29.0

Values returns all known values for TransitGatewayRouteTableState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type TransitGatewayRouteType

type TransitGatewayRouteType string
const (
	TransitGatewayRouteTypeStatic     TransitGatewayRouteType = "static"
	TransitGatewayRouteTypePropagated TransitGatewayRouteType = "propagated"
)

Enum values for TransitGatewayRouteType

func (TransitGatewayRouteType) Values added in v0.29.0

Values returns all known values for TransitGatewayRouteType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type TransitGatewayState

type TransitGatewayState string
const (
	TransitGatewayStatePending   TransitGatewayState = "pending"
	TransitGatewayStateAvailable TransitGatewayState = "available"
	TransitGatewayStateModifying TransitGatewayState = "modifying"
	TransitGatewayStateDeleting  TransitGatewayState = "deleting"
	TransitGatewayStateDeleted   TransitGatewayState = "deleted"
)

Enum values for TransitGatewayState

func (TransitGatewayState) Values added in v0.29.0

Values returns all known values for TransitGatewayState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type TransitGatewayVpcAttachment

type TransitGatewayVpcAttachment struct {

	// The creation time.
	CreationTime *time.Time

	// The VPC attachment options.
	Options *TransitGatewayVpcAttachmentOptions

	// The state of the VPC attachment. Note that the initiating state has been
	// deprecated.
	State TransitGatewayAttachmentState

	// The IDs of the subnets.
	SubnetIds []string

	// The tags for the VPC attachment.
	Tags []Tag

	// The ID of the attachment.
	TransitGatewayAttachmentId *string

	// The ID of the transit gateway.
	TransitGatewayId *string

	// The ID of the VPC.
	VpcId *string

	// The ID of the Amazon Web Services account that owns the VPC.
	VpcOwnerId *string
	// contains filtered or unexported fields
}

Describes a VPC attachment.

type TransitGatewayVpcAttachmentOptions

type TransitGatewayVpcAttachmentOptions struct {

	// Indicates whether appliance mode support is enabled.
	ApplianceModeSupport ApplianceModeSupportValue

	// Indicates whether DNS support is enabled.
	DnsSupport DnsSupportValue

	// Indicates whether IPv6 support is disabled.
	Ipv6Support Ipv6SupportValue

	// Enables you to reference a security group across VPCs attached to a transit
	// gateway to simplify security group management.
	//
	// This option is enabled by default.
	//
	// For more information about security group referencing, see [Security group referencing] in the Amazon Web
	// Services Transit Gateways Guide.
	//
	// [Security group referencing]: https://docs.aws.amazon.com/vpc/latest/tgw/tgw-vpc-attachments.html#vpc-attachment-security
	SecurityGroupReferencingSupport SecurityGroupReferencingSupportValue
	// contains filtered or unexported fields
}

Describes the VPC attachment options.

type TransportProtocol

type TransportProtocol string
const (
	TransportProtocolTcp TransportProtocol = "tcp"
	TransportProtocolUdp TransportProtocol = "udp"
)

Enum values for TransportProtocol

func (TransportProtocol) Values added in v0.29.0

Values returns all known values for TransportProtocol. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type TrunkInterfaceAssociation added in v1.10.0

type TrunkInterfaceAssociation struct {

	// The ID of the association.
	AssociationId *string

	// The ID of the branch network interface.
	BranchInterfaceId *string

	// The application key when you use the GRE protocol.
	GreKey *int32

	// The interface protocol. Valid values are VLAN and GRE .
	InterfaceProtocol InterfaceProtocolType

	// The tags for the trunk interface association.
	Tags []Tag

	// The ID of the trunk network interface.
	TrunkInterfaceId *string

	// The ID of the VLAN when you use the VLAN protocol.
	VlanId *int32
	// contains filtered or unexported fields
}

Information about an association between a branch network interface with a trunk network interface.

type TrustProviderType added in v1.74.0

type TrustProviderType string
const (
	TrustProviderTypeUser   TrustProviderType = "user"
	TrustProviderTypeDevice TrustProviderType = "device"
)

Enum values for TrustProviderType

func (TrustProviderType) Values added in v1.74.0

Values returns all known values for TrustProviderType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type TunnelInsideIpVersion added in v0.29.0

type TunnelInsideIpVersion string
const (
	TunnelInsideIpVersionIpv4 TunnelInsideIpVersion = "ipv4"
	TunnelInsideIpVersionIpv6 TunnelInsideIpVersion = "ipv6"
)

Enum values for TunnelInsideIpVersion

func (TunnelInsideIpVersion) Values added in v0.29.0

Values returns all known values for TunnelInsideIpVersion. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type TunnelOption

type TunnelOption struct {

	// The action to take after a DPD timeout occurs.
	DpdTimeoutAction *string

	// The number of seconds after which a DPD timeout occurs.
	DpdTimeoutSeconds *int32

	// Status of tunnel endpoint lifecycle control feature.
	EnableTunnelLifecycleControl *bool

	// The IKE versions that are permitted for the VPN tunnel.
	IkeVersions []IKEVersionsListValue

	// Options for logging VPN tunnel activity.
	LogOptions *VpnTunnelLogOptions

	// The external IP address of the VPN tunnel.
	OutsideIpAddress *string

	// The permitted Diffie-Hellman group numbers for the VPN tunnel for phase 1 IKE
	// negotiations.
	Phase1DHGroupNumbers []Phase1DHGroupNumbersListValue

	// The permitted encryption algorithms for the VPN tunnel for phase 1 IKE
	// negotiations.
	Phase1EncryptionAlgorithms []Phase1EncryptionAlgorithmsListValue

	// The permitted integrity algorithms for the VPN tunnel for phase 1 IKE
	// negotiations.
	Phase1IntegrityAlgorithms []Phase1IntegrityAlgorithmsListValue

	// The lifetime for phase 1 of the IKE negotiation, in seconds.
	Phase1LifetimeSeconds *int32

	// The permitted Diffie-Hellman group numbers for the VPN tunnel for phase 2 IKE
	// negotiations.
	Phase2DHGroupNumbers []Phase2DHGroupNumbersListValue

	// The permitted encryption algorithms for the VPN tunnel for phase 2 IKE
	// negotiations.
	Phase2EncryptionAlgorithms []Phase2EncryptionAlgorithmsListValue

	// The permitted integrity algorithms for the VPN tunnel for phase 2 IKE
	// negotiations.
	Phase2IntegrityAlgorithms []Phase2IntegrityAlgorithmsListValue

	// The lifetime for phase 2 of the IKE negotiation, in seconds.
	Phase2LifetimeSeconds *int32

	// The pre-shared key (PSK) to establish initial authentication between the
	// virtual private gateway and the customer gateway.
	PreSharedKey *string

	// The percentage of the rekey window determined by RekeyMarginTimeSeconds during
	// which the rekey time is randomly selected.
	RekeyFuzzPercentage *int32

	// The margin time, in seconds, before the phase 2 lifetime expires, during which
	// the Amazon Web Services side of the VPN connection performs an IKE rekey.
	RekeyMarginTimeSeconds *int32

	// The number of packets in an IKE replay window.
	ReplayWindowSize *int32

	// The action to take when the establishing the VPN tunnels for a VPN connection.
	StartupAction *string

	// The range of inside IPv4 addresses for the tunnel.
	TunnelInsideCidr *string

	// The range of inside IPv6 addresses for the tunnel.
	TunnelInsideIpv6Cidr *string
	// contains filtered or unexported fields
}

The VPN tunnel options.

type UnlimitedSupportedInstanceFamily

type UnlimitedSupportedInstanceFamily string
const (
	UnlimitedSupportedInstanceFamilyT2  UnlimitedSupportedInstanceFamily = "t2"
	UnlimitedSupportedInstanceFamilyT3  UnlimitedSupportedInstanceFamily = "t3"
	UnlimitedSupportedInstanceFamilyT3a UnlimitedSupportedInstanceFamily = "t3a"
	UnlimitedSupportedInstanceFamilyT4g UnlimitedSupportedInstanceFamily = "t4g"
)

Enum values for UnlimitedSupportedInstanceFamily

func (UnlimitedSupportedInstanceFamily) Values added in v0.29.0

Values returns all known values for UnlimitedSupportedInstanceFamily. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type UnsuccessfulInstanceCreditSpecificationErrorCode

type UnsuccessfulInstanceCreditSpecificationErrorCode string
const (
	UnsuccessfulInstanceCreditSpecificationErrorCodeInvalidInstanceId                       UnsuccessfulInstanceCreditSpecificationErrorCode = "InvalidInstanceID.Malformed"
	UnsuccessfulInstanceCreditSpecificationErrorCodeInstanceNotFound                        UnsuccessfulInstanceCreditSpecificationErrorCode = "InvalidInstanceID.NotFound"
	UnsuccessfulInstanceCreditSpecificationErrorCodeIncorrectInstanceState                  UnsuccessfulInstanceCreditSpecificationErrorCode = "IncorrectInstanceState"
	UnsuccessfulInstanceCreditSpecificationErrorCodeInstanceCreditSpecificationNotSupported UnsuccessfulInstanceCreditSpecificationErrorCode = "InstanceCreditSpecification.NotSupported"
)

Enum values for UnsuccessfulInstanceCreditSpecificationErrorCode

func (UnsuccessfulInstanceCreditSpecificationErrorCode) Values added in v0.29.0

Values returns all known values for UnsuccessfulInstanceCreditSpecificationErrorCode. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type UnsuccessfulInstanceCreditSpecificationItem

type UnsuccessfulInstanceCreditSpecificationItem struct {

	// The applicable error for the burstable performance instance whose credit option
	// for CPU usage was not modified.
	Error *UnsuccessfulInstanceCreditSpecificationItemError

	// The ID of the instance.
	InstanceId *string
	// contains filtered or unexported fields
}

Describes the burstable performance instance whose credit option for CPU usage was not modified.

type UnsuccessfulInstanceCreditSpecificationItemError

type UnsuccessfulInstanceCreditSpecificationItemError struct {

	// The error code.
	Code UnsuccessfulInstanceCreditSpecificationErrorCode

	// The applicable error message.
	Message *string
	// contains filtered or unexported fields
}

Information about the error for the burstable performance instance whose credit option for CPU usage was not modified.

type UnsuccessfulItem

type UnsuccessfulItem struct {

	// Information about the error.
	Error *UnsuccessfulItemError

	// The ID of the resource.
	ResourceId *string
	// contains filtered or unexported fields
}

Information about items that were not successfully processed in a batch call.

type UnsuccessfulItemError

type UnsuccessfulItemError struct {

	// The error code.
	Code *string

	// The error message accompanying the error code.
	Message *string
	// contains filtered or unexported fields
}

Information about the error that occurred. For more information about errors, see Error codes.

type UsageClassType

type UsageClassType string
const (
	UsageClassTypeSpot          UsageClassType = "spot"
	UsageClassTypeOnDemand      UsageClassType = "on-demand"
	UsageClassTypeCapacityBlock UsageClassType = "capacity-block"
)

Enum values for UsageClassType

func (UsageClassType) Values added in v0.29.0

func (UsageClassType) Values() []UsageClassType

Values returns all known values for UsageClassType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type UserBucket

type UserBucket struct {

	// The name of the Amazon S3 bucket where the disk image is located.
	S3Bucket *string

	// The file name of the disk image.
	S3Key *string
	// contains filtered or unexported fields
}

Describes the Amazon S3 bucket for the disk image.

type UserBucketDetails

type UserBucketDetails struct {

	// The Amazon S3 bucket from which the disk image was created.
	S3Bucket *string

	// The file name of the disk image.
	S3Key *string
	// contains filtered or unexported fields
}

Describes the Amazon S3 bucket for the disk image.

type UserData

type UserData struct {

	// The user data. If you are using an Amazon Web Services SDK or 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.
	Data *string
	// contains filtered or unexported fields
}

Describes the user data for an instance.

type UserIdGroupPair

type UserIdGroupPair struct {

	// A description for the security group rule that references this user ID group
	// pair.
	//
	// Constraints: Up to 255 characters in length. Allowed characters are a-z, A-Z,
	// 0-9, spaces, and ._-:/()#,@[]+=;{}!$*
	Description *string

	// The ID of the security group.
	GroupId *string

	// [Default VPC] The name of the security group. For a security group in a
	// nondefault VPC, use the security group ID.
	//
	// For a referenced security group in another VPC, this value is not returned if
	// the referenced security group is deleted.
	GroupName *string

	// The status of a VPC peering connection, if applicable.
	PeeringStatus *string

	// The ID of an Amazon Web Services account.
	//
	// For a referenced security group in another VPC, the account ID of the
	// referenced security group is returned in the response. If the referenced
	// security group is deleted, this value is not returned.
	UserId *string

	// The ID of the VPC for the referenced security group, if applicable.
	VpcId *string

	// The ID of the VPC peering connection, if applicable.
	VpcPeeringConnectionId *string
	// contains filtered or unexported fields
}

Describes a security group and Amazon Web Services account ID pair.

type UserTrustProviderType added in v1.74.0

type UserTrustProviderType string
const (
	UserTrustProviderTypeIamIdentityCenter UserTrustProviderType = "iam-identity-center"
	UserTrustProviderTypeOidc              UserTrustProviderType = "oidc"
)

Enum values for UserTrustProviderType

func (UserTrustProviderType) Values added in v1.74.0

Values returns all known values for UserTrustProviderType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type VCpuCountRange added in v1.21.0

type VCpuCountRange struct {

	// The maximum number of vCPUs. If this parameter is not specified, there is no
	// maximum limit.
	Max *int32

	// The minimum number of vCPUs. If the value is 0 , there is no minimum limit.
	Min *int32
	// contains filtered or unexported fields
}

The minimum and maximum number of vCPUs.

type VCpuCountRangeRequest added in v1.21.0

type VCpuCountRangeRequest struct {

	// The minimum number of vCPUs. To specify no minimum limit, specify 0 .
	//
	// This member is required.
	Min *int32

	// The maximum number of vCPUs. To specify no maximum limit, omit this parameter.
	Max *int32
	// contains filtered or unexported fields
}

The minimum and maximum number of vCPUs.

type VCpuInfo

type VCpuInfo struct {

	// The default number of cores for the instance type.
	DefaultCores *int32

	// The default number of threads per core for the instance type.
	DefaultThreadsPerCore *int32

	// The default number of vCPUs for the instance type.
	DefaultVCpus *int32

	// The valid number of cores that can be configured for the instance type.
	ValidCores []int32

	// The valid number of threads per core that can be configured for the instance
	// type.
	ValidThreadsPerCore []int32
	// contains filtered or unexported fields
}

Describes the vCPU configurations for the instance type.

type ValidationError

type ValidationError struct {

	// The error code that indicates why the parameter or parameter combination is not
	// valid. For more information about error codes, see [Error codes].
	//
	// [Error codes]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/errors-overview.html
	Code *string

	// The error message that describes why the parameter or parameter combination is
	// not valid. For more information about error messages, see [Error codes].
	//
	// [Error codes]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/errors-overview.html
	Message *string
	// contains filtered or unexported fields
}

The error code and error message that is returned for a parameter or parameter combination that is not valid when a new launch template or new version of a launch template is created.

type ValidationWarning

type ValidationWarning struct {

	// The error codes and error messages.
	Errors []ValidationError
	// contains filtered or unexported fields
}

The error codes and error messages that are returned for the parameters or parameter combinations that are not valid when a new launch template or new version of a launch template is created.

type VerificationMethod added in v1.171.0

type VerificationMethod string
const (
	VerificationMethodRemarksX509 VerificationMethod = "remarks-x509"
	VerificationMethodDnsToken    VerificationMethod = "dns-token"
)

Enum values for VerificationMethod

func (VerificationMethod) Values added in v1.171.0

Values returns all known values for VerificationMethod. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type VerifiedAccessEndpoint added in v1.74.0

type VerifiedAccessEndpoint struct {

	// The DNS name for users to reach your application.
	ApplicationDomain *string

	// The type of attachment used to provide connectivity between the Amazon Web
	// Services Verified Access endpoint and the application.
	AttachmentType VerifiedAccessEndpointAttachmentType

	// The options for a CIDR endpoint.
	CidrOptions *VerifiedAccessEndpointCidrOptions

	// The creation time.
	CreationTime *string

	// The deletion time.
	DeletionTime *string

	// A description for the Amazon Web Services Verified Access endpoint.
	Description *string

	// Returned if endpoint has a device trust provider attached.
	DeviceValidationDomain *string

	// The ARN of a public TLS/SSL certificate imported into or created with ACM.
	DomainCertificateArn *string

	// A DNS name that is generated for the endpoint.
	EndpointDomain *string

	// The type of Amazon Web Services Verified Access endpoint. Incoming application
	// requests will be sent to an IP address, load balancer or a network interface
	// depending on the endpoint type specified.
	EndpointType VerifiedAccessEndpointType

	// The last updated time.
	LastUpdatedTime *string

	// The load balancer details if creating the Amazon Web Services Verified Access
	// endpoint as load-balancer type.
	LoadBalancerOptions *VerifiedAccessEndpointLoadBalancerOptions

	// The options for network-interface type endpoint.
	NetworkInterfaceOptions *VerifiedAccessEndpointEniOptions

	// The options for an RDS endpoint.
	RdsOptions *VerifiedAccessEndpointRdsOptions

	// The IDs of the security groups for the endpoint.
	SecurityGroupIds []string

	// The options in use for server side encryption.
	SseSpecification *VerifiedAccessSseSpecificationResponse

	// The endpoint status.
	Status *VerifiedAccessEndpointStatus

	// The tags.
	Tags []Tag

	// The ID of the Amazon Web Services Verified Access endpoint.
	VerifiedAccessEndpointId *string

	// The ID of the Amazon Web Services Verified Access group.
	VerifiedAccessGroupId *string

	// The ID of the Amazon Web Services Verified Access instance.
	VerifiedAccessInstanceId *string
	// contains filtered or unexported fields
}

An Amazon Web Services Verified Access endpoint specifies the application that Amazon Web Services Verified Access provides access to. It must be attached to an Amazon Web Services Verified Access group. An Amazon Web Services Verified Access endpoint must also have an attached access policy before you attached it to a group.

type VerifiedAccessEndpointAttachmentType added in v1.74.0

type VerifiedAccessEndpointAttachmentType string
const (
	VerifiedAccessEndpointAttachmentTypeVpc VerifiedAccessEndpointAttachmentType = "vpc"
)

Enum values for VerifiedAccessEndpointAttachmentType

func (VerifiedAccessEndpointAttachmentType) Values added in v1.74.0

Values returns all known values for VerifiedAccessEndpointAttachmentType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type VerifiedAccessEndpointCidrOptions added in v1.195.0

type VerifiedAccessEndpointCidrOptions struct {

	// The CIDR.
	Cidr *string

	// The port ranges.
	PortRanges []VerifiedAccessEndpointPortRange

	// The protocol.
	Protocol VerifiedAccessEndpointProtocol

	// The IDs of the subnets.
	SubnetIds []string
	// contains filtered or unexported fields
}

Describes the CIDR options for a Verified Access endpoint.

type VerifiedAccessEndpointEniOptions added in v1.74.0

type VerifiedAccessEndpointEniOptions struct {

	// The ID of the network interface.
	NetworkInterfaceId *string

	// The IP port number.
	Port *int32

	// The port ranges.
	PortRanges []VerifiedAccessEndpointPortRange

	// The IP protocol.
	Protocol VerifiedAccessEndpointProtocol
	// contains filtered or unexported fields
}

Options for a network-interface type endpoint.

type VerifiedAccessEndpointLoadBalancerOptions added in v1.74.0

type VerifiedAccessEndpointLoadBalancerOptions struct {

	// The ARN of the load balancer.
	LoadBalancerArn *string

	// The IP port number.
	Port *int32

	// The port ranges.
	PortRanges []VerifiedAccessEndpointPortRange

	// The IP protocol.
	Protocol VerifiedAccessEndpointProtocol

	// The IDs of the subnets.
	SubnetIds []string
	// contains filtered or unexported fields
}

Describes a load balancer when creating an Amazon Web Services Verified Access endpoint using the load-balancer type.

type VerifiedAccessEndpointPortRange added in v1.195.0

type VerifiedAccessEndpointPortRange struct {

	// The start of the port range.
	FromPort *int32

	// The end of the port range.
	ToPort *int32
	// contains filtered or unexported fields
}

Describes a port range.

type VerifiedAccessEndpointProtocol added in v1.74.0

type VerifiedAccessEndpointProtocol string
const (
	VerifiedAccessEndpointProtocolHttp  VerifiedAccessEndpointProtocol = "http"
	VerifiedAccessEndpointProtocolHttps VerifiedAccessEndpointProtocol = "https"
	VerifiedAccessEndpointProtocolTcp   VerifiedAccessEndpointProtocol = "tcp"
)

Enum values for VerifiedAccessEndpointProtocol

func (VerifiedAccessEndpointProtocol) Values added in v1.74.0

Values returns all known values for VerifiedAccessEndpointProtocol. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type VerifiedAccessEndpointRdsOptions added in v1.195.0

type VerifiedAccessEndpointRdsOptions struct {

	// The port.
	Port *int32

	// The protocol.
	Protocol VerifiedAccessEndpointProtocol

	// The ARN of the DB cluster.
	RdsDbClusterArn *string

	// The ARN of the RDS instance.
	RdsDbInstanceArn *string

	// The ARN of the RDS proxy.
	RdsDbProxyArn *string

	// The RDS endpoint.
	RdsEndpoint *string

	// The IDs of the subnets.
	SubnetIds []string
	// contains filtered or unexported fields
}

Describes the RDS options for a Verified Access endpoint.

type VerifiedAccessEndpointStatus added in v1.74.0

type VerifiedAccessEndpointStatus struct {

	// The status code of the Verified Access endpoint.
	Code VerifiedAccessEndpointStatusCode

	// The status message of the Verified Access endpoint.
	Message *string
	// contains filtered or unexported fields
}

Describes the status of a Verified Access endpoint.

type VerifiedAccessEndpointStatusCode added in v1.74.0

type VerifiedAccessEndpointStatusCode string
const (
	VerifiedAccessEndpointStatusCodePending  VerifiedAccessEndpointStatusCode = "pending"
	VerifiedAccessEndpointStatusCodeActive   VerifiedAccessEndpointStatusCode = "active"
	VerifiedAccessEndpointStatusCodeUpdating VerifiedAccessEndpointStatusCode = "updating"
	VerifiedAccessEndpointStatusCodeDeleting VerifiedAccessEndpointStatusCode = "deleting"
	VerifiedAccessEndpointStatusCodeDeleted  VerifiedAccessEndpointStatusCode = "deleted"
)

Enum values for VerifiedAccessEndpointStatusCode

func (VerifiedAccessEndpointStatusCode) Values added in v1.74.0

Values returns all known values for VerifiedAccessEndpointStatusCode. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type VerifiedAccessEndpointTarget added in v1.195.0

type VerifiedAccessEndpointTarget struct {

	// The ID of the Verified Access endpoint.
	VerifiedAccessEndpointId *string

	// The DNS name of the target.
	VerifiedAccessEndpointTargetDns *string

	// The IP address of the target.
	VerifiedAccessEndpointTargetIpAddress *string
	// contains filtered or unexported fields
}

Describes the targets for the specified Verified Access endpoint.

type VerifiedAccessEndpointType added in v1.74.0

type VerifiedAccessEndpointType string
const (
	VerifiedAccessEndpointTypeLoadBalancer     VerifiedAccessEndpointType = "load-balancer"
	VerifiedAccessEndpointTypeNetworkInterface VerifiedAccessEndpointType = "network-interface"
	VerifiedAccessEndpointTypeRds              VerifiedAccessEndpointType = "rds"
	VerifiedAccessEndpointTypeCidr             VerifiedAccessEndpointType = "cidr"
)

Enum values for VerifiedAccessEndpointType

func (VerifiedAccessEndpointType) Values added in v1.74.0

Values returns all known values for VerifiedAccessEndpointType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type VerifiedAccessGroup added in v1.74.0

type VerifiedAccessGroup struct {

	// The creation time.
	CreationTime *string

	// The deletion time.
	DeletionTime *string

	// A description for the Amazon Web Services Verified Access group.
	Description *string

	// The last updated time.
	LastUpdatedTime *string

	// The Amazon Web Services account number that owns the group.
	Owner *string

	// The options in use for server side encryption.
	SseSpecification *VerifiedAccessSseSpecificationResponse

	// The tags.
	Tags []Tag

	// The ARN of the Verified Access group.
	VerifiedAccessGroupArn *string

	// The ID of the Verified Access group.
	VerifiedAccessGroupId *string

	// The ID of the Amazon Web Services Verified Access instance.
	VerifiedAccessInstanceId *string
	// contains filtered or unexported fields
}

Describes a Verified Access group.

type VerifiedAccessInstance added in v1.74.0

type VerifiedAccessInstance struct {

	// The custom subdomain.
	CidrEndpointsCustomSubDomain *VerifiedAccessInstanceCustomSubDomain

	// The creation time.
	CreationTime *string

	// A description for the Amazon Web Services Verified Access instance.
	Description *string

	// Indicates whether support for Federal Information Processing Standards (FIPS)
	// is enabled on the instance.
	FipsEnabled *bool

	// The last updated time.
	LastUpdatedTime *string

	// The tags.
	Tags []Tag

	// The ID of the Amazon Web Services Verified Access instance.
	VerifiedAccessInstanceId *string

	// The IDs of the Amazon Web Services Verified Access trust providers.
	VerifiedAccessTrustProviders []VerifiedAccessTrustProviderCondensed
	// contains filtered or unexported fields
}

Describes a Verified Access instance.

type VerifiedAccessInstanceCustomSubDomain added in v1.195.0

type VerifiedAccessInstanceCustomSubDomain struct {

	// The name servers.
	Nameservers []string

	// The subdomain.
	SubDomain *string
	// contains filtered or unexported fields
}

Describes a custom subdomain for a network CIDR endpoint for Verified Access.

type VerifiedAccessInstanceLoggingConfiguration added in v1.74.0

type VerifiedAccessInstanceLoggingConfiguration struct {

	// Details about the logging options.
	AccessLogs *VerifiedAccessLogs

	// The ID of the Amazon Web Services Verified Access instance.
	VerifiedAccessInstanceId *string
	// contains filtered or unexported fields
}

Describes logging options for an Amazon Web Services Verified Access instance.

type VerifiedAccessInstanceOpenVpnClientConfiguration added in v1.195.0

type VerifiedAccessInstanceOpenVpnClientConfiguration struct {

	// The base64-encoded Open VPN client configuration.
	Config *string

	// The routes.
	Routes []VerifiedAccessInstanceOpenVpnClientConfigurationRoute
	// contains filtered or unexported fields
}

Describes a set of routes.

type VerifiedAccessInstanceOpenVpnClientConfigurationRoute added in v1.195.0

type VerifiedAccessInstanceOpenVpnClientConfigurationRoute struct {

	// The CIDR block.
	Cidr *string
	// contains filtered or unexported fields
}

Describes a route.

type VerifiedAccessInstanceUserTrustProviderClientConfiguration added in v1.195.0

type VerifiedAccessInstanceUserTrustProviderClientConfiguration struct {

	// The authorization endpoint of the IdP.
	AuthorizationEndpoint *string

	// The OAuth 2.0 client identifier.
	ClientId *string

	// The OAuth 2.0 client secret.
	ClientSecret *string

	// The OIDC issuer identifier of the IdP.
	Issuer *string

	// Indicates whether Proof of Key Code Exchange (PKCE) is enabled.
	PkceEnabled *bool

	// The public signing key endpoint.
	PublicSigningKeyEndpoint *string

	// The set of user claims to be requested from the IdP.
	Scopes *string

	// The token endpoint of the IdP.
	TokenEndpoint *string

	// The trust provider type.
	Type UserTrustProviderType

	// The user info endpoint of the IdP.
	UserInfoEndpoint *string
	// contains filtered or unexported fields
}

Describes the trust provider.

type VerifiedAccessLogCloudWatchLogsDestination added in v1.74.0

type VerifiedAccessLogCloudWatchLogsDestination struct {

	// The delivery status for access logs.
	DeliveryStatus *VerifiedAccessLogDeliveryStatus

	// Indicates whether logging is enabled.
	Enabled *bool

	// The ID of the CloudWatch Logs log group.
	LogGroup *string
	// contains filtered or unexported fields
}

Options for CloudWatch Logs as a logging destination.

type VerifiedAccessLogCloudWatchLogsDestinationOptions added in v1.74.0

type VerifiedAccessLogCloudWatchLogsDestinationOptions struct {

	// Indicates whether logging is enabled.
	//
	// This member is required.
	Enabled *bool

	// The ID of the CloudWatch Logs log group.
	LogGroup *string
	// contains filtered or unexported fields
}

Options for CloudWatch Logs as a logging destination.

type VerifiedAccessLogDeliveryStatus added in v1.74.0

type VerifiedAccessLogDeliveryStatus struct {

	// The status code.
	Code VerifiedAccessLogDeliveryStatusCode

	// The status message.
	Message *string
	// contains filtered or unexported fields
}

Describes a log delivery status.

type VerifiedAccessLogDeliveryStatusCode added in v1.74.0

type VerifiedAccessLogDeliveryStatusCode string
const (
	VerifiedAccessLogDeliveryStatusCodeSuccess VerifiedAccessLogDeliveryStatusCode = "success"
	VerifiedAccessLogDeliveryStatusCodeFailed  VerifiedAccessLogDeliveryStatusCode = "failed"
)

Enum values for VerifiedAccessLogDeliveryStatusCode

func (VerifiedAccessLogDeliveryStatusCode) Values added in v1.74.0

Values returns all known values for VerifiedAccessLogDeliveryStatusCode. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type VerifiedAccessLogKinesisDataFirehoseDestination added in v1.74.0

type VerifiedAccessLogKinesisDataFirehoseDestination struct {

	// The delivery status.
	DeliveryStatus *VerifiedAccessLogDeliveryStatus

	// The ID of the delivery stream.
	DeliveryStream *string

	// Indicates whether logging is enabled.
	Enabled *bool
	// contains filtered or unexported fields
}

Options for Kinesis as a logging destination.

type VerifiedAccessLogKinesisDataFirehoseDestinationOptions added in v1.74.0

type VerifiedAccessLogKinesisDataFirehoseDestinationOptions struct {

	// Indicates whether logging is enabled.
	//
	// This member is required.
	Enabled *bool

	// The ID of the delivery stream.
	DeliveryStream *string
	// contains filtered or unexported fields
}

Describes Amazon Kinesis Data Firehose logging options.

type VerifiedAccessLogOptions added in v1.74.0

type VerifiedAccessLogOptions struct {

	// Sends Verified Access logs to CloudWatch Logs.
	CloudWatchLogs *VerifiedAccessLogCloudWatchLogsDestinationOptions

	// Indicates whether to include trust data sent by trust providers in the logs.
	IncludeTrustContext *bool

	// Sends Verified Access logs to Kinesis.
	KinesisDataFirehose *VerifiedAccessLogKinesisDataFirehoseDestinationOptions

	// The logging version.
	//
	// Valid values: ocsf-0.1 | ocsf-1.0.0-rc.2
	LogVersion *string

	// Sends Verified Access logs to Amazon S3.
	S3 *VerifiedAccessLogS3DestinationOptions
	// contains filtered or unexported fields
}

Options for Verified Access logs.

type VerifiedAccessLogS3Destination added in v1.74.0

type VerifiedAccessLogS3Destination struct {

	// The bucket name.
	BucketName *string

	// The Amazon Web Services account number that owns the bucket.
	BucketOwner *string

	// The delivery status.
	DeliveryStatus *VerifiedAccessLogDeliveryStatus

	// Indicates whether logging is enabled.
	Enabled *bool

	// The bucket prefix.
	Prefix *string
	// contains filtered or unexported fields
}

Options for Amazon S3 as a logging destination.

type VerifiedAccessLogS3DestinationOptions added in v1.74.0

type VerifiedAccessLogS3DestinationOptions struct {

	// Indicates whether logging is enabled.
	//
	// This member is required.
	Enabled *bool

	// The bucket name.
	BucketName *string

	// The ID of the Amazon Web Services account that owns the Amazon S3 bucket.
	BucketOwner *string

	// The bucket prefix.
	Prefix *string
	// contains filtered or unexported fields
}

Options for Amazon S3 as a logging destination.

type VerifiedAccessLogs added in v1.74.0

type VerifiedAccessLogs struct {

	// CloudWatch Logs logging destination.
	CloudWatchLogs *VerifiedAccessLogCloudWatchLogsDestination

	// Indicates whether trust data is included in the logs.
	IncludeTrustContext *bool

	// Kinesis logging destination.
	KinesisDataFirehose *VerifiedAccessLogKinesisDataFirehoseDestination

	// The log version.
	LogVersion *string

	// Amazon S3 logging options.
	S3 *VerifiedAccessLogS3Destination
	// contains filtered or unexported fields
}

Describes the options for Verified Access logs.

type VerifiedAccessSseSpecificationRequest added in v1.122.0

type VerifiedAccessSseSpecificationRequest struct {

	//  Enable or disable the use of customer managed KMS keys for server side
	// encryption.
	//
	// Valid values: True | False
	CustomerManagedKeyEnabled *bool

	//  The ARN of the KMS key.
	KmsKeyArn *string
	// contains filtered or unexported fields
}
Verified Access provides server side encryption by default to data at rest

using Amazon Web Services-owned KMS keys. You also have the option of using customer managed KMS keys, which can be specified using the options below.

type VerifiedAccessSseSpecificationResponse added in v1.122.0

type VerifiedAccessSseSpecificationResponse struct {

	// Indicates whether customer managed KMS keys are in use for server side
	// encryption.
	//
	// Valid values: True | False
	CustomerManagedKeyEnabled *bool

	// The ARN of the KMS key.
	KmsKeyArn *string
	// contains filtered or unexported fields
}

The options in use for server side encryption.

type VerifiedAccessTrustProvider added in v1.74.0

type VerifiedAccessTrustProvider struct {

	// The creation time.
	CreationTime *string

	// A description for the Amazon Web Services Verified Access trust provider.
	Description *string

	// The options for device-identity trust provider.
	DeviceOptions *DeviceOptions

	// The type of device-based trust provider.
	DeviceTrustProviderType DeviceTrustProviderType

	// The last updated time.
	LastUpdatedTime *string

	// The OpenID Connect (OIDC) options.
	NativeApplicationOidcOptions *NativeApplicationOidcOptions

	// The options for an OpenID Connect-compatible user-identity trust provider.
	OidcOptions *OidcOptions

	// The identifier to be used when working with policy rules.
	PolicyReferenceName *string

	// The options in use for server side encryption.
	SseSpecification *VerifiedAccessSseSpecificationResponse

	// The tags.
	Tags []Tag

	// The type of Verified Access trust provider.
	TrustProviderType TrustProviderType

	// The type of user-based trust provider.
	UserTrustProviderType UserTrustProviderType

	// The ID of the Amazon Web Services Verified Access trust provider.
	VerifiedAccessTrustProviderId *string
	// contains filtered or unexported fields
}

Describes a Verified Access trust provider.

type VerifiedAccessTrustProviderCondensed added in v1.74.0

type VerifiedAccessTrustProviderCondensed struct {

	// The description of trust provider.
	Description *string

	// The type of device-based trust provider.
	DeviceTrustProviderType DeviceTrustProviderType

	// The type of trust provider (user- or device-based).
	TrustProviderType TrustProviderType

	// The type of user-based trust provider.
	UserTrustProviderType UserTrustProviderType

	// The ID of the trust provider.
	VerifiedAccessTrustProviderId *string
	// contains filtered or unexported fields
}

Condensed information about a trust provider.

type VgwTelemetry

type VgwTelemetry struct {

	// The number of accepted routes.
	AcceptedRouteCount *int32

	// The Amazon Resource Name (ARN) of the VPN tunnel endpoint certificate.
	CertificateArn *string

	// The date and time of the last change in status. This field is updated when
	// changes in IKE (Phase 1), IPSec (Phase 2), or BGP status are detected.
	LastStatusChange *time.Time

	// The Internet-routable IP address of the virtual private gateway's outside
	// interface.
	OutsideIpAddress *string

	// The status of the VPN tunnel.
	Status TelemetryStatus

	// If an error occurs, a description of the error.
	StatusMessage *string
	// contains filtered or unexported fields
}

Describes telemetry for a VPN tunnel.

type VirtualizationType

type VirtualizationType string
const (
	VirtualizationTypeHvm         VirtualizationType = "hvm"
	VirtualizationTypeParavirtual VirtualizationType = "paravirtual"
)

Enum values for VirtualizationType

func (VirtualizationType) Values added in v0.29.0

Values returns all known values for VirtualizationType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type Volume

type Volume struct {

	// This parameter is not returned by CreateVolume.
	//
	// Information about the volume attachments.
	Attachments []VolumeAttachment

	// The Availability Zone for the volume.
	AvailabilityZone *string

	// The time stamp when volume creation was initiated.
	CreateTime *time.Time

	// Indicates whether the volume is encrypted.
	Encrypted *bool

	// This parameter is not returned by CreateVolume.
	//
	// Indicates whether the volume was created using fast snapshot restore.
	FastRestored *bool

	// The number of I/O operations per second (IOPS). For gp3 , io1 , and io2
	// volumes, this represents the number of IOPS that are provisioned for the volume.
	// For gp2 volumes, this represents the baseline performance of the volume and the
	// rate at which the volume accumulates I/O credits for bursting.
	Iops *int32

	// The Amazon Resource Name (ARN) of the KMS key that was used to protect the
	// volume encryption key for the volume.
	KmsKeyId *string

	// Indicates whether Amazon EBS Multi-Attach is enabled.
	MultiAttachEnabled *bool

	// The service provider that manages the volume.
	Operator *OperatorResponse

	// The Amazon Resource Name (ARN) of the Outpost.
	OutpostArn *string

	// The size of the volume, in GiBs.
	Size *int32

	// The snapshot from which the volume was created, if applicable.
	SnapshotId *string

	// This parameter is not returned by CreateVolume.
	//
	// Reserved for future use.
	SseType SSEType

	// The volume state.
	State VolumeState

	// Any tags assigned to the volume.
	Tags []Tag

	// The throughput that the volume supports, in MiB/s.
	Throughput *int32

	// The ID of the volume.
	VolumeId *string

	// The volume type.
	VolumeType VolumeType
	// contains filtered or unexported fields
}

Describes a volume.

type VolumeAttachment

type VolumeAttachment struct {

	// The ARN of the Amazon ECS or Fargate task to which the volume is attached.
	AssociatedResource *string

	// The time stamp when the attachment initiated.
	AttachTime *time.Time

	// Indicates whether the EBS volume is deleted on instance termination.
	DeleteOnTermination *bool

	// The device name.
	//
	// If the volume is attached to a Fargate task, this parameter returns null .
	Device *string

	// The ID of the instance.
	//
	// If the volume is attached to a Fargate task, this parameter returns null .
	InstanceId *string

	// The service principal of Amazon Web Services service that owns the underlying
	// instance to which the volume is attached.
	//
	// This parameter is returned only for volumes that are attached to Fargate tasks.
	InstanceOwningService *string

	// The attachment state of the volume.
	State VolumeAttachmentState

	// The ID of the volume.
	VolumeId *string
	// contains filtered or unexported fields
}

Describes volume attachment details.

type VolumeAttachmentState

type VolumeAttachmentState string
const (
	VolumeAttachmentStateAttaching VolumeAttachmentState = "attaching"
	VolumeAttachmentStateAttached  VolumeAttachmentState = "attached"
	VolumeAttachmentStateDetaching VolumeAttachmentState = "detaching"
	VolumeAttachmentStateDetached  VolumeAttachmentState = "detached"
	VolumeAttachmentStateBusy      VolumeAttachmentState = "busy"
)

Enum values for VolumeAttachmentState

func (VolumeAttachmentState) Values added in v0.29.0

Values returns all known values for VolumeAttachmentState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type VolumeAttributeName

type VolumeAttributeName string
const (
	VolumeAttributeNameAutoEnableIO VolumeAttributeName = "autoEnableIO"
	VolumeAttributeNameProductCodes VolumeAttributeName = "productCodes"
)

Enum values for VolumeAttributeName

func (VolumeAttributeName) Values added in v0.29.0

Values returns all known values for VolumeAttributeName. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type VolumeDetail

type VolumeDetail struct {

	// The size of the volume, in GiB.
	//
	// This member is required.
	Size *int64
	// contains filtered or unexported fields
}

Describes an EBS volume.

type VolumeModification

type VolumeModification struct {

	// The modification completion or failure time.
	EndTime *time.Time

	// The current modification state.
	ModificationState VolumeModificationState

	// The original IOPS rate of the volume.
	OriginalIops *int32

	// The original setting for Amazon EBS Multi-Attach.
	OriginalMultiAttachEnabled *bool

	// The original size of the volume, in GiB.
	OriginalSize *int32

	// The original throughput of the volume, in MiB/s.
	OriginalThroughput *int32

	// The original EBS volume type of the volume.
	OriginalVolumeType VolumeType

	// The modification progress, from 0 to 100 percent complete.
	Progress *int64

	// The modification start time.
	StartTime *time.Time

	// A status message about the modification progress or failure.
	StatusMessage *string

	// The target IOPS rate of the volume.
	TargetIops *int32

	// The target setting for Amazon EBS Multi-Attach.
	TargetMultiAttachEnabled *bool

	// The target size of the volume, in GiB.
	TargetSize *int32

	// The target throughput of the volume, in MiB/s.
	TargetThroughput *int32

	// The target EBS volume type of the volume.
	TargetVolumeType VolumeType

	// The ID of the volume.
	VolumeId *string
	// contains filtered or unexported fields
}

Describes the modification status of an EBS volume.

type VolumeModificationState

type VolumeModificationState string
const (
	VolumeModificationStateModifying  VolumeModificationState = "modifying"
	VolumeModificationStateOptimizing VolumeModificationState = "optimizing"
	VolumeModificationStateCompleted  VolumeModificationState = "completed"
	VolumeModificationStateFailed     VolumeModificationState = "failed"
)

Enum values for VolumeModificationState

func (VolumeModificationState) Values added in v0.29.0

Values returns all known values for VolumeModificationState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type VolumeState

type VolumeState string
const (
	VolumeStateCreating  VolumeState = "creating"
	VolumeStateAvailable VolumeState = "available"
	VolumeStateInUse     VolumeState = "in-use"
	VolumeStateDeleting  VolumeState = "deleting"
	VolumeStateDeleted   VolumeState = "deleted"
	VolumeStateError     VolumeState = "error"
)

Enum values for VolumeState

func (VolumeState) Values added in v0.29.0

func (VolumeState) Values() []VolumeState

Values returns all known values for VolumeState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type VolumeStatusAction

type VolumeStatusAction struct {

	// The code identifying the operation, for example, enable-volume-io .
	Code *string

	// A description of the operation.
	Description *string

	// The ID of the event associated with this operation.
	EventId *string

	// The event type associated with this operation.
	EventType *string
	// contains filtered or unexported fields
}

Describes a volume status operation code.

type VolumeStatusAttachmentStatus

type VolumeStatusAttachmentStatus struct {

	// The ID of the attached instance.
	InstanceId *string

	// The maximum IOPS supported by the attached instance.
	IoPerformance *string
	// contains filtered or unexported fields
}

Information about the instances to which the volume is attached.

type VolumeStatusDetails

type VolumeStatusDetails struct {

	// The name of the volume status.
	Name VolumeStatusName

	// The intended status of the volume status.
	Status *string
	// contains filtered or unexported fields
}

Describes a volume status.

type VolumeStatusEvent

type VolumeStatusEvent struct {

	// A description of the event.
	Description *string

	// The ID of this event.
	EventId *string

	// The type of this event.
	EventType *string

	// The ID of the instance associated with the event.
	InstanceId *string

	// The latest end time of the event.
	NotAfter *time.Time

	// The earliest start time of the event.
	NotBefore *time.Time
	// contains filtered or unexported fields
}

Describes a volume status event.

type VolumeStatusInfo

type VolumeStatusInfo struct {

	// The details of the volume status.
	Details []VolumeStatusDetails

	// The status of the volume.
	Status VolumeStatusInfoStatus
	// contains filtered or unexported fields
}

Describes the status of a volume.

type VolumeStatusInfoStatus

type VolumeStatusInfoStatus string
const (
	VolumeStatusInfoStatusOk               VolumeStatusInfoStatus = "ok"
	VolumeStatusInfoStatusImpaired         VolumeStatusInfoStatus = "impaired"
	VolumeStatusInfoStatusInsufficientData VolumeStatusInfoStatus = "insufficient-data"
)

Enum values for VolumeStatusInfoStatus

func (VolumeStatusInfoStatus) Values added in v0.29.0

Values returns all known values for VolumeStatusInfoStatus. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type VolumeStatusItem

type VolumeStatusItem struct {

	// The details of the operation.
	Actions []VolumeStatusAction

	// Information about the instances to which the volume is attached.
	AttachmentStatuses []VolumeStatusAttachmentStatus

	// The Availability Zone of the volume.
	AvailabilityZone *string

	// A list of events associated with the volume.
	Events []VolumeStatusEvent

	// The Amazon Resource Name (ARN) of the Outpost.
	OutpostArn *string

	// The volume ID.
	VolumeId *string

	// The volume status.
	VolumeStatus *VolumeStatusInfo
	// contains filtered or unexported fields
}

Describes the volume status.

type VolumeStatusName

type VolumeStatusName string
const (
	VolumeStatusNameIoEnabled     VolumeStatusName = "io-enabled"
	VolumeStatusNameIoPerformance VolumeStatusName = "io-performance"
)

Enum values for VolumeStatusName

func (VolumeStatusName) Values added in v0.29.0

Values returns all known values for VolumeStatusName. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type VolumeType

type VolumeType string
const (
	VolumeTypeStandard VolumeType = "standard"
	VolumeTypeIo1      VolumeType = "io1"
	VolumeTypeIo2      VolumeType = "io2"
	VolumeTypeGp2      VolumeType = "gp2"
	VolumeTypeSc1      VolumeType = "sc1"
	VolumeTypeSt1      VolumeType = "st1"
	VolumeTypeGp3      VolumeType = "gp3"
)

Enum values for VolumeType

func (VolumeType) Values added in v0.29.0

func (VolumeType) Values() []VolumeType

Values returns all known values for VolumeType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type Vpc

type Vpc struct {

	// The state of VPC Block Public Access (BPA).
	BlockPublicAccessStates *BlockPublicAccessStates

	// The primary IPv4 CIDR block for the VPC.
	CidrBlock *string

	// Information about the IPv4 CIDR blocks associated with the VPC.
	CidrBlockAssociationSet []VpcCidrBlockAssociation

	// The ID of the set of DHCP options you've associated with the VPC.
	DhcpOptionsId *string

	// The allowed tenancy of instances launched into the VPC.
	InstanceTenancy Tenancy

	// Information about the IPv6 CIDR blocks associated with the VPC.
	Ipv6CidrBlockAssociationSet []VpcIpv6CidrBlockAssociation

	// Indicates whether the VPC is the default VPC.
	IsDefault *bool

	// The ID of the Amazon Web Services account that owns the VPC.
	OwnerId *string

	// The current state of the VPC.
	State VpcState

	// Any tags assigned to the VPC.
	Tags []Tag

	// The ID of the VPC.
	VpcId *string
	// contains filtered or unexported fields
}

Describes a VPC.

type VpcAttachment

type VpcAttachment struct {

	// The current state of the attachment.
	State AttachmentStatus

	// The ID of the VPC.
	VpcId *string
	// contains filtered or unexported fields
}

Describes an attachment between a virtual private gateway and a VPC.

type VpcAttributeName

type VpcAttributeName string
const (
	VpcAttributeNameEnableDnsSupport                 VpcAttributeName = "enableDnsSupport"
	VpcAttributeNameEnableDnsHostnames               VpcAttributeName = "enableDnsHostnames"
	VpcAttributeNameEnableNetworkAddressUsageMetrics VpcAttributeName = "enableNetworkAddressUsageMetrics"
)

Enum values for VpcAttributeName

func (VpcAttributeName) Values added in v0.29.0

Values returns all known values for VpcAttributeName. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type VpcBlockPublicAccessExclusion added in v1.191.0

type VpcBlockPublicAccessExclusion struct {

	// When the exclusion was created.
	CreationTimestamp *time.Time

	// When the exclusion was deleted.
	DeletionTimestamp *time.Time

	// The ID of the exclusion.
	ExclusionId *string

	// The exclusion mode for internet gateway traffic.
	//
	//   - allow-bidirectional : Allow all internet traffic to and from the excluded
	//   VPCs and subnets.
	//
	//   - allow-egress : Allow outbound internet traffic from the excluded VPCs and
	//   subnets. Block inbound internet traffic to the excluded VPCs and subnets. Only
	//   applies when VPC Block Public Access is set to Bidirectional.
	InternetGatewayExclusionMode InternetGatewayExclusionMode

	// When the exclusion was last updated.
	LastUpdateTimestamp *time.Time

	// The reason for the current exclusion state.
	Reason *string

	// The ARN of the exclusion.
	ResourceArn *string

	// The state of the exclusion.
	State VpcBlockPublicAccessExclusionState

	// tag - The key/value combination of a tag assigned to the resource. Use the tag
	// key in the filter name and the tag value as the filter value. For example, to
	// find all resources that have a tag with the key Owner and the value TeamA ,
	// specify tag:Owner for the filter name and TeamA for the filter value.
	Tags []Tag
	// contains filtered or unexported fields
}

A VPC BPA exclusion is a mode that can be applied to a single VPC or subnet that exempts it from the account’s BPA mode and will allow bidirectional or egress-only access. You can create BPA exclusions for VPCs and subnets even when BPA is not enabled on the account to ensure that there is no traffic disruption to the exclusions when VPC BPA is turned on. To learn more about VPC BPA, see Block public access to VPCs and subnets in the Amazon VPC User Guide.

type VpcBlockPublicAccessExclusionState added in v1.191.0

type VpcBlockPublicAccessExclusionState string
const (
	VpcBlockPublicAccessExclusionStateCreateInProgress  VpcBlockPublicAccessExclusionState = "create-in-progress"
	VpcBlockPublicAccessExclusionStateCreateComplete    VpcBlockPublicAccessExclusionState = "create-complete"
	VpcBlockPublicAccessExclusionStateCreateFailed      VpcBlockPublicAccessExclusionState = "create-failed"
	VpcBlockPublicAccessExclusionStateUpdateInProgress  VpcBlockPublicAccessExclusionState = "update-in-progress"
	VpcBlockPublicAccessExclusionStateUpdateComplete    VpcBlockPublicAccessExclusionState = "update-complete"
	VpcBlockPublicAccessExclusionStateUpdateFailed      VpcBlockPublicAccessExclusionState = "update-failed"
	VpcBlockPublicAccessExclusionStateDeleteInProgress  VpcBlockPublicAccessExclusionState = "delete-in-progress"
	VpcBlockPublicAccessExclusionStateDeleteComplete    VpcBlockPublicAccessExclusionState = "delete-complete"
	VpcBlockPublicAccessExclusionStateDisableInProgress VpcBlockPublicAccessExclusionState = "disable-in-progress"
	VpcBlockPublicAccessExclusionStateDisableComplete   VpcBlockPublicAccessExclusionState = "disable-complete"
)

Enum values for VpcBlockPublicAccessExclusionState

func (VpcBlockPublicAccessExclusionState) Values added in v1.191.0

Values returns all known values for VpcBlockPublicAccessExclusionState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type VpcBlockPublicAccessExclusionsAllowed added in v1.195.0

type VpcBlockPublicAccessExclusionsAllowed string
const (
	VpcBlockPublicAccessExclusionsAllowedAllowed    VpcBlockPublicAccessExclusionsAllowed = "allowed"
	VpcBlockPublicAccessExclusionsAllowedNotAllowed VpcBlockPublicAccessExclusionsAllowed = "not-allowed"
)

Enum values for VpcBlockPublicAccessExclusionsAllowed

func (VpcBlockPublicAccessExclusionsAllowed) Values added in v1.195.0

Values returns all known values for VpcBlockPublicAccessExclusionsAllowed. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type VpcBlockPublicAccessOptions added in v1.191.0

type VpcBlockPublicAccessOptions struct {

	// An Amazon Web Services account ID.
	AwsAccountId *string

	// An Amazon Web Services Region.
	AwsRegion *string

	// Determines if exclusions are allowed. If you have [enabled VPC BPA at the Organization level], exclusions may be
	// not-allowed . Otherwise, they are allowed .
	//
	// [enabled VPC BPA at the Organization level]: https://docs.aws.amazon.com/vpc/latest/userguide/security-vpc-bpa.html#security-vpc-bpa-exclusions-orgs
	ExclusionsAllowed VpcBlockPublicAccessExclusionsAllowed

	// The current mode of VPC BPA.
	//
	//   - off : VPC BPA is not enabled and traffic is allowed to and from internet
	//   gateways and egress-only internet gateways in this Region.
	//
	//   - block-bidirectional : Block all traffic to and from internet gateways and
	//   egress-only internet gateways in this Region (except for excluded VPCs and
	//   subnets).
	//
	//   - block-ingress : Block all internet traffic to the VPCs in this Region
	//   (except for VPCs or subnets which are excluded). Only traffic to and from NAT
	//   gateways and egress-only internet gateways is allowed because these gateways
	//   only allow outbound connections to be established.
	InternetGatewayBlockMode InternetGatewayBlockMode

	// The last time the VPC BPA mode was updated.
	LastUpdateTimestamp *time.Time

	// The entity that manages the state of VPC BPA. Possible values include:
	//
	//   - account - The state is managed by the account.
	//
	//   - declarative-policy - The state is managed by a declarative policy and can't
	//   be modified by the account.
	ManagedBy ManagedBy

	// The reason for the current state.
	Reason *string

	// The current state of VPC BPA.
	State VpcBlockPublicAccessState
	// contains filtered or unexported fields
}

VPC Block Public Access (BPA) enables you to block resources in VPCs and subnets that you own in a Region from reaching or being reached from the internet through internet gateways and egress-only internet gateways. To learn more about VPC BPA, see Block public access to VPCs and subnetsin the Amazon VPC User Guide.

type VpcBlockPublicAccessState added in v1.191.0

type VpcBlockPublicAccessState string
const (
	VpcBlockPublicAccessStateDefaultState     VpcBlockPublicAccessState = "default-state"
	VpcBlockPublicAccessStateUpdateInProgress VpcBlockPublicAccessState = "update-in-progress"
	VpcBlockPublicAccessStateUpdateComplete   VpcBlockPublicAccessState = "update-complete"
)

Enum values for VpcBlockPublicAccessState

func (VpcBlockPublicAccessState) Values added in v1.191.0

Values returns all known values for VpcBlockPublicAccessState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type VpcCidrBlockAssociation

type VpcCidrBlockAssociation struct {

	// The association ID for the IPv4 CIDR block.
	AssociationId *string

	// The IPv4 CIDR block.
	CidrBlock *string

	// Information about the state of the CIDR block.
	CidrBlockState *VpcCidrBlockState
	// contains filtered or unexported fields
}

Describes an IPv4 CIDR block associated with a VPC.

type VpcCidrBlockState

type VpcCidrBlockState struct {

	// The state of the CIDR block.
	State VpcCidrBlockStateCode

	// A message about the status of the CIDR block, if applicable.
	StatusMessage *string
	// contains filtered or unexported fields
}

Describes the state of a CIDR block.

type VpcCidrBlockStateCode

type VpcCidrBlockStateCode string
const (
	VpcCidrBlockStateCodeAssociating    VpcCidrBlockStateCode = "associating"
	VpcCidrBlockStateCodeAssociated     VpcCidrBlockStateCode = "associated"
	VpcCidrBlockStateCodeDisassociating VpcCidrBlockStateCode = "disassociating"
	VpcCidrBlockStateCodeDisassociated  VpcCidrBlockStateCode = "disassociated"
	VpcCidrBlockStateCodeFailing        VpcCidrBlockStateCode = "failing"
	VpcCidrBlockStateCodeFailed         VpcCidrBlockStateCode = "failed"
)

Enum values for VpcCidrBlockStateCode

func (VpcCidrBlockStateCode) Values added in v0.29.0

Values returns all known values for VpcCidrBlockStateCode. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type VpcClassicLink struct {

	// Indicates whether the VPC is enabled for ClassicLink.
	ClassicLinkEnabled *bool

	// Any tags assigned to the VPC.
	Tags []Tag

	// The ID of the VPC.
	VpcId *string
	// contains filtered or unexported fields
}

Deprecated.

Describes whether a VPC is enabled for ClassicLink.

type VpcEndpoint

type VpcEndpoint struct {

	// The date and time that the endpoint was created.
	CreationTimestamp *time.Time

	// (Interface endpoint) The DNS entries for the endpoint.
	DnsEntries []DnsEntry

	// The DNS options for the endpoint.
	DnsOptions *DnsOptions

	// Reason for the failure.
	FailureReason *string

	// (Interface endpoint) Information about the security groups that are associated
	// with the network interface.
	Groups []SecurityGroupIdentifier

	// The IP address type for the endpoint.
	IpAddressType IpAddressType

	// Array of IPv4 prefixes.
	Ipv4Prefixes []SubnetIpPrefixes

	// Array of IPv6 prefixes.
	Ipv6Prefixes []SubnetIpPrefixes

	// The last error that occurred for endpoint.
	LastError *LastError

	// (Interface endpoint) The network interfaces for the endpoint.
	NetworkInterfaceIds []string

	// The ID of the Amazon Web Services account that owns the endpoint.
	OwnerId *string

	// The policy document associated with the endpoint, if applicable.
	PolicyDocument *string

	// (Interface endpoint) Indicates whether the VPC is associated with a private
	// hosted zone.
	PrivateDnsEnabled *bool

	// Indicates whether the endpoint is being managed by its service.
	RequesterManaged *bool

	// The Amazon Resource Name (ARN) of the resource configuration.
	ResourceConfigurationArn *string

	// (Gateway endpoint) The IDs of the route tables associated with the endpoint.
	RouteTableIds []string

	// The name of the service to which the endpoint is associated.
	ServiceName *string

	// The Amazon Resource Name (ARN) of the service network.
	ServiceNetworkArn *string

	// The Region where the service is hosted.
	ServiceRegion *string

	// The state of the endpoint.
	State State

	// (Interface endpoint) The subnets for the endpoint.
	SubnetIds []string

	// The tags assigned to the endpoint.
	Tags []Tag

	// The ID of the endpoint.
	VpcEndpointId *string

	// The type of endpoint.
	VpcEndpointType VpcEndpointType

	// The ID of the VPC to which the endpoint is associated.
	VpcId *string
	// contains filtered or unexported fields
}

Describes a VPC endpoint.

type VpcEndpointAssociation added in v1.195.0

type VpcEndpointAssociation struct {

	// The connectivity status of the resources associated to a VPC endpoint. The
	// resource is accessible if the associated resource configuration is AVAILABLE ,
	// otherwise the resource is inaccessible.
	AssociatedResourceAccessibility *string

	// The Amazon Resource Name (ARN) of the associated resource.
	AssociatedResourceArn *string

	// The DNS entry of the VPC endpoint association.
	DnsEntry *DnsEntry

	// An error code related to why an VPC endpoint association failed.
	FailureCode *string

	// A message related to why an VPC endpoint association failed.
	FailureReason *string

	// The ID of the VPC endpoint association.
	Id *string

	// The private DNS entry of the VPC endpoint association.
	PrivateDnsEntry *DnsEntry

	// The Amazon Resource Name (ARN) of the resource configuration group.
	ResourceConfigurationGroupArn *string

	// The Amazon Resource Name (ARN) of the service network.
	ServiceNetworkArn *string

	// The name of the service network.
	ServiceNetworkName *string

	// The tags to apply to the VPC endpoint association.
	Tags []Tag

	// The ID of the VPC endpoint.
	VpcEndpointId *string
	// contains filtered or unexported fields
}

Describes the VPC resources, VPC endpoint services, Lattice services, or service networks associated with the VPC endpoint.

type VpcEndpointConnection

type VpcEndpointConnection struct {

	// The date and time that the VPC endpoint was created.
	CreationTimestamp *time.Time

	// The DNS entries for the VPC endpoint.
	DnsEntries []DnsEntry

	// The Amazon Resource Names (ARNs) of the Gateway Load Balancers for the service.
	GatewayLoadBalancerArns []string

	// The IP address type for the endpoint.
	IpAddressType IpAddressType

	// The Amazon Resource Names (ARNs) of the network load balancers for the service.
	NetworkLoadBalancerArns []string

	// The ID of the service to which the endpoint is connected.
	ServiceId *string

	// The tags.
	Tags []Tag

	// The ID of the VPC endpoint connection.
	VpcEndpointConnectionId *string

	// The ID of the VPC endpoint.
	VpcEndpointId *string

	// The ID of the Amazon Web Services account that owns the VPC endpoint.
	VpcEndpointOwner *string

	// The Region of the endpoint.
	VpcEndpointRegion *string

	// The state of the VPC endpoint.
	VpcEndpointState State
	// contains filtered or unexported fields
}

Describes a VPC endpoint connection to a service.

type VpcEndpointType

type VpcEndpointType string
const (
	VpcEndpointTypeInterface           VpcEndpointType = "Interface"
	VpcEndpointTypeGateway             VpcEndpointType = "Gateway"
	VpcEndpointTypeGatewayLoadBalancer VpcEndpointType = "GatewayLoadBalancer"
	VpcEndpointTypeResource            VpcEndpointType = "Resource"
	VpcEndpointTypeServiceNetwork      VpcEndpointType = "ServiceNetwork"
)

Enum values for VpcEndpointType

func (VpcEndpointType) Values added in v0.29.0

func (VpcEndpointType) Values() []VpcEndpointType

Values returns all known values for VpcEndpointType. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type VpcIpv6CidrBlockAssociation

type VpcIpv6CidrBlockAssociation struct {

	// The association ID for the IPv6 CIDR block.
	AssociationId *string

	// The source that allocated the IP address space. byoip or amazon indicates
	// public IP address space allocated by Amazon or space that you have allocated
	// with Bring your own IP (BYOIP). none indicates private space.
	IpSource IpSource

	// Public IPv6 addresses are those advertised on the internet from Amazon Web
	// Services. Private IP addresses are not and cannot be advertised on the internet
	// from Amazon Web Services.
	Ipv6AddressAttribute Ipv6AddressAttribute

	// The IPv6 CIDR block.
	Ipv6CidrBlock *string

	// Information about the state of the CIDR block.
	Ipv6CidrBlockState *VpcCidrBlockState

	// The ID of the IPv6 address pool from which the IPv6 CIDR block is allocated.
	Ipv6Pool *string

	// The name of the unique set of Availability Zones, Local Zones, or Wavelength
	// Zones from which Amazon Web Services advertises IP addresses, for example,
	// us-east-1-wl1-bos-wlz-1 .
	NetworkBorderGroup *string
	// contains filtered or unexported fields
}

Describes an IPv6 CIDR block associated with a VPC.

type VpcPeeringConnection

type VpcPeeringConnection struct {

	// Information about the accepter VPC. CIDR block information is only returned
	// when describing an active VPC peering connection.
	AccepterVpcInfo *VpcPeeringConnectionVpcInfo

	// The time that an unaccepted VPC peering connection will expire.
	ExpirationTime *time.Time

	// Information about the requester VPC. CIDR block information is only returned
	// when describing an active VPC peering connection.
	RequesterVpcInfo *VpcPeeringConnectionVpcInfo

	// The status of the VPC peering connection.
	Status *VpcPeeringConnectionStateReason

	// Any tags assigned to the resource.
	Tags []Tag

	// The ID of the VPC peering connection.
	VpcPeeringConnectionId *string
	// contains filtered or unexported fields
}

Describes a VPC peering connection.

type VpcPeeringConnectionOptionsDescription

type VpcPeeringConnectionOptionsDescription struct {

	// Indicates whether a local VPC can resolve public DNS hostnames to private IP
	// addresses when queried from instances in a peer VPC.
	AllowDnsResolutionFromRemoteVpc *bool

	// Deprecated.
	AllowEgressFromLocalClassicLinkToRemoteVpc *bool

	// Deprecated.
	AllowEgressFromLocalVpcToRemoteClassicLink *bool
	// contains filtered or unexported fields
}

Describes the VPC peering connection options.

type VpcPeeringConnectionStateReason

type VpcPeeringConnectionStateReason struct {

	// The status of the VPC peering connection.
	Code VpcPeeringConnectionStateReasonCode

	// A message that provides more information about the status, if applicable.
	Message *string
	// contains filtered or unexported fields
}

Describes the status of a VPC peering connection.

type VpcPeeringConnectionStateReasonCode

type VpcPeeringConnectionStateReasonCode string
const (
	VpcPeeringConnectionStateReasonCodeInitiatingRequest VpcPeeringConnectionStateReasonCode = "initiating-request"
	VpcPeeringConnectionStateReasonCodePendingAcceptance VpcPeeringConnectionStateReasonCode = "pending-acceptance"
	VpcPeeringConnectionStateReasonCodeActive            VpcPeeringConnectionStateReasonCode = "active"
	VpcPeeringConnectionStateReasonCodeDeleted           VpcPeeringConnectionStateReasonCode = "deleted"
	VpcPeeringConnectionStateReasonCodeRejected          VpcPeeringConnectionStateReasonCode = "rejected"
	VpcPeeringConnectionStateReasonCodeFailed            VpcPeeringConnectionStateReasonCode = "failed"
	VpcPeeringConnectionStateReasonCodeExpired           VpcPeeringConnectionStateReasonCode = "expired"
	VpcPeeringConnectionStateReasonCodeProvisioning      VpcPeeringConnectionStateReasonCode = "provisioning"
	VpcPeeringConnectionStateReasonCodeDeleting          VpcPeeringConnectionStateReasonCode = "deleting"
)

Enum values for VpcPeeringConnectionStateReasonCode

func (VpcPeeringConnectionStateReasonCode) Values added in v0.29.0

Values returns all known values for VpcPeeringConnectionStateReasonCode. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type VpcPeeringConnectionVpcInfo

type VpcPeeringConnectionVpcInfo struct {

	// The IPv4 CIDR block for the VPC.
	CidrBlock *string

	// Information about the IPv4 CIDR blocks for the VPC.
	CidrBlockSet []CidrBlock

	// The IPv6 CIDR block for the VPC.
	Ipv6CidrBlockSet []Ipv6CidrBlock

	// The ID of the Amazon Web Services account that owns the VPC.
	OwnerId *string

	// Information about the VPC peering connection options for the accepter or
	// requester VPC.
	PeeringOptions *VpcPeeringConnectionOptionsDescription

	// The Region in which the VPC is located.
	Region *string

	// The ID of the VPC.
	VpcId *string
	// contains filtered or unexported fields
}

Describes a VPC in a VPC peering connection.

type VpcState

type VpcState string
const (
	VpcStatePending   VpcState = "pending"
	VpcStateAvailable VpcState = "available"
)

Enum values for VpcState

func (VpcState) Values added in v0.29.0

func (VpcState) Values() []VpcState

Values returns all known values for VpcState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type VpcTenancy

type VpcTenancy string
const (
	VpcTenancyDefault VpcTenancy = "default"
)

Enum values for VpcTenancy

func (VpcTenancy) Values added in v0.29.0

func (VpcTenancy) Values() []VpcTenancy

Values returns all known values for VpcTenancy. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type VpnConnection

type VpnConnection struct {

	// The category of the VPN connection. A value of VPN indicates an Amazon Web
	// Services VPN connection. A value of VPN-Classic indicates an Amazon Web
	// Services Classic VPN connection.
	Category *string

	// The ARN of the core network.
	CoreNetworkArn *string

	// The ARN of the core network attachment.
	CoreNetworkAttachmentArn *string

	// The configuration information for the VPN connection's customer gateway (in the
	// native XML format). This element is always present in the CreateVpnConnectionresponse; however,
	// it's present in the DescribeVpnConnectionsresponse only if the VPN connection is in the pending or
	// available state.
	CustomerGatewayConfiguration *string

	// The ID of the customer gateway at your end of the VPN connection.
	CustomerGatewayId *string

	// The current state of the gateway association.
	GatewayAssociationState GatewayAssociationState

	// The VPN connection options.
	Options *VpnConnectionOptions

	// The static routes associated with the VPN connection.
	Routes []VpnStaticRoute

	// The current state of the VPN connection.
	State VpnState

	// Any tags assigned to the VPN connection.
	Tags []Tag

	// The ID of the transit gateway associated with the VPN connection.
	TransitGatewayId *string

	// The type of VPN connection.
	Type GatewayType

	// Information about the VPN tunnel.
	VgwTelemetry []VgwTelemetry

	// The ID of the VPN connection.
	VpnConnectionId *string

	// The ID of the virtual private gateway at the Amazon Web Services side of the
	// VPN connection.
	VpnGatewayId *string
	// contains filtered or unexported fields
}

Describes a VPN connection.

type VpnConnectionDeviceType added in v1.18.0

type VpnConnectionDeviceType struct {

	// Customer gateway device platform.
	Platform *string

	// Customer gateway device software version.
	Software *string

	// Customer gateway device vendor.
	Vendor *string

	// Customer gateway device identifier.
	VpnConnectionDeviceTypeId *string
	// contains filtered or unexported fields
}

List of customer gateway devices that have a sample configuration file available for use. You can also see the list of device types with sample configuration files available under Your customer gateway devicein the Amazon Web Services Site-to-Site VPN User Guide.

type VpnConnectionOptions

type VpnConnectionOptions struct {

	// Indicates whether acceleration is enabled for the VPN connection.
	EnableAcceleration *bool

	// The IPv4 CIDR on the customer gateway (on-premises) side of the VPN connection.
	LocalIpv4NetworkCidr *string

	// The IPv6 CIDR on the customer gateway (on-premises) side of the VPN connection.
	LocalIpv6NetworkCidr *string

	// The type of IPv4 address assigned to the outside interface of the customer
	// gateway.
	//
	// Valid values: PrivateIpv4 | PublicIpv4
	//
	// Default: PublicIpv4
	OutsideIpAddressType *string

	// The IPv4 CIDR on the Amazon Web Services side of the VPN connection.
	RemoteIpv4NetworkCidr *string

	// The IPv6 CIDR on the Amazon Web Services side of the VPN connection.
	RemoteIpv6NetworkCidr *string

	// Indicates whether the VPN connection uses static routes only. Static routes
	// must be used for devices that don't support BGP.
	StaticRoutesOnly *bool

	// The transit gateway attachment ID in use for the VPN tunnel.
	TransportTransitGatewayAttachmentId *string

	// Indicates whether the VPN tunnels process IPv4 or IPv6 traffic.
	TunnelInsideIpVersion TunnelInsideIpVersion

	// Indicates the VPN tunnel options.
	TunnelOptions []TunnelOption
	// contains filtered or unexported fields
}

Describes VPN connection options.

type VpnConnectionOptionsSpecification

type VpnConnectionOptionsSpecification struct {

	// Indicate whether to enable acceleration for the VPN connection.
	//
	// Default: false
	EnableAcceleration *bool

	// The IPv4 CIDR on the customer gateway (on-premises) side of the VPN connection.
	//
	// Default: 0.0.0.0/0
	LocalIpv4NetworkCidr *string

	// The IPv6 CIDR on the customer gateway (on-premises) side of the VPN connection.
	//
	// Default: ::/0
	LocalIpv6NetworkCidr *string

	// The type of IPv4 address assigned to the outside interface of the customer
	// gateway device.
	//
	// Valid values: PrivateIpv4 | PublicIpv4
	//
	// Default: PublicIpv4
	OutsideIpAddressType *string

	// The IPv4 CIDR on the Amazon Web Services side of the VPN connection.
	//
	// Default: 0.0.0.0/0
	RemoteIpv4NetworkCidr *string

	// The IPv6 CIDR on the Amazon Web Services side of the VPN connection.
	//
	// Default: ::/0
	RemoteIpv6NetworkCidr *string

	// Indicate whether the VPN connection uses static routes only. If you are
	// creating a VPN connection for a device that does not support BGP, you must
	// specify true . Use CreateVpnConnectionRoute to create a static route.
	//
	// Default: false
	StaticRoutesOnly *bool

	// The transit gateway attachment ID to use for the VPN tunnel.
	//
	// Required if OutsideIpAddressType is set to PrivateIpv4 .
	TransportTransitGatewayAttachmentId *string

	// Indicate whether the VPN tunnels process IPv4 or IPv6 traffic.
	//
	// Default: ipv4
	TunnelInsideIpVersion TunnelInsideIpVersion

	// The tunnel options for the VPN connection.
	TunnelOptions []VpnTunnelOptionsSpecification
	// contains filtered or unexported fields
}

Describes VPN connection options.

type VpnEcmpSupportValue

type VpnEcmpSupportValue string
const (
	VpnEcmpSupportValueEnable  VpnEcmpSupportValue = "enable"
	VpnEcmpSupportValueDisable VpnEcmpSupportValue = "disable"
)

Enum values for VpnEcmpSupportValue

func (VpnEcmpSupportValue) Values added in v0.29.0

Values returns all known values for VpnEcmpSupportValue. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type VpnGateway

type VpnGateway struct {

	// The private Autonomous System Number (ASN) for the Amazon side of a BGP session.
	AmazonSideAsn *int64

	// The Availability Zone where the virtual private gateway was created, if
	// applicable. This field may be empty or not returned.
	AvailabilityZone *string

	// The current state of the virtual private gateway.
	State VpnState

	// Any tags assigned to the virtual private gateway.
	Tags []Tag

	// The type of VPN connection the virtual private gateway supports.
	Type GatewayType

	// Any VPCs attached to the virtual private gateway.
	VpcAttachments []VpcAttachment

	// The ID of the virtual private gateway.
	VpnGatewayId *string
	// contains filtered or unexported fields
}

Describes a virtual private gateway.

type VpnProtocol

type VpnProtocol string
const (
	VpnProtocolOpenvpn VpnProtocol = "openvpn"
)

Enum values for VpnProtocol

func (VpnProtocol) Values added in v0.29.0

func (VpnProtocol) Values() []VpnProtocol

Values returns all known values for VpnProtocol. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type VpnState

type VpnState string
const (
	VpnStatePending   VpnState = "pending"
	VpnStateAvailable VpnState = "available"
	VpnStateDeleting  VpnState = "deleting"
	VpnStateDeleted   VpnState = "deleted"
)

Enum values for VpnState

func (VpnState) Values added in v0.29.0

func (VpnState) Values() []VpnState

Values returns all known values for VpnState. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type VpnStaticRoute

type VpnStaticRoute struct {

	// The CIDR block associated with the local subnet of the customer data center.
	DestinationCidrBlock *string

	// Indicates how the routes were provided.
	Source VpnStaticRouteSource

	// The current state of the static route.
	State VpnState
	// contains filtered or unexported fields
}

Describes a static route for a VPN connection.

type VpnStaticRouteSource

type VpnStaticRouteSource string
const (
	VpnStaticRouteSourceStatic VpnStaticRouteSource = "Static"
)

Enum values for VpnStaticRouteSource

func (VpnStaticRouteSource) Values added in v0.29.0

Values returns all known values for VpnStaticRouteSource. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

type VpnTunnelLogOptions added in v1.53.0

type VpnTunnelLogOptions struct {

	// Options for sending VPN tunnel logs to CloudWatch.
	CloudWatchLogOptions *CloudWatchLogOptions
	// contains filtered or unexported fields
}

Options for logging VPN tunnel activity.

type VpnTunnelLogOptionsSpecification added in v1.53.0

type VpnTunnelLogOptionsSpecification struct {

	// Options for sending VPN tunnel logs to CloudWatch.
	CloudWatchLogOptions *CloudWatchLogOptionsSpecification
	// contains filtered or unexported fields
}

Options for logging VPN tunnel activity.

type VpnTunnelOptionsSpecification

type VpnTunnelOptionsSpecification struct {

	// The action to take after DPD timeout occurs. Specify restart to restart the IKE
	// initiation. Specify clear to end the IKE session.
	//
	// Valid Values: clear | none | restart
	//
	// Default: clear
	DPDTimeoutAction *string

	// The number of seconds after which a DPD timeout occurs.
	//
	// Constraints: A value greater than or equal to 30.
	//
	// Default: 30
	DPDTimeoutSeconds *int32

	// Turn on or off tunnel endpoint lifecycle control feature.
	EnableTunnelLifecycleControl *bool

	// The IKE versions that are permitted for the VPN tunnel.
	//
	// Valid values: ikev1 | ikev2
	IKEVersions []IKEVersionsRequestListValue

	// Options for logging VPN tunnel activity.
	LogOptions *VpnTunnelLogOptionsSpecification

	// One or more Diffie-Hellman group numbers that are permitted for the VPN tunnel
	// for phase 1 IKE negotiations.
	//
	// Valid values: 2 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24
	Phase1DHGroupNumbers []Phase1DHGroupNumbersRequestListValue

	// One or more encryption algorithms that are permitted for the VPN tunnel for
	// phase 1 IKE negotiations.
	//
	// Valid values: AES128 | AES256 | AES128-GCM-16 | AES256-GCM-16
	Phase1EncryptionAlgorithms []Phase1EncryptionAlgorithmsRequestListValue

	// One or more integrity algorithms that are permitted for the VPN tunnel for
	// phase 1 IKE negotiations.
	//
	// Valid values: SHA1 | SHA2-256 | SHA2-384 | SHA2-512
	Phase1IntegrityAlgorithms []Phase1IntegrityAlgorithmsRequestListValue

	// The lifetime for phase 1 of the IKE negotiation, in seconds.
	//
	// Constraints: A value between 900 and 28,800.
	//
	// Default: 28800
	Phase1LifetimeSeconds *int32

	// One or more Diffie-Hellman group numbers that are permitted for the VPN tunnel
	// for phase 2 IKE negotiations.
	//
	// Valid values: 2 | 5 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24
	Phase2DHGroupNumbers []Phase2DHGroupNumbersRequestListValue

	// One or more encryption algorithms that are permitted for the VPN tunnel for
	// phase 2 IKE negotiations.
	//
	// Valid values: AES128 | AES256 | AES128-GCM-16 | AES256-GCM-16
	Phase2EncryptionAlgorithms []Phase2EncryptionAlgorithmsRequestListValue

	// One or more integrity algorithms that are permitted for the VPN tunnel for
	// phase 2 IKE negotiations.
	//
	// Valid values: SHA1 | SHA2-256 | SHA2-384 | SHA2-512
	Phase2IntegrityAlgorithms []Phase2IntegrityAlgorithmsRequestListValue

	// The lifetime for phase 2 of the IKE negotiation, in seconds.
	//
	// Constraints: A value between 900 and 3,600. The value must be less than the
	// value for Phase1LifetimeSeconds .
	//
	// Default: 3600
	Phase2LifetimeSeconds *int32

	// The pre-shared key (PSK) to establish initial authentication between the
	// virtual private gateway and customer gateway.
	//
	// Constraints: Allowed characters are alphanumeric characters, periods (.), and
	// underscores (_). Must be between 8 and 64 characters in length and cannot start
	// with zero (0).
	PreSharedKey *string

	// The percentage of the rekey window (determined by RekeyMarginTimeSeconds )
	// during which the rekey time is randomly selected.
	//
	// Constraints: A value between 0 and 100.
	//
	// Default: 100
	RekeyFuzzPercentage *int32

	// The margin time, in seconds, before the phase 2 lifetime expires, during which
	// the Amazon Web Services side of the VPN connection performs an IKE rekey. The
	// exact time of the rekey is randomly selected based on the value for
	// RekeyFuzzPercentage .
	//
	// Constraints: A value between 60 and half of Phase2LifetimeSeconds .
	//
	// Default: 270
	RekeyMarginTimeSeconds *int32

	// The number of packets in an IKE replay window.
	//
	// Constraints: A value between 64 and 2048.
	//
	// Default: 1024
	ReplayWindowSize *int32

	// The action to take when the establishing the tunnel for the VPN connection. By
	// default, your customer gateway device must initiate the IKE negotiation and
	// bring up the tunnel. Specify start for Amazon Web Services to initiate the IKE
	// negotiation.
	//
	// Valid Values: add | start
	//
	// Default: add
	StartupAction *string

	// The range of inside IPv4 addresses for the tunnel. Any specified CIDR blocks
	// must be unique across all VPN connections that use the same virtual private
	// gateway.
	//
	// Constraints: A size /30 CIDR block from the 169.254.0.0/16 range. The following
	// CIDR blocks are reserved and cannot be used:
	//
	//   - 169.254.0.0/30
	//
	//   - 169.254.1.0/30
	//
	//   - 169.254.2.0/30
	//
	//   - 169.254.3.0/30
	//
	//   - 169.254.4.0/30
	//
	//   - 169.254.5.0/30
	//
	//   - 169.254.169.252/30
	TunnelInsideCidr *string

	// The range of inside IPv6 addresses for the tunnel. Any specified CIDR blocks
	// must be unique across all VPN connections that use the same transit gateway.
	//
	// Constraints: A size /126 CIDR block from the local fd00::/8 range.
	TunnelInsideIpv6Cidr *string
	// contains filtered or unexported fields
}

The tunnel options for a single VPN tunnel.

type WeekDay added in v1.13.0

type WeekDay string
const (
	WeekDaySunday    WeekDay = "sunday"
	WeekDayMonday    WeekDay = "monday"
	WeekDayTuesday   WeekDay = "tuesday"
	WeekDayWednesday WeekDay = "wednesday"
	WeekDayThursday  WeekDay = "thursday"
	WeekDayFriday    WeekDay = "friday"
	WeekDaySaturday  WeekDay = "saturday"
)

Enum values for WeekDay

func (WeekDay) Values added in v1.13.0

func (WeekDay) Values() []WeekDay

Values returns all known values for WeekDay. Note that this can be expanded in the future, and so it is only as up to date as the client.

The ordering of this slice is not guaranteed to be stable across updates.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL