# frozen_string_literal: true # WARNING ABOUT GENERATED CODE # # This file is generated. See the contributing guide for more information: # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md # # WARNING ABOUT GENERATED CODE module Aws::EC2 module Types # The minimum and maximum number of accelerators (GPUs, FPGAs, or Amazon # Web Services Inferentia chips) on an instance. # # @!attribute [rw] min # The minimum number of accelerators. If this parameter is not # specified, there is no minimum limit. # @return [Integer] # # @!attribute [rw] max # The maximum number of accelerators. If this parameter is not # specified, there is no maximum limit. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AcceleratorCount AWS API Documentation # class AcceleratorCount < Struct.new( :min, :max) SENSITIVE = [] include Aws::Structure end # 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`. # # @!attribute [rw] min # The minimum number of accelerators. To specify no minimum limit, # omit this parameter. # @return [Integer] # # @!attribute [rw] max # The maximum number of accelerators. To specify no maximum limit, # omit this parameter. To exclude accelerator-enabled instance types, # set `Max` to `0`. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AcceleratorCountRequest AWS API Documentation # class AcceleratorCountRequest < Struct.new( :min, :max) SENSITIVE = [] include Aws::Structure end # The minimum and maximum amount of total accelerator memory, in MiB. # # @!attribute [rw] min # The minimum amount of accelerator memory, in MiB. If this parameter # is not specified, there is no minimum limit. # @return [Integer] # # @!attribute [rw] max # The maximum amount of accelerator memory, in MiB. If this parameter # is not specified, there is no maximum limit. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AcceleratorTotalMemoryMiB AWS API Documentation # class AcceleratorTotalMemoryMiB < Struct.new( :min, :max) SENSITIVE = [] include Aws::Structure end # The minimum and maximum amount of total accelerator memory, in MiB. # # @!attribute [rw] min # The minimum amount of accelerator memory, in MiB. To specify no # minimum limit, omit this parameter. # @return [Integer] # # @!attribute [rw] max # The maximum amount of accelerator memory, in MiB. To specify no # maximum limit, omit this parameter. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AcceleratorTotalMemoryMiBRequest AWS API Documentation # class AcceleratorTotalMemoryMiBRequest < Struct.new( :min, :max) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] address # The Elastic IP address you are accepting for transfer. # @return [String] # # @!attribute [rw] tag_specifications # `tag`:<key> - 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. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AcceptAddressTransferRequest AWS API Documentation # class AcceptAddressTransferRequest < Struct.new( :address, :tag_specifications, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] address_transfer # An Elastic IP address transfer. # @return [Types::AddressTransfer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AcceptAddressTransferResult AWS API Documentation # class AcceptAddressTransferResult < Struct.new( :address_transfer) SENSITIVE = [] include Aws::Structure end # Contains the parameters for accepting the quote. # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] reserved_instance_ids # The IDs of the Convertible Reserved Instances to exchange for # another Convertible Reserved Instance of the same or higher value. # @return [Array] # # @!attribute [rw] target_configurations # The configuration of the target Convertible Reserved Instance to # exchange for your current Convertible Reserved Instances. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AcceptReservedInstancesExchangeQuoteRequest AWS API Documentation # class AcceptReservedInstancesExchangeQuoteRequest < Struct.new( :dry_run, :reserved_instance_ids, :target_configurations) SENSITIVE = [] include Aws::Structure end # The result of the exchange and whether it was `successful`. # # @!attribute [rw] exchange_id # The ID of the successful exchange. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AcceptReservedInstancesExchangeQuoteResult AWS API Documentation # class AcceptReservedInstancesExchangeQuoteResult < Struct.new( :exchange_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_multicast_domain_id # The ID of the transit gateway multicast domain. # @return [String] # # @!attribute [rw] transit_gateway_attachment_id # The ID of the transit gateway attachment. # @return [String] # # @!attribute [rw] subnet_ids # The IDs of the subnets to associate with the transit gateway # multicast domain. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AcceptTransitGatewayMulticastDomainAssociationsRequest AWS API Documentation # class AcceptTransitGatewayMulticastDomainAssociationsRequest < Struct.new( :transit_gateway_multicast_domain_id, :transit_gateway_attachment_id, :subnet_ids, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] associations # Information about the multicast domain associations. # @return [Types::TransitGatewayMulticastDomainAssociations] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AcceptTransitGatewayMulticastDomainAssociationsResult AWS API Documentation # class AcceptTransitGatewayMulticastDomainAssociationsResult < Struct.new( :associations) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_attachment_id # The ID of the transit gateway attachment. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AcceptTransitGatewayPeeringAttachmentRequest AWS API Documentation # class AcceptTransitGatewayPeeringAttachmentRequest < Struct.new( :transit_gateway_attachment_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_peering_attachment # The transit gateway peering attachment. # @return [Types::TransitGatewayPeeringAttachment] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AcceptTransitGatewayPeeringAttachmentResult AWS API Documentation # class AcceptTransitGatewayPeeringAttachmentResult < Struct.new( :transit_gateway_peering_attachment) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_attachment_id # The ID of the attachment. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AcceptTransitGatewayVpcAttachmentRequest AWS API Documentation # class AcceptTransitGatewayVpcAttachmentRequest < Struct.new( :transit_gateway_attachment_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_vpc_attachment # The VPC attachment. # @return [Types::TransitGatewayVpcAttachment] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AcceptTransitGatewayVpcAttachmentResult AWS API Documentation # class AcceptTransitGatewayVpcAttachmentResult < Struct.new( :transit_gateway_vpc_attachment) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] service_id # The ID of the VPC endpoint service. # @return [String] # # @!attribute [rw] vpc_endpoint_ids # The IDs of the interface VPC endpoints. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AcceptVpcEndpointConnectionsRequest AWS API Documentation # class AcceptVpcEndpointConnectionsRequest < Struct.new( :dry_run, :service_id, :vpc_endpoint_ids) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] unsuccessful # Information about the interface endpoints that were not accepted, if # applicable. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AcceptVpcEndpointConnectionsResult AWS API Documentation # class AcceptVpcEndpointConnectionsResult < Struct.new( :unsuccessful) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] vpc_peering_connection_id # The ID of the VPC peering connection. You must specify this # parameter in the request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AcceptVpcPeeringConnectionRequest AWS API Documentation # class AcceptVpcPeeringConnectionRequest < Struct.new( :dry_run, :vpc_peering_connection_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] vpc_peering_connection # Information about the VPC peering connection. # @return [Types::VpcPeeringConnection] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AcceptVpcPeeringConnectionResult AWS API Documentation # class AcceptVpcPeeringConnectionResult < Struct.new( :vpc_peering_connection) SENSITIVE = [] include Aws::Structure end # Describes a finding for a Network Access Scope. # # @!attribute [rw] network_insights_access_scope_analysis_id # The ID of the Network Access Scope analysis. # @return [String] # # @!attribute [rw] network_insights_access_scope_id # The ID of the Network Access Scope. # @return [String] # # @!attribute [rw] finding_id # The ID of the finding. # @return [String] # # @!attribute [rw] finding_components # The finding components. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AccessScopeAnalysisFinding AWS API Documentation # class AccessScopeAnalysisFinding < Struct.new( :network_insights_access_scope_analysis_id, :network_insights_access_scope_id, :finding_id, :finding_components) SENSITIVE = [] include Aws::Structure end # Describes a path. # # @!attribute [rw] source # The source. # @return [Types::PathStatement] # # @!attribute [rw] destination # The destination. # @return [Types::PathStatement] # # @!attribute [rw] through_resources # The through resources. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AccessScopePath AWS API Documentation # class AccessScopePath < Struct.new( :source, :destination, :through_resources) SENSITIVE = [] include Aws::Structure end # Describes a path. # # @!attribute [rw] source # The source. # @return [Types::PathStatementRequest] # # @!attribute [rw] destination # The destination. # @return [Types::PathStatementRequest] # # @!attribute [rw] through_resources # The through resources. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AccessScopePathRequest AWS API Documentation # class AccessScopePathRequest < Struct.new( :source, :destination, :through_resources) SENSITIVE = [] include Aws::Structure end # Describes an account attribute. # # @!attribute [rw] attribute_name # The name of the account attribute. # @return [String] # # @!attribute [rw] attribute_values # The values for the account attribute. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AccountAttribute AWS API Documentation # class AccountAttribute < Struct.new( :attribute_name, :attribute_values) SENSITIVE = [] include Aws::Structure end # Describes a value of an account attribute. # # @!attribute [rw] attribute_value # The value of the attribute. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AccountAttributeValue AWS API Documentation # class AccountAttributeValue < Struct.new( :attribute_value) SENSITIVE = [] include Aws::Structure end # Describes a running instance in a Spot Fleet. # # @!attribute [rw] instance_id # The ID of the instance. # @return [String] # # @!attribute [rw] instance_type # The instance type. # @return [String] # # @!attribute [rw] spot_instance_request_id # The ID of the Spot Instance request. # @return [String] # # @!attribute [rw] instance_health # 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`. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ActiveInstance AWS API Documentation # class ActiveInstance < Struct.new( :instance_id, :instance_type, :spot_instance_request_id, :instance_health) SENSITIVE = [] include Aws::Structure end # 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][1] # in the *Amazon VPC IPAM User Guide*. # # # # [1]: https://docs.aws.amazon.com/vpc/latest/ipam/create-ipam.html # # @!attribute [rw] region_name # The name of the operating Region. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AddIpamOperatingRegion AWS API Documentation # class AddIpamOperatingRegion < Struct.new( :region_name) SENSITIVE = [] include Aws::Structure end # An entry for a prefix list. # # @!attribute [rw] cidr # The CIDR block. # @return [String] # # @!attribute [rw] description # A description for the entry. # # Constraints: Up to 255 characters in length. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AddPrefixListEntry AWS API Documentation # class AddPrefixListEntry < Struct.new( :cidr, :description) SENSITIVE = [] include Aws::Structure end # Describes a principal. # # @!attribute [rw] principal_type # The type of principal. # @return [String] # # @!attribute [rw] principal # The Amazon Resource Name (ARN) of the principal. # @return [String] # # @!attribute [rw] service_permission_id # The ID of the service permission. # @return [String] # # @!attribute [rw] service_id # The ID of the service. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AddedPrincipal AWS API Documentation # class AddedPrincipal < Struct.new( :principal_type, :principal, :service_permission_id, :service_id) SENSITIVE = [] include Aws::Structure end # Describes an additional detail for a path analysis. For more # information, see [Reachability Analyzer additional detail codes][1]. # # # # [1]: https://docs.aws.amazon.com/vpc/latest/reachability/additional-detail-codes.html # # @!attribute [rw] additional_detail_type # The additional detail code. # @return [String] # # @!attribute [rw] component # The path component. # @return [Types::AnalysisComponent] # # @!attribute [rw] vpc_endpoint_service # The VPC endpoint service. # @return [Types::AnalysisComponent] # # @!attribute [rw] rule_options # The rule options. # @return [Array] # # @!attribute [rw] rule_group_type_pairs # The rule group type. # @return [Array] # # @!attribute [rw] rule_group_rule_options_pairs # The rule options. # @return [Array] # # @!attribute [rw] service_name # The name of the VPC endpoint service. # @return [String] # # @!attribute [rw] load_balancers # The load balancers. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AdditionalDetail AWS API Documentation # class AdditionalDetail < Struct.new( :additional_detail_type, :component, :vpc_endpoint_service, :rule_options, :rule_group_type_pairs, :rule_group_rule_options_pairs, :service_name, :load_balancers) SENSITIVE = [] include Aws::Structure end # Describes an Elastic IP address, or a carrier IP address. # # @!attribute [rw] instance_id # The ID of the instance that the address is associated with (if any). # @return [String] # # @!attribute [rw] public_ip # The Elastic IP address. # @return [String] # # @!attribute [rw] allocation_id # The ID representing the allocation of the address. # @return [String] # # @!attribute [rw] association_id # The ID representing the association of the address with an instance. # @return [String] # # @!attribute [rw] domain # The network (`vpc`). # @return [String] # # @!attribute [rw] network_interface_id # The ID of the network interface. # @return [String] # # @!attribute [rw] network_interface_owner_id # The ID of the Amazon Web Services account that owns the network # interface. # @return [String] # # @!attribute [rw] private_ip_address # The private IP address associated with the Elastic IP address. # @return [String] # # @!attribute [rw] tags # Any tags assigned to the Elastic IP address. # @return [Array] # # @!attribute [rw] public_ipv_4_pool # The ID of an address pool. # @return [String] # # @!attribute [rw] network_border_group # The name of the unique set of Availability Zones, Local Zones, or # Wavelength Zones from which Amazon Web Services advertises IP # addresses. # @return [String] # # @!attribute [rw] customer_owned_ip # The customer-owned IP address. # @return [String] # # @!attribute [rw] customer_owned_ipv_4_pool # The ID of the customer-owned address pool. # @return [String] # # @!attribute [rw] carrier_ip # 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). # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Address AWS API Documentation # class Address < Struct.new( :instance_id, :public_ip, :allocation_id, :association_id, :domain, :network_interface_id, :network_interface_owner_id, :private_ip_address, :tags, :public_ipv_4_pool, :network_border_group, :customer_owned_ip, :customer_owned_ipv_4_pool, :carrier_ip) SENSITIVE = [] include Aws::Structure end # The attributes associated with an Elastic IP address. # # @!attribute [rw] public_ip # The public IP address. # @return [String] # # @!attribute [rw] allocation_id # \[EC2-VPC\] The allocation ID. # @return [String] # # @!attribute [rw] ptr_record # The pointer (PTR) record for the IP address. # @return [String] # # @!attribute [rw] ptr_record_update # The updated PTR record for the IP address. # @return [Types::PtrUpdateStatus] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AddressAttribute AWS API Documentation # class AddressAttribute < Struct.new( :public_ip, :allocation_id, :ptr_record, :ptr_record_update) SENSITIVE = [] include Aws::Structure end # Details on the Elastic IP address transfer. For more information, see # [Transfer Elastic IP addresses][1] in the *Amazon Virtual Private # Cloud User Guide*. # # # # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-eips.html#transfer-EIPs-intro # # @!attribute [rw] public_ip # The Elastic IP address being transferred. # @return [String] # # @!attribute [rw] allocation_id # The allocation ID of an Elastic IP address. # @return [String] # # @!attribute [rw] transfer_account_id # The ID of the account that you want to transfer the Elastic IP # address to. # @return [String] # # @!attribute [rw] transfer_offer_expiration_timestamp # 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. # @return [Time] # # @!attribute [rw] transfer_offer_accepted_timestamp # The timestamp when the Elastic IP address transfer was accepted. # @return [Time] # # @!attribute [rw] address_transfer_status # The Elastic IP address transfer status. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AddressTransfer AWS API Documentation # class AddressTransfer < Struct.new( :public_ip, :allocation_id, :transfer_account_id, :transfer_offer_expiration_timestamp, :transfer_offer_accepted_timestamp, :address_transfer_status) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cidr # The address range, in CIDR notation. This must be the exact range # that you provisioned. You can't advertise only a portion of the # provisioned range. # @return [String] # # @!attribute [rw] asn # The public 2-byte or 4-byte ASN that you want to advertise. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] network_border_group # If you have [Local Zones][1] 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. # # # # # # [1]: https://docs.aws.amazon.com/local-zones/latest/ug/how-local-zones-work.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AdvertiseByoipCidrRequest AWS API Documentation # class AdvertiseByoipCidrRequest < Struct.new( :cidr, :asn, :dry_run, :network_border_group) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] byoip_cidr # Information about the address range. # @return [Types::ByoipCidr] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AdvertiseByoipCidrResult AWS API Documentation # class AdvertiseByoipCidrResult < Struct.new( :byoip_cidr) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] domain # The network (`vpc`). # @return [String] # # @!attribute [rw] address # The Elastic IP address to recover or an IPv4 address from an address # pool. # @return [String] # # @!attribute [rw] public_ipv_4_pool # The ID of an address pool that you own. Use this parameter to let # Amazon EC2 select an address from the address pool. To specify a # specific address from the address pool, use the `Address` parameter # instead. # @return [String] # # @!attribute [rw] network_border_group # A unique set of Availability Zones, Local Zones, or Wavelength Zones # from which Amazon Web Services advertises IP addresses. Use this # parameter to limit the IP address to this location. IP addresses # cannot move between network border groups. # # Use [DescribeAvailabilityZones][1] to view the network border # groups. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeAvailabilityZones.html # @return [String] # # @!attribute [rw] customer_owned_ipv_4_pool # The ID of a customer-owned address pool. Use this parameter to let # Amazon EC2 select an address from the address pool. Alternatively, # specify a specific address from the address pool. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] tag_specifications # The tags to assign to the Elastic IP address. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AllocateAddressRequest AWS API Documentation # class AllocateAddressRequest < Struct.new( :domain, :address, :public_ipv_4_pool, :network_border_group, :customer_owned_ipv_4_pool, :dry_run, :tag_specifications) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] public_ip # The Elastic IP address. # @return [String] # # @!attribute [rw] allocation_id # The ID that represents the allocation of the Elastic IP address. # @return [String] # # @!attribute [rw] public_ipv_4_pool # The ID of an address pool. # @return [String] # # @!attribute [rw] network_border_group # The set of Availability Zones, Local Zones, or Wavelength Zones from # which Amazon Web Services advertises IP addresses. # @return [String] # # @!attribute [rw] domain # The network (`vpc`). # @return [String] # # @!attribute [rw] customer_owned_ip # The customer-owned IP address. # @return [String] # # @!attribute [rw] customer_owned_ipv_4_pool # The ID of the customer-owned address pool. # @return [String] # # @!attribute [rw] carrier_ip # The carrier IP address. This option is only available for network # interfaces that reside in a subnet in a Wavelength Zone. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AllocateAddressResult AWS API Documentation # class AllocateAddressResult < Struct.new( :public_ip, :allocation_id, :public_ipv_4_pool, :network_border_group, :domain, :customer_owned_ip, :customer_owned_ipv_4_pool, :carrier_ip) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] auto_placement # Indicates whether the host accepts any untargeted instance launches # that match its instance type configuration, or if it only accepts # Host tenancy instance launches that specify its unique host ID. For # more information, see [ Understanding auto-placement and # affinity][1] in the *Amazon EC2 User Guide*. # # Default: `on` # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/how-dedicated-hosts-work.html#dedicated-hosts-understanding # @return [String] # # @!attribute [rw] availability_zone # The Availability Zone in which to allocate the Dedicated Host. # @return [String] # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. For more information, see [Ensuring # Idempotency][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] instance_type # Specifies the instance type to be supported by the Dedicated Hosts. # If you specify an instance type, the Dedicated Hosts support # instances of the specified instance type only. # # If you want the Dedicated Hosts to support multiple instance types # in a specific instance family, omit this parameter and specify # **InstanceFamily** instead. You cannot specify **InstanceType** and # **InstanceFamily** in the same request. # @return [String] # # @!attribute [rw] instance_family # Specifies the instance family to be supported by the Dedicated # Hosts. If you specify an instance family, the Dedicated Hosts # support multiple instance types within that instance family. # # If you want the Dedicated Hosts to support a specific instance type # only, omit this parameter and specify **InstanceType** instead. You # cannot specify **InstanceFamily** and **InstanceType** in the same # request. # @return [String] # # @!attribute [rw] quantity # The number of Dedicated Hosts to allocate to your account with these # parameters. If you are allocating the Dedicated Hosts on an Outpost, # and you specify **AssetIds**, you can omit this parameter. In this # case, Amazon EC2 allocates a Dedicated Host on each specified # hardware asset. If you specify both **AssetIds** and **Quantity**, # then the value that you specify for **Quantity** must be equal to # the number of asset IDs specified. # @return [Integer] # # @!attribute [rw] tag_specifications # The tags to apply to the Dedicated Host during creation. # @return [Array] # # @!attribute [rw] host_recovery # Indicates whether to enable or disable host recovery for the # Dedicated Host. Host recovery is disabled by default. For more # information, see [ Host recovery][1] in the *Amazon EC2 User Guide*. # # Default: `off` # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/dedicated-hosts-recovery.html # @return [String] # # @!attribute [rw] outpost_arn # The Amazon Resource Name (ARN) of the Amazon Web Services Outpost on # which to allocate the Dedicated Host. If you specify **OutpostArn**, # you can optionally specify **AssetIds**. # # If you are allocating the Dedicated Host in a Region, omit this # parameter. # @return [String] # # @!attribute [rw] host_maintenance # Indicates whether to enable or disable host maintenance for the # Dedicated Host. For more information, see [Host maintenance][1] in # the *Amazon EC2 User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/dedicated-hosts-maintenance.html # @return [String] # # @!attribute [rw] asset_ids # The IDs of the Outpost hardware assets on which to allocate the # Dedicated Hosts. Targeting specific hardware assets on an Outpost # can help to minimize latency between your workloads. This parameter # is supported only if you specify **OutpostArn**. If you are # allocating the Dedicated Hosts in a Region, omit this parameter. # # * If you specify this parameter, you can omit **Quantity**. In this # case, Amazon EC2 allocates a Dedicated Host on each specified # hardware asset. # # * If you specify both **AssetIds** and **Quantity**, then the value # for **Quantity** must be equal to the number of asset IDs # specified. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AllocateHostsRequest AWS API Documentation # class AllocateHostsRequest < Struct.new( :auto_placement, :availability_zone, :client_token, :instance_type, :instance_family, :quantity, :tag_specifications, :host_recovery, :outpost_arn, :host_maintenance, :asset_ids) SENSITIVE = [] include Aws::Structure end # Contains the output of AllocateHosts. # # @!attribute [rw] host_ids # The ID of the allocated Dedicated Host. This is used to launch an # instance onto a specific host. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AllocateHostsResult AWS API Documentation # class AllocateHostsResult < Struct.new( :host_ids) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # A check for whether you have the required permissions for the action # without actually making the request and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] ipam_pool_id # The ID of the IPAM pool from which you would like to allocate a # CIDR. # @return [String] # # @!attribute [rw] cidr # The CIDR you would like to allocate from the IPAM pool. Note the # following: # # * If there is no DefaultNetmaskLength allocation rule set on the # pool, you must specify either the NetmaskLength or the CIDR. # # * If the DefaultNetmaskLength allocation rule is set on the pool, # you can specify either the NetmaskLength or the CIDR and the # DefaultNetmaskLength allocation rule will be ignored. # # Possible values: Any available IPv4 or IPv6 CIDR. # @return [String] # # @!attribute [rw] netmask_length # The netmask length of the CIDR you would like to allocate from the # IPAM pool. Note the following: # # * If there is no DefaultNetmaskLength allocation rule set on the # pool, you must specify either the NetmaskLength or the CIDR. # # * If the DefaultNetmaskLength allocation rule is set on the pool, # you can specify either the NetmaskLength or the CIDR and the # DefaultNetmaskLength allocation rule will be ignored. # # Possible netmask lengths for IPv4 addresses are 0 - 32. Possible # netmask lengths for IPv6 addresses are 0 - 128. # @return [Integer] # # @!attribute [rw] client_token # A unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. For more information, see [Ensuring # Idempotency][1]. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] description # A description for the allocation. # @return [String] # # @!attribute [rw] preview_next_cidr # A preview of the next available CIDR in a pool. # @return [Boolean] # # @!attribute [rw] allowed_cidrs # Include a particular CIDR range that can be returned by the pool. # Allowed CIDRs are only allowed if using netmask length for # allocation. # @return [Array] # # @!attribute [rw] disallowed_cidrs # Exclude a particular CIDR range from being returned by the pool. # Disallowed CIDRs are only allowed if using netmask length for # allocation. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AllocateIpamPoolCidrRequest AWS API Documentation # class AllocateIpamPoolCidrRequest < Struct.new( :dry_run, :ipam_pool_id, :cidr, :netmask_length, :client_token, :description, :preview_next_cidr, :allowed_cidrs, :disallowed_cidrs) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] ipam_pool_allocation # Information about the allocation created. # @return [Types::IpamPoolAllocation] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AllocateIpamPoolCidrResult AWS API Documentation # class AllocateIpamPoolCidrResult < Struct.new( :ipam_pool_allocation) SENSITIVE = [] include Aws::Structure end # Describes a principal. # # @!attribute [rw] principal_type # The type of principal. # @return [String] # # @!attribute [rw] principal # The Amazon Resource Name (ARN) of the principal. # @return [String] # # @!attribute [rw] service_permission_id # The ID of the service permission. # @return [String] # # @!attribute [rw] tags # The tags. # @return [Array] # # @!attribute [rw] service_id # The ID of the service. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AllowedPrincipal AWS API Documentation # class AllowedPrincipal < Struct.new( :principal_type, :principal, :service_permission_id, :tags, :service_id) SENSITIVE = [] include Aws::Structure end # Describes an potential intermediate component of a feasible path. # # @!attribute [rw] component_id # The ID of the component. # @return [String] # # @!attribute [rw] component_arn # The Amazon Resource Name (ARN) of the component. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AlternatePathHint AWS API Documentation # class AlternatePathHint < Struct.new( :component_id, :component_arn) SENSITIVE = [] include Aws::Structure end # Describes a network access control (ACL) rule. # # @!attribute [rw] cidr # The IPv4 address range, in CIDR notation. # @return [String] # # @!attribute [rw] egress # Indicates whether the rule is an outbound rule. # @return [Boolean] # # @!attribute [rw] port_range # The range of ports. # @return [Types::PortRange] # # @!attribute [rw] protocol # The protocol. # @return [String] # # @!attribute [rw] rule_action # Indicates whether to allow or deny traffic that matches the rule. # @return [String] # # @!attribute [rw] rule_number # The rule number. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AnalysisAclRule AWS API Documentation # class AnalysisAclRule < Struct.new( :cidr, :egress, :port_range, :protocol, :rule_action, :rule_number) SENSITIVE = [] include Aws::Structure end # Describes a path component. # # @!attribute [rw] id # The ID of the component. # @return [String] # # @!attribute [rw] arn # The Amazon Resource Name (ARN) of the component. # @return [String] # # @!attribute [rw] name # The name of the analysis component. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AnalysisComponent AWS API Documentation # class AnalysisComponent < Struct.new( :id, :arn, :name) SENSITIVE = [] include Aws::Structure end # Describes a load balancer listener. # # @!attribute [rw] load_balancer_port # The port on which the load balancer is listening. # @return [Integer] # # @!attribute [rw] instance_port # \[Classic Load Balancers\] The back-end port for the listener. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AnalysisLoadBalancerListener AWS API Documentation # class AnalysisLoadBalancerListener < Struct.new( :load_balancer_port, :instance_port) SENSITIVE = [] include Aws::Structure end # Describes a load balancer target. # # @!attribute [rw] address # The IP address. # @return [String] # # @!attribute [rw] availability_zone # The Availability Zone. # @return [String] # # @!attribute [rw] instance # Information about the instance. # @return [Types::AnalysisComponent] # # @!attribute [rw] port # The port on which the target is listening. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AnalysisLoadBalancerTarget AWS API Documentation # class AnalysisLoadBalancerTarget < Struct.new( :address, :availability_zone, :instance, :port) SENSITIVE = [] include Aws::Structure end # 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. # # @!attribute [rw] destination_addresses # The destination addresses. # @return [Array] # # @!attribute [rw] destination_port_ranges # The destination port ranges. # @return [Array] # # @!attribute [rw] protocol # The protocol. # @return [String] # # @!attribute [rw] source_addresses # The source addresses. # @return [Array] # # @!attribute [rw] source_port_ranges # The source port ranges. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AnalysisPacketHeader AWS API Documentation # class AnalysisPacketHeader < Struct.new( :destination_addresses, :destination_port_ranges, :protocol, :source_addresses, :source_port_ranges) SENSITIVE = [] include Aws::Structure end # Describes a route table route. # # @!attribute [rw] destination_cidr # The destination IPv4 address, in CIDR notation. # @return [String] # # @!attribute [rw] destination_prefix_list_id # The prefix of the Amazon Web Service. # @return [String] # # @!attribute [rw] egress_only_internet_gateway_id # The ID of an egress-only internet gateway. # @return [String] # # @!attribute [rw] gateway_id # The ID of the gateway, such as an internet gateway or virtual # private gateway. # @return [String] # # @!attribute [rw] instance_id # The ID of the instance, such as a NAT instance. # @return [String] # # @!attribute [rw] nat_gateway_id # The ID of a NAT gateway. # @return [String] # # @!attribute [rw] network_interface_id # The ID of a network interface. # @return [String] # # @!attribute [rw] origin # 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. # @return [String] # # @!attribute [rw] transit_gateway_id # The ID of a transit gateway. # @return [String] # # @!attribute [rw] vpc_peering_connection_id # The ID of a VPC peering connection. # @return [String] # # @!attribute [rw] state # The state. The following are the possible values: # # * active # # * blackhole # @return [String] # # @!attribute [rw] carrier_gateway_id # The ID of a carrier gateway. # @return [String] # # @!attribute [rw] core_network_arn # The Amazon Resource Name (ARN) of a core network. # @return [String] # # @!attribute [rw] local_gateway_id # The ID of a local gateway. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AnalysisRouteTableRoute AWS API Documentation # class AnalysisRouteTableRoute < Struct.new( :destination_cidr, :destination_prefix_list_id, :egress_only_internet_gateway_id, :gateway_id, :instance_id, :nat_gateway_id, :network_interface_id, :origin, :transit_gateway_id, :vpc_peering_connection_id, :state, :carrier_gateway_id, :core_network_arn, :local_gateway_id) SENSITIVE = [] include Aws::Structure end # Describes a security group rule. # # @!attribute [rw] cidr # The IPv4 address range, in CIDR notation. # @return [String] # # @!attribute [rw] direction # The direction. The following are the possible values: # # * egress # # * ingress # @return [String] # # @!attribute [rw] security_group_id # The security group ID. # @return [String] # # @!attribute [rw] port_range # The port range. # @return [Types::PortRange] # # @!attribute [rw] prefix_list_id # The prefix list ID. # @return [String] # # @!attribute [rw] protocol # The protocol name. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AnalysisSecurityGroupRule AWS API Documentation # class AnalysisSecurityGroupRule < Struct.new( :cidr, :direction, :security_group_id, :port_range, :prefix_list_id, :protocol) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] client_vpn_endpoint_id # The ID of the Client VPN endpoint. # @return [String] # # @!attribute [rw] vpc_id # The ID of the VPC in which the associated target network is located. # @return [String] # # @!attribute [rw] security_group_ids # The IDs of the security groups to apply to the associated target # network. Up to 5 security groups can be applied to an associated # target network. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ApplySecurityGroupsToClientVpnTargetNetworkRequest AWS API Documentation # class ApplySecurityGroupsToClientVpnTargetNetworkRequest < Struct.new( :client_vpn_endpoint_id, :vpc_id, :security_group_ids, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] security_group_ids # The IDs of the applied security groups. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ApplySecurityGroupsToClientVpnTargetNetworkResult AWS API Documentation # class ApplySecurityGroupsToClientVpnTargetNetworkResult < Struct.new( :security_group_ids) SENSITIVE = [] include Aws::Structure end # An Autonomous System Number (ASN) and BYOIP CIDR association. # # @!attribute [rw] asn # The association's ASN. # @return [String] # # @!attribute [rw] cidr # The association's CIDR. # @return [String] # # @!attribute [rw] status_message # The association's status message. # @return [String] # # @!attribute [rw] state # The association's state. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AsnAssociation AWS API Documentation # class AsnAssociation < Struct.new( :asn, :cidr, :status_message, :state) SENSITIVE = [] include Aws::Structure end # 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 IPAM][1] in the *Amazon VPC IPAM # guide*. # # # # [1]: https://docs.aws.amazon.com/vpc/latest/ipam/tutorials-byoasn.html # # @!attribute [rw] message # The authorization context's message. # @return [String] # # @!attribute [rw] signature # The authorization context's signature. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AsnAuthorizationContext AWS API Documentation # class AsnAuthorizationContext < Struct.new( :message, :signature) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] ipv_6_address_count # The number of additional IPv6 addresses to assign to the network # interface. The specified number of IPv6 addresses are assigned in # addition to the existing IPv6 addresses that are already assigned to # the network interface. Amazon EC2 automatically selects the IPv6 # addresses from the subnet range. You can't use this option if # specifying specific IPv6 addresses. # @return [Integer] # # @!attribute [rw] ipv_6_addresses # The IPv6 addresses to be assigned to the network interface. You # can't use this option if you're specifying a number of IPv6 # addresses. # @return [Array] # # @!attribute [rw] ipv_6_prefix_count # The number of IPv6 prefixes that Amazon Web Services automatically # assigns to the network interface. You cannot use this option if you # use the `Ipv6Prefixes` option. # @return [Integer] # # @!attribute [rw] ipv_6_prefixes # One or more IPv6 prefixes assigned to the network interface. You # cannot use this option if you use the `Ipv6PrefixCount` option. # @return [Array] # # @!attribute [rw] network_interface_id # The ID of the network interface. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssignIpv6AddressesRequest AWS API Documentation # class AssignIpv6AddressesRequest < Struct.new( :ipv_6_address_count, :ipv_6_addresses, :ipv_6_prefix_count, :ipv_6_prefixes, :network_interface_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] assigned_ipv_6_addresses # The new IPv6 addresses assigned to the network interface. Existing # IPv6 addresses that were assigned to the network interface before # the request are not included. # @return [Array] # # @!attribute [rw] assigned_ipv_6_prefixes # The IPv6 prefixes that are assigned to the network interface. # @return [Array] # # @!attribute [rw] network_interface_id # The ID of the network interface. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssignIpv6AddressesResult AWS API Documentation # class AssignIpv6AddressesResult < Struct.new( :assigned_ipv_6_addresses, :assigned_ipv_6_prefixes, :network_interface_id) SENSITIVE = [] include Aws::Structure end # Contains the parameters for AssignPrivateIpAddresses. # # @!attribute [rw] allow_reassignment # Indicates whether to allow an IP address that is already assigned to # another network interface or instance to be reassigned to the # specified network interface. # @return [Boolean] # # @!attribute [rw] network_interface_id # The ID of the network interface. # @return [String] # # @!attribute [rw] private_ip_addresses # The IP addresses to be assigned as a secondary private IP address to # the network interface. You can't specify this parameter when also # specifying a number of secondary IP addresses. # # If you don't specify an IP address, Amazon EC2 automatically # selects an IP address within the subnet range. # @return [Array] # # @!attribute [rw] secondary_private_ip_address_count # The number of secondary IP addresses to assign to the network # interface. You can't specify this parameter when also specifying # private IP addresses. # @return [Integer] # # @!attribute [rw] ipv_4_prefixes # One or more IPv4 prefixes assigned to the network interface. You # cannot use this option if you use the `Ipv4PrefixCount` option. # @return [Array] # # @!attribute [rw] ipv_4_prefix_count # The number of IPv4 prefixes that Amazon Web Services automatically # assigns to the network interface. You cannot use this option if you # use the `Ipv4 Prefixes` option. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssignPrivateIpAddressesRequest AWS API Documentation # class AssignPrivateIpAddressesRequest < Struct.new( :allow_reassignment, :network_interface_id, :private_ip_addresses, :secondary_private_ip_address_count, :ipv_4_prefixes, :ipv_4_prefix_count) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] network_interface_id # The ID of the network interface. # @return [String] # # @!attribute [rw] assigned_private_ip_addresses # The private IP addresses assigned to the network interface. # @return [Array] # # @!attribute [rw] assigned_ipv_4_prefixes # The IPv4 prefixes that are assigned to the network interface. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssignPrivateIpAddressesResult AWS API Documentation # class AssignPrivateIpAddressesResult < Struct.new( :network_interface_id, :assigned_private_ip_addresses, :assigned_ipv_4_prefixes) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] nat_gateway_id # The ID of the NAT gateway. # @return [String] # # @!attribute [rw] private_ip_addresses # The private IPv4 addresses you want to assign to the private NAT # gateway. # @return [Array] # # @!attribute [rw] private_ip_address_count # The number of private IP addresses to assign to the NAT gateway. You # can't specify this parameter when also specifying private IP # addresses. # @return [Integer] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssignPrivateNatGatewayAddressRequest AWS API Documentation # class AssignPrivateNatGatewayAddressRequest < Struct.new( :nat_gateway_id, :private_ip_addresses, :private_ip_address_count, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] nat_gateway_id # The ID of the NAT gateway. # @return [String] # # @!attribute [rw] nat_gateway_addresses # NAT gateway IP addresses. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssignPrivateNatGatewayAddressResult AWS API Documentation # class AssignPrivateNatGatewayAddressResult < Struct.new( :nat_gateway_id, :nat_gateway_addresses) SENSITIVE = [] include Aws::Structure end # Describes the private IP addresses assigned to a network interface. # # @!attribute [rw] private_ip_address # The private IP address assigned to the network interface. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssignedPrivateIpAddress AWS API Documentation # class AssignedPrivateIpAddress < Struct.new( :private_ip_address) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] allocation_id # The allocation ID. This is required. # @return [String] # # @!attribute [rw] instance_id # The ID of the instance. The instance must have exactly one attached # network interface. You can specify either the instance ID or the # network interface ID, but not both. # @return [String] # # @!attribute [rw] public_ip # Deprecated. # @return [String] # # @!attribute [rw] allow_reassociation # Reassociation is automatic, but you can specify false to ensure the # operation fails if the Elastic IP address is already associated with # another resource. # @return [Boolean] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] network_interface_id # The ID of the network interface. If the instance has more than one # network interface, you must specify a network interface ID. # # You can specify either the instance ID or the network interface ID, # but not both. # @return [String] # # @!attribute [rw] private_ip_address # The primary or secondary private IP address to associate with the # Elastic IP address. If no private IP address is specified, the # Elastic IP address is associated with the primary private IP # address. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociateAddressRequest AWS API Documentation # class AssociateAddressRequest < Struct.new( :allocation_id, :instance_id, :public_ip, :allow_reassociation, :dry_run, :network_interface_id, :private_ip_address) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] association_id # The ID that represents the association of the Elastic IP address # with an instance. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociateAddressResult AWS API Documentation # class AssociateAddressResult < Struct.new( :association_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] client_vpn_endpoint_id # The ID of the Client VPN endpoint. # @return [String] # # @!attribute [rw] subnet_id # The ID of the subnet to associate with the Client VPN endpoint. # @return [String] # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. For more information, see [How to ensure # idempotency][1]. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociateClientVpnTargetNetworkRequest AWS API Documentation # class AssociateClientVpnTargetNetworkRequest < Struct.new( :client_vpn_endpoint_id, :subnet_id, :client_token, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] association_id # The unique ID of the target network association. # @return [String] # # @!attribute [rw] status # The current state of the target network association. # @return [Types::AssociationStatus] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociateClientVpnTargetNetworkResult AWS API Documentation # class AssociateClientVpnTargetNetworkResult < Struct.new( :association_id, :status) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dhcp_options_id # The ID of the DHCP options set, or `default` to associate no DHCP # options with the VPC. # @return [String] # # @!attribute [rw] vpc_id # The ID of the VPC. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociateDhcpOptionsRequest AWS API Documentation # class AssociateDhcpOptionsRequest < Struct.new( :dhcp_options_id, :vpc_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] certificate_arn # The ARN of the ACM certificate with which to associate the IAM role. # @return [String] # # @!attribute [rw] role_arn # The ARN of the IAM role to associate with the ACM certificate. You # can associate up to 16 IAM roles with an ACM certificate. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociateEnclaveCertificateIamRoleRequest AWS API Documentation # class AssociateEnclaveCertificateIamRoleRequest < Struct.new( :certificate_arn, :role_arn, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] certificate_s3_bucket_name # The name of the Amazon S3 bucket to which the certificate was # uploaded. # @return [String] # # @!attribute [rw] certificate_s3_object_key # The Amazon S3 object key where the certificate, certificate chain, # and encrypted private key bundle are stored. The object key is # formatted as follows: `role_arn`/`certificate_arn`. # @return [String] # # @!attribute [rw] encryption_kms_key_id # The ID of the KMS key used to encrypt the private key of the # certificate. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociateEnclaveCertificateIamRoleResult AWS API Documentation # class AssociateEnclaveCertificateIamRoleResult < Struct.new( :certificate_s3_bucket_name, :certificate_s3_object_key, :encryption_kms_key_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] iam_instance_profile # The IAM instance profile. # @return [Types::IamInstanceProfileSpecification] # # @!attribute [rw] instance_id # The ID of the instance. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociateIamInstanceProfileRequest AWS API Documentation # class AssociateIamInstanceProfileRequest < Struct.new( :iam_instance_profile, :instance_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] iam_instance_profile_association # Information about the IAM instance profile association. # @return [Types::IamInstanceProfileAssociation] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociateIamInstanceProfileResult AWS API Documentation # class AssociateIamInstanceProfileResult < Struct.new( :iam_instance_profile_association) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] instance_event_window_id # The ID of the event window. # @return [String] # # @!attribute [rw] association_target # One or more targets associated with the specified event window. # @return [Types::InstanceEventWindowAssociationRequest] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociateInstanceEventWindowRequest AWS API Documentation # class AssociateInstanceEventWindowRequest < Struct.new( :dry_run, :instance_event_window_id, :association_target) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] instance_event_window # Information about the event window. # @return [Types::InstanceEventWindow] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociateInstanceEventWindowResult AWS API Documentation # class AssociateInstanceEventWindowResult < Struct.new( :instance_event_window) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] asn # A public 2-byte or 4-byte ASN. # @return [String] # # @!attribute [rw] cidr # The BYOIP CIDR you want to associate with an ASN. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociateIpamByoasnRequest AWS API Documentation # class AssociateIpamByoasnRequest < Struct.new( :dry_run, :asn, :cidr) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] asn_association # The ASN and BYOIP CIDR association. # @return [Types::AsnAssociation] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociateIpamByoasnResult AWS API Documentation # class AssociateIpamByoasnResult < Struct.new( :asn_association) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # A check for whether you have the required permissions for the action # without actually making the request and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] ipam_id # An IPAM ID. # @return [String] # # @!attribute [rw] ipam_resource_discovery_id # A resource discovery ID. # @return [String] # # @!attribute [rw] tag_specifications # Tag specifications. # @return [Array] # # @!attribute [rw] client_token # A client token. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociateIpamResourceDiscoveryRequest AWS API Documentation # class AssociateIpamResourceDiscoveryRequest < Struct.new( :dry_run, :ipam_id, :ipam_resource_discovery_id, :tag_specifications, :client_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] ipam_resource_discovery_association # A resource discovery association. An associated resource discovery # is a resource discovery that has been associated with an IPAM. # @return [Types::IpamResourceDiscoveryAssociation] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociateIpamResourceDiscoveryResult AWS API Documentation # class AssociateIpamResourceDiscoveryResult < Struct.new( :ipam_resource_discovery_association) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] nat_gateway_id # The ID of the NAT gateway. # @return [String] # # @!attribute [rw] allocation_ids # The allocation IDs of EIPs that you want to associate with your NAT # gateway. # @return [Array] # # @!attribute [rw] private_ip_addresses # The private IPv4 addresses that you want to assign to the NAT # gateway. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociateNatGatewayAddressRequest AWS API Documentation # class AssociateNatGatewayAddressRequest < Struct.new( :nat_gateway_id, :allocation_ids, :private_ip_addresses, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] nat_gateway_id # The ID of the NAT gateway. # @return [String] # # @!attribute [rw] nat_gateway_addresses # The IP addresses. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociateNatGatewayAddressResult AWS API Documentation # class AssociateNatGatewayAddressResult < Struct.new( :nat_gateway_id, :nat_gateway_addresses) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] route_table_id # The ID of the route table. # @return [String] # # @!attribute [rw] subnet_id # The ID of the subnet. # @return [String] # # @!attribute [rw] gateway_id # The ID of the internet gateway or virtual private gateway. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociateRouteTableRequest AWS API Documentation # class AssociateRouteTableRequest < Struct.new( :dry_run, :route_table_id, :subnet_id, :gateway_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] association_id # The route table association ID. This ID is required for # disassociating the route table. # @return [String] # # @!attribute [rw] association_state # The state of the association. # @return [Types::RouteTableAssociationState] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociateRouteTableResult AWS API Documentation # class AssociateRouteTableResult < Struct.new( :association_id, :association_state) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] ipv_6_cidr_block # The IPv6 CIDR block for your subnet. # @return [String] # # @!attribute [rw] subnet_id # The ID of your subnet. # @return [String] # # @!attribute [rw] ipv_6_ipam_pool_id # An IPv6 IPAM pool ID. # @return [String] # # @!attribute [rw] ipv_6_netmask_length # An IPv6 netmask length. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociateSubnetCidrBlockRequest AWS API Documentation # class AssociateSubnetCidrBlockRequest < Struct.new( :ipv_6_cidr_block, :subnet_id, :ipv_6_ipam_pool_id, :ipv_6_netmask_length) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] ipv_6_cidr_block_association # Information about the IPv6 association. # @return [Types::SubnetIpv6CidrBlockAssociation] # # @!attribute [rw] subnet_id # The ID of the subnet. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociateSubnetCidrBlockResult AWS API Documentation # class AssociateSubnetCidrBlockResult < Struct.new( :ipv_6_cidr_block_association, :subnet_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_multicast_domain_id # The ID of the transit gateway multicast domain. # @return [String] # # @!attribute [rw] transit_gateway_attachment_id # The ID of the transit gateway attachment to associate with the # transit gateway multicast domain. # @return [String] # # @!attribute [rw] subnet_ids # The IDs of the subnets to associate with the transit gateway # multicast domain. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociateTransitGatewayMulticastDomainRequest AWS API Documentation # class AssociateTransitGatewayMulticastDomainRequest < Struct.new( :transit_gateway_multicast_domain_id, :transit_gateway_attachment_id, :subnet_ids, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] associations # Information about the transit gateway multicast domain associations. # @return [Types::TransitGatewayMulticastDomainAssociations] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociateTransitGatewayMulticastDomainResult AWS API Documentation # class AssociateTransitGatewayMulticastDomainResult < Struct.new( :associations) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_policy_table_id # The ID of the transit gateway policy table to associate with the # transit gateway attachment. # @return [String] # # @!attribute [rw] transit_gateway_attachment_id # The ID of the transit gateway attachment to associate with the # policy table. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociateTransitGatewayPolicyTableRequest AWS API Documentation # class AssociateTransitGatewayPolicyTableRequest < Struct.new( :transit_gateway_policy_table_id, :transit_gateway_attachment_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] association # Describes the association of a transit gateway and a transit gateway # policy table. # @return [Types::TransitGatewayPolicyTableAssociation] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociateTransitGatewayPolicyTableResult AWS API Documentation # class AssociateTransitGatewayPolicyTableResult < Struct.new( :association) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_route_table_id # The ID of the transit gateway route table. # @return [String] # # @!attribute [rw] transit_gateway_attachment_id # The ID of the attachment. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociateTransitGatewayRouteTableRequest AWS API Documentation # class AssociateTransitGatewayRouteTableRequest < Struct.new( :transit_gateway_route_table_id, :transit_gateway_attachment_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] association # The ID of the association. # @return [Types::TransitGatewayAssociation] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociateTransitGatewayRouteTableResult AWS API Documentation # class AssociateTransitGatewayRouteTableResult < Struct.new( :association) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] branch_interface_id # The ID of the branch network interface. # @return [String] # # @!attribute [rw] trunk_interface_id # The ID of the trunk network interface. # @return [String] # # @!attribute [rw] vlan_id # The ID of the VLAN. This applies to the VLAN protocol. # @return [Integer] # # @!attribute [rw] gre_key # The application key. This applies to the GRE protocol. # @return [Integer] # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. For more information, see [How to Ensure # Idempotency][1]. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociateTrunkInterfaceRequest AWS API Documentation # class AssociateTrunkInterfaceRequest < Struct.new( :branch_interface_id, :trunk_interface_id, :vlan_id, :gre_key, :client_token, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] interface_association # Information about the association between the trunk network # interface and branch network interface. # @return [Types::TrunkInterfaceAssociation] # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. For more information, see [How to Ensure # Idempotency][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Run_Instance_Idempotency.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociateTrunkInterfaceResult AWS API Documentation # class AssociateTrunkInterfaceResult < Struct.new( :interface_association, :client_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] amazon_provided_ipv_6_cidr_block # Requests an Amazon-provided IPv6 CIDR block with a /56 prefix length # for the VPC. You cannot specify the range of IPv6 addresses or the # size of the CIDR block. # @return [Boolean] # # @!attribute [rw] cidr_block # An IPv4 CIDR block to associate with the VPC. # @return [String] # # @!attribute [rw] vpc_id # The ID of the VPC. # @return [String] # # @!attribute [rw] ipv_6_cidr_block_network_border_group # The name of the location from which we advertise the IPV6 CIDR # block. Use this parameter to limit the CIDR block to this location. # # You must set `AmazonProvidedIpv6CidrBlock` to `true` to use this # parameter. # # You can have one IPv6 CIDR block association per network border # group. # @return [String] # # @!attribute [rw] ipv_6_pool # The ID of an IPv6 address pool from which to allocate the IPv6 CIDR # block. # @return [String] # # @!attribute [rw] ipv_6_cidr_block # An IPv6 CIDR block from the IPv6 address pool. You must also specify # `Ipv6Pool` in the request. # # To let Amazon choose the IPv6 CIDR block for you, omit this # parameter. # @return [String] # # @!attribute [rw] ipv_4_ipam_pool_id # Associate a CIDR allocated from an IPv4 IPAM pool to a VPC. For more # information about Amazon VPC IP Address Manager (IPAM), see [What is # IPAM?][1] in the *Amazon VPC IPAM User Guide*. # # # # [1]: https://docs.aws.amazon.com/vpc/latest/ipam/what-is-it-ipam.html # @return [String] # # @!attribute [rw] ipv_4_netmask_length # The netmask length of the IPv4 CIDR you would like to associate from # an Amazon VPC IP Address Manager (IPAM) pool. For more information # about IPAM, see [What is IPAM?][1] in the *Amazon VPC IPAM User # Guide*. # # # # [1]: https://docs.aws.amazon.com/vpc/latest/ipam/what-is-it-ipam.html # @return [Integer] # # @!attribute [rw] ipv_6_ipam_pool_id # Associates a CIDR allocated from an IPv6 IPAM pool to a VPC. For # more information about Amazon VPC IP Address Manager (IPAM), see # [What is IPAM?][1] in the *Amazon VPC IPAM User Guide*. # # # # [1]: https://docs.aws.amazon.com/vpc/latest/ipam/what-is-it-ipam.html # @return [String] # # @!attribute [rw] ipv_6_netmask_length # The netmask length of the IPv6 CIDR you would like to associate from # an Amazon VPC IP Address Manager (IPAM) pool. For more information # about IPAM, see [What is IPAM?][1] in the *Amazon VPC IPAM User # Guide*. # # # # [1]: https://docs.aws.amazon.com/vpc/latest/ipam/what-is-it-ipam.html # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociateVpcCidrBlockRequest AWS API Documentation # class AssociateVpcCidrBlockRequest < Struct.new( :amazon_provided_ipv_6_cidr_block, :cidr_block, :vpc_id, :ipv_6_cidr_block_network_border_group, :ipv_6_pool, :ipv_6_cidr_block, :ipv_4_ipam_pool_id, :ipv_4_netmask_length, :ipv_6_ipam_pool_id, :ipv_6_netmask_length) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] ipv_6_cidr_block_association # Information about the IPv6 CIDR block association. # @return [Types::VpcIpv6CidrBlockAssociation] # # @!attribute [rw] cidr_block_association # Information about the IPv4 CIDR block association. # @return [Types::VpcCidrBlockAssociation] # # @!attribute [rw] vpc_id # The ID of the VPC. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociateVpcCidrBlockResult AWS API Documentation # class AssociateVpcCidrBlockResult < Struct.new( :ipv_6_cidr_block_association, :cidr_block_association, :vpc_id) SENSITIVE = [] include Aws::Structure end # Information about the associated IAM roles. # # @!attribute [rw] associated_role_arn # The ARN of the associated IAM role. # @return [String] # # @!attribute [rw] certificate_s3_bucket_name # The name of the Amazon S3 bucket in which the Amazon S3 object is # stored. # @return [String] # # @!attribute [rw] certificate_s3_object_key # The key of the Amazon S3 object ey where the certificate, # certificate chain, and encrypted private key bundle is stored. The # object key is formated as follows: `role_arn`/`certificate_arn`. # @return [String] # # @!attribute [rw] encryption_kms_key_id # The ID of the KMS customer master key (CMK) used to encrypt the # private key. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociatedRole AWS API Documentation # class AssociatedRole < Struct.new( :associated_role_arn, :certificate_s3_bucket_name, :certificate_s3_object_key, :encryption_kms_key_id) SENSITIVE = [] include Aws::Structure end # Describes a target network that is associated with a Client VPN # endpoint. A target network is a subnet in a VPC. # # @!attribute [rw] network_id # The ID of the subnet. # @return [String] # # @!attribute [rw] network_type # The target network type. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociatedTargetNetwork AWS API Documentation # class AssociatedTargetNetwork < Struct.new( :network_id, :network_type) SENSITIVE = [] include Aws::Structure end # Describes the state of a target network association. # # @!attribute [rw] code # The state of the target network association. # @return [String] # # @!attribute [rw] message # A message about the status of the target network association, if # applicable. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AssociationStatus AWS API Documentation # class AssociationStatus < Struct.new( :code, :message) SENSITIVE = [] include Aws::Structure end # Describes integration options for Amazon Athena. # # @!attribute [rw] integration_result_s3_destination_arn # The location in Amazon S3 to store the generated CloudFormation # template. # @return [String] # # @!attribute [rw] partition_load_frequency # The schedule for adding new partitions to the table. # @return [String] # # @!attribute [rw] partition_start_date # The start date for the partition. # @return [Time] # # @!attribute [rw] partition_end_date # The end date for the partition. # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AthenaIntegration AWS API Documentation # class AthenaIntegration < Struct.new( :integration_result_s3_destination_arn, :partition_load_frequency, :partition_start_date, :partition_end_date) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] groups # The IDs of the security groups. You cannot specify security groups # from a different VPC. # @return [Array] # # @!attribute [rw] instance_id # The ID of the EC2-Classic instance. # @return [String] # # @!attribute [rw] vpc_id # The ID of the ClassicLink-enabled VPC. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AttachClassicLinkVpcRequest AWS API Documentation # class AttachClassicLinkVpcRequest < Struct.new( :dry_run, :groups, :instance_id, :vpc_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] return # Returns `true` if the request succeeds; otherwise, it returns an # error. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AttachClassicLinkVpcResult AWS API Documentation # class AttachClassicLinkVpcResult < Struct.new( :return) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] internet_gateway_id # The ID of the internet gateway. # @return [String] # # @!attribute [rw] vpc_id # The ID of the VPC. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AttachInternetGatewayRequest AWS API Documentation # class AttachInternetGatewayRequest < Struct.new( :dry_run, :internet_gateway_id, :vpc_id) SENSITIVE = [] include Aws::Structure end # Contains the parameters for AttachNetworkInterface. # # @!attribute [rw] device_index # The index of the device for the network interface attachment. # @return [Integer] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] instance_id # The ID of the instance. # @return [String] # # @!attribute [rw] network_interface_id # The ID of the network interface. # @return [String] # # @!attribute [rw] network_card_index # 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. # @return [Integer] # # @!attribute [rw] ena_srd_specification # Configures ENA Express for the network interface that this action # attaches to the instance. # @return [Types::EnaSrdSpecification] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AttachNetworkInterfaceRequest AWS API Documentation # class AttachNetworkInterfaceRequest < Struct.new( :device_index, :dry_run, :instance_id, :network_interface_id, :network_card_index, :ena_srd_specification) SENSITIVE = [] include Aws::Structure end # Contains the output of AttachNetworkInterface. # # @!attribute [rw] attachment_id # The ID of the network interface attachment. # @return [String] # # @!attribute [rw] network_card_index # The index of the network card. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AttachNetworkInterfaceResult AWS API Documentation # class AttachNetworkInterfaceResult < Struct.new( :attachment_id, :network_card_index) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] verified_access_instance_id # The ID of the Verified Access instance. # @return [String] # # @!attribute [rw] verified_access_trust_provider_id # The ID of the Verified Access trust provider. # @return [String] # # @!attribute [rw] client_token # A unique, case-sensitive token that you provide to ensure # idempotency of your modification request. For more information, see # [Ensuring Idempotency][1]. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AttachVerifiedAccessTrustProviderRequest AWS API Documentation # class AttachVerifiedAccessTrustProviderRequest < Struct.new( :verified_access_instance_id, :verified_access_trust_provider_id, :client_token, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] verified_access_trust_provider # Details about the Verified Access trust provider. # @return [Types::VerifiedAccessTrustProvider] # # @!attribute [rw] verified_access_instance # Details about the Verified Access instance. # @return [Types::VerifiedAccessInstance] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AttachVerifiedAccessTrustProviderResult AWS API Documentation # class AttachVerifiedAccessTrustProviderResult < Struct.new( :verified_access_trust_provider, :verified_access_instance) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] device # The device name (for example, `/dev/sdh` or `xvdh`). # @return [String] # # @!attribute [rw] instance_id # The ID of the instance. # @return [String] # # @!attribute [rw] volume_id # The ID of the EBS volume. The volume and instance must be within the # same Availability Zone. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AttachVolumeRequest AWS API Documentation # class AttachVolumeRequest < Struct.new( :device, :instance_id, :volume_id, :dry_run) SENSITIVE = [] include Aws::Structure end # Contains the parameters for AttachVpnGateway. # # @!attribute [rw] vpc_id # The ID of the VPC. # @return [String] # # @!attribute [rw] vpn_gateway_id # The ID of the virtual private gateway. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AttachVpnGatewayRequest AWS API Documentation # class AttachVpnGatewayRequest < Struct.new( :vpc_id, :vpn_gateway_id, :dry_run) SENSITIVE = [] include Aws::Structure end # Contains the output of AttachVpnGateway. # # @!attribute [rw] vpc_attachment # Information about the attachment. # @return [Types::VpcAttachment] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AttachVpnGatewayResult AWS API Documentation # class AttachVpnGatewayResult < Struct.new( :vpc_attachment) SENSITIVE = [] include Aws::Structure end # 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. # # @!attribute [rw] ena_srd_enabled # Indicates whether ENA Express is enabled for the network interface. # @return [Boolean] # # @!attribute [rw] ena_srd_udp_specification # Configures ENA Express for UDP network traffic. # @return [Types::AttachmentEnaSrdUdpSpecification] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AttachmentEnaSrdSpecification AWS API Documentation # class AttachmentEnaSrdSpecification < Struct.new( :ena_srd_enabled, :ena_srd_udp_specification) SENSITIVE = [] include Aws::Structure end # 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. # # @!attribute [rw] ena_srd_udp_enabled # Indicates whether UDP traffic to and from the instance uses ENA # Express. To specify this setting, you must first enable ENA Express. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AttachmentEnaSrdUdpSpecification AWS API Documentation # class AttachmentEnaSrdUdpSpecification < Struct.new( :ena_srd_udp_enabled) SENSITIVE = [] include Aws::Structure end # Describes a value for a resource attribute that is a Boolean value. # # @!attribute [rw] value # The attribute value. The valid values are `true` or `false`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AttributeBooleanValue AWS API Documentation # class AttributeBooleanValue < Struct.new( :value) SENSITIVE = [] include Aws::Structure end # Describes a value for a resource attribute that is a String. # # @!attribute [rw] value # The attribute value. The value is case-sensitive. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AttributeValue AWS API Documentation # class AttributeValue < Struct.new( :value) SENSITIVE = [] include Aws::Structure end # Information about an authorization rule. # # @!attribute [rw] client_vpn_endpoint_id # The ID of the Client VPN endpoint with which the authorization rule # is associated. # @return [String] # # @!attribute [rw] description # A brief description of the authorization rule. # @return [String] # # @!attribute [rw] group_id # The ID of the Active Directory group to which the authorization rule # grants access. # @return [String] # # @!attribute [rw] access_all # Indicates whether the authorization rule grants access to all # clients. # @return [Boolean] # # @!attribute [rw] destination_cidr # The IPv4 address range, in CIDR notation, of the network to which # the authorization rule applies. # @return [String] # # @!attribute [rw] status # The current state of the authorization rule. # @return [Types::ClientVpnAuthorizationRuleStatus] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AuthorizationRule AWS API Documentation # class AuthorizationRule < Struct.new( :client_vpn_endpoint_id, :description, :group_id, :access_all, :destination_cidr, :status) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] client_vpn_endpoint_id # The ID of the Client VPN endpoint. # @return [String] # # @!attribute [rw] target_network_cidr # The IPv4 address range, in CIDR notation, of the network for which # access is being authorized. # @return [String] # # @!attribute [rw] access_group_id # The ID of the group to grant access to, for example, the Active # Directory group or identity provider (IdP) group. Required if # `AuthorizeAllGroups` is `false` or not specified. # @return [String] # # @!attribute [rw] authorize_all_groups # Indicates whether to grant access to all clients. Specify `true` to # grant all clients who successfully establish a VPN connection access # to the network. Must be set to `true` if `AccessGroupId` is not # specified. # @return [Boolean] # # @!attribute [rw] description # A brief description of the authorization rule. # @return [String] # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. For more information, see [How to ensure # idempotency][1]. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AuthorizeClientVpnIngressRequest AWS API Documentation # class AuthorizeClientVpnIngressRequest < Struct.new( :client_vpn_endpoint_id, :target_network_cidr, :access_group_id, :authorize_all_groups, :description, :client_token, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] status # The current state of the authorization rule. # @return [Types::ClientVpnAuthorizationRuleStatus] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AuthorizeClientVpnIngressResult AWS API Documentation # class AuthorizeClientVpnIngressResult < Struct.new( :status) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] group_id # The ID of the security group. # @return [String] # # @!attribute [rw] ip_permissions # The permissions for the security group rules. # @return [Array] # # @!attribute [rw] tag_specifications # The tags applied to the security group rule. # @return [Array] # # @!attribute [rw] cidr_ip # Not supported. Use IP permissions instead. # @return [String] # # @!attribute [rw] from_port # Not supported. Use IP permissions instead. # @return [Integer] # # @!attribute [rw] ip_protocol # Not supported. Use IP permissions instead. # @return [String] # # @!attribute [rw] to_port # Not supported. Use IP permissions instead. # @return [Integer] # # @!attribute [rw] source_security_group_name # Not supported. Use IP permissions instead. # @return [String] # # @!attribute [rw] source_security_group_owner_id # Not supported. Use IP permissions instead. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AuthorizeSecurityGroupEgressRequest AWS API Documentation # class AuthorizeSecurityGroupEgressRequest < Struct.new( :dry_run, :group_id, :ip_permissions, :tag_specifications, :cidr_ip, :from_port, :ip_protocol, :to_port, :source_security_group_name, :source_security_group_owner_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] return # Returns `true` if the request succeeds; otherwise, returns an error. # @return [Boolean] # # @!attribute [rw] security_group_rules # Information about the outbound (egress) security group rules that # were added. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AuthorizeSecurityGroupEgressResult AWS API Documentation # class AuthorizeSecurityGroupEgressResult < Struct.new( :return, :security_group_rules) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cidr_ip # The IPv4 address range, in CIDR format. # # To specify an IPv6 address range, use IP permissions instead. # # To specify multiple rules and descriptions for the rules, use IP # permissions instead. # @return [String] # # @!attribute [rw] from_port # If the protocol is TCP or UDP, this is the start of the port range. # If the protocol is ICMP, this is the ICMP type or -1 (all ICMP # types). # # To specify multiple rules and descriptions for the rules, use IP # permissions instead. # @return [Integer] # # @!attribute [rw] group_id # The ID of the security group. # @return [String] # # @!attribute [rw] group_name # \[Default VPC\] The name of the security group. For security groups # for a default VPC you can specify either the ID or the name of the # security group. For security groups for a nondefault VPC, you must # specify the ID of the security group. # @return [String] # # @!attribute [rw] ip_permissions # The permissions for the security group rules. # @return [Array] # # @!attribute [rw] ip_protocol # The IP protocol name (`tcp`, `udp`, `icmp`) or number (see [Protocol # Numbers][1]). To specify all protocols, use `-1`. # # To specify `icmpv6`, use IP permissions instead. # # If you specify a protocol other than one of the supported values, # traffic is allowed on all ports, regardless of any ports that you # specify. # # To specify multiple rules and descriptions for the rules, use IP # permissions instead. # # # # [1]: http://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml # @return [String] # # @!attribute [rw] source_security_group_name # \[Default VPC\] The name of the source security group. # # The rule grants full ICMP, UDP, and TCP access. To create a rule # with a specific protocol and port range, specify a set of IP # permissions instead. # @return [String] # # @!attribute [rw] source_security_group_owner_id # The Amazon Web Services account ID for the source security group, if # the source security group is in a different account. # # The rule grants full ICMP, UDP, and TCP access. To create a rule # with a specific protocol and port range, use IP permissions instead. # @return [String] # # @!attribute [rw] to_port # If the protocol is TCP or UDP, this is the end of the port range. If # the protocol is ICMP, 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). # # To specify multiple rules and descriptions for the rules, use IP # permissions instead. # @return [Integer] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] tag_specifications # The tags applied to the security group rule. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AuthorizeSecurityGroupIngressRequest AWS API Documentation # class AuthorizeSecurityGroupIngressRequest < Struct.new( :cidr_ip, :from_port, :group_id, :group_name, :ip_permissions, :ip_protocol, :source_security_group_name, :source_security_group_owner_id, :to_port, :dry_run, :tag_specifications) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] return # Returns `true` if the request succeeds; otherwise, returns an error. # @return [Boolean] # # @!attribute [rw] security_group_rules # Information about the inbound (ingress) security group rules that # were added. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AuthorizeSecurityGroupIngressResult AWS API Documentation # class AuthorizeSecurityGroupIngressResult < Struct.new( :return, :security_group_rules) SENSITIVE = [] include Aws::Structure end # Describes Availability Zones, Local Zones, and Wavelength Zones. # # @!attribute [rw] state # The state of the Availability Zone, Local Zone, or Wavelength Zone. # This value is always `available`. # @return [String] # # @!attribute [rw] opt_in_status # 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`. # @return [String] # # @!attribute [rw] messages # Any messages about the Availability Zone, Local Zone, or Wavelength # Zone. # @return [Array] # # @!attribute [rw] region_name # The name of the Region. # @return [String] # # @!attribute [rw] zone_name # The name of the Availability Zone, Local Zone, or Wavelength Zone. # @return [String] # # @!attribute [rw] zone_id # The ID of the Availability Zone, Local Zone, or Wavelength Zone. # @return [String] # # @!attribute [rw] group_name # 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`. # @return [String] # # @!attribute [rw] network_border_group # The name of the network border group. # @return [String] # # @!attribute [rw] zone_type # The type of zone. The valid values are `availability-zone`, # `local-zone`, and `wavelength-zone`. # @return [String] # # @!attribute [rw] parent_zone_name # The name of the zone that handles some of the Local Zone or # Wavelength Zone control plane operations, such as API calls. # @return [String] # # @!attribute [rw] parent_zone_id # The ID of the zone that handles some of the Local Zone or Wavelength # Zone control plane operations, such as API calls. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AvailabilityZone AWS API Documentation # class AvailabilityZone < Struct.new( :state, :opt_in_status, :messages, :region_name, :zone_name, :zone_id, :group_name, :network_border_group, :zone_type, :parent_zone_name, :parent_zone_id) SENSITIVE = [] include Aws::Structure end # Describes a message about an Availability Zone, Local Zone, or # Wavelength Zone. # # @!attribute [rw] message # The message about the Availability Zone, Local Zone, or Wavelength # Zone. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AvailabilityZoneMessage AWS API Documentation # class AvailabilityZoneMessage < Struct.new( :message) SENSITIVE = [] include Aws::Structure end # The capacity information for instances that can be launched onto the # Dedicated Host. # # @!attribute [rw] available_instance_capacity # 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. # @return [Array] # # @!attribute [rw] available_v_cpus # The number of vCPUs available for launching instances onto the # Dedicated Host. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/AvailableCapacity AWS API Documentation # class AvailableCapacity < Struct.new( :available_instance_capacity, :available_v_cpus) SENSITIVE = [] include Aws::Structure end # The minimum and maximum baseline bandwidth to Amazon EBS, in Mbps. For # more information, see [Amazon EBS–optimized instances][1] in the # *Amazon EC2 User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-optimized.html # # @!attribute [rw] min # The minimum baseline bandwidth, in Mbps. If this parameter is not # specified, there is no minimum limit. # @return [Integer] # # @!attribute [rw] max # The maximum baseline bandwidth, in Mbps. If this parameter is not # specified, there is no maximum limit. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/BaselineEbsBandwidthMbps AWS API Documentation # class BaselineEbsBandwidthMbps < Struct.new( :min, :max) SENSITIVE = [] include Aws::Structure end # The minimum and maximum baseline bandwidth to Amazon EBS, in Mbps. For # more information, see [Amazon EBS–optimized instances][1] in the # *Amazon EC2 User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-optimized.html # # @!attribute [rw] min # The minimum baseline bandwidth, in Mbps. To specify no minimum # limit, omit this parameter. # @return [Integer] # # @!attribute [rw] max # The maximum baseline bandwidth, in Mbps. To specify no maximum # limit, omit this parameter. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/BaselineEbsBandwidthMbpsRequest AWS API Documentation # class BaselineEbsBandwidthMbpsRequest < Struct.new( :min, :max) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] value # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/BlobAttributeValue AWS API Documentation # class BlobAttributeValue < Struct.new( :value) SENSITIVE = [] include Aws::Structure end # Describes a block device mapping, which defines the EBS volumes and # instance store volumes to attach to an instance at launch. # # @!attribute [rw] device_name # The device name (for example, `/dev/sdh` or `xvdh`). # @return [String] # # @!attribute [rw] virtual_name # 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. # @return [String] # # @!attribute [rw] ebs # Parameters used to automatically set up EBS volumes when the # instance is launched. # @return [Types::EbsBlockDevice] # # @!attribute [rw] no_device # 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. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/BlockDeviceMapping AWS API Documentation # class BlockDeviceMapping < Struct.new( :device_name, :virtual_name, :ebs, :no_device) SENSITIVE = [] include Aws::Structure end # Contains the parameters for BundleInstance. # # @!attribute [rw] instance_id # The ID of the instance to bundle. # # Default: None # @return [String] # # @!attribute [rw] storage # 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. # @return [Types::Storage] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/BundleInstanceRequest AWS API Documentation # class BundleInstanceRequest < Struct.new( :instance_id, :storage, :dry_run) SENSITIVE = [] include Aws::Structure end # Contains the output of BundleInstance. # # @!attribute [rw] bundle_task # Information about the bundle task. # @return [Types::BundleTask] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/BundleInstanceResult AWS API Documentation # class BundleInstanceResult < Struct.new( :bundle_task) SENSITIVE = [] include Aws::Structure end # Describes a bundle task. # # @!attribute [rw] bundle_id # The ID of the bundle task. # @return [String] # # @!attribute [rw] bundle_task_error # If the task fails, a description of the error. # @return [Types::BundleTaskError] # # @!attribute [rw] instance_id # The ID of the instance associated with this bundle task. # @return [String] # # @!attribute [rw] progress # The level of task completion, as a percent (for example, 20%). # @return [String] # # @!attribute [rw] start_time # The time this task started. # @return [Time] # # @!attribute [rw] state # The state of the task. # @return [String] # # @!attribute [rw] storage # The Amazon S3 storage locations. # @return [Types::Storage] # # @!attribute [rw] update_time # The time of the most recent update for the task. # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/BundleTask AWS API Documentation # class BundleTask < Struct.new( :bundle_id, :bundle_task_error, :instance_id, :progress, :start_time, :state, :storage, :update_time) SENSITIVE = [] include Aws::Structure end # Describes an error for BundleInstance. # # @!attribute [rw] code # The error code. # @return [String] # # @!attribute [rw] message # The error message. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/BundleTaskError AWS API Documentation # class BundleTaskError < Struct.new( :code, :message) SENSITIVE = [] include Aws::Structure end # The Autonomous System Number (ASN) and BYOIP CIDR association. # # @!attribute [rw] asn # A public 2-byte or 4-byte ASN. # @return [String] # # @!attribute [rw] ipam_id # An IPAM ID. # @return [String] # # @!attribute [rw] status_message # The status message. # @return [String] # # @!attribute [rw] state # The provisioning state of the BYOASN. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Byoasn AWS API Documentation # class Byoasn < Struct.new( :asn, :ipam_id, :status_message, :state) SENSITIVE = [] include Aws::Structure end # Information about an address range that is provisioned for use with # your Amazon Web Services resources through bring your own IP addresses # (BYOIP). # # @!attribute [rw] cidr # The address range, in CIDR notation. # @return [String] # # @!attribute [rw] description # The description of the address range. # @return [String] # # @!attribute [rw] asn_associations # The BYOIP CIDR associations with ASNs. # @return [Array] # # @!attribute [rw] status_message # Upon success, contains the ID of the address pool. Otherwise, # contains an error message. # @return [String] # # @!attribute [rw] state # The state of the address pool. # @return [String] # # @!attribute [rw] network_border_group # If you have [Local Zones][1] 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. # # # # # # [1]: https://docs.aws.amazon.com/local-zones/latest/ug/how-local-zones-work.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ByoipCidr AWS API Documentation # class ByoipCidr < Struct.new( :cidr, :description, :asn_associations, :status_message, :state, :network_border_group) SENSITIVE = [] include Aws::Structure end # Contains the parameters for CancelBundleTask. # # @!attribute [rw] bundle_id # The ID of the bundle task. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CancelBundleTaskRequest AWS API Documentation # class CancelBundleTaskRequest < Struct.new( :bundle_id, :dry_run) SENSITIVE = [] include Aws::Structure end # Contains the output of CancelBundleTask. # # @!attribute [rw] bundle_task # Information about the bundle task. # @return [Types::BundleTask] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CancelBundleTaskResult AWS API Documentation # class CancelBundleTaskResult < Struct.new( :bundle_task) SENSITIVE = [] include Aws::Structure end # Describes a Capacity Reservation Fleet cancellation error. # # @!attribute [rw] code # The error code. # @return [String] # # @!attribute [rw] message # The error message. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CancelCapacityReservationFleetError AWS API Documentation # class CancelCapacityReservationFleetError < Struct.new( :code, :message) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] capacity_reservation_fleet_ids # The IDs of the Capacity Reservation Fleets to cancel. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CancelCapacityReservationFleetsRequest AWS API Documentation # class CancelCapacityReservationFleetsRequest < Struct.new( :dry_run, :capacity_reservation_fleet_ids) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] successful_fleet_cancellations # Information about the Capacity Reservation Fleets that were # successfully cancelled. # @return [Array] # # @!attribute [rw] failed_fleet_cancellations # Information about the Capacity Reservation Fleets that could not be # cancelled. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CancelCapacityReservationFleetsResult AWS API Documentation # class CancelCapacityReservationFleetsResult < Struct.new( :successful_fleet_cancellations, :failed_fleet_cancellations) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] capacity_reservation_id # The ID of the Capacity Reservation to be cancelled. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CancelCapacityReservationRequest AWS API Documentation # class CancelCapacityReservationRequest < Struct.new( :capacity_reservation_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] return # Returns `true` if the request succeeds; otherwise, it returns an # error. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CancelCapacityReservationResult AWS API Documentation # class CancelCapacityReservationResult < Struct.new( :return) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] conversion_task_id # The ID of the conversion task. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] reason_message # The reason for canceling the conversion task. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CancelConversionRequest AWS API Documentation # class CancelConversionRequest < Struct.new( :conversion_task_id, :dry_run, :reason_message) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] export_task_id # The ID of the export task. This is the ID returned by the # `CreateInstanceExportTask` and `ExportImage` operations. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CancelExportTaskRequest AWS API Documentation # class CancelExportTaskRequest < Struct.new( :export_task_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] image_id # The ID of the AMI that was shared with your Amazon Web Services # account. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CancelImageLaunchPermissionRequest AWS API Documentation # class CancelImageLaunchPermissionRequest < Struct.new( :image_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] return # Returns `true` if the request succeeds; otherwise, it returns an # error. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CancelImageLaunchPermissionResult AWS API Documentation # class CancelImageLaunchPermissionResult < Struct.new( :return) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cancel_reason # The reason for canceling the task. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] import_task_id # The ID of the import image or import snapshot task to be canceled. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CancelImportTaskRequest AWS API Documentation # class CancelImportTaskRequest < Struct.new( :cancel_reason, :dry_run, :import_task_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] import_task_id # The ID of the task being canceled. # @return [String] # # @!attribute [rw] previous_state # The current state of the task being canceled. # @return [String] # # @!attribute [rw] state # The current state of the task being canceled. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CancelImportTaskResult AWS API Documentation # class CancelImportTaskResult < Struct.new( :import_task_id, :previous_state, :state) SENSITIVE = [] include Aws::Structure end # Contains the parameters for CancelReservedInstancesListing. # # @!attribute [rw] reserved_instances_listing_id # The ID of the Reserved Instance listing. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CancelReservedInstancesListingRequest AWS API Documentation # class CancelReservedInstancesListingRequest < Struct.new( :reserved_instances_listing_id) SENSITIVE = [] include Aws::Structure end # Contains the output of CancelReservedInstancesListing. # # @!attribute [rw] reserved_instances_listings # The Reserved Instance listing. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CancelReservedInstancesListingResult AWS API Documentation # class CancelReservedInstancesListingResult < Struct.new( :reserved_instances_listings) SENSITIVE = [] include Aws::Structure end # Describes a Spot Fleet error. # # @!attribute [rw] code # The error code. # @return [String] # # @!attribute [rw] message # The description for the error code. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CancelSpotFleetRequestsError AWS API Documentation # class CancelSpotFleetRequestsError < Struct.new( :code, :message) SENSITIVE = [] include Aws::Structure end # Describes a Spot Fleet request that was not successfully canceled. # # @!attribute [rw] error # The error. # @return [Types::CancelSpotFleetRequestsError] # # @!attribute [rw] spot_fleet_request_id # The ID of the Spot Fleet request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CancelSpotFleetRequestsErrorItem AWS API Documentation # class CancelSpotFleetRequestsErrorItem < Struct.new( :error, :spot_fleet_request_id) SENSITIVE = [] include Aws::Structure end # Contains the parameters for CancelSpotFleetRequests. # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] spot_fleet_request_ids # The IDs of the Spot Fleet requests. # # Constraint: You can specify up to 100 IDs in a single request. # @return [Array] # # @!attribute [rw] terminate_instances # Indicates whether to terminate the associated instances when the # Spot Fleet request is canceled. The default is to terminate the # instances. # # To let the instances continue to run after the Spot Fleet request is # canceled, specify `no-terminate-instances`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CancelSpotFleetRequestsRequest AWS API Documentation # class CancelSpotFleetRequestsRequest < Struct.new( :dry_run, :spot_fleet_request_ids, :terminate_instances) SENSITIVE = [] include Aws::Structure end # Contains the output of CancelSpotFleetRequests. # # @!attribute [rw] successful_fleet_requests # Information about the Spot Fleet requests that are successfully # canceled. # @return [Array] # # @!attribute [rw] unsuccessful_fleet_requests # Information about the Spot Fleet requests that are not successfully # canceled. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CancelSpotFleetRequestsResponse AWS API Documentation # class CancelSpotFleetRequestsResponse < Struct.new( :successful_fleet_requests, :unsuccessful_fleet_requests) SENSITIVE = [] include Aws::Structure end # Describes a Spot Fleet request that was successfully canceled. # # @!attribute [rw] current_spot_fleet_request_state # The current state of the Spot Fleet request. # @return [String] # # @!attribute [rw] previous_spot_fleet_request_state # The previous state of the Spot Fleet request. # @return [String] # # @!attribute [rw] spot_fleet_request_id # The ID of the Spot Fleet request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CancelSpotFleetRequestsSuccessItem AWS API Documentation # class CancelSpotFleetRequestsSuccessItem < Struct.new( :current_spot_fleet_request_state, :previous_spot_fleet_request_state, :spot_fleet_request_id) SENSITIVE = [] include Aws::Structure end # Contains the parameters for CancelSpotInstanceRequests. # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] spot_instance_request_ids # The IDs of the Spot Instance requests. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CancelSpotInstanceRequestsRequest AWS API Documentation # class CancelSpotInstanceRequestsRequest < Struct.new( :dry_run, :spot_instance_request_ids) SENSITIVE = [] include Aws::Structure end # Contains the output of CancelSpotInstanceRequests. # # @!attribute [rw] cancelled_spot_instance_requests # The Spot Instance requests. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CancelSpotInstanceRequestsResult AWS API Documentation # class CancelSpotInstanceRequestsResult < Struct.new( :cancelled_spot_instance_requests) SENSITIVE = [] include Aws::Structure end # Describes a request to cancel a Spot Instance. # # @!attribute [rw] spot_instance_request_id # The ID of the Spot Instance request. # @return [String] # # @!attribute [rw] state # The state of the Spot Instance request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CancelledSpotInstanceRequest AWS API Documentation # class CancelledSpotInstanceRequest < Struct.new( :spot_instance_request_id, :state) SENSITIVE = [] include Aws::Structure end # Information about instance capacity usage for a Capacity Reservation. # # @!attribute [rw] allocation_type # The usage type. `used` indicates that the instance capacity is in # use by instances that are running in the Capacity Reservation. # @return [String] # # @!attribute [rw] count # 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. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CapacityAllocation AWS API Documentation # class CapacityAllocation < Struct.new( :allocation_type, :count) SENSITIVE = [] include Aws::Structure end # The recommended Capacity Block that fits your search requirements. # # @!attribute [rw] capacity_block_offering_id # The ID of the Capacity Block offering. # @return [String] # # @!attribute [rw] instance_type # The instance type of the Capacity Block offering. # @return [String] # # @!attribute [rw] availability_zone # The Availability Zone of the Capacity Block offering. # @return [String] # # @!attribute [rw] instance_count # The number of instances in the Capacity Block offering. # @return [Integer] # # @!attribute [rw] start_date # The start date of the Capacity Block offering. # @return [Time] # # @!attribute [rw] end_date # The end date of the Capacity Block offering. # @return [Time] # # @!attribute [rw] capacity_block_duration_hours # The amount of time of the Capacity Block reservation in hours. # @return [Integer] # # @!attribute [rw] upfront_fee # The total price to be paid up front. # @return [String] # # @!attribute [rw] currency_code # The currency of the payment for the Capacity Block. # @return [String] # # @!attribute [rw] tenancy # The tenancy of the Capacity Block. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CapacityBlockOffering AWS API Documentation # class CapacityBlockOffering < Struct.new( :capacity_block_offering_id, :instance_type, :availability_zone, :instance_count, :start_date, :end_date, :capacity_block_duration_hours, :upfront_fee, :currency_code, :tenancy) SENSITIVE = [] include Aws::Structure end # Describes a Capacity Reservation. # # @!attribute [rw] capacity_reservation_id # The ID of the Capacity Reservation. # @return [String] # # @!attribute [rw] owner_id # The ID of the Amazon Web Services account that owns the Capacity # Reservation. # @return [String] # # @!attribute [rw] capacity_reservation_arn # The Amazon Resource Name (ARN) of the Capacity Reservation. # @return [String] # # @!attribute [rw] availability_zone_id # The Availability Zone ID of the Capacity Reservation. # @return [String] # # @!attribute [rw] instance_type # The type of instance for which the Capacity Reservation reserves # capacity. # @return [String] # # @!attribute [rw] instance_platform # The type of operating system for which the Capacity Reservation # reserves capacity. # @return [String] # # @!attribute [rw] availability_zone # The Availability Zone in which the capacity is reserved. # @return [String] # # @!attribute [rw] tenancy # 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. # @return [String] # # @!attribute [rw] total_instance_count # The total number of instances for which the Capacity Reservation # reserves capacity. # @return [Integer] # # @!attribute [rw] available_instance_count # The remaining capacity. Indicates the number of instances that can # be launched in the Capacity Reservation. # @return [Integer] # # @!attribute [rw] ebs_optimized # 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. # @return [Boolean] # # @!attribute [rw] ephemeral_storage # *Deprecated.* # @return [Boolean] # # @!attribute [rw] state # The current state of the Capacity Reservation. A Capacity # Reservation can be in one of the following states: # # * `active` - The Capacity Reservation is active and the capacity is # available for your use. # # * `expired` - The Capacity Reservation expired automatically at the # date and time specified in your request. The reserved capacity is # no longer available for your use. # # * `cancelled` - The Capacity Reservation was cancelled. 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 # might fail due to invalid request parameters, capacity # constraints, or instance limit constraints. Failed requests are # retained for 60 minutes. # @return [String] # # @!attribute [rw] start_date # The date and time at which the Capacity Reservation was started. # @return [Time] # # @!attribute [rw] end_date # 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. # @return [Time] # # @!attribute [rw] end_date_type # 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. # @return [String] # # @!attribute [rw] instance_match_criteria # 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. # @return [String] # # @!attribute [rw] create_date # The date and time at which the Capacity Reservation was created. # @return [Time] # # @!attribute [rw] tags # Any tags assigned to the Capacity Reservation. # @return [Array] # # @!attribute [rw] outpost_arn # The Amazon Resource Name (ARN) of the Outpost on which the Capacity # Reservation was created. # @return [String] # # @!attribute [rw] capacity_reservation_fleet_id # 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. # @return [String] # # @!attribute [rw] placement_group_arn # 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][1] in the # *Amazon EC2 User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/cr-cpg.html # @return [String] # # @!attribute [rw] capacity_allocations # Information about instance capacity usage. # @return [Array] # # @!attribute [rw] reservation_type # The type of Capacity Reservation. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CapacityReservation AWS API Documentation # class CapacityReservation < Struct.new( :capacity_reservation_id, :owner_id, :capacity_reservation_arn, :availability_zone_id, :instance_type, :instance_platform, :availability_zone, :tenancy, :total_instance_count, :available_instance_count, :ebs_optimized, :ephemeral_storage, :state, :start_date, :end_date, :end_date_type, :instance_match_criteria, :create_date, :tags, :outpost_arn, :capacity_reservation_fleet_id, :placement_group_arn, :capacity_allocations, :reservation_type) SENSITIVE = [] include Aws::Structure end # Information about a Capacity Reservation Fleet. # # @!attribute [rw] capacity_reservation_fleet_id # The ID of the Capacity Reservation Fleet. # @return [String] # # @!attribute [rw] capacity_reservation_fleet_arn # The ARN of the Capacity Reservation Fleet. # @return [String] # # @!attribute [rw] state # 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. # @return [String] # # @!attribute [rw] total_target_capacity # The total number of capacity units for which the Capacity # Reservation Fleet reserves capacity. For more information, see # [Total target capacity][1] in the Amazon EC2 User Guide. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/crfleet-concepts.html#target-capacity # @return [Integer] # # @!attribute [rw] total_fulfilled_capacity # The capacity units that have been fulfilled. # @return [Float] # # @!attribute [rw] tenancy # 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. # @return [String] # # @!attribute [rw] end_date # The date and time at which the Capacity Reservation Fleet expires. # @return [Time] # # @!attribute [rw] create_time # The date and time at which the Capacity Reservation Fleet was # created. # @return [Time] # # @!attribute [rw] instance_match_criteria # 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. # @return [String] # # @!attribute [rw] allocation_strategy # 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][1] in the # Amazon EC2 User Guide. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/crfleet-concepts.html#allocation-strategy # @return [String] # # @!attribute [rw] instance_type_specifications # Information about the instance types for which to reserve the # capacity. # @return [Array] # # @!attribute [rw] tags # The tags assigned to the Capacity Reservation Fleet. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CapacityReservationFleet AWS API Documentation # class CapacityReservationFleet < Struct.new( :capacity_reservation_fleet_id, :capacity_reservation_fleet_arn, :state, :total_target_capacity, :total_fulfilled_capacity, :tenancy, :end_date, :create_time, :instance_match_criteria, :allocation_strategy, :instance_type_specifications, :tags) SENSITIVE = [] include Aws::Structure end # Describes a Capacity Reservation Fleet that was successfully # cancelled. # # @!attribute [rw] current_fleet_state # The current state of the Capacity Reservation Fleet. # @return [String] # # @!attribute [rw] previous_fleet_state # The previous state of the Capacity Reservation Fleet. # @return [String] # # @!attribute [rw] capacity_reservation_fleet_id # The ID of the Capacity Reservation Fleet that was successfully # cancelled. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CapacityReservationFleetCancellationState AWS API Documentation # class CapacityReservationFleetCancellationState < Struct.new( :current_fleet_state, :previous_fleet_state, :capacity_reservation_fleet_id) SENSITIVE = [] include Aws::Structure end # Describes a resource group to which a Capacity Reservation has been # added. # # @!attribute [rw] group_arn # The ARN of the resource group. # @return [String] # # @!attribute [rw] owner_id # The ID of the Amazon Web Services account that owns the resource # group. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CapacityReservationGroup AWS API Documentation # class CapacityReservationGroup < Struct.new( :group_arn, :owner_id) SENSITIVE = [] include Aws::Structure end # 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][1] in the *Amazon EC2 User Guide*. For examples # of using Capacity Reservations in an EC2 Fleet, see [EC2 Fleet example # configurations][2] in the *Amazon EC2 User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-capacity-reservations.html # [2]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-examples.html # # @!attribute [rw] usage_strategy # 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. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CapacityReservationOptions AWS API Documentation # class CapacityReservationOptions < Struct.new( :usage_strategy) SENSITIVE = [] include Aws::Structure end # 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][1] in the *Amazon EC2 User Guide*. For examples # of using Capacity Reservations in an EC2 Fleet, see [EC2 Fleet example # configurations][2] in the *Amazon EC2 User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-capacity-reservations.html # [2]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-examples.html # # @!attribute [rw] usage_strategy # 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. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CapacityReservationOptionsRequest AWS API Documentation # class CapacityReservationOptionsRequest < Struct.new( :usage_strategy) SENSITIVE = [] include Aws::Structure end # Describes an instance's Capacity Reservation targeting option. You # can specify only one parameter at a time. If you specify # `CapacityReservationPreference` and `CapacityReservationTarget`, the # request fails. # # Use the `CapacityReservationPreference` parameter to configure the # instance to run as an On-Demand Instance 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. # # @!attribute [rw] capacity_reservation_preference # 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 as an On-Demand # Instance. # @return [String] # # @!attribute [rw] capacity_reservation_target # Information about the target Capacity Reservation or Capacity # Reservation group. # @return [Types::CapacityReservationTarget] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CapacityReservationSpecification AWS API Documentation # class CapacityReservationSpecification < Struct.new( :capacity_reservation_preference, :capacity_reservation_target) SENSITIVE = [] include Aws::Structure end # 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. # # @!attribute [rw] capacity_reservation_preference # 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. # @return [String] # # @!attribute [rw] capacity_reservation_target # Information about the targeted Capacity Reservation or Capacity # Reservation group. # @return [Types::CapacityReservationTargetResponse] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CapacityReservationSpecificationResponse AWS API Documentation # class CapacityReservationSpecificationResponse < Struct.new( :capacity_reservation_preference, :capacity_reservation_target) SENSITIVE = [] include Aws::Structure end # Describes a target Capacity Reservation or Capacity Reservation group. # # @!attribute [rw] capacity_reservation_id # The ID of the Capacity Reservation in which to run the instance. # @return [String] # # @!attribute [rw] capacity_reservation_resource_group_arn # The ARN of the Capacity Reservation resource group in which to run # the instance. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CapacityReservationTarget AWS API Documentation # class CapacityReservationTarget < Struct.new( :capacity_reservation_id, :capacity_reservation_resource_group_arn) SENSITIVE = [] include Aws::Structure end # Describes a target Capacity Reservation or Capacity Reservation group. # # @!attribute [rw] capacity_reservation_id # The ID of the targeted Capacity Reservation. # @return [String] # # @!attribute [rw] capacity_reservation_resource_group_arn # The ARN of the targeted Capacity Reservation group. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CapacityReservationTargetResponse AWS API Documentation # class CapacityReservationTargetResponse < Struct.new( :capacity_reservation_id, :capacity_reservation_resource_group_arn) SENSITIVE = [] include Aws::Structure end # Describes a carrier gateway. # # @!attribute [rw] carrier_gateway_id # The ID of the carrier gateway. # @return [String] # # @!attribute [rw] vpc_id # The ID of the VPC associated with the carrier gateway. # @return [String] # # @!attribute [rw] state # The state of the carrier gateway. # @return [String] # # @!attribute [rw] owner_id # The Amazon Web Services account ID of the owner of the carrier # gateway. # @return [String] # # @!attribute [rw] tags # The tags assigned to the carrier gateway. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CarrierGateway AWS API Documentation # class CarrierGateway < Struct.new( :carrier_gateway_id, :vpc_id, :state, :owner_id, :tags) SENSITIVE = [] include Aws::Structure end # Information about the client certificate used for authentication. # # @!attribute [rw] client_root_certificate_chain # The ARN of the client certificate. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CertificateAuthentication AWS API Documentation # class CertificateAuthentication < Struct.new( :client_root_certificate_chain) SENSITIVE = [] include Aws::Structure end # Information about the client certificate to be used for # authentication. # # @!attribute [rw] client_root_certificate_chain_arn # 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). # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CertificateAuthenticationRequest AWS API Documentation # class CertificateAuthenticationRequest < Struct.new( :client_root_certificate_chain_arn) SENSITIVE = [] include Aws::Structure end # 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 range][1] in the *Amazon Elastic Compute Cloud User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-byoip.html#prepare-for-byoip # # @!attribute [rw] message # The plain-text authorization message for the prefix and account. # @return [String] # # @!attribute [rw] signature # The signed authorization message for the prefix and account. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CidrAuthorizationContext AWS API Documentation # class CidrAuthorizationContext < Struct.new( :message, :signature) SENSITIVE = [] include Aws::Structure end # Describes an IPv4 CIDR block. # # @!attribute [rw] cidr_block # The IPv4 CIDR block. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CidrBlock AWS API Documentation # class CidrBlock < Struct.new( :cidr_block) SENSITIVE = [] include Aws::Structure end # Deprecated. # # # # Describes the ClassicLink DNS support status of a VPC. # # @!attribute [rw] classic_link_dns_supported # Indicates whether ClassicLink DNS support is enabled for the VPC. # @return [Boolean] # # @!attribute [rw] vpc_id # The ID of the VPC. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ClassicLinkDnsSupport AWS API Documentation # class ClassicLinkDnsSupport < Struct.new( :classic_link_dns_supported, :vpc_id) SENSITIVE = [] include Aws::Structure end # Deprecated. # # # # Describes a linked EC2-Classic instance. # # @!attribute [rw] groups # The security groups. # @return [Array] # # @!attribute [rw] instance_id # The ID of the instance. # @return [String] # # @!attribute [rw] tags # Any tags assigned to the instance. # @return [Array] # # @!attribute [rw] vpc_id # The ID of the VPC. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ClassicLinkInstance AWS API Documentation # class ClassicLinkInstance < Struct.new( :groups, :instance_id, :tags, :vpc_id) SENSITIVE = [] include Aws::Structure end # Describes a Classic Load Balancer. # # @!attribute [rw] name # The name of the load balancer. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ClassicLoadBalancer AWS API Documentation # class ClassicLoadBalancer < Struct.new( :name) SENSITIVE = [] include Aws::Structure end # Describes the Classic Load Balancers to attach to a Spot Fleet. Spot # Fleet registers the running Spot Instances with these Classic Load # Balancers. # # @!attribute [rw] classic_load_balancers # One or more Classic Load Balancers. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ClassicLoadBalancersConfig AWS API Documentation # class ClassicLoadBalancersConfig < Struct.new( :classic_load_balancers) SENSITIVE = [] include Aws::Structure end # Describes the state of a client certificate revocation list. # # @!attribute [rw] code # The state of the client certificate revocation list. # @return [String] # # @!attribute [rw] message # A message about the status of the client certificate revocation # list, if applicable. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ClientCertificateRevocationListStatus AWS API Documentation # class ClientCertificateRevocationListStatus < Struct.new( :code, :message) SENSITIVE = [] include Aws::Structure end # The options for managing connection authorization for new client # connections. # # @!attribute [rw] enabled # Indicates whether client connect options are enabled. The default is # `false` (not enabled). # @return [Boolean] # # @!attribute [rw] lambda_function_arn # The Amazon Resource Name (ARN) of the Lambda function used for # connection authorization. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ClientConnectOptions AWS API Documentation # class ClientConnectOptions < Struct.new( :enabled, :lambda_function_arn) SENSITIVE = [] include Aws::Structure end # The options for managing connection authorization for new client # connections. # # @!attribute [rw] enabled # Indicates whether client connect options are enabled. # @return [Boolean] # # @!attribute [rw] lambda_function_arn # The Amazon Resource Name (ARN) of the Lambda function used for # connection authorization. # @return [String] # # @!attribute [rw] status # The status of any updates to the client connect options. # @return [Types::ClientVpnEndpointAttributeStatus] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ClientConnectResponseOptions AWS API Documentation # class ClientConnectResponseOptions < Struct.new( :enabled, :lambda_function_arn, :status) SENSITIVE = [] include Aws::Structure end # Describes the client-specific data. # # @!attribute [rw] comment # A user-defined comment about the disk upload. # @return [String] # # @!attribute [rw] upload_end # The time that the disk upload ends. # @return [Time] # # @!attribute [rw] upload_size # The size of the uploaded disk image, in GiB. # @return [Float] # # @!attribute [rw] upload_start # The time that the disk upload starts. # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ClientData AWS API Documentation # class ClientData < Struct.new( :comment, :upload_end, :upload_size, :upload_start) SENSITIVE = [] include Aws::Structure end # Options for enabling a customizable text banner that will be displayed # on Amazon Web Services provided clients when a VPN session is # established. # # @!attribute [rw] enabled # 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` # @return [Boolean] # # @!attribute [rw] banner_text # 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. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ClientLoginBannerOptions AWS API Documentation # class ClientLoginBannerOptions < Struct.new( :enabled, :banner_text) SENSITIVE = [] include Aws::Structure end # Current state of options for customizable text banner that will be # displayed on Amazon Web Services provided clients when a VPN session # is established. # # @!attribute [rw] enabled # Current state of text banner feature. # # Valid values: `true | false` # @return [Boolean] # # @!attribute [rw] banner_text # 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. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ClientLoginBannerResponseOptions AWS API Documentation # class ClientLoginBannerResponseOptions < Struct.new( :enabled, :banner_text) SENSITIVE = [] include Aws::Structure end # Describes the authentication methods used by a Client VPN endpoint. # For more information, see [Authentication][1] in the *Client VPN # Administrator Guide*. # # # # [1]: https://docs.aws.amazon.com/vpn/latest/clientvpn-admin/client-authentication.html # # @!attribute [rw] type # The authentication type used. # @return [String] # # @!attribute [rw] active_directory # Information about the Active Directory, if applicable. # @return [Types::DirectoryServiceAuthentication] # # @!attribute [rw] mutual_authentication # Information about the authentication certificates, if applicable. # @return [Types::CertificateAuthentication] # # @!attribute [rw] federated_authentication # Information about the IAM SAML identity provider, if applicable. # @return [Types::FederatedAuthentication] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ClientVpnAuthentication AWS API Documentation # class ClientVpnAuthentication < Struct.new( :type, :active_directory, :mutual_authentication, :federated_authentication) SENSITIVE = [] include Aws::Structure end # Describes the authentication method to be used by a Client VPN # endpoint. For more information, see [Authentication][1] in the *Client # VPN Administrator Guide*. # # # # [1]: https://docs.aws.amazon.com/vpn/latest/clientvpn-admin/authentication-authrization.html#client-authentication # # @!attribute [rw] type # The type of client authentication to be used. # @return [String] # # @!attribute [rw] active_directory # Information about the Active Directory to be used, if applicable. # You must provide this information if **Type** is # `directory-service-authentication`. # @return [Types::DirectoryServiceAuthenticationRequest] # # @!attribute [rw] mutual_authentication # Information about the authentication certificates to be used, if # applicable. You must provide this information if **Type** is # `certificate-authentication`. # @return [Types::CertificateAuthenticationRequest] # # @!attribute [rw] federated_authentication # Information about the IAM SAML identity provider to be used, if # applicable. You must provide this information if **Type** is # `federated-authentication`. # @return [Types::FederatedAuthenticationRequest] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ClientVpnAuthenticationRequest AWS API Documentation # class ClientVpnAuthenticationRequest < Struct.new( :type, :active_directory, :mutual_authentication, :federated_authentication) SENSITIVE = [] include Aws::Structure end # Describes the state of an authorization rule. # # @!attribute [rw] code # The state of the authorization rule. # @return [String] # # @!attribute [rw] message # A message about the status of the authorization rule, if applicable. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ClientVpnAuthorizationRuleStatus AWS API Documentation # class ClientVpnAuthorizationRuleStatus < Struct.new( :code, :message) SENSITIVE = [] include Aws::Structure end # Describes a client connection. # # @!attribute [rw] client_vpn_endpoint_id # The ID of the Client VPN endpoint to which the client is connected. # @return [String] # # @!attribute [rw] timestamp # The current date and time. # @return [String] # # @!attribute [rw] connection_id # The ID of the client connection. # @return [String] # # @!attribute [rw] username # The username of the client who established the client connection. # This information is only provided if Active Directory client # authentication is used. # @return [String] # # @!attribute [rw] connection_established_time # The date and time the client connection was established. # @return [String] # # @!attribute [rw] ingress_bytes # The number of bytes sent by the client. # @return [String] # # @!attribute [rw] egress_bytes # The number of bytes received by the client. # @return [String] # # @!attribute [rw] ingress_packets # The number of packets sent by the client. # @return [String] # # @!attribute [rw] egress_packets # The number of packets received by the client. # @return [String] # # @!attribute [rw] client_ip # The IP address of the client. # @return [String] # # @!attribute [rw] common_name # The common name associated with the client. This is either the name # of the client certificate, or the Active Directory user name. # @return [String] # # @!attribute [rw] status # The current state of the client connection. # @return [Types::ClientVpnConnectionStatus] # # @!attribute [rw] connection_end_time # The date and time the client connection was terminated. # @return [String] # # @!attribute [rw] posture_compliance_statuses # The statuses returned by the client connect handler for posture # compliance, if applicable. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ClientVpnConnection AWS API Documentation # class ClientVpnConnection < Struct.new( :client_vpn_endpoint_id, :timestamp, :connection_id, :username, :connection_established_time, :ingress_bytes, :egress_bytes, :ingress_packets, :egress_packets, :client_ip, :common_name, :status, :connection_end_time, :posture_compliance_statuses) SENSITIVE = [] include Aws::Structure end # Describes the status of a client connection. # # @!attribute [rw] code # The state of the client connection. # @return [String] # # @!attribute [rw] message # A message about the status of the client connection, if applicable. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ClientVpnConnectionStatus AWS API Documentation # class ClientVpnConnectionStatus < Struct.new( :code, :message) SENSITIVE = [] include Aws::Structure end # Describes a Client VPN endpoint. # # @!attribute [rw] client_vpn_endpoint_id # The ID of the Client VPN endpoint. # @return [String] # # @!attribute [rw] description # A brief description of the endpoint. # @return [String] # # @!attribute [rw] status # The current state of the Client VPN endpoint. # @return [Types::ClientVpnEndpointStatus] # # @!attribute [rw] creation_time # The date and time the Client VPN endpoint was created. # @return [String] # # @!attribute [rw] deletion_time # The date and time the Client VPN endpoint was deleted, if # applicable. # @return [String] # # @!attribute [rw] dns_name # The DNS name to be used by clients when connecting to the Client VPN # endpoint. # @return [String] # # @!attribute [rw] client_cidr_block # The IPv4 address range, in CIDR notation, from which client IP # addresses are assigned. # @return [String] # # @!attribute [rw] dns_servers # Information about the DNS servers to be used for DNS resolution. # @return [Array] # # @!attribute [rw] split_tunnel # Indicates whether split-tunnel is enabled in the Client VPN # endpoint. # # For information about split-tunnel VPN endpoints, see [Split-Tunnel # Client VPN endpoint][1] in the *Client VPN Administrator Guide*. # # # # [1]: https://docs.aws.amazon.com/vpn/latest/clientvpn-admin/split-tunnel-vpn.html # @return [Boolean] # # @!attribute [rw] vpn_protocol # The protocol used by the VPN session. # @return [String] # # @!attribute [rw] transport_protocol # The transport protocol used by the Client VPN endpoint. # @return [String] # # @!attribute [rw] vpn_port # The port number for the Client VPN endpoint. # @return [Integer] # # @!attribute [rw] associated_target_networks # Information about the associated target networks. A target network # is a subnet in a VPC. # @return [Array] # # @!attribute [rw] server_certificate_arn # The ARN of the server certificate. # @return [String] # # @!attribute [rw] authentication_options # Information about the authentication method used by the Client VPN # endpoint. # @return [Array] # # @!attribute [rw] connection_log_options # Information about the client connection logging options for the # Client VPN endpoint. # @return [Types::ConnectionLogResponseOptions] # # @!attribute [rw] tags # Any tags assigned to the Client VPN endpoint. # @return [Array] # # @!attribute [rw] security_group_ids # The IDs of the security groups for the target network. # @return [Array] # # @!attribute [rw] vpc_id # The ID of the VPC. # @return [String] # # @!attribute [rw] self_service_portal_url # The URL of the self-service portal. # @return [String] # # @!attribute [rw] client_connect_options # The options for managing connection authorization for new client # connections. # @return [Types::ClientConnectResponseOptions] # # @!attribute [rw] session_timeout_hours # The maximum VPN session duration time in hours. # # Valid values: `8 | 10 | 12 | 24` # # Default value: `24` # @return [Integer] # # @!attribute [rw] client_login_banner_options # Options for enabling a customizable text banner that will be # displayed on Amazon Web Services provided clients when a VPN session # is established. # @return [Types::ClientLoginBannerResponseOptions] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ClientVpnEndpoint AWS API Documentation # class ClientVpnEndpoint < Struct.new( :client_vpn_endpoint_id, :description, :status, :creation_time, :deletion_time, :dns_name, :client_cidr_block, :dns_servers, :split_tunnel, :vpn_protocol, :transport_protocol, :vpn_port, :associated_target_networks, :server_certificate_arn, :authentication_options, :connection_log_options, :tags, :security_group_ids, :vpc_id, :self_service_portal_url, :client_connect_options, :session_timeout_hours, :client_login_banner_options) SENSITIVE = [] include Aws::Structure end # Describes the status of the Client VPN endpoint attribute. # # @!attribute [rw] code # The status code. # @return [String] # # @!attribute [rw] message # The status message. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ClientVpnEndpointAttributeStatus AWS API Documentation # class ClientVpnEndpointAttributeStatus < Struct.new( :code, :message) SENSITIVE = [] include Aws::Structure end # Describes the state of a Client VPN endpoint. # # @!attribute [rw] code # 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. # @return [String] # # @!attribute [rw] message # A message about the status of the Client VPN endpoint. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ClientVpnEndpointStatus AWS API Documentation # class ClientVpnEndpointStatus < Struct.new( :code, :message) SENSITIVE = [] include Aws::Structure end # Information about a Client VPN endpoint route. # # @!attribute [rw] client_vpn_endpoint_id # The ID of the Client VPN endpoint with which the route is # associated. # @return [String] # # @!attribute [rw] destination_cidr # The IPv4 address range, in CIDR notation, of the route destination. # @return [String] # # @!attribute [rw] target_subnet # The ID of the subnet through which traffic is routed. # @return [String] # # @!attribute [rw] type # The route type. # @return [String] # # @!attribute [rw] origin # 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. # @return [String] # # @!attribute [rw] status # The current state of the route. # @return [Types::ClientVpnRouteStatus] # # @!attribute [rw] description # A brief description of the route. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ClientVpnRoute AWS API Documentation # class ClientVpnRoute < Struct.new( :client_vpn_endpoint_id, :destination_cidr, :target_subnet, :type, :origin, :status, :description) SENSITIVE = [] include Aws::Structure end # Describes the state of a Client VPN endpoint route. # # @!attribute [rw] code # The state of the Client VPN endpoint route. # @return [String] # # @!attribute [rw] message # A message about the status of the Client VPN endpoint route, if # applicable. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ClientVpnRouteStatus AWS API Documentation # class ClientVpnRouteStatus < Struct.new( :code, :message) SENSITIVE = [] include Aws::Structure end # Options for sending VPN tunnel logs to CloudWatch. # # @!attribute [rw] log_enabled # Status of VPN tunnel logging feature. Default value is `False`. # # Valid values: `True` \| `False` # @return [Boolean] # # @!attribute [rw] log_group_arn # The Amazon Resource Name (ARN) of the CloudWatch log group to send # logs to. # @return [String] # # @!attribute [rw] log_output_format # Configured log format. Default format is `json`. # # Valid values: `json` \| `text` # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CloudWatchLogOptions AWS API Documentation # class CloudWatchLogOptions < Struct.new( :log_enabled, :log_group_arn, :log_output_format) SENSITIVE = [] include Aws::Structure end # Options for sending VPN tunnel logs to CloudWatch. # # @!attribute [rw] log_enabled # Enable or disable VPN tunnel logging feature. Default value is # `False`. # # Valid values: `True` \| `False` # @return [Boolean] # # @!attribute [rw] log_group_arn # The Amazon Resource Name (ARN) of the CloudWatch log group to send # logs to. # @return [String] # # @!attribute [rw] log_output_format # Set log format. Default format is `json`. # # Valid values: `json` \| `text` # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CloudWatchLogOptionsSpecification AWS API Documentation # class CloudWatchLogOptionsSpecification < Struct.new( :log_enabled, :log_group_arn, :log_output_format) SENSITIVE = [] include Aws::Structure end # Describes address usage for a customer-owned address pool. # # @!attribute [rw] allocation_id # The allocation ID of the address. # @return [String] # # @!attribute [rw] aws_account_id # The Amazon Web Services account ID. # @return [String] # # @!attribute [rw] aws_service # The Amazon Web Services service. # @return [String] # # @!attribute [rw] co_ip # The customer-owned IP address. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CoipAddressUsage AWS API Documentation # class CoipAddressUsage < Struct.new( :allocation_id, :aws_account_id, :aws_service, :co_ip) SENSITIVE = [] include Aws::Structure end # Information about a customer-owned IP address range. # # @!attribute [rw] cidr # An address range in a customer-owned IP address space. # @return [String] # # @!attribute [rw] coip_pool_id # The ID of the address pool. # @return [String] # # @!attribute [rw] local_gateway_route_table_id # The ID of the local gateway route table. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CoipCidr AWS API Documentation # class CoipCidr < Struct.new( :cidr, :coip_pool_id, :local_gateway_route_table_id) SENSITIVE = [] include Aws::Structure end # Describes a customer-owned address pool. # # @!attribute [rw] pool_id # The ID of the address pool. # @return [String] # # @!attribute [rw] pool_cidrs # The address ranges of the address pool. # @return [Array] # # @!attribute [rw] local_gateway_route_table_id # The ID of the local gateway route table. # @return [String] # # @!attribute [rw] tags # The tags. # @return [Array] # # @!attribute [rw] pool_arn # The ARN of the address pool. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CoipPool AWS API Documentation # class CoipPool < Struct.new( :pool_id, :pool_cidrs, :local_gateway_route_table_id, :tags, :pool_arn) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] instance_id # The ID of the instance. # @return [String] # # @!attribute [rw] product_code # The product code. This must be a product code that you own. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ConfirmProductInstanceRequest AWS API Documentation # class ConfirmProductInstanceRequest < Struct.new( :instance_id, :product_code, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] owner_id # The Amazon Web Services account ID of the instance owner. This is # only present if the product code is attached to the instance. # @return [String] # # @!attribute [rw] return # The return value of the request. Returns `true` if the specified # product code is owned by the requester and associated with the # specified instance. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ConfirmProductInstanceResult AWS API Documentation # class ConfirmProductInstanceResult < Struct.new( :owner_id, :return) SENSITIVE = [] include Aws::Structure end # Describes the client connection logging options for the Client VPN # endpoint. # # @!attribute [rw] enabled # Indicates whether connection logging is enabled. # @return [Boolean] # # @!attribute [rw] cloudwatch_log_group # The name of the CloudWatch Logs log group. Required if connection # logging is enabled. # @return [String] # # @!attribute [rw] cloudwatch_log_stream # The name of the CloudWatch Logs log stream to which the connection # data is published. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ConnectionLogOptions AWS API Documentation # class ConnectionLogOptions < Struct.new( :enabled, :cloudwatch_log_group, :cloudwatch_log_stream) SENSITIVE = [] include Aws::Structure end # Information about the client connection logging options for a Client # VPN endpoint. # # @!attribute [rw] enabled # Indicates whether client connection logging is enabled for the # Client VPN endpoint. # @return [Boolean] # # @!attribute [rw] cloudwatch_log_group # The name of the Amazon CloudWatch Logs log group to which connection # logging data is published. # @return [String] # # @!attribute [rw] cloudwatch_log_stream # The name of the Amazon CloudWatch Logs log stream to which # connection logging data is published. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ConnectionLogResponseOptions AWS API Documentation # class ConnectionLogResponseOptions < Struct.new( :enabled, :cloudwatch_log_group, :cloudwatch_log_stream) SENSITIVE = [] include Aws::Structure end # Describes a connection notification for a VPC endpoint or VPC endpoint # service. # # @!attribute [rw] connection_notification_id # The ID of the notification. # @return [String] # # @!attribute [rw] service_id # The ID of the endpoint service. # @return [String] # # @!attribute [rw] vpc_endpoint_id # The ID of the VPC endpoint. # @return [String] # # @!attribute [rw] connection_notification_type # The type of notification. # @return [String] # # @!attribute [rw] connection_notification_arn # The ARN of the SNS topic for the notification. # @return [String] # # @!attribute [rw] connection_events # The events for the notification. Valid values are `Accept`, # `Connect`, `Delete`, and `Reject`. # @return [Array] # # @!attribute [rw] connection_notification_state # The state of the notification. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ConnectionNotification AWS API Documentation # class ConnectionNotification < Struct.new( :connection_notification_id, :service_id, :vpc_endpoint_id, :connection_notification_type, :connection_notification_arn, :connection_events, :connection_notification_state) SENSITIVE = [] include Aws::Structure end # 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 timeouts][1] # in the *Amazon Elastic Compute Cloud User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-connection-tracking.html#connection-tracking-timeouts # # @!attribute [rw] tcp_established_timeout # 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. # @return [Integer] # # @!attribute [rw] udp_stream_timeout # 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. # @return [Integer] # # @!attribute [rw] udp_timeout # 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. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ConnectionTrackingConfiguration AWS API Documentation # class ConnectionTrackingConfiguration < Struct.new( :tcp_established_timeout, :udp_stream_timeout, :udp_timeout) SENSITIVE = [] include Aws::Structure end # 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 timeouts][1] # in the *Amazon Elastic Compute Cloud User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-connection-tracking.html#connection-tracking-timeouts # # @!attribute [rw] tcp_established_timeout # 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. # @return [Integer] # # @!attribute [rw] udp_timeout # 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. # @return [Integer] # # @!attribute [rw] udp_stream_timeout # 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. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ConnectionTrackingSpecification AWS API Documentation # class ConnectionTrackingSpecification < Struct.new( :tcp_established_timeout, :udp_timeout, :udp_stream_timeout) SENSITIVE = [] include Aws::Structure end # 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 timeouts][1] in the *Amazon Elastic Compute Cloud User # Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-connection-tracking.html#connection-tracking-timeouts # # @!attribute [rw] tcp_established_timeout # 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. # @return [Integer] # # @!attribute [rw] udp_stream_timeout # 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. # @return [Integer] # # @!attribute [rw] udp_timeout # 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. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ConnectionTrackingSpecificationRequest AWS API Documentation # class ConnectionTrackingSpecificationRequest < Struct.new( :tcp_established_timeout, :udp_stream_timeout, :udp_timeout) SENSITIVE = [] include Aws::Structure end # 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 timeouts][1] in the *Amazon Elastic Compute Cloud User # Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-connection-tracking.html#connection-tracking-timeouts # # @!attribute [rw] tcp_established_timeout # 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. # @return [Integer] # # @!attribute [rw] udp_stream_timeout # 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. # @return [Integer] # # @!attribute [rw] udp_timeout # 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. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ConnectionTrackingSpecificationResponse AWS API Documentation # class ConnectionTrackingSpecificationResponse < Struct.new( :tcp_established_timeout, :udp_stream_timeout, :udp_timeout) SENSITIVE = [] include Aws::Structure end # Describes a conversion task. # # @!attribute [rw] conversion_task_id # The ID of the conversion task. # @return [String] # # @!attribute [rw] expiration_time # The time when the task expires. If the upload isn't complete before # the expiration time, we automatically cancel the task. # @return [String] # # @!attribute [rw] import_instance # If the task is for importing an instance, this contains information # about the import instance task. # @return [Types::ImportInstanceTaskDetails] # # @!attribute [rw] import_volume # If the task is for importing a volume, this contains information # about the import volume task. # @return [Types::ImportVolumeTaskDetails] # # @!attribute [rw] state # The state of the conversion task. # @return [String] # # @!attribute [rw] status_message # The status message related to the conversion task. # @return [String] # # @!attribute [rw] tags # Any tags assigned to the task. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ConversionTask AWS API Documentation # class ConversionTask < Struct.new( :conversion_task_id, :expiration_time, :import_instance, :import_volume, :state, :status_message, :tags) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] source_fpga_image_id # The ID of the source AFI. # @return [String] # # @!attribute [rw] description # The description for the new AFI. # @return [String] # # @!attribute [rw] name # The name for the new AFI. The default is the name of the source AFI. # @return [String] # # @!attribute [rw] source_region # The Region that contains the source AFI. # @return [String] # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. For more information, see [Ensuring # idempotency][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Run_Instance_Idempotency.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CopyFpgaImageRequest AWS API Documentation # class CopyFpgaImageRequest < Struct.new( :dry_run, :source_fpga_image_id, :description, :name, :source_region, :client_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] fpga_image_id # The ID of the new AFI. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CopyFpgaImageResult AWS API Documentation # class CopyFpgaImageResult < Struct.new( :fpga_image_id) SENSITIVE = [] include Aws::Structure end # Contains the parameters for CopyImage. # # @!attribute [rw] client_token # Unique, case-sensitive identifier you provide to ensure idempotency # of the request. For more information, see [Ensuring idempotency][1] # in the *Amazon EC2 API Reference*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] description # A description for the new AMI in the destination Region. # @return [String] # # @!attribute [rw] encrypted # Specifies whether the destination snapshots of the copied image # should be encrypted. You can encrypt a copy of an unencrypted # snapshot, but you cannot create an unencrypted copy of an encrypted # snapshot. The default KMS key for Amazon EBS is used unless you # specify a non-default Key Management Service (KMS) KMS key using # `KmsKeyId`. For more information, see [Amazon EBS encryption][1] in # the *Amazon EBS User Guide*. # # # # [1]: https://docs.aws.amazon.com/ebs/latest/userguide/ebs-encryption.html # @return [Boolean] # # @!attribute [rw] kms_key_id # The identifier of the symmetric Key Management Service (KMS) KMS key # to use when creating encrypted volumes. If this parameter is not # specified, your Amazon Web Services managed KMS key for Amazon EBS # is used. If you specify a KMS key, you must also set the encrypted # state to `true`. # # You can specify a KMS key using any of the following: # # * Key ID. For example, 1234abcd-12ab-34cd-56ef-1234567890ab. # # * Key alias. For example, alias/ExampleAlias. # # * Key ARN. For example, # arn:aws:kms:us-east-1:012345678910:key/1234abcd-12ab-34cd-56ef-1234567890ab. # # * Alias ARN. For example, # arn:aws:kms:us-east-1:012345678910:alias/ExampleAlias. # # Amazon Web Services authenticates the KMS key asynchronously. # Therefore, if you specify an identifier that is not valid, the # action can appear to complete, but eventually fails. # # The specified KMS key must exist in the destination Region. # # Amazon EBS does not support asymmetric KMS keys. # @return [String] # # @!attribute [rw] name # The name of the new AMI in the destination Region. # @return [String] # # @!attribute [rw] source_image_id # The ID of the AMI to copy. # @return [String] # # @!attribute [rw] source_region # The name of the Region that contains the AMI to copy. # @return [String] # # @!attribute [rw] destination_outpost_arn # The Amazon Resource Name (ARN) of the Outpost to which to copy the # AMI. Only specify this parameter when copying an AMI from an Amazon # Web Services Region to an Outpost. The AMI must be in the Region of # the destination Outpost. You cannot copy an AMI from an Outpost to a # Region, from one Outpost to another, or within the same Outpost. # # For more information, see [Copy AMIs from an Amazon Web Services # Region to an Outpost][1] in the *Amazon EBS User Guide*. # # # # [1]: https://docs.aws.amazon.com/ebs/latest/userguide/snapshots-outposts.html#copy-amis # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] copy_image_tags # Indicates whether to include your user-defined AMI tags when copying # the AMI. # # The following tags will not be copied: # # * System tags (prefixed with `aws:`) # # * For public and shared AMIs, user-defined tags that are attached by # other Amazon Web Services accounts # # Default: Your user-defined AMI tags are not copied. # @return [Boolean] # # @!attribute [rw] tag_specifications # The tags to apply to the new AMI and new snapshots. You can tag the # AMI, the snapshots, or both. # # * To tag the new AMI, the value for `ResourceType` must be `image`. # # * To tag the new snapshots, the value for `ResourceType` must be # `snapshot`. The same tag is applied to all the new snapshots. # # If you specify other values for `ResourceType`, the request fails. # # To tag an AMI or snapshot after it has been created, see # [CreateTags][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateTags.html # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CopyImageRequest AWS API Documentation # class CopyImageRequest < Struct.new( :client_token, :description, :encrypted, :kms_key_id, :name, :source_image_id, :source_region, :destination_outpost_arn, :dry_run, :copy_image_tags, :tag_specifications) SENSITIVE = [] include Aws::Structure end # Contains the output of CopyImage. # # @!attribute [rw] image_id # The ID of the new AMI. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CopyImageResult AWS API Documentation # class CopyImageResult < Struct.new( :image_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] description # A description for the EBS snapshot. # @return [String] # # @!attribute [rw] destination_outpost_arn # The Amazon Resource Name (ARN) of the Outpost to which to copy the # snapshot. Only specify this parameter when copying a snapshot from # an Amazon Web Services Region to an Outpost. The snapshot must be in # the Region for the destination Outpost. You cannot copy a snapshot # from an Outpost to a Region, from one Outpost to another, or within # the same Outpost. # # For more information, see [ Copy snapshots from an Amazon Web # Services Region to an Outpost][1] in the *Amazon EBS User Guide*. # # # # [1]: https://docs.aws.amazon.com/ebs/latest/userguide/snapshots-outposts.html#copy-snapshots # @return [String] # # @!attribute [rw] destination_region # The destination Region to use in the `PresignedUrl` parameter of a # snapshot copy operation. This parameter is only valid for specifying # the destination Region in a `PresignedUrl` parameter, where it is # required. # # The snapshot copy is sent to the regional endpoint that you sent the # HTTP request to (for example, `ec2.us-east-1.amazonaws.com`). With # the CLI, this is specified using the `--region` parameter or the # default Region in your Amazon Web Services configuration file. # @return [String] # # @!attribute [rw] encrypted # To encrypt a copy of an unencrypted snapshot if encryption by # default is not enabled, enable encryption using this parameter. # Otherwise, omit this parameter. Encrypted snapshots are encrypted, # even if you omit this parameter and encryption by default is not # enabled. You cannot set this parameter to false. For more # information, see [Amazon EBS encryption][1] in the *Amazon EBS User # Guide*. # # # # [1]: https://docs.aws.amazon.com/ebs/latest/userguide/ebs-encryption.html # @return [Boolean] # # @!attribute [rw] kms_key_id # The identifier of the Key Management Service (KMS) KMS key to use # for Amazon EBS encryption. If this parameter is not specified, your # KMS key for Amazon EBS is used. If `KmsKeyId` is specified, the # encrypted state must be `true`. # # You can specify the KMS key using any of the following: # # * Key ID. For example, 1234abcd-12ab-34cd-56ef-1234567890ab. # # * Key alias. For example, alias/ExampleAlias. # # * Key ARN. For example, # arn:aws:kms:us-east-1:012345678910:key/1234abcd-12ab-34cd-56ef-1234567890ab. # # * Alias ARN. For example, # arn:aws:kms:us-east-1:012345678910:alias/ExampleAlias. # # Amazon Web Services authenticates the KMS key asynchronously. # Therefore, if you specify an ID, alias, or ARN that is not valid, # the action can appear to complete, but eventually fails. # @return [String] # # @!attribute [rw] presigned_url # When you copy an encrypted source snapshot using the Amazon EC2 # Query API, you must supply a pre-signed URL. This parameter is # optional for unencrypted snapshots. For more information, see [Query # requests][1]. # # The `PresignedUrl` should use the snapshot source endpoint, the # `CopySnapshot` action, and include the `SourceRegion`, # `SourceSnapshotId`, and `DestinationRegion` parameters. The # `PresignedUrl` must be signed using Amazon Web Services Signature # Version 4. Because EBS snapshots are stored in Amazon S3, the # signing algorithm for this parameter uses the same logic that is # described in [Authenticating Requests: Using Query Parameters # (Amazon Web Services Signature Version 4)][2] in the *Amazon Simple # Storage Service API Reference*. An invalid or improperly signed # `PresignedUrl` will cause the copy operation to fail asynchronously, # and the snapshot will move to an `error` state. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html # [2]: https://docs.aws.amazon.com/AmazonS3/latest/API/sigv4-query-string-auth.html # @return [String] # # @!attribute [rw] source_region # The ID of the Region that contains the snapshot to be copied. # @return [String] # # @!attribute [rw] source_snapshot_id # The ID of the EBS snapshot to copy. # @return [String] # # @!attribute [rw] tag_specifications # The tags to apply to the new snapshot. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CopySnapshotRequest AWS API Documentation # class CopySnapshotRequest < Struct.new( :description, :destination_outpost_arn, :destination_region, :encrypted, :kms_key_id, :presigned_url, :source_region, :source_snapshot_id, :tag_specifications, :dry_run) SENSITIVE = [:presigned_url] include Aws::Structure end # @!attribute [rw] snapshot_id # The ID of the new snapshot. # @return [String] # # @!attribute [rw] tags # Any tags applied to the new snapshot. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CopySnapshotResult AWS API Documentation # class CopySnapshotResult < Struct.new( :snapshot_id, :tags) SENSITIVE = [] include Aws::Structure end # The CPU options for the instance. # # @!attribute [rw] core_count # The number of CPU cores for the instance. # @return [Integer] # # @!attribute [rw] threads_per_core # The number of threads per CPU core. # @return [Integer] # # @!attribute [rw] amd_sev_snp # Indicates whether the instance is enabled for AMD SEV-SNP. For more # information, see [AMD SEV-SNP][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/sev-snp.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CpuOptions AWS API Documentation # class CpuOptions < Struct.new( :core_count, :threads_per_core, :amd_sev_snp) SENSITIVE = [] include Aws::Structure end # The CPU options for the instance. Both the core count and threads per # core must be specified in the request. # # @!attribute [rw] core_count # The number of CPU cores for the instance. # @return [Integer] # # @!attribute [rw] threads_per_core # 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`. # @return [Integer] # # @!attribute [rw] amd_sev_snp # 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][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/sev-snp.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CpuOptionsRequest AWS API Documentation # class CpuOptionsRequest < Struct.new( :core_count, :threads_per_core, :amd_sev_snp) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] allocation_strategy # The strategy used by the Capacity Reservation Fleet to determine # which of the specified instance types to use. Currently, only the # `prioritized` allocation strategy is supported. For more # information, see [ Allocation strategy][1] in the Amazon EC2 User # Guide. # # Valid values: `prioritized` # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/crfleet-concepts.html#allocation-strategy # @return [String] # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. For more information, see [Ensure # Idempotency][1]. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] instance_type_specifications # Information about the instance types for which to reserve the # capacity. # @return [Array] # # @!attribute [rw] tenancy # Indicates the tenancy of the Capacity Reservation Fleet. All # Capacity Reservations in the Fleet inherit this tenancy. The # Capacity Reservation Fleet can have one of the following tenancy # settings: # # * `default` - The Capacity Reservation Fleet is created on hardware # that is shared with other Amazon Web Services accounts. # # * `dedicated` - The Capacity Reservations are created on # single-tenant hardware that is dedicated to a single Amazon Web # Services account. # @return [String] # # @!attribute [rw] total_target_capacity # The total number of capacity units to be reserved by the Capacity # Reservation Fleet. This value, together with the instance type # weights that you assign to each instance type used by 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][1] in # the Amazon EC2 User Guide. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/crfleet-concepts.html#target-capacity # @return [Integer] # # @!attribute [rw] end_date # The date and time at which the Capacity Reservation Fleet expires. # When the Capacity Reservation Fleet expires, its state changes to # `expired` and all of the Capacity Reservations in the Fleet expire. # # The Capacity Reservation Fleet expires within an hour after the # specified time. For example, if you specify `5/31/2019`, `13:30:55`, # the Capacity Reservation Fleet is guaranteed to expire between # `13:30:55` and `14:30:55` on `5/31/2019`. # @return [Time] # # @!attribute [rw] instance_match_criteria # 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. # @return [String] # # @!attribute [rw] tag_specifications # The tags to assign to the Capacity Reservation Fleet. The tags are # automatically assigned to the Capacity Reservations in the Fleet. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateCapacityReservationFleetRequest AWS API Documentation # class CreateCapacityReservationFleetRequest < Struct.new( :allocation_strategy, :client_token, :instance_type_specifications, :tenancy, :total_target_capacity, :end_date, :instance_match_criteria, :tag_specifications, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] capacity_reservation_fleet_id # The ID of the Capacity Reservation Fleet. # @return [String] # # @!attribute [rw] state # The status of the Capacity Reservation Fleet. # @return [String] # # @!attribute [rw] total_target_capacity # The total number of capacity units for which the Capacity # Reservation Fleet reserves capacity. # @return [Integer] # # @!attribute [rw] total_fulfilled_capacity # The requested capacity units that have been successfully reserved. # @return [Float] # # @!attribute [rw] instance_match_criteria # The instance matching criteria for the Capacity Reservation Fleet. # @return [String] # # @!attribute [rw] allocation_strategy # The allocation strategy used by the Capacity Reservation Fleet. # @return [String] # # @!attribute [rw] create_time # The date and time at which the Capacity Reservation Fleet was # created. # @return [Time] # # @!attribute [rw] end_date # The date and time at which the Capacity Reservation Fleet expires. # @return [Time] # # @!attribute [rw] tenancy # Indicates the tenancy of Capacity Reservation Fleet. # @return [String] # # @!attribute [rw] fleet_capacity_reservations # Information about the individual Capacity Reservations in the # Capacity Reservation Fleet. # @return [Array] # # @!attribute [rw] tags # The tags assigned to the Capacity Reservation Fleet. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateCapacityReservationFleetResult AWS API Documentation # class CreateCapacityReservationFleetResult < Struct.new( :capacity_reservation_fleet_id, :state, :total_target_capacity, :total_fulfilled_capacity, :instance_match_criteria, :allocation_strategy, :create_time, :end_date, :tenancy, :fleet_capacity_reservations, :tags) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. For more information, see [Ensure # Idempotency][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] instance_type # The instance type for which to reserve capacity. For more # information, see [Instance types][1] in the *Amazon EC2 User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html # @return [String] # # @!attribute [rw] instance_platform # The type of operating system for which to reserve capacity. # @return [String] # # @!attribute [rw] availability_zone # The Availability Zone in which to create the Capacity Reservation. # @return [String] # # @!attribute [rw] availability_zone_id # The ID of the Availability Zone in which to create the Capacity # Reservation. # @return [String] # # @!attribute [rw] tenancy # 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. # @return [String] # # @!attribute [rw] instance_count # The number of instances for which to reserve capacity. # # Valid range: 1 - 1000 # @return [Integer] # # @!attribute [rw] ebs_optimized # 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. # @return [Boolean] # # @!attribute [rw] ephemeral_storage # *Deprecated.* # @return [Boolean] # # @!attribute [rw] end_date # 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. # # You must provide an `EndDate` value if `EndDateType` is `limited`. # Omit `EndDate` if `EndDateType` is `unlimited`. # # If the `EndDateType` is `limited`, the Capacity Reservation is # cancelled within an hour from the specified time. For example, if # you specify 5/31/2019, 13:30:55, the Capacity Reservation is # guaranteed to end between 13:30:55 and 14:30:55 on 5/31/2019. # @return [Time] # # @!attribute [rw] end_date_type # 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. Do not provide an `EndDate` if the # `EndDateType` is `unlimited`. # # * `limited` - The Capacity Reservation expires automatically at a # specified date and time. You must provide an `EndDate` value if # the `EndDateType` value is `limited`. # @return [String] # # @!attribute [rw] instance_match_criteria # Indicates the type of instance launches that the Capacity # Reservation accepts. The options include: # # * `open` - The Capacity Reservation automatically matches all # instances that have matching attributes (instance type, platform, # and Availability Zone). Instances that have matching attributes # run in 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. # # Default: `open` # @return [String] # # @!attribute [rw] tag_specifications # The tags to apply to the Capacity Reservation during launch. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] outpost_arn # The Amazon Resource Name (ARN) of the Outpost on which to create the # Capacity Reservation. # @return [String] # # @!attribute [rw] placement_group_arn # The Amazon Resource Name (ARN) of the cluster placement group in # which to create the Capacity Reservation. For more information, see # [ Capacity Reservations for cluster placement groups][1] in the # *Amazon EC2 User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/cr-cpg.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateCapacityReservationRequest AWS API Documentation # class CreateCapacityReservationRequest < Struct.new( :client_token, :instance_type, :instance_platform, :availability_zone, :availability_zone_id, :tenancy, :instance_count, :ebs_optimized, :ephemeral_storage, :end_date, :end_date_type, :instance_match_criteria, :tag_specifications, :dry_run, :outpost_arn, :placement_group_arn) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] capacity_reservation # Information about the Capacity Reservation. # @return [Types::CapacityReservation] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateCapacityReservationResult AWS API Documentation # class CreateCapacityReservationResult < Struct.new( :capacity_reservation) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] vpc_id # The ID of the VPC to associate with the carrier gateway. # @return [String] # # @!attribute [rw] tag_specifications # The tags to associate with the carrier gateway. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. For more information, see [How to ensure # idempotency][1]. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Run_Instance_Idempotency.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateCarrierGatewayRequest AWS API Documentation # class CreateCarrierGatewayRequest < Struct.new( :vpc_id, :tag_specifications, :dry_run, :client_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] carrier_gateway # Information about the carrier gateway. # @return [Types::CarrierGateway] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateCarrierGatewayResult AWS API Documentation # class CreateCarrierGatewayResult < Struct.new( :carrier_gateway) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] client_cidr_block # The IPv4 address range, in CIDR notation, from which to assign # client IP addresses. The address range cannot overlap with the local # CIDR of the VPC in which the associated subnet is located, or the # routes that you add manually. The address range cannot be changed # after the Client VPN endpoint has been created. Client CIDR range # must have a size of at least /22 and must not be greater than /12. # @return [String] # # @!attribute [rw] server_certificate_arn # The ARN of the server certificate. For more information, see the # [Certificate Manager User Guide][1]. # # # # [1]: https://docs.aws.amazon.com/acm/latest/userguide/ # @return [String] # # @!attribute [rw] authentication_options # Information about the authentication method to be used to # authenticate clients. # @return [Array] # # @!attribute [rw] connection_log_options # Information about the client connection logging options. # # If you enable client connection logging, data about client # connections is sent to a Cloudwatch Logs log stream. The following # information is logged: # # * Client connection requests # # * Client connection results (successful and unsuccessful) # # * Reasons for unsuccessful client connection requests # # * Client connection termination time # @return [Types::ConnectionLogOptions] # # @!attribute [rw] dns_servers # Information about the DNS servers to be used for DNS resolution. A # Client VPN endpoint can have up to two DNS servers. If no DNS server # is specified, the DNS address configured on the device is used for # the DNS server. # @return [Array] # # @!attribute [rw] transport_protocol # The transport protocol to be used by the VPN session. # # Default value: `udp` # @return [String] # # @!attribute [rw] vpn_port # The port number to assign to the Client VPN endpoint for TCP and UDP # traffic. # # Valid Values: `443` \| `1194` # # Default Value: `443` # @return [Integer] # # @!attribute [rw] description # A brief description of the Client VPN endpoint. # @return [String] # # @!attribute [rw] split_tunnel # Indicates whether split-tunnel is enabled on the Client VPN # endpoint. # # By default, split-tunnel on a VPN endpoint is disabled. # # For information about split-tunnel VPN endpoints, see [Split-tunnel # Client VPN endpoint][1] in the *Client VPN Administrator Guide*. # # # # [1]: https://docs.aws.amazon.com/vpn/latest/clientvpn-admin/split-tunnel-vpn.html # @return [Boolean] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. For more information, see [How to ensure # idempotency][1]. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] tag_specifications # The tags to apply to the Client VPN endpoint during creation. # @return [Array] # # @!attribute [rw] security_group_ids # The IDs of one or more security groups to apply to the target # network. You must also specify the ID of the VPC that contains the # security groups. # @return [Array] # # @!attribute [rw] vpc_id # The ID of the VPC to associate with the Client VPN endpoint. If no # security group IDs are specified in the request, the default # security group for the VPC is applied. # @return [String] # # @!attribute [rw] self_service_portal # Specify whether to enable the self-service portal for the Client VPN # endpoint. # # Default Value: `enabled` # @return [String] # # @!attribute [rw] client_connect_options # The options for managing connection authorization for new client # connections. # @return [Types::ClientConnectOptions] # # @!attribute [rw] session_timeout_hours # The maximum VPN session duration time in hours. # # Valid values: `8 | 10 | 12 | 24` # # Default value: `24` # @return [Integer] # # @!attribute [rw] client_login_banner_options # Options for enabling a customizable text banner that will be # displayed on Amazon Web Services provided clients when a VPN session # is established. # @return [Types::ClientLoginBannerOptions] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateClientVpnEndpointRequest AWS API Documentation # class CreateClientVpnEndpointRequest < Struct.new( :client_cidr_block, :server_certificate_arn, :authentication_options, :connection_log_options, :dns_servers, :transport_protocol, :vpn_port, :description, :split_tunnel, :dry_run, :client_token, :tag_specifications, :security_group_ids, :vpc_id, :self_service_portal, :client_connect_options, :session_timeout_hours, :client_login_banner_options) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] client_vpn_endpoint_id # The ID of the Client VPN endpoint. # @return [String] # # @!attribute [rw] status # The current state of the Client VPN endpoint. # @return [Types::ClientVpnEndpointStatus] # # @!attribute [rw] dns_name # The DNS name to be used by clients when establishing their VPN # session. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateClientVpnEndpointResult AWS API Documentation # class CreateClientVpnEndpointResult < Struct.new( :client_vpn_endpoint_id, :status, :dns_name) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] client_vpn_endpoint_id # The ID of the Client VPN endpoint to which to add the route. # @return [String] # # @!attribute [rw] destination_cidr_block # The IPv4 address range, in CIDR notation, of the route destination. # For example: # # * To add a route for Internet access, enter `0.0.0.0/0` # # * To add a route for a peered VPC, enter the peered VPC's IPv4 CIDR # range # # * To add a route for an on-premises network, enter the Amazon Web # Services Site-to-Site VPN connection's IPv4 CIDR range # # * To add a route for the local network, enter the client CIDR range # @return [String] # # @!attribute [rw] target_vpc_subnet_id # The ID of the subnet through which you want to route traffic. The # specified subnet must be an existing target network of the Client # VPN endpoint. # # Alternatively, if you're adding a route for the local network, # specify `local`. # @return [String] # # @!attribute [rw] description # A brief description of the route. # @return [String] # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. For more information, see [How to ensure # idempotency][1]. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateClientVpnRouteRequest AWS API Documentation # class CreateClientVpnRouteRequest < Struct.new( :client_vpn_endpoint_id, :destination_cidr_block, :target_vpc_subnet_id, :description, :client_token, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] status # The current state of the route. # @return [Types::ClientVpnRouteStatus] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateClientVpnRouteResult AWS API Documentation # class CreateClientVpnRouteResult < Struct.new( :status) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cidr # A customer-owned IP address range to create. # @return [String] # # @!attribute [rw] coip_pool_id # The ID of the address pool. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateCoipCidrRequest AWS API Documentation # class CreateCoipCidrRequest < Struct.new( :cidr, :coip_pool_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] coip_cidr # Information about a range of customer-owned IP addresses. # @return [Types::CoipCidr] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateCoipCidrResult AWS API Documentation # class CreateCoipCidrResult < Struct.new( :coip_cidr) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] local_gateway_route_table_id # The ID of the local gateway route table. # @return [String] # # @!attribute [rw] tag_specifications # The tags to assign to the CoIP address pool. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateCoipPoolRequest AWS API Documentation # class CreateCoipPoolRequest < Struct.new( :local_gateway_route_table_id, :tag_specifications, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] coip_pool # Information about the CoIP address pool. # @return [Types::CoipPool] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateCoipPoolResult AWS API Documentation # class CreateCoipPoolResult < Struct.new( :coip_pool) SENSITIVE = [] include Aws::Structure end # Contains the parameters for CreateCustomerGateway. # # @!attribute [rw] bgp_asn # For devices that support BGP, the customer gateway's BGP ASN. # # Default: 65000 # @return [Integer] # # @!attribute [rw] public_ip # *This member has been deprecated.* The Internet-routable IP address # for the customer gateway's outside interface. The address must be # static. # @return [String] # # @!attribute [rw] certificate_arn # The Amazon Resource Name (ARN) for the customer gateway certificate. # @return [String] # # @!attribute [rw] type # The type of VPN connection that this customer gateway supports # (`ipsec.1`). # @return [String] # # @!attribute [rw] tag_specifications # The tags to apply to the customer gateway. # @return [Array] # # @!attribute [rw] device_name # A name for the customer gateway device. # # Length Constraints: Up to 255 characters. # @return [String] # # @!attribute [rw] ip_address # IPv4 address for the customer gateway device's outside interface. # The address must be static. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateCustomerGatewayRequest AWS API Documentation # class CreateCustomerGatewayRequest < Struct.new( :bgp_asn, :public_ip, :certificate_arn, :type, :tag_specifications, :device_name, :ip_address, :dry_run) SENSITIVE = [] include Aws::Structure end # Contains the output of CreateCustomerGateway. # # @!attribute [rw] customer_gateway # Information about the customer gateway. # @return [Types::CustomerGateway] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateCustomerGatewayResult AWS API Documentation # class CreateCustomerGatewayResult < Struct.new( :customer_gateway) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] availability_zone # The Availability Zone in which to create the default subnet. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] ipv_6_native # Indicates whether to create an IPv6 only subnet. If you already have # a default subnet for this Availability Zone, you must delete it # before you can create an IPv6 only subnet. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateDefaultSubnetRequest AWS API Documentation # class CreateDefaultSubnetRequest < Struct.new( :availability_zone, :dry_run, :ipv_6_native) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] subnet # Information about the subnet. # @return [Types::Subnet] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateDefaultSubnetResult AWS API Documentation # class CreateDefaultSubnetResult < Struct.new( :subnet) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateDefaultVpcRequest AWS API Documentation # class CreateDefaultVpcRequest < Struct.new( :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] vpc # Information about the VPC. # @return [Types::Vpc] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateDefaultVpcResult AWS API Documentation # class CreateDefaultVpcResult < Struct.new( :vpc) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dhcp_configurations # A DHCP configuration option. # @return [Array] # # @!attribute [rw] tag_specifications # The tags to assign to the DHCP option. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateDhcpOptionsRequest AWS API Documentation # class CreateDhcpOptionsRequest < Struct.new( :dhcp_configurations, :tag_specifications, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dhcp_options # A set of DHCP options. # @return [Types::DhcpOptions] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateDhcpOptionsResult AWS API Documentation # class CreateDhcpOptionsResult < Struct.new( :dhcp_options) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. For more information, see [Ensuring # idempotency][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] vpc_id # The ID of the VPC for which to create the egress-only internet # gateway. # @return [String] # # @!attribute [rw] tag_specifications # The tags to assign to the egress-only internet gateway. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateEgressOnlyInternetGatewayRequest AWS API Documentation # class CreateEgressOnlyInternetGatewayRequest < Struct.new( :client_token, :dry_run, :vpc_id, :tag_specifications) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. # @return [String] # # @!attribute [rw] egress_only_internet_gateway # Information about the egress-only internet gateway. # @return [Types::EgressOnlyInternetGateway] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateEgressOnlyInternetGatewayResult AWS API Documentation # class CreateEgressOnlyInternetGatewayResult < Struct.new( :client_token, :egress_only_internet_gateway) SENSITIVE = [] include Aws::Structure end # Describes the instances that could not be launched by the fleet. # # @!attribute [rw] launch_template_and_overrides # 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. # @return [Types::LaunchTemplateAndOverridesResponse] # # @!attribute [rw] lifecycle # Indicates if the instance that could not be launched was a Spot # Instance or On-Demand Instance. # @return [String] # # @!attribute [rw] error_code # The error code that indicates why the instance could not be # launched. For more information about error codes, see [Error # codes][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/errors-overview.html # @return [String] # # @!attribute [rw] error_message # The error message that describes why the instance could not be # launched. For more information about error messages, see [Error # codes][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/errors-overview.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateFleetError AWS API Documentation # class CreateFleetError < Struct.new( :launch_template_and_overrides, :lifecycle, :error_code, :error_message) SENSITIVE = [] include Aws::Structure end # Describes the instances that were launched by the fleet. # # @!attribute [rw] launch_template_and_overrides # 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. # @return [Types::LaunchTemplateAndOverridesResponse] # # @!attribute [rw] lifecycle # Indicates if the instance that was launched is a Spot Instance or # On-Demand Instance. # @return [String] # # @!attribute [rw] instance_ids # The IDs of the instances. # @return [Array] # # @!attribute [rw] instance_type # The instance type. # @return [String] # # @!attribute [rw] platform # The value is `Windows` for Windows instances. Otherwise, the value # is blank. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateFleetInstance AWS API Documentation # class CreateFleetInstance < Struct.new( :launch_template_and_overrides, :lifecycle, :instance_ids, :instance_type, :platform) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. For more information, see [Ensuring # idempotency][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] spot_options # Describes the configuration of Spot Instances in an EC2 Fleet. # @return [Types::SpotOptionsRequest] # # @!attribute [rw] on_demand_options # Describes the configuration of On-Demand Instances in an EC2 Fleet. # @return [Types::OnDemandOptionsRequest] # # @!attribute [rw] excess_capacity_termination_policy # Indicates whether running instances should be terminated if the # total target capacity of the EC2 Fleet is decreased below the # current size of the EC2 Fleet. # # Supported only for fleets of type `maintain`. # @return [String] # # @!attribute [rw] launch_template_configs # The configuration for the EC2 Fleet. # @return [Array] # # @!attribute [rw] target_capacity_specification # The number of units to request. # @return [Types::TargetCapacitySpecificationRequest] # # @!attribute [rw] terminate_instances_with_expiration # Indicates whether running instances should be terminated when the # EC2 Fleet expires. # @return [Boolean] # # @!attribute [rw] type # The fleet type. The default value is `maintain`. # # * `maintain` - The EC2 Fleet places an asynchronous request for your # desired capacity, and continues to maintain your desired Spot # capacity by replenishing interrupted Spot Instances. # # * `request` - The EC2 Fleet places an asynchronous one-time request # for your desired capacity, but does submit Spot requests in # alternative capacity pools if Spot capacity is unavailable, and # does not maintain Spot capacity if Spot Instances are interrupted. # # * `instant` - The EC2 Fleet places a synchronous one-time request # for your desired capacity, and returns errors for any instances # that could not be launched. # # For more information, see [EC2 Fleet request types][1] in the # *Amazon EC2 User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-request-type.html # @return [String] # # @!attribute [rw] valid_from # The start date and time of the request, in UTC format (for example, # *YYYY*-*MM*-*DD*T*HH*:*MM*:*SS*Z). The default is to start # fulfilling the request immediately. # @return [Time] # # @!attribute [rw] valid_until # The end date and time of the request, in UTC format (for example, # *YYYY*-*MM*-*DD*T*HH*:*MM*:*SS*Z). At this point, no new EC2 Fleet # requests are placed or able to fulfill the request. If no value is # specified, the request remains until you cancel it. # @return [Time] # # @!attribute [rw] replace_unhealthy_instances # Indicates whether EC2 Fleet should replace unhealthy Spot Instances. # Supported only for fleets of type `maintain`. For more information, # see [EC2 Fleet health checks][1] in the *Amazon EC2 User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/manage-ec2-fleet.html#ec2-fleet-health-checks # @return [Boolean] # # @!attribute [rw] tag_specifications # The key-value pair for tagging the EC2 Fleet request on creation. # For more information, see [Tag your resources][1]. # # If the fleet type is `instant`, specify a resource type of `fleet` # to tag the fleet or `instance` to tag the instances at launch. # # If the fleet type is `maintain` or `request`, specify a resource # type of `fleet` to tag the fleet. You cannot specify a resource type # of `instance`. To tag instances at launch, specify the tags in a # [launch template][2]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#tag-resources # [2]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html#create-launch-template # @return [Array] # # @!attribute [rw] context # Reserved. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateFleetRequest AWS API Documentation # class CreateFleetRequest < Struct.new( :dry_run, :client_token, :spot_options, :on_demand_options, :excess_capacity_termination_policy, :launch_template_configs, :target_capacity_specification, :terminate_instances_with_expiration, :type, :valid_from, :valid_until, :replace_unhealthy_instances, :tag_specifications, :context) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] fleet_id # The ID of the EC2 Fleet. # @return [String] # # @!attribute [rw] errors # Information about the instances that could not be launched by the # fleet. Supported only for fleets of type `instant`. # @return [Array] # # @!attribute [rw] instances # Information about the instances that were launched by the fleet. # Supported only for fleets of type `instant`. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateFleetResult AWS API Documentation # class CreateFleetResult < Struct.new( :fleet_id, :errors, :instances) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. For more information, see [How to ensure # idempotency][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] deliver_logs_permission_arn # The ARN of the IAM role that allows Amazon EC2 to publish flow logs # to the log destination. # # This parameter is required if the destination type is # `cloud-watch-logs`, or if the destination type is # `kinesis-data-firehose` and the delivery stream and the resources to # monitor are in different accounts. # @return [String] # # @!attribute [rw] deliver_cross_account_role # The ARN of the IAM role that allows Amazon EC2 to publish flow logs # across accounts. # @return [String] # # @!attribute [rw] log_group_name # The name of a new or existing CloudWatch Logs log group where Amazon # EC2 publishes your flow logs. # # This parameter is valid only if the destination type is # `cloud-watch-logs`. # @return [String] # # @!attribute [rw] resource_ids # The IDs of the resources to monitor. For example, if the resource # type is `VPC`, specify the IDs of the VPCs. # # Constraints: Maximum of 25 for transit gateway resource types. # Maximum of 1000 for the other resource types. # @return [Array] # # @!attribute [rw] resource_type # The type of resource to monitor. # @return [String] # # @!attribute [rw] traffic_type # The type of traffic to monitor (accepted traffic, rejected traffic, # or all traffic). This parameter is not supported for transit gateway # resource types. It is required for the other resource types. # @return [String] # # @!attribute [rw] log_destination_type # The type of destination for the flow log data. # # Default: `cloud-watch-logs` # @return [String] # # @!attribute [rw] log_destination # The destination for the flow log data. The meaning of this parameter # depends on the destination type. # # * If the destination type is `cloud-watch-logs`, specify the ARN of # a CloudWatch Logs log group. For example: # # arn:aws:logs:*region*:*account\_id*:log-group:*my\_group* # # Alternatively, use the `LogGroupName` parameter. # # * If the destination type is `s3`, specify the ARN of an S3 bucket. # For example: # # arn:aws:s3:::*my\_bucket*/*my\_subfolder*/ # # The subfolder is optional. Note that you can't use `AWSLogs` as a # subfolder name. # # * If the destination type is `kinesis-data-firehose`, specify the # ARN of a Kinesis Data Firehose delivery stream. For example: # # arn:aws:firehose:*region*:*account\_id*:deliverystream:*my\_stream* # @return [String] # # @!attribute [rw] log_format # The fields to include in the flow log record. List the fields in the # order in which they should appear. If you omit this parameter, the # flow log is created using the default format. If you specify this # parameter, you must include at least one field. For more information # about the available fields, see [Flow log records][1] in the *Amazon # VPC User Guide* or [Transit Gateway Flow Log records][2] in the # *Amazon Web Services Transit Gateway Guide*. # # Specify the fields using the `$\{field-id\}` format, separated by # spaces. # # # # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/flow-logs.html#flow-log-records # [2]: https://docs.aws.amazon.com/vpc/latest/tgw/tgw-flow-logs.html#flow-log-records # @return [String] # # @!attribute [rw] tag_specifications # The tags to apply to the flow logs. # @return [Array] # # @!attribute [rw] max_aggregation_interval # The maximum interval of time during which a flow of packets is # captured and aggregated into a flow log record. The possible values # are 60 seconds (1 minute) or 600 seconds (10 minutes). This # parameter must be 60 seconds for transit gateway resource types. # # When a network interface is attached to a [Nitro-based instance][1], # the aggregation interval is always 60 seconds or less, regardless of # the value that you specify. # # Default: 600 # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#ec2-nitro-instances # @return [Integer] # # @!attribute [rw] destination_options # The destination options. # @return [Types::DestinationOptionsRequest] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateFlowLogsRequest AWS API Documentation # class CreateFlowLogsRequest < Struct.new( :dry_run, :client_token, :deliver_logs_permission_arn, :deliver_cross_account_role, :log_group_name, :resource_ids, :resource_type, :traffic_type, :log_destination_type, :log_destination, :log_format, :tag_specifications, :max_aggregation_interval, :destination_options) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. # @return [String] # # @!attribute [rw] flow_log_ids # The IDs of the flow logs. # @return [Array] # # @!attribute [rw] unsuccessful # Information about the flow logs that could not be created # successfully. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateFlowLogsResult AWS API Documentation # class CreateFlowLogsResult < Struct.new( :client_token, :flow_log_ids, :unsuccessful) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] input_storage_location # The location of the encrypted design checkpoint in Amazon S3. The # input must be a tarball. # @return [Types::StorageLocation] # # @!attribute [rw] logs_storage_location # The location in Amazon S3 for the output logs. # @return [Types::StorageLocation] # # @!attribute [rw] description # A description for the AFI. # @return [String] # # @!attribute [rw] name # A name for the AFI. # @return [String] # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. For more information, see [Ensuring # Idempotency][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] tag_specifications # The tags to apply to the FPGA image during creation. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateFpgaImageRequest AWS API Documentation # class CreateFpgaImageRequest < Struct.new( :dry_run, :input_storage_location, :logs_storage_location, :description, :name, :client_token, :tag_specifications) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] fpga_image_id # The FPGA image identifier (AFI ID). # @return [String] # # @!attribute [rw] fpga_image_global_id # The global FPGA image identifier (AGFI ID). # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateFpgaImageResult AWS API Documentation # class CreateFpgaImageResult < Struct.new( :fpga_image_id, :fpga_image_global_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] block_device_mappings # The block device mappings. # # When using the CreateImage action: # # * You can't change the volume size using the VolumeSize parameter. # If you want a different volume size, you must first change the # volume size of the source instance. # # * You can't modify the encryption status of existing volumes or # snapshots. To create an AMI with volumes or snapshots that have a # different encryption status (for example, where the source volume # and snapshots are unencrypted, and you want to create an AMI with # encrypted volumes or snapshots), use the CopyImage action. # # * The only option that can be changed for existing mappings or # snapshots is `DeleteOnTermination`. # @return [Array] # # @!attribute [rw] description # A description for the new image. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] instance_id # The ID of the instance. # @return [String] # # @!attribute [rw] name # A name for the new image. # # Constraints: 3-128 alphanumeric characters, parentheses (()), square # brackets (\[\]), spaces ( ), periods (.), slashes (/), dashes (-), # single quotes ('), at-signs (@), or underscores(\_) # @return [String] # # @!attribute [rw] no_reboot # Indicates whether or not the instance should be automatically # rebooted before creating the image. Specify one of the following # values: # # * `true` - The instance is not rebooted before creating the image. # This creates crash-consistent snapshots that include only the data # that has been written to the volumes at the time the snapshots are # created. Buffered data and data in memory that has not yet been # written to the volumes is not included in the snapshots. # # * `false` - The instance is rebooted before creating the image. This # ensures that all buffered data and data in memory is written to # the volumes before the snapshots are created. # # Default: `false` # @return [Boolean] # # @!attribute [rw] tag_specifications # The tags to apply to the AMI and snapshots on creation. You can tag # the AMI, the snapshots, or both. # # * To tag the AMI, the value for `ResourceType` must be `image`. # # * To tag the snapshots that are created of the root volume and of # other Amazon EBS volumes that are attached to the instance, the # value for `ResourceType` must be `snapshot`. The same tag is # applied to all of the snapshots that are created. # # If you specify other values for `ResourceType`, the request fails. # # To tag an AMI or snapshot after it has been created, see # [CreateTags][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateTags.html # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateImageRequest AWS API Documentation # class CreateImageRequest < Struct.new( :block_device_mappings, :description, :dry_run, :instance_id, :name, :no_reboot, :tag_specifications) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] image_id # The ID of the new AMI. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateImageResult AWS API Documentation # class CreateImageResult < Struct.new( :image_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] subnet_id # The ID of the subnet in which to create the EC2 Instance Connect # Endpoint. # @return [String] # # @!attribute [rw] security_group_ids # One or more security groups to associate with the endpoint. If you # don't specify a security group, the default security group for your # VPC will be associated with the endpoint. # @return [Array] # # @!attribute [rw] preserve_client_ip # 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` # @return [Boolean] # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # @return [String] # # @!attribute [rw] tag_specifications # The tags to apply to the EC2 Instance Connect Endpoint during # creation. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateInstanceConnectEndpointRequest AWS API Documentation # class CreateInstanceConnectEndpointRequest < Struct.new( :dry_run, :subnet_id, :security_group_ids, :preserve_client_ip, :client_token, :tag_specifications) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] instance_connect_endpoint # Information about the EC2 Instance Connect Endpoint. # @return [Types::Ec2InstanceConnectEndpoint] # # @!attribute [rw] client_token # Unique, case-sensitive idempotency token provided by the client in # the the request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateInstanceConnectEndpointResult AWS API Documentation # class CreateInstanceConnectEndpointResult < Struct.new( :instance_connect_endpoint, :client_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] name # The name of the event window. # @return [String] # # @!attribute [rw] time_ranges # The time range for the event window. If you specify a time range, # you can't specify a cron expression. # @return [Array] # # @!attribute [rw] cron_expression # The cron expression for the event window, for example, `* 0-4,20-23 # * * 1,5`. If you specify a cron expression, you can't specify a # time range. # # Constraints: # # * Only hour and day of the week values are supported. # # * For day of the week values, you can specify either integers `0` # through `6`, or alternative single values `SUN` through `SAT`. # # * The minute, month, and year must be specified by `*`. # # * The hour value must be one or a multiple range, for example, `0-4` # or `0-4,20-23`. # # * Each hour range must be >= 2 hours, for example, `0-2` or # `20-23`. # # * The event window must be >= 4 hours. The combined total time # ranges in the event window must be >= 4 hours. # # For more information about cron expressions, see [cron][1] on the # *Wikipedia website*. # # # # [1]: https://en.wikipedia.org/wiki/Cron # @return [String] # # @!attribute [rw] tag_specifications # The tags to apply to the event window. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateInstanceEventWindowRequest AWS API Documentation # class CreateInstanceEventWindowRequest < Struct.new( :dry_run, :name, :time_ranges, :cron_expression, :tag_specifications) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] instance_event_window # Information about the event window. # @return [Types::InstanceEventWindow] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateInstanceEventWindowResult AWS API Documentation # class CreateInstanceEventWindowResult < Struct.new( :instance_event_window) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] description # A description for the conversion task or the resource being # exported. The maximum length is 255 characters. # @return [String] # # @!attribute [rw] export_to_s3_task # The format and location for an export instance task. # @return [Types::ExportToS3TaskSpecification] # # @!attribute [rw] instance_id # The ID of the instance. # @return [String] # # @!attribute [rw] target_environment # The target virtualization environment. # @return [String] # # @!attribute [rw] tag_specifications # The tags to apply to the export instance task during creation. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateInstanceExportTaskRequest AWS API Documentation # class CreateInstanceExportTaskRequest < Struct.new( :description, :export_to_s3_task, :instance_id, :target_environment, :tag_specifications) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] export_task # Information about the export instance task. # @return [Types::ExportTask] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateInstanceExportTaskResult AWS API Documentation # class CreateInstanceExportTaskResult < Struct.new( :export_task) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] tag_specifications # The tags to assign to the internet gateway. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateInternetGatewayRequest AWS API Documentation # class CreateInternetGatewayRequest < Struct.new( :tag_specifications, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] internet_gateway # Information about the internet gateway. # @return [Types::InternetGateway] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateInternetGatewayResult AWS API Documentation # class CreateInternetGatewayResult < Struct.new( :internet_gateway) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # A check for whether you have the required permissions for the action # without actually making the request and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] ipam_scope_id # The ID of the scope in which you would like to create the IPAM pool. # @return [String] # # @!attribute [rw] locale # In IPAM, the locale is the Amazon Web Services Region where you want # to make an IPAM pool available for allocations. Only resources in # the same Region as the locale of the pool can get IP address # allocations from the pool. You can only allocate a CIDR for a VPC, # for example, from an IPAM pool that shares a locale with the VPC’s # Region. Note that once you choose a Locale for a pool, you cannot # modify it. If you do not choose a locale, resources in Regions # others than the IPAM's home region cannot use CIDRs from this pool. # # Possible values: Any Amazon Web Services Region, such as us-east-1. # @return [String] # # @!attribute [rw] source_ipam_pool_id # The ID of the source IPAM pool. Use this option to create a pool # within an existing pool. Note that the CIDR you provision for the # pool within the source pool must be available in the source pool's # CIDR range. # @return [String] # # @!attribute [rw] description # A description for the IPAM pool. # @return [String] # # @!attribute [rw] address_family # The IP protocol assigned to this IPAM pool. You must choose either # IPv4 or IPv6 protocol for a pool. # @return [String] # # @!attribute [rw] auto_import # 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. # @return [Boolean] # # @!attribute [rw] publicly_advertisable # Determines if the pool is publicly advertisable. This option is not # available for pools with AddressFamily set to `ipv4`. # @return [Boolean] # # @!attribute [rw] allocation_min_netmask_length # 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. # @return [Integer] # # @!attribute [rw] allocation_max_netmask_length # 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. # @return [Integer] # # @!attribute [rw] allocation_default_netmask_length # 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. # @return [Integer] # # @!attribute [rw] allocation_resource_tags # 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. # @return [Array] # # @!attribute [rw] tag_specifications # 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. # @return [Array] # # @!attribute [rw] client_token # A unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. For more information, see [Ensuring # Idempotency][1]. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] aws_service # 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. # @return [String] # # @!attribute [rw] public_ip_source # 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][1] 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 if # PublicIpSource is `amazon`. For information on increasing the # default limit, see [ Quotas for your IPAM][2] in the *Amazon VPC # IPAM User Guide*. # # # # [1]: https://docs.aws.amazon.com/vpc/latest/ipam/intro-create-ipv6-pools.html # [2]: https://docs.aws.amazon.com/vpc/latest/ipam/quotas-ipam.html # @return [String] # # @!attribute [rw] source_resource # The resource used to provision CIDRs to a resource planning pool. # @return [Types::IpamPoolSourceResourceRequest] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateIpamPoolRequest AWS API Documentation # class CreateIpamPoolRequest < Struct.new( :dry_run, :ipam_scope_id, :locale, :source_ipam_pool_id, :description, :address_family, :auto_import, :publicly_advertisable, :allocation_min_netmask_length, :allocation_max_netmask_length, :allocation_default_netmask_length, :allocation_resource_tags, :tag_specifications, :client_token, :aws_service, :public_ip_source, :source_resource) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] ipam_pool # Information about the IPAM pool created. # @return [Types::IpamPool] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateIpamPoolResult AWS API Documentation # class CreateIpamPoolResult < Struct.new( :ipam_pool) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # A check for whether you have the required permissions for the action # without actually making the request and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] description # A description for the IPAM. # @return [String] # # @!attribute [rw] operating_regions # The operating Regions for the 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][1] in the *Amazon VPC IPAM User Guide*. # # # # [1]: https://docs.aws.amazon.com/vpc/latest/ipam/create-ipam.html # @return [Array] # # @!attribute [rw] tag_specifications # 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. # @return [Array] # # @!attribute [rw] client_token # A unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. For more information, see [Ensuring # Idempotency][1]. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] tier # 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][1]. # # # # [1]: http://aws.amazon.com/vpc/pricing/ # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateIpamRequest AWS API Documentation # class CreateIpamRequest < Struct.new( :dry_run, :description, :operating_regions, :tag_specifications, :client_token, :tier) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # A check for whether you have the required permissions for the action # without actually making the request and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] description # A description for the IPAM resource discovery. # @return [String] # # @!attribute [rw] operating_regions # Operating Regions for the IPAM 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. # @return [Array] # # @!attribute [rw] tag_specifications # Tag specifications for the IPAM resource discovery. # @return [Array] # # @!attribute [rw] client_token # A client token for the IPAM resource discovery. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateIpamResourceDiscoveryRequest AWS API Documentation # class CreateIpamResourceDiscoveryRequest < Struct.new( :dry_run, :description, :operating_regions, :tag_specifications, :client_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] ipam_resource_discovery # An IPAM resource discovery. # @return [Types::IpamResourceDiscovery] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateIpamResourceDiscoveryResult AWS API Documentation # class CreateIpamResourceDiscoveryResult < Struct.new( :ipam_resource_discovery) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] ipam # Information about the IPAM created. # @return [Types::Ipam] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateIpamResult AWS API Documentation # class CreateIpamResult < Struct.new( :ipam) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # A check for whether you have the required permissions for the action # without actually making the request and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] ipam_id # The ID of the IPAM for which you're creating this scope. # @return [String] # # @!attribute [rw] description # A description for the scope you're creating. # @return [String] # # @!attribute [rw] tag_specifications # 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. # @return [Array] # # @!attribute [rw] client_token # A unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. For more information, see [Ensuring # Idempotency][1]. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateIpamScopeRequest AWS API Documentation # class CreateIpamScopeRequest < Struct.new( :dry_run, :ipam_id, :description, :tag_specifications, :client_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] ipam_scope # Information about the created scope. # @return [Types::IpamScope] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateIpamScopeResult AWS API Documentation # class CreateIpamScopeResult < Struct.new( :ipam_scope) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] key_name # A unique name for the key pair. # # Constraints: Up to 255 ASCII characters # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] key_type # The type of key pair. Note that ED25519 keys are not supported for # Windows instances. # # Default: `rsa` # @return [String] # # @!attribute [rw] tag_specifications # The tags to apply to the new key pair. # @return [Array] # # @!attribute [rw] key_format # The format of the key pair. # # Default: `pem` # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateKeyPairRequest AWS API Documentation # class CreateKeyPairRequest < Struct.new( :key_name, :dry_run, :key_type, :tag_specifications, :key_format) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] client_token # Unique, case-sensitive identifier you provide to ensure the # idempotency of the request. For more information, see [Ensuring # idempotency][1]. # # Constraint: Maximum 128 ASCII characters. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] launch_template_name # A name for the launch template. # @return [String] # # @!attribute [rw] version_description # A description for the first version of the launch template. # @return [String] # # @!attribute [rw] launch_template_data # The information for the launch template. # @return [Types::RequestLaunchTemplateData] # # @!attribute [rw] tag_specifications # The tags to apply to the launch template on creation. To tag the # launch template, the resource type must be `launch-template`. # # To specify the tags for the resources that are created when an # instance is launched, you must use the `TagSpecifications` parameter # in the [launch template data][1] structure. # # # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RequestLaunchTemplateData.html # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateLaunchTemplateRequest AWS API Documentation # class CreateLaunchTemplateRequest < Struct.new( :dry_run, :client_token, :launch_template_name, :version_description, :launch_template_data, :tag_specifications) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] launch_template # Information about the launch template. # @return [Types::LaunchTemplate] # # @!attribute [rw] warning # If the launch template contains parameters or parameter combinations # that are not valid, an error code and an error message are returned # for each issue that's found. # @return [Types::ValidationWarning] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateLaunchTemplateResult AWS API Documentation # class CreateLaunchTemplateResult < Struct.new( :launch_template, :warning) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] client_token # Unique, case-sensitive identifier you provide to ensure the # idempotency of the request. For more information, see [Ensuring # idempotency][1]. # # Constraint: Maximum 128 ASCII characters. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] launch_template_id # The ID of the launch template. # # You must specify either the `LaunchTemplateId` or the # `LaunchTemplateName`, but not both. # @return [String] # # @!attribute [rw] launch_template_name # The name of the launch template. # # You must specify the `LaunchTemplateName` or the `LaunchTemplateId`, # but not both. # @return [String] # # @!attribute [rw] source_version # The version number of the launch template version on which to base # the new version. The new version inherits the same launch parameters # as the source version, except for parameters that you specify in # `LaunchTemplateData`. Snapshots applied to the block device mapping # are ignored when creating a new version unless they are explicitly # included. # @return [String] # # @!attribute [rw] version_description # A description for the version of the launch template. # @return [String] # # @!attribute [rw] launch_template_data # The information for the launch template. # @return [Types::RequestLaunchTemplateData] # # @!attribute [rw] resolve_alias # If `true`, and if a Systems Manager parameter is specified for # `ImageId`, the AMI ID is displayed in the response for `imageID`. # For more information, see [Use a Systems Manager parameter instead # of an AMI ID][1] in the *Amazon Elastic Compute Cloud User Guide*. # # Default: `false` # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html#use-an-ssm-parameter-instead-of-an-ami-id # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateLaunchTemplateVersionRequest AWS API Documentation # class CreateLaunchTemplateVersionRequest < Struct.new( :dry_run, :client_token, :launch_template_id, :launch_template_name, :source_version, :version_description, :launch_template_data, :resolve_alias) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] launch_template_version # Information about the launch template version. # @return [Types::LaunchTemplateVersion] # # @!attribute [rw] warning # If the new version of the launch template contains parameters or # parameter combinations that are not valid, an error code and an # error message are returned for each issue that's found. # @return [Types::ValidationWarning] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateLaunchTemplateVersionResult AWS API Documentation # class CreateLaunchTemplateVersionResult < Struct.new( :launch_template_version, :warning) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] destination_cidr_block # The CIDR range used for destination matches. Routing decisions are # based on the most specific match. # @return [String] # # @!attribute [rw] local_gateway_route_table_id # The ID of the local gateway route table. # @return [String] # # @!attribute [rw] local_gateway_virtual_interface_group_id # The ID of the virtual interface group. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] network_interface_id # The ID of the network interface. # @return [String] # # @!attribute [rw] destination_prefix_list_id # The ID of the prefix list. Use a prefix list in place of # `DestinationCidrBlock`. You cannot use `DestinationPrefixListId` and # `DestinationCidrBlock` in the same request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateLocalGatewayRouteRequest AWS API Documentation # class CreateLocalGatewayRouteRequest < Struct.new( :destination_cidr_block, :local_gateway_route_table_id, :local_gateway_virtual_interface_group_id, :dry_run, :network_interface_id, :destination_prefix_list_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] route # Information about the route. # @return [Types::LocalGatewayRoute] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateLocalGatewayRouteResult AWS API Documentation # class CreateLocalGatewayRouteResult < Struct.new( :route) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] local_gateway_id # The ID of the local gateway. # @return [String] # # @!attribute [rw] mode # The mode of the local gateway route table. # @return [String] # # @!attribute [rw] tag_specifications # The tags assigned to the local gateway route table. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateLocalGatewayRouteTableRequest AWS API Documentation # class CreateLocalGatewayRouteTableRequest < Struct.new( :local_gateway_id, :mode, :tag_specifications, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] local_gateway_route_table # Information about the local gateway route table. # @return [Types::LocalGatewayRouteTable] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateLocalGatewayRouteTableResult AWS API Documentation # class CreateLocalGatewayRouteTableResult < Struct.new( :local_gateway_route_table) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] local_gateway_route_table_id # The ID of the local gateway route table. # @return [String] # # @!attribute [rw] local_gateway_virtual_interface_group_id # The ID of the local gateway route table virtual interface group # association. # @return [String] # # @!attribute [rw] tag_specifications # The tags assigned to the local gateway route table virtual interface # group association. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateLocalGatewayRouteTableVirtualInterfaceGroupAssociationRequest AWS API Documentation # class CreateLocalGatewayRouteTableVirtualInterfaceGroupAssociationRequest < Struct.new( :local_gateway_route_table_id, :local_gateway_virtual_interface_group_id, :tag_specifications, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] local_gateway_route_table_virtual_interface_group_association # Information about the local gateway route table virtual interface # group association. # @return [Types::LocalGatewayRouteTableVirtualInterfaceGroupAssociation] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateLocalGatewayRouteTableVirtualInterfaceGroupAssociationResult AWS API Documentation # class CreateLocalGatewayRouteTableVirtualInterfaceGroupAssociationResult < Struct.new( :local_gateway_route_table_virtual_interface_group_association) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] local_gateway_route_table_id # The ID of the local gateway route table. # @return [String] # # @!attribute [rw] vpc_id # The ID of the VPC. # @return [String] # # @!attribute [rw] tag_specifications # The tags to assign to the local gateway route table VPC association. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateLocalGatewayRouteTableVpcAssociationRequest AWS API Documentation # class CreateLocalGatewayRouteTableVpcAssociationRequest < Struct.new( :local_gateway_route_table_id, :vpc_id, :tag_specifications, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] local_gateway_route_table_vpc_association # Information about the association. # @return [Types::LocalGatewayRouteTableVpcAssociation] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateLocalGatewayRouteTableVpcAssociationResult AWS API Documentation # class CreateLocalGatewayRouteTableVpcAssociationResult < Struct.new( :local_gateway_route_table_vpc_association) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] prefix_list_name # A name for the prefix list. # # Constraints: Up to 255 characters in length. The name cannot start # with `com.amazonaws`. # @return [String] # # @!attribute [rw] entries # One or more entries for the prefix list. # @return [Array] # # @!attribute [rw] max_entries # The maximum number of entries for the prefix list. # @return [Integer] # # @!attribute [rw] tag_specifications # The tags to apply to the prefix list during creation. # @return [Array] # # @!attribute [rw] address_family # The IP address type. # # Valid Values: `IPv4` \| `IPv6` # @return [String] # # @!attribute [rw] client_token # Unique, case-sensitive identifier you provide to ensure the # idempotency of the request. For more information, see [Ensuring # Idempotency][1]. # # Constraints: Up to 255 UTF-8 characters in length. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateManagedPrefixListRequest AWS API Documentation # class CreateManagedPrefixListRequest < Struct.new( :dry_run, :prefix_list_name, :entries, :max_entries, :tag_specifications, :address_family, :client_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] prefix_list # Information about the prefix list. # @return [Types::ManagedPrefixList] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateManagedPrefixListResult AWS API Documentation # class CreateManagedPrefixListResult < Struct.new( :prefix_list) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] allocation_id # \[Public NAT gateways only\] The allocation ID of an Elastic IP # address to associate with the NAT gateway. You cannot specify an # Elastic IP address with a private NAT gateway. If the Elastic IP # address is associated with another resource, you must first # disassociate it. # @return [String] # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. For more information, see [Ensuring # idempotency][1]. # # Constraint: Maximum 64 ASCII characters. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] subnet_id # The ID of the subnet in which to create the NAT gateway. # @return [String] # # @!attribute [rw] tag_specifications # The tags to assign to the NAT gateway. # @return [Array] # # @!attribute [rw] connectivity_type # Indicates whether the NAT gateway supports public or private # connectivity. The default is public connectivity. # @return [String] # # @!attribute [rw] private_ip_address # The private IPv4 address to assign to the NAT gateway. If you don't # provide an address, a private IPv4 address will be automatically # assigned. # @return [String] # # @!attribute [rw] secondary_allocation_ids # Secondary EIP allocation IDs. For more information, see [Create a # NAT gateway][1] in the *Amazon VPC User Guide*. # # # # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-creating # @return [Array] # # @!attribute [rw] secondary_private_ip_addresses # Secondary private IPv4 addresses. For more information about # secondary addresses, see [Create a NAT gateway][1] in the *Amazon # VPC User Guide*. # # # # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-creating # @return [Array] # # @!attribute [rw] secondary_private_ip_address_count # \[Private NAT gateway only\] The number of secondary private IPv4 # addresses you want to assign to the NAT gateway. For more # information about secondary addresses, see [Create a NAT gateway][1] # in the *Amazon VPC User Guide*. # # # # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html#nat-gateway-creating # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateNatGatewayRequest AWS API Documentation # class CreateNatGatewayRequest < Struct.new( :allocation_id, :client_token, :dry_run, :subnet_id, :tag_specifications, :connectivity_type, :private_ip_address, :secondary_allocation_ids, :secondary_private_ip_addresses, :secondary_private_ip_address_count) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] client_token # Unique, case-sensitive identifier to ensure the idempotency of the # request. Only returned if a client token was provided in the # request. # @return [String] # # @!attribute [rw] nat_gateway # Information about the NAT gateway. # @return [Types::NatGateway] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateNatGatewayResult AWS API Documentation # class CreateNatGatewayResult < Struct.new( :client_token, :nat_gateway) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cidr_block # The IPv4 network range to allow or deny, in CIDR notation (for # example `172.16.0.0/24`). We modify the specified CIDR block to its # canonical form; for example, if you specify `100.68.0.18/18`, we # modify it to `100.68.0.0/18`. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] egress # Indicates whether this is an egress rule (rule is applied to traffic # leaving the subnet). # @return [Boolean] # # @!attribute [rw] icmp_type_code # ICMP protocol: The ICMP or ICMPv6 type and code. Required if # specifying protocol 1 (ICMP) or protocol 58 (ICMPv6) with an IPv6 # CIDR block. # @return [Types::IcmpTypeCode] # # @!attribute [rw] ipv_6_cidr_block # The IPv6 network range to allow or deny, in CIDR notation (for # example `2001:db8:1234:1a00::/64`). # @return [String] # # @!attribute [rw] network_acl_id # The ID of the network ACL. # @return [String] # # @!attribute [rw] port_range # TCP or UDP protocols: The range of ports the rule applies to. # Required if specifying protocol 6 (TCP) or 17 (UDP). # @return [Types::PortRange] # # @!attribute [rw] protocol # The protocol number. A value of "-1" means all protocols. If you # specify "-1" or a protocol number other than "6" (TCP), "17" # (UDP), or "1" (ICMP), traffic on all ports is allowed, regardless # of any ports or ICMP types or codes that you specify. If you specify # protocol "58" (ICMPv6) and specify an IPv4 CIDR block, traffic for # all ICMP types and codes allowed, regardless of any that you # specify. If you specify protocol "58" (ICMPv6) and specify an IPv6 # CIDR block, you must specify an ICMP type and code. # @return [String] # # @!attribute [rw] rule_action # Indicates whether to allow or deny the traffic that matches the # rule. # @return [String] # # @!attribute [rw] rule_number # The rule number for the entry (for example, 100). ACL entries are # processed in ascending order by rule number. # # Constraints: Positive integer from 1 to 32766. The range 32767 to # 65535 is reserved for internal use. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateNetworkAclEntryRequest AWS API Documentation # class CreateNetworkAclEntryRequest < Struct.new( :cidr_block, :dry_run, :egress, :icmp_type_code, :ipv_6_cidr_block, :network_acl_id, :port_range, :protocol, :rule_action, :rule_number) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] vpc_id # The ID of the VPC. # @return [String] # # @!attribute [rw] tag_specifications # The tags to assign to the network ACL. # @return [Array] # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. For more information, see [Ensuring # idempotency][1]. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Run_Instance_Idempotency.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateNetworkAclRequest AWS API Documentation # class CreateNetworkAclRequest < Struct.new( :dry_run, :vpc_id, :tag_specifications, :client_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] network_acl # Information about the network ACL. # @return [Types::NetworkAcl] # # @!attribute [rw] client_token # Unique, case-sensitive identifier to ensure the idempotency of the # request. Only returned if a client token was provided in the # request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateNetworkAclResult AWS API Documentation # class CreateNetworkAclResult < Struct.new( :network_acl, :client_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] match_paths # The paths to match. # @return [Array] # # @!attribute [rw] exclude_paths # The paths to exclude. # @return [Array] # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. For more information, see [How to ensure # idempotency][1]. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] tag_specifications # The tags to apply. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateNetworkInsightsAccessScopeRequest AWS API Documentation # class CreateNetworkInsightsAccessScopeRequest < Struct.new( :match_paths, :exclude_paths, :client_token, :tag_specifications, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] network_insights_access_scope # The Network Access Scope. # @return [Types::NetworkInsightsAccessScope] # # @!attribute [rw] network_insights_access_scope_content # The Network Access Scope content. # @return [Types::NetworkInsightsAccessScopeContent] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateNetworkInsightsAccessScopeResult AWS API Documentation # class CreateNetworkInsightsAccessScopeResult < Struct.new( :network_insights_access_scope, :network_insights_access_scope_content) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] source_ip # The IP address of the source. # @return [String] # # @!attribute [rw] destination_ip # The IP address of the destination. # @return [String] # # @!attribute [rw] source # The ID or ARN of the source. If the resource is in another account, # you must specify an ARN. # @return [String] # # @!attribute [rw] destination # The ID or ARN of the destination. If the resource is in another # account, you must specify an ARN. # @return [String] # # @!attribute [rw] protocol # The protocol. # @return [String] # # @!attribute [rw] destination_port # The destination port. # @return [Integer] # # @!attribute [rw] tag_specifications # The tags to add to the path. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. For more information, see [How to ensure # idempotency][1]. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] filter_at_source # Scopes the analysis to network paths that match specific filters at # the source. If you specify this parameter, you can't specify the # parameters for the source IP address or the destination port. # @return [Types::PathRequestFilter] # # @!attribute [rw] filter_at_destination # Scopes the analysis to network paths that match specific filters at # the destination. If you specify this parameter, you can't specify # the parameter for the destination IP address. # @return [Types::PathRequestFilter] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateNetworkInsightsPathRequest AWS API Documentation # class CreateNetworkInsightsPathRequest < Struct.new( :source_ip, :destination_ip, :source, :destination, :protocol, :destination_port, :tag_specifications, :dry_run, :client_token, :filter_at_source, :filter_at_destination) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] network_insights_path # Information about the path. # @return [Types::NetworkInsightsPath] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateNetworkInsightsPathResult AWS API Documentation # class CreateNetworkInsightsPathResult < Struct.new( :network_insights_path) SENSITIVE = [] include Aws::Structure end # Contains the parameters for CreateNetworkInterfacePermission. # # @!attribute [rw] network_interface_id # The ID of the network interface. # @return [String] # # @!attribute [rw] aws_account_id # The Amazon Web Services account ID. # @return [String] # # @!attribute [rw] aws_service # The Amazon Web Service. Currently not supported. # @return [String] # # @!attribute [rw] permission # The type of permission to grant. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateNetworkInterfacePermissionRequest AWS API Documentation # class CreateNetworkInterfacePermissionRequest < Struct.new( :network_interface_id, :aws_account_id, :aws_service, :permission, :dry_run) SENSITIVE = [] include Aws::Structure end # Contains the output of CreateNetworkInterfacePermission. # # @!attribute [rw] interface_permission # Information about the permission for the network interface. # @return [Types::NetworkInterfacePermission] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateNetworkInterfacePermissionResult AWS API Documentation # class CreateNetworkInterfacePermissionResult < Struct.new( :interface_permission) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] description # A description for the network interface. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] groups # The IDs of one or more security groups. # @return [Array] # # @!attribute [rw] ipv_6_address_count # 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 specify a count of IPv6 addresses using this parameter if # you've specified one of the following: specific IPv6 addresses, # specific IPv6 prefixes, or a count of IPv6 prefixes. # # If your subnet has the `AssignIpv6AddressOnCreation` attribute set, # you can override that setting by specifying 0 as the IPv6 address # count. # @return [Integer] # # @!attribute [rw] ipv_6_addresses # The IPv6 addresses from the IPv6 CIDR block range of your subnet. # # You can't specify IPv6 addresses using this parameter if you've # specified one of the following: a count of IPv6 addresses, specific # IPv6 prefixes, or a count of IPv6 prefixes. # @return [Array] # # @!attribute [rw] private_ip_address # The primary private IPv4 address of the network interface. If you # don't specify an IPv4 address, Amazon EC2 selects one for you from # the subnet's IPv4 CIDR range. If you specify an IP address, you # cannot indicate any IP addresses specified in `privateIpAddresses` # as primary (only one IP address can be designated as primary). # @return [String] # # @!attribute [rw] private_ip_addresses # The private IPv4 addresses. # # You can't specify private IPv4 addresses if you've specified one # of the following: a count of private IPv4 addresses, specific IPv4 # prefixes, or a count of IPv4 prefixes. # @return [Array] # # @!attribute [rw] secondary_private_ip_address_count # The number of secondary private IPv4 addresses to assign to a # network interface. When you specify a number of secondary IPv4 # addresses, Amazon EC2 selects these IP addresses within the # subnet's IPv4 CIDR range. You can't specify this option and # specify more than one private IP address using `privateIpAddresses`. # # You can't specify a count of private IPv4 addresses if you've # specified one of the following: specific private IPv4 addresses, # specific IPv4 prefixes, or a count of IPv4 prefixes. # @return [Integer] # # @!attribute [rw] ipv_4_prefixes # The IPv4 prefixes assigned to the network interface. # # You can't specify IPv4 prefixes if you've specified one of the # following: a count of IPv4 prefixes, specific private IPv4 # addresses, or a count of private IPv4 addresses. # @return [Array] # # @!attribute [rw] ipv_4_prefix_count # The number of IPv4 prefixes that Amazon Web Services automatically # assigns to the network interface. # # You can't specify a count of IPv4 prefixes if you've specified one # of the following: specific IPv4 prefixes, specific private IPv4 # addresses, or a count of private IPv4 addresses. # @return [Integer] # # @!attribute [rw] ipv_6_prefixes # The IPv6 prefixes assigned to the network interface. # # You can't specify IPv6 prefixes if you've specified one of the # following: a count of IPv6 prefixes, specific IPv6 addresses, or a # count of IPv6 addresses. # @return [Array] # # @!attribute [rw] ipv_6_prefix_count # The number of IPv6 prefixes that Amazon Web Services automatically # assigns to the network interface. # # You can't specify a count of IPv6 prefixes if you've specified one # of the following: specific IPv6 prefixes, specific IPv6 addresses, # or a count of IPv6 addresses. # @return [Integer] # # @!attribute [rw] interface_type # The type of network interface. The default is `interface`. # # The only supported values are `interface`, `efa`, and `trunk`. # @return [String] # # @!attribute [rw] subnet_id # The ID of the subnet to associate with the network interface. # @return [String] # # @!attribute [rw] tag_specifications # The tags to apply to the new network interface. # @return [Array] # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. For more information, see [Ensuring # Idempotency][1]. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] enable_primary_ipv_6 # If you’re creating a network interface in a dual-stack or IPv6-only # subnet, you have the option to assign a primary IPv6 IP address. A # primary IPv6 address is an IPv6 GUA address associated with an ENI # that you have enabled to use a primary IPv6 address. Use this option # if the instance that this ENI will be attached to relies on its IPv6 # address not changing. Amazon Web Services will automatically assign # an IPv6 address associated with the ENI attached to your instance to # be the primary IPv6 address. Once you enable an IPv6 GUA address to # be a primary IPv6, you cannot disable it. 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. If you have multiple IPv6 addresses # associated with an ENI attached to your instance and you enable a # primary IPv6 address, the first IPv6 GUA address associated with the # ENI becomes the primary IPv6 address. # @return [Boolean] # # @!attribute [rw] connection_tracking_specification # A connection tracking specification for the network interface. # @return [Types::ConnectionTrackingSpecificationRequest] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateNetworkInterfaceRequest AWS API Documentation # class CreateNetworkInterfaceRequest < Struct.new( :description, :dry_run, :groups, :ipv_6_address_count, :ipv_6_addresses, :private_ip_address, :private_ip_addresses, :secondary_private_ip_address_count, :ipv_4_prefixes, :ipv_4_prefix_count, :ipv_6_prefixes, :ipv_6_prefix_count, :interface_type, :subnet_id, :tag_specifications, :client_token, :enable_primary_ipv_6, :connection_tracking_specification) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] network_interface # Information about the network interface. # @return [Types::NetworkInterface] # # @!attribute [rw] client_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateNetworkInterfaceResult AWS API Documentation # class CreateNetworkInterfaceResult < Struct.new( :network_interface, :client_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] group_name # A name for the placement group. Must be unique within the scope of # your account for the Region. # # Constraints: Up to 255 ASCII characters # @return [String] # # @!attribute [rw] strategy # The placement strategy. # @return [String] # # @!attribute [rw] partition_count # The number of partitions. Valid only when **Strategy** is set to # `partition`. # @return [Integer] # # @!attribute [rw] tag_specifications # The tags to apply to the new placement group. # @return [Array] # # @!attribute [rw] spread_level # Determines how placement groups spread instances. # # * Host – You can use `host` only with Outpost placement groups. # # * Rack – No usage restrictions. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreatePlacementGroupRequest AWS API Documentation # class CreatePlacementGroupRequest < Struct.new( :dry_run, :group_name, :strategy, :partition_count, :tag_specifications, :spread_level) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] placement_group # Information about the placement group. # @return [Types::PlacementGroup] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreatePlacementGroupResult AWS API Documentation # class CreatePlacementGroupResult < Struct.new( :placement_group) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # A check for whether you have the required permissions for the action # without actually making the request and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] tag_specifications # 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. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreatePublicIpv4PoolRequest AWS API Documentation # class CreatePublicIpv4PoolRequest < Struct.new( :dry_run, :tag_specifications) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] pool_id # The ID of the public IPv4 pool. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreatePublicIpv4PoolResult AWS API Documentation # class CreatePublicIpv4PoolResult < Struct.new( :pool_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] instance_id # The ID of the instance for which to replace the root volume. # @return [String] # # @!attribute [rw] snapshot_id # The ID of the snapshot from which to restore the replacement root # volume. The specified snapshot must be a snapshot that you # previously created from the original root volume. # # If you want to restore the replacement root volume to the initial # launch state, or if you want to restore the replacement root volume # from an AMI, omit this parameter. # @return [String] # # @!attribute [rw] client_token # Unique, case-sensitive identifier you provide to ensure the # idempotency of the request. If you do not specify a client token, a # randomly generated token is used for the request to ensure # idempotency. For more information, see [Ensuring idempotency][1]. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] tag_specifications # The tags to apply to the root volume replacement task. # @return [Array] # # @!attribute [rw] image_id # The ID of the AMI to use to restore the root volume. The specified # AMI must have the same product code, billing information, # architecture type, and virtualization type as that of the instance. # # If you want to restore the replacement volume from a specific # snapshot, or if you want to restore it to its launch state, omit # this parameter. # @return [String] # # @!attribute [rw] delete_replaced_root_volume # Indicates whether to automatically delete the original root volume # after the root volume replacement task completes. To delete the # original root volume, specify `true`. If you choose to keep the # original root volume after the replacement task completes, you must # manually delete it when you no longer need it. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateReplaceRootVolumeTaskRequest AWS API Documentation # class CreateReplaceRootVolumeTaskRequest < Struct.new( :instance_id, :snapshot_id, :client_token, :dry_run, :tag_specifications, :image_id, :delete_replaced_root_volume) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] replace_root_volume_task # Information about the root volume replacement task. # @return [Types::ReplaceRootVolumeTask] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateReplaceRootVolumeTaskResult AWS API Documentation # class CreateReplaceRootVolumeTaskResult < Struct.new( :replace_root_volume_task) SENSITIVE = [] include Aws::Structure end # Contains the parameters for CreateReservedInstancesListing. # # @!attribute [rw] client_token # Unique, case-sensitive identifier you provide to ensure idempotency # of your listings. This helps avoid duplicate listings. For more # information, see [Ensuring Idempotency][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] instance_count # The number of instances that are a part of a Reserved Instance # account to be listed in the Reserved Instance Marketplace. This # number should be less than or equal to the instance count associated # with the Reserved Instance ID specified in this call. # @return [Integer] # # @!attribute [rw] price_schedules # A list specifying the price of the Standard Reserved Instance for # each month remaining in the Reserved Instance term. # @return [Array] # # @!attribute [rw] reserved_instances_id # The ID of the active Standard Reserved Instance. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateReservedInstancesListingRequest AWS API Documentation # class CreateReservedInstancesListingRequest < Struct.new( :client_token, :instance_count, :price_schedules, :reserved_instances_id) SENSITIVE = [] include Aws::Structure end # Contains the output of CreateReservedInstancesListing. # # @!attribute [rw] reserved_instances_listings # Information about the Standard Reserved Instance listing. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateReservedInstancesListingResult AWS API Documentation # class CreateReservedInstancesListingResult < Struct.new( :reserved_instances_listings) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] bucket # The name of the Amazon S3 bucket that contains the stored AMI # object. # @return [String] # # @!attribute [rw] object_key # The name of the stored AMI object in the bucket. # @return [String] # # @!attribute [rw] name # The name for the restored AMI. The name must be unique for AMIs in # the Region for this account. If you do not provide a name, the new # AMI gets the same name as the original AMI. # @return [String] # # @!attribute [rw] tag_specifications # The tags to apply to the AMI and snapshots on restoration. You can # tag the AMI, the snapshots, or both. # # * To tag the AMI, the value for `ResourceType` must be `image`. # # * To tag the snapshots, the value for `ResourceType` must be # `snapshot`. The same tag is applied to all of the snapshots that # are created. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateRestoreImageTaskRequest AWS API Documentation # class CreateRestoreImageTaskRequest < Struct.new( :bucket, :object_key, :name, :tag_specifications, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] image_id # The AMI ID. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateRestoreImageTaskResult AWS API Documentation # class CreateRestoreImageTaskResult < Struct.new( :image_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] destination_cidr_block # The IPv4 CIDR address block used for the destination match. Routing # decisions are based on the most specific match. We modify the # specified CIDR block to its canonical form; for example, if you # specify `100.68.0.18/18`, we modify it to `100.68.0.0/18`. # @return [String] # # @!attribute [rw] destination_ipv_6_cidr_block # The IPv6 CIDR block used for the destination match. Routing # decisions are based on the most specific match. # @return [String] # # @!attribute [rw] destination_prefix_list_id # The ID of a prefix list used for the destination match. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] vpc_endpoint_id # The ID of a VPC endpoint. Supported for Gateway Load Balancer # endpoints only. # @return [String] # # @!attribute [rw] egress_only_internet_gateway_id # \[IPv6 traffic only\] The ID of an egress-only internet gateway. # @return [String] # # @!attribute [rw] gateway_id # The ID of an internet gateway or virtual private gateway attached to # your VPC. # @return [String] # # @!attribute [rw] instance_id # The ID of a NAT instance in your VPC. The operation fails if you # specify an instance ID unless exactly one network interface is # attached. # @return [String] # # @!attribute [rw] nat_gateway_id # \[IPv4 traffic only\] The ID of a NAT gateway. # @return [String] # # @!attribute [rw] transit_gateway_id # The ID of a transit gateway. # @return [String] # # @!attribute [rw] local_gateway_id # The ID of the local gateway. # @return [String] # # @!attribute [rw] carrier_gateway_id # The ID of the carrier gateway. # # You can only use this option when the VPC contains a subnet which is # associated with a Wavelength Zone. # @return [String] # # @!attribute [rw] network_interface_id # The ID of a network interface. # @return [String] # # @!attribute [rw] route_table_id # The ID of the route table for the route. # @return [String] # # @!attribute [rw] vpc_peering_connection_id # The ID of a VPC peering connection. # @return [String] # # @!attribute [rw] core_network_arn # The Amazon Resource Name (ARN) of the core network. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateRouteRequest AWS API Documentation # class CreateRouteRequest < Struct.new( :destination_cidr_block, :destination_ipv_6_cidr_block, :destination_prefix_list_id, :dry_run, :vpc_endpoint_id, :egress_only_internet_gateway_id, :gateway_id, :instance_id, :nat_gateway_id, :transit_gateway_id, :local_gateway_id, :carrier_gateway_id, :network_interface_id, :route_table_id, :vpc_peering_connection_id, :core_network_arn) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] return # Returns `true` if the request succeeds; otherwise, it returns an # error. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateRouteResult AWS API Documentation # class CreateRouteResult < Struct.new( :return) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] vpc_id # The ID of the VPC. # @return [String] # # @!attribute [rw] tag_specifications # The tags to assign to the route table. # @return [Array] # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. For more information, see [Ensuring # idempotency][1]. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Run_Instance_Idempotency.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateRouteTableRequest AWS API Documentation # class CreateRouteTableRequest < Struct.new( :dry_run, :vpc_id, :tag_specifications, :client_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] route_table # Information about the route table. # @return [Types::RouteTable] # # @!attribute [rw] client_token # Unique, case-sensitive identifier to ensure the idempotency of the # request. Only returned if a client token was provided in the # request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateRouteTableResult AWS API Documentation # class CreateRouteTableResult < Struct.new( :route_table, :client_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] description # A description for the security group. # # Constraints: Up to 255 characters in length # # Valid characters: a-z, A-Z, 0-9, spaces, and # .\_-:/()#,@\[\]+=&;\\\{\\}!$* # @return [String] # # @!attribute [rw] group_name # The name of the security group. # # Constraints: Up to 255 characters in length. Cannot start with # `sg-`. # # Valid characters: a-z, A-Z, 0-9, spaces, and # .\_-:/()#,@\[\]+=&;\\\{\\}!$* # @return [String] # # @!attribute [rw] vpc_id # The ID of the VPC. Required for a nondefault VPC. # @return [String] # # @!attribute [rw] tag_specifications # The tags to assign to the security group. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateSecurityGroupRequest AWS API Documentation # class CreateSecurityGroupRequest < Struct.new( :description, :group_name, :vpc_id, :tag_specifications, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] group_id # The ID of the security group. # @return [String] # # @!attribute [rw] tags # The tags assigned to the security group. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateSecurityGroupResult AWS API Documentation # class CreateSecurityGroupResult < Struct.new( :group_id, :tags) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] description # A description for the snapshot. # @return [String] # # @!attribute [rw] outpost_arn # The Amazon Resource Name (ARN) of the Outpost on which to create a # local snapshot. # # * To create a snapshot of a volume in a Region, omit this parameter. # The snapshot is created in the same Region as the volume. # # * To create a snapshot of a volume on an Outpost and store the # snapshot in the Region, omit this parameter. The snapshot is # created in the Region for the Outpost. # # * To create a snapshot of a volume on an Outpost and store the # snapshot on an Outpost, specify the ARN of the destination # Outpost. The snapshot must be created on the same Outpost as the # volume. # # For more information, see [Create local snapshots from volumes on an # Outpost][1] in the *Amazon EBS User Guide*. # # # # [1]: https://docs.aws.amazon.com/ebs/latest/userguide/snapshots-outposts.html#create-snapshot # @return [String] # # @!attribute [rw] volume_id # The ID of the Amazon EBS volume. # @return [String] # # @!attribute [rw] tag_specifications # The tags to apply to the snapshot during creation. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateSnapshotRequest AWS API Documentation # class CreateSnapshotRequest < Struct.new( :description, :outpost_arn, :volume_id, :tag_specifications, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] description # A description propagated to every snapshot specified by the # instance. # @return [String] # # @!attribute [rw] instance_specification # The instance to specify which volumes should be included in the # snapshots. # @return [Types::InstanceSpecification] # # @!attribute [rw] outpost_arn # The Amazon Resource Name (ARN) of the Outpost on which to create the # local snapshots. # # * To create snapshots from an instance in a Region, omit this # parameter. The snapshots are created in the same Region as the # instance. # # * To create snapshots from an instance on an Outpost and store the # snapshots in the Region, omit this parameter. The snapshots are # created in the Region for the Outpost. # # * To create snapshots from an instance on an Outpost and store the # snapshots on an Outpost, specify the ARN of the destination # Outpost. The snapshots must be created on the same Outpost as the # instance. # # For more information, see [ Create multi-volume local snapshots from # instances on an Outpost][1] in the *Amazon EBS User Guide*. # # # # [1]: https://docs.aws.amazon.com/ebs/latest/userguide/snapshots-outposts.html#create-multivol-snapshot # @return [String] # # @!attribute [rw] tag_specifications # Tags to apply to every snapshot specified by the instance. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] copy_tags_from_source # Copies the tags from the specified volume to corresponding snapshot. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateSnapshotsRequest AWS API Documentation # class CreateSnapshotsRequest < Struct.new( :description, :instance_specification, :outpost_arn, :tag_specifications, :dry_run, :copy_tags_from_source) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] snapshots # List of snapshots. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateSnapshotsResult AWS API Documentation # class CreateSnapshotsResult < Struct.new( :snapshots) SENSITIVE = [] include Aws::Structure end # Contains the parameters for CreateSpotDatafeedSubscription. # # @!attribute [rw] bucket # The name of the Amazon S3 bucket in which to store the Spot Instance # data feed. For more information about bucket names, see [Rules for # bucket naming][1] in the *Amazon S3 Developer Guide*. # # # # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/BucketRestrictions.html#bucketnamingrules # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] prefix # The prefix for the data feed file names. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateSpotDatafeedSubscriptionRequest AWS API Documentation # class CreateSpotDatafeedSubscriptionRequest < Struct.new( :bucket, :dry_run, :prefix) SENSITIVE = [] include Aws::Structure end # Contains the output of CreateSpotDatafeedSubscription. # # @!attribute [rw] spot_datafeed_subscription # The Spot Instance data feed subscription. # @return [Types::SpotDatafeedSubscription] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateSpotDatafeedSubscriptionResult AWS API Documentation # class CreateSpotDatafeedSubscriptionResult < Struct.new( :spot_datafeed_subscription) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] image_id # The ID of the AMI. # @return [String] # # @!attribute [rw] bucket # The name of the Amazon S3 bucket in which the AMI object will be # stored. The bucket must be in the Region in which the request is # being made. The AMI object appears in the bucket only after the # upload task has completed. # @return [String] # # @!attribute [rw] s3_object_tags # The tags to apply to the AMI object that will be stored in the # Amazon S3 bucket. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateStoreImageTaskRequest AWS API Documentation # class CreateStoreImageTaskRequest < Struct.new( :image_id, :bucket, :s3_object_tags, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] object_key # The name of the stored AMI object in the S3 bucket. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateStoreImageTaskResult AWS API Documentation # class CreateStoreImageTaskResult < Struct.new( :object_key) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] subnet_id # The ID of the subnet. # @return [String] # # @!attribute [rw] cidr # The IPv4 or IPV6 CIDR range to reserve. # @return [String] # # @!attribute [rw] reservation_type # The type of reservation. The reservation type determines how the # reserved IP addresses are assigned to resources. # # * `prefix` - Amazon Web Services assigns the reserved IP addresses # to network interfaces. # # * `explicit` - You assign the reserved IP addresses to network # interfaces. # @return [String] # # @!attribute [rw] description # The description to assign to the subnet CIDR reservation. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] tag_specifications # The tags to assign to the subnet CIDR reservation. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateSubnetCidrReservationRequest AWS API Documentation # class CreateSubnetCidrReservationRequest < Struct.new( :subnet_id, :cidr, :reservation_type, :description, :dry_run, :tag_specifications) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] subnet_cidr_reservation # Information about the created subnet CIDR reservation. # @return [Types::SubnetCidrReservation] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateSubnetCidrReservationResult AWS API Documentation # class CreateSubnetCidrReservationResult < Struct.new( :subnet_cidr_reservation) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] tag_specifications # The tags to assign to the subnet. # @return [Array] # # @!attribute [rw] availability_zone # The Availability Zone or Local Zone for the subnet. # # Default: Amazon Web Services selects one for you. If you create more # than one subnet in your VPC, we do not necessarily select a # different zone for each subnet. # # To create a subnet in a Local Zone, set this value to the Local Zone # ID, for example `us-west-2-lax-1a`. For information about the # Regions that support Local Zones, see [Local Zones locations][1]. # # To create a subnet in an Outpost, set this value to the Availability # Zone for the Outpost and specify the Outpost ARN. # # # # [1]: http://aws.amazon.com/about-aws/global-infrastructure/localzones/locations/ # @return [String] # # @!attribute [rw] availability_zone_id # The AZ ID or the Local Zone ID of the subnet. # @return [String] # # @!attribute [rw] cidr_block # The IPv4 network range for the subnet, in CIDR notation. For # example, `10.0.0.0/24`. We modify the specified CIDR block to its # canonical form; for example, if you specify `100.68.0.18/18`, we # modify it to `100.68.0.0/18`. # # This parameter is not supported for an IPv6 only subnet. # @return [String] # # @!attribute [rw] ipv_6_cidr_block # The IPv6 network range for the subnet, in CIDR notation. This # parameter is required for an IPv6 only subnet. # @return [String] # # @!attribute [rw] outpost_arn # The Amazon Resource Name (ARN) of the Outpost. If you specify an # Outpost ARN, you must also specify the Availability Zone of the # Outpost subnet. # @return [String] # # @!attribute [rw] vpc_id # The ID of the VPC. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] ipv_6_native # Indicates whether to create an IPv6 only subnet. # @return [Boolean] # # @!attribute [rw] ipv_4_ipam_pool_id # An IPv4 IPAM pool ID for the subnet. # @return [String] # # @!attribute [rw] ipv_4_netmask_length # An IPv4 netmask length for the subnet. # @return [Integer] # # @!attribute [rw] ipv_6_ipam_pool_id # An IPv6 IPAM pool ID for the subnet. # @return [String] # # @!attribute [rw] ipv_6_netmask_length # An IPv6 netmask length for the subnet. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateSubnetRequest AWS API Documentation # class CreateSubnetRequest < Struct.new( :tag_specifications, :availability_zone, :availability_zone_id, :cidr_block, :ipv_6_cidr_block, :outpost_arn, :vpc_id, :dry_run, :ipv_6_native, :ipv_4_ipam_pool_id, :ipv_4_netmask_length, :ipv_6_ipam_pool_id, :ipv_6_netmask_length) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] subnet # Information about the subnet. # @return [Types::Subnet] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateSubnetResult AWS API Documentation # class CreateSubnetResult < Struct.new( :subnet) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] resources # The IDs of the resources, separated by spaces. # # Constraints: Up to 1000 resource IDs. We recommend breaking up this # request into smaller batches. # @return [Array] # # @!attribute [rw] tags # The tags. The `value` parameter is required, but if you don't want # the tag to have a value, specify the parameter with no value, and we # set the value to an empty string. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateTagsRequest AWS API Documentation # class CreateTagsRequest < Struct.new( :dry_run, :resources, :tags) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] description # The description of the Traffic Mirror filter. # @return [String] # # @!attribute [rw] tag_specifications # The tags to assign to a Traffic Mirror filter. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. For more information, see [How to ensure # idempotency][1]. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateTrafficMirrorFilterRequest AWS API Documentation # class CreateTrafficMirrorFilterRequest < Struct.new( :description, :tag_specifications, :dry_run, :client_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] traffic_mirror_filter # Information about the Traffic Mirror filter. # @return [Types::TrafficMirrorFilter] # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. For more information, see [How to ensure # idempotency][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateTrafficMirrorFilterResult AWS API Documentation # class CreateTrafficMirrorFilterResult < Struct.new( :traffic_mirror_filter, :client_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] traffic_mirror_filter_id # The ID of the filter that this rule is associated with. # @return [String] # # @!attribute [rw] traffic_direction # The type of traffic. # @return [String] # # @!attribute [rw] rule_number # The number of the Traffic Mirror rule. This number must be unique # for each Traffic Mirror rule in a given direction. The rules are # processed in ascending order by rule number. # @return [Integer] # # @!attribute [rw] rule_action # The action to take on the filtered traffic. # @return [String] # # @!attribute [rw] destination_port_range # The destination port range. # @return [Types::TrafficMirrorPortRangeRequest] # # @!attribute [rw] source_port_range # The source port range. # @return [Types::TrafficMirrorPortRangeRequest] # # @!attribute [rw] protocol # The protocol, for example UDP, to assign to the Traffic Mirror rule. # # For information about the protocol value, see [Protocol Numbers][1] # on the Internet Assigned Numbers Authority (IANA) website. # # # # [1]: https://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml # @return [Integer] # # @!attribute [rw] destination_cidr_block # The destination CIDR block to assign to the Traffic Mirror rule. # @return [String] # # @!attribute [rw] source_cidr_block # The source CIDR block to assign to the Traffic Mirror rule. # @return [String] # # @!attribute [rw] description # The description of the Traffic Mirror rule. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. For more information, see [How to ensure # idempotency][1]. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateTrafficMirrorFilterRuleRequest AWS API Documentation # class CreateTrafficMirrorFilterRuleRequest < Struct.new( :traffic_mirror_filter_id, :traffic_direction, :rule_number, :rule_action, :destination_port_range, :source_port_range, :protocol, :destination_cidr_block, :source_cidr_block, :description, :dry_run, :client_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] traffic_mirror_filter_rule # The Traffic Mirror rule. # @return [Types::TrafficMirrorFilterRule] # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. For more information, see [How to ensure # idempotency][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateTrafficMirrorFilterRuleResult AWS API Documentation # class CreateTrafficMirrorFilterRuleResult < Struct.new( :traffic_mirror_filter_rule, :client_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] network_interface_id # The ID of the source network interface. # @return [String] # # @!attribute [rw] traffic_mirror_target_id # The ID of the Traffic Mirror target. # @return [String] # # @!attribute [rw] traffic_mirror_filter_id # The ID of the Traffic Mirror filter. # @return [String] # # @!attribute [rw] packet_length # The number of bytes in each packet to mirror. These are bytes after # the VXLAN header. Do not specify this parameter when you want to # mirror the entire packet. To mirror a subset of the packet, set this # to the length (in bytes) that you want 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. # # If you do not want to mirror the entire packet, use the # `PacketLength` parameter to specify the number of bytes in each # packet to mirror. # # For sessions with Network Load Balancer (NLB) Traffic Mirror targets # the default `PacketLength` will be set to 8500. Valid values are # 1-8500. Setting a `PacketLength` greater than 8500 will result in an # error response. # @return [Integer] # # @!attribute [rw] session_number # 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. # @return [Integer] # # @!attribute [rw] virtual_network_id # The VXLAN ID for the Traffic Mirror session. For more information # about the VXLAN protocol, see [RFC 7348][1]. If you do not specify a # `VirtualNetworkId`, an account-wide unique id is chosen at random. # # # # [1]: https://tools.ietf.org/html/rfc7348 # @return [Integer] # # @!attribute [rw] description # The description of the Traffic Mirror session. # @return [String] # # @!attribute [rw] tag_specifications # The tags to assign to a Traffic Mirror session. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. For more information, see [How to ensure # idempotency][1]. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateTrafficMirrorSessionRequest AWS API Documentation # class CreateTrafficMirrorSessionRequest < Struct.new( :network_interface_id, :traffic_mirror_target_id, :traffic_mirror_filter_id, :packet_length, :session_number, :virtual_network_id, :description, :tag_specifications, :dry_run, :client_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] traffic_mirror_session # Information about the Traffic Mirror session. # @return [Types::TrafficMirrorSession] # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. For more information, see [How to ensure # idempotency][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateTrafficMirrorSessionResult AWS API Documentation # class CreateTrafficMirrorSessionResult < Struct.new( :traffic_mirror_session, :client_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] network_interface_id # The network interface ID that is associated with the target. # @return [String] # # @!attribute [rw] network_load_balancer_arn # The Amazon Resource Name (ARN) of the Network Load Balancer that is # associated with the target. # @return [String] # # @!attribute [rw] description # The description of the Traffic Mirror target. # @return [String] # # @!attribute [rw] tag_specifications # The tags to assign to the Traffic Mirror target. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. For more information, see [How to ensure # idempotency][1]. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] gateway_load_balancer_endpoint_id # The ID of the Gateway Load Balancer endpoint. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateTrafficMirrorTargetRequest AWS API Documentation # class CreateTrafficMirrorTargetRequest < Struct.new( :network_interface_id, :network_load_balancer_arn, :description, :tag_specifications, :dry_run, :client_token, :gateway_load_balancer_endpoint_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] traffic_mirror_target # Information about the Traffic Mirror target. # @return [Types::TrafficMirrorTarget] # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. For more information, see [How to ensure # idempotency][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateTrafficMirrorTargetResult AWS API Documentation # class CreateTrafficMirrorTargetResult < Struct.new( :traffic_mirror_target, :client_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_attachment_id # The ID of the Connect attachment. # @return [String] # # @!attribute [rw] transit_gateway_address # The peer IP address (GRE outer IP address) on the transit gateway # side of the Connect peer, which must be specified from a transit # gateway CIDR block. If not specified, Amazon automatically assigns # the first available IP address from the transit gateway CIDR block. # @return [String] # # @!attribute [rw] peer_address # The peer IP address (GRE outer IP address) on the appliance side of # the Connect peer. # @return [String] # # @!attribute [rw] bgp_options # The BGP options for the Connect peer. # @return [Types::TransitGatewayConnectRequestBgpOptions] # # @!attribute [rw] inside_cidr_blocks # The range of inside IP addresses that are used for BGP peering. You # must specify a size /29 IPv4 CIDR block from the `169.254.0.0/16` # range. The first address from the range must be configured on the # appliance as the BGP IP address. You can also optionally specify a # size /125 IPv6 CIDR block from the `fd00::/8` range. # @return [Array] # # @!attribute [rw] tag_specifications # The tags to apply to the Connect peer. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateTransitGatewayConnectPeerRequest AWS API Documentation # class CreateTransitGatewayConnectPeerRequest < Struct.new( :transit_gateway_attachment_id, :transit_gateway_address, :peer_address, :bgp_options, :inside_cidr_blocks, :tag_specifications, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_connect_peer # Information about the Connect peer. # @return [Types::TransitGatewayConnectPeer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateTransitGatewayConnectPeerResult AWS API Documentation # class CreateTransitGatewayConnectPeerResult < Struct.new( :transit_gateway_connect_peer) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transport_transit_gateway_attachment_id # The ID of the transit gateway attachment. You can specify a VPC # attachment or Amazon Web Services Direct Connect attachment. # @return [String] # # @!attribute [rw] options # The Connect attachment options. # @return [Types::CreateTransitGatewayConnectRequestOptions] # # @!attribute [rw] tag_specifications # The tags to apply to the Connect attachment. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateTransitGatewayConnectRequest AWS API Documentation # class CreateTransitGatewayConnectRequest < Struct.new( :transport_transit_gateway_attachment_id, :options, :tag_specifications, :dry_run) SENSITIVE = [] include Aws::Structure end # The options for a Connect attachment. # # @!attribute [rw] protocol # The tunnel protocol. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateTransitGatewayConnectRequestOptions AWS API Documentation # class CreateTransitGatewayConnectRequestOptions < Struct.new( :protocol) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_connect # Information about the Connect attachment. # @return [Types::TransitGatewayConnect] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateTransitGatewayConnectResult AWS API Documentation # class CreateTransitGatewayConnectResult < Struct.new( :transit_gateway_connect) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_id # The ID of the transit gateway. # @return [String] # # @!attribute [rw] options # The options for the transit gateway multicast domain. # @return [Types::CreateTransitGatewayMulticastDomainRequestOptions] # # @!attribute [rw] tag_specifications # The tags for the transit gateway multicast domain. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateTransitGatewayMulticastDomainRequest AWS API Documentation # class CreateTransitGatewayMulticastDomainRequest < Struct.new( :transit_gateway_id, :options, :tag_specifications, :dry_run) SENSITIVE = [] include Aws::Structure end # The options for the transit gateway multicast domain. # # @!attribute [rw] igmpv_2_support # Specify whether to enable Internet Group Management Protocol (IGMP) # version 2 for the transit gateway multicast domain. # @return [String] # # @!attribute [rw] static_sources_support # Specify whether to enable support for statically configuring # multicast group sources for a domain. # @return [String] # # @!attribute [rw] auto_accept_shared_associations # Indicates whether to automatically accept cross-account subnet # associations that are associated with the transit gateway multicast # domain. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateTransitGatewayMulticastDomainRequestOptions AWS API Documentation # class CreateTransitGatewayMulticastDomainRequestOptions < Struct.new( :igmpv_2_support, :static_sources_support, :auto_accept_shared_associations) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_multicast_domain # Information about the transit gateway multicast domain. # @return [Types::TransitGatewayMulticastDomain] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateTransitGatewayMulticastDomainResult AWS API Documentation # class CreateTransitGatewayMulticastDomainResult < Struct.new( :transit_gateway_multicast_domain) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_id # The ID of the transit gateway. # @return [String] # # @!attribute [rw] peer_transit_gateway_id # The ID of the peer transit gateway with which to create the peering # attachment. # @return [String] # # @!attribute [rw] peer_account_id # The ID of the Amazon Web Services account that owns the peer transit # gateway. # @return [String] # # @!attribute [rw] peer_region # The Region where the peer transit gateway is located. # @return [String] # # @!attribute [rw] options # Requests a transit gateway peering attachment. # @return [Types::CreateTransitGatewayPeeringAttachmentRequestOptions] # # @!attribute [rw] tag_specifications # The tags to apply to the transit gateway peering attachment. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateTransitGatewayPeeringAttachmentRequest AWS API Documentation # class CreateTransitGatewayPeeringAttachmentRequest < Struct.new( :transit_gateway_id, :peer_transit_gateway_id, :peer_account_id, :peer_region, :options, :tag_specifications, :dry_run) SENSITIVE = [] include Aws::Structure end # Describes whether dynamic routing is enabled or disabled for the # transit gateway peering request. # # @!attribute [rw] dynamic_routing # Indicates whether dynamic routing is enabled or disabled. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateTransitGatewayPeeringAttachmentRequestOptions AWS API Documentation # class CreateTransitGatewayPeeringAttachmentRequestOptions < Struct.new( :dynamic_routing) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_peering_attachment # The transit gateway peering attachment. # @return [Types::TransitGatewayPeeringAttachment] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateTransitGatewayPeeringAttachmentResult AWS API Documentation # class CreateTransitGatewayPeeringAttachmentResult < Struct.new( :transit_gateway_peering_attachment) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_id # The ID of the transit gateway used for the policy table. # @return [String] # # @!attribute [rw] tag_specifications # The tags specification for the transit gateway policy table created # during the request. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateTransitGatewayPolicyTableRequest AWS API Documentation # class CreateTransitGatewayPolicyTableRequest < Struct.new( :transit_gateway_id, :tag_specifications, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_policy_table # Describes the created transit gateway policy table. # @return [Types::TransitGatewayPolicyTable] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateTransitGatewayPolicyTableResult AWS API Documentation # class CreateTransitGatewayPolicyTableResult < Struct.new( :transit_gateway_policy_table) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_route_table_id # The ID of the transit gateway route table. # @return [String] # # @!attribute [rw] prefix_list_id # The ID of the prefix list that is used for destination matches. # @return [String] # # @!attribute [rw] transit_gateway_attachment_id # The ID of the attachment to which traffic is routed. # @return [String] # # @!attribute [rw] blackhole # Indicates whether to drop traffic that matches this route. # @return [Boolean] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateTransitGatewayPrefixListReferenceRequest AWS API Documentation # class CreateTransitGatewayPrefixListReferenceRequest < Struct.new( :transit_gateway_route_table_id, :prefix_list_id, :transit_gateway_attachment_id, :blackhole, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_prefix_list_reference # Information about the prefix list reference. # @return [Types::TransitGatewayPrefixListReference] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateTransitGatewayPrefixListReferenceResult AWS API Documentation # class CreateTransitGatewayPrefixListReferenceResult < Struct.new( :transit_gateway_prefix_list_reference) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] description # A description of the transit gateway. # @return [String] # # @!attribute [rw] options # The transit gateway options. # @return [Types::TransitGatewayRequestOptions] # # @!attribute [rw] tag_specifications # The tags to apply to the transit gateway. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateTransitGatewayRequest AWS API Documentation # class CreateTransitGatewayRequest < Struct.new( :description, :options, :tag_specifications, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway # Information about the transit gateway. # @return [Types::TransitGateway] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateTransitGatewayResult AWS API Documentation # class CreateTransitGatewayResult < Struct.new( :transit_gateway) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] destination_cidr_block # The CIDR range used for destination matches. Routing decisions are # based on the most specific match. # @return [String] # # @!attribute [rw] transit_gateway_route_table_id # The ID of the transit gateway route table. # @return [String] # # @!attribute [rw] transit_gateway_attachment_id # The ID of the attachment. # @return [String] # # @!attribute [rw] blackhole # Indicates whether to drop traffic that matches this route. # @return [Boolean] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateTransitGatewayRouteRequest AWS API Documentation # class CreateTransitGatewayRouteRequest < Struct.new( :destination_cidr_block, :transit_gateway_route_table_id, :transit_gateway_attachment_id, :blackhole, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] route # Information about the route. # @return [Types::TransitGatewayRoute] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateTransitGatewayRouteResult AWS API Documentation # class CreateTransitGatewayRouteResult < Struct.new( :route) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_route_table_id # The ID of the transit gateway route table. # @return [String] # # @!attribute [rw] peering_attachment_id # The ID of the peering attachment. # @return [String] # # @!attribute [rw] tag_specifications # The tags specifications applied to the transit gateway route table # announcement. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateTransitGatewayRouteTableAnnouncementRequest AWS API Documentation # class CreateTransitGatewayRouteTableAnnouncementRequest < Struct.new( :transit_gateway_route_table_id, :peering_attachment_id, :tag_specifications, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_route_table_announcement # Provides details about the transit gateway route table announcement. # @return [Types::TransitGatewayRouteTableAnnouncement] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateTransitGatewayRouteTableAnnouncementResult AWS API Documentation # class CreateTransitGatewayRouteTableAnnouncementResult < Struct.new( :transit_gateway_route_table_announcement) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_id # The ID of the transit gateway. # @return [String] # # @!attribute [rw] tag_specifications # The tags to apply to the transit gateway route table. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateTransitGatewayRouteTableRequest AWS API Documentation # class CreateTransitGatewayRouteTableRequest < Struct.new( :transit_gateway_id, :tag_specifications, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_route_table # Information about the transit gateway route table. # @return [Types::TransitGatewayRouteTable] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateTransitGatewayRouteTableResult AWS API Documentation # class CreateTransitGatewayRouteTableResult < Struct.new( :transit_gateway_route_table) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_id # The ID of the transit gateway. # @return [String] # # @!attribute [rw] vpc_id # The ID of the VPC. # @return [String] # # @!attribute [rw] subnet_ids # The IDs of one or more subnets. You can specify only one subnet per # Availability Zone. You must specify at least one subnet, but we # recommend that you specify two subnets for better availability. The # transit gateway uses one IP address from each specified subnet. # @return [Array] # # @!attribute [rw] options # The VPC attachment options. # @return [Types::CreateTransitGatewayVpcAttachmentRequestOptions] # # @!attribute [rw] tag_specifications # The tags to apply to the VPC attachment. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateTransitGatewayVpcAttachmentRequest AWS API Documentation # class CreateTransitGatewayVpcAttachmentRequest < Struct.new( :transit_gateway_id, :vpc_id, :subnet_ids, :options, :tag_specifications, :dry_run) SENSITIVE = [] include Aws::Structure end # Describes the options for a VPC attachment. # # @!attribute [rw] dns_support # Enable or disable DNS support. The default is `enable`. # @return [String] # # @!attribute [rw] security_group_referencing_support # This parameter is in preview and may not be available for your # account. # # # # Enables you to reference a security group across VPCs attached to a # transit gateway. Use this option to simplify security group # management and control of instance-to-instance traffic across VPCs # that are connected by transit gateway. You can also use this option # to migrate from VPC peering (which was the only option that # supported security group referencing) to transit gateways (which now # also support security group referencing). This option is disabled by # default and there are no additional costs to use this feature. # # If you don't enable or disable SecurityGroupReferencingSupport in # the request, the attachment will inherit the security group # referencing support setting on the transit gateway. # @return [String] # # @!attribute [rw] ipv_6_support # Enable or disable IPv6 support. The default is `disable`. # @return [String] # # @!attribute [rw] appliance_mode_support # 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`. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateTransitGatewayVpcAttachmentRequestOptions AWS API Documentation # class CreateTransitGatewayVpcAttachmentRequestOptions < Struct.new( :dns_support, :security_group_referencing_support, :ipv_6_support, :appliance_mode_support) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_vpc_attachment # Information about the VPC attachment. # @return [Types::TransitGatewayVpcAttachment] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateTransitGatewayVpcAttachmentResult AWS API Documentation # class CreateTransitGatewayVpcAttachmentResult < Struct.new( :transit_gateway_vpc_attachment) SENSITIVE = [] include Aws::Structure end # Describes the network interface options when creating an Amazon Web # Services Verified Access endpoint using the `network-interface` type. # # @!attribute [rw] network_interface_id # The ID of the network interface. # @return [String] # # @!attribute [rw] protocol # The IP protocol. # @return [String] # # @!attribute [rw] port # The IP port number. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateVerifiedAccessEndpointEniOptions AWS API Documentation # class CreateVerifiedAccessEndpointEniOptions < Struct.new( :network_interface_id, :protocol, :port) SENSITIVE = [] include Aws::Structure end # Describes the load balancer options when creating an Amazon Web # Services Verified Access endpoint using the `load-balancer` type. # # @!attribute [rw] protocol # The IP protocol. # @return [String] # # @!attribute [rw] port # The IP port number. # @return [Integer] # # @!attribute [rw] load_balancer_arn # The ARN of the load balancer. # @return [String] # # @!attribute [rw] subnet_ids # The IDs of the subnets. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateVerifiedAccessEndpointLoadBalancerOptions AWS API Documentation # class CreateVerifiedAccessEndpointLoadBalancerOptions < Struct.new( :protocol, :port, :load_balancer_arn, :subnet_ids) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] verified_access_group_id # The ID of the Verified Access group to associate the endpoint with. # @return [String] # # @!attribute [rw] endpoint_type # The type of Verified Access endpoint to create. # @return [String] # # @!attribute [rw] attachment_type # The type of attachment. # @return [String] # # @!attribute [rw] domain_certificate_arn # The ARN of the public TLS/SSL certificate in Amazon Web Services # Certificate Manager to associate with the endpoint. The CN in the # certificate must match the DNS name your end users will use to reach # your application. # @return [String] # # @!attribute [rw] application_domain # The DNS name for users to reach your application. # @return [String] # # @!attribute [rw] endpoint_domain_prefix # A custom identifier that is prepended to the DNS name that is # generated for the endpoint. # @return [String] # # @!attribute [rw] security_group_ids # The IDs of the security groups to associate with the Verified Access # endpoint. Required if `AttachmentType` is set to `vpc`. # @return [Array] # # @!attribute [rw] load_balancer_options # The load balancer details. This parameter is required if the # endpoint type is `load-balancer`. # @return [Types::CreateVerifiedAccessEndpointLoadBalancerOptions] # # @!attribute [rw] network_interface_options # The network interface details. This parameter is required if the # endpoint type is `network-interface`. # @return [Types::CreateVerifiedAccessEndpointEniOptions] # # @!attribute [rw] description # A description for the Verified Access endpoint. # @return [String] # # @!attribute [rw] policy_document # The Verified Access policy document. # @return [String] # # @!attribute [rw] tag_specifications # The tags to assign to the Verified Access endpoint. # @return [Array] # # @!attribute [rw] client_token # A unique, case-sensitive token that you provide to ensure # idempotency of your modification request. For more information, see # [Ensuring Idempotency][1]. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] sse_specification # The options for server side encryption. # @return [Types::VerifiedAccessSseSpecificationRequest] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateVerifiedAccessEndpointRequest AWS API Documentation # class CreateVerifiedAccessEndpointRequest < Struct.new( :verified_access_group_id, :endpoint_type, :attachment_type, :domain_certificate_arn, :application_domain, :endpoint_domain_prefix, :security_group_ids, :load_balancer_options, :network_interface_options, :description, :policy_document, :tag_specifications, :client_token, :dry_run, :sse_specification) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] verified_access_endpoint # Details about the Verified Access endpoint. # @return [Types::VerifiedAccessEndpoint] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateVerifiedAccessEndpointResult AWS API Documentation # class CreateVerifiedAccessEndpointResult < Struct.new( :verified_access_endpoint) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] verified_access_instance_id # The ID of the Verified Access instance. # @return [String] # # @!attribute [rw] description # A description for the Verified Access group. # @return [String] # # @!attribute [rw] policy_document # The Verified Access policy document. # @return [String] # # @!attribute [rw] tag_specifications # The tags to assign to the Verified Access group. # @return [Array] # # @!attribute [rw] client_token # A unique, case-sensitive token that you provide to ensure # idempotency of your modification request. For more information, see # [Ensuring Idempotency][1]. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] sse_specification # The options for server side encryption. # @return [Types::VerifiedAccessSseSpecificationRequest] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateVerifiedAccessGroupRequest AWS API Documentation # class CreateVerifiedAccessGroupRequest < Struct.new( :verified_access_instance_id, :description, :policy_document, :tag_specifications, :client_token, :dry_run, :sse_specification) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] verified_access_group # Details about the Verified Access group. # @return [Types::VerifiedAccessGroup] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateVerifiedAccessGroupResult AWS API Documentation # class CreateVerifiedAccessGroupResult < Struct.new( :verified_access_group) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] description # A description for the Verified Access instance. # @return [String] # # @!attribute [rw] tag_specifications # The tags to assign to the Verified Access instance. # @return [Array] # # @!attribute [rw] client_token # A unique, case-sensitive token that you provide to ensure # idempotency of your modification request. For more information, see # [Ensuring Idempotency][1]. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] fips_enabled # Enable or disable support for Federal Information Processing # Standards (FIPS) on the instance. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateVerifiedAccessInstanceRequest AWS API Documentation # class CreateVerifiedAccessInstanceRequest < Struct.new( :description, :tag_specifications, :client_token, :dry_run, :fips_enabled) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] verified_access_instance # Details about the Verified Access instance. # @return [Types::VerifiedAccessInstance] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateVerifiedAccessInstanceResult AWS API Documentation # class CreateVerifiedAccessInstanceResult < Struct.new( :verified_access_instance) SENSITIVE = [] include Aws::Structure end # Describes the options when creating an Amazon Web Services Verified # Access trust provider using the `device` type. # # @!attribute [rw] tenant_id # The ID of the tenant application with the device-identity provider. # @return [String] # # @!attribute [rw] public_signing_key_url # The URL Amazon Web Services Verified Access will use to verify the # authenticity of the device tokens. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateVerifiedAccessTrustProviderDeviceOptions AWS API Documentation # class CreateVerifiedAccessTrustProviderDeviceOptions < Struct.new( :tenant_id, :public_signing_key_url) SENSITIVE = [] include Aws::Structure end # Describes the options when creating an Amazon Web Services Verified # Access trust provider using the `user` type. # # @!attribute [rw] issuer # The OIDC issuer. # @return [String] # # @!attribute [rw] authorization_endpoint # The OIDC authorization endpoint. # @return [String] # # @!attribute [rw] token_endpoint # The OIDC token endpoint. # @return [String] # # @!attribute [rw] user_info_endpoint # The OIDC user info endpoint. # @return [String] # # @!attribute [rw] client_id # The client identifier. # @return [String] # # @!attribute [rw] client_secret # The client secret. # @return [String] # # @!attribute [rw] scope # 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. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateVerifiedAccessTrustProviderOidcOptions AWS API Documentation # class CreateVerifiedAccessTrustProviderOidcOptions < Struct.new( :issuer, :authorization_endpoint, :token_endpoint, :user_info_endpoint, :client_id, :client_secret, :scope) SENSITIVE = [:client_secret] include Aws::Structure end # @!attribute [rw] trust_provider_type # The type of trust provider. # @return [String] # # @!attribute [rw] user_trust_provider_type # The type of user-based trust provider. This parameter is required # when the provider type is `user`. # @return [String] # # @!attribute [rw] device_trust_provider_type # The type of device-based trust provider. This parameter is required # when the provider type is `device`. # @return [String] # # @!attribute [rw] oidc_options # The options for a OpenID Connect-compatible user-identity trust # provider. This parameter is required when the provider type is # `user`. # @return [Types::CreateVerifiedAccessTrustProviderOidcOptions] # # @!attribute [rw] device_options # The options for a device-based trust provider. This parameter is # required when the provider type is `device`. # @return [Types::CreateVerifiedAccessTrustProviderDeviceOptions] # # @!attribute [rw] policy_reference_name # The identifier to be used when working with policy rules. # @return [String] # # @!attribute [rw] description # A description for the Verified Access trust provider. # @return [String] # # @!attribute [rw] tag_specifications # The tags to assign to the Verified Access trust provider. # @return [Array] # # @!attribute [rw] client_token # A unique, case-sensitive token that you provide to ensure # idempotency of your modification request. For more information, see # [Ensuring Idempotency][1]. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] sse_specification # The options for server side encryption. # @return [Types::VerifiedAccessSseSpecificationRequest] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateVerifiedAccessTrustProviderRequest AWS API Documentation # class CreateVerifiedAccessTrustProviderRequest < Struct.new( :trust_provider_type, :user_trust_provider_type, :device_trust_provider_type, :oidc_options, :device_options, :policy_reference_name, :description, :tag_specifications, :client_token, :dry_run, :sse_specification) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] verified_access_trust_provider # Details about the Verified Access trust provider. # @return [Types::VerifiedAccessTrustProvider] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateVerifiedAccessTrustProviderResult AWS API Documentation # class CreateVerifiedAccessTrustProviderResult < Struct.new( :verified_access_trust_provider) SENSITIVE = [] include Aws::Structure end # Describes the user or group to be added or removed from the list of # create volume permissions for a volume. # # @!attribute [rw] group # The group to be added or removed. The possible value is `all`. # @return [String] # # @!attribute [rw] user_id # The ID of the Amazon Web Services account to be added or removed. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateVolumePermission AWS API Documentation # class CreateVolumePermission < Struct.new( :group, :user_id) SENSITIVE = [] include Aws::Structure end # Describes modifications to the list of create volume permissions for a # volume. # # @!attribute [rw] add # Adds the specified Amazon Web Services account ID or group to the # list. # @return [Array] # # @!attribute [rw] remove # Removes the specified Amazon Web Services account ID or group from # the list. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateVolumePermissionModifications AWS API Documentation # class CreateVolumePermissionModifications < Struct.new( :add, :remove) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] availability_zone # The ID of the Availability Zone in which to create the volume. For # example, `us-east-1a`. # @return [String] # # @!attribute [rw] encrypted # Indicates whether the volume should be encrypted. 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 # [Encryption by default][1] in the *Amazon EBS User Guide*. # # Encrypted Amazon EBS volumes must be attached to instances that # support Amazon EBS encryption. For more information, see [Supported # instance types][2]. # # # # [1]: https://docs.aws.amazon.com/ebs/latest/userguide/work-with-ebs-encr.html#encryption-by-default # [2]: https://docs.aws.amazon.com/ebs/latest/userguide/ebs-encryption-requirements.html#ebs-encryption_supported_instances # @return [Boolean] # # @!attribute [rw] iops # 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][1]. 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. This parameter is not supported for # `gp2`, `st1`, `sc1`, or `standard` volumes. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#ec2-nitro-instances # @return [Integer] # # @!attribute [rw] kms_key_id # The identifier of the Key Management Service (KMS) KMS key to use # for Amazon EBS encryption. If this parameter is not specified, your # KMS key for Amazon EBS is used. If `KmsKeyId` is specified, the # encrypted state must be `true`. # # You can specify the KMS key using any of the following: # # * Key ID. For example, 1234abcd-12ab-34cd-56ef-1234567890ab. # # * Key alias. For example, alias/ExampleAlias. # # * Key ARN. For example, # arn:aws:kms:us-east-1:012345678910:key/1234abcd-12ab-34cd-56ef-1234567890ab. # # * Alias ARN. For example, # arn:aws:kms:us-east-1:012345678910:alias/ExampleAlias. # # Amazon Web Services authenticates the KMS key asynchronously. # Therefore, if you specify an ID, alias, or ARN that is not valid, # the action can appear to complete, but eventually fails. # @return [String] # # @!attribute [rw] outpost_arn # The Amazon Resource Name (ARN) of the Outpost. # @return [String] # # @!attribute [rw] size # 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 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 # @return [Integer] # # @!attribute [rw] snapshot_id # The snapshot from which to create the volume. You must specify # either a snapshot ID or a volume size. # @return [String] # # @!attribute [rw] volume_type # The volume type. This parameter can be one of the following values: # # * General Purpose SSD: `gp2` \| `gp3` # # * Provisioned IOPS SSD: `io1` \| `io2` # # * Throughput Optimized HDD: `st1` # # * Cold HDD: `sc1` # # * Magnetic: `standard` # # Throughput Optimized HDD (`st1`) and Cold HDD (`sc1`) volumes can't # be used as boot volumes. # # For more information, see [Amazon EBS volume types][1] in the # *Amazon EBS User Guide*. # # Default: `gp2` # # # # [1]: https://docs.aws.amazon.com/ebs/latest/userguide/ebs-volume-types.html # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] tag_specifications # The tags to apply to the volume during creation. # @return [Array] # # @!attribute [rw] multi_attach_enabled # Indicates whether to enable Amazon EBS Multi-Attach. If you enable # Multi-Attach, you can attach the volume to up to 16 [Instances built # on the Nitro System][1] in the same Availability Zone. This # parameter is supported with `io1` and `io2` volumes only. For more # information, see [ Amazon EBS Multi-Attach][2] in the *Amazon EBS # User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#ec2-nitro-instances # [2]: https://docs.aws.amazon.com/ebs/latest/userguide/ebs-volumes-multi.html # @return [Boolean] # # @!attribute [rw] throughput # The throughput to provision for a volume, with a maximum of 1,000 # MiB/s. # # This parameter is valid only for `gp3` volumes. # # Valid Range: Minimum value of 125. Maximum value of 1000. # @return [Integer] # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. For more information, see [Ensure # Idempotency][1]. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateVolumeRequest AWS API Documentation # class CreateVolumeRequest < Struct.new( :availability_zone, :encrypted, :iops, :kms_key_id, :outpost_arn, :size, :snapshot_id, :volume_type, :dry_run, :tag_specifications, :multi_attach_enabled, :throughput, :client_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] service_id # The ID of the endpoint service. # @return [String] # # @!attribute [rw] vpc_endpoint_id # The ID of the endpoint. # @return [String] # # @!attribute [rw] connection_notification_arn # The ARN of the SNS topic for the notifications. # @return [String] # # @!attribute [rw] connection_events # The endpoint events for which to receive notifications. Valid values # are `Accept`, `Connect`, `Delete`, and `Reject`. # @return [Array] # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. For more information, see [How to ensure # idempotency][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateVpcEndpointConnectionNotificationRequest AWS API Documentation # class CreateVpcEndpointConnectionNotificationRequest < Struct.new( :dry_run, :service_id, :vpc_endpoint_id, :connection_notification_arn, :connection_events, :client_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] connection_notification # Information about the notification. # @return [Types::ConnectionNotification] # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateVpcEndpointConnectionNotificationResult AWS API Documentation # class CreateVpcEndpointConnectionNotificationResult < Struct.new( :connection_notification, :client_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] vpc_endpoint_type # The type of endpoint. # # Default: Gateway # @return [String] # # @!attribute [rw] vpc_id # The ID of the VPC. # @return [String] # # @!attribute [rw] service_name # The name of the endpoint service. # @return [String] # # @!attribute [rw] policy_document # (Interface and gateway endpoints) A policy to attach to the endpoint # that controls access to the service. The policy must be in valid # JSON format. If this parameter is not specified, we attach a default # policy that allows full access to the service. # @return [String] # # @!attribute [rw] route_table_ids # (Gateway endpoint) The route table IDs. # @return [Array] # # @!attribute [rw] subnet_ids # (Interface and Gateway Load Balancer endpoints) The IDs of the # subnets in which to create endpoint network interfaces. For a # Gateway Load Balancer endpoint, you can specify only one subnet. # @return [Array] # # @!attribute [rw] security_group_ids # (Interface endpoint) The IDs of the security groups to associate # with the endpoint network interfaces. If this parameter is not # specified, we use the default security group for the VPC. # @return [Array] # # @!attribute [rw] ip_address_type # The IP address type for the endpoint. # @return [String] # # @!attribute [rw] dns_options # The DNS options for the endpoint. # @return [Types::DnsOptionsSpecification] # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. For more information, see [How to ensure # idempotency][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] private_dns_enabled # (Interface endpoint) Indicates whether to associate a private hosted # zone with the specified VPC. The private hosted zone contains a # record set for the default public DNS name for the service for the # Region (for example, `kinesis.us-east-1.amazonaws.com`), which # resolves to the private IP addresses of the endpoint network # interfaces in the VPC. This enables you to make requests to the # default public DNS name for the service instead of the public DNS # names that are automatically generated by the VPC endpoint service. # # To use a private hosted zone, you must set the following VPC # attributes to `true`: `enableDnsHostnames` and `enableDnsSupport`. # Use ModifyVpcAttribute to set the VPC attributes. # # Default: `true` # @return [Boolean] # # @!attribute [rw] tag_specifications # The tags to associate with the endpoint. # @return [Array] # # @!attribute [rw] subnet_configurations # The subnet configurations for the endpoint. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateVpcEndpointRequest AWS API Documentation # class CreateVpcEndpointRequest < Struct.new( :dry_run, :vpc_endpoint_type, :vpc_id, :service_name, :policy_document, :route_table_ids, :subnet_ids, :security_group_ids, :ip_address_type, :dns_options, :client_token, :private_dns_enabled, :tag_specifications, :subnet_configurations) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] vpc_endpoint # Information about the endpoint. # @return [Types::VpcEndpoint] # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateVpcEndpointResult AWS API Documentation # class CreateVpcEndpointResult < Struct.new( :vpc_endpoint, :client_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] acceptance_required # Indicates whether requests from service consumers to create an # endpoint to your service must be accepted manually. # @return [Boolean] # # @!attribute [rw] private_dns_name # (Interface endpoint configuration) The private DNS name to assign to # the VPC endpoint service. # @return [String] # # @!attribute [rw] network_load_balancer_arns # The Amazon Resource Names (ARNs) of the Network Load Balancers. # @return [Array] # # @!attribute [rw] gateway_load_balancer_arns # The Amazon Resource Names (ARNs) of the Gateway Load Balancers. # @return [Array] # # @!attribute [rw] supported_ip_address_types # The supported IP address types. The possible values are `ipv4` and # `ipv6`. # @return [Array] # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. For more information, see [How to ensure # idempotency][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] tag_specifications # The tags to associate with the service. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateVpcEndpointServiceConfigurationRequest AWS API Documentation # class CreateVpcEndpointServiceConfigurationRequest < Struct.new( :dry_run, :acceptance_required, :private_dns_name, :network_load_balancer_arns, :gateway_load_balancer_arns, :supported_ip_address_types, :client_token, :tag_specifications) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] service_configuration # Information about the service configuration. # @return [Types::ServiceConfiguration] # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateVpcEndpointServiceConfigurationResult AWS API Documentation # class CreateVpcEndpointServiceConfigurationResult < Struct.new( :service_configuration, :client_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] peer_owner_id # The Amazon Web Services account ID of the owner of the accepter VPC. # # Default: Your Amazon Web Services account ID # @return [String] # # @!attribute [rw] peer_vpc_id # The ID of the VPC with which you are creating the VPC peering # connection. You must specify this parameter in the request. # @return [String] # # @!attribute [rw] vpc_id # The ID of the requester VPC. You must specify this parameter in the # request. # @return [String] # # @!attribute [rw] peer_region # The Region code for the accepter VPC, if the accepter VPC is located # in a Region other than the Region in which you make the request. # # Default: The Region in which you make the request. # @return [String] # # @!attribute [rw] tag_specifications # The tags to assign to the peering connection. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateVpcPeeringConnectionRequest AWS API Documentation # class CreateVpcPeeringConnectionRequest < Struct.new( :dry_run, :peer_owner_id, :peer_vpc_id, :vpc_id, :peer_region, :tag_specifications) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] vpc_peering_connection # Information about the VPC peering connection. # @return [Types::VpcPeeringConnection] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateVpcPeeringConnectionResult AWS API Documentation # class CreateVpcPeeringConnectionResult < Struct.new( :vpc_peering_connection) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cidr_block # The IPv4 network range for the VPC, in CIDR notation. For example, # `10.0.0.0/16`. We modify the specified CIDR block to its canonical # form; for example, if you specify `100.68.0.18/18`, we modify it to # `100.68.0.0/18`. # @return [String] # # @!attribute [rw] amazon_provided_ipv_6_cidr_block # Requests an Amazon-provided IPv6 CIDR block with a /56 prefix length # for the VPC. You cannot specify the range of IP addresses, or the # size of the CIDR block. # @return [Boolean] # # @!attribute [rw] ipv_6_pool # The ID of an IPv6 address pool from which to allocate the IPv6 CIDR # block. # @return [String] # # @!attribute [rw] ipv_6_cidr_block # The IPv6 CIDR block from the IPv6 address pool. You must also # specify `Ipv6Pool` in the request. # # To let Amazon choose the IPv6 CIDR block for you, omit this # parameter. # @return [String] # # @!attribute [rw] ipv_4_ipam_pool_id # The ID of an IPv4 IPAM pool you want to use for allocating this # VPC's CIDR. For more information, see [What is IPAM?][1] in the # *Amazon VPC IPAM User Guide*. # # # # [1]: https://docs.aws.amazon.com/vpc/latest/ipam/what-is-it-ipam.html # @return [String] # # @!attribute [rw] ipv_4_netmask_length # The netmask length of the IPv4 CIDR you want to allocate to this VPC # from an Amazon VPC IP Address Manager (IPAM) pool. For more # information about IPAM, see [What is IPAM?][1] in the *Amazon VPC # IPAM User Guide*. # # # # [1]: https://docs.aws.amazon.com/vpc/latest/ipam/what-is-it-ipam.html # @return [Integer] # # @!attribute [rw] ipv_6_ipam_pool_id # The ID of an IPv6 IPAM pool which will be used to allocate this VPC # an IPv6 CIDR. 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?][1] in the # *Amazon VPC IPAM User Guide*. # # # # [1]: https://docs.aws.amazon.com/vpc/latest/ipam/what-is-it-ipam.html # @return [String] # # @!attribute [rw] ipv_6_netmask_length # The netmask length of the IPv6 CIDR you want to allocate to this VPC # from an Amazon VPC IP Address Manager (IPAM) pool. For more # information about IPAM, see [What is IPAM?][1] in the *Amazon VPC # IPAM User Guide*. # # # # [1]: https://docs.aws.amazon.com/vpc/latest/ipam/what-is-it-ipam.html # @return [Integer] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] instance_tenancy # The tenancy options for instances launched into the VPC. For # `default`, instances are launched with shared tenancy by default. # You can launch instances with any tenancy into a shared tenancy VPC. # For `dedicated`, instances are launched as dedicated tenancy # instances by default. You can only launch instances with a tenancy # of `dedicated` or `host` into a dedicated tenancy VPC. # # **Important:** The `host` value cannot be used with this parameter. # Use the `default` or `dedicated` values only. # # Default: `default` # @return [String] # # @!attribute [rw] ipv_6_cidr_block_network_border_group # The name of the location from which we advertise the IPV6 CIDR # block. Use this parameter to limit the address to this location. # # You must set `AmazonProvidedIpv6CidrBlock` to `true` to use this # parameter. # @return [String] # # @!attribute [rw] tag_specifications # The tags to assign to the VPC. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateVpcRequest AWS API Documentation # class CreateVpcRequest < Struct.new( :cidr_block, :amazon_provided_ipv_6_cidr_block, :ipv_6_pool, :ipv_6_cidr_block, :ipv_4_ipam_pool_id, :ipv_4_netmask_length, :ipv_6_ipam_pool_id, :ipv_6_netmask_length, :dry_run, :instance_tenancy, :ipv_6_cidr_block_network_border_group, :tag_specifications) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] vpc # Information about the VPC. # @return [Types::Vpc] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateVpcResult AWS API Documentation # class CreateVpcResult < Struct.new( :vpc) SENSITIVE = [] include Aws::Structure end # Contains the parameters for CreateVpnConnection. # # @!attribute [rw] customer_gateway_id # The ID of the customer gateway. # @return [String] # # @!attribute [rw] type # The type of VPN connection (`ipsec.1`). # @return [String] # # @!attribute [rw] vpn_gateway_id # The ID of the virtual private gateway. If you specify a virtual # private gateway, you cannot specify a transit gateway. # @return [String] # # @!attribute [rw] transit_gateway_id # The ID of the transit gateway. If you specify a transit gateway, you # cannot specify a virtual private gateway. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] options # The options for the VPN connection. # @return [Types::VpnConnectionOptionsSpecification] # # @!attribute [rw] tag_specifications # The tags to apply to the VPN connection. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateVpnConnectionRequest AWS API Documentation # class CreateVpnConnectionRequest < Struct.new( :customer_gateway_id, :type, :vpn_gateway_id, :transit_gateway_id, :dry_run, :options, :tag_specifications) SENSITIVE = [] include Aws::Structure end # Contains the output of CreateVpnConnection. # # @!attribute [rw] vpn_connection # Information about the VPN connection. # @return [Types::VpnConnection] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateVpnConnectionResult AWS API Documentation # class CreateVpnConnectionResult < Struct.new( :vpn_connection) SENSITIVE = [] include Aws::Structure end # Contains the parameters for CreateVpnConnectionRoute. # # @!attribute [rw] destination_cidr_block # The CIDR block associated with the local subnet of the customer # network. # @return [String] # # @!attribute [rw] vpn_connection_id # The ID of the VPN connection. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateVpnConnectionRouteRequest AWS API Documentation # class CreateVpnConnectionRouteRequest < Struct.new( :destination_cidr_block, :vpn_connection_id) SENSITIVE = [] include Aws::Structure end # Contains the parameters for CreateVpnGateway. # # @!attribute [rw] availability_zone # The Availability Zone for the virtual private gateway. # @return [String] # # @!attribute [rw] type # The type of VPN connection this virtual private gateway supports. # @return [String] # # @!attribute [rw] tag_specifications # The tags to apply to the virtual private gateway. # @return [Array] # # @!attribute [rw] amazon_side_asn # A private Autonomous System Number (ASN) for the Amazon side of a # BGP session. If you're using a 16-bit ASN, it must be in the 64512 # to 65534 range. If you're using a 32-bit ASN, it must be in the # 4200000000 to 4294967294 range. # # Default: 64512 # @return [Integer] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateVpnGatewayRequest AWS API Documentation # class CreateVpnGatewayRequest < Struct.new( :availability_zone, :type, :tag_specifications, :amazon_side_asn, :dry_run) SENSITIVE = [] include Aws::Structure end # Contains the output of CreateVpnGateway. # # @!attribute [rw] vpn_gateway # Information about the virtual private gateway. # @return [Types::VpnGateway] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreateVpnGatewayResult AWS API Documentation # class CreateVpnGatewayResult < Struct.new( :vpn_gateway) SENSITIVE = [] include Aws::Structure end # Describes the credit option for CPU usage of a T instance. # # @!attribute [rw] cpu_credits # The credit option for CPU usage of a T instance. # # Valid values: `standard` \| `unlimited` # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreditSpecification AWS API Documentation # class CreditSpecification < Struct.new( :cpu_credits) SENSITIVE = [] include Aws::Structure end # The credit option for CPU usage of a T instance. # # @!attribute [rw] cpu_credits # The credit option for CPU usage of a T instance. # # Valid values: `standard` \| `unlimited` # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CreditSpecificationRequest AWS API Documentation # class CreditSpecificationRequest < Struct.new( :cpu_credits) SENSITIVE = [] include Aws::Structure end # Describes a customer gateway. # # @!attribute [rw] bgp_asn # The customer gateway's Border Gateway Protocol (BGP) Autonomous # System Number (ASN). # @return [String] # # @!attribute [rw] customer_gateway_id # The ID of the customer gateway. # @return [String] # # @!attribute [rw] ip_address # The IP address of the customer gateway device's outside interface. # @return [String] # # @!attribute [rw] certificate_arn # The Amazon Resource Name (ARN) for the customer gateway certificate. # @return [String] # # @!attribute [rw] state # The current state of the customer gateway (`pending | available | # deleting | deleted`). # @return [String] # # @!attribute [rw] type # The type of VPN connection the customer gateway supports # (`ipsec.1`). # @return [String] # # @!attribute [rw] device_name # The name of customer gateway device. # @return [String] # # @!attribute [rw] tags # Any tags assigned to the customer gateway. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/CustomerGateway AWS API Documentation # class CustomerGateway < Struct.new( :bgp_asn, :customer_gateway_id, :ip_address, :certificate_arn, :state, :type, :device_name, :tags) SENSITIVE = [] include Aws::Structure end # A query used for retrieving network health data. # # @!attribute [rw] id # 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`. # @return [String] # # @!attribute [rw] source # The Region or Availability Zone that's the source for the data # query. For example, `us-east-1`. # @return [String] # # @!attribute [rw] destination # The Region or Availability Zone that's the target for the data # query. For example, `eu-north-1`. # @return [String] # # @!attribute [rw] metric # The metric, `aggregation-latency`, indicating that network latency # is aggregated for the query. This is the only supported metric. # @return [String] # # @!attribute [rw] statistic # 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. # @return [String] # # @!attribute [rw] period # The aggregation period used for the data query. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DataQuery AWS API Documentation # class DataQuery < Struct.new( :id, :source, :destination, :metric, :statistic, :period) SENSITIVE = [] include Aws::Structure end # The response to a `DataQuery`. # # @!attribute [rw] id # The ID passed in the `DataQuery`. # @return [String] # # @!attribute [rw] source # The Region or Availability Zone that's the source for the data # query. For example, `us-east-1`. # @return [String] # # @!attribute [rw] destination # The Region or Availability Zone that's the destination for the data # query. For example, `eu-west-1`. # @return [String] # # @!attribute [rw] metric # The metric used for the network performance request. Only # `aggregate-latency` is supported, which shows network latency during # a specified period. # @return [String] # # @!attribute [rw] statistic # The statistic used for the network performance request. # @return [String] # # @!attribute [rw] period # The period used for the network performance request. # @return [String] # # @!attribute [rw] metric_points # A list of `MetricPoint` objects. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DataResponse AWS API Documentation # class DataResponse < Struct.new( :id, :source, :destination, :metric, :statistic, :period, :metric_points) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] carrier_gateway_id # The ID of the carrier gateway. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteCarrierGatewayRequest AWS API Documentation # class DeleteCarrierGatewayRequest < Struct.new( :carrier_gateway_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] carrier_gateway # Information about the carrier gateway. # @return [Types::CarrierGateway] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteCarrierGatewayResult AWS API Documentation # class DeleteCarrierGatewayResult < Struct.new( :carrier_gateway) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] client_vpn_endpoint_id # The ID of the Client VPN to be deleted. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteClientVpnEndpointRequest AWS API Documentation # class DeleteClientVpnEndpointRequest < Struct.new( :client_vpn_endpoint_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] status # The current state of the Client VPN endpoint. # @return [Types::ClientVpnEndpointStatus] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteClientVpnEndpointResult AWS API Documentation # class DeleteClientVpnEndpointResult < Struct.new( :status) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] client_vpn_endpoint_id # The ID of the Client VPN endpoint from which the route is to be # deleted. # @return [String] # # @!attribute [rw] target_vpc_subnet_id # The ID of the target subnet used by the route. # @return [String] # # @!attribute [rw] destination_cidr_block # The IPv4 address range, in CIDR notation, of the route to be # deleted. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteClientVpnRouteRequest AWS API Documentation # class DeleteClientVpnRouteRequest < Struct.new( :client_vpn_endpoint_id, :target_vpc_subnet_id, :destination_cidr_block, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] status # The current state of the route. # @return [Types::ClientVpnRouteStatus] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteClientVpnRouteResult AWS API Documentation # class DeleteClientVpnRouteResult < Struct.new( :status) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cidr # A customer-owned IP address range that you want to delete. # @return [String] # # @!attribute [rw] coip_pool_id # The ID of the customer-owned address pool. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteCoipCidrRequest AWS API Documentation # class DeleteCoipCidrRequest < Struct.new( :cidr, :coip_pool_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] coip_cidr # Information about a range of customer-owned IP addresses. # @return [Types::CoipCidr] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteCoipCidrResult AWS API Documentation # class DeleteCoipCidrResult < Struct.new( :coip_cidr) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] coip_pool_id # The ID of the CoIP pool that you want to delete. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteCoipPoolRequest AWS API Documentation # class DeleteCoipPoolRequest < Struct.new( :coip_pool_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] coip_pool # Information about the CoIP address pool. # @return [Types::CoipPool] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteCoipPoolResult AWS API Documentation # class DeleteCoipPoolResult < Struct.new( :coip_pool) SENSITIVE = [] include Aws::Structure end # Contains the parameters for DeleteCustomerGateway. # # @!attribute [rw] customer_gateway_id # The ID of the customer gateway. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteCustomerGatewayRequest AWS API Documentation # class DeleteCustomerGatewayRequest < Struct.new( :customer_gateway_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dhcp_options_id # The ID of the DHCP options set. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteDhcpOptionsRequest AWS API Documentation # class DeleteDhcpOptionsRequest < Struct.new( :dhcp_options_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] egress_only_internet_gateway_id # The ID of the egress-only internet gateway. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteEgressOnlyInternetGatewayRequest AWS API Documentation # class DeleteEgressOnlyInternetGatewayRequest < Struct.new( :dry_run, :egress_only_internet_gateway_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] return_code # Returns `true` if the request succeeds; otherwise, it returns an # error. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteEgressOnlyInternetGatewayResult AWS API Documentation # class DeleteEgressOnlyInternetGatewayResult < Struct.new( :return_code) SENSITIVE = [] include Aws::Structure end # Describes an EC2 Fleet error. # # @!attribute [rw] code # The error code. # @return [String] # # @!attribute [rw] message # The description for the error code. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteFleetError AWS API Documentation # class DeleteFleetError < Struct.new( :code, :message) SENSITIVE = [] include Aws::Structure end # Describes an EC2 Fleet that was not successfully deleted. # # @!attribute [rw] error # The error. # @return [Types::DeleteFleetError] # # @!attribute [rw] fleet_id # The ID of the EC2 Fleet. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteFleetErrorItem AWS API Documentation # class DeleteFleetErrorItem < Struct.new( :error, :fleet_id) SENSITIVE = [] include Aws::Structure end # Describes an EC2 Fleet that was successfully deleted. # # @!attribute [rw] current_fleet_state # The current state of the EC2 Fleet. # @return [String] # # @!attribute [rw] previous_fleet_state # The previous state of the EC2 Fleet. # @return [String] # # @!attribute [rw] fleet_id # The ID of the EC2 Fleet. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteFleetSuccessItem AWS API Documentation # class DeleteFleetSuccessItem < Struct.new( :current_fleet_state, :previous_fleet_state, :fleet_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] fleet_ids # The IDs of the EC2 Fleets. # # Constraints: In a single request, you can specify up to 25 `instant` # fleet IDs and up to 100 `maintain` or `request` fleet IDs. # @return [Array] # # @!attribute [rw] terminate_instances # Indicates whether to terminate the associated instances when the EC2 # Fleet is deleted. The default is to terminate the instances. # # To let the instances continue to run after the EC2 Fleet is deleted, # specify `no-terminate-instances`. Supported only for fleets of type # `maintain` and `request`. # # For `instant` fleets, you cannot specify `NoTerminateInstances`. A # deleted `instant` fleet with running instances is not supported. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteFleetsRequest AWS API Documentation # class DeleteFleetsRequest < Struct.new( :dry_run, :fleet_ids, :terminate_instances) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] successful_fleet_deletions # Information about the EC2 Fleets that are successfully deleted. # @return [Array] # # @!attribute [rw] unsuccessful_fleet_deletions # Information about the EC2 Fleets that are not successfully deleted. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteFleetsResult AWS API Documentation # class DeleteFleetsResult < Struct.new( :successful_fleet_deletions, :unsuccessful_fleet_deletions) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] flow_log_ids # One or more flow log IDs. # # Constraint: Maximum of 1000 flow log IDs. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteFlowLogsRequest AWS API Documentation # class DeleteFlowLogsRequest < Struct.new( :dry_run, :flow_log_ids) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] unsuccessful # Information about the flow logs that could not be deleted # successfully. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteFlowLogsResult AWS API Documentation # class DeleteFlowLogsResult < Struct.new( :unsuccessful) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] fpga_image_id # The ID of the AFI. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteFpgaImageRequest AWS API Documentation # class DeleteFpgaImageRequest < Struct.new( :dry_run, :fpga_image_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] return # Is `true` if the request succeeds, and an error otherwise. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteFpgaImageResult AWS API Documentation # class DeleteFpgaImageResult < Struct.new( :return) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] instance_connect_endpoint_id # The ID of the EC2 Instance Connect Endpoint to delete. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteInstanceConnectEndpointRequest AWS API Documentation # class DeleteInstanceConnectEndpointRequest < Struct.new( :dry_run, :instance_connect_endpoint_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] instance_connect_endpoint # Information about the EC2 Instance Connect Endpoint. # @return [Types::Ec2InstanceConnectEndpoint] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteInstanceConnectEndpointResult AWS API Documentation # class DeleteInstanceConnectEndpointResult < Struct.new( :instance_connect_endpoint) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] force_delete # Specify `true` to force delete the event window. Use the force # delete parameter if the event window is currently associated with # targets. # @return [Boolean] # # @!attribute [rw] instance_event_window_id # The ID of the event window. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteInstanceEventWindowRequest AWS API Documentation # class DeleteInstanceEventWindowRequest < Struct.new( :dry_run, :force_delete, :instance_event_window_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] instance_event_window_state # The state of the event window. # @return [Types::InstanceEventWindowStateChange] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteInstanceEventWindowResult AWS API Documentation # class DeleteInstanceEventWindowResult < Struct.new( :instance_event_window_state) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] internet_gateway_id # The ID of the internet gateway. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteInternetGatewayRequest AWS API Documentation # class DeleteInternetGatewayRequest < Struct.new( :dry_run, :internet_gateway_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # A check for whether you have the required permissions for the action # without actually making the request and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] ipam_pool_id # The ID of the pool to delete. # @return [String] # # @!attribute [rw] cascade # Enables you to quickly delete an IPAM pool and all resources within # that pool, including provisioned CIDRs, allocations, and other # pools. # # You can only use this option to delete pools in the private scope or # pools in the public scope with a source resource. A source resource # is a resource used to provision CIDRs to a resource planning pool. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteIpamPoolRequest AWS API Documentation # class DeleteIpamPoolRequest < Struct.new( :dry_run, :ipam_pool_id, :cascade) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] ipam_pool # Information about the results of the deletion. # @return [Types::IpamPool] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteIpamPoolResult AWS API Documentation # class DeleteIpamPoolResult < Struct.new( :ipam_pool) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # A check for whether you have the required permissions for the action # without actually making the request and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] ipam_id # The ID of the IPAM to delete. # @return [String] # # @!attribute [rw] cascade # Enables you to quickly delete an IPAM, private scopes, pools in # private scopes, and any allocations in the pools in private scopes. # You cannot delete the IPAM with this option if there is a pool in # your public scope. If you use this option, IPAM does the following: # # * Deallocates any CIDRs allocated to VPC resources (such as VPCs) in # pools in private scopes. # # No VPC resources are deleted as a result of enabling this option. # The CIDR associated with the resource will no longer be allocated # from an IPAM pool, but the CIDR itself will remain unchanged. # # # # * Deprovisions all IPv4 CIDRs provisioned to IPAM pools in private # scopes. # # * Deletes all IPAM pools in private scopes. # # * Deletes all non-default private scopes in the IPAM. # # * Deletes the default public and private scopes and the IPAM. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteIpamRequest AWS API Documentation # class DeleteIpamRequest < Struct.new( :dry_run, :ipam_id, :cascade) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # A check for whether you have the required permissions for the action # without actually making the request and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] ipam_resource_discovery_id # The IPAM resource discovery ID. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteIpamResourceDiscoveryRequest AWS API Documentation # class DeleteIpamResourceDiscoveryRequest < Struct.new( :dry_run, :ipam_resource_discovery_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] ipam_resource_discovery # The IPAM resource discovery. # @return [Types::IpamResourceDiscovery] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteIpamResourceDiscoveryResult AWS API Documentation # class DeleteIpamResourceDiscoveryResult < Struct.new( :ipam_resource_discovery) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] ipam # Information about the results of the deletion. # @return [Types::Ipam] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteIpamResult AWS API Documentation # class DeleteIpamResult < Struct.new( :ipam) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # A check for whether you have the required permissions for the action # without actually making the request and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] ipam_scope_id # The ID of the scope to delete. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteIpamScopeRequest AWS API Documentation # class DeleteIpamScopeRequest < Struct.new( :dry_run, :ipam_scope_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] ipam_scope # Information about the results of the deletion. # @return [Types::IpamScope] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteIpamScopeResult AWS API Documentation # class DeleteIpamScopeResult < Struct.new( :ipam_scope) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] key_name # The name of the key pair. # @return [String] # # @!attribute [rw] key_pair_id # The ID of the key pair. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteKeyPairRequest AWS API Documentation # class DeleteKeyPairRequest < Struct.new( :key_name, :key_pair_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] return # Is `true` if the request succeeds, and an error otherwise. # @return [Boolean] # # @!attribute [rw] key_pair_id # The ID of the key pair. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteKeyPairResult AWS API Documentation # class DeleteKeyPairResult < Struct.new( :return, :key_pair_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] launch_template_id # The ID of the launch template. # # You must specify either the `LaunchTemplateId` or the # `LaunchTemplateName`, but not both. # @return [String] # # @!attribute [rw] launch_template_name # The name of the launch template. # # You must specify either the `LaunchTemplateName` or the # `LaunchTemplateId`, but not both. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteLaunchTemplateRequest AWS API Documentation # class DeleteLaunchTemplateRequest < Struct.new( :dry_run, :launch_template_id, :launch_template_name) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] launch_template # Information about the launch template. # @return [Types::LaunchTemplate] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteLaunchTemplateResult AWS API Documentation # class DeleteLaunchTemplateResult < Struct.new( :launch_template) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] launch_template_id # The ID of the launch template. # # You must specify either the `LaunchTemplateId` or the # `LaunchTemplateName`, but not both. # @return [String] # # @!attribute [rw] launch_template_name # The name of the launch template. # # You must specify either the `LaunchTemplateName` or the # `LaunchTemplateId`, but not both. # @return [String] # # @!attribute [rw] versions # The version numbers of one or more launch template versions to # delete. You can specify up to 200 launch template version numbers. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteLaunchTemplateVersionsRequest AWS API Documentation # class DeleteLaunchTemplateVersionsRequest < Struct.new( :dry_run, :launch_template_id, :launch_template_name, :versions) SENSITIVE = [] include Aws::Structure end # Describes a launch template version that could not be deleted. # # @!attribute [rw] launch_template_id # The ID of the launch template. # @return [String] # # @!attribute [rw] launch_template_name # The name of the launch template. # @return [String] # # @!attribute [rw] version_number # The version number of the launch template. # @return [Integer] # # @!attribute [rw] response_error # Information about the error. # @return [Types::ResponseError] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteLaunchTemplateVersionsResponseErrorItem AWS API Documentation # class DeleteLaunchTemplateVersionsResponseErrorItem < Struct.new( :launch_template_id, :launch_template_name, :version_number, :response_error) SENSITIVE = [] include Aws::Structure end # Describes a launch template version that was successfully deleted. # # @!attribute [rw] launch_template_id # The ID of the launch template. # @return [String] # # @!attribute [rw] launch_template_name # The name of the launch template. # @return [String] # # @!attribute [rw] version_number # The version number of the launch template. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteLaunchTemplateVersionsResponseSuccessItem AWS API Documentation # class DeleteLaunchTemplateVersionsResponseSuccessItem < Struct.new( :launch_template_id, :launch_template_name, :version_number) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] successfully_deleted_launch_template_versions # Information about the launch template versions that were # successfully deleted. # @return [Array] # # @!attribute [rw] unsuccessfully_deleted_launch_template_versions # Information about the launch template versions that could not be # deleted. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteLaunchTemplateVersionsResult AWS API Documentation # class DeleteLaunchTemplateVersionsResult < Struct.new( :successfully_deleted_launch_template_versions, :unsuccessfully_deleted_launch_template_versions) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] destination_cidr_block # The CIDR range for the route. This must match the CIDR for the route # exactly. # @return [String] # # @!attribute [rw] local_gateway_route_table_id # The ID of the local gateway route table. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] destination_prefix_list_id # Use a prefix list in place of `DestinationCidrBlock`. You cannot use # `DestinationPrefixListId` and `DestinationCidrBlock` in the same # request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteLocalGatewayRouteRequest AWS API Documentation # class DeleteLocalGatewayRouteRequest < Struct.new( :destination_cidr_block, :local_gateway_route_table_id, :dry_run, :destination_prefix_list_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] route # Information about the route. # @return [Types::LocalGatewayRoute] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteLocalGatewayRouteResult AWS API Documentation # class DeleteLocalGatewayRouteResult < Struct.new( :route) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] local_gateway_route_table_id # The ID of the local gateway route table. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteLocalGatewayRouteTableRequest AWS API Documentation # class DeleteLocalGatewayRouteTableRequest < Struct.new( :local_gateway_route_table_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] local_gateway_route_table # Information about the local gateway route table. # @return [Types::LocalGatewayRouteTable] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteLocalGatewayRouteTableResult AWS API Documentation # class DeleteLocalGatewayRouteTableResult < Struct.new( :local_gateway_route_table) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] local_gateway_route_table_virtual_interface_group_association_id # The ID of the local gateway route table virtual interface group # association. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteLocalGatewayRouteTableVirtualInterfaceGroupAssociationRequest AWS API Documentation # class DeleteLocalGatewayRouteTableVirtualInterfaceGroupAssociationRequest < Struct.new( :local_gateway_route_table_virtual_interface_group_association_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] local_gateway_route_table_virtual_interface_group_association # Information about the association. # @return [Types::LocalGatewayRouteTableVirtualInterfaceGroupAssociation] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteLocalGatewayRouteTableVirtualInterfaceGroupAssociationResult AWS API Documentation # class DeleteLocalGatewayRouteTableVirtualInterfaceGroupAssociationResult < Struct.new( :local_gateway_route_table_virtual_interface_group_association) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] local_gateway_route_table_vpc_association_id # The ID of the association. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteLocalGatewayRouteTableVpcAssociationRequest AWS API Documentation # class DeleteLocalGatewayRouteTableVpcAssociationRequest < Struct.new( :local_gateway_route_table_vpc_association_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] local_gateway_route_table_vpc_association # Information about the association. # @return [Types::LocalGatewayRouteTableVpcAssociation] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteLocalGatewayRouteTableVpcAssociationResult AWS API Documentation # class DeleteLocalGatewayRouteTableVpcAssociationResult < Struct.new( :local_gateway_route_table_vpc_association) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] prefix_list_id # The ID of the prefix list. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteManagedPrefixListRequest AWS API Documentation # class DeleteManagedPrefixListRequest < Struct.new( :dry_run, :prefix_list_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] prefix_list # Information about the prefix list. # @return [Types::ManagedPrefixList] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteManagedPrefixListResult AWS API Documentation # class DeleteManagedPrefixListResult < Struct.new( :prefix_list) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] nat_gateway_id # The ID of the NAT gateway. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteNatGatewayRequest AWS API Documentation # class DeleteNatGatewayRequest < Struct.new( :dry_run, :nat_gateway_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] nat_gateway_id # The ID of the NAT gateway. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteNatGatewayResult AWS API Documentation # class DeleteNatGatewayResult < Struct.new( :nat_gateway_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] egress # Indicates whether the rule is an egress rule. # @return [Boolean] # # @!attribute [rw] network_acl_id # The ID of the network ACL. # @return [String] # # @!attribute [rw] rule_number # The rule number of the entry to delete. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteNetworkAclEntryRequest AWS API Documentation # class DeleteNetworkAclEntryRequest < Struct.new( :dry_run, :egress, :network_acl_id, :rule_number) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] network_acl_id # The ID of the network ACL. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteNetworkAclRequest AWS API Documentation # class DeleteNetworkAclRequest < Struct.new( :dry_run, :network_acl_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] network_insights_access_scope_analysis_id # The ID of the Network Access Scope analysis. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteNetworkInsightsAccessScopeAnalysisRequest AWS API Documentation # class DeleteNetworkInsightsAccessScopeAnalysisRequest < Struct.new( :network_insights_access_scope_analysis_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] network_insights_access_scope_analysis_id # The ID of the Network Access Scope analysis. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteNetworkInsightsAccessScopeAnalysisResult AWS API Documentation # class DeleteNetworkInsightsAccessScopeAnalysisResult < Struct.new( :network_insights_access_scope_analysis_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] network_insights_access_scope_id # The ID of the Network Access Scope. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteNetworkInsightsAccessScopeRequest AWS API Documentation # class DeleteNetworkInsightsAccessScopeRequest < Struct.new( :dry_run, :network_insights_access_scope_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] network_insights_access_scope_id # The ID of the Network Access Scope. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteNetworkInsightsAccessScopeResult AWS API Documentation # class DeleteNetworkInsightsAccessScopeResult < Struct.new( :network_insights_access_scope_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] network_insights_analysis_id # The ID of the network insights analysis. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteNetworkInsightsAnalysisRequest AWS API Documentation # class DeleteNetworkInsightsAnalysisRequest < Struct.new( :dry_run, :network_insights_analysis_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] network_insights_analysis_id # The ID of the network insights analysis. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteNetworkInsightsAnalysisResult AWS API Documentation # class DeleteNetworkInsightsAnalysisResult < Struct.new( :network_insights_analysis_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] network_insights_path_id # The ID of the path. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteNetworkInsightsPathRequest AWS API Documentation # class DeleteNetworkInsightsPathRequest < Struct.new( :dry_run, :network_insights_path_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] network_insights_path_id # The ID of the path. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteNetworkInsightsPathResult AWS API Documentation # class DeleteNetworkInsightsPathResult < Struct.new( :network_insights_path_id) SENSITIVE = [] include Aws::Structure end # Contains the parameters for DeleteNetworkInterfacePermission. # # @!attribute [rw] network_interface_permission_id # The ID of the network interface permission. # @return [String] # # @!attribute [rw] force # Specify `true` to remove the permission even if the network # interface is attached to an instance. # @return [Boolean] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteNetworkInterfacePermissionRequest AWS API Documentation # class DeleteNetworkInterfacePermissionRequest < Struct.new( :network_interface_permission_id, :force, :dry_run) SENSITIVE = [] include Aws::Structure end # Contains the output for DeleteNetworkInterfacePermission. # # @!attribute [rw] return # Returns `true` if the request succeeds, otherwise returns an error. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteNetworkInterfacePermissionResult AWS API Documentation # class DeleteNetworkInterfacePermissionResult < Struct.new( :return) SENSITIVE = [] include Aws::Structure end # Contains the parameters for DeleteNetworkInterface. # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] network_interface_id # The ID of the network interface. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteNetworkInterfaceRequest AWS API Documentation # class DeleteNetworkInterfaceRequest < Struct.new( :dry_run, :network_interface_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] group_name # The name of the placement group. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeletePlacementGroupRequest AWS API Documentation # class DeletePlacementGroupRequest < Struct.new( :dry_run, :group_name) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # A check for whether you have the required permissions for the action # without actually making the request and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] pool_id # The ID of the public IPv4 pool you want to delete. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeletePublicIpv4PoolRequest AWS API Documentation # class DeletePublicIpv4PoolRequest < Struct.new( :dry_run, :pool_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] return_value # Information about the result of deleting the public IPv4 pool. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeletePublicIpv4PoolResult AWS API Documentation # class DeletePublicIpv4PoolResult < Struct.new( :return_value) SENSITIVE = [] include Aws::Structure end # Describes the error for a Reserved Instance whose queued purchase # could not be deleted. # # @!attribute [rw] code # The error code. # @return [String] # # @!attribute [rw] message # The error message. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteQueuedReservedInstancesError AWS API Documentation # class DeleteQueuedReservedInstancesError < Struct.new( :code, :message) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] reserved_instances_ids # The IDs of the Reserved Instances. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteQueuedReservedInstancesRequest AWS API Documentation # class DeleteQueuedReservedInstancesRequest < Struct.new( :dry_run, :reserved_instances_ids) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] successful_queued_purchase_deletions # Information about the queued purchases that were successfully # deleted. # @return [Array] # # @!attribute [rw] failed_queued_purchase_deletions # Information about the queued purchases that could not be deleted. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteQueuedReservedInstancesResult AWS API Documentation # class DeleteQueuedReservedInstancesResult < Struct.new( :successful_queued_purchase_deletions, :failed_queued_purchase_deletions) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] destination_cidr_block # The IPv4 CIDR range for the route. The value you specify must match # the CIDR for the route exactly. # @return [String] # # @!attribute [rw] destination_ipv_6_cidr_block # The IPv6 CIDR range for the route. The value you specify must match # the CIDR for the route exactly. # @return [String] # # @!attribute [rw] destination_prefix_list_id # The ID of the prefix list for the route. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] route_table_id # The ID of the route table. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteRouteRequest AWS API Documentation # class DeleteRouteRequest < Struct.new( :destination_cidr_block, :destination_ipv_6_cidr_block, :destination_prefix_list_id, :dry_run, :route_table_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] route_table_id # The ID of the route table. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteRouteTableRequest AWS API Documentation # class DeleteRouteTableRequest < Struct.new( :dry_run, :route_table_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] group_id # The ID of the security group. # @return [String] # # @!attribute [rw] group_name # \[Default VPC\] The name of the security group. You can specify # either the security group name or the security group ID. For # security groups in a nondefault VPC, you must specify the security # group ID. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteSecurityGroupRequest AWS API Documentation # class DeleteSecurityGroupRequest < Struct.new( :group_id, :group_name, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] snapshot_id # The ID of the EBS snapshot. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteSnapshotRequest AWS API Documentation # class DeleteSnapshotRequest < Struct.new( :snapshot_id, :dry_run) SENSITIVE = [] include Aws::Structure end # Contains the parameters for DeleteSpotDatafeedSubscription. # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteSpotDatafeedSubscriptionRequest AWS API Documentation # class DeleteSpotDatafeedSubscriptionRequest < Struct.new( :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] subnet_cidr_reservation_id # The ID of the subnet CIDR reservation. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteSubnetCidrReservationRequest AWS API Documentation # class DeleteSubnetCidrReservationRequest < Struct.new( :subnet_cidr_reservation_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] deleted_subnet_cidr_reservation # Information about the deleted subnet CIDR reservation. # @return [Types::SubnetCidrReservation] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteSubnetCidrReservationResult AWS API Documentation # class DeleteSubnetCidrReservationResult < Struct.new( :deleted_subnet_cidr_reservation) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] subnet_id # The ID of the subnet. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteSubnetRequest AWS API Documentation # class DeleteSubnetRequest < Struct.new( :subnet_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] resources # The IDs of the resources, separated by spaces. # # Constraints: Up to 1000 resource IDs. We recommend breaking up this # request into smaller batches. # @return [Array] # # @!attribute [rw] tags # The tags to delete. Specify a tag key and an optional tag value to # delete specific tags. If you specify a tag key without a tag value, # we delete any tag with this key regardless of its value. If you # specify a tag key with an empty string as the tag value, we delete # the tag only if its value is an empty string. # # If you omit this parameter, we delete all user-defined tags for the # specified resources. We do not delete Amazon Web Services-generated # tags (tags that have the `aws:` prefix). # # Constraints: Up to 1000 tags. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteTagsRequest AWS API Documentation # class DeleteTagsRequest < Struct.new( :dry_run, :resources, :tags) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] traffic_mirror_filter_id # The ID of the Traffic Mirror filter. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteTrafficMirrorFilterRequest AWS API Documentation # class DeleteTrafficMirrorFilterRequest < Struct.new( :traffic_mirror_filter_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] traffic_mirror_filter_id # The ID of the Traffic Mirror filter. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteTrafficMirrorFilterResult AWS API Documentation # class DeleteTrafficMirrorFilterResult < Struct.new( :traffic_mirror_filter_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] traffic_mirror_filter_rule_id # The ID of the Traffic Mirror rule. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteTrafficMirrorFilterRuleRequest AWS API Documentation # class DeleteTrafficMirrorFilterRuleRequest < Struct.new( :traffic_mirror_filter_rule_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] traffic_mirror_filter_rule_id # The ID of the deleted Traffic Mirror rule. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteTrafficMirrorFilterRuleResult AWS API Documentation # class DeleteTrafficMirrorFilterRuleResult < Struct.new( :traffic_mirror_filter_rule_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] traffic_mirror_session_id # The ID of the Traffic Mirror session. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteTrafficMirrorSessionRequest AWS API Documentation # class DeleteTrafficMirrorSessionRequest < Struct.new( :traffic_mirror_session_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] traffic_mirror_session_id # The ID of the deleted Traffic Mirror session. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteTrafficMirrorSessionResult AWS API Documentation # class DeleteTrafficMirrorSessionResult < Struct.new( :traffic_mirror_session_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] traffic_mirror_target_id # The ID of the Traffic Mirror target. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteTrafficMirrorTargetRequest AWS API Documentation # class DeleteTrafficMirrorTargetRequest < Struct.new( :traffic_mirror_target_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] traffic_mirror_target_id # The ID of the deleted Traffic Mirror target. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteTrafficMirrorTargetResult AWS API Documentation # class DeleteTrafficMirrorTargetResult < Struct.new( :traffic_mirror_target_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_connect_peer_id # The ID of the Connect peer. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteTransitGatewayConnectPeerRequest AWS API Documentation # class DeleteTransitGatewayConnectPeerRequest < Struct.new( :transit_gateway_connect_peer_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_connect_peer # Information about the deleted Connect peer. # @return [Types::TransitGatewayConnectPeer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteTransitGatewayConnectPeerResult AWS API Documentation # class DeleteTransitGatewayConnectPeerResult < Struct.new( :transit_gateway_connect_peer) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_attachment_id # The ID of the Connect attachment. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteTransitGatewayConnectRequest AWS API Documentation # class DeleteTransitGatewayConnectRequest < Struct.new( :transit_gateway_attachment_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_connect # Information about the deleted Connect attachment. # @return [Types::TransitGatewayConnect] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteTransitGatewayConnectResult AWS API Documentation # class DeleteTransitGatewayConnectResult < Struct.new( :transit_gateway_connect) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_multicast_domain_id # The ID of the transit gateway multicast domain. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteTransitGatewayMulticastDomainRequest AWS API Documentation # class DeleteTransitGatewayMulticastDomainRequest < Struct.new( :transit_gateway_multicast_domain_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_multicast_domain # Information about the deleted transit gateway multicast domain. # @return [Types::TransitGatewayMulticastDomain] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteTransitGatewayMulticastDomainResult AWS API Documentation # class DeleteTransitGatewayMulticastDomainResult < Struct.new( :transit_gateway_multicast_domain) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_attachment_id # The ID of the transit gateway peering attachment. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteTransitGatewayPeeringAttachmentRequest AWS API Documentation # class DeleteTransitGatewayPeeringAttachmentRequest < Struct.new( :transit_gateway_attachment_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_peering_attachment # The transit gateway peering attachment. # @return [Types::TransitGatewayPeeringAttachment] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteTransitGatewayPeeringAttachmentResult AWS API Documentation # class DeleteTransitGatewayPeeringAttachmentResult < Struct.new( :transit_gateway_peering_attachment) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_policy_table_id # The transit gateway policy table to delete. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteTransitGatewayPolicyTableRequest AWS API Documentation # class DeleteTransitGatewayPolicyTableRequest < Struct.new( :transit_gateway_policy_table_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_policy_table # Provides details about the deleted transit gateway policy table. # @return [Types::TransitGatewayPolicyTable] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteTransitGatewayPolicyTableResult AWS API Documentation # class DeleteTransitGatewayPolicyTableResult < Struct.new( :transit_gateway_policy_table) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_route_table_id # The ID of the route table. # @return [String] # # @!attribute [rw] prefix_list_id # The ID of the prefix list. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteTransitGatewayPrefixListReferenceRequest AWS API Documentation # class DeleteTransitGatewayPrefixListReferenceRequest < Struct.new( :transit_gateway_route_table_id, :prefix_list_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_prefix_list_reference # Information about the deleted prefix list reference. # @return [Types::TransitGatewayPrefixListReference] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteTransitGatewayPrefixListReferenceResult AWS API Documentation # class DeleteTransitGatewayPrefixListReferenceResult < Struct.new( :transit_gateway_prefix_list_reference) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_id # The ID of the transit gateway. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteTransitGatewayRequest AWS API Documentation # class DeleteTransitGatewayRequest < Struct.new( :transit_gateway_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway # Information about the deleted transit gateway. # @return [Types::TransitGateway] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteTransitGatewayResult AWS API Documentation # class DeleteTransitGatewayResult < Struct.new( :transit_gateway) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_route_table_id # The ID of the transit gateway route table. # @return [String] # # @!attribute [rw] destination_cidr_block # The CIDR range for the route. This must match the CIDR for the route # exactly. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteTransitGatewayRouteRequest AWS API Documentation # class DeleteTransitGatewayRouteRequest < Struct.new( :transit_gateway_route_table_id, :destination_cidr_block, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] route # Information about the route. # @return [Types::TransitGatewayRoute] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteTransitGatewayRouteResult AWS API Documentation # class DeleteTransitGatewayRouteResult < Struct.new( :route) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_route_table_announcement_id # The transit gateway route table ID that's being deleted. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteTransitGatewayRouteTableAnnouncementRequest AWS API Documentation # class DeleteTransitGatewayRouteTableAnnouncementRequest < Struct.new( :transit_gateway_route_table_announcement_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_route_table_announcement # Provides details about a deleted transit gateway route table. # @return [Types::TransitGatewayRouteTableAnnouncement] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteTransitGatewayRouteTableAnnouncementResult AWS API Documentation # class DeleteTransitGatewayRouteTableAnnouncementResult < Struct.new( :transit_gateway_route_table_announcement) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_route_table_id # The ID of the transit gateway route table. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteTransitGatewayRouteTableRequest AWS API Documentation # class DeleteTransitGatewayRouteTableRequest < Struct.new( :transit_gateway_route_table_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_route_table # Information about the deleted transit gateway route table. # @return [Types::TransitGatewayRouteTable] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteTransitGatewayRouteTableResult AWS API Documentation # class DeleteTransitGatewayRouteTableResult < Struct.new( :transit_gateway_route_table) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_attachment_id # The ID of the attachment. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteTransitGatewayVpcAttachmentRequest AWS API Documentation # class DeleteTransitGatewayVpcAttachmentRequest < Struct.new( :transit_gateway_attachment_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_vpc_attachment # Information about the deleted VPC attachment. # @return [Types::TransitGatewayVpcAttachment] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteTransitGatewayVpcAttachmentResult AWS API Documentation # class DeleteTransitGatewayVpcAttachmentResult < Struct.new( :transit_gateway_vpc_attachment) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] verified_access_endpoint_id # The ID of the Verified Access endpoint. # @return [String] # # @!attribute [rw] client_token # A unique, case-sensitive token that you provide to ensure # idempotency of your modification request. For more information, see # [Ensuring Idempotency][1]. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteVerifiedAccessEndpointRequest AWS API Documentation # class DeleteVerifiedAccessEndpointRequest < Struct.new( :verified_access_endpoint_id, :client_token, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] verified_access_endpoint # Details about the Verified Access endpoint. # @return [Types::VerifiedAccessEndpoint] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteVerifiedAccessEndpointResult AWS API Documentation # class DeleteVerifiedAccessEndpointResult < Struct.new( :verified_access_endpoint) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] verified_access_group_id # The ID of the Verified Access group. # @return [String] # # @!attribute [rw] client_token # A unique, case-sensitive token that you provide to ensure # idempotency of your modification request. For more information, see # [Ensuring Idempotency][1]. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteVerifiedAccessGroupRequest AWS API Documentation # class DeleteVerifiedAccessGroupRequest < Struct.new( :verified_access_group_id, :client_token, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] verified_access_group # Details about the Verified Access group. # @return [Types::VerifiedAccessGroup] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteVerifiedAccessGroupResult AWS API Documentation # class DeleteVerifiedAccessGroupResult < Struct.new( :verified_access_group) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] verified_access_instance_id # The ID of the Verified Access instance. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] client_token # A unique, case-sensitive token that you provide to ensure # idempotency of your modification request. For more information, see # [Ensuring Idempotency][1]. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteVerifiedAccessInstanceRequest AWS API Documentation # class DeleteVerifiedAccessInstanceRequest < Struct.new( :verified_access_instance_id, :dry_run, :client_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] verified_access_instance # Details about the Verified Access instance. # @return [Types::VerifiedAccessInstance] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteVerifiedAccessInstanceResult AWS API Documentation # class DeleteVerifiedAccessInstanceResult < Struct.new( :verified_access_instance) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] verified_access_trust_provider_id # The ID of the Verified Access trust provider. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] client_token # A unique, case-sensitive token that you provide to ensure # idempotency of your modification request. For more information, see # [Ensuring Idempotency][1]. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteVerifiedAccessTrustProviderRequest AWS API Documentation # class DeleteVerifiedAccessTrustProviderRequest < Struct.new( :verified_access_trust_provider_id, :dry_run, :client_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] verified_access_trust_provider # Details about the Verified Access trust provider. # @return [Types::VerifiedAccessTrustProvider] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteVerifiedAccessTrustProviderResult AWS API Documentation # class DeleteVerifiedAccessTrustProviderResult < Struct.new( :verified_access_trust_provider) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] volume_id # The ID of the volume. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteVolumeRequest AWS API Documentation # class DeleteVolumeRequest < Struct.new( :volume_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] connection_notification_ids # The IDs of the notifications. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteVpcEndpointConnectionNotificationsRequest AWS API Documentation # class DeleteVpcEndpointConnectionNotificationsRequest < Struct.new( :dry_run, :connection_notification_ids) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] unsuccessful # Information about the notifications that could not be deleted # successfully. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteVpcEndpointConnectionNotificationsResult AWS API Documentation # class DeleteVpcEndpointConnectionNotificationsResult < Struct.new( :unsuccessful) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] service_ids # The IDs of the services. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteVpcEndpointServiceConfigurationsRequest AWS API Documentation # class DeleteVpcEndpointServiceConfigurationsRequest < Struct.new( :dry_run, :service_ids) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] unsuccessful # Information about the service configurations that were not deleted, # if applicable. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteVpcEndpointServiceConfigurationsResult AWS API Documentation # class DeleteVpcEndpointServiceConfigurationsResult < Struct.new( :unsuccessful) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] vpc_endpoint_ids # The IDs of the VPC endpoints. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteVpcEndpointsRequest AWS API Documentation # class DeleteVpcEndpointsRequest < Struct.new( :dry_run, :vpc_endpoint_ids) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] unsuccessful # Information about the VPC endpoints that were not successfully # deleted. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteVpcEndpointsResult AWS API Documentation # class DeleteVpcEndpointsResult < Struct.new( :unsuccessful) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] vpc_peering_connection_id # The ID of the VPC peering connection. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteVpcPeeringConnectionRequest AWS API Documentation # class DeleteVpcPeeringConnectionRequest < Struct.new( :dry_run, :vpc_peering_connection_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] return # Returns `true` if the request succeeds; otherwise, it returns an # error. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteVpcPeeringConnectionResult AWS API Documentation # class DeleteVpcPeeringConnectionResult < Struct.new( :return) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] vpc_id # The ID of the VPC. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteVpcRequest AWS API Documentation # class DeleteVpcRequest < Struct.new( :vpc_id, :dry_run) SENSITIVE = [] include Aws::Structure end # Contains the parameters for DeleteVpnConnection. # # @!attribute [rw] vpn_connection_id # The ID of the VPN connection. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteVpnConnectionRequest AWS API Documentation # class DeleteVpnConnectionRequest < Struct.new( :vpn_connection_id, :dry_run) SENSITIVE = [] include Aws::Structure end # Contains the parameters for DeleteVpnConnectionRoute. # # @!attribute [rw] destination_cidr_block # The CIDR block associated with the local subnet of the customer # network. # @return [String] # # @!attribute [rw] vpn_connection_id # The ID of the VPN connection. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteVpnConnectionRouteRequest AWS API Documentation # class DeleteVpnConnectionRouteRequest < Struct.new( :destination_cidr_block, :vpn_connection_id) SENSITIVE = [] include Aws::Structure end # Contains the parameters for DeleteVpnGateway. # # @!attribute [rw] vpn_gateway_id # The ID of the virtual private gateway. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeleteVpnGatewayRequest AWS API Documentation # class DeleteVpnGatewayRequest < Struct.new( :vpn_gateway_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cidr # The address range, in CIDR notation. The prefix must be the same # prefix that you specified when you provisioned the address range. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeprovisionByoipCidrRequest AWS API Documentation # class DeprovisionByoipCidrRequest < Struct.new( :cidr, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] byoip_cidr # Information about the address range. # @return [Types::ByoipCidr] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeprovisionByoipCidrResult AWS API Documentation # class DeprovisionByoipCidrResult < Struct.new( :byoip_cidr) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] ipam_id # The IPAM ID. # @return [String] # # @!attribute [rw] asn # An ASN. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeprovisionIpamByoasnRequest AWS API Documentation # class DeprovisionIpamByoasnRequest < Struct.new( :dry_run, :ipam_id, :asn) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] byoasn # An ASN and BYOIP CIDR association. # @return [Types::Byoasn] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeprovisionIpamByoasnResult AWS API Documentation # class DeprovisionIpamByoasnResult < Struct.new( :byoasn) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # A check for whether you have the required permissions for the action # without actually making the request and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] ipam_pool_id # The ID of the pool that has the CIDR you want to deprovision. # @return [String] # # @!attribute [rw] cidr # The CIDR which you want to deprovision from the pool. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeprovisionIpamPoolCidrRequest AWS API Documentation # class DeprovisionIpamPoolCidrRequest < Struct.new( :dry_run, :ipam_pool_id, :cidr) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] ipam_pool_cidr # The deprovisioned pool CIDR. # @return [Types::IpamPoolCidr] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeprovisionIpamPoolCidrResult AWS API Documentation # class DeprovisionIpamPoolCidrResult < Struct.new( :ipam_pool_cidr) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # A check for whether you have the required permissions for the action # without actually making the request and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] pool_id # The ID of the pool that you want to deprovision the CIDR from. # @return [String] # # @!attribute [rw] cidr # The CIDR you want to deprovision from the pool. Enter the CIDR you # want to deprovision with a netmask of `/32`. You must rerun this # command for each IP address in the CIDR range. If your CIDR is a # `/24`, you will have to run this command to deprovision each of the # 256 IP addresses in the `/24` CIDR. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeprovisionPublicIpv4PoolCidrRequest AWS API Documentation # class DeprovisionPublicIpv4PoolCidrRequest < Struct.new( :dry_run, :pool_id, :cidr) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] pool_id # The ID of the pool that you deprovisioned the CIDR from. # @return [String] # # @!attribute [rw] deprovisioned_addresses # The deprovisioned CIDRs. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeprovisionPublicIpv4PoolCidrResult AWS API Documentation # class DeprovisionPublicIpv4PoolCidrResult < Struct.new( :pool_id, :deprovisioned_addresses) SENSITIVE = [] include Aws::Structure end # Contains the parameters for DeregisterImage. # # @!attribute [rw] image_id # The ID of the AMI. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeregisterImageRequest AWS API Documentation # class DeregisterImageRequest < Struct.new( :image_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] instance_tag_attribute # Information about the tag keys to deregister. # @return [Types::DeregisterInstanceTagAttributeRequest] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeregisterInstanceEventNotificationAttributesRequest AWS API Documentation # class DeregisterInstanceEventNotificationAttributesRequest < Struct.new( :dry_run, :instance_tag_attribute) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] instance_tag_attribute # The resulting set of tag keys. # @return [Types::InstanceTagNotificationAttribute] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeregisterInstanceEventNotificationAttributesResult AWS API Documentation # class DeregisterInstanceEventNotificationAttributesResult < Struct.new( :instance_tag_attribute) SENSITIVE = [] include Aws::Structure end # 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 # # @!attribute [rw] include_all_tags_of_instance # Indicates whether to deregister all tag keys in the current Region. # Specify `false` to deregister all tag keys. # @return [Boolean] # # @!attribute [rw] instance_tag_keys # Information about the tag keys to deregister. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeregisterInstanceTagAttributeRequest AWS API Documentation # class DeregisterInstanceTagAttributeRequest < Struct.new( :include_all_tags_of_instance, :instance_tag_keys) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_multicast_domain_id # The ID of the transit gateway multicast domain. # @return [String] # # @!attribute [rw] group_ip_address # The IP address assigned to the transit gateway multicast group. # @return [String] # # @!attribute [rw] network_interface_ids # The IDs of the group members' network interfaces. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeregisterTransitGatewayMulticastGroupMembersRequest AWS API Documentation # class DeregisterTransitGatewayMulticastGroupMembersRequest < Struct.new( :transit_gateway_multicast_domain_id, :group_ip_address, :network_interface_ids, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] deregistered_multicast_group_members # Information about the deregistered members. # @return [Types::TransitGatewayMulticastDeregisteredGroupMembers] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeregisterTransitGatewayMulticastGroupMembersResult AWS API Documentation # class DeregisterTransitGatewayMulticastGroupMembersResult < Struct.new( :deregistered_multicast_group_members) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_multicast_domain_id # The ID of the transit gateway multicast domain. # @return [String] # # @!attribute [rw] group_ip_address # The IP address assigned to the transit gateway multicast group. # @return [String] # # @!attribute [rw] network_interface_ids # The IDs of the group sources' network interfaces. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeregisterTransitGatewayMulticastGroupSourcesRequest AWS API Documentation # class DeregisterTransitGatewayMulticastGroupSourcesRequest < Struct.new( :transit_gateway_multicast_domain_id, :group_ip_address, :network_interface_ids, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] deregistered_multicast_group_sources # Information about the deregistered group sources. # @return [Types::TransitGatewayMulticastDeregisteredGroupSources] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeregisterTransitGatewayMulticastGroupSourcesResult AWS API Documentation # class DeregisterTransitGatewayMulticastGroupSourcesResult < Struct.new( :deregistered_multicast_group_sources) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] attribute_names # The account attribute names. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeAccountAttributesRequest AWS API Documentation # class DescribeAccountAttributesRequest < Struct.new( :attribute_names, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] account_attributes # Information about the account attributes. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeAccountAttributesResult AWS API Documentation # class DescribeAccountAttributesResult < Struct.new( :account_attributes) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] allocation_ids # The allocation IDs of Elastic IP addresses. # @return [Array] # # @!attribute [rw] next_token # Specify the pagination token from a previous request to retrieve the # next page of results. # @return [String] # # @!attribute [rw] max_results # The maximum number of address transfers to return in one page of # results. # @return [Integer] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeAddressTransfersRequest AWS API Documentation # class DescribeAddressTransfersRequest < Struct.new( :allocation_ids, :next_token, :max_results, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] address_transfers # The Elastic IP address transfer. # @return [Array] # # @!attribute [rw] next_token # Specify the pagination token from a previous request to retrieve the # next page of results. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeAddressTransfersResult AWS API Documentation # class DescribeAddressTransfersResult < Struct.new( :address_transfers, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] allocation_ids # \[EC2-VPC\] The allocation IDs. # @return [Array] # # @!attribute [rw] attribute # The attribute of the IP address. # @return [String] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeAddressesAttributeRequest AWS API Documentation # class DescribeAddressesAttributeRequest < Struct.new( :allocation_ids, :attribute, :next_token, :max_results, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] addresses # Information about the IP addresses. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeAddressesAttributeResult AWS API Documentation # class DescribeAddressesAttributeResult < Struct.new( :addresses, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] filters # One or more filters. Filter names and values are case-sensitive. # # * `allocation-id` - The allocation ID for the address. # # * `association-id` - The association ID for the address. # # * `instance-id` - The ID of the instance the address is associated # with, if any. # # * `network-border-group` - A unique set of Availability Zones, Local # Zones, or Wavelength Zones from where Amazon Web Services # advertises IP addresses. # # * `network-interface-id` - The ID of the network interface that the # address is associated with, if any. # # * `network-interface-owner-id` - The Amazon Web Services account ID # of the owner. # # * `private-ip-address` - The private IP address associated with the # Elastic IP address. # # * `public-ip` - The Elastic IP address, or the carrier IP address. # # * `tag`:<key> - 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. # # * `tag-key` - 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. # @return [Array] # # @!attribute [rw] public_ips # One or more Elastic IP addresses. # # Default: Describes all your Elastic IP addresses. # @return [Array] # # @!attribute [rw] allocation_ids # Information about the allocation IDs. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeAddressesRequest AWS API Documentation # class DescribeAddressesRequest < Struct.new( :filters, :public_ips, :allocation_ids, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] addresses # Information about the Elastic IP addresses. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeAddressesResult AWS API Documentation # class DescribeAddressesResult < Struct.new( :addresses) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeAggregateIdFormatRequest AWS API Documentation # class DescribeAggregateIdFormatRequest < Struct.new( :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] use_long_ids_aggregated # Indicates whether all resource types in the Region are configured to # use longer IDs. This value is only `true` if all users are # configured to use longer IDs for all resources types in the Region. # @return [Boolean] # # @!attribute [rw] statuses # Information about each resource's ID format. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeAggregateIdFormatResult AWS API Documentation # class DescribeAggregateIdFormatResult < Struct.new( :use_long_ids_aggregated, :statuses) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] filters # The filters. # # * `group-name` - For Availability Zones, use the Region name. For # Local Zones, use the name of the group associated with the Local # Zone (for example, `us-west-2-lax-1`) For Wavelength Zones, use # the name of the group associated with the Wavelength Zone (for # example, `us-east-1-wl1`). # # * `message` - The Zone message. # # * `opt-in-status` - The opt-in status (`opted-in` \| `not-opted-in` # \| `opt-in-not-required`). # # * `parent-zone-id` - The ID of the zone that handles some of the # Local Zone and Wavelength Zone control plane operations, such as # API calls. # # * `parent-zone-name` - The ID of the zone that handles some of the # Local Zone and Wavelength Zone control plane operations, such as # API calls. # # * `region-name` - The name of the Region for the Zone (for example, # `us-east-1`). # # * `state` - The state of the Availability Zone, the Local Zone, or # the Wavelength Zone (`available`). # # * `zone-id` - The ID of the Availability Zone (for example, # `use1-az1`), the Local Zone (for example, `usw2-lax1-az1`), or the # Wavelength Zone (for example, `us-east-1-wl1-bos-wlz-1`). # # * `zone-name` - The name of the Availability Zone (for example, # `us-east-1a`), the Local Zone (for example, `us-west-2-lax-1a`), # or the Wavelength Zone (for example, `us-east-1-wl1-bos-wlz-1`). # # * `zone-type` - The type of zone (`availability-zone` \| # `local-zone` \| `wavelength-zone`). # @return [Array] # # @!attribute [rw] zone_names # The names of the Availability Zones, Local Zones, and Wavelength # Zones. # @return [Array] # # @!attribute [rw] zone_ids # The IDs of the Availability Zones, Local Zones, and Wavelength # Zones. # @return [Array] # # @!attribute [rw] all_availability_zones # Include all Availability Zones, Local Zones, and Wavelength Zones # regardless of your opt-in status. # # If you do not use this parameter, the results include only the zones # for the Regions where you have chosen the option to opt in. # @return [Boolean] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeAvailabilityZonesRequest AWS API Documentation # class DescribeAvailabilityZonesRequest < Struct.new( :filters, :zone_names, :zone_ids, :all_availability_zones, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] availability_zones # Information about the Availability Zones, Local Zones, and # Wavelength Zones. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeAvailabilityZonesResult AWS API Documentation # class DescribeAvailabilityZonesResult < Struct.new( :availability_zones) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] filters # One or more filters. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeAwsNetworkPerformanceMetricSubscriptionsRequest AWS API Documentation # class DescribeAwsNetworkPerformanceMetricSubscriptionsRequest < Struct.new( :max_results, :next_token, :filters, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @!attribute [rw] subscriptions # Describes the current Infrastructure Performance subscriptions. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeAwsNetworkPerformanceMetricSubscriptionsResult AWS API Documentation # class DescribeAwsNetworkPerformanceMetricSubscriptionsResult < Struct.new( :next_token, :subscriptions) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] bundle_ids # The bundle task IDs. # # Default: Describes all your bundle tasks. # @return [Array] # # @!attribute [rw] filters # The filters. # # * `bundle-id` - The ID of the bundle task. # # * `error-code` - If the task failed, the error code returned. # # * `error-message` - If the task failed, the error message returned. # # * `instance-id` - The ID of the instance. # # * `progress` - The level of task completion, as a percentage (for # example, 20%). # # * `s3-bucket` - The Amazon S3 bucket to store the AMI. # # * `s3-prefix` - The beginning of the AMI name. # # * `start-time` - The time the task started (for example, # 2013-09-15T17:15:20.000Z). # # * `state` - The state of the task (`pending` \| # `waiting-for-shutdown` \| `bundling` \| `storing` \| `cancelling` # \| `complete` \| `failed`). # # * `update-time` - The time of the most recent update for the task. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeBundleTasksRequest AWS API Documentation # class DescribeBundleTasksRequest < Struct.new( :bundle_ids, :filters, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] bundle_tasks # Information about the bundle tasks. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeBundleTasksResult AWS API Documentation # class DescribeBundleTasksResult < Struct.new( :bundle_tasks) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeByoipCidrsRequest AWS API Documentation # class DescribeByoipCidrsRequest < Struct.new( :dry_run, :max_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] byoip_cidrs # Information about your address ranges. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeByoipCidrsResult AWS API Documentation # class DescribeByoipCidrsResult < Struct.new( :byoip_cidrs, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] instance_type # The type of instance for which the Capacity Block offering reserves # capacity. # @return [String] # # @!attribute [rw] instance_count # The number of instances for which to reserve capacity. # @return [Integer] # # @!attribute [rw] start_date_range # The earliest start date for the Capacity Block offering. # @return [Time] # # @!attribute [rw] end_date_range # The latest end date for the Capacity Block offering. # @return [Time] # # @!attribute [rw] capacity_duration_hours # The number of hours for which to reserve Capacity Block. # @return [Integer] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. # @return [String] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. For more information, see [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeCapacityBlockOfferingsRequest AWS API Documentation # class DescribeCapacityBlockOfferingsRequest < Struct.new( :dry_run, :instance_type, :instance_count, :start_date_range, :end_date_range, :capacity_duration_hours, :next_token, :max_results) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] capacity_block_offerings # The recommended Capacity Block offering for the dates specified. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeCapacityBlockOfferingsResult AWS API Documentation # class DescribeCapacityBlockOfferingsResult < Struct.new( :capacity_block_offerings, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] capacity_reservation_fleet_ids # The IDs of the Capacity Reservation Fleets to describe. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. # @return [String] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. For more information, see [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @!attribute [rw] filters # One or more filters. # # * `state` - The state of the Fleet (`submitted` \| `modifying` \| # `active` \| `partially_fulfilled` \| `expiring` \| `expired` \| # `cancelling` \| `cancelled` \| `failed`). # # * `instance-match-criteria` - The instance matching criteria for the # Fleet. Only `open` is supported. # # * `tenancy` - The tenancy of the Fleet (`default` \| `dedicated`). # # * `allocation-strategy` - The allocation strategy used by the Fleet. # Only `prioritized` is supported. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeCapacityReservationFleetsRequest AWS API Documentation # class DescribeCapacityReservationFleetsRequest < Struct.new( :capacity_reservation_fleet_ids, :next_token, :max_results, :filters, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] capacity_reservation_fleets # Information about the Capacity Reservation Fleets. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeCapacityReservationFleetsResult AWS API Documentation # class DescribeCapacityReservationFleetsResult < Struct.new( :capacity_reservation_fleets, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] capacity_reservation_ids # The ID of the Capacity Reservation. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. # @return [String] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. For more information, see [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @!attribute [rw] filters # One or more filters. # # * `instance-type` - The type of instance for which the Capacity # Reservation reserves capacity. # # * `owner-id` - The ID of the Amazon Web Services account that owns # the Capacity Reservation. # # * `instance-platform` - The type of operating system for which the # Capacity Reservation reserves capacity. # # * `availability-zone` - The Availability Zone of the Capacity # Reservation. # # * `tenancy` - 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. # # * `outpost-arn` - The Amazon Resource Name (ARN) of the Outpost on # which the Capacity Reservation was created. # # * `state` - The current state of the Capacity Reservation. A # Capacity Reservation can be in one of the following states: # # * `active`- The Capacity Reservation is active and the capacity is # available for your use. # # * `expired` - The Capacity Reservation expired automatically at # the date and time specified in your request. The reserved # capacity is no longer available for your use. # # * `cancelled` - The Capacity Reservation was cancelled. 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 might fail due to invalid request parameters, capacity # constraints, or instance limit constraints. Failed requests are # retained for 60 minutes. # # * `start-date` - The date and time at which the Capacity Reservation # was started. # # * `end-date` - 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. # # * `end-date-type` - 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. # # * `instance-match-criteria` - 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. # # * `placement-group-arn` - The ARN of the cluster placement group in # which the Capacity Reservation was created. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeCapacityReservationsRequest AWS API Documentation # class DescribeCapacityReservationsRequest < Struct.new( :capacity_reservation_ids, :next_token, :max_results, :filters, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @!attribute [rw] capacity_reservations # Information about the Capacity Reservations. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeCapacityReservationsResult AWS API Documentation # class DescribeCapacityReservationsResult < Struct.new( :next_token, :capacity_reservations) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] carrier_gateway_ids # One or more carrier gateway IDs. # @return [Array] # # @!attribute [rw] filters # One or more filters. # # * `carrier-gateway-id` - The ID of the carrier gateway. # # * `state` - The state of the carrier gateway (`pending` \| `failed` # \| `available` \| `deleting` \| `deleted`). # # * `owner-id` - The Amazon Web Services account ID of the owner of # the carrier gateway. # # * `tag`:<key> - 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. # # * `tag-key` - 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. # # * `vpc-id` - The ID of the VPC associated with the carrier gateway. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeCarrierGatewaysRequest AWS API Documentation # class DescribeCarrierGatewaysRequest < Struct.new( :carrier_gateway_ids, :filters, :max_results, :next_token, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] carrier_gateways # Information about the carrier gateway. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeCarrierGatewaysResult AWS API Documentation # class DescribeCarrierGatewaysResult < Struct.new( :carrier_gateways, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] filters # The filters. # # * `group-id` - The ID of a VPC security group that's associated # with the instance. # # * `instance-id` - The ID of the instance. # # * `tag`:<key> - 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. # # * `tag-key` - 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. # # * `vpc-id` - The ID of the VPC to which the instance is linked. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] instance_ids # The instance IDs. Must be instances linked to a VPC through # ClassicLink. # @return [Array] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. For more information, see [Pagination][1]. # # Constraint: If the value is greater than 1000, we return only 1000 # items. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @!attribute [rw] next_token # The token returned from a previous paginated request. Pagination # continues from the end of the items returned by the previous # request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeClassicLinkInstancesRequest AWS API Documentation # class DescribeClassicLinkInstancesRequest < Struct.new( :filters, :dry_run, :instance_ids, :max_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] instances # Information about one or more linked EC2-Classic instances. # @return [Array] # # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` when there are no more items to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeClassicLinkInstancesResult AWS API Documentation # class DescribeClassicLinkInstancesResult < Struct.new( :instances, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] client_vpn_endpoint_id # The ID of the Client VPN endpoint. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] next_token # The token to retrieve the next page of results. # @return [String] # # @!attribute [rw] filters # One or more filters. Filter names and values are case-sensitive. # # * `description` - The description of the authorization rule. # # * `destination-cidr` - The CIDR of the network to which the # authorization rule applies. # # * `group-id` - The ID of the Active Directory group to which the # authorization rule grants access. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return for the request in a single # page. The remaining results can be seen by sending another request # with the nextToken value. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeClientVpnAuthorizationRulesRequest AWS API Documentation # class DescribeClientVpnAuthorizationRulesRequest < Struct.new( :client_vpn_endpoint_id, :dry_run, :next_token, :filters, :max_results) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] authorization_rules # Information about the authorization rules. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeClientVpnAuthorizationRulesResult AWS API Documentation # class DescribeClientVpnAuthorizationRulesResult < Struct.new( :authorization_rules, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] client_vpn_endpoint_id # The ID of the Client VPN endpoint. # @return [String] # # @!attribute [rw] filters # One or more filters. Filter names and values are case-sensitive. # # * `connection-id` - The ID of the connection. # # * `username` - For Active Directory client authentication, the user # name of the client who established the client connection. # @return [Array] # # @!attribute [rw] next_token # The token to retrieve the next page of results. # @return [String] # # @!attribute [rw] max_results # The maximum number of results to return for the request in a single # page. The remaining results can be seen by sending another request # with the nextToken value. # @return [Integer] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeClientVpnConnectionsRequest AWS API Documentation # class DescribeClientVpnConnectionsRequest < Struct.new( :client_vpn_endpoint_id, :filters, :next_token, :max_results, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] connections # Information about the active and terminated client connections. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeClientVpnConnectionsResult AWS API Documentation # class DescribeClientVpnConnectionsResult < Struct.new( :connections, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] client_vpn_endpoint_ids # The ID of the Client VPN endpoint. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return for the request in a single # page. The remaining results can be seen by sending another request # with the nextToken value. # @return [Integer] # # @!attribute [rw] next_token # The token to retrieve the next page of results. # @return [String] # # @!attribute [rw] filters # One or more filters. Filter names and values are case-sensitive. # # * `endpoint-id` - The ID of the Client VPN endpoint. # # * `transport-protocol` - The transport protocol (`tcp` \| `udp`). # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeClientVpnEndpointsRequest AWS API Documentation # class DescribeClientVpnEndpointsRequest < Struct.new( :client_vpn_endpoint_ids, :max_results, :next_token, :filters, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] client_vpn_endpoints # Information about the Client VPN endpoints. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeClientVpnEndpointsResult AWS API Documentation # class DescribeClientVpnEndpointsResult < Struct.new( :client_vpn_endpoints, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] client_vpn_endpoint_id # The ID of the Client VPN endpoint. # @return [String] # # @!attribute [rw] filters # One or more filters. Filter names and values are case-sensitive. # # * `destination-cidr` - The CIDR of the route destination. # # * `origin` - How the route was associated with the Client VPN # endpoint (`associate` \| `add-route`). # # * `target-subnet` - The ID of the subnet through which traffic is # routed. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return for the request in a single # page. The remaining results can be seen by sending another request # with the nextToken value. # @return [Integer] # # @!attribute [rw] next_token # The token to retrieve the next page of results. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeClientVpnRoutesRequest AWS API Documentation # class DescribeClientVpnRoutesRequest < Struct.new( :client_vpn_endpoint_id, :filters, :max_results, :next_token, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] routes # Information about the Client VPN endpoint routes. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeClientVpnRoutesResult AWS API Documentation # class DescribeClientVpnRoutesResult < Struct.new( :routes, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] client_vpn_endpoint_id # The ID of the Client VPN endpoint. # @return [String] # # @!attribute [rw] association_ids # The IDs of the target network associations. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return for the request in a single # page. The remaining results can be seen by sending another request # with the nextToken value. # @return [Integer] # # @!attribute [rw] next_token # The token to retrieve the next page of results. # @return [String] # # @!attribute [rw] filters # One or more filters. Filter names and values are case-sensitive. # # * `association-id` - The ID of the association. # # * `target-network-id` - The ID of the subnet specified as the target # network. # # * `vpc-id` - The ID of the VPC in which the target network is # located. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeClientVpnTargetNetworksRequest AWS API Documentation # class DescribeClientVpnTargetNetworksRequest < Struct.new( :client_vpn_endpoint_id, :association_ids, :max_results, :next_token, :filters, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] client_vpn_target_networks # Information about the associated target networks. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeClientVpnTargetNetworksResult AWS API Documentation # class DescribeClientVpnTargetNetworksResult < Struct.new( :client_vpn_target_networks, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] pool_ids # The IDs of the address pools. # @return [Array] # # @!attribute [rw] filters # One or more filters. # # * `coip-pool.local-gateway-route-table-id` - The ID of the local # gateway route table. # # * `coip-pool.pool-id` - The ID of the address pool. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeCoipPoolsRequest AWS API Documentation # class DescribeCoipPoolsRequest < Struct.new( :pool_ids, :filters, :max_results, :next_token, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] coip_pools # Information about the address pools. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeCoipPoolsResult AWS API Documentation # class DescribeCoipPoolsResult < Struct.new( :coip_pools, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] conversion_task_ids # The conversion task IDs. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeConversionTasksRequest AWS API Documentation # class DescribeConversionTasksRequest < Struct.new( :conversion_task_ids, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] conversion_tasks # Information about the conversion tasks. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeConversionTasksResult AWS API Documentation # class DescribeConversionTasksResult < Struct.new( :conversion_tasks) SENSITIVE = [] include Aws::Structure end # Contains the parameters for DescribeCustomerGateways. # # @!attribute [rw] customer_gateway_ids # One or more customer gateway IDs. # # Default: Describes all your customer gateways. # @return [Array] # # @!attribute [rw] filters # One or more filters. # # * `bgp-asn` - The customer gateway's Border Gateway Protocol (BGP) # Autonomous System Number (ASN). # # * `customer-gateway-id` - The ID of the customer gateway. # # * `ip-address` - The IP address of the customer gateway device's # external interface. # # * `state` - The state of the customer gateway (`pending` \| # `available` \| `deleting` \| `deleted`). # # * `type` - The type of customer gateway. Currently, the only # supported type is `ipsec.1`. # # * `tag`:<key> - 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. # # * `tag-key` - 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. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeCustomerGatewaysRequest AWS API Documentation # class DescribeCustomerGatewaysRequest < Struct.new( :customer_gateway_ids, :filters, :dry_run) SENSITIVE = [] include Aws::Structure end # Contains the output of DescribeCustomerGateways. # # @!attribute [rw] customer_gateways # Information about one or more customer gateways. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeCustomerGatewaysResult AWS API Documentation # class DescribeCustomerGatewaysResult < Struct.new( :customer_gateways) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dhcp_options_ids # The IDs of one or more DHCP options sets. # # Default: Describes all your DHCP options sets. # @return [Array] # # @!attribute [rw] filters # The filters. # # * `dhcp-options-id` - The ID of a DHCP options set. # # * `key` - The key for one of the options (for example, # `domain-name`). # # * `value` - The value for one of the options. # # * `owner-id` - The ID of the Amazon Web Services account that owns # the DHCP options set. # # * `tag`:<key> - 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. # # * `tag-key` - 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. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] next_token # The token returned from a previous paginated request. Pagination # continues from the end of the items returned by the previous # request. # @return [String] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. For more information, see [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeDhcpOptionsRequest AWS API Documentation # class DescribeDhcpOptionsRequest < Struct.new( :dhcp_options_ids, :filters, :dry_run, :next_token, :max_results) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dhcp_options # Information about one or more DHCP options sets. # @return [Array] # # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` when there are no more items to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeDhcpOptionsResult AWS API Documentation # class DescribeDhcpOptionsResult < Struct.new( :dhcp_options, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] egress_only_internet_gateway_ids # The IDs of the egress-only internet gateways. # @return [Array] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. For more information, see [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @!attribute [rw] next_token # The token returned from a previous paginated request. Pagination # continues from the end of the items returned by the previous # request. # @return [String] # # @!attribute [rw] filters # The filters. # # * `tag`:<key> - 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. # # * `tag-key` - 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. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeEgressOnlyInternetGatewaysRequest AWS API Documentation # class DescribeEgressOnlyInternetGatewaysRequest < Struct.new( :dry_run, :egress_only_internet_gateway_ids, :max_results, :next_token, :filters) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] egress_only_internet_gateways # Information about the egress-only internet gateways. # @return [Array] # # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` when there are no more items to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeEgressOnlyInternetGatewaysResult AWS API Documentation # class DescribeEgressOnlyInternetGatewaysResult < Struct.new( :egress_only_internet_gateways, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] elastic_gpu_ids # The Elastic Graphics accelerator IDs. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] filters # The filters. # # * `availability-zone` - The Availability Zone in which the Elastic # Graphics accelerator resides. # # * `elastic-gpu-health` - The status of the Elastic Graphics # accelerator (`OK` \| `IMPAIRED`). # # * `elastic-gpu-state` - The state of the Elastic Graphics # accelerator (`ATTACHED`). # # * `elastic-gpu-type` - The type of Elastic Graphics accelerator; for # example, `eg1.medium`. # # * `instance-id` - The ID of the instance to which the Elastic # Graphics accelerator is associated. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return in a single call. To # retrieve the remaining results, make another call with the returned # `NextToken` value. This value can be between 5 and 1000. # @return [Integer] # # @!attribute [rw] next_token # The token to request the next page of results. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeElasticGpusRequest AWS API Documentation # class DescribeElasticGpusRequest < Struct.new( :elastic_gpu_ids, :dry_run, :filters, :max_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] elastic_gpu_set # Information about the Elastic Graphics accelerators. # @return [Array] # # @!attribute [rw] max_results # The total number of items to return. If the total number of items # available is more than the value specified in max-items then a # Next-Token will be provided in the output that you can use to resume # pagination. # @return [Integer] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeElasticGpusResult AWS API Documentation # class DescribeElasticGpusResult < Struct.new( :elastic_gpu_set, :max_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] filters # Filter tasks using the `task-state` filter and one of the following # values: `active`, `completed`, `deleting`, or `deleted`. # @return [Array] # # @!attribute [rw] export_image_task_ids # The IDs of the export image tasks. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return in a single call. # @return [Integer] # # @!attribute [rw] next_token # A token that indicates the next page of results. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeExportImageTasksRequest AWS API Documentation # class DescribeExportImageTasksRequest < Struct.new( :dry_run, :filters, :export_image_task_ids, :max_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] export_image_tasks # Information about the export image tasks. # @return [Array] # # @!attribute [rw] next_token # The token to use to get the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeExportImageTasksResult AWS API Documentation # class DescribeExportImageTasksResult < Struct.new( :export_image_tasks, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] export_task_ids # The export task IDs. # @return [Array] # # @!attribute [rw] filters # the filters for the export tasks. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeExportTasksRequest AWS API Documentation # class DescribeExportTasksRequest < Struct.new( :export_task_ids, :filters) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] export_tasks # Information about the export tasks. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeExportTasksResult AWS API Documentation # class DescribeExportTasksResult < Struct.new( :export_tasks) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] image_ids # Specify one or more Windows AMI image IDs for the request. # @return [Array] # # @!attribute [rw] filters # Use the following filters to streamline results. # # * `resource-type` - The resource type for pre-provisioning. # # * `owner-id` - The owner ID for the pre-provisioning resource. # # * `state` - The current state of fast launching for the Windows AMI. # @return [Array] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. For more information, see [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @!attribute [rw] next_token # The token returned from a previous paginated request. Pagination # continues from the end of the items returned by the previous # request. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeFastLaunchImagesRequest AWS API Documentation # class DescribeFastLaunchImagesRequest < Struct.new( :image_ids, :filters, :max_results, :next_token, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] fast_launch_images # A collection of details about the fast-launch enabled Windows images # that meet the requested criteria. # @return [Array] # # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` when there are no more items to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeFastLaunchImagesResult AWS API Documentation # class DescribeFastLaunchImagesResult < Struct.new( :fast_launch_images, :next_token) SENSITIVE = [] include Aws::Structure end # Describe details about a Windows image with Windows fast launch # enabled that meets the requested criteria. Criteria are defined by the # `DescribeFastLaunchImages` action filters. # # @!attribute [rw] image_id # The image ID that identifies the Windows fast launch enabled image. # @return [String] # # @!attribute [rw] resource_type # The resource type that Amazon EC2 uses for pre-provisioning the # Windows AMI. Supported values include: `snapshot`. # @return [String] # # @!attribute [rw] snapshot_configuration # A group of parameters that are used for pre-provisioning the # associated Windows AMI using snapshots. # @return [Types::FastLaunchSnapshotConfigurationResponse] # # @!attribute [rw] launch_template # The launch template that the Windows fast launch enabled AMI uses # when it launches Windows instances from pre-provisioned snapshots. # @return [Types::FastLaunchLaunchTemplateSpecificationResponse] # # @!attribute [rw] max_parallel_launches # The maximum number of instances that Amazon EC2 can launch at the # same time to create pre-provisioned snapshots for Windows fast # launch. # @return [Integer] # # @!attribute [rw] owner_id # The owner ID for the Windows fast launch enabled AMI. # @return [String] # # @!attribute [rw] state # The current state of Windows fast launch for the specified Windows # AMI. # @return [String] # # @!attribute [rw] state_transition_reason # The reason that Windows fast launch for the AMI changed to the # current state. # @return [String] # # @!attribute [rw] state_transition_time # The time that Windows fast launch for the AMI changed to the current # state. # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeFastLaunchImagesSuccessItem AWS API Documentation # class DescribeFastLaunchImagesSuccessItem < Struct.new( :image_id, :resource_type, :snapshot_configuration, :launch_template, :max_parallel_launches, :owner_id, :state, :state_transition_reason, :state_transition_time) SENSITIVE = [] include Aws::Structure end # Describes fast snapshot restores for a snapshot. # # @!attribute [rw] snapshot_id # The ID of the snapshot. # @return [String] # # @!attribute [rw] availability_zone # The Availability Zone. # @return [String] # # @!attribute [rw] state # The state of fast snapshot restores. # @return [String] # # @!attribute [rw] state_transition_reason # 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`. # @return [String] # # @!attribute [rw] owner_id # The ID of the Amazon Web Services account that enabled fast snapshot # restores on the snapshot. # @return [String] # # @!attribute [rw] owner_alias # The Amazon Web Services owner alias that enabled fast snapshot # restores on the snapshot. This is intended for future use. # @return [String] # # @!attribute [rw] enabling_time # The time at which fast snapshot restores entered the `enabling` # state. # @return [Time] # # @!attribute [rw] optimizing_time # The time at which fast snapshot restores entered the `optimizing` # state. # @return [Time] # # @!attribute [rw] enabled_time # The time at which fast snapshot restores entered the `enabled` # state. # @return [Time] # # @!attribute [rw] disabling_time # The time at which fast snapshot restores entered the `disabling` # state. # @return [Time] # # @!attribute [rw] disabled_time # The time at which fast snapshot restores entered the `disabled` # state. # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeFastSnapshotRestoreSuccessItem AWS API Documentation # class DescribeFastSnapshotRestoreSuccessItem < Struct.new( :snapshot_id, :availability_zone, :state, :state_transition_reason, :owner_id, :owner_alias, :enabling_time, :optimizing_time, :enabled_time, :disabling_time, :disabled_time) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] filters # The filters. The possible values are: # # * `availability-zone`: The Availability Zone of the snapshot. # # * `owner-id`: The ID of the Amazon Web Services account that enabled # fast snapshot restore on the snapshot. # # * `snapshot-id`: The ID of the snapshot. # # * `state`: The state of fast snapshot restores for the snapshot # (`enabling` \| `optimizing` \| `enabled` \| `disabling` \| # `disabled`). # @return [Array] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. For more information, see [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @!attribute [rw] next_token # The token returned from a previous paginated request. Pagination # continues from the end of the items returned by the previous # request. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeFastSnapshotRestoresRequest AWS API Documentation # class DescribeFastSnapshotRestoresRequest < Struct.new( :filters, :max_results, :next_token, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] fast_snapshot_restores # Information about the state of fast snapshot restores. # @return [Array] # # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` when there are no more items to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeFastSnapshotRestoresResult AWS API Documentation # class DescribeFastSnapshotRestoresResult < Struct.new( :fast_snapshot_restores, :next_token) SENSITIVE = [] include Aws::Structure end # Describes the instances that could not be launched by the fleet. # # @!attribute [rw] launch_template_and_overrides # 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. # @return [Types::LaunchTemplateAndOverridesResponse] # # @!attribute [rw] lifecycle # Indicates if the instance that could not be launched was a Spot # Instance or On-Demand Instance. # @return [String] # # @!attribute [rw] error_code # The error code that indicates why the instance could not be # launched. For more information about error codes, see [Error # codes][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/errors-overview.html.html # @return [String] # # @!attribute [rw] error_message # The error message that describes why the instance could not be # launched. For more information about error messages, see [Error # codes][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/errors-overview.html.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeFleetError AWS API Documentation # class DescribeFleetError < Struct.new( :launch_template_and_overrides, :lifecycle, :error_code, :error_message) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] event_type # The type of events to describe. By default, all events are # described. # @return [String] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. For more information, see [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @!attribute [rw] next_token # The token returned from a previous paginated request. Pagination # continues from the end of the items returned by the previous # request. # @return [String] # # @!attribute [rw] fleet_id # The ID of the EC2 Fleet. # @return [String] # # @!attribute [rw] start_time # The start date and time for the events, in UTC format (for example, # *YYYY*-*MM*-*DD*T*HH*:*MM*:*SS*Z). # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeFleetHistoryRequest AWS API Documentation # class DescribeFleetHistoryRequest < Struct.new( :dry_run, :event_type, :max_results, :next_token, :fleet_id, :start_time) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] history_records # Information about the events in the history of the EC2 Fleet. # @return [Array] # # @!attribute [rw] last_evaluated_time # The last date and time for the events, in UTC format (for example, # *YYYY*-*MM*-*DD*T*HH*:*MM*:*SS*Z). All records up to this time were # retrieved. # # If `nextToken` indicates that there are more items, this value is # not present. # @return [Time] # # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` when there are no more items to return. # @return [String] # # @!attribute [rw] fleet_id # The ID of the EC Fleet. # @return [String] # # @!attribute [rw] start_time # The start date and time for the events, in UTC format (for example, # *YYYY*-*MM*-*DD*T*HH*:*MM*:*SS*Z). # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeFleetHistoryResult AWS API Documentation # class DescribeFleetHistoryResult < Struct.new( :history_records, :last_evaluated_time, :next_token, :fleet_id, :start_time) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. For more information, see [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @!attribute [rw] next_token # The token returned from a previous paginated request. Pagination # continues from the end of the items returned by the previous # request. # @return [String] # # @!attribute [rw] fleet_id # The ID of the EC2 Fleet. # @return [String] # # @!attribute [rw] filters # The filters. # # * `instance-type` - The instance type. # # ^ # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeFleetInstancesRequest AWS API Documentation # class DescribeFleetInstancesRequest < Struct.new( :dry_run, :max_results, :next_token, :fleet_id, :filters) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] active_instances # The running instances. This list is refreshed periodically and might # be out of date. # @return [Array] # # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` when there are no more items to return. # @return [String] # # @!attribute [rw] fleet_id # The ID of the EC2 Fleet. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeFleetInstancesResult AWS API Documentation # class DescribeFleetInstancesResult < Struct.new( :active_instances, :next_token, :fleet_id) SENSITIVE = [] include Aws::Structure end # Describes the instances that were launched by the fleet. # # @!attribute [rw] launch_template_and_overrides # 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. # @return [Types::LaunchTemplateAndOverridesResponse] # # @!attribute [rw] lifecycle # Indicates if the instance that was launched is a Spot Instance or # On-Demand Instance. # @return [String] # # @!attribute [rw] instance_ids # The IDs of the instances. # @return [Array] # # @!attribute [rw] instance_type # The instance type. # @return [String] # # @!attribute [rw] platform # The value is `Windows` for Windows instances. Otherwise, the value # is blank. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeFleetsInstances AWS API Documentation # class DescribeFleetsInstances < Struct.new( :launch_template_and_overrides, :lifecycle, :instance_ids, :instance_type, :platform) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. For more information, see [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @!attribute [rw] next_token # The token returned from a previous paginated request. Pagination # continues from the end of the items returned by the previous # request. # @return [String] # # @!attribute [rw] fleet_ids # The IDs of the EC2 Fleets. # # If a fleet is of type `instant`, you must specify the fleet ID, # otherwise it does not appear in the response. # # # @return [Array] # # @!attribute [rw] filters # The filters. # # * `activity-status` - The progress of the EC2 Fleet ( `error` \| # `pending-fulfillment` \| `pending-termination` \| `fulfilled`). # # * `excess-capacity-termination-policy` - Indicates whether to # terminate running instances if the target capacity is decreased # below the current EC2 Fleet size (`true` \| `false`). # # * `fleet-state` - The state of the EC2 Fleet (`submitted` \| # `active` \| `deleted` \| `failed` \| `deleted-running` \| # `deleted-terminating` \| `modifying`). # # * `replace-unhealthy-instances` - Indicates whether EC2 Fleet should # replace unhealthy instances (`true` \| `false`). # # * `type` - The type of request (`instant` \| `request` \| # `maintain`). # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeFleetsRequest AWS API Documentation # class DescribeFleetsRequest < Struct.new( :dry_run, :max_results, :next_token, :fleet_ids, :filters) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` when there are no more items to return. # @return [String] # # @!attribute [rw] fleets # Information about the EC2 Fleets. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeFleetsResult AWS API Documentation # class DescribeFleetsResult < Struct.new( :next_token, :fleets) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] filter # One or more filters. # # * `deliver-log-status` - The status of the logs delivery (`SUCCESS` # \| `FAILED`). # # * `log-destination-type` - The type of destination for the flow log # data (`cloud-watch-logs` \| `s3` \| `kinesis-data-firehose`). # # * `flow-log-id` - The ID of the flow log. # # * `log-group-name` - The name of the log group. # # * `resource-id` - The ID of the VPC, subnet, or network interface. # # * `traffic-type` - The type of traffic (`ACCEPT` \| `REJECT` \| # `ALL`). # # * `tag`:<key> - 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. # # * `tag-key` - 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. # @return [Array] # # @!attribute [rw] flow_log_ids # One or more flow log IDs. # # Constraint: Maximum of 1000 flow log IDs. # @return [Array] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. For more information, see [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @!attribute [rw] next_token # The token to request the next page of items. Pagination continues # from the end of the items returned by the previous request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeFlowLogsRequest AWS API Documentation # class DescribeFlowLogsRequest < Struct.new( :dry_run, :filter, :flow_log_ids, :max_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] flow_logs # Information about the flow logs. # @return [Array] # # @!attribute [rw] next_token # The token to request the next page of items. This value is `null` # when there are no more items to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeFlowLogsResult AWS API Documentation # class DescribeFlowLogsResult < Struct.new( :flow_logs, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] fpga_image_id # The ID of the AFI. # @return [String] # # @!attribute [rw] attribute # The AFI attribute. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeFpgaImageAttributeRequest AWS API Documentation # class DescribeFpgaImageAttributeRequest < Struct.new( :dry_run, :fpga_image_id, :attribute) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] fpga_image_attribute # Information about the attribute. # @return [Types::FpgaImageAttribute] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeFpgaImageAttributeResult AWS API Documentation # class DescribeFpgaImageAttributeResult < Struct.new( :fpga_image_attribute) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] fpga_image_ids # The AFI IDs. # @return [Array] # # @!attribute [rw] owners # Filters the AFI by owner. Specify an Amazon Web Services account ID, # `self` (owner is the sender of the request), or an Amazon Web # Services owner alias (valid values are `amazon` \| # `aws-marketplace`). # @return [Array] # # @!attribute [rw] filters # The filters. # # * `create-time` - The creation time of the AFI. # # * `fpga-image-id` - The FPGA image identifier (AFI ID). # # * `fpga-image-global-id` - The global FPGA image identifier (AGFI # ID). # # * `name` - The name of the AFI. # # * `owner-id` - The Amazon Web Services account ID of the AFI owner. # # * `product-code` - The product code. # # * `shell-version` - The version of the Amazon Web Services Shell # that was used to create the bitstream. # # * `state` - The state of the AFI (`pending` \| `failed` \| # `available` \| `unavailable`). # # * `tag`:<key> - 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. # # * `tag-key` - 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. # # * `update-time` - The time of the most recent update. # @return [Array] # # @!attribute [rw] next_token # The token to retrieve the next page of results. # @return [String] # # @!attribute [rw] max_results # The maximum number of results to return in a single call. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeFpgaImagesRequest AWS API Documentation # class DescribeFpgaImagesRequest < Struct.new( :dry_run, :fpga_image_ids, :owners, :filters, :next_token, :max_results) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] fpga_images # Information about the FPGA images. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeFpgaImagesResult AWS API Documentation # class DescribeFpgaImagesResult < Struct.new( :fpga_images, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] filter # The filters. # # * `instance-family` - The instance family of the offering (for # example, `m4`). # # * `payment-option` - The payment option (`NoUpfront` \| # `PartialUpfront` \| `AllUpfront`). # @return [Array] # # @!attribute [rw] max_duration # This is the maximum duration of the reservation to purchase, # specified in seconds. Reservations are available in one-year and # three-year terms. The number of seconds specified must be the number # of seconds in a year (365x24x60x60) times one of the supported # durations (1 or 3). For example, specify 94608000 for three years. # @return [Integer] # # @!attribute [rw] max_results # The maximum number of results to return for the request in a single # page. The remaining results can be seen by sending another request # with the returned `nextToken` value. This value can be between 5 and # 500. If `maxResults` is given a larger value than 500, you receive # an error. # @return [Integer] # # @!attribute [rw] min_duration # This is the minimum duration of the reservation you'd like to # purchase, specified in seconds. Reservations are available in # one-year and three-year terms. The number of seconds specified must # be the number of seconds in a year (365x24x60x60) times one of the # supported durations (1 or 3). For example, specify 31536000 for one # year. # @return [Integer] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. # @return [String] # # @!attribute [rw] offering_id # The ID of the reservation offering. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeHostReservationOfferingsRequest AWS API Documentation # class DescribeHostReservationOfferingsRequest < Struct.new( :filter, :max_duration, :max_results, :min_duration, :next_token, :offering_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @!attribute [rw] offering_set # Information about the offerings. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeHostReservationOfferingsResult AWS API Documentation # class DescribeHostReservationOfferingsResult < Struct.new( :next_token, :offering_set) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] filter # The filters. # # * `instance-family` - The instance family (for example, `m4`). # # * `payment-option` - The payment option (`NoUpfront` \| # `PartialUpfront` \| `AllUpfront`). # # * `state` - The state of the reservation (`payment-pending` \| # `payment-failed` \| `active` \| `retired`). # # * `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. # # * `tag-key` - 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. # @return [Array] # # @!attribute [rw] host_reservation_id_set # The host reservation IDs. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return for the request in a single # page. The remaining results can be seen by sending another request # with the returned `nextToken` value. This value can be between 5 and # 500. If `maxResults` is given a larger value than 500, you receive # an error. # @return [Integer] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeHostReservationsRequest AWS API Documentation # class DescribeHostReservationsRequest < Struct.new( :filter, :host_reservation_id_set, :max_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] host_reservation_set # Details about the reservation's configuration. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeHostReservationsResult AWS API Documentation # class DescribeHostReservationsResult < Struct.new( :host_reservation_set, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] filter # The filters. # # * `auto-placement` - Whether auto-placement is enabled or disabled # (`on` \| `off`). # # * `availability-zone` - The Availability Zone of the host. # # * `client-token` - The idempotency token that you provided when you # allocated the host. # # * `host-reservation-id` - The ID of the reservation assigned to this # host. # # * `instance-type` - The instance type size that the Dedicated Host # is configured to support. # # * `state` - The allocation state of the Dedicated Host (`available` # \| `under-assessment` \| `permanent-failure` \| `released` \| # `released-permanent-failure`). # # * `tag-key` - 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. # @return [Array] # # @!attribute [rw] host_ids # The IDs of the Dedicated Hosts. The IDs are used for targeted # instance launches. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return for the request in a single # page. The remaining results can be seen by sending another request # with the returned `nextToken` value. This value can be between 5 and # 500. If `maxResults` is given a larger value than 500, you receive # an error. # # You cannot specify this parameter and the host IDs parameter in the # same request. # @return [Integer] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeHostsRequest AWS API Documentation # class DescribeHostsRequest < Struct.new( :filter, :host_ids, :max_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] hosts # Information about the Dedicated Hosts. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeHostsResult AWS API Documentation # class DescribeHostsResult < Struct.new( :hosts, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] association_ids # The IAM instance profile associations. # @return [Array] # # @!attribute [rw] filters # The filters. # # * `instance-id` - The ID of the instance. # # * `state` - The state of the association (`associating` \| # `associated` \| `disassociating`). # @return [Array] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. For more information, see [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @!attribute [rw] next_token # The token returned from a previous paginated request. Pagination # continues from the end of the items returned by the previous # request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeIamInstanceProfileAssociationsRequest AWS API Documentation # class DescribeIamInstanceProfileAssociationsRequest < Struct.new( :association_ids, :filters, :max_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] iam_instance_profile_associations # Information about the IAM instance profile associations. # @return [Array] # # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` when there are no more items to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeIamInstanceProfileAssociationsResult AWS API Documentation # class DescribeIamInstanceProfileAssociationsResult < Struct.new( :iam_instance_profile_associations, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] resource # The type of resource: `bundle` \| `conversion-task` \| # `customer-gateway` \| `dhcp-options` \| `elastic-ip-allocation` \| # `elastic-ip-association` \| `export-task` \| `flow-log` \| `image` # \| `import-task` \| `instance` \| `internet-gateway` \| # `network-acl` \| `network-acl-association` \| `network-interface` \| # `network-interface-attachment` \| `prefix-list` \| `reservation` \| # `route-table` \| `route-table-association` \| `security-group` \| # `snapshot` \| `subnet` \| `subnet-cidr-block-association` \| # `volume` \| `vpc` \| `vpc-cidr-block-association` \| `vpc-endpoint` # \| `vpc-peering-connection` \| `vpn-connection` \| `vpn-gateway` # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeIdFormatRequest AWS API Documentation # class DescribeIdFormatRequest < Struct.new( :resource) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] statuses # Information about the ID format for the resource. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeIdFormatResult AWS API Documentation # class DescribeIdFormatResult < Struct.new( :statuses) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] principal_arn # The ARN of the principal, which can be an IAM role, IAM user, or the # root user. # @return [String] # # @!attribute [rw] resource # The type of resource: `bundle` \| `conversion-task` \| # `customer-gateway` \| `dhcp-options` \| `elastic-ip-allocation` \| # `elastic-ip-association` \| `export-task` \| `flow-log` \| `image` # \| `import-task` \| `instance` \| `internet-gateway` \| # `network-acl` \| `network-acl-association` \| `network-interface` \| # `network-interface-attachment` \| `prefix-list` \| `reservation` \| # `route-table` \| `route-table-association` \| `security-group` \| # `snapshot` \| `subnet` \| `subnet-cidr-block-association` \| # `volume` \| `vpc` \| `vpc-cidr-block-association` \| `vpc-endpoint` # \| `vpc-peering-connection` \| `vpn-connection` \| `vpn-gateway` # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeIdentityIdFormatRequest AWS API Documentation # class DescribeIdentityIdFormatRequest < Struct.new( :principal_arn, :resource) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] statuses # Information about the ID format for the resources. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeIdentityIdFormatResult AWS API Documentation # class DescribeIdentityIdFormatResult < Struct.new( :statuses) SENSITIVE = [] include Aws::Structure end # Contains the parameters for DescribeImageAttribute. # # @!attribute [rw] attribute # The AMI attribute. # # **Note**: The `blockDeviceMapping` attribute is deprecated. Using # this attribute returns the `Client.AuthFailure` error. To get # information about the block device mappings for an AMI, use the # DescribeImages action. # @return [String] # # @!attribute [rw] image_id # The ID of the AMI. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeImageAttributeRequest AWS API Documentation # class DescribeImageAttributeRequest < Struct.new( :attribute, :image_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] executable_users # Scopes the images by users with explicit launch permissions. Specify # an Amazon Web Services account ID, `self` (the sender of the # request), or `all` (public AMIs). # # * If you specify an Amazon Web Services account ID that is not your # own, only AMIs shared with that specific Amazon Web Services # account ID are returned. However, AMIs that are shared with the # account’s organization or organizational unit (OU) are not # returned. # # * If you specify `self` or your own Amazon Web Services account ID, # AMIs shared with your account are returned. In addition, AMIs that # are shared with the organization or OU of which you are member are # also returned. # # * If you specify `all`, all public AMIs are returned. # @return [Array] # # @!attribute [rw] filters # The filters. # # * `architecture` - The image architecture (`i386` \| `x86_64` \| # `arm64` \| `x86_64_mac` \| `arm64_mac`). # # * `block-device-mapping.delete-on-termination` - A Boolean value # that indicates whether the Amazon EBS volume is deleted on # instance termination. # # * `block-device-mapping.device-name` - The device name specified in # the block device mapping (for example, `/dev/sdh` or `xvdh`). # # * `block-device-mapping.snapshot-id` - The ID of the snapshot used # for the Amazon EBS volume. # # * `block-device-mapping.volume-size` - The volume size of the Amazon # EBS volume, in GiB. # # * `block-device-mapping.volume-type` - The volume type of the Amazon # EBS volume (`io1` \| `io2` \| `gp2` \| `gp3` \| `sc1 `\| `st1` \| # `standard`). # # * `block-device-mapping.encrypted` - A Boolean that indicates # whether the Amazon EBS volume is encrypted. # # * `creation-date` - The time when the image was created, in the ISO # 8601 format in the UTC time zone (YYYY-MM-DDThh:mm:ss.sssZ), for # example, `2021-09-29T11:04:43.305Z`. You can use a wildcard (`*`), # for example, `2021-09-29T*`, which matches an entire day. # # * `description` - The description of the image (provided during # image creation). # # * `ena-support` - A Boolean that indicates whether enhanced # networking with ENA is enabled. # # * `hypervisor` - The hypervisor type (`ovm` \| `xen`). # # * `image-id` - The ID of the image. # # * `image-type` - The image type (`machine` \| `kernel` \| # `ramdisk`). # # * `is-public` - A Boolean that indicates whether the image is # public. # # * `kernel-id` - The kernel ID. # # * `manifest-location` - The location of the image manifest. # # * `name` - The name of the AMI (provided during image creation). # # * `owner-alias` - The owner alias (`amazon` \| `aws-marketplace`). # The valid aliases are defined in an Amazon-maintained list. This # is not the Amazon Web Services account alias that can be set using # the IAM console. We recommend that you use the **Owner** request # parameter instead of this filter. # # * `owner-id` - The Amazon Web Services account ID of the owner. We # recommend that you use the **Owner** request parameter instead of # this filter. # # * `platform` - The platform. The only supported value is `windows`. # # * `product-code` - The product code. # # * `product-code.type` - The type of the product code # (`marketplace`). # # * `ramdisk-id` - The RAM disk ID. # # * `root-device-name` - The device name of the root device volume # (for example, `/dev/sda1`). # # * `root-device-type` - The type of the root device volume (`ebs` \| # `instance-store`). # # * `source-instance-id` - The ID of the instance that the AMI was # created from if the AMI was created using CreateImage. This filter # is applicable only if the AMI was created using [CreateImage][1]. # # * `state` - The state of the image (`available` \| `pending` \| # `failed`). # # * `state-reason-code` - The reason code for the state change. # # * `state-reason-message` - The message for the state change. # # * `sriov-net-support` - A value of `simple` indicates that enhanced # networking with the Intel 82599 VF interface is enabled. # # * `tag`:<key> - 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. # # * `tag-key` - 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. # # * `virtualization-type` - The virtualization type (`paravirtual` \| # `hvm`). # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateImage.html # @return [Array] # # @!attribute [rw] image_ids # The image IDs. # # Default: Describes all images available to you. # @return [Array] # # @!attribute [rw] owners # Scopes the results to images with the specified owners. You can # specify a combination of Amazon Web Services account IDs, `self`, # `amazon`, and `aws-marketplace`. If you omit this parameter, the # results include all images for which you have launch permissions, # regardless of ownership. # @return [Array] # # @!attribute [rw] include_deprecated # Specifies whether to include deprecated AMIs. # # Default: No deprecated AMIs are included in the response. # # If you are the AMI owner, all deprecated AMIs appear in the response # regardless of what you specify for this parameter. # # # @return [Boolean] # # @!attribute [rw] include_disabled # Specifies whether to include disabled AMIs. # # Default: No disabled AMIs are included in the response. # @return [Boolean] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. For more information, see [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @!attribute [rw] next_token # The token returned from a previous paginated request. Pagination # continues from the end of the items returned by the previous # request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeImagesRequest AWS API Documentation # class DescribeImagesRequest < Struct.new( :executable_users, :filters, :image_ids, :owners, :include_deprecated, :include_disabled, :dry_run, :max_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] images # Information about the images. # @return [Array] # # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` when there are no more items to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeImagesResult AWS API Documentation # class DescribeImagesResult < Struct.new( :images, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] filters # Filter tasks using the `task-state` filter and one of the following # values: `active`, `completed`, `deleting`, or `deleted`. # @return [Array] # # @!attribute [rw] import_task_ids # The IDs of the import image tasks. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return in a single call. # @return [Integer] # # @!attribute [rw] next_token # A token that indicates the next page of results. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeImportImageTasksRequest AWS API Documentation # class DescribeImportImageTasksRequest < Struct.new( :dry_run, :filters, :import_task_ids, :max_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] import_image_tasks # A list of zero or more import image tasks that are currently active # or were completed or canceled in the previous 7 days. # @return [Array] # # @!attribute [rw] next_token # The token to use to get the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeImportImageTasksResult AWS API Documentation # class DescribeImportImageTasksResult < Struct.new( :import_image_tasks, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] filters # The filters. # @return [Array] # # @!attribute [rw] import_task_ids # A list of import snapshot task IDs. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return in a single call. To # retrieve the remaining results, make another call with the returned # `NextToken` value. # @return [Integer] # # @!attribute [rw] next_token # A token that indicates the next page of results. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeImportSnapshotTasksRequest AWS API Documentation # class DescribeImportSnapshotTasksRequest < Struct.new( :dry_run, :filters, :import_task_ids, :max_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] import_snapshot_tasks # A list of zero or more import snapshot tasks that are currently # active or were completed or canceled in the previous 7 days. # @return [Array] # # @!attribute [rw] next_token # The token to use to get the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeImportSnapshotTasksResult AWS API Documentation # class DescribeImportSnapshotTasksResult < Struct.new( :import_snapshot_tasks, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] attribute # The instance attribute. # # Note: The `enaSupport` attribute is not supported at this time. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] instance_id # The ID of the instance. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeInstanceAttributeRequest AWS API Documentation # class DescribeInstanceAttributeRequest < Struct.new( :attribute, :dry_run, :instance_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. For more information, see [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @!attribute [rw] next_token # The token returned from a previous paginated request. Pagination # continues from the end of the items returned by the previous # request. # @return [String] # # @!attribute [rw] filters # One or more filters. # # * `instance-connect-endpoint-id` - The ID of the EC2 Instance # Connect Endpoint. # # * `state` - The state of the EC2 Instance Connect Endpoint # (`create-in-progress` \| `create-complete` \| `create-failed` \| # `delete-in-progress` \| `delete-complete` \| `delete-failed`). # # * `subnet-id` - The ID of the subnet in which the EC2 Instance # Connect Endpoint was created. # # * `tag`:<key> - 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. # # * `tag-key` - 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. # # * `tag-value` - The value of a tag assigned to the resource. Use # this filter to find all resources that have a tag with a specific # value, regardless of tag key. # # * `vpc-id` - The ID of the VPC in which the EC2 Instance Connect # Endpoint was created. # @return [Array] # # @!attribute [rw] instance_connect_endpoint_ids # One or more EC2 Instance Connect Endpoint IDs. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeInstanceConnectEndpointsRequest AWS API Documentation # class DescribeInstanceConnectEndpointsRequest < Struct.new( :dry_run, :max_results, :next_token, :filters, :instance_connect_endpoint_ids) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] instance_connect_endpoints # Information about the EC2 Instance Connect Endpoints. # @return [Array] # # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` when there are no more items to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeInstanceConnectEndpointsResult AWS API Documentation # class DescribeInstanceConnectEndpointsResult < Struct.new( :instance_connect_endpoints, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] filters # The filters. # # * `instance-id` - The ID of the instance. # # ^ # @return [Array] # # @!attribute [rw] instance_ids # The instance IDs. # # Default: Describes all your instances. # # Constraints: Maximum 1000 explicitly specified instance IDs. # @return [Array] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. For more information, see [Pagination][1]. # # You cannot specify this parameter and the instance IDs parameter in # the same call. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @!attribute [rw] next_token # The token returned from a previous paginated request. Pagination # continues from the end of the items returned by the previous # request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeInstanceCreditSpecificationsRequest AWS API Documentation # class DescribeInstanceCreditSpecificationsRequest < Struct.new( :dry_run, :filters, :instance_ids, :max_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] instance_credit_specifications # Information about the credit option for CPU usage of an instance. # @return [Array] # # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` when there are no more items to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeInstanceCreditSpecificationsResult AWS API Documentation # class DescribeInstanceCreditSpecificationsResult < Struct.new( :instance_credit_specifications, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeInstanceEventNotificationAttributesRequest AWS API Documentation # class DescribeInstanceEventNotificationAttributesRequest < Struct.new( :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] instance_tag_attribute # Information about the registered tag keys. # @return [Types::InstanceTagNotificationAttribute] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeInstanceEventNotificationAttributesResult AWS API Documentation # class DescribeInstanceEventNotificationAttributesResult < Struct.new( :instance_tag_attribute) SENSITIVE = [] include Aws::Structure end # Describe instance event windows by InstanceEventWindow. # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] instance_event_window_ids # The IDs of the event windows. # @return [Array] # # @!attribute [rw] filters # One or more filters. # # * `dedicated-host-id` - The event windows associated with the # specified Dedicated Host ID. # # * `event-window-name` - The event windows associated with the # specified names. # # * `instance-id` - The event windows associated with the specified # instance ID. # # * `instance-tag` - The event windows associated with the specified # tag and value. # # * `instance-tag-key` - The event windows associated with the # specified tag key, regardless of the value. # # * `instance-tag-value` - The event windows associated with the # specified tag value, regardless of the key. # # * `tag:` - The key/value combination of a tag assigned to the # event window. 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 `CMX`, specify # `tag:Owner` for the filter name and `CMX` for the filter value. # # * `tag-key` - The key of a tag assigned to the event window. Use # this filter to find all event windows that have a tag with a # specific key, regardless of the tag value. # # * `tag-value` - The value of a tag assigned to the event window. Use # this filter to find all event windows that have a tag with a # specific value, regardless of the tag key. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return in a single call. To # retrieve the remaining results, make another call with the returned # `NextToken` value. This value can be between 20 and 500. You cannot # specify this parameter and the event window IDs parameter in the # same call. # @return [Integer] # # @!attribute [rw] next_token # The token to request the next page of results. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeInstanceEventWindowsRequest AWS API Documentation # class DescribeInstanceEventWindowsRequest < Struct.new( :dry_run, :instance_event_window_ids, :filters, :max_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] instance_event_windows # Information about the event windows. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeInstanceEventWindowsResult AWS API Documentation # class DescribeInstanceEventWindowsResult < Struct.new( :instance_event_windows, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] filters # The filters. # # * `availability-zone` - The Availability Zone of the instance. # # * `event.code` - The code for the scheduled event (`instance-reboot` # \| `system-reboot` \| `system-maintenance` \| # `instance-retirement` \| `instance-stop`). # # * `event.description` - A description of the event. # # * `event.instance-event-id` - The ID of the event whose date and # time you are modifying. # # * `event.not-after` - The latest end time for the scheduled event # (for example, `2014-09-15T17:15:20.000Z`). # # * `event.not-before` - The earliest start time for the scheduled # event (for example, `2014-09-15T17:15:20.000Z`). # # * `event.not-before-deadline` - The deadline for starting the event # (for example, `2014-09-15T17:15:20.000Z`). # # * `instance-state-code` - The code for the instance state, as a # 16-bit unsigned integer. The high byte is used for internal # purposes and should be ignored. The low byte is set based on the # state represented. The valid values are 0 (pending), 16 (running), # 32 (shutting-down), 48 (terminated), 64 (stopping), and 80 # (stopped). # # * `instance-state-name` - The state of the instance (`pending` \| # `running` \| `shutting-down` \| `terminated` \| `stopping` \| # `stopped`). # # * `instance-status.reachability` - Filters on instance status where # the name is `reachability` (`passed` \| `failed` \| `initializing` # \| `insufficient-data`). # # * `instance-status.status` - The status of the instance (`ok` \| # `impaired` \| `initializing` \| `insufficient-data` \| # `not-applicable`). # # * `system-status.reachability` - Filters on system status where the # name is `reachability` (`passed` \| `failed` \| `initializing` \| # `insufficient-data`). # # * `system-status.status` - The system status of the instance (`ok` # \| `impaired` \| `initializing` \| `insufficient-data` \| # `not-applicable`). # @return [Array] # # @!attribute [rw] instance_ids # The instance IDs. # # Default: Describes all your instances. # # Constraints: Maximum 100 explicitly specified instance IDs. # @return [Array] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. For more information, see [Pagination][1]. # # You cannot specify this parameter and the instance IDs parameter in # the same request. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @!attribute [rw] next_token # The token returned from a previous paginated request. Pagination # continues from the end of the items returned by the previous # request. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] include_all_instances # When `true`, includes the health status for all instances. When # `false`, includes the health status for running instances only. # # Default: `false` # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeInstanceStatusRequest AWS API Documentation # class DescribeInstanceStatusRequest < Struct.new( :filters, :instance_ids, :max_results, :next_token, :dry_run, :include_all_instances) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] instance_statuses # Information about the status of the instances. # @return [Array] # # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` when there are no more items to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeInstanceStatusResult AWS API Documentation # class DescribeInstanceStatusResult < Struct.new( :instance_statuses, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] next_token # The token returned from a previous paginated request. Pagination # continues from the end of the items returned by the previous # request. # @return [String] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. For more information, see [Pagination][1]. # # You can't specify this parameter and the instance IDs parameter in # the same request. # # Default: `20` # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @!attribute [rw] instance_ids # The instance IDs. # # Default: Describes all your instances. # # Constraints: Maximum 100 explicitly specified instance IDs. # @return [Array] # # @!attribute [rw] group_names # The name of the placement group that each instance is in. # # Constraints: Maximum 100 explicitly specified placement group names. # @return [Array] # # @!attribute [rw] filters # The filters. # # * `availability-zone` - The name of the Availability Zone (for # example, `us-west-2a`) or Local Zone (for example, # `us-west-2-lax-1b`) that the instance is in. # # * `instance-type` - The instance type (for example, `p4d.24xlarge`) # or instance family (for example, `p4d*`). You can use the `*` # wildcard to match zero or more characters, or the `?` wildcard to # match zero or one character. # # * `zone-id` - The ID of the Availability Zone (for example, # `usw2-az2`) or Local Zone (for example, `usw2-lax1-az1`) that the # instance is in. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeInstanceTopologyRequest AWS API Documentation # class DescribeInstanceTopologyRequest < Struct.new( :dry_run, :next_token, :max_results, :instance_ids, :group_names, :filters) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] instances # Information about the topology of each instance. # @return [Array] # # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` when there are no more items to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeInstanceTopologyResult AWS API Documentation # class DescribeInstanceTopologyResult < Struct.new( :instances, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] location_type # The location type. # # * `availability-zone` - The Availability Zone. When you specify a # location filter, it must be an Availability Zone for the current # Region. # # * `availability-zone-id` - The AZ ID. When you specify a location # filter, it must be an AZ ID for the current Region. # # * `outpost` - The Outpost ARN. When you specify a location filter, # it must be an Outpost ARN for the current Region. # # * `region` - The current Region. If you specify a location filter, # it must match the current Region. # @return [String] # # @!attribute [rw] filters # One or more filters. Filter names and values are case-sensitive. # # * `instance-type` - The instance type. For a list of possible # values, see [Instance][1]. # # * `location` - The location. For a list of possible identifiers, see # [Regions and Zones][2]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_Instance.html # [2]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html # @return [Array] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. For more information, see [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @!attribute [rw] next_token # The token returned from a previous paginated request. Pagination # continues from the end of the items returned by the previous # request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeInstanceTypeOfferingsRequest AWS API Documentation # class DescribeInstanceTypeOfferingsRequest < Struct.new( :dry_run, :location_type, :filters, :max_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] instance_type_offerings # The instance types offered in the location. # @return [Array] # # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` when there are no more items to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeInstanceTypeOfferingsResult AWS API Documentation # class DescribeInstanceTypeOfferingsResult < Struct.new( :instance_type_offerings, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] instance_types # The instance types. # @return [Array] # # @!attribute [rw] filters # One or more filters. Filter names and values are case-sensitive. # # * `auto-recovery-supported` - Indicates whether Amazon CloudWatch # action based recovery is supported (`true` \| `false`). # # * `bare-metal` - Indicates whether it is a bare metal instance type # (`true` \| `false`). # # * `burstable-performance-supported` - Indicates whether the instance # type is a burstable performance T instance type (`true` \| # `false`). # # * `current-generation` - Indicates whether this instance type is the # latest generation instance type of an instance family (`true` \| # `false`). # # * `ebs-info.ebs-optimized-info.baseline-bandwidth-in-mbps` - The # baseline bandwidth performance for an EBS-optimized instance type, # in Mbps. # # * `ebs-info.ebs-optimized-info.baseline-iops` - The baseline # input/output storage operations per second for an EBS-optimized # instance type. # # * `ebs-info.ebs-optimized-info.baseline-throughput-in-mbps` - The # baseline throughput performance for an EBS-optimized instance # type, in MB/s. # # * `ebs-info.ebs-optimized-info.maximum-bandwidth-in-mbps` - The # maximum bandwidth performance for an EBS-optimized instance type, # in Mbps. # # * `ebs-info.ebs-optimized-info.maximum-iops` - The maximum # input/output storage operations per second for an EBS-optimized # instance type. # # * `ebs-info.ebs-optimized-info.maximum-throughput-in-mbps` - The # maximum throughput performance for an EBS-optimized instance type, # in MB/s. # # * `ebs-info.ebs-optimized-support` - Indicates whether the instance # type is EBS-optimized (`supported` \| `unsupported` \| `default`). # # * `ebs-info.encryption-support` - Indicates whether EBS encryption # is supported (`supported` \| `unsupported`). # # * `ebs-info.nvme-support` - Indicates whether non-volatile memory # express (NVMe) is supported for EBS volumes (`required` \| # `supported` \| `unsupported`). # # * `free-tier-eligible` - Indicates whether the instance type is # eligible to use in the free tier (`true` \| `false`). # # * `hibernation-supported` - Indicates whether On-Demand hibernation # is supported (`true` \| `false`). # # * `hypervisor` - The hypervisor (`nitro` \| `xen`). # # * `instance-storage-info.disk.count` - The number of local disks. # # * `instance-storage-info.disk.size-in-gb` - The storage size of each # instance storage disk, in GB. # # * `instance-storage-info.disk.type` - The storage technology for the # local instance storage disks (`hdd` \| `ssd`). # # * `instance-storage-info.encryption-support` - Indicates whether # data is encrypted at rest (`required` \| `supported` \| # `unsupported`). # # * `instance-storage-info.nvme-support` - Indicates whether # non-volatile memory express (NVMe) is supported for instance store # (`required` \| `supported` \| `unsupported`). # # * `instance-storage-info.total-size-in-gb` - The total amount of # storage available from all local instance storage, in GB. # # * `instance-storage-supported` - Indicates whether the instance type # has local instance storage (`true` \| `false`). # # * `instance-type` - The instance type (for example `c5.2xlarge` or # c5*). # # * `memory-info.size-in-mib` - The memory size. # # * `network-info.efa-info.maximum-efa-interfaces` - The maximum # number of Elastic Fabric Adapters (EFAs) per instance. # # * `network-info.efa-supported` - Indicates whether the instance type # supports Elastic Fabric Adapter (EFA) (`true` \| `false`). # # * `network-info.ena-support` - Indicates whether Elastic Network # Adapter (ENA) is supported or required (`required` \| `supported` # \| `unsupported`). # # * `network-info.encryption-in-transit-supported` - Indicates whether # the instance type automatically encrypts in-transit traffic # between instances (`true` \| `false`). # # * `network-info.ipv4-addresses-per-interface` - The maximum number # of private IPv4 addresses per network interface. # # * `network-info.ipv6-addresses-per-interface` - The maximum number # of private IPv6 addresses per network interface. # # * `network-info.ipv6-supported` - Indicates whether the instance # type supports IPv6 (`true` \| `false`). # # * `network-info.maximum-network-cards` - The maximum number of # network cards per instance. # # * `network-info.maximum-network-interfaces` - The maximum number of # network interfaces per instance. # # * `network-info.network-performance` - The network performance (for # example, "25 Gigabit"). # # * `nitro-enclaves-support` - Indicates whether Nitro Enclaves is # supported (`supported` \| `unsupported`). # # * `nitro-tpm-support` - Indicates whether NitroTPM is supported # (`supported` \| `unsupported`). # # * `nitro-tpm-info.supported-versions` - The supported NitroTPM # version (`2.0`). # # * `processor-info.supported-architecture` - The CPU architecture # (`arm64` \| `i386` \| `x86_64`). # # * `processor-info.sustained-clock-speed-in-ghz` - The CPU clock # speed, in GHz. # # * `processor-info.supported-features` - The supported CPU features # (`amd-sev-snp`). # # * `supported-boot-mode` - The boot mode (`legacy-bios` \| `uefi`). # # * `supported-root-device-type` - The root device type (`ebs` \| # `instance-store`). # # * `supported-usage-class` - The usage class (`on-demand` \| `spot`). # # * `supported-virtualization-type` - The virtualization type (`hvm` # \| `paravirtual`). # # * `vcpu-info.default-cores` - The default number of cores for the # instance type. # # * `vcpu-info.default-threads-per-core` - The default number of # threads per core for the instance type. # # * `vcpu-info.default-vcpus` - The default number of vCPUs for the # instance type. # # * `vcpu-info.valid-cores` - The number of cores that can be # configured for the instance type. # # * `vcpu-info.valid-threads-per-core` - The number of threads per # core that can be configured for the instance type. For example, # "1" or "1,2". # @return [Array] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. For more information, see [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @!attribute [rw] next_token # The token returned from a previous paginated request. Pagination # continues from the end of the items returned by the previous # request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeInstanceTypesRequest AWS API Documentation # class DescribeInstanceTypesRequest < Struct.new( :dry_run, :instance_types, :filters, :max_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] instance_types # The instance type. # @return [Array] # # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` when there are no more items to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeInstanceTypesResult AWS API Documentation # class DescribeInstanceTypesResult < Struct.new( :instance_types, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] filters # The filters. # # * `affinity` - The affinity setting for an instance running on a # Dedicated Host (`default` \| `host`). # # * `architecture` - The instance architecture (`i386` \| `x86_64` \| # `arm64`). # # * `availability-zone` - The Availability Zone of the instance. # # * `block-device-mapping.attach-time` - The attach time for an EBS # volume mapped to the instance, for example, # `2022-09-15T17:15:20.000Z`. # # * `block-device-mapping.delete-on-termination` - A Boolean that # indicates whether the EBS volume is deleted on instance # termination. # # * `block-device-mapping.device-name` - The device name specified in # the block device mapping (for example, `/dev/sdh` or `xvdh`). # # * `block-device-mapping.status` - The status for the EBS volume # (`attaching` \| `attached` \| `detaching` \| `detached`). # # * `block-device-mapping.volume-id` - The volume ID of the EBS # volume. # # * `boot-mode` - The boot mode that was specified by the AMI # (`legacy-bios` \| `uefi` \| `uefi-preferred`). # # * `capacity-reservation-id` - The ID of the Capacity Reservation # into which the instance was launched. # # * `capacity-reservation-specification.capacity-reservation-preference` # - The instance's Capacity Reservation preference (`open` \| # `none`). # # * `capacity-reservation-specification.capacity-reservation-target.capacity-reservation-id` # - The ID of the targeted Capacity Reservation. # # * `capacity-reservation-specification.capacity-reservation-target.capacity-reservation-resource-group-arn` # - The ARN of the targeted Capacity Reservation group. # # * `client-token` - The idempotency token you provided when you # launched the instance. # # * `current-instance-boot-mode` - The boot mode that is used to # launch the instance at launch or start (`legacy-bios` \| `uefi`). # # * `dns-name` - The public DNS name of the instance. # # * `ebs-optimized` - A Boolean that indicates whether the instance is # optimized for Amazon EBS I/O. # # * `ena-support` - A Boolean that indicates whether the instance is # enabled for enhanced networking with ENA. # # * `enclave-options.enabled` - A Boolean that indicates whether the # instance is enabled for Amazon Web Services Nitro Enclaves. # # * `hibernation-options.configured` - A Boolean that indicates # whether the instance is enabled for hibernation. A value of `true` # means that the instance is enabled for hibernation. # # * `host-id` - The ID of the Dedicated Host on which the instance is # running, if applicable. # # * `hypervisor` - The hypervisor type of the instance (`ovm` \| # `xen`). The value `xen` is used for both Xen and Nitro # hypervisors. # # * `iam-instance-profile.arn` - The instance profile associated with # the instance. Specified as an ARN. # # * `iam-instance-profile.id` - The instance profile associated with # the instance. Specified as an ID. # # * `iam-instance-profile.name` - The instance profile associated with # the instance. Specified as an name. # # * `image-id` - The ID of the image used to launch the instance. # # * `instance-id` - The ID of the instance. # # * `instance-lifecycle` - Indicates whether this is a Spot Instance, # a Scheduled Instance, or a Capacity Block (`spot` \| `scheduled` # \| `capacity-block`). # # * `instance-state-code` - The state of the instance, as a 16-bit # unsigned integer. The high byte is used for internal purposes and # should be ignored. The low byte is set based on the state # represented. The valid values are: 0 (pending), 16 (running), 32 # (shutting-down), 48 (terminated), 64 (stopping), and 80 (stopped). # # * `instance-state-name` - The state of the instance (`pending` \| # `running` \| `shutting-down` \| `terminated` \| `stopping` \| # `stopped`). # # * `instance-type` - The type of instance (for example, `t2.micro`). # # * `instance.group-id` - The ID of the security group for the # instance. # # * `instance.group-name` - The name of the security group for the # instance. # # * `ip-address` - The public IPv4 address of the instance. # # * `ipv6-address` - The IPv6 address of the instance. # # * `kernel-id` - The kernel ID. # # * `key-name` - The name of the key pair used when the instance was # launched. # # * `launch-index` - When launching multiple instances, this is the # index for the instance in the launch group (for example, 0, 1, 2, # and so on). # # * `launch-time` - The time when the instance was launched, in the # ISO 8601 format in the UTC time zone (YYYY-MM-DDThh:mm:ss.sssZ), # for example, `2021-09-29T11:04:43.305Z`. You can use a wildcard # (`*`), for example, `2021-09-29T*`, which matches an entire day. # # * `maintenance-options.auto-recovery` - The current automatic # recovery behavior of the instance (`disabled` \| `default`). # # * `metadata-options.http-endpoint` - The status of access to the # HTTP metadata endpoint on your instance (`enabled` \| `disabled`) # # * `metadata-options.http-protocol-ipv4` - Indicates whether the IPv4 # endpoint is enabled (`disabled` \| `enabled`). # # * `metadata-options.http-protocol-ipv6` - Indicates whether the IPv6 # endpoint is enabled (`disabled` \| `enabled`). # # * `metadata-options.http-put-response-hop-limit` - The HTTP metadata # request put response hop limit (integer, possible values `1` to # `64`) # # * `metadata-options.http-tokens` - The metadata request # authorization state (`optional` \| `required`) # # * `metadata-options.instance-metadata-tags` - The status of access # to instance tags from the instance metadata (`enabled` \| # `disabled`) # # * `metadata-options.state` - The state of the metadata option # changes (`pending` \| `applied`). # # * `monitoring-state` - Indicates whether detailed monitoring is # enabled (`disabled` \| `enabled`). # # * `network-interface.addresses.association.allocation-id` - The # allocation ID. # # * `network-interface.addresses.association.association-id` - The # association ID. # # * `network-interface.addresses.association.carrier-ip` - The carrier # IP address. # # * `network-interface.addresses.association.customer-owned-ip` - The # customer-owned IP address. # # * `network-interface.addresses.association.ip-owner-id` - The owner # ID of the private IPv4 address associated with the network # interface. # # * `network-interface.addresses.association.public-dns-name` - The # public DNS name. # # * `network-interface.addresses.association.public-ip` - The ID of # the association of an Elastic IP address (IPv4) with a network # interface. # # * `network-interface.addresses.primary` - Specifies whether the IPv4 # address of the network interface is the primary private IPv4 # address. # # * `network-interface.addresses.private-dns-name` - The private DNS # name. # # * `network-interface.addresses.private-ip-address` - The private # IPv4 address associated with the network interface. # # * `network-interface.association.allocation-id` - The allocation ID # returned when you allocated the Elastic IP address (IPv4) for your # network interface. # # * `network-interface.association.association-id` - The association # ID returned when the network interface was associated with an IPv4 # address. # # * `network-interface.association.carrier-ip` - The customer-owned IP # address. # # * `network-interface.association.customer-owned-ip` - The # customer-owned IP address. # # * `network-interface.association.ip-owner-id` - The owner of the # Elastic IP address (IPv4) associated with the network interface. # # * `network-interface.association.public-dns-name` - The public DNS # name. # # * `network-interface.association.public-ip` - The address of the # Elastic IP address (IPv4) bound to the network interface. # # * `network-interface.attachment.attach-time` - The time that the # network interface was attached to an instance. # # * `network-interface.attachment.attachment-id` - The ID of the # interface attachment. # # * `network-interface.attachment.delete-on-termination` - Specifies # whether the attachment is deleted when an instance is terminated. # # * `network-interface.attachment.device-index` - The device index to # which the network interface is attached. # # * `network-interface.attachment.instance-id` - The ID of the # instance to which the network interface is attached. # # * `network-interface.attachment.instance-owner-id` - The owner ID of # the instance to which the network interface is attached. # # * `network-interface.attachment.network-card-index` - The index of # the network card. # # * `network-interface.attachment.status` - The status of the # attachment (`attaching` \| `attached` \| `detaching` \| # `detached`). # # * `network-interface.availability-zone` - The Availability Zone for # the network interface. # # * `network-interface.deny-all-igw-traffic` - A Boolean that # indicates whether a network interface with an IPv6 address is # unreachable from the public internet. # # * `network-interface.description` - The description of the network # interface. # # * `network-interface.group-id` - The ID of a security group # associated with the network interface. # # * `network-interface.group-name` - The name of a security group # associated with the network interface. # # * `network-interface.ipv4-prefixes.ipv4-prefix` - The IPv4 prefixes # that are assigned to the network interface. # # * `network-interface.ipv6-address` - The IPv6 address associated # with the network interface. # # * `network-interface.ipv6-addresses.ipv6-address` - The IPv6 address # associated with the network interface. # # * `network-interface.ipv6-addresses.is-primary-ipv6` - A Boolean # that indicates whether this is the primary IPv6 address. # # * `network-interface.ipv6-native` - A Boolean that indicates whether # this is an IPv6 only network interface. # # * `network-interface.ipv6-prefixes.ipv6-prefix` - The IPv6 prefix # assigned to the network interface. # # * `network-interface.mac-address` - The MAC address of the network # interface. # # * `network-interface.network-interface-id` - The ID of the network # interface. # # * `network-interface.outpost-arn` - The ARN of the Outpost. # # * `network-interface.owner-id` - The ID of the owner of the network # interface. # # * `network-interface.private-dns-name` - The private DNS name of the # network interface. # # * `network-interface.private-ip-address` - The private IPv4 address. # # * `network-interface.public-dns-name` - The public DNS name. # # * `network-interface.requester-id` - The requester ID for the # network interface. # # * `network-interface.requester-managed` - Indicates whether the # network interface is being managed by Amazon Web Services. # # * `network-interface.status` - The status of the network interface # (`available`) \| `in-use`). # # * `network-interface.source-dest-check` - Whether the network # interface performs source/destination checking. A value of `true` # means that checking is enabled, and `false` means that checking is # disabled. The value must be `false` for the network interface to # perform network address translation (NAT) in your VPC. # # * `network-interface.subnet-id` - The ID of the subnet for the # network interface. # # * `network-interface.tag-key` - The key of a tag assigned to the # network interface. # # * `network-interface.tag-value` - The value of a tag assigned to the # network interface. # # * `network-interface.vpc-id` - The ID of the VPC for the network # interface. # # * `outpost-arn` - The Amazon Resource Name (ARN) of the Outpost. # # * `owner-id` - The Amazon Web Services account ID of the instance # owner. # # * `placement-group-name` - The name of the placement group for the # instance. # # * `placement-partition-number` - The partition in which the instance # is located. # # * `platform` - The platform. To list only Windows instances, use # `windows`. # # * `platform-details` - The platform (`Linux/UNIX` \| `Red Hat BYOL # Linux` \| ` Red Hat Enterprise Linux` \| `Red Hat Enterprise Linux # with HA` \| `Red Hat Enterprise Linux with SQL Server Standard and # HA` \| `Red Hat Enterprise Linux with SQL Server Enterprise and # HA` \| `Red Hat Enterprise Linux with SQL Server Standard` \| `Red # Hat Enterprise Linux with SQL Server Web` \| `Red Hat Enterprise # Linux with SQL Server Enterprise` \| `SQL Server Enterprise` \| # `SQL Server Standard` \| `SQL Server Web` \| `SUSE Linux` \| # `Ubuntu Pro` \| `Windows` \| `Windows BYOL` \| `Windows with SQL # Server Enterprise` \| `Windows with SQL Server Standard` \| # `Windows with SQL Server Web`). # # * `private-dns-name` - The private IPv4 DNS name of the instance. # # * `private-dns-name-options.enable-resource-name-dns-a-record` - A # Boolean that indicates whether to respond to DNS queries for # instance hostnames with DNS A records. # # * `private-dns-name-options.enable-resource-name-dns-aaaa-record` - # A Boolean that indicates whether to respond to DNS queries for # instance hostnames with DNS AAAA records. # # * `private-dns-name-options.hostname-type` - The type of hostname # (`ip-name` \| `resource-name`). # # * `private-ip-address` - The private IPv4 address of the instance. # # * `product-code` - The product code associated with the AMI used to # launch the instance. # # * `product-code.type` - The type of product code (`devpay` \| # `marketplace`). # # * `ramdisk-id` - The RAM disk ID. # # * `reason` - The reason for the current state of the instance (for # example, shows "User Initiated \[date\]" when you stop or # terminate the instance). Similar to the state-reason-code filter. # # * `requester-id` - The ID of the entity that launched the instance # on your behalf (for example, Amazon Web Services Management # Console, Auto Scaling, and so on). # # * `reservation-id` - The ID of the instance's reservation. A # reservation ID is created any time you launch an instance. A # reservation ID has a one-to-one relationship with an instance # launch request, but can be associated with more than one instance # if you launch multiple instances using the same launch request. # For example, if you launch one instance, you get one reservation # ID. If you launch ten instances using the same launch request, you # also get one reservation ID. # # * `root-device-name` - The device name of the root device volume # (for example, `/dev/sda1`). # # * `root-device-type` - The type of the root device volume (`ebs` \| # `instance-store`). # # * `source-dest-check` - Indicates whether the instance performs # source/destination checking. A value of `true` means that checking # is enabled, and `false` means that checking is disabled. The value # must be `false` for the instance to perform network address # translation (NAT) in your VPC. # # * `spot-instance-request-id` - The ID of the Spot Instance request. # # * `state-reason-code` - The reason code for the state change. # # * `state-reason-message` - A message that describes the state # change. # # * `subnet-id` - The ID of the subnet for the instance. # # * `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. # # * `tag-key` - The key of a tag assigned to the resource. Use this # filter to find all resources that have a tag with a specific key, # regardless of the tag value. # # * `tenancy` - The tenancy of an instance (`dedicated` \| `default` # \| `host`). # # * `tpm-support` - Indicates if the instance is configured for # NitroTPM support (`v2.0`). # # * `usage-operation` - The usage operation value for the instance # (`RunInstances` \| `RunInstances:00g0` \| `RunInstances:0010` \| # `RunInstances:1010` \| `RunInstances:1014` \| `RunInstances:1110` # \| `RunInstances:0014` \| `RunInstances:0210` \| # `RunInstances:0110` \| `RunInstances:0100` \| `RunInstances:0004` # \| `RunInstances:0200` \| `RunInstances:000g` \| # `RunInstances:0g00` \| `RunInstances:0002` \| `RunInstances:0800` # \| `RunInstances:0102` \| `RunInstances:0006` \| # `RunInstances:0202`). # # * `usage-operation-update-time` - The time that the usage operation # was last updated, for example, `2022-09-15T17:15:20.000Z`. # # * `virtualization-type` - The virtualization type of the instance # (`paravirtual` \| `hvm`). # # * `vpc-id` - The ID of the VPC that the instance is running in. # @return [Array] # # @!attribute [rw] instance_ids # The instance IDs. # # Default: Describes all your instances. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. For more information, see [Pagination][1]. # # You cannot specify this parameter and the instance IDs parameter in # the same request. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @!attribute [rw] next_token # The token returned from a previous paginated request. Pagination # continues from the end of the items returned by the previous # request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeInstancesRequest AWS API Documentation # class DescribeInstancesRequest < Struct.new( :filters, :instance_ids, :dry_run, :max_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] reservations # Information about the reservations. # @return [Array] # # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` when there are no more items to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeInstancesResult AWS API Documentation # class DescribeInstancesResult < Struct.new( :reservations, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] filters # The filters. # # * `attachment.state` - The current state of the attachment between # the gateway and the VPC (`available`). Present only if a VPC is # attached. # # * `attachment.vpc-id` - The ID of an attached VPC. # # * `internet-gateway-id` - The ID of the Internet gateway. # # * `owner-id` - The ID of the Amazon Web Services account that owns # the internet gateway. # # * `tag`:<key> - 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. # # * `tag-key` - 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. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] internet_gateway_ids # The IDs of the internet gateways. # # Default: Describes all your internet gateways. # @return [Array] # # @!attribute [rw] next_token # The token returned from a previous paginated request. Pagination # continues from the end of the items returned by the previous # request. # @return [String] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. For more information, see [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeInternetGatewaysRequest AWS API Documentation # class DescribeInternetGatewaysRequest < Struct.new( :filters, :dry_run, :internet_gateway_ids, :next_token, :max_results) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] internet_gateways # Information about one or more internet gateways. # @return [Array] # # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` when there are no more items to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeInternetGatewaysResult AWS API Documentation # class DescribeInternetGatewaysResult < Struct.new( :internet_gateways, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeIpamByoasnRequest AWS API Documentation # class DescribeIpamByoasnRequest < Struct.new( :dry_run, :max_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] byoasns # ASN and BYOIP CIDR associations. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeIpamByoasnResult AWS API Documentation # class DescribeIpamByoasnResult < Struct.new( :byoasns, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # A check for whether you have the required permissions for the action # without actually making the request and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] filters # One or more filters for the request. For more information about # filtering, see [Filtering CLI output][1]. # # # # [1]: https://docs.aws.amazon.com/cli/latest/userguide/cli-usage-filter.html # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return in the request. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] ipam_pool_ids # The IDs of the IPAM pools you would like information on. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeIpamPoolsRequest AWS API Documentation # class DescribeIpamPoolsRequest < Struct.new( :dry_run, :filters, :max_results, :next_token, :ipam_pool_ids) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @!attribute [rw] ipam_pools # Information about the IPAM pools. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeIpamPoolsResult AWS API Documentation # class DescribeIpamPoolsResult < Struct.new( :next_token, :ipam_pools) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # A check for whether you have the required permissions for the action # without actually making the request and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] ipam_resource_discovery_ids # The IPAM resource discovery IDs. # @return [Array] # # @!attribute [rw] next_token # Specify the pagination token from a previous request to retrieve the # next page of results. # @return [String] # # @!attribute [rw] max_results # The maximum number of resource discoveries to return in one page of # results. # @return [Integer] # # @!attribute [rw] filters # The resource discovery filters. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeIpamResourceDiscoveriesRequest AWS API Documentation # class DescribeIpamResourceDiscoveriesRequest < Struct.new( :dry_run, :ipam_resource_discovery_ids, :next_token, :max_results, :filters) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] ipam_resource_discoveries # The resource discoveries. # @return [Array] # # @!attribute [rw] next_token # Specify the pagination token from a previous request to retrieve the # next page of results. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeIpamResourceDiscoveriesResult AWS API Documentation # class DescribeIpamResourceDiscoveriesResult < Struct.new( :ipam_resource_discoveries, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # A check for whether you have the required permissions for the action # without actually making the request and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] ipam_resource_discovery_association_ids # The resource discovery association IDs. # @return [Array] # # @!attribute [rw] next_token # Specify the pagination token from a previous request to retrieve the # next page of results. # @return [String] # # @!attribute [rw] max_results # The maximum number of resource discovery associations to return in # one page of results. # @return [Integer] # # @!attribute [rw] filters # The resource discovery association filters. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeIpamResourceDiscoveryAssociationsRequest AWS API Documentation # class DescribeIpamResourceDiscoveryAssociationsRequest < Struct.new( :dry_run, :ipam_resource_discovery_association_ids, :next_token, :max_results, :filters) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] ipam_resource_discovery_associations # The resource discovery associations. # @return [Array] # # @!attribute [rw] next_token # Specify the pagination token from a previous request to retrieve the # next page of results. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeIpamResourceDiscoveryAssociationsResult AWS API Documentation # class DescribeIpamResourceDiscoveryAssociationsResult < Struct.new( :ipam_resource_discovery_associations, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # A check for whether you have the required permissions for the action # without actually making the request and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] filters # One or more filters for the request. For more information about # filtering, see [Filtering CLI output][1]. # # # # [1]: https://docs.aws.amazon.com/cli/latest/userguide/cli-usage-filter.html # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return in the request. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] ipam_scope_ids # The IDs of the scopes you want information on. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeIpamScopesRequest AWS API Documentation # class DescribeIpamScopesRequest < Struct.new( :dry_run, :filters, :max_results, :next_token, :ipam_scope_ids) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @!attribute [rw] ipam_scopes # The scopes you want information on. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeIpamScopesResult AWS API Documentation # class DescribeIpamScopesResult < Struct.new( :next_token, :ipam_scopes) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # A check for whether you have the required permissions for the action # without actually making the request and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] filters # One or more filters for the request. For more information about # filtering, see [Filtering CLI output][1]. # # # # [1]: https://docs.aws.amazon.com/cli/latest/userguide/cli-usage-filter.html # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return in the request. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] ipam_ids # The IDs of the IPAMs you want information on. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeIpamsRequest AWS API Documentation # class DescribeIpamsRequest < Struct.new( :dry_run, :filters, :max_results, :next_token, :ipam_ids) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @!attribute [rw] ipams # Information about the IPAMs. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeIpamsResult AWS API Documentation # class DescribeIpamsResult < Struct.new( :next_token, :ipams) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] pool_ids # The IDs of the IPv6 address pools. # @return [Array] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] filters # One or more filters. # # * `tag`:<key> - 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. # # * `tag-key` - 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. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeIpv6PoolsRequest AWS API Documentation # class DescribeIpv6PoolsRequest < Struct.new( :pool_ids, :next_token, :max_results, :dry_run, :filters) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] ipv_6_pools # Information about the IPv6 address pools. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeIpv6PoolsResult AWS API Documentation # class DescribeIpv6PoolsResult < Struct.new( :ipv_6_pools, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] filters # The filters. # # * `key-pair-id` - The ID of the key pair. # # * `fingerprint` - The fingerprint of the key pair. # # * `key-name` - The name of the key pair. # # * `tag-key` - 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. # # * `tag`:<key> - 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. # @return [Array] # # @!attribute [rw] key_names # The key pair names. # # Default: Describes all of your key pairs. # @return [Array] # # @!attribute [rw] key_pair_ids # The IDs of the key pairs. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] include_public_key # If `true`, the public key material is included in the response. # # Default: `false` # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeKeyPairsRequest AWS API Documentation # class DescribeKeyPairsRequest < Struct.new( :filters, :key_names, :key_pair_ids, :dry_run, :include_public_key) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] key_pairs # Information about the key pairs. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeKeyPairsResult AWS API Documentation # class DescribeKeyPairsResult < Struct.new( :key_pairs) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] launch_template_id # The ID of the launch template. # # To describe one or more versions of a specified launch template, you # must specify either the `LaunchTemplateId` or the # `LaunchTemplateName`, but not both. # # To describe all the latest or default launch template versions in # your account, you must omit this parameter. # @return [String] # # @!attribute [rw] launch_template_name # The name of the launch template. # # To describe one or more versions of a specified launch template, you # must specify either the `LaunchTemplateName` or the # `LaunchTemplateId`, but not both. # # To describe all the latest or default launch template versions in # your account, you must omit this parameter. # @return [String] # # @!attribute [rw] versions # One or more versions of the launch template. Valid values depend on # whether you are describing a specified launch template (by ID or # name) or all launch templates in your account. # # To describe one or more versions of a specified launch template, # valid values are `$Latest`, `$Default`, and numbers. # # To describe all launch templates in your account that are defined as # the latest version, the valid value is `$Latest`. To describe all # launch templates in your account that are defined as the default # version, the valid value is `$Default`. You can specify `$Latest` # and `$Default` in the same request. You cannot specify numbers. # @return [Array] # # @!attribute [rw] min_version # The version number after which to describe launch template versions. # @return [String] # # @!attribute [rw] max_version # The version number up to which to describe launch template versions. # @return [String] # # @!attribute [rw] next_token # The token to request the next page of results. # @return [String] # # @!attribute [rw] max_results # The maximum number of results to return in a single call. To # retrieve the remaining results, make another call with the returned # `NextToken` value. This value can be between 1 and 200. # @return [Integer] # # @!attribute [rw] filters # One or more filters. # # * `create-time` - The time the launch template version was created. # # * `ebs-optimized` - A boolean that indicates whether the instance is # optimized for Amazon EBS I/O. # # * `http-endpoint` - Indicates whether the HTTP metadata endpoint on # your instances is enabled (`enabled` \| `disabled`). # # * `http-protocol-ipv4` - Indicates whether the IPv4 endpoint for the # instance metadata service is enabled (`enabled` \| `disabled`). # # * `host-resource-group-arn` - The ARN of the host resource group in # which to launch the instances. # # * `http-tokens` - The state of token usage for your instance # metadata requests (`optional` \| `required`). # # * `iam-instance-profile` - The ARN of the IAM instance profile. # # * `image-id` - The ID of the AMI. # # * `instance-type` - The instance type. # # * `is-default-version` - A boolean that indicates whether the launch # template version is the default version. # # * `kernel-id` - The kernel ID. # # * `license-configuration-arn` - The ARN of the license # configuration. # # * `network-card-index` - The index of the network card. # # * `ram-disk-id` - The RAM disk ID. # @return [Array] # # @!attribute [rw] resolve_alias # If `true`, and if a Systems Manager parameter is specified for # `ImageId`, the AMI ID is displayed in the response for `imageId`. # # If `false`, and if a Systems Manager parameter is specified for # `ImageId`, the parameter is displayed in the response for `imageId`. # # For more information, see [Use a Systems Manager parameter instead # of an AMI ID][1] in the *Amazon Elastic Compute Cloud User Guide*. # # Default: `false` # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html#use-an-ssm-parameter-instead-of-an-ami-id # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeLaunchTemplateVersionsRequest AWS API Documentation # class DescribeLaunchTemplateVersionsRequest < Struct.new( :dry_run, :launch_template_id, :launch_template_name, :versions, :min_version, :max_version, :next_token, :max_results, :filters, :resolve_alias) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] launch_template_versions # Information about the launch template versions. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeLaunchTemplateVersionsResult AWS API Documentation # class DescribeLaunchTemplateVersionsResult < Struct.new( :launch_template_versions, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] launch_template_ids # One or more launch template IDs. # @return [Array] # # @!attribute [rw] launch_template_names # One or more launch template names. # @return [Array] # # @!attribute [rw] filters # One or more filters. # # * `create-time` - The time the launch template was created. # # * `launch-template-name` - The name of the launch template. # # * `tag`:<key> - 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. # # * `tag-key` - 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. # @return [Array] # # @!attribute [rw] next_token # The token to request the next page of results. # @return [String] # # @!attribute [rw] max_results # The maximum number of results to return in a single call. To # retrieve the remaining results, make another call with the returned # `NextToken` value. This value can be between 1 and 200. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeLaunchTemplatesRequest AWS API Documentation # class DescribeLaunchTemplatesRequest < Struct.new( :dry_run, :launch_template_ids, :launch_template_names, :filters, :next_token, :max_results) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] launch_templates # Information about the launch templates. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeLaunchTemplatesResult AWS API Documentation # class DescribeLaunchTemplatesResult < Struct.new( :launch_templates, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] local_gateway_route_table_virtual_interface_group_association_ids # The IDs of the associations. # @return [Array] # # @!attribute [rw] filters # One or more filters. # # * `local-gateway-id` - The ID of a local gateway. # # * `local-gateway-route-table-arn` - The Amazon Resource Name (ARN) # of the local gateway route table for the virtual interface group. # # * `local-gateway-route-table-id` - The ID of the local gateway route # table. # # * `local-gateway-route-table-virtual-interface-group-association-id` # - The ID of the association. # # * `local-gateway-route-table-virtual-interface-group-id` - The ID of # the virtual interface group. # # * `owner-id` - The ID of the Amazon Web Services account that owns # the local gateway virtual interface group association. # # * `state` - The state of the association. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsRequest AWS API Documentation # class DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsRequest < Struct.new( :local_gateway_route_table_virtual_interface_group_association_ids, :filters, :max_results, :next_token, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] local_gateway_route_table_virtual_interface_group_associations # Information about the associations. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsResult AWS API Documentation # class DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsResult < Struct.new( :local_gateway_route_table_virtual_interface_group_associations, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] local_gateway_route_table_vpc_association_ids # The IDs of the associations. # @return [Array] # # @!attribute [rw] filters # One or more filters. # # * `local-gateway-id` - The ID of a local gateway. # # * `local-gateway-route-table-arn` - The Amazon Resource Name (ARN) # of the local gateway route table for the association. # # * `local-gateway-route-table-id` - The ID of the local gateway route # table. # # * `local-gateway-route-table-vpc-association-id` - The ID of the # association. # # * `owner-id` - The ID of the Amazon Web Services account that owns # the local gateway route table for the association. # # * `state` - The state of the association. # # * `vpc-id` - The ID of the VPC. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeLocalGatewayRouteTableVpcAssociationsRequest AWS API Documentation # class DescribeLocalGatewayRouteTableVpcAssociationsRequest < Struct.new( :local_gateway_route_table_vpc_association_ids, :filters, :max_results, :next_token, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] local_gateway_route_table_vpc_associations # Information about the associations. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeLocalGatewayRouteTableVpcAssociationsResult AWS API Documentation # class DescribeLocalGatewayRouteTableVpcAssociationsResult < Struct.new( :local_gateway_route_table_vpc_associations, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] local_gateway_route_table_ids # The IDs of the local gateway route tables. # @return [Array] # # @!attribute [rw] filters # One or more filters. # # * `local-gateway-id` - The ID of a local gateway. # # * `local-gateway-route-table-arn` - The Amazon Resource Name (ARN) # of the local gateway route table. # # * `local-gateway-route-table-id` - The ID of a local gateway route # table. # # * `outpost-arn` - The Amazon Resource Name (ARN) of the Outpost. # # * `owner-id` - The ID of the Amazon Web Services account that owns # the local gateway route table. # # * `state` - The state of the local gateway route table. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeLocalGatewayRouteTablesRequest AWS API Documentation # class DescribeLocalGatewayRouteTablesRequest < Struct.new( :local_gateway_route_table_ids, :filters, :max_results, :next_token, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] local_gateway_route_tables # Information about the local gateway route tables. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeLocalGatewayRouteTablesResult AWS API Documentation # class DescribeLocalGatewayRouteTablesResult < Struct.new( :local_gateway_route_tables, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] local_gateway_virtual_interface_group_ids # The IDs of the virtual interface groups. # @return [Array] # # @!attribute [rw] filters # One or more filters. # # * `local-gateway-id` - The ID of a local gateway. # # * `local-gateway-virtual-interface-group-id` - The ID of the virtual # interface group. # # * `local-gateway-virtual-interface-id` - The ID of the virtual # interface. # # * `owner-id` - The ID of the Amazon Web Services account that owns # the local gateway virtual interface group. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeLocalGatewayVirtualInterfaceGroupsRequest AWS API Documentation # class DescribeLocalGatewayVirtualInterfaceGroupsRequest < Struct.new( :local_gateway_virtual_interface_group_ids, :filters, :max_results, :next_token, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] local_gateway_virtual_interface_groups # The virtual interface groups. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeLocalGatewayVirtualInterfaceGroupsResult AWS API Documentation # class DescribeLocalGatewayVirtualInterfaceGroupsResult < Struct.new( :local_gateway_virtual_interface_groups, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] local_gateway_virtual_interface_ids # The IDs of the virtual interfaces. # @return [Array] # # @!attribute [rw] filters # One or more filters. # # * `local-address` - The local address. # # * `local-bgp-asn` - The Border Gateway Protocol (BGP) Autonomous # System Number (ASN) of the local gateway. # # * `local-gateway-id` - The ID of the local gateway. # # * `local-gateway-virtual-interface-id` - The ID of the virtual # interface. # # * `owner-id` - The ID of the Amazon Web Services account that owns # the local gateway virtual interface. # # * `peer-address` - The peer address. # # * `peer-bgp-asn` - The peer BGP ASN. # # * `vlan` - The ID of the VLAN. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeLocalGatewayVirtualInterfacesRequest AWS API Documentation # class DescribeLocalGatewayVirtualInterfacesRequest < Struct.new( :local_gateway_virtual_interface_ids, :filters, :max_results, :next_token, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] local_gateway_virtual_interfaces # Information about the virtual interfaces. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeLocalGatewayVirtualInterfacesResult AWS API Documentation # class DescribeLocalGatewayVirtualInterfacesResult < Struct.new( :local_gateway_virtual_interfaces, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] local_gateway_ids # The IDs of the local gateways. # @return [Array] # # @!attribute [rw] filters # One or more filters. # # * `local-gateway-id` - The ID of a local gateway. # # * `outpost-arn` - The Amazon Resource Name (ARN) of the Outpost. # # * `owner-id` - The ID of the Amazon Web Services account that owns # the local gateway. # # * `state` - The state of the association. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeLocalGatewaysRequest AWS API Documentation # class DescribeLocalGatewaysRequest < Struct.new( :local_gateway_ids, :filters, :max_results, :next_token, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] local_gateways # Information about the local gateways. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeLocalGatewaysResult AWS API Documentation # class DescribeLocalGatewaysResult < Struct.new( :local_gateways, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] filters # The filters. # # * `lock-state` - The state of the snapshot lock # (`compliance-cooloff` \| `governance` \| `compliance` \| # `expired`). # # ^ # @return [Array] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. For more information, see [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @!attribute [rw] next_token # The token returned from a previous paginated request. Pagination # continues from the end of the items returned by the previous # request. # @return [String] # # @!attribute [rw] snapshot_ids # The IDs of the snapshots for which to view the lock status. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeLockedSnapshotsRequest AWS API Documentation # class DescribeLockedSnapshotsRequest < Struct.new( :filters, :max_results, :next_token, :snapshot_ids, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] snapshots # Information about the snapshots. # @return [Array] # # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` when there are no more items to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeLockedSnapshotsResult AWS API Documentation # class DescribeLockedSnapshotsResult < Struct.new( :snapshots, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] filters # The filters. # # * `availability-zone` - The Availability Zone of the EC2 Mac # Dedicated Host. # # * `instance-type` - The instance type size that the EC2 Mac # Dedicated Host is configured to support. # @return [Array] # # @!attribute [rw] host_ids # The IDs of the EC2 Mac Dedicated Hosts. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return for the request in a single # page. The remaining results can be seen by sending another request # with the returned `nextToken` value. This value can be between 5 and # 500. If `maxResults` is given a larger value than 500, you receive # an error. # @return [Integer] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeMacHostsRequest AWS API Documentation # class DescribeMacHostsRequest < Struct.new( :filters, :host_ids, :max_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] mac_hosts # Information about the EC2 Mac Dedicated Hosts. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeMacHostsResult AWS API Documentation # class DescribeMacHostsResult < Struct.new( :mac_hosts, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] filters # One or more filters. # # * `owner-id` - The ID of the prefix list owner. # # * `prefix-list-id` - The ID of the prefix list. # # * `prefix-list-name` - The name of the prefix list. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] prefix_list_ids # One or more prefix list IDs. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeManagedPrefixListsRequest AWS API Documentation # class DescribeManagedPrefixListsRequest < Struct.new( :dry_run, :filters, :max_results, :next_token, :prefix_list_ids) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @!attribute [rw] prefix_lists # Information about the prefix lists. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeManagedPrefixListsResult AWS API Documentation # class DescribeManagedPrefixListsResult < Struct.new( :next_token, :prefix_lists) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] filters # One or more filters. # # * `moving-status` - The status of the Elastic IP address # (`MovingToVpc` \| `RestoringToClassic`). # # ^ # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] max_results # The maximum number of results to return for the request in a single # page. The remaining results of the initial request can be seen by # sending another request with the returned `NextToken` value. This # value can be between 5 and 1000; if `MaxResults` is given a value # outside of this range, an error is returned. # # Default: If no value is provided, the default is 1000. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] public_ips # One or more Elastic IP addresses. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeMovingAddressesRequest AWS API Documentation # class DescribeMovingAddressesRequest < Struct.new( :filters, :dry_run, :max_results, :next_token, :public_ips) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] moving_address_statuses # The status for each Elastic IP address. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeMovingAddressesResult AWS API Documentation # class DescribeMovingAddressesResult < Struct.new( :moving_address_statuses, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] filter # The filters. # # * `nat-gateway-id` - The ID of the NAT gateway. # # * `state` - The state of the NAT gateway (`pending` \| `failed` \| # `available` \| `deleting` \| `deleted`). # # * `subnet-id` - The ID of the subnet in which the NAT gateway # resides. # # * `tag`:<key> - 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. # # * `tag-key` - 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. # # * `vpc-id` - The ID of the VPC in which the NAT gateway resides. # @return [Array] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. For more information, see [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @!attribute [rw] nat_gateway_ids # The IDs of the NAT gateways. # @return [Array] # # @!attribute [rw] next_token # The token returned from a previous paginated request. Pagination # continues from the end of the items returned by the previous # request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeNatGatewaysRequest AWS API Documentation # class DescribeNatGatewaysRequest < Struct.new( :dry_run, :filter, :max_results, :nat_gateway_ids, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] nat_gateways # Information about the NAT gateways. # @return [Array] # # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` when there are no more items to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeNatGatewaysResult AWS API Documentation # class DescribeNatGatewaysResult < Struct.new( :nat_gateways, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] filters # The filters. # # * `association.association-id` - The ID of an association ID for the # ACL. # # * `association.network-acl-id` - The ID of the network ACL involved # in the association. # # * `association.subnet-id` - The ID of the subnet involved in the # association. # # * `default` - Indicates whether the ACL is the default network ACL # for the VPC. # # * `entry.cidr` - The IPv4 CIDR range specified in the entry. # # * `entry.icmp.code` - The ICMP code specified in the entry, if any. # # * `entry.icmp.type` - The ICMP type specified in the entry, if any. # # * `entry.ipv6-cidr` - The IPv6 CIDR range specified in the entry. # # * `entry.port-range.from` - The start of the port range specified in # the entry. # # * `entry.port-range.to` - The end of the port range specified in the # entry. # # * `entry.protocol` - The protocol specified in the entry (`tcp` \| # `udp` \| `icmp` or a protocol number). # # * `entry.rule-action` - Allows or denies the matching traffic # (`allow` \| `deny`). # # * `entry.egress` - A Boolean that indicates the type of rule. # Specify `true` for egress rules, or `false` for ingress rules. # # * `entry.rule-number` - The number of an entry (in other words, # rule) in the set of ACL entries. # # * `network-acl-id` - The ID of the network ACL. # # * `owner-id` - The ID of the Amazon Web Services account that owns # the network ACL. # # * `tag`:<key> - 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. # # * `tag-key` - 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. # # * `vpc-id` - The ID of the VPC for the network ACL. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] network_acl_ids # The IDs of the network ACLs. # # Default: Describes all your network ACLs. # @return [Array] # # @!attribute [rw] next_token # The token returned from a previous paginated request. Pagination # continues from the end of the items returned by the previous # request. # @return [String] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. For more information, see [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeNetworkAclsRequest AWS API Documentation # class DescribeNetworkAclsRequest < Struct.new( :filters, :dry_run, :network_acl_ids, :next_token, :max_results) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] network_acls # Information about one or more network ACLs. # @return [Array] # # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` when there are no more items to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeNetworkAclsResult AWS API Documentation # class DescribeNetworkAclsResult < Struct.new( :network_acls, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] network_insights_access_scope_analysis_ids # The IDs of the Network Access Scope analyses. # @return [Array] # # @!attribute [rw] network_insights_access_scope_id # The ID of the Network Access Scope. # @return [String] # # @!attribute [rw] analysis_start_time_begin # Filters the results based on the start time. The analysis must have # started on or after this time. # @return [Time] # # @!attribute [rw] analysis_start_time_end # Filters the results based on the start time. The analysis must have # started on or before this time. # @return [Time] # # @!attribute [rw] filters # There are no supported filters. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeNetworkInsightsAccessScopeAnalysesRequest AWS API Documentation # class DescribeNetworkInsightsAccessScopeAnalysesRequest < Struct.new( :network_insights_access_scope_analysis_ids, :network_insights_access_scope_id, :analysis_start_time_begin, :analysis_start_time_end, :filters, :max_results, :dry_run, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] network_insights_access_scope_analyses # The Network Access Scope analyses. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeNetworkInsightsAccessScopeAnalysesResult AWS API Documentation # class DescribeNetworkInsightsAccessScopeAnalysesResult < Struct.new( :network_insights_access_scope_analyses, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] network_insights_access_scope_ids # The IDs of the Network Access Scopes. # @return [Array] # # @!attribute [rw] filters # There are no supported filters. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeNetworkInsightsAccessScopesRequest AWS API Documentation # class DescribeNetworkInsightsAccessScopesRequest < Struct.new( :network_insights_access_scope_ids, :filters, :max_results, :dry_run, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] network_insights_access_scopes # The Network Access Scopes. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeNetworkInsightsAccessScopesResult AWS API Documentation # class DescribeNetworkInsightsAccessScopesResult < Struct.new( :network_insights_access_scopes, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] network_insights_analysis_ids # The ID of the network insights analyses. You must specify either # analysis IDs or a path ID. # @return [Array] # # @!attribute [rw] network_insights_path_id # The ID of the path. You must specify either a path ID or analysis # IDs. # @return [String] # # @!attribute [rw] analysis_start_time # The time when the network insights analyses started. # @return [Time] # # @!attribute [rw] analysis_end_time # The time when the network insights analyses ended. # @return [Time] # # @!attribute [rw] filters # The filters. The following are the possible values: # # * path-found - A Boolean value that indicates whether a feasible # path is found. # # * status - The status of the analysis (running \| succeeded \| # failed). # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeNetworkInsightsAnalysesRequest AWS API Documentation # class DescribeNetworkInsightsAnalysesRequest < Struct.new( :network_insights_analysis_ids, :network_insights_path_id, :analysis_start_time, :analysis_end_time, :filters, :max_results, :dry_run, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] network_insights_analyses # Information about the network insights analyses. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeNetworkInsightsAnalysesResult AWS API Documentation # class DescribeNetworkInsightsAnalysesResult < Struct.new( :network_insights_analyses, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] network_insights_path_ids # The IDs of the paths. # @return [Array] # # @!attribute [rw] filters # The filters. The following are the possible values: # # * destination - The ID of the resource. # # * filter-at-source.source-address - The source IPv4 address at the # source. # # * filter-at-source.source-port-range - The source port range at the # source. # # * filter-at-source.destination-address - The destination IPv4 # address at the source. # # * filter-at-source.destination-port-range - The destination port # range at the source. # # * filter-at-destination.source-address - The source IPv4 address at # the destination. # # * filter-at-destination.source-port-range - The source port range at # the destination. # # * filter-at-destination.destination-address - The destination IPv4 # address at the destination. # # * filter-at-destination.destination-port-range - The destination # port range at the destination. # # * protocol - The protocol. # # * source - The ID of the resource. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeNetworkInsightsPathsRequest AWS API Documentation # class DescribeNetworkInsightsPathsRequest < Struct.new( :network_insights_path_ids, :filters, :max_results, :dry_run, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] network_insights_paths # Information about the paths. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeNetworkInsightsPathsResult AWS API Documentation # class DescribeNetworkInsightsPathsResult < Struct.new( :network_insights_paths, :next_token) SENSITIVE = [] include Aws::Structure end # Contains the parameters for DescribeNetworkInterfaceAttribute. # # @!attribute [rw] attribute # The attribute of the network interface. This parameter is required. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] network_interface_id # The ID of the network interface. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeNetworkInterfaceAttributeRequest AWS API Documentation # class DescribeNetworkInterfaceAttributeRequest < Struct.new( :attribute, :dry_run, :network_interface_id) SENSITIVE = [] include Aws::Structure end # Contains the output of DescribeNetworkInterfaceAttribute. # # @!attribute [rw] attachment # The attachment (if any) of the network interface. # @return [Types::NetworkInterfaceAttachment] # # @!attribute [rw] description # The description of the network interface. # @return [Types::AttributeValue] # # @!attribute [rw] groups # The security groups associated with the network interface. # @return [Array] # # @!attribute [rw] network_interface_id # The ID of the network interface. # @return [String] # # @!attribute [rw] source_dest_check # Indicates whether source/destination checking is enabled. # @return [Types::AttributeBooleanValue] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeNetworkInterfaceAttributeResult AWS API Documentation # class DescribeNetworkInterfaceAttributeResult < Struct.new( :attachment, :description, :groups, :network_interface_id, :source_dest_check) SENSITIVE = [] include Aws::Structure end # Contains the parameters for DescribeNetworkInterfacePermissions. # # @!attribute [rw] network_interface_permission_ids # The network interface permission IDs. # @return [Array] # # @!attribute [rw] filters # One or more filters. # # * `network-interface-permission.network-interface-permission-id` - # The ID of the permission. # # * `network-interface-permission.network-interface-id` - The ID of # the network interface. # # * `network-interface-permission.aws-account-id` - The Amazon Web # Services account ID. # # * `network-interface-permission.aws-service` - The Amazon Web # Service. # # * `network-interface-permission.permission` - The type of permission # (`INSTANCE-ATTACH` \| `EIP-ASSOCIATE`). # @return [Array] # # @!attribute [rw] next_token # The token returned from a previous paginated request. Pagination # continues from the end of the items returned by the previous # request. # @return [String] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. If this parameter is not specified, up to 50 results are # returned by default. For more information, see [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeNetworkInterfacePermissionsRequest AWS API Documentation # class DescribeNetworkInterfacePermissionsRequest < Struct.new( :network_interface_permission_ids, :filters, :next_token, :max_results) SENSITIVE = [] include Aws::Structure end # Contains the output for DescribeNetworkInterfacePermissions. # # @!attribute [rw] network_interface_permissions # The network interface permissions. # @return [Array] # # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` when there are no more items to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeNetworkInterfacePermissionsResult AWS API Documentation # class DescribeNetworkInterfacePermissionsResult < Struct.new( :network_interface_permissions, :next_token) SENSITIVE = [] include Aws::Structure end # Contains the parameters for DescribeNetworkInterfaces. # # @!attribute [rw] filters # One or more filters. # # * `association.allocation-id` - The allocation ID returned when you # allocated the Elastic IP address (IPv4) for your network # interface. # # * `association.association-id` - The association ID returned when # the network interface was associated with an IPv4 address. # # * `addresses.association.owner-id` - The owner ID of the addresses # associated with the network interface. # # * `addresses.association.public-ip` - The association ID returned # when the network interface was associated with the Elastic IP # address (IPv4). # # * `addresses.primary` - Whether the private IPv4 address is the # primary IP address associated with the network interface. # # * `addresses.private-ip-address` - The private IPv4 addresses # associated with the network interface. # # * `association.ip-owner-id` - The owner of the Elastic IP address # (IPv4) associated with the network interface. # # * `association.public-ip` - The address of the Elastic IP address # (IPv4) bound to the network interface. # # * `association.public-dns-name` - The public DNS name for the # network interface (IPv4). # # * `attachment.attach-time` - The time that the network interface was # attached to an instance. # # * `attachment.attachment-id` - The ID of the interface attachment. # # * `attachment.delete-on-termination` - Indicates whether the # attachment is deleted when an instance is terminated. # # * `attachment.device-index` - The device index to which the network # interface is attached. # # * `attachment.instance-id` - The ID of the instance to which the # network interface is attached. # # * `attachment.instance-owner-id` - The owner ID of the instance to # which the network interface is attached. # # * `attachment.status` - The status of the attachment (`attaching` \| # `attached` \| `detaching` \| `detached`). # # * `availability-zone` - The Availability Zone of the network # interface. # # * `description` - The description of the network interface. # # * `group-id` - The ID of a security group associated with the # network interface. # # * `ipv6-addresses.ipv6-address` - An IPv6 address associated with # the network interface. # # * `interface-type` - The type of network interface # (`api_gateway_managed` \| `aws_codestar_connections_managed` \| # `branch` \| `ec2_instance_connect_endpoint` \| `efa` \| `efs` \| # `gateway_load_balancer` \| `gateway_load_balancer_endpoint` \| # `global_accelerator_managed` \| `interface` \| `iot_rules_managed` # \| `lambda` \| `load_balancer` \| `nat_gateway` \| # `network_load_balancer` \| `quicksight` \| `transit_gateway` \| # `trunk` \| `vpc_endpoint`). # # * `mac-address` - The MAC address of the network interface. # # * `network-interface-id` - The ID of the network interface. # # * `owner-id` - The Amazon Web Services account ID of the network # interface owner. # # * `private-dns-name` - The private DNS name of the network interface # (IPv4). # # * `private-ip-address` - The private IPv4 address or addresses of # the network interface. # # * `requester-id` - The alias or Amazon Web Services account ID of # the principal or service that created the network interface. # # * `requester-managed` - Indicates whether the network interface is # being managed by an Amazon Web Service (for example, Amazon Web # Services Management Console, Auto Scaling, and so on). # # * `source-dest-check` - Indicates whether the network interface # performs source/destination checking. A value of `true` means # checking is enabled, and `false` means checking is disabled. The # value must be `false` for the network interface to perform network # address translation (NAT) in your VPC. # # * `status` - The status of the network interface. If the network # interface is not attached to an instance, the status is # `available`; if a network interface is attached to an instance the # status is `in-use`. # # * `subnet-id` - The ID of the subnet for the network interface. # # * `tag`:<key> - 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. # # * `tag-key` - 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. # # * `vpc-id` - The ID of the VPC for the network interface. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] network_interface_ids # The network interface IDs. # # Default: Describes all your network interfaces. # @return [Array] # # @!attribute [rw] next_token # The token returned from a previous paginated request. Pagination # continues from the end of the items returned by the previous # request. # @return [String] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. You cannot specify this parameter and the network # interface IDs parameter in the same request. For more information, # see [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeNetworkInterfacesRequest AWS API Documentation # class DescribeNetworkInterfacesRequest < Struct.new( :filters, :dry_run, :network_interface_ids, :next_token, :max_results) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] network_interfaces # Information about one or more network interfaces. # @return [Array] # # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` when there are no more items to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeNetworkInterfacesResult AWS API Documentation # class DescribeNetworkInterfacesResult < Struct.new( :network_interfaces, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] filters # The filters. # # * `group-name` - The name of the placement group. # # * `group-arn` - The Amazon Resource Name (ARN) of the placement # group. # # * `spread-level` - The spread level for the placement group (`host` # \| `rack`). # # * `state` - The state of the placement group (`pending` \| # `available` \| `deleting` \| `deleted`). # # * `strategy` - The strategy of the placement group (`cluster` \| # `spread` \| `partition`). # # * `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. # # * `tag-key` - The key of a tag assigned to the resource. Use this # filter to find all resources that have a tag with a specific key, # regardless of the tag value. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] group_names # The names of the placement groups. # # Default: Describes all your placement groups, or only those # otherwise specified. # @return [Array] # # @!attribute [rw] group_ids # The IDs of the placement groups. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribePlacementGroupsRequest AWS API Documentation # class DescribePlacementGroupsRequest < Struct.new( :filters, :dry_run, :group_names, :group_ids) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] placement_groups # Information about the placement groups. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribePlacementGroupsResult AWS API Documentation # class DescribePlacementGroupsResult < Struct.new( :placement_groups) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] filters # One or more filters. # # * `prefix-list-id`: The ID of a prefix list. # # * `prefix-list-name`: The name of a prefix list. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] prefix_list_ids # One or more prefix list IDs. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribePrefixListsRequest AWS API Documentation # class DescribePrefixListsRequest < Struct.new( :dry_run, :filters, :max_results, :next_token, :prefix_list_ids) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @!attribute [rw] prefix_lists # All available prefix lists. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribePrefixListsResult AWS API Documentation # class DescribePrefixListsResult < Struct.new( :next_token, :prefix_lists) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] resources # The type of resource: `bundle` \| `conversion-task` \| # `customer-gateway` \| `dhcp-options` \| `elastic-ip-allocation` \| # `elastic-ip-association` \| `export-task` \| `flow-log` \| `image` # \| `import-task` \| `instance` \| `internet-gateway` \| # `network-acl` \| `network-acl-association` \| `network-interface` \| # `network-interface-attachment` \| `prefix-list` \| `reservation` \| # `route-table` \| `route-table-association` \| `security-group` \| # `snapshot` \| `subnet` \| `subnet-cidr-block-association` \| # `volume` \| `vpc` \| `vpc-cidr-block-association` \| `vpc-endpoint` # \| `vpc-peering-connection` \| `vpn-connection` \| `vpn-gateway` # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return in a single call. To # retrieve the remaining results, make another call with the returned # NextToken value. # @return [Integer] # # @!attribute [rw] next_token # The token to request the next page of results. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribePrincipalIdFormatRequest AWS API Documentation # class DescribePrincipalIdFormatRequest < Struct.new( :dry_run, :resources, :max_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] principals # Information about the ID format settings for the ARN. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # null when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribePrincipalIdFormatResult AWS API Documentation # class DescribePrincipalIdFormatResult < Struct.new( :principals, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] pool_ids # The IDs of the address pools. # @return [Array] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] filters # One or more filters. # # * `tag`:<key> - 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. # # * `tag-key` - 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. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribePublicIpv4PoolsRequest AWS API Documentation # class DescribePublicIpv4PoolsRequest < Struct.new( :pool_ids, :next_token, :max_results, :filters) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] public_ipv_4_pools # Information about the address pools. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribePublicIpv4PoolsResult AWS API Documentation # class DescribePublicIpv4PoolsResult < Struct.new( :public_ipv_4_pools, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] filters # The filters. # # * `endpoint` - The endpoint of the Region (for example, # `ec2.us-east-1.amazonaws.com`). # # * `opt-in-status` - The opt-in status of the Region # (`opt-in-not-required` \| `opted-in` \| `not-opted-in`). # # * `region-name` - The name of the Region (for example, `us-east-1`). # @return [Array] # # @!attribute [rw] region_names # The names of the Regions. You can specify any Regions, whether they # are enabled and disabled for your account. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] all_regions # Indicates whether to display all Regions, including Regions that are # disabled for your account. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeRegionsRequest AWS API Documentation # class DescribeRegionsRequest < Struct.new( :filters, :region_names, :dry_run, :all_regions) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] regions # Information about the Regions. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeRegionsResult AWS API Documentation # class DescribeRegionsResult < Struct.new( :regions) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] replace_root_volume_task_ids # The ID of the root volume replacement task to view. # @return [Array] # # @!attribute [rw] filters # Filter to use: # # * `instance-id` - The ID of the instance for which the root volume # replacement task was created. # # ^ # @return [Array] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. For more information, see [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @!attribute [rw] next_token # The token returned from a previous paginated request. Pagination # continues from the end of the items returned by the previous # request. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeReplaceRootVolumeTasksRequest AWS API Documentation # class DescribeReplaceRootVolumeTasksRequest < Struct.new( :replace_root_volume_task_ids, :filters, :max_results, :next_token, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] replace_root_volume_tasks # Information about the root volume replacement task. # @return [Array] # # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` when there are no more items to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeReplaceRootVolumeTasksResult AWS API Documentation # class DescribeReplaceRootVolumeTasksResult < Struct.new( :replace_root_volume_tasks, :next_token) SENSITIVE = [] include Aws::Structure end # Contains the parameters for DescribeReservedInstancesListings. # # @!attribute [rw] filters # One or more filters. # # * `reserved-instances-id` - The ID of the Reserved Instances. # # * `reserved-instances-listing-id` - The ID of the Reserved Instances # listing. # # * `status` - The status of the Reserved Instance listing (`pending` # \| `active` \| `cancelled` \| `closed`). # # * `status-message` - The reason for the status. # @return [Array] # # @!attribute [rw] reserved_instances_id # One or more Reserved Instance IDs. # @return [String] # # @!attribute [rw] reserved_instances_listing_id # One or more Reserved Instance listing IDs. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeReservedInstancesListingsRequest AWS API Documentation # class DescribeReservedInstancesListingsRequest < Struct.new( :filters, :reserved_instances_id, :reserved_instances_listing_id) SENSITIVE = [] include Aws::Structure end # Contains the output of DescribeReservedInstancesListings. # # @!attribute [rw] reserved_instances_listings # Information about the Reserved Instance listing. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeReservedInstancesListingsResult AWS API Documentation # class DescribeReservedInstancesListingsResult < Struct.new( :reserved_instances_listings) SENSITIVE = [] include Aws::Structure end # Contains the parameters for DescribeReservedInstancesModifications. # # @!attribute [rw] filters # One or more filters. # # * `client-token` - The idempotency token for the modification # request. # # * `create-date` - The time when the modification request was # created. # # * `effective-date` - The time when the modification becomes # effective. # # * `modification-result.reserved-instances-id` - The ID for the # Reserved Instances created as part of the modification request. # This ID is only available when the status of the modification is # `fulfilled`. # # * `modification-result.target-configuration.availability-zone` - The # Availability Zone for the new Reserved Instances. # # * `modification-result.target-configuration.instance-count ` - The # number of new Reserved Instances. # # * `modification-result.target-configuration.instance-type` - The # instance type of the new Reserved Instances. # # * `reserved-instances-id` - The ID of the Reserved Instances # modified. # # * `reserved-instances-modification-id` - The ID of the modification # request. # # * `status` - The status of the Reserved Instances modification # request (`processing` \| `fulfilled` \| `failed`). # # * `status-message` - The reason for the status. # # * `update-date` - The time when the modification request was last # updated. # @return [Array] # # @!attribute [rw] reserved_instances_modification_ids # IDs for the submitted modification request. # @return [Array] # # @!attribute [rw] next_token # The token to retrieve the next page of results. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeReservedInstancesModificationsRequest AWS API Documentation # class DescribeReservedInstancesModificationsRequest < Struct.new( :filters, :reserved_instances_modification_ids, :next_token) SENSITIVE = [] include Aws::Structure end # Contains the output of DescribeReservedInstancesModifications. # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @!attribute [rw] reserved_instances_modifications # The Reserved Instance modification information. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeReservedInstancesModificationsResult AWS API Documentation # class DescribeReservedInstancesModificationsResult < Struct.new( :next_token, :reserved_instances_modifications) SENSITIVE = [] include Aws::Structure end # Contains the parameters for DescribeReservedInstancesOfferings. # # @!attribute [rw] availability_zone # The Availability Zone in which the Reserved Instance can be used. # @return [String] # # @!attribute [rw] filters # One or more filters. # # * `availability-zone` - The Availability Zone where the Reserved # Instance can be used. # # * `duration` - The duration of the Reserved Instance (for example, # one year or three years), in seconds (`31536000` \| `94608000`). # # * `fixed-price` - The purchase price of the Reserved Instance (for # example, 9800.0). # # * `instance-type` - The instance type that is covered by the # reservation. # # * `marketplace` - Set to `true` to show only Reserved Instance # Marketplace offerings. When this filter is not used, which is the # default behavior, all offerings from both Amazon Web Services and # the Reserved Instance Marketplace are listed. # # * `product-description` - The Reserved Instance product platform # description (`Linux/UNIX` \| `Linux with SQL Server Standard` \| # `Linux with SQL Server Web` \| `Linux with SQL Server Enterprise` # \| `SUSE Linux` \| `Red Hat Enterprise Linux` \| `Red Hat # Enterprise Linux with HA` \| `Windows` \| `Windows with SQL Server # Standard` \| `Windows with SQL Server Web` \| `Windows with SQL # Server Enterprise`). # # * `reserved-instances-offering-id` - The Reserved Instances offering # ID. # # * `scope` - The scope of the Reserved Instance (`Availability Zone` # or `Region`). # # * `usage-price` - The usage price of the Reserved Instance, per hour # (for example, 0.84). # @return [Array] # # @!attribute [rw] include_marketplace # Include Reserved Instance Marketplace offerings in the response. # @return [Boolean] # # @!attribute [rw] instance_type # The instance type that the reservation will cover (for example, # `m1.small`). For more information, see [Instance types][1] in the # *Amazon EC2 User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html # @return [String] # # @!attribute [rw] max_duration # The maximum duration (in seconds) to filter when searching for # offerings. # # Default: 94608000 (3 years) # @return [Integer] # # @!attribute [rw] max_instance_count # The maximum number of instances to filter when searching for # offerings. # # Default: 20 # @return [Integer] # # @!attribute [rw] min_duration # The minimum duration (in seconds) to filter when searching for # offerings. # # Default: 2592000 (1 month) # @return [Integer] # # @!attribute [rw] offering_class # The offering class of the Reserved Instance. Can be `standard` or # `convertible`. # @return [String] # # @!attribute [rw] product_description # The Reserved Instance product platform description. Instances that # include `(Amazon VPC)` in the description are for use with Amazon # VPC. # @return [String] # # @!attribute [rw] reserved_instances_offering_ids # One or more Reserved Instances offering IDs. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] instance_tenancy # The tenancy of the instances covered by the reservation. A Reserved # Instance with a tenancy of `dedicated` is applied to instances that # run in a VPC on single-tenant hardware (i.e., Dedicated Instances). # # **Important:** The `host` value cannot be used with this parameter. # Use the `default` or `dedicated` values only. # # Default: `default` # @return [String] # # @!attribute [rw] max_results # The maximum number of results to return for the request in a single # page. The remaining results of the initial request can be seen by # sending another request with the returned `NextToken` value. The # maximum is 100. # # Default: 100 # @return [Integer] # # @!attribute [rw] next_token # The token to retrieve the next page of results. # @return [String] # # @!attribute [rw] offering_type # The Reserved Instance offering type. If you are using tools that # predate the 2011-11-01 API version, you only have access to the # `Medium Utilization` Reserved Instance offering type. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeReservedInstancesOfferingsRequest AWS API Documentation # class DescribeReservedInstancesOfferingsRequest < Struct.new( :availability_zone, :filters, :include_marketplace, :instance_type, :max_duration, :max_instance_count, :min_duration, :offering_class, :product_description, :reserved_instances_offering_ids, :dry_run, :instance_tenancy, :max_results, :next_token, :offering_type) SENSITIVE = [] include Aws::Structure end # Contains the output of DescribeReservedInstancesOfferings. # # @!attribute [rw] reserved_instances_offerings # A list of Reserved Instances offerings. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeReservedInstancesOfferingsResult AWS API Documentation # class DescribeReservedInstancesOfferingsResult < Struct.new( :reserved_instances_offerings, :next_token) SENSITIVE = [] include Aws::Structure end # Contains the parameters for DescribeReservedInstances. # # @!attribute [rw] filters # One or more filters. # # * `availability-zone` - The Availability Zone where the Reserved # Instance can be used. # # * `duration` - The duration of the Reserved Instance (one year or # three years), in seconds (`31536000` \| `94608000`). # # * `end` - The time when the Reserved Instance expires (for example, # 2015-08-07T11:54:42.000Z). # # * `fixed-price` - The purchase price of the Reserved Instance (for # example, 9800.0). # # * `instance-type` - The instance type that is covered by the # reservation. # # * `scope` - The scope of the Reserved Instance (`Region` or # `Availability Zone`). # # * `product-description` - The Reserved Instance product platform # description (`Linux/UNIX` \| `Linux with SQL Server Standard` \| # `Linux with SQL Server Web` \| `Linux with SQL Server Enterprise` # \| `SUSE Linux` \| `Red Hat Enterprise Linux` \| `Red Hat # Enterprise Linux with HA` \| `Windows` \| `Windows with SQL Server # Standard` \| `Windows with SQL Server Web` \| `Windows with SQL # Server Enterprise`). # # * `reserved-instances-id` - The ID of the Reserved Instance. # # * `start` - The time at which the Reserved Instance purchase request # was placed (for example, 2014-08-07T11:54:42.000Z). # # * `state` - The state of the Reserved Instance (`payment-pending` \| # `active` \| `payment-failed` \| `retired`). # # * `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. # # * `tag-key` - 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. # # * `usage-price` - The usage price of the Reserved Instance, per hour # (for example, 0.84). # @return [Array] # # @!attribute [rw] offering_class # Describes whether the Reserved Instance is Standard or Convertible. # @return [String] # # @!attribute [rw] reserved_instances_ids # One or more Reserved Instance IDs. # # Default: Describes all your Reserved Instances, or only those # otherwise specified. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] offering_type # The Reserved Instance offering type. If you are using tools that # predate the 2011-11-01 API version, you only have access to the # `Medium Utilization` Reserved Instance offering type. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeReservedInstancesRequest AWS API Documentation # class DescribeReservedInstancesRequest < Struct.new( :filters, :offering_class, :reserved_instances_ids, :dry_run, :offering_type) SENSITIVE = [] include Aws::Structure end # Contains the output for DescribeReservedInstances. # # @!attribute [rw] reserved_instances # A list of Reserved Instances. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeReservedInstancesResult AWS API Documentation # class DescribeReservedInstancesResult < Struct.new( :reserved_instances) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] filters # The filters. # # * `association.gateway-id` - The ID of the gateway involved in the # association. # # * `association.route-table-association-id` - The ID of an # association ID for the route table. # # * `association.route-table-id` - The ID of the route table involved # in the association. # # * `association.subnet-id` - The ID of the subnet involved in the # association. # # * `association.main` - Indicates whether the route table is the main # route table for the VPC (`true` \| `false`). Route tables that do # not have an association ID are not returned in the response. # # * `owner-id` - The ID of the Amazon Web Services account that owns # the route table. # # * `route-table-id` - The ID of the route table. # # * `route.destination-cidr-block` - The IPv4 CIDR range specified in # a route in the table. # # * `route.destination-ipv6-cidr-block` - The IPv6 CIDR range # specified in a route in the route table. # # * `route.destination-prefix-list-id` - The ID (prefix) of the Amazon # Web Service specified in a route in the table. # # * `route.egress-only-internet-gateway-id` - The ID of an egress-only # Internet gateway specified in a route in the route table. # # * `route.gateway-id` - The ID of a gateway specified in a route in # the table. # # * `route.instance-id` - The ID of an instance specified in a route # in the table. # # * `route.nat-gateway-id` - The ID of a NAT gateway. # # * `route.transit-gateway-id` - The ID of a transit gateway. # # * `route.origin` - Describes how the route was created. # `CreateRouteTable` indicates that the route was automatically # created when the route table was created; `CreateRoute` indicates # that the route was manually added to the route table; # `EnableVgwRoutePropagation` indicates that the route was # propagated by route propagation. # # * `route.state` - The state of a route in the route table (`active` # \| `blackhole`). The blackhole state indicates that the route's # target isn't available (for example, the specified gateway isn't # attached to the VPC, the specified NAT instance has been # terminated, and so on). # # * `route.vpc-peering-connection-id` - The ID of a VPC peering # connection specified in a route in the table. # # * `tag`:<key> - 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. # # * `tag-key` - 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. # # * `vpc-id` - The ID of the VPC for the route table. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] route_table_ids # The IDs of the route tables. # # Default: Describes all your route tables. # @return [Array] # # @!attribute [rw] next_token # The token returned from a previous paginated request. Pagination # continues from the end of the items returned by the previous # request. # @return [String] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. For more information, see [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeRouteTablesRequest AWS API Documentation # class DescribeRouteTablesRequest < Struct.new( :filters, :dry_run, :route_table_ids, :next_token, :max_results) SENSITIVE = [] include Aws::Structure end # Contains the output of DescribeRouteTables. # # @!attribute [rw] route_tables # Information about one or more route tables. # @return [Array] # # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` when there are no more items to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeRouteTablesResult AWS API Documentation # class DescribeRouteTablesResult < Struct.new( :route_tables, :next_token) SENSITIVE = [] include Aws::Structure end # Contains the parameters for DescribeScheduledInstanceAvailability. # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] filters # The filters. # # * `availability-zone` - The Availability Zone (for example, # `us-west-2a`). # # * `instance-type` - The instance type (for example, `c4.large`). # # * `platform` - The platform (`Linux/UNIX` or `Windows`). # @return [Array] # # @!attribute [rw] first_slot_start_time_range # The time period for the first schedule to start. # @return [Types::SlotDateTimeRangeRequest] # # @!attribute [rw] max_results # The maximum number of results to return in a single call. This value # can be between 5 and 300. The default value is 300. To retrieve the # remaining results, make another call with the returned `NextToken` # value. # @return [Integer] # # @!attribute [rw] max_slot_duration_in_hours # The maximum available duration, in hours. This value must be greater # than `MinSlotDurationInHours` and less than 1,720. # @return [Integer] # # @!attribute [rw] min_slot_duration_in_hours # The minimum available duration, in hours. The minimum required # duration is 1,200 hours per year. For example, the minimum daily # schedule is 4 hours, the minimum weekly schedule is 24 hours, and # the minimum monthly schedule is 100 hours. # @return [Integer] # # @!attribute [rw] next_token # The token for the next set of results. # @return [String] # # @!attribute [rw] recurrence # The schedule recurrence. # @return [Types::ScheduledInstanceRecurrenceRequest] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeScheduledInstanceAvailabilityRequest AWS API Documentation # class DescribeScheduledInstanceAvailabilityRequest < Struct.new( :dry_run, :filters, :first_slot_start_time_range, :max_results, :max_slot_duration_in_hours, :min_slot_duration_in_hours, :next_token, :recurrence) SENSITIVE = [] include Aws::Structure end # Contains the output of DescribeScheduledInstanceAvailability. # # @!attribute [rw] next_token # The token required to retrieve the next set of results. This value # is `null` when there are no more results to return. # @return [String] # # @!attribute [rw] scheduled_instance_availability_set # Information about the available Scheduled Instances. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeScheduledInstanceAvailabilityResult AWS API Documentation # class DescribeScheduledInstanceAvailabilityResult < Struct.new( :next_token, :scheduled_instance_availability_set) SENSITIVE = [] include Aws::Structure end # Contains the parameters for DescribeScheduledInstances. # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] filters # The filters. # # * `availability-zone` - The Availability Zone (for example, # `us-west-2a`). # # * `instance-type` - The instance type (for example, `c4.large`). # # * `platform` - The platform (`Linux/UNIX` or `Windows`). # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return in a single call. This value # can be between 5 and 300. The default value is 100. To retrieve the # remaining results, make another call with the returned `NextToken` # value. # @return [Integer] # # @!attribute [rw] next_token # The token for the next set of results. # @return [String] # # @!attribute [rw] scheduled_instance_ids # The Scheduled Instance IDs. # @return [Array] # # @!attribute [rw] slot_start_time_range # The time period for the first schedule to start. # @return [Types::SlotStartTimeRangeRequest] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeScheduledInstancesRequest AWS API Documentation # class DescribeScheduledInstancesRequest < Struct.new( :dry_run, :filters, :max_results, :next_token, :scheduled_instance_ids, :slot_start_time_range) SENSITIVE = [] include Aws::Structure end # Contains the output of DescribeScheduledInstances. # # @!attribute [rw] next_token # The token required to retrieve the next set of results. This value # is `null` when there are no more results to return. # @return [String] # # @!attribute [rw] scheduled_instance_set # Information about the Scheduled Instances. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeScheduledInstancesResult AWS API Documentation # class DescribeScheduledInstancesResult < Struct.new( :next_token, :scheduled_instance_set) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] group_id # The IDs of the security groups in your account. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeSecurityGroupReferencesRequest AWS API Documentation # class DescribeSecurityGroupReferencesRequest < Struct.new( :dry_run, :group_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] security_group_reference_set # Information about the VPCs with the referencing security groups. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeSecurityGroupReferencesResult AWS API Documentation # class DescribeSecurityGroupReferencesResult < Struct.new( :security_group_reference_set) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] filters # One or more filters. # # * `group-id` - The ID of the security group. # # * `security-group-rule-id` - The ID of the security group rule. # # * `tag`:<key> - 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. # @return [Array] # # @!attribute [rw] security_group_rule_ids # The IDs of the security group rules. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] next_token # The token returned from a previous paginated request. Pagination # continues from the end of the items returned by the previous # request. # @return [String] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. This value can be between 5 and 1000. If this parameter # is not specified, then all items are returned. For more information, # see [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeSecurityGroupRulesRequest AWS API Documentation # class DescribeSecurityGroupRulesRequest < Struct.new( :filters, :security_group_rule_ids, :dry_run, :next_token, :max_results) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] security_group_rules # Information about security group rules. # @return [Array] # # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` when there are no more items to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeSecurityGroupRulesResult AWS API Documentation # class DescribeSecurityGroupRulesResult < Struct.new( :security_group_rules, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] filters # The filters. If using multiple filters for rules, the results # include security groups for which any combination of rules - not # necessarily a single rule - match all filters. # # * `description` - The description of the security group. # # * `egress.ip-permission.cidr` - An IPv4 CIDR block for an outbound # security group rule. # # * `egress.ip-permission.from-port` - For an outbound rule, the start # of port range for the TCP and UDP protocols, or an ICMP type # number. # # * `egress.ip-permission.group-id` - The ID of a security group that # has been referenced in an outbound security group rule. # # * `egress.ip-permission.group-name` - The name of a security group # that is referenced in an outbound security group rule. # # * `egress.ip-permission.ipv6-cidr` - An IPv6 CIDR block for an # outbound security group rule. # # * `egress.ip-permission.prefix-list-id` - The ID of a prefix list to # which a security group rule allows outbound access. # # * `egress.ip-permission.protocol` - The IP protocol for an outbound # security group rule (`tcp` \| `udp` \| `icmp`, a protocol number, # or -1 for all protocols). # # * `egress.ip-permission.to-port` - For an outbound rule, the end of # port range for the TCP and UDP protocols, or an ICMP code. # # * `egress.ip-permission.user-id` - The ID of an Amazon Web Services # account that has been referenced in an outbound security group # rule. # # * `group-id` - The ID of the security group. # # * `group-name` - The name of the security group. # # * `ip-permission.cidr` - An IPv4 CIDR block for an inbound security # group rule. # # * `ip-permission.from-port` - For an inbound rule, the start of port # range for the TCP and UDP protocols, or an ICMP type number. # # * `ip-permission.group-id` - The ID of a security group that has # been referenced in an inbound security group rule. # # * `ip-permission.group-name` - The name of a security group that is # referenced in an inbound security group rule. # # * `ip-permission.ipv6-cidr` - An IPv6 CIDR block for an inbound # security group rule. # # * `ip-permission.prefix-list-id` - The ID of a prefix list from # which a security group rule allows inbound access. # # * `ip-permission.protocol` - The IP protocol for an inbound security # group rule (`tcp` \| `udp` \| `icmp`, a protocol number, or -1 for # all protocols). # # * `ip-permission.to-port` - For an inbound rule, the end of port # range for the TCP and UDP protocols, or an ICMP code. # # * `ip-permission.user-id` - The ID of an Amazon Web Services account # that has been referenced in an inbound security group rule. # # * `owner-id` - The Amazon Web Services account ID of the owner of # the security group. # # * `tag`:<key> - 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. # # * `tag-key` - 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. # # * `vpc-id` - The ID of the VPC specified when the security group was # created. # @return [Array] # # @!attribute [rw] group_ids # The IDs of the security groups. Required for security groups in a # nondefault VPC. # # Default: Describes all of your security groups. # @return [Array] # # @!attribute [rw] group_names # \[Default VPC\] The names of the security groups. You can specify # either the security group name or the security group ID. # # Default: Describes all of your security groups. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] next_token # The token returned from a previous paginated request. Pagination # continues from the end of the items returned by the previous # request. # @return [String] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. This value can be between 5 and 1000. If this parameter # is not specified, then all items are returned. For more information, # see [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeSecurityGroupsRequest AWS API Documentation # class DescribeSecurityGroupsRequest < Struct.new( :filters, :group_ids, :group_names, :dry_run, :next_token, :max_results) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] security_groups # Information about the security groups. # @return [Array] # # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` when there are no more items to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeSecurityGroupsResult AWS API Documentation # class DescribeSecurityGroupsResult < Struct.new( :security_groups, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] attribute # The snapshot attribute you would like to view. # @return [String] # # @!attribute [rw] snapshot_id # The ID of the EBS snapshot. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeSnapshotAttributeRequest AWS API Documentation # class DescribeSnapshotAttributeRequest < Struct.new( :attribute, :snapshot_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] create_volume_permissions # The users and groups that have the permissions for creating volumes # from the snapshot. # @return [Array] # # @!attribute [rw] product_codes # The product codes. # @return [Array] # # @!attribute [rw] snapshot_id # The ID of the EBS snapshot. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeSnapshotAttributeResult AWS API Documentation # class DescribeSnapshotAttributeResult < Struct.new( :create_volume_permissions, :product_codes, :snapshot_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] filters # The filters. # # * `snapshot-id` - The snapshot ID. # # * `volume-id` - The ID of the volume the snapshot is for. # # * `last-tiering-operation` - The state of the last archive or # restore action. (`archival-in-progress` \| `archival-completed` \| # `archival-failed` \| `permanent-restore-in-progress` \| # `permanent-restore-completed` \| `permanent-restore-failed` \| # `temporary-restore-in-progress` \| `temporary-restore-completed` # \| `temporary-restore-failed`) # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] next_token # The token returned from a previous paginated request. Pagination # continues from the end of the items returned by the previous # request. # @return [String] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. For more information, see [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeSnapshotTierStatusRequest AWS API Documentation # class DescribeSnapshotTierStatusRequest < Struct.new( :filters, :dry_run, :next_token, :max_results) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] snapshot_tier_statuses # Information about the snapshot's storage tier. # @return [Array] # # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` when there are no more items to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeSnapshotTierStatusResult AWS API Documentation # class DescribeSnapshotTierStatusResult < Struct.new( :snapshot_tier_statuses, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] filters # The filters. # # * `description` - A description of the snapshot. # # * `encrypted` - Indicates whether the snapshot is encrypted (`true` # \| `false`) # # * `owner-alias` - The owner alias, from an Amazon-maintained list # (`amazon`). This is not the user-configured Amazon Web Services # account alias set using the IAM console. We recommend that you use # the related parameter instead of this filter. # # * `owner-id` - The Amazon Web Services account ID of the owner. We # recommend that you use the related parameter instead of this # filter. # # * `progress` - The progress of the snapshot, as a percentage (for # example, 80%). # # * `snapshot-id` - The snapshot ID. # # * `start-time` - The time stamp when the snapshot was initiated. # # * `status` - The status of the snapshot (`pending` \| `completed` \| # `error`). # # * `storage-tier` - The storage tier of the snapshot (`archive` \| # `standard`). # # * `tag`:<key> - 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. # # * `tag-key` - 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. # # * `volume-id` - The ID of the volume the snapshot is for. # # * `volume-size` - The size of the volume, in GiB. # @return [Array] # # @!attribute [rw] max_results # The maximum number of snapshots to return for this request. This # value can be between 5 and 1,000; if this value is larger than # 1,000, only 1,000 results are returned. If this parameter is not # used, then the request returns all snapshots. You cannot specify # this parameter and the snapshot IDs parameter in the same request. # For more information, see [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @!attribute [rw] next_token # The token returned from a previous paginated request. Pagination # continues from the end of the items returned by the previous # request. # @return [String] # # @!attribute [rw] owner_ids # Scopes the results to snapshots with the specified owners. You can # specify a combination of Amazon Web Services account IDs, `self`, # and `amazon`. # @return [Array] # # @!attribute [rw] restorable_by_user_ids # The IDs of the Amazon Web Services accounts that can create volumes # from the snapshot. # @return [Array] # # @!attribute [rw] snapshot_ids # The snapshot IDs. # # Default: Describes the snapshots for which you have create volume # permissions. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeSnapshotsRequest AWS API Documentation # class DescribeSnapshotsRequest < Struct.new( :filters, :max_results, :next_token, :owner_ids, :restorable_by_user_ids, :snapshot_ids, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] snapshots # Information about the snapshots. # @return [Array] # # @!attribute [rw] next_token # The token to include in another request to return the next page of # snapshots. This value is `null` when there are no more snapshots to # return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeSnapshotsResult AWS API Documentation # class DescribeSnapshotsResult < Struct.new( :snapshots, :next_token) SENSITIVE = [] include Aws::Structure end # Contains the parameters for DescribeSpotDatafeedSubscription. # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeSpotDatafeedSubscriptionRequest AWS API Documentation # class DescribeSpotDatafeedSubscriptionRequest < Struct.new( :dry_run) SENSITIVE = [] include Aws::Structure end # Contains the output of DescribeSpotDatafeedSubscription. # # @!attribute [rw] spot_datafeed_subscription # The Spot Instance data feed subscription. # @return [Types::SpotDatafeedSubscription] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeSpotDatafeedSubscriptionResult AWS API Documentation # class DescribeSpotDatafeedSubscriptionResult < Struct.new( :spot_datafeed_subscription) SENSITIVE = [] include Aws::Structure end # Contains the parameters for DescribeSpotFleetInstances. # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. For more information, see [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` when there are no more items to return. # @return [String] # # @!attribute [rw] spot_fleet_request_id # The ID of the Spot Fleet request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeSpotFleetInstancesRequest AWS API Documentation # class DescribeSpotFleetInstancesRequest < Struct.new( :dry_run, :max_results, :next_token, :spot_fleet_request_id) SENSITIVE = [] include Aws::Structure end # Contains the output of DescribeSpotFleetInstances. # # @!attribute [rw] active_instances # The running instances. This list is refreshed periodically and might # be out of date. # @return [Array] # # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` when there are no more items to return. # @return [String] # # @!attribute [rw] spot_fleet_request_id # The ID of the Spot Fleet request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeSpotFleetInstancesResponse AWS API Documentation # class DescribeSpotFleetInstancesResponse < Struct.new( :active_instances, :next_token, :spot_fleet_request_id) SENSITIVE = [] include Aws::Structure end # Contains the parameters for DescribeSpotFleetRequestHistory. # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] event_type # The type of events to describe. By default, all events are # described. # @return [String] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. For more information, see [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` when there are no more items to return. # @return [String] # # @!attribute [rw] spot_fleet_request_id # The ID of the Spot Fleet request. # @return [String] # # @!attribute [rw] start_time # The starting date and time for the events, in UTC format (for # example, *YYYY*-*MM*-*DD*T*HH*:*MM*:*SS*Z). # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeSpotFleetRequestHistoryRequest AWS API Documentation # class DescribeSpotFleetRequestHistoryRequest < Struct.new( :dry_run, :event_type, :max_results, :next_token, :spot_fleet_request_id, :start_time) SENSITIVE = [] include Aws::Structure end # Contains the output of DescribeSpotFleetRequestHistory. # # @!attribute [rw] history_records # Information about the events in the history of the Spot Fleet # request. # @return [Array] # # @!attribute [rw] last_evaluated_time # The last date and time for the events, in UTC format (for example, # *YYYY*-*MM*-*DD*T*HH*:*MM*:*SS*Z). All records up to this time were # retrieved. # # If `nextToken` indicates that there are more items, this value is # not present. # @return [Time] # # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` when there are no more items to return. # @return [String] # # @!attribute [rw] spot_fleet_request_id # The ID of the Spot Fleet request. # @return [String] # # @!attribute [rw] start_time # The starting date and time for the events, in UTC format (for # example, *YYYY*-*MM*-*DD*T*HH*:*MM*:*SS*Z). # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeSpotFleetRequestHistoryResponse AWS API Documentation # class DescribeSpotFleetRequestHistoryResponse < Struct.new( :history_records, :last_evaluated_time, :next_token, :spot_fleet_request_id, :start_time) SENSITIVE = [] include Aws::Structure end # Contains the parameters for DescribeSpotFleetRequests. # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. For more information, see [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` when there are no more items to return. # @return [String] # # @!attribute [rw] spot_fleet_request_ids # The IDs of the Spot Fleet requests. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeSpotFleetRequestsRequest AWS API Documentation # class DescribeSpotFleetRequestsRequest < Struct.new( :dry_run, :max_results, :next_token, :spot_fleet_request_ids) SENSITIVE = [] include Aws::Structure end # Contains the output of DescribeSpotFleetRequests. # # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` when there are no more items to return. # @return [String] # # @!attribute [rw] spot_fleet_request_configs # Information about the configuration of your Spot Fleet. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeSpotFleetRequestsResponse AWS API Documentation # class DescribeSpotFleetRequestsResponse < Struct.new( :next_token, :spot_fleet_request_configs) SENSITIVE = [] include Aws::Structure end # Contains the parameters for DescribeSpotInstanceRequests. # # @!attribute [rw] filters # The filters. # # * `availability-zone-group` - The Availability Zone group. # # * `create-time` - The time stamp when the Spot Instance request was # created. # # * `fault-code` - The fault code related to the request. # # * `fault-message` - The fault message related to the request. # # * `instance-id` - The ID of the instance that fulfilled the request. # # * `launch-group` - The Spot Instance launch group. # # * `launch.block-device-mapping.delete-on-termination` - Indicates # whether the EBS volume is deleted on instance termination. # # * `launch.block-device-mapping.device-name` - The device name for # the volume in the block device mapping (for example, `/dev/sdh` or # `xvdh`). # # * `launch.block-device-mapping.snapshot-id` - The ID of the snapshot # for the EBS volume. # # * `launch.block-device-mapping.volume-size` - The size of the EBS # volume, in GiB. # # * `launch.block-device-mapping.volume-type` - The type of EBS # volume: `gp2` or `gp3` for General Purpose SSD, `io1` or `io2` for # Provisioned IOPS SSD, `st1` for Throughput Optimized HDD, `sc1` # for Cold HDD, or `standard` for Magnetic. # # * `launch.group-id` - The ID of the security group for the instance. # # * `launch.group-name` - The name of the security group for the # instance. # # * `launch.image-id` - The ID of the AMI. # # * `launch.instance-type` - The type of instance (for example, # `m3.medium`). # # * `launch.kernel-id` - The kernel ID. # # * `launch.key-name` - The name of the key pair the instance launched # with. # # * `launch.monitoring-enabled` - Whether detailed monitoring is # enabled for the Spot Instance. # # * `launch.ramdisk-id` - The RAM disk ID. # # * `launched-availability-zone` - The Availability Zone in which the # request is launched. # # * `network-interface.addresses.primary` - Indicates whether the IP # address is the primary private IP address. # # * `network-interface.delete-on-termination` - Indicates whether the # network interface is deleted when the instance is terminated. # # * `network-interface.description` - A description of the network # interface. # # * `network-interface.device-index` - The index of the device for the # network interface attachment on the instance. # # * `network-interface.group-id` - The ID of the security group # associated with the network interface. # # * `network-interface.network-interface-id` - The ID of the network # interface. # # * `network-interface.private-ip-address` - The primary private IP # address of the network interface. # # * `network-interface.subnet-id` - The ID of the subnet for the # instance. # # * `product-description` - The product description associated with # the instance (`Linux/UNIX` \| `Windows`). # # * `spot-instance-request-id` - The Spot Instance request ID. # # * `spot-price` - The maximum hourly price for any Spot Instance # launched to fulfill the request. # # * `state` - The state of the Spot Instance request (`open` \| # `active` \| `closed` \| `cancelled` \| `failed`). Spot request # status information can help you track your Amazon EC2 Spot # Instance requests. For more information, see [Spot request # status][1] in the *Amazon EC2 User Guide for Linux Instances*. # # * `status-code` - The short code describing the most recent # evaluation of your Spot Instance request. # # * `status-message` - The message explaining the status of the Spot # Instance request. # # * `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. # # * `tag-key` - 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. # # * `type` - The type of Spot Instance request (`one-time` \| # `persistent`). # # * `valid-from` - The start date of the request. # # * `valid-until` - The end date of the request. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-request-status.html # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] spot_instance_request_ids # The IDs of the Spot Instance requests. # @return [Array] # # @!attribute [rw] next_token # The token returned from a previous paginated request. Pagination # continues from the end of the items returned by the previous # request. # @return [String] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. For more information, see [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeSpotInstanceRequestsRequest AWS API Documentation # class DescribeSpotInstanceRequestsRequest < Struct.new( :filters, :dry_run, :spot_instance_request_ids, :next_token, :max_results) SENSITIVE = [] include Aws::Structure end # Contains the output of DescribeSpotInstanceRequests. # # @!attribute [rw] spot_instance_requests # The Spot Instance requests. # @return [Array] # # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` when there are no more items to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeSpotInstanceRequestsResult AWS API Documentation # class DescribeSpotInstanceRequestsResult < Struct.new( :spot_instance_requests, :next_token) SENSITIVE = [] include Aws::Structure end # Contains the parameters for DescribeSpotPriceHistory. # # @!attribute [rw] filters # The filters. # # * `availability-zone` - The Availability Zone for which prices # should be returned. # # * `instance-type` - The type of instance (for example, `m3.medium`). # # * `product-description` - The product description for the Spot price # (`Linux/UNIX` \| `Red Hat Enterprise Linux` \| `SUSE Linux` \| # `Windows` \| `Linux/UNIX (Amazon VPC)` \| `Red Hat Enterprise # Linux (Amazon VPC)` \| `SUSE Linux (Amazon VPC)` \| `Windows # (Amazon VPC)`). # # * `spot-price` - The Spot price. The value must match exactly (or # use wildcards; greater than or less than comparison is not # supported). # # * `timestamp` - The time stamp of the Spot price history, in UTC # format (for example, *ddd MMM dd HH*:*mm*:*ss* UTC *YYYY*). You # can use wildcards (`*` and `?`). Greater than or less than # comparison is not supported. # @return [Array] # # @!attribute [rw] availability_zone # Filters the results by the specified Availability Zone. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] end_time # The date and time, up to the current date, from which to stop # retrieving the price history data, in UTC format (for example, # *YYYY*-*MM*-*DD*T*HH*:*MM*:*SS*Z). # @return [Time] # # @!attribute [rw] instance_types # Filters the results by the specified instance types. # @return [Array] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. For more information, see [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @!attribute [rw] next_token # The token returned from a previous paginated request. Pagination # continues from the end of the items returned by the previous # request. # @return [String] # # @!attribute [rw] product_descriptions # Filters the results by the specified basic product descriptions. # @return [Array] # # @!attribute [rw] start_time # The date and time, up to the past 90 days, from which to start # retrieving the price history data, in UTC format (for example, # *YYYY*-*MM*-*DD*T*HH*:*MM*:*SS*Z). # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeSpotPriceHistoryRequest AWS API Documentation # class DescribeSpotPriceHistoryRequest < Struct.new( :filters, :availability_zone, :dry_run, :end_time, :instance_types, :max_results, :next_token, :product_descriptions, :start_time) SENSITIVE = [] include Aws::Structure end # Contains the output of DescribeSpotPriceHistory. # # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is an empty string (`""`) or `null` when there are # no more items to return. # @return [String] # # @!attribute [rw] spot_price_history # The historical Spot prices. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeSpotPriceHistoryResult AWS API Documentation # class DescribeSpotPriceHistoryResult < Struct.new( :next_token, :spot_price_history) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. For more information, see [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @!attribute [rw] next_token # The token returned from a previous paginated request. Pagination # continues from the end of the items returned by the previous # request. # @return [String] # # @!attribute [rw] vpc_id # The ID of the VPC. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeStaleSecurityGroupsRequest AWS API Documentation # class DescribeStaleSecurityGroupsRequest < Struct.new( :dry_run, :max_results, :next_token, :vpc_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. If there are no additional items to return, the string is # empty. # @return [String] # # @!attribute [rw] stale_security_group_set # Information about the stale security groups. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeStaleSecurityGroupsResult AWS API Documentation # class DescribeStaleSecurityGroupsResult < Struct.new( :next_token, :stale_security_group_set) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] image_ids # The AMI IDs for which to show progress. Up to 20 AMI IDs can be # included in a request. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] filters # The filters. # # * `task-state` - Returns tasks in a certain state (`InProgress` \| # `Completed` \| `Failed`) # # * `bucket` - Returns task information for tasks that targeted a # specific bucket. For the filter value, specify the bucket name. # # When you specify the `ImageIds` parameter, any filters that you # specify are ignored. To use the filters, you must remove the # `ImageIds` parameter. # # # @return [Array] # # @!attribute [rw] next_token # The token returned from a previous paginated request. Pagination # continues from the end of the items returned by the previous # request. # @return [String] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. For more information, see [Pagination][1]. # # You cannot specify this parameter and the `ImageIds` parameter in # the same call. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeStoreImageTasksRequest AWS API Documentation # class DescribeStoreImageTasksRequest < Struct.new( :image_ids, :dry_run, :filters, :next_token, :max_results) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] store_image_task_results # The information about the AMI store tasks. # @return [Array] # # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` when there are no more items to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeStoreImageTasksResult AWS API Documentation # class DescribeStoreImageTasksResult < Struct.new( :store_image_task_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] filters # The filters. # # * `availability-zone` - The Availability Zone for the subnet. You # can also use `availabilityZone` as the filter name. # # * `availability-zone-id` - The ID of the Availability Zone for the # subnet. You can also use `availabilityZoneId` as the filter name. # # * `available-ip-address-count` - The number of IPv4 addresses in the # subnet that are available. # # * `cidr-block` - The IPv4 CIDR block of the subnet. The CIDR block # you specify must exactly match the subnet's CIDR block for # information to be returned for the subnet. You can also use `cidr` # or `cidrBlock` as the filter names. # # * `customer-owned-ipv4-pool` - The customer-owned IPv4 address pool # associated with the subnet. # # * `default-for-az` - Indicates whether this is the default subnet # for the Availability Zone (`true` \| `false`). You can also use # `defaultForAz` as the filter name. # # * `enable-dns64` - Indicates whether DNS queries made to the # Amazon-provided DNS Resolver in this subnet should return # synthetic IPv6 addresses for IPv4-only destinations. # # * `enable-lni-at-device-index` - 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). # # * `ipv6-cidr-block-association.ipv6-cidr-block` - An IPv6 CIDR block # associated with the subnet. # # * `ipv6-cidr-block-association.association-id` - An association ID # for an IPv6 CIDR block associated with the subnet. # # * `ipv6-cidr-block-association.state` - The state of an IPv6 CIDR # block associated with the subnet. # # * `ipv6-native` - Indicates whether this is an IPv6 only subnet # (`true` \| `false`). # # * `map-customer-owned-ip-on-launch` - Indicates whether a network # interface created in this subnet (including a network interface # created by RunInstances) receives a customer-owned IPv4 address. # # * `map-public-ip-on-launch` - Indicates whether instances launched # in this subnet receive a public IPv4 address. # # * `outpost-arn` - The Amazon Resource Name (ARN) of the Outpost. # # * `owner-id` - The ID of the Amazon Web Services account that owns # the subnet. # # * `private-dns-name-options-on-launch.hostname-type` - The type of # hostname to assign to instances in the subnet at launch. For # IPv4-only and dual-stack (IPv4 and IPv6) subnets, an instance DNS # name can be based on the instance IPv4 address (ip-name) or the # instance ID (resource-name). For IPv6 only subnets, an instance # DNS name must be based on the instance ID (resource-name). # # * `private-dns-name-options-on-launch.enable-resource-name-dns-a-record` # - Indicates whether to respond to DNS queries for instance # hostnames with DNS A records. # # * `private-dns-name-options-on-launch.enable-resource-name-dns-aaaa-record` # - Indicates whether to respond to DNS queries for instance # hostnames with DNS AAAA records. # # * `state` - The state of the subnet (`pending` \| `available`). # # * `subnet-arn` - The Amazon Resource Name (ARN) of the subnet. # # * `subnet-id` - The ID of the subnet. # # * `tag`:<key> - 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. # # * `tag-key` - 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. # # * `vpc-id` - The ID of the VPC for the subnet. # @return [Array] # # @!attribute [rw] subnet_ids # The IDs of the subnets. # # Default: Describes all your subnets. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] next_token # The token returned from a previous paginated request. Pagination # continues from the end of the items returned by the previous # request. # @return [String] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. For more information, see [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeSubnetsRequest AWS API Documentation # class DescribeSubnetsRequest < Struct.new( :filters, :subnet_ids, :dry_run, :next_token, :max_results) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] subnets # Information about one or more subnets. # @return [Array] # # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` when there are no more items to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeSubnetsResult AWS API Documentation # class DescribeSubnetsResult < Struct.new( :subnets, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] filters # The filters. # # * `key` - The tag key. # # * `resource-id` - The ID of the resource. # # * `resource-type` - The resource type (`customer-gateway` \| # `dedicated-host` \| `dhcp-options` \| `elastic-ip` \| `fleet` \| # `fpga-image` \| `host-reservation` \| `image` \| `instance` \| # `internet-gateway` \| `key-pair` \| `launch-template` \| # `natgateway` \| `network-acl` \| `network-interface` \| # `placement-group` \| `reserved-instances` \| `route-table` \| # `security-group` \| `snapshot` \| `spot-instances-request` \| # `subnet` \| `volume` \| `vpc` \| `vpc-endpoint` \| # `vpc-endpoint-service` \| `vpc-peering-connection` \| # `vpn-connection` \| `vpn-gateway`). # # * `tag`:<key> - The key/value combination of the tag. For # example, specify "tag:Owner" for the filter name and "TeamA" # for the filter value to find resources with the tag # "Owner=TeamA". # # * `value` - The tag value. # @return [Array] # # @!attribute [rw] max_results # The maximum number of items to return for this request. This value # can be between 5 and 1000. To get the next page of items, make # another request with the token returned in the output. For more # information, see [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @!attribute [rw] next_token # The token returned from a previous paginated request. Pagination # continues from the end of the items returned by the previous # request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeTagsRequest AWS API Documentation # class DescribeTagsRequest < Struct.new( :dry_run, :filters, :max_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` when there are no more items to return. # @return [String] # # @!attribute [rw] tags # The tags. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeTagsResult AWS API Documentation # class DescribeTagsResult < Struct.new( :next_token, :tags) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] traffic_mirror_filter_ids # The ID of the Traffic Mirror filter. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] filters # One or more filters. The possible values are: # # * `description`: The Traffic Mirror filter description. # # * `traffic-mirror-filter-id`: The ID of the Traffic Mirror filter. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeTrafficMirrorFiltersRequest AWS API Documentation # class DescribeTrafficMirrorFiltersRequest < Struct.new( :traffic_mirror_filter_ids, :dry_run, :filters, :max_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] traffic_mirror_filters # Information about one or more Traffic Mirror filters. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. The value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeTrafficMirrorFiltersResult AWS API Documentation # class DescribeTrafficMirrorFiltersResult < Struct.new( :traffic_mirror_filters, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] traffic_mirror_session_ids # The ID of the Traffic Mirror session. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] filters # One or more filters. The possible values are: # # * `description`: The Traffic Mirror session description. # # * `network-interface-id`: The ID of the Traffic Mirror session # network interface. # # * `owner-id`: The ID of the account that owns the Traffic Mirror # session. # # * `packet-length`: The assigned number of packets to mirror. # # * `session-number`: The assigned session number. # # * `traffic-mirror-filter-id`: The ID of the Traffic Mirror filter. # # * `traffic-mirror-session-id`: The ID of the Traffic Mirror session. # # * `traffic-mirror-target-id`: The ID of the Traffic Mirror target. # # * `virtual-network-id`: The virtual network ID of the Traffic Mirror # session. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeTrafficMirrorSessionsRequest AWS API Documentation # class DescribeTrafficMirrorSessionsRequest < Struct.new( :traffic_mirror_session_ids, :dry_run, :filters, :max_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] traffic_mirror_sessions # Describes one or more Traffic Mirror sessions. By default, all # Traffic Mirror sessions are described. Alternatively, you can filter # the results. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. The value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeTrafficMirrorSessionsResult AWS API Documentation # class DescribeTrafficMirrorSessionsResult < Struct.new( :traffic_mirror_sessions, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] traffic_mirror_target_ids # The ID of the Traffic Mirror targets. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] filters # One or more filters. The possible values are: # # * `description`: The Traffic Mirror target description. # # * `network-interface-id`: The ID of the Traffic Mirror session # network interface. # # * `network-load-balancer-arn`: The Amazon Resource Name (ARN) of the # Network Load Balancer that is associated with the session. # # * `owner-id`: The ID of the account that owns the Traffic Mirror # session. # # * `traffic-mirror-target-id`: The ID of the Traffic Mirror target. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeTrafficMirrorTargetsRequest AWS API Documentation # class DescribeTrafficMirrorTargetsRequest < Struct.new( :traffic_mirror_target_ids, :dry_run, :filters, :max_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] traffic_mirror_targets # Information about one or more Traffic Mirror targets. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. The value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeTrafficMirrorTargetsResult AWS API Documentation # class DescribeTrafficMirrorTargetsResult < Struct.new( :traffic_mirror_targets, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_attachment_ids # The IDs of the attachments. # @return [Array] # # @!attribute [rw] filters # One or more filters. The possible values are: # # * `association.state` - The state of the association (`associating` # \| `associated` \| `disassociating`). # # * `association.transit-gateway-route-table-id` - The ID of the route # table for the transit gateway. # # * `resource-id` - The ID of the resource. # # * `resource-owner-id` - The ID of the Amazon Web Services account # that owns the resource. # # * `resource-type` - The resource type. Valid values are `vpc` \| # `vpn` \| `direct-connect-gateway` \| `peering` \| `connect`. # # * `state` - The state of the attachment. Valid values are # `available` \| `deleted` \| `deleting` \| `failed` \| `failing` \| # `initiatingRequest` \| `modifying` \| `pendingAcceptance` \| # `pending` \| `rollingBack` \| `rejected` \| `rejecting`. # # * `transit-gateway-attachment-id` - The ID of the attachment. # # * `transit-gateway-id` - The ID of the transit gateway. # # * `transit-gateway-owner-id` - The ID of the Amazon Web Services # account that owns the transit gateway. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeTransitGatewayAttachmentsRequest AWS API Documentation # class DescribeTransitGatewayAttachmentsRequest < Struct.new( :transit_gateway_attachment_ids, :filters, :max_results, :next_token, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_attachments # Information about the attachments. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeTransitGatewayAttachmentsResult AWS API Documentation # class DescribeTransitGatewayAttachmentsResult < Struct.new( :transit_gateway_attachments, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_connect_peer_ids # The IDs of the Connect peers. # @return [Array] # # @!attribute [rw] filters # One or more filters. The possible values are: # # * `state` - The state of the Connect peer (`pending` \| `available` # \| `deleting` \| `deleted`). # # * `transit-gateway-attachment-id` - The ID of the attachment. # # * `transit-gateway-connect-peer-id` - The ID of the Connect peer. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeTransitGatewayConnectPeersRequest AWS API Documentation # class DescribeTransitGatewayConnectPeersRequest < Struct.new( :transit_gateway_connect_peer_ids, :filters, :max_results, :next_token, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_connect_peers # Information about the Connect peers. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeTransitGatewayConnectPeersResult AWS API Documentation # class DescribeTransitGatewayConnectPeersResult < Struct.new( :transit_gateway_connect_peers, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_attachment_ids # The IDs of the attachments. # @return [Array] # # @!attribute [rw] filters # One or more filters. The possible values are: # # * `options.protocol` - The tunnel protocol (`gre`). # # * `state` - The state of the attachment (`initiating` \| # `initiatingRequest` \| `pendingAcceptance` \| `rollingBack` \| # `pending` \| `available` \| `modifying` \| `deleting` \| `deleted` # \| `failed` \| `rejected` \| `rejecting` \| `failing`). # # * `transit-gateway-attachment-id` - The ID of the Connect # attachment. # # * `transit-gateway-id` - The ID of the transit gateway. # # * `transport-transit-gateway-attachment-id` - The ID of the transit # gateway attachment from which the Connect attachment was created. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeTransitGatewayConnectsRequest AWS API Documentation # class DescribeTransitGatewayConnectsRequest < Struct.new( :transit_gateway_attachment_ids, :filters, :max_results, :next_token, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_connects # Information about the Connect attachments. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeTransitGatewayConnectsResult AWS API Documentation # class DescribeTransitGatewayConnectsResult < Struct.new( :transit_gateway_connects, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_multicast_domain_ids # The ID of the transit gateway multicast domain. # @return [Array] # # @!attribute [rw] filters # One or more filters. The possible values are: # # * `state` - The state of the transit gateway multicast domain. Valid # values are `pending` \| `available` \| `deleting` \| `deleted`. # # * `transit-gateway-id` - The ID of the transit gateway. # # * `transit-gateway-multicast-domain-id` - The ID of the transit # gateway multicast domain. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeTransitGatewayMulticastDomainsRequest AWS API Documentation # class DescribeTransitGatewayMulticastDomainsRequest < Struct.new( :transit_gateway_multicast_domain_ids, :filters, :max_results, :next_token, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_multicast_domains # Information about the transit gateway multicast domains. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeTransitGatewayMulticastDomainsResult AWS API Documentation # class DescribeTransitGatewayMulticastDomainsResult < Struct.new( :transit_gateway_multicast_domains, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_attachment_ids # One or more IDs of the transit gateway peering attachments. # @return [Array] # # @!attribute [rw] filters # One or more filters. The possible values are: # # * `transit-gateway-attachment-id` - The ID of the transit gateway # attachment. # # * `local-owner-id` - The ID of your Amazon Web Services account. # # * `remote-owner-id` - The ID of the Amazon Web Services account in # the remote Region that owns the transit gateway. # # * `state` - The state of the peering attachment. Valid values are # `available` \| `deleted` \| `deleting` \| `failed` \| `failing` \| # `initiatingRequest` \| `modifying` \| `pendingAcceptance` \| # `pending` \| `rollingBack` \| `rejected` \| `rejecting`). # # * `tag`:<key> - 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. # # * `tag-key` - The key of a tag assigned to the resource. Use this # filter to find all resources that have a tag with a specific key, # regardless of the tag value. # # * `transit-gateway-id` - The ID of the transit gateway. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeTransitGatewayPeeringAttachmentsRequest AWS API Documentation # class DescribeTransitGatewayPeeringAttachmentsRequest < Struct.new( :transit_gateway_attachment_ids, :filters, :max_results, :next_token, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_peering_attachments # The transit gateway peering attachments. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeTransitGatewayPeeringAttachmentsResult AWS API Documentation # class DescribeTransitGatewayPeeringAttachmentsResult < Struct.new( :transit_gateway_peering_attachments, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_policy_table_ids # The IDs of the transit gateway policy tables. # @return [Array] # # @!attribute [rw] filters # The filters associated with the transit gateway policy table. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeTransitGatewayPolicyTablesRequest AWS API Documentation # class DescribeTransitGatewayPolicyTablesRequest < Struct.new( :transit_gateway_policy_table_ids, :filters, :max_results, :next_token, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_policy_tables # Describes the transit gateway policy tables. # @return [Array] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeTransitGatewayPolicyTablesResult AWS API Documentation # class DescribeTransitGatewayPolicyTablesResult < Struct.new( :transit_gateway_policy_tables, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_route_table_announcement_ids # The IDs of the transit gateway route tables that are being # advertised. # @return [Array] # # @!attribute [rw] filters # The filters associated with the transit gateway policy table. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeTransitGatewayRouteTableAnnouncementsRequest AWS API Documentation # class DescribeTransitGatewayRouteTableAnnouncementsRequest < Struct.new( :transit_gateway_route_table_announcement_ids, :filters, :max_results, :next_token, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_route_table_announcements # Describes the transit gateway route table announcement. # @return [Array] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeTransitGatewayRouteTableAnnouncementsResult AWS API Documentation # class DescribeTransitGatewayRouteTableAnnouncementsResult < Struct.new( :transit_gateway_route_table_announcements, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_route_table_ids # The IDs of the transit gateway route tables. # @return [Array] # # @!attribute [rw] filters # One or more filters. The possible values are: # # * `default-association-route-table` - Indicates whether this is the # default association route table for the transit gateway (`true` \| # `false`). # # * `default-propagation-route-table` - Indicates whether this is the # default propagation route table for the transit gateway (`true` \| # `false`). # # * `state` - The state of the route table (`available` \| `deleting` # \| `deleted` \| `pending`). # # * `transit-gateway-id` - The ID of the transit gateway. # # * `transit-gateway-route-table-id` - The ID of the transit gateway # route table. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeTransitGatewayRouteTablesRequest AWS API Documentation # class DescribeTransitGatewayRouteTablesRequest < Struct.new( :transit_gateway_route_table_ids, :filters, :max_results, :next_token, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_route_tables # Information about the transit gateway route tables. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeTransitGatewayRouteTablesResult AWS API Documentation # class DescribeTransitGatewayRouteTablesResult < Struct.new( :transit_gateway_route_tables, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_attachment_ids # The IDs of the attachments. # @return [Array] # # @!attribute [rw] filters # One or more filters. The possible values are: # # * `state` - The state of the attachment. Valid values are # `available` \| `deleted` \| `deleting` \| `failed` \| `failing` \| # `initiatingRequest` \| `modifying` \| `pendingAcceptance` \| # `pending` \| `rollingBack` \| `rejected` \| `rejecting`. # # * `transit-gateway-attachment-id` - The ID of the attachment. # # * `transit-gateway-id` - The ID of the transit gateway. # # * `vpc-id` - The ID of the VPC. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeTransitGatewayVpcAttachmentsRequest AWS API Documentation # class DescribeTransitGatewayVpcAttachmentsRequest < Struct.new( :transit_gateway_attachment_ids, :filters, :max_results, :next_token, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_vpc_attachments # Information about the VPC attachments. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeTransitGatewayVpcAttachmentsResult AWS API Documentation # class DescribeTransitGatewayVpcAttachmentsResult < Struct.new( :transit_gateway_vpc_attachments, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_ids # The IDs of the transit gateways. # @return [Array] # # @!attribute [rw] filters # One or more filters. The possible values are: # # * `options.propagation-default-route-table-id` - The ID of the # default propagation route table. # # * `options.amazon-side-asn` - The private ASN for the Amazon side of # a BGP session. # # * `options.association-default-route-table-id` - The ID of the # default association route table. # # * `options.auto-accept-shared-attachments` - Indicates whether there # is automatic acceptance of attachment requests (`enable` \| # `disable`). # # * `options.default-route-table-association` - Indicates whether # resource attachments are automatically associated with the default # association route table (`enable` \| `disable`). # # * `options.default-route-table-propagation` - Indicates whether # resource attachments automatically propagate routes to the default # propagation route table (`enable` \| `disable`). # # * `options.dns-support` - Indicates whether DNS support is enabled # (`enable` \| `disable`). # # * `options.vpn-ecmp-support` - Indicates whether Equal Cost # Multipath Protocol support is enabled (`enable` \| `disable`). # # * `owner-id` - The ID of the Amazon Web Services account that owns # the transit gateway. # # * `state` - The state of the transit gateway (`available` \| # `deleted` \| `deleting` \| `modifying` \| `pending`). # # * `transit-gateway-id` - The ID of the transit gateway. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeTransitGatewaysRequest AWS API Documentation # class DescribeTransitGatewaysRequest < Struct.new( :transit_gateway_ids, :filters, :max_results, :next_token, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateways # Information about the transit gateways. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeTransitGatewaysResult AWS API Documentation # class DescribeTransitGatewaysResult < Struct.new( :transit_gateways, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] association_ids # The IDs of the associations. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] filters # One or more filters. # # * `gre-key` - The ID of a trunk interface association. # # * `interface-protocol` - The interface protocol. Valid values are # `VLAN` and `GRE`. # @return [Array] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeTrunkInterfaceAssociationsRequest AWS API Documentation # class DescribeTrunkInterfaceAssociationsRequest < Struct.new( :association_ids, :dry_run, :filters, :next_token, :max_results) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] interface_associations # Information about the trunk associations. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeTrunkInterfaceAssociationsResult AWS API Documentation # class DescribeTrunkInterfaceAssociationsResult < Struct.new( :interface_associations, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] verified_access_endpoint_ids # The ID of the Verified Access endpoint. # @return [Array] # # @!attribute [rw] verified_access_instance_id # The ID of the Verified Access instance. # @return [String] # # @!attribute [rw] verified_access_group_id # The ID of the Verified Access group. # @return [String] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] filters # One or more filters. Filter names and values are case-sensitive. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVerifiedAccessEndpointsRequest AWS API Documentation # class DescribeVerifiedAccessEndpointsRequest < Struct.new( :verified_access_endpoint_ids, :verified_access_instance_id, :verified_access_group_id, :max_results, :next_token, :filters, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] verified_access_endpoints # Details about the Verified Access endpoints. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVerifiedAccessEndpointsResult AWS API Documentation # class DescribeVerifiedAccessEndpointsResult < Struct.new( :verified_access_endpoints, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] verified_access_group_ids # The ID of the Verified Access groups. # @return [Array] # # @!attribute [rw] verified_access_instance_id # The ID of the Verified Access instance. # @return [String] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] filters # One or more filters. Filter names and values are case-sensitive. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVerifiedAccessGroupsRequest AWS API Documentation # class DescribeVerifiedAccessGroupsRequest < Struct.new( :verified_access_group_ids, :verified_access_instance_id, :max_results, :next_token, :filters, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] verified_access_groups # Details about the Verified Access groups. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVerifiedAccessGroupsResult AWS API Documentation # class DescribeVerifiedAccessGroupsResult < Struct.new( :verified_access_groups, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] verified_access_instance_ids # The IDs of the Verified Access instances. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] filters # One or more filters. Filter names and values are case-sensitive. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVerifiedAccessInstanceLoggingConfigurationsRequest AWS API Documentation # class DescribeVerifiedAccessInstanceLoggingConfigurationsRequest < Struct.new( :verified_access_instance_ids, :max_results, :next_token, :filters, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] logging_configurations # The logging configuration for the Verified Access instances. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVerifiedAccessInstanceLoggingConfigurationsResult AWS API Documentation # class DescribeVerifiedAccessInstanceLoggingConfigurationsResult < Struct.new( :logging_configurations, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] verified_access_instance_ids # The IDs of the Verified Access instances. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] filters # One or more filters. Filter names and values are case-sensitive. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVerifiedAccessInstancesRequest AWS API Documentation # class DescribeVerifiedAccessInstancesRequest < Struct.new( :verified_access_instance_ids, :max_results, :next_token, :filters, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] verified_access_instances # Details about the Verified Access instances. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVerifiedAccessInstancesResult AWS API Documentation # class DescribeVerifiedAccessInstancesResult < Struct.new( :verified_access_instances, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] verified_access_trust_provider_ids # The IDs of the Verified Access trust providers. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] filters # One or more filters. Filter names and values are case-sensitive. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVerifiedAccessTrustProvidersRequest AWS API Documentation # class DescribeVerifiedAccessTrustProvidersRequest < Struct.new( :verified_access_trust_provider_ids, :max_results, :next_token, :filters, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] verified_access_trust_providers # Details about the Verified Access trust providers. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVerifiedAccessTrustProvidersResult AWS API Documentation # class DescribeVerifiedAccessTrustProvidersResult < Struct.new( :verified_access_trust_providers, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] attribute # The attribute of the volume. This parameter is required. # @return [String] # # @!attribute [rw] volume_id # The ID of the volume. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVolumeAttributeRequest AWS API Documentation # class DescribeVolumeAttributeRequest < Struct.new( :attribute, :volume_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] auto_enable_io # The state of `autoEnableIO` attribute. # @return [Types::AttributeBooleanValue] # # @!attribute [rw] product_codes # A list of product codes. # @return [Array] # # @!attribute [rw] volume_id # The ID of the volume. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVolumeAttributeResult AWS API Documentation # class DescribeVolumeAttributeResult < Struct.new( :auto_enable_io, :product_codes, :volume_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] filters # The filters. # # * `action.code` - The action code for the event (for example, # `enable-volume-io`). # # * `action.description` - A description of the action. # # * `action.event-id` - The event ID associated with the action. # # * `availability-zone` - The Availability Zone of the instance. # # * `event.description` - A description of the event. # # * `event.event-id` - The event ID. # # * `event.event-type` - The event type (for `io-enabled`: `passed` \| # `failed`; for `io-performance`: `io-performance:degraded` \| # `io-performance:severely-degraded` \| `io-performance:stalled`). # # * `event.not-after` - The latest end time for the event. # # * `event.not-before` - The earliest start time for the event. # # * `volume-status.details-name` - The cause for # `volume-status.status` (`io-enabled` \| `io-performance`). # # * `volume-status.details-status` - The status of # `volume-status.details-name` (for `io-enabled`: `passed` \| # `failed`; for `io-performance`: `normal` \| `degraded` \| # `severely-degraded` \| `stalled`). # # * `volume-status.status` - The status of the volume (`ok` \| # `impaired` \| `warning` \| `insufficient-data`). # @return [Array] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. This value can be between 5 and 1,000; if the value is # larger than 1,000, only 1,000 results are returned. If this # parameter is not used, then all items are returned. You cannot # specify this parameter and the volume IDs parameter in the same # request. For more information, see [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @!attribute [rw] next_token # The token returned from a previous paginated request. Pagination # continues from the end of the items returned by the previous # request. # @return [String] # # @!attribute [rw] volume_ids # The IDs of the volumes. # # Default: Describes all your volumes. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVolumeStatusRequest AWS API Documentation # class DescribeVolumeStatusRequest < Struct.new( :filters, :max_results, :next_token, :volume_ids, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` when there are no more items to return. # @return [String] # # @!attribute [rw] volume_statuses # Information about the status of the volumes. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVolumeStatusResult AWS API Documentation # class DescribeVolumeStatusResult < Struct.new( :next_token, :volume_statuses) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] volume_ids # The IDs of the volumes. # @return [Array] # # @!attribute [rw] filters # The filters. # # * `modification-state` - The current modification state (modifying # \| optimizing \| completed \| failed). # # * `original-iops` - The original IOPS rate of the volume. # # * `original-size` - The original size of the volume, in GiB. # # * `original-volume-type` - The original volume type of the volume # (standard \| io1 \| io2 \| gp2 \| sc1 \| st1). # # * `originalMultiAttachEnabled` - Indicates whether Multi-Attach # support was enabled (true \| false). # # * `start-time` - The modification start time. # # * `target-iops` - The target IOPS rate of the volume. # # * `target-size` - The target size of the volume, in GiB. # # * `target-volume-type` - The target volume type of the volume # (standard \| io1 \| io2 \| gp2 \| sc1 \| st1). # # * `targetMultiAttachEnabled` - Indicates whether Multi-Attach # support is to be enabled (true \| false). # # * `volume-id` - The ID of the volume. # @return [Array] # # @!attribute [rw] next_token # The token returned by a previous paginated request. Pagination # continues from the end of the items returned by the previous # request. # @return [String] # # @!attribute [rw] max_results # The maximum number of results (up to a limit of 500) to be returned # in a paginated request. For more information, see [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVolumesModificationsRequest AWS API Documentation # class DescribeVolumesModificationsRequest < Struct.new( :dry_run, :volume_ids, :filters, :next_token, :max_results) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] volumes_modifications # Information about the volume modifications. # @return [Array] # # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` if there are no more items to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVolumesModificationsResult AWS API Documentation # class DescribeVolumesModificationsResult < Struct.new( :volumes_modifications, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] filters # The filters. # # * `attachment.attach-time` - The time stamp when the attachment # initiated. # # * `attachment.delete-on-termination` - Whether the volume is deleted # on instance termination. # # * `attachment.device` - The device name specified in the block # device mapping (for example, `/dev/sda1`). # # * `attachment.instance-id` - The ID of the instance the volume is # attached to. # # * `attachment.status` - The attachment state (`attaching` \| # `attached` \| `detaching`). # # * `availability-zone` - The Availability Zone in which the volume # was created. # # * `create-time` - The time stamp when the volume was created. # # * `encrypted` - Indicates whether the volume is encrypted (`true` \| # `false`) # # * `multi-attach-enabled` - Indicates whether the volume is enabled # for Multi-Attach (`true` \| `false`) # # * `fast-restored` - Indicates whether the volume was created from a # snapshot that is enabled for fast snapshot restore (`true` \| # `false`). # # * `size` - The size of the volume, in GiB. # # * `snapshot-id` - The snapshot from which the volume was created. # # * `status` - The state of the volume (`creating` \| `available` \| # `in-use` \| `deleting` \| `deleted` \| `error`). # # * `tag`:<key> - 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. # # * `tag-key` - 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. # # * `volume-id` - The volume ID. # # * `volume-type` - The Amazon EBS volume type (`gp2` \| `gp3` \| # `io1` \| `io2` \| `st1` \| `sc1`\| `standard`) # @return [Array] # # @!attribute [rw] volume_ids # The volume IDs. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] max_results # The maximum number of volumes to return for this request. This value # can be between 5 and 500; if you specify a value larger than 500, # only 500 items are returned. If this parameter is not used, then all # items are returned. You cannot specify this parameter and the volume # IDs parameter in the same request. For more information, see # [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @!attribute [rw] next_token # The token returned from a previous paginated request. Pagination # continues from the end of the items returned from the previous # request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVolumesRequest AWS API Documentation # class DescribeVolumesRequest < Struct.new( :filters, :volume_ids, :dry_run, :max_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] volumes # Information about the volumes. # @return [Array] # # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` when there are no more items to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVolumesResult AWS API Documentation # class DescribeVolumesResult < Struct.new( :volumes, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] attribute # The VPC attribute. # @return [String] # # @!attribute [rw] vpc_id # The ID of the VPC. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVpcAttributeRequest AWS API Documentation # class DescribeVpcAttributeRequest < Struct.new( :attribute, :vpc_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] vpc_id # The ID of the VPC. # @return [String] # # @!attribute [rw] enable_dns_hostnames # Indicates whether the instances launched in the VPC get DNS # hostnames. If this attribute is `true`, instances in the VPC get DNS # hostnames; otherwise, they do not. # @return [Types::AttributeBooleanValue] # # @!attribute [rw] enable_dns_support # Indicates whether DNS resolution is enabled for the VPC. If this # attribute is `true`, the Amazon DNS server resolves DNS hostnames # for your instances to their corresponding IP addresses; otherwise, # it does not. # @return [Types::AttributeBooleanValue] # # @!attribute [rw] enable_network_address_usage_metrics # Indicates whether Network Address Usage metrics are enabled for your # VPC. # @return [Types::AttributeBooleanValue] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVpcAttributeResult AWS API Documentation # class DescribeVpcAttributeResult < Struct.new( :vpc_id, :enable_dns_hostnames, :enable_dns_support, :enable_network_address_usage_metrics) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. For more information, see [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @!attribute [rw] next_token # The token returned from a previous paginated request. Pagination # continues from the end of the items returned by the previous # request. # @return [String] # # @!attribute [rw] vpc_ids # The IDs of the VPCs. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVpcClassicLinkDnsSupportRequest AWS API Documentation # class DescribeVpcClassicLinkDnsSupportRequest < Struct.new( :max_results, :next_token, :vpc_ids) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` when there are no more items to return. # @return [String] # # @!attribute [rw] vpcs # Information about the ClassicLink DNS support status of the VPCs. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVpcClassicLinkDnsSupportResult AWS API Documentation # class DescribeVpcClassicLinkDnsSupportResult < Struct.new( :next_token, :vpcs) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] filters # The filters. # # * `is-classic-link-enabled` - Whether the VPC is enabled for # ClassicLink (`true` \| `false`). # # * `tag`:<key> - 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. # # * `tag-key` - 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. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] vpc_ids # The VPCs for which you want to describe the ClassicLink status. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVpcClassicLinkRequest AWS API Documentation # class DescribeVpcClassicLinkRequest < Struct.new( :filters, :dry_run, :vpc_ids) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] vpcs # The ClassicLink status of the VPCs. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVpcClassicLinkResult AWS API Documentation # class DescribeVpcClassicLinkResult < Struct.new( :vpcs) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] connection_notification_id # The ID of the notification. # @return [String] # # @!attribute [rw] filters # The filters. # # * `connection-notification-arn` - The ARN of the SNS topic for the # notification. # # * `connection-notification-id` - The ID of the notification. # # * `connection-notification-state` - The state of the notification # (`Enabled` \| `Disabled`). # # * `connection-notification-type` - The type of notification # (`Topic`). # # * `service-id` - The ID of the endpoint service. # # * `vpc-endpoint-id` - The ID of the VPC endpoint. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return in a single call. To # retrieve the remaining results, make another request with the # returned `NextToken` value. # @return [Integer] # # @!attribute [rw] next_token # The token to request the next page of results. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVpcEndpointConnectionNotificationsRequest AWS API Documentation # class DescribeVpcEndpointConnectionNotificationsRequest < Struct.new( :dry_run, :connection_notification_id, :filters, :max_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] connection_notification_set # The notifications. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVpcEndpointConnectionNotificationsResult AWS API Documentation # class DescribeVpcEndpointConnectionNotificationsResult < Struct.new( :connection_notification_set, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] filters # The filters. # # * `ip-address-type` - The IP address type (`ipv4` \| `ipv6`). # # * `service-id` - The ID of the service. # # * `vpc-endpoint-owner` - The ID of the Amazon Web Services account # ID that owns the endpoint. # # * `vpc-endpoint-state` - The state of the endpoint # (`pendingAcceptance` \| `pending` \| `available` \| `deleting` \| # `deleted` \| `rejected` \| `failed`). # # * `vpc-endpoint-id` - The ID of the endpoint. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return for the request in a single # page. The remaining results of the initial request can be seen by # sending another request with the returned `NextToken` value. This # value can be between 5 and 1,000; if `MaxResults` is given a value # larger than 1,000, only 1,000 results are returned. # @return [Integer] # # @!attribute [rw] next_token # The token to retrieve the next page of results. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVpcEndpointConnectionsRequest AWS API Documentation # class DescribeVpcEndpointConnectionsRequest < Struct.new( :dry_run, :filters, :max_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] vpc_endpoint_connections # Information about the VPC endpoint connections. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVpcEndpointConnectionsResult AWS API Documentation # class DescribeVpcEndpointConnectionsResult < Struct.new( :vpc_endpoint_connections, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] service_ids # The IDs of the endpoint services. # @return [Array] # # @!attribute [rw] filters # The filters. # # * `service-name` - The name of the service. # # * `service-id` - The ID of the service. # # * `service-state` - The state of the service (`Pending` \| # `Available` \| `Deleting` \| `Deleted` \| `Failed`). # # * `supported-ip-address-types` - The IP address type (`ipv4` \| # `ipv6`). # # * `tag`:<key> - 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. # # * `tag-key` - 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. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return for the request in a single # page. The remaining results of the initial request can be seen by # sending another request with the returned `NextToken` value. This # value can be between 5 and 1,000; if `MaxResults` is given a value # larger than 1,000, only 1,000 results are returned. # @return [Integer] # # @!attribute [rw] next_token # The token to retrieve the next page of results. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVpcEndpointServiceConfigurationsRequest AWS API Documentation # class DescribeVpcEndpointServiceConfigurationsRequest < Struct.new( :dry_run, :service_ids, :filters, :max_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] service_configurations # Information about the services. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVpcEndpointServiceConfigurationsResult AWS API Documentation # class DescribeVpcEndpointServiceConfigurationsResult < Struct.new( :service_configurations, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] service_id # The ID of the service. # @return [String] # # @!attribute [rw] filters # The filters. # # * `principal` - The ARN of the principal. # # * `principal-type` - The principal type (`All` \| `Service` \| # `OrganizationUnit` \| `Account` \| `User` \| `Role`). # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return for the request in a single # page. The remaining results of the initial request can be seen by # sending another request with the returned `NextToken` value. This # value can be between 5 and 1,000; if `MaxResults` is given a value # larger than 1,000, only 1,000 results are returned. # @return [Integer] # # @!attribute [rw] next_token # The token to retrieve the next page of results. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVpcEndpointServicePermissionsRequest AWS API Documentation # class DescribeVpcEndpointServicePermissionsRequest < Struct.new( :dry_run, :service_id, :filters, :max_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] allowed_principals # Information about the allowed principals. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVpcEndpointServicePermissionsResult AWS API Documentation # class DescribeVpcEndpointServicePermissionsResult < Struct.new( :allowed_principals, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] service_names # The service names. # @return [Array] # # @!attribute [rw] filters # The filters. # # * `owner` - The ID or alias of the Amazon Web Services account that # owns the service. # # * `service-name` - The name of the service. # # * `service-type` - The type of service (`Interface` \| `Gateway` \| # `GatewayLoadBalancer`). # # * `supported-ip-address-types` - The IP address type (`ipv4` \| # `ipv6`). # # * `tag`:<key> - 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. # # * `tag-key` - 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. # @return [Array] # # @!attribute [rw] max_results # The maximum number of items to return for this request. The request # returns a token that you can specify in a subsequent call to get the # next set of results. # # Constraint: If the value is greater than 1,000, we return only 1,000 # items. # @return [Integer] # # @!attribute [rw] next_token # The token for the next set of items to return. (You received this # token from a prior call.) # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVpcEndpointServicesRequest AWS API Documentation # class DescribeVpcEndpointServicesRequest < Struct.new( :dry_run, :service_names, :filters, :max_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] service_names # The supported services. # @return [Array] # # @!attribute [rw] service_details # Information about the service. # @return [Array] # # @!attribute [rw] next_token # The token to use when requesting the next set of items. If there are # no additional items to return, the string is empty. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVpcEndpointServicesResult AWS API Documentation # class DescribeVpcEndpointServicesResult < Struct.new( :service_names, :service_details, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] vpc_endpoint_ids # The IDs of the VPC endpoints. # @return [Array] # # @!attribute [rw] filters # The filters. # # * `ip-address-type` - The IP address type (`ipv4` \| `ipv6`). # # * `service-name` - The name of the service. # # * `tag`:<key> - 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. # # * `tag-key` - 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. # # * `vpc-id` - The ID of the VPC in which the endpoint resides. # # * `vpc-endpoint-id` - The ID of the endpoint. # # * `vpc-endpoint-state` - The state of the endpoint # (`pendingAcceptance` \| `pending` \| `available` \| `deleting` \| # `deleted` \| `rejected` \| `failed`). # # * `vpc-endpoint-type` - The type of VPC endpoint (`Interface` \| # `Gateway` \| `GatewayLoadBalancer`). # @return [Array] # # @!attribute [rw] max_results # The maximum number of items to return for this request. The request # returns a token that you can specify in a subsequent call to get the # next set of results. # # Constraint: If the value is greater than 1,000, we return only 1,000 # items. # @return [Integer] # # @!attribute [rw] next_token # The token for the next set of items to return. (You received this # token from a prior call.) # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVpcEndpointsRequest AWS API Documentation # class DescribeVpcEndpointsRequest < Struct.new( :dry_run, :vpc_endpoint_ids, :filters, :max_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] vpc_endpoints # Information about the endpoints. # @return [Array] # # @!attribute [rw] next_token # The token to use when requesting the next set of items. If there are # no additional items to return, the string is empty. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVpcEndpointsResult AWS API Documentation # class DescribeVpcEndpointsResult < Struct.new( :vpc_endpoints, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] filters # The filters. # # * `accepter-vpc-info.cidr-block` - The IPv4 CIDR block of the # accepter VPC. # # * `accepter-vpc-info.owner-id` - The ID of the Amazon Web Services # account that owns the accepter VPC. # # * `accepter-vpc-info.vpc-id` - The ID of the accepter VPC. # # * `expiration-time` - The expiration date and time for the VPC # peering connection. # # * `requester-vpc-info.cidr-block` - The IPv4 CIDR block of the # requester's VPC. # # * `requester-vpc-info.owner-id` - The ID of the Amazon Web Services # account that owns the requester VPC. # # * `requester-vpc-info.vpc-id` - The ID of the requester VPC. # # * `status-code` - The status of the VPC peering connection # (`pending-acceptance` \| `failed` \| `expired` \| `provisioning` # \| `active` \| `deleting` \| `deleted` \| `rejected`). # # * `status-message` - A message that provides more information about # the status of the VPC peering connection, if applicable. # # * `tag`:<key> - 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. # # * `tag-key` - 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. # # * `vpc-peering-connection-id` - The ID of the VPC peering # connection. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] vpc_peering_connection_ids # The IDs of the VPC peering connections. # # Default: Describes all your VPC peering connections. # @return [Array] # # @!attribute [rw] next_token # The token returned from a previous paginated request. Pagination # continues from the end of the items returned by the previous # request. # @return [String] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. For more information, see [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVpcPeeringConnectionsRequest AWS API Documentation # class DescribeVpcPeeringConnectionsRequest < Struct.new( :filters, :dry_run, :vpc_peering_connection_ids, :next_token, :max_results) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] vpc_peering_connections # Information about the VPC peering connections. # @return [Array] # # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` when there are no more items to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVpcPeeringConnectionsResult AWS API Documentation # class DescribeVpcPeeringConnectionsResult < Struct.new( :vpc_peering_connections, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] filters # The filters. # # * `cidr` - The primary IPv4 CIDR block of the VPC. The CIDR block # you specify must exactly match the VPC's CIDR block for # information to be returned for the VPC. Must contain the slash # followed by one or two digits (for example, `/28`). # # * `cidr-block-association.cidr-block` - An IPv4 CIDR block # associated with the VPC. # # * `cidr-block-association.association-id` - The association ID for # an IPv4 CIDR block associated with the VPC. # # * `cidr-block-association.state` - The state of an IPv4 CIDR block # associated with the VPC. # # * `dhcp-options-id` - The ID of a set of DHCP options. # # * `ipv6-cidr-block-association.ipv6-cidr-block` - An IPv6 CIDR block # associated with the VPC. # # * `ipv6-cidr-block-association.ipv6-pool` - The ID of the IPv6 # address pool from which the IPv6 CIDR block is allocated. # # * `ipv6-cidr-block-association.association-id` - The association ID # for an IPv6 CIDR block associated with the VPC. # # * `ipv6-cidr-block-association.state` - The state of an IPv6 CIDR # block associated with the VPC. # # * `is-default` - Indicates whether the VPC is the default VPC. # # * `owner-id` - The ID of the Amazon Web Services account that owns # the VPC. # # * `state` - The state of the VPC (`pending` \| `available`). # # * `tag`:<key> - 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. # # * `tag-key` - 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. # # * `vpc-id` - The ID of the VPC. # @return [Array] # # @!attribute [rw] vpc_ids # The IDs of the VPCs. # # Default: Describes all your VPCs. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] next_token # The token returned from a previous paginated request. Pagination # continues from the end of the items returned by the previous # request. # @return [String] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. For more information, see [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVpcsRequest AWS API Documentation # class DescribeVpcsRequest < Struct.new( :filters, :vpc_ids, :dry_run, :next_token, :max_results) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] vpcs # Information about one or more VPCs. # @return [Array] # # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` when there are no more items to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVpcsResult AWS API Documentation # class DescribeVpcsResult < Struct.new( :vpcs, :next_token) SENSITIVE = [] include Aws::Structure end # Contains the parameters for DescribeVpnConnections. # # @!attribute [rw] filters # One or more filters. # # * `customer-gateway-configuration` - The configuration information # for the customer gateway. # # * `customer-gateway-id` - The ID of a customer gateway associated # with the VPN connection. # # * `state` - The state of the VPN connection (`pending` \| # `available` \| `deleting` \| `deleted`). # # * `option.static-routes-only` - Indicates whether the connection has # static routes only. Used for devices that do not support Border # Gateway Protocol (BGP). # # * `route.destination-cidr-block` - The destination CIDR block. This # corresponds to the subnet used in a customer data center. # # * `bgp-asn` - The BGP Autonomous System Number (ASN) associated with # a BGP device. # # * `tag`:<key> - 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. # # * `tag-key` - 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. # # * `type` - The type of VPN connection. Currently the only supported # type is `ipsec.1`. # # * `vpn-connection-id` - The ID of the VPN connection. # # * `vpn-gateway-id` - The ID of a virtual private gateway associated # with the VPN connection. # # * `transit-gateway-id` - The ID of a transit gateway associated with # the VPN connection. # @return [Array] # # @!attribute [rw] vpn_connection_ids # One or more VPN connection IDs. # # Default: Describes your VPN connections. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVpnConnectionsRequest AWS API Documentation # class DescribeVpnConnectionsRequest < Struct.new( :filters, :vpn_connection_ids, :dry_run) SENSITIVE = [] include Aws::Structure end # Contains the output of DescribeVpnConnections. # # @!attribute [rw] vpn_connections # Information about one or more VPN connections. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVpnConnectionsResult AWS API Documentation # class DescribeVpnConnectionsResult < Struct.new( :vpn_connections) SENSITIVE = [] include Aws::Structure end # Contains the parameters for DescribeVpnGateways. # # @!attribute [rw] filters # One or more filters. # # * `amazon-side-asn` - The Autonomous System Number (ASN) for the # Amazon side of the gateway. # # * `attachment.state` - The current state of the attachment between # the gateway and the VPC (`attaching` \| `attached` \| `detaching` # \| `detached`). # # * `attachment.vpc-id` - The ID of an attached VPC. # # * `availability-zone` - The Availability Zone for the virtual # private gateway (if applicable). # # * `state` - The state of the virtual private gateway (`pending` \| # `available` \| `deleting` \| `deleted`). # # * `tag`:<key> - 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. # # * `tag-key` - 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. # # * `type` - The type of virtual private gateway. Currently the only # supported type is `ipsec.1`. # # * `vpn-gateway-id` - The ID of the virtual private gateway. # @return [Array] # # @!attribute [rw] vpn_gateway_ids # One or more virtual private gateway IDs. # # Default: Describes all your virtual private gateways. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVpnGatewaysRequest AWS API Documentation # class DescribeVpnGatewaysRequest < Struct.new( :filters, :vpn_gateway_ids, :dry_run) SENSITIVE = [] include Aws::Structure end # Contains the output of DescribeVpnGateways. # # @!attribute [rw] vpn_gateways # Information about one or more virtual private gateways. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DescribeVpnGatewaysResult AWS API Documentation # class DescribeVpnGatewaysResult < Struct.new( :vpn_gateways) SENSITIVE = [] include Aws::Structure end # Describes the destination options for a flow log. # # @!attribute [rw] file_format # The format for the flow log. The default is `plain-text`. # @return [String] # # @!attribute [rw] hive_compatible_partitions # Indicates whether to use Hive-compatible prefixes for flow logs # stored in Amazon S3. The default is `false`. # @return [Boolean] # # @!attribute [rw] per_hour_partition # Indicates whether to partition the flow log per hour. This reduces # the cost and response time for queries. The default is `false`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DestinationOptionsRequest AWS API Documentation # class DestinationOptionsRequest < Struct.new( :file_format, :hive_compatible_partitions, :per_hour_partition) SENSITIVE = [] include Aws::Structure end # Describes the destination options for a flow log. # # @!attribute [rw] file_format # The format for the flow log. # @return [String] # # @!attribute [rw] hive_compatible_partitions # Indicates whether to use Hive-compatible prefixes for flow logs # stored in Amazon S3. # @return [Boolean] # # @!attribute [rw] per_hour_partition # Indicates whether to partition the flow log per hour. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DestinationOptionsResponse AWS API Documentation # class DestinationOptionsResponse < Struct.new( :file_format, :hive_compatible_partitions, :per_hour_partition) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] instance_id # The ID of the instance to unlink from the VPC. # @return [String] # # @!attribute [rw] vpc_id # The ID of the VPC to which the instance is linked. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DetachClassicLinkVpcRequest AWS API Documentation # class DetachClassicLinkVpcRequest < Struct.new( :dry_run, :instance_id, :vpc_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] return # Returns `true` if the request succeeds; otherwise, it returns an # error. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DetachClassicLinkVpcResult AWS API Documentation # class DetachClassicLinkVpcResult < Struct.new( :return) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] internet_gateway_id # The ID of the internet gateway. # @return [String] # # @!attribute [rw] vpc_id # The ID of the VPC. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DetachInternetGatewayRequest AWS API Documentation # class DetachInternetGatewayRequest < Struct.new( :dry_run, :internet_gateway_id, :vpc_id) SENSITIVE = [] include Aws::Structure end # Contains the parameters for DetachNetworkInterface. # # @!attribute [rw] attachment_id # The ID of the attachment. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] force # Specifies whether to force a detachment. # # * Use the `Force` parameter only as a last resort to detach a # network interface from a failed instance. # # * If you use the `Force` parameter to detach a network interface, # you might not be able to attach a different network interface to # the same index on the instance without first stopping and starting # the instance. # # * If you force the detachment of a network interface, the [instance # metadata][1] might not get updated. This means that the attributes # associated with the detached network interface might still be # visible. The instance metadata will get updated when you stop and # start the instance. # # # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DetachNetworkInterfaceRequest AWS API Documentation # class DetachNetworkInterfaceRequest < Struct.new( :attachment_id, :dry_run, :force) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] verified_access_instance_id # The ID of the Verified Access instance. # @return [String] # # @!attribute [rw] verified_access_trust_provider_id # The ID of the Verified Access trust provider. # @return [String] # # @!attribute [rw] client_token # A unique, case-sensitive token that you provide to ensure # idempotency of your modification request. For more information, see # [Ensuring Idempotency][1]. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DetachVerifiedAccessTrustProviderRequest AWS API Documentation # class DetachVerifiedAccessTrustProviderRequest < Struct.new( :verified_access_instance_id, :verified_access_trust_provider_id, :client_token, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] verified_access_trust_provider # Details about the Verified Access trust provider. # @return [Types::VerifiedAccessTrustProvider] # # @!attribute [rw] verified_access_instance # Details about the Verified Access instance. # @return [Types::VerifiedAccessInstance] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DetachVerifiedAccessTrustProviderResult AWS API Documentation # class DetachVerifiedAccessTrustProviderResult < Struct.new( :verified_access_trust_provider, :verified_access_instance) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] device # The device name. # @return [String] # # @!attribute [rw] force # Forces detachment if the previous detachment attempt did not occur # cleanly (for example, logging into an instance, unmounting the # volume, and detaching normally). This option can lead to data loss # or a corrupted file system. Use this option only as a last resort to # detach a volume from a failed instance. The instance won't have an # opportunity to flush file system caches or file system metadata. If # you use this option, you must perform file system check and repair # procedures. # @return [Boolean] # # @!attribute [rw] instance_id # The ID of the instance. If you are detaching a Multi-Attach enabled # volume, you must specify an instance ID. # @return [String] # # @!attribute [rw] volume_id # The ID of the volume. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DetachVolumeRequest AWS API Documentation # class DetachVolumeRequest < Struct.new( :device, :force, :instance_id, :volume_id, :dry_run) SENSITIVE = [] include Aws::Structure end # Contains the parameters for DetachVpnGateway. # # @!attribute [rw] vpc_id # The ID of the VPC. # @return [String] # # @!attribute [rw] vpn_gateway_id # The ID of the virtual private gateway. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DetachVpnGatewayRequest AWS API Documentation # class DetachVpnGatewayRequest < Struct.new( :vpc_id, :vpn_gateway_id, :dry_run) SENSITIVE = [] include Aws::Structure end # Describes the options for an Amazon Web Services Verified Access # device-identity based trust provider. # # @!attribute [rw] tenant_id # The ID of the tenant application with the device-identity provider. # @return [String] # # @!attribute [rw] public_signing_key_url # The URL Amazon Web Services Verified Access will use to verify the # authenticity of the device tokens. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DeviceOptions AWS API Documentation # class DeviceOptions < Struct.new( :tenant_id, :public_signing_key_url) SENSITIVE = [] include Aws::Structure end # Describes a DHCP configuration option. # # @!attribute [rw] key # The name of a DHCP option. # @return [String] # # @!attribute [rw] values # The values for the DHCP option. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DhcpConfiguration AWS API Documentation # class DhcpConfiguration < Struct.new( :key, :values) SENSITIVE = [] include Aws::Structure end # The set of DHCP options. # # @!attribute [rw] dhcp_configurations # The DHCP options in the set. # @return [Array] # # @!attribute [rw] dhcp_options_id # The ID of the set of DHCP options. # @return [String] # # @!attribute [rw] owner_id # The ID of the Amazon Web Services account that owns the DHCP options # set. # @return [String] # # @!attribute [rw] tags # Any tags assigned to the DHCP options set. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DhcpOptions AWS API Documentation # class DhcpOptions < Struct.new( :dhcp_configurations, :dhcp_options_id, :owner_id, :tags) SENSITIVE = [] include Aws::Structure end # Describes an Active Directory. # # @!attribute [rw] directory_id # The ID of the Active Directory used for authentication. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DirectoryServiceAuthentication AWS API Documentation # class DirectoryServiceAuthentication < Struct.new( :directory_id) SENSITIVE = [] include Aws::Structure end # Describes the Active Directory to be used for client authentication. # # @!attribute [rw] directory_id # The ID of the Active Directory to be used for authentication. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DirectoryServiceAuthenticationRequest AWS API Documentation # class DirectoryServiceAuthenticationRequest < Struct.new( :directory_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] allocation_id # The allocation ID of an Elastic IP address. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisableAddressTransferRequest AWS API Documentation # class DisableAddressTransferRequest < Struct.new( :allocation_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] address_transfer # An Elastic IP address transfer. # @return [Types::AddressTransfer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisableAddressTransferResult AWS API Documentation # class DisableAddressTransferResult < Struct.new( :address_transfer) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] source # The source Region or Availability Zone that the metric subscription # is disabled for. For example, `us-east-1`. # @return [String] # # @!attribute [rw] destination # The target Region or Availability Zone that the metric subscription # is disabled for. For example, `eu-north-1`. # @return [String] # # @!attribute [rw] metric # The metric used for the disabled subscription. # @return [String] # # @!attribute [rw] statistic # The statistic used for the disabled subscription. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisableAwsNetworkPerformanceMetricSubscriptionRequest AWS API Documentation # class DisableAwsNetworkPerformanceMetricSubscriptionRequest < Struct.new( :source, :destination, :metric, :statistic, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] output # Indicates whether the unsubscribe action was successful. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisableAwsNetworkPerformanceMetricSubscriptionResult AWS API Documentation # class DisableAwsNetworkPerformanceMetricSubscriptionResult < Struct.new( :output) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisableEbsEncryptionByDefaultRequest AWS API Documentation # class DisableEbsEncryptionByDefaultRequest < Struct.new( :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] ebs_encryption_by_default # The updated status of encryption by default. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisableEbsEncryptionByDefaultResult AWS API Documentation # class DisableEbsEncryptionByDefaultResult < Struct.new( :ebs_encryption_by_default) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] image_id # Specify the ID of the image for which to disable Windows fast # launch. # @return [String] # # @!attribute [rw] force # Forces the image settings to turn off Windows fast launch for your # Windows AMI. This parameter overrides any errors that are # encountered while cleaning up resources in your account. # @return [Boolean] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisableFastLaunchRequest AWS API Documentation # class DisableFastLaunchRequest < Struct.new( :image_id, :force, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] image_id # The ID of the image for which Windows fast launch was disabled. # @return [String] # # @!attribute [rw] resource_type # The pre-provisioning resource type that must be cleaned after # turning off Windows fast launch for the Windows AMI. Supported # values include: `snapshot`. # @return [String] # # @!attribute [rw] snapshot_configuration # Parameters that were used for Windows fast launch for the Windows # AMI before Windows fast launch was disabled. This informs the # clean-up process. # @return [Types::FastLaunchSnapshotConfigurationResponse] # # @!attribute [rw] launch_template # The launch template that was used to launch Windows instances from # pre-provisioned snapshots. # @return [Types::FastLaunchLaunchTemplateSpecificationResponse] # # @!attribute [rw] max_parallel_launches # The maximum number of instances that Amazon EC2 can launch at the # same time to create pre-provisioned snapshots for Windows fast # launch. # @return [Integer] # # @!attribute [rw] owner_id # The owner of the Windows AMI for which Windows fast launch was # disabled. # @return [String] # # @!attribute [rw] state # The current state of Windows fast launch for the specified Windows # AMI. # @return [String] # # @!attribute [rw] state_transition_reason # The reason that the state changed for Windows fast launch for the # Windows AMI. # @return [String] # # @!attribute [rw] state_transition_time # The time that the state changed for Windows fast launch for the # Windows AMI. # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisableFastLaunchResult AWS API Documentation # class DisableFastLaunchResult < Struct.new( :image_id, :resource_type, :snapshot_configuration, :launch_template, :max_parallel_launches, :owner_id, :state, :state_transition_reason, :state_transition_time) SENSITIVE = [] include Aws::Structure end # Contains information about the errors that occurred when disabling # fast snapshot restores. # # @!attribute [rw] snapshot_id # The ID of the snapshot. # @return [String] # # @!attribute [rw] fast_snapshot_restore_state_errors # The errors. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisableFastSnapshotRestoreErrorItem AWS API Documentation # class DisableFastSnapshotRestoreErrorItem < Struct.new( :snapshot_id, :fast_snapshot_restore_state_errors) SENSITIVE = [] include Aws::Structure end # Describes an error that occurred when disabling fast snapshot # restores. # # @!attribute [rw] code # The error code. # @return [String] # # @!attribute [rw] message # The error message. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisableFastSnapshotRestoreStateError AWS API Documentation # class DisableFastSnapshotRestoreStateError < Struct.new( :code, :message) SENSITIVE = [] include Aws::Structure end # Contains information about an error that occurred when disabling fast # snapshot restores. # # @!attribute [rw] availability_zone # The Availability Zone. # @return [String] # # @!attribute [rw] error # The error. # @return [Types::DisableFastSnapshotRestoreStateError] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisableFastSnapshotRestoreStateErrorItem AWS API Documentation # class DisableFastSnapshotRestoreStateErrorItem < Struct.new( :availability_zone, :error) SENSITIVE = [] include Aws::Structure end # Describes fast snapshot restores that were successfully disabled. # # @!attribute [rw] snapshot_id # The ID of the snapshot. # @return [String] # # @!attribute [rw] availability_zone # The Availability Zone. # @return [String] # # @!attribute [rw] state # The state of fast snapshot restores for the snapshot. # @return [String] # # @!attribute [rw] state_transition_reason # 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`. # @return [String] # # @!attribute [rw] owner_id # The ID of the Amazon Web Services account that enabled fast snapshot # restores on the snapshot. # @return [String] # # @!attribute [rw] owner_alias # The Amazon Web Services owner alias that enabled fast snapshot # restores on the snapshot. This is intended for future use. # @return [String] # # @!attribute [rw] enabling_time # The time at which fast snapshot restores entered the `enabling` # state. # @return [Time] # # @!attribute [rw] optimizing_time # The time at which fast snapshot restores entered the `optimizing` # state. # @return [Time] # # @!attribute [rw] enabled_time # The time at which fast snapshot restores entered the `enabled` # state. # @return [Time] # # @!attribute [rw] disabling_time # The time at which fast snapshot restores entered the `disabling` # state. # @return [Time] # # @!attribute [rw] disabled_time # The time at which fast snapshot restores entered the `disabled` # state. # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisableFastSnapshotRestoreSuccessItem AWS API Documentation # class DisableFastSnapshotRestoreSuccessItem < Struct.new( :snapshot_id, :availability_zone, :state, :state_transition_reason, :owner_id, :owner_alias, :enabling_time, :optimizing_time, :enabled_time, :disabling_time, :disabled_time) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] availability_zones # One or more Availability Zones. For example, `us-east-2a`. # @return [Array] # # @!attribute [rw] source_snapshot_ids # The IDs of one or more snapshots. For example, # `snap-1234567890abcdef0`. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisableFastSnapshotRestoresRequest AWS API Documentation # class DisableFastSnapshotRestoresRequest < Struct.new( :availability_zones, :source_snapshot_ids, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] successful # Information about the snapshots for which fast snapshot restores # were successfully disabled. # @return [Array] # # @!attribute [rw] unsuccessful # Information about the snapshots for which fast snapshot restores # could not be disabled. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisableFastSnapshotRestoresResult AWS API Documentation # class DisableFastSnapshotRestoresResult < Struct.new( :successful, :unsuccessful) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisableImageBlockPublicAccessRequest AWS API Documentation # class DisableImageBlockPublicAccessRequest < Struct.new( :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] image_block_public_access_state # Returns `unblocked` if the request succeeds; otherwise, it returns # an error. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisableImageBlockPublicAccessResult AWS API Documentation # class DisableImageBlockPublicAccessResult < Struct.new( :image_block_public_access_state) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] image_id # The ID of the AMI. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisableImageDeprecationRequest AWS API Documentation # class DisableImageDeprecationRequest < Struct.new( :image_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] return # Returns `true` if the request succeeds; otherwise, it returns an # error. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisableImageDeprecationResult AWS API Documentation # class DisableImageDeprecationResult < Struct.new( :return) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] image_id # The ID of the AMI. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisableImageRequest AWS API Documentation # class DisableImageRequest < Struct.new( :image_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] return # Returns `true` if the request succeeds; otherwise, it returns an # error. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisableImageResult AWS API Documentation # class DisableImageResult < Struct.new( :return) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # A check for whether you have the required permissions for the action # without actually making the request and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] delegated_admin_account_id # The Organizations member account ID that you want to disable as IPAM # account. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisableIpamOrganizationAdminAccountRequest AWS API Documentation # class DisableIpamOrganizationAdminAccountRequest < Struct.new( :dry_run, :delegated_admin_account_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] success # The result of disabling the IPAM account. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisableIpamOrganizationAdminAccountResult AWS API Documentation # class DisableIpamOrganizationAdminAccountResult < Struct.new( :success) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisableSerialConsoleAccessRequest AWS API Documentation # class DisableSerialConsoleAccessRequest < Struct.new( :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] serial_console_access_enabled # If `true`, access to the EC2 serial console of all instances is # enabled for your account. If `false`, access to the EC2 serial # console of all instances is disabled for your account. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisableSerialConsoleAccessResult AWS API Documentation # class DisableSerialConsoleAccessResult < Struct.new( :serial_console_access_enabled) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisableSnapshotBlockPublicAccessRequest AWS API Documentation # class DisableSnapshotBlockPublicAccessRequest < Struct.new( :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] state # Returns `unblocked` if the request succeeds. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisableSnapshotBlockPublicAccessResult AWS API Documentation # class DisableSnapshotBlockPublicAccessResult < Struct.new( :state) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_route_table_id # The ID of the propagation route table. # @return [String] # # @!attribute [rw] transit_gateway_attachment_id # The ID of the attachment. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] transit_gateway_route_table_announcement_id # The ID of the route table announcement. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisableTransitGatewayRouteTablePropagationRequest AWS API Documentation # class DisableTransitGatewayRouteTablePropagationRequest < Struct.new( :transit_gateway_route_table_id, :transit_gateway_attachment_id, :dry_run, :transit_gateway_route_table_announcement_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] propagation # Information about route propagation. # @return [Types::TransitGatewayPropagation] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisableTransitGatewayRouteTablePropagationResult AWS API Documentation # class DisableTransitGatewayRouteTablePropagationResult < Struct.new( :propagation) SENSITIVE = [] include Aws::Structure end # Contains the parameters for DisableVgwRoutePropagation. # # @!attribute [rw] gateway_id # The ID of the virtual private gateway. # @return [String] # # @!attribute [rw] route_table_id # The ID of the route table. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisableVgwRoutePropagationRequest AWS API Documentation # class DisableVgwRoutePropagationRequest < Struct.new( :gateway_id, :route_table_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] vpc_id # The ID of the VPC. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisableVpcClassicLinkDnsSupportRequest AWS API Documentation # class DisableVpcClassicLinkDnsSupportRequest < Struct.new( :vpc_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] return # Returns `true` if the request succeeds; otherwise, it returns an # error. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisableVpcClassicLinkDnsSupportResult AWS API Documentation # class DisableVpcClassicLinkDnsSupportResult < Struct.new( :return) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] vpc_id # The ID of the VPC. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisableVpcClassicLinkRequest AWS API Documentation # class DisableVpcClassicLinkRequest < Struct.new( :dry_run, :vpc_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] return # Returns `true` if the request succeeds; otherwise, it returns an # error. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisableVpcClassicLinkResult AWS API Documentation # class DisableVpcClassicLinkResult < Struct.new( :return) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] association_id # The association ID. This parameter is required. # @return [String] # # @!attribute [rw] public_ip # Deprecated. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisassociateAddressRequest AWS API Documentation # class DisassociateAddressRequest < Struct.new( :association_id, :public_ip, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] client_vpn_endpoint_id # The ID of the Client VPN endpoint from which to disassociate the # target network. # @return [String] # # @!attribute [rw] association_id # The ID of the target network association. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisassociateClientVpnTargetNetworkRequest AWS API Documentation # class DisassociateClientVpnTargetNetworkRequest < Struct.new( :client_vpn_endpoint_id, :association_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] association_id # The ID of the target network association. # @return [String] # # @!attribute [rw] status # The current state of the target network association. # @return [Types::AssociationStatus] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisassociateClientVpnTargetNetworkResult AWS API Documentation # class DisassociateClientVpnTargetNetworkResult < Struct.new( :association_id, :status) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] certificate_arn # The ARN of the ACM certificate from which to disassociate the IAM # role. # @return [String] # # @!attribute [rw] role_arn # The ARN of the IAM role to disassociate. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisassociateEnclaveCertificateIamRoleRequest AWS API Documentation # class DisassociateEnclaveCertificateIamRoleRequest < Struct.new( :certificate_arn, :role_arn, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] return # Returns `true` if the request succeeds; otherwise, it returns an # error. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisassociateEnclaveCertificateIamRoleResult AWS API Documentation # class DisassociateEnclaveCertificateIamRoleResult < Struct.new( :return) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] association_id # The ID of the IAM instance profile association. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisassociateIamInstanceProfileRequest AWS API Documentation # class DisassociateIamInstanceProfileRequest < Struct.new( :association_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] iam_instance_profile_association # Information about the IAM instance profile association. # @return [Types::IamInstanceProfileAssociation] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisassociateIamInstanceProfileResult AWS API Documentation # class DisassociateIamInstanceProfileResult < Struct.new( :iam_instance_profile_association) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] instance_event_window_id # The ID of the event window. # @return [String] # # @!attribute [rw] association_target # One or more targets to disassociate from the specified event window. # @return [Types::InstanceEventWindowDisassociationRequest] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisassociateInstanceEventWindowRequest AWS API Documentation # class DisassociateInstanceEventWindowRequest < Struct.new( :dry_run, :instance_event_window_id, :association_target) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] instance_event_window # Information about the event window. # @return [Types::InstanceEventWindow] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisassociateInstanceEventWindowResult AWS API Documentation # class DisassociateInstanceEventWindowResult < Struct.new( :instance_event_window) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] asn # A public 2-byte or 4-byte ASN. # @return [String] # # @!attribute [rw] cidr # A BYOIP CIDR. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisassociateIpamByoasnRequest AWS API Documentation # class DisassociateIpamByoasnRequest < Struct.new( :dry_run, :asn, :cidr) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] asn_association # An ASN and BYOIP CIDR association. # @return [Types::AsnAssociation] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisassociateIpamByoasnResult AWS API Documentation # class DisassociateIpamByoasnResult < Struct.new( :asn_association) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # A check for whether you have the required permissions for the action # without actually making the request and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] ipam_resource_discovery_association_id # A resource discovery association ID. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisassociateIpamResourceDiscoveryRequest AWS API Documentation # class DisassociateIpamResourceDiscoveryRequest < Struct.new( :dry_run, :ipam_resource_discovery_association_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] ipam_resource_discovery_association # A resource discovery association. # @return [Types::IpamResourceDiscoveryAssociation] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisassociateIpamResourceDiscoveryResult AWS API Documentation # class DisassociateIpamResourceDiscoveryResult < Struct.new( :ipam_resource_discovery_association) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] nat_gateway_id # The ID of the NAT gateway. # @return [String] # # @!attribute [rw] association_ids # The association IDs of EIPs that have been associated with the NAT # gateway. # @return [Array] # # @!attribute [rw] max_drain_duration_seconds # The maximum amount of time to wait (in seconds) before forcibly # releasing the IP addresses if connections are still in progress. # Default value is 350 seconds. # @return [Integer] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisassociateNatGatewayAddressRequest AWS API Documentation # class DisassociateNatGatewayAddressRequest < Struct.new( :nat_gateway_id, :association_ids, :max_drain_duration_seconds, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] nat_gateway_id # The ID of the NAT gateway. # @return [String] # # @!attribute [rw] nat_gateway_addresses # Information about the NAT gateway IP addresses. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisassociateNatGatewayAddressResult AWS API Documentation # class DisassociateNatGatewayAddressResult < Struct.new( :nat_gateway_id, :nat_gateway_addresses) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] association_id # The association ID representing the current association between the # route table and subnet or gateway. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisassociateRouteTableRequest AWS API Documentation # class DisassociateRouteTableRequest < Struct.new( :association_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] association_id # The association ID for the CIDR block. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisassociateSubnetCidrBlockRequest AWS API Documentation # class DisassociateSubnetCidrBlockRequest < Struct.new( :association_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] ipv_6_cidr_block_association # Information about the IPv6 CIDR block association. # @return [Types::SubnetIpv6CidrBlockAssociation] # # @!attribute [rw] subnet_id # The ID of the subnet. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisassociateSubnetCidrBlockResult AWS API Documentation # class DisassociateSubnetCidrBlockResult < Struct.new( :ipv_6_cidr_block_association, :subnet_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_multicast_domain_id # The ID of the transit gateway multicast domain. # @return [String] # # @!attribute [rw] transit_gateway_attachment_id # The ID of the attachment. # @return [String] # # @!attribute [rw] subnet_ids # The IDs of the subnets; # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisassociateTransitGatewayMulticastDomainRequest AWS API Documentation # class DisassociateTransitGatewayMulticastDomainRequest < Struct.new( :transit_gateway_multicast_domain_id, :transit_gateway_attachment_id, :subnet_ids, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] associations # Information about the association. # @return [Types::TransitGatewayMulticastDomainAssociations] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisassociateTransitGatewayMulticastDomainResult AWS API Documentation # class DisassociateTransitGatewayMulticastDomainResult < Struct.new( :associations) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_policy_table_id # The ID of the disassociated policy table. # @return [String] # # @!attribute [rw] transit_gateway_attachment_id # The ID of the transit gateway attachment to disassociate from the # policy table. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisassociateTransitGatewayPolicyTableRequest AWS API Documentation # class DisassociateTransitGatewayPolicyTableRequest < Struct.new( :transit_gateway_policy_table_id, :transit_gateway_attachment_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] association # Returns details about the transit gateway policy table # disassociation. # @return [Types::TransitGatewayPolicyTableAssociation] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisassociateTransitGatewayPolicyTableResult AWS API Documentation # class DisassociateTransitGatewayPolicyTableResult < Struct.new( :association) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_route_table_id # The ID of the transit gateway route table. # @return [String] # # @!attribute [rw] transit_gateway_attachment_id # The ID of the attachment. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisassociateTransitGatewayRouteTableRequest AWS API Documentation # class DisassociateTransitGatewayRouteTableRequest < Struct.new( :transit_gateway_route_table_id, :transit_gateway_attachment_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] association # Information about the association. # @return [Types::TransitGatewayAssociation] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisassociateTransitGatewayRouteTableResult AWS API Documentation # class DisassociateTransitGatewayRouteTableResult < Struct.new( :association) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] association_id # The ID of the association # @return [String] # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. For more information, see [How to Ensure # Idempotency][1]. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisassociateTrunkInterfaceRequest AWS API Documentation # class DisassociateTrunkInterfaceRequest < Struct.new( :association_id, :client_token, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] return # Returns `true` if the request succeeds; otherwise, it returns an # error. # @return [Boolean] # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. For more information, see [How to Ensure # Idempotency][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Run_Instance_Idempotency.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisassociateTrunkInterfaceResult AWS API Documentation # class DisassociateTrunkInterfaceResult < Struct.new( :return, :client_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] association_id # The association ID for the CIDR block. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisassociateVpcCidrBlockRequest AWS API Documentation # class DisassociateVpcCidrBlockRequest < Struct.new( :association_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] ipv_6_cidr_block_association # Information about the IPv6 CIDR block association. # @return [Types::VpcIpv6CidrBlockAssociation] # # @!attribute [rw] cidr_block_association # Information about the IPv4 CIDR block association. # @return [Types::VpcCidrBlockAssociation] # # @!attribute [rw] vpc_id # The ID of the VPC. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DisassociateVpcCidrBlockResult AWS API Documentation # class DisassociateVpcCidrBlockResult < Struct.new( :ipv_6_cidr_block_association, :cidr_block_association, :vpc_id) SENSITIVE = [] include Aws::Structure end # Describes a disk image. # # @!attribute [rw] description # A description of the disk image. # @return [String] # # @!attribute [rw] image # Information about the disk image. # @return [Types::DiskImageDetail] # # @!attribute [rw] volume # Information about the volume. # @return [Types::VolumeDetail] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DiskImage AWS API Documentation # class DiskImage < Struct.new( :description, :image, :volume) SENSITIVE = [] include Aws::Structure end # Describes a disk image. # # @!attribute [rw] checksum # The checksum computed for the disk image. # @return [String] # # @!attribute [rw] format # The disk image format. # @return [String] # # @!attribute [rw] import_manifest_url # 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][1] topic in the *Amazon Simple # Storage Service Developer Guide*. # # For information about the import manifest referenced by this API # action, see [VM Import Manifest][2]. # # # # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/RESTAuthentication.html # [2]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/manifest.html # @return [String] # # @!attribute [rw] size # The size of the disk image, in GiB. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DiskImageDescription AWS API Documentation # class DiskImageDescription < Struct.new( :checksum, :format, :import_manifest_url, :size) SENSITIVE = [:import_manifest_url] include Aws::Structure end # Describes a disk image. # # @!attribute [rw] bytes # The size of the disk image, in GiB. # @return [Integer] # # @!attribute [rw] format # The disk image format. # @return [String] # # @!attribute [rw] import_manifest_url # 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][1] topic in the *Amazon Simple # Storage Service Developer Guide*. # # For information about the import manifest referenced by this API # action, see [VM Import Manifest][2]. # # # # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/RESTAuthentication.html # [2]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/manifest.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DiskImageDetail AWS API Documentation # class DiskImageDetail < Struct.new( :bytes, :format, :import_manifest_url) SENSITIVE = [:import_manifest_url] include Aws::Structure end # Describes a disk image volume. # # @!attribute [rw] id # The volume identifier. # @return [String] # # @!attribute [rw] size # The size of the volume, in GiB. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DiskImageVolumeDescription AWS API Documentation # class DiskImageVolumeDescription < Struct.new( :id, :size) SENSITIVE = [] include Aws::Structure end # Describes a disk. # # @!attribute [rw] size_in_gb # The size of the disk in GB. # @return [Integer] # # @!attribute [rw] count # The number of disks with this configuration. # @return [Integer] # # @!attribute [rw] type # The type of disk. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DiskInfo AWS API Documentation # class DiskInfo < Struct.new( :size_in_gb, :count, :type) SENSITIVE = [] include Aws::Structure end # Describes a DNS entry. # # @!attribute [rw] dns_name # The DNS name. # @return [String] # # @!attribute [rw] hosted_zone_id # The ID of the private hosted zone. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DnsEntry AWS API Documentation # class DnsEntry < Struct.new( :dns_name, :hosted_zone_id) SENSITIVE = [] include Aws::Structure end # Describes the DNS options for an endpoint. # # @!attribute [rw] dns_record_ip_type # The DNS records created for the endpoint. # @return [String] # # @!attribute [rw] private_dns_only_for_inbound_resolver_endpoint # Indicates whether to enable private DNS only for inbound endpoints. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DnsOptions AWS API Documentation # class DnsOptions < Struct.new( :dns_record_ip_type, :private_dns_only_for_inbound_resolver_endpoint) SENSITIVE = [] include Aws::Structure end # Describes the DNS options for an endpoint. # # @!attribute [rw] dns_record_ip_type # The DNS records created for the endpoint. # @return [String] # # @!attribute [rw] private_dns_only_for_inbound_resolver_endpoint # 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. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DnsOptionsSpecification AWS API Documentation # class DnsOptionsSpecification < Struct.new( :dns_record_ip_type, :private_dns_only_for_inbound_resolver_endpoint) SENSITIVE = [] include Aws::Structure end # Information about the DNS server to be used. # # @!attribute [rw] custom_dns_servers # 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. # @return [Array] # # @!attribute [rw] enabled # Indicates whether DNS servers should be used. Specify `False` to # delete the existing DNS servers. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/DnsServersOptionsModifyStructure AWS API Documentation # class DnsServersOptionsModifyStructure < Struct.new( :custom_dns_servers, :enabled) SENSITIVE = [] include Aws::Structure end # Describes a block device for an EBS volume. # # @!attribute [rw] delete_on_termination # Indicates whether the EBS volume is deleted on instance termination. # For more information, see [Preserving Amazon EBS volumes on instance # termination][1] in the *Amazon EC2 User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/terminating-instances.html#preserving-volumes-on-termination # @return [Boolean] # # @!attribute [rw] iops # 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][1]. 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. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#ec2-nitro-instances # @return [Integer] # # @!attribute [rw] snapshot_id # The ID of the snapshot. # @return [String] # # @!attribute [rw] volume_size # 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 # @return [Integer] # # @!attribute [rw] volume_type # The volume type. For more information, see [Amazon EBS volume # types][1] in the *Amazon EBS User Guide*. # # # # [1]: https://docs.aws.amazon.com/ebs/latest/userguide/ebs-volume-types.html # @return [String] # # @!attribute [rw] kms_key_id # Identifier (key ID, key alias, ID ARN, or alias ARN) for a customer # managed CMK under which the EBS volume is encrypted. # # This parameter is only supported on `BlockDeviceMapping` objects # called by [RunInstances][1], [RequestSpotFleet][2], and # [RequestSpotInstances][3]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html # [2]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RequestSpotFleet.html # [3]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RequestSpotInstances.html # @return [String] # # @!attribute [rw] throughput # 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. # @return [Integer] # # @!attribute [rw] outpost_arn # The ARN of the Outpost on which the snapshot is stored. # # This parameter is not supported when using [CreateImage][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateImage.html # @return [String] # # @!attribute [rw] encrypted # 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][1] 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][2]. # # 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. # # # # [1]: https://docs.aws.amazon.com/ebs/latest/userguide/ebs-encryption.html#encryption-parameters # [2]: https://docs.aws.amazon.com/ebs/latest/userguide/ebs-encryption-requirements.html#ebs-encryption_supported_instances # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EbsBlockDevice AWS API Documentation # class EbsBlockDevice < Struct.new( :delete_on_termination, :iops, :snapshot_id, :volume_size, :volume_type, :kms_key_id, :throughput, :outpost_arn, :encrypted) SENSITIVE = [] include Aws::Structure end # Describes the Amazon EBS features supported by the instance type. # # @!attribute [rw] ebs_optimized_support # Indicates whether the instance type is Amazon EBS-optimized. For # more information, see [Amazon EBS-optimized instances][1] in *Amazon # EC2 User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSOptimized.html # @return [String] # # @!attribute [rw] encryption_support # Indicates whether Amazon EBS encryption is supported. # @return [String] # # @!attribute [rw] ebs_optimized_info # Describes the optimized EBS performance for the instance type. # @return [Types::EbsOptimizedInfo] # # @!attribute [rw] nvme_support # Indicates whether non-volatile memory express (NVMe) is supported. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EbsInfo AWS API Documentation # class EbsInfo < Struct.new( :ebs_optimized_support, :encryption_support, :ebs_optimized_info, :nvme_support) SENSITIVE = [] include Aws::Structure end # Describes a parameter used to set up an EBS volume in a block device # mapping. # # @!attribute [rw] attach_time # The time stamp when the attachment initiated. # @return [Time] # # @!attribute [rw] delete_on_termination # Indicates whether the volume is deleted on instance termination. # @return [Boolean] # # @!attribute [rw] status # The attachment state. # @return [String] # # @!attribute [rw] volume_id # The ID of the EBS volume. # @return [String] # # @!attribute [rw] associated_resource # The ARN of the Amazon ECS or Fargate task to which the volume is # attached. # @return [String] # # @!attribute [rw] volume_owner_id # 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. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EbsInstanceBlockDevice AWS API Documentation # class EbsInstanceBlockDevice < Struct.new( :attach_time, :delete_on_termination, :status, :volume_id, :associated_resource, :volume_owner_id) SENSITIVE = [] include Aws::Structure end # Describes information used to set up an EBS volume specified in a # block device mapping. # # @!attribute [rw] delete_on_termination # Indicates whether the volume is deleted on instance termination. # @return [Boolean] # # @!attribute [rw] volume_id # The ID of the EBS volume. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EbsInstanceBlockDeviceSpecification AWS API Documentation # class EbsInstanceBlockDeviceSpecification < Struct.new( :delete_on_termination, :volume_id) SENSITIVE = [] include Aws::Structure end # Describes the optimized EBS performance for supported instance types. # # @!attribute [rw] baseline_bandwidth_in_mbps # The baseline bandwidth performance for an EBS-optimized instance # type, in Mbps. # @return [Integer] # # @!attribute [rw] baseline_throughput_in_m_bps # The baseline throughput performance for an EBS-optimized instance # type, in MB/s. # @return [Float] # # @!attribute [rw] baseline_iops # The baseline input/output storage operations per seconds for an # EBS-optimized instance type. # @return [Integer] # # @!attribute [rw] maximum_bandwidth_in_mbps # The maximum bandwidth performance for an EBS-optimized instance # type, in Mbps. # @return [Integer] # # @!attribute [rw] maximum_throughput_in_m_bps # The maximum throughput performance for an EBS-optimized instance # type, in MB/s. # @return [Float] # # @!attribute [rw] maximum_iops # The maximum input/output storage operations per second for an # EBS-optimized instance type. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EbsOptimizedInfo AWS API Documentation # class EbsOptimizedInfo < Struct.new( :baseline_bandwidth_in_mbps, :baseline_throughput_in_m_bps, :baseline_iops, :maximum_bandwidth_in_mbps, :maximum_throughput_in_m_bps, :maximum_iops) SENSITIVE = [] include Aws::Structure end # The EC2 Instance Connect Endpoint. # # @!attribute [rw] owner_id # The ID of the Amazon Web Services account that created the EC2 # Instance Connect Endpoint. # @return [String] # # @!attribute [rw] instance_connect_endpoint_id # The ID of the EC2 Instance Connect Endpoint. # @return [String] # # @!attribute [rw] instance_connect_endpoint_arn # The Amazon Resource Name (ARN) of the EC2 Instance Connect Endpoint. # @return [String] # # @!attribute [rw] state # The current state of the EC2 Instance Connect Endpoint. # @return [String] # # @!attribute [rw] state_message # The message for the current state of the EC2 Instance Connect # Endpoint. Can include a failure message. # @return [String] # # @!attribute [rw] dns_name # The DNS name of the EC2 Instance Connect Endpoint. # @return [String] # # @!attribute [rw] fips_dns_name # @return [String] # # @!attribute [rw] network_interface_ids # The ID of the elastic network interface that Amazon EC2 # automatically created when creating the EC2 Instance Connect # Endpoint. # @return [Array] # # @!attribute [rw] vpc_id # The ID of the VPC in which the EC2 Instance Connect Endpoint was # created. # @return [String] # # @!attribute [rw] availability_zone # The Availability Zone of the EC2 Instance Connect Endpoint. # @return [String] # # @!attribute [rw] created_at # The date and time that the EC2 Instance Connect Endpoint was # created. # @return [Time] # # @!attribute [rw] subnet_id # The ID of the subnet in which the EC2 Instance Connect Endpoint was # created. # @return [String] # # @!attribute [rw] preserve_client_ip # 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` # @return [Boolean] # # @!attribute [rw] security_group_ids # 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. # @return [Array] # # @!attribute [rw] tags # The tags assigned to the EC2 Instance Connect Endpoint. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Ec2InstanceConnectEndpoint AWS API Documentation # class Ec2InstanceConnectEndpoint < Struct.new( :owner_id, :instance_connect_endpoint_id, :instance_connect_endpoint_arn, :state, :state_message, :dns_name, :fips_dns_name, :network_interface_ids, :vpc_id, :availability_zone, :created_at, :subnet_id, :preserve_client_ip, :security_group_ids, :tags) SENSITIVE = [] include Aws::Structure end # Describes the Elastic Fabric Adapters for the instance type. # # @!attribute [rw] maximum_efa_interfaces # The maximum number of Elastic Fabric Adapters for the instance type. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EfaInfo AWS API Documentation # class EfaInfo < Struct.new( :maximum_efa_interfaces) SENSITIVE = [] include Aws::Structure end # Describes an egress-only internet gateway. # # @!attribute [rw] attachments # Information about the attachment of the egress-only internet # gateway. # @return [Array] # # @!attribute [rw] egress_only_internet_gateway_id # The ID of the egress-only internet gateway. # @return [String] # # @!attribute [rw] tags # The tags assigned to the egress-only internet gateway. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EgressOnlyInternetGateway AWS API Documentation # class EgressOnlyInternetGateway < Struct.new( :attachments, :egress_only_internet_gateway_id, :tags) SENSITIVE = [] include Aws::Structure end # 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. # # # # Describes the association between an instance and an Elastic Graphics # accelerator. # # @!attribute [rw] elastic_gpu_id # The ID of the Elastic Graphics accelerator. # @return [String] # # @!attribute [rw] elastic_gpu_association_id # The ID of the association. # @return [String] # # @!attribute [rw] elastic_gpu_association_state # The state of the association between the instance and the Elastic # Graphics accelerator. # @return [String] # # @!attribute [rw] elastic_gpu_association_time # The time the Elastic Graphics accelerator was associated with the # instance. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ElasticGpuAssociation AWS API Documentation # class ElasticGpuAssociation < Struct.new( :elastic_gpu_id, :elastic_gpu_association_id, :elastic_gpu_association_state, :elastic_gpu_association_time) SENSITIVE = [] include Aws::Structure end # 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. # # # # Describes the status of an Elastic Graphics accelerator. # # @!attribute [rw] status # The health status. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ElasticGpuHealth AWS API Documentation # class ElasticGpuHealth < Struct.new( :status) SENSITIVE = [] include Aws::Structure end # 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. # # # # A specification for an Elastic Graphics accelerator. # # @!attribute [rw] type # The type of Elastic Graphics accelerator. For more information about # the values to specify for `Type`, see [Elastic Graphics Basics][1], # specifically the Elastic Graphics accelerator column, in the *Amazon # Elastic Compute Cloud User Guide for Windows Instances*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/elastic-graphics.html#elastic-graphics-basics # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ElasticGpuSpecification AWS API Documentation # class ElasticGpuSpecification < Struct.new( :type) SENSITIVE = [] include Aws::Structure end # 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. # # # # @!attribute [rw] type # 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. # # # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ElasticGpuSpecificationResponse AWS API Documentation # class ElasticGpuSpecificationResponse < Struct.new( :type) SENSITIVE = [] include Aws::Structure end # 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. # # # # Describes an Elastic Graphics accelerator. # # @!attribute [rw] elastic_gpu_id # The ID of the Elastic Graphics accelerator. # @return [String] # # @!attribute [rw] availability_zone # The Availability Zone in the which the Elastic Graphics accelerator # resides. # @return [String] # # @!attribute [rw] elastic_gpu_type # The type of Elastic Graphics accelerator. # @return [String] # # @!attribute [rw] elastic_gpu_health # The status of the Elastic Graphics accelerator. # @return [Types::ElasticGpuHealth] # # @!attribute [rw] elastic_gpu_state # The state of the Elastic Graphics accelerator. # @return [String] # # @!attribute [rw] instance_id # The ID of the instance to which the Elastic Graphics accelerator is # attached. # @return [String] # # @!attribute [rw] tags # The tags assigned to the Elastic Graphics accelerator. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ElasticGpus AWS API Documentation # class ElasticGpus < Struct.new( :elastic_gpu_id, :availability_zone, :elastic_gpu_type, :elastic_gpu_health, :elastic_gpu_state, :instance_id, :tags) SENSITIVE = [] include Aws::Structure end # Describes an elastic inference accelerator. # # @!attribute [rw] type # The type of elastic inference accelerator. The possible values are # `eia1.medium`, `eia1.large`, `eia1.xlarge`, `eia2.medium`, # `eia2.large`, and `eia2.xlarge`. # @return [String] # # @!attribute [rw] count # The number of elastic inference accelerators to attach to the # instance. # # Default: 1 # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ElasticInferenceAccelerator AWS API Documentation # class ElasticInferenceAccelerator < Struct.new( :type, :count) SENSITIVE = [] include Aws::Structure end # Describes the association between an instance and an elastic inference # accelerator. # # @!attribute [rw] elastic_inference_accelerator_arn # The Amazon Resource Name (ARN) of the elastic inference accelerator. # @return [String] # # @!attribute [rw] elastic_inference_accelerator_association_id # The ID of the association. # @return [String] # # @!attribute [rw] elastic_inference_accelerator_association_state # The state of the elastic inference accelerator. # @return [String] # # @!attribute [rw] elastic_inference_accelerator_association_time # The time at which the elastic inference accelerator is associated # with an instance. # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ElasticInferenceAcceleratorAssociation AWS API Documentation # class ElasticInferenceAcceleratorAssociation < Struct.new( :elastic_inference_accelerator_arn, :elastic_inference_accelerator_association_id, :elastic_inference_accelerator_association_state, :elastic_inference_accelerator_association_time) SENSITIVE = [] include Aws::Structure end # 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. # # @!attribute [rw] ena_srd_enabled # Indicates whether ENA Express is enabled for the network interface. # @return [Boolean] # # @!attribute [rw] ena_srd_udp_specification # Configures ENA Express for UDP network traffic. # @return [Types::EnaSrdUdpSpecification] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnaSrdSpecification AWS API Documentation # class EnaSrdSpecification < Struct.new( :ena_srd_enabled, :ena_srd_udp_specification) SENSITIVE = [] include Aws::Structure end # Launch instances with ENA Express settings configured from your launch # template. # # @!attribute [rw] ena_srd_enabled # Specifies whether ENA Express is enabled for the network interface # when you launch an instance from your launch template. # @return [Boolean] # # @!attribute [rw] ena_srd_udp_specification # Contains ENA Express settings for UDP network traffic in your launch # template. # @return [Types::EnaSrdUdpSpecificationRequest] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnaSrdSpecificationRequest AWS API Documentation # class EnaSrdSpecificationRequest < Struct.new( :ena_srd_enabled, :ena_srd_udp_specification) SENSITIVE = [] include Aws::Structure end # 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. # # @!attribute [rw] ena_srd_udp_enabled # Indicates whether UDP traffic to and from the instance uses ENA # Express. To specify this setting, you must first enable ENA Express. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnaSrdUdpSpecification AWS API Documentation # class EnaSrdUdpSpecification < Struct.new( :ena_srd_udp_enabled) SENSITIVE = [] include Aws::Structure end # Configures ENA Express for UDP network traffic from your launch # template. # # @!attribute [rw] ena_srd_udp_enabled # 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. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnaSrdUdpSpecificationRequest AWS API Documentation # class EnaSrdUdpSpecificationRequest < Struct.new( :ena_srd_udp_enabled) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] allocation_id # The allocation ID of an Elastic IP address. # @return [String] # # @!attribute [rw] transfer_account_id # The ID of the account that you want to transfer the Elastic IP # address to. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableAddressTransferRequest AWS API Documentation # class EnableAddressTransferRequest < Struct.new( :allocation_id, :transfer_account_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] address_transfer # An Elastic IP address transfer. # @return [Types::AddressTransfer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableAddressTransferResult AWS API Documentation # class EnableAddressTransferResult < Struct.new( :address_transfer) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] source # The source Region (like `us-east-1`) or Availability Zone ID (like # `use1-az1`) that the metric subscription is enabled for. If you use # Availability Zone IDs, the Source and Destination Availability Zones # must be in the same Region. # @return [String] # # @!attribute [rw] destination # The target Region (like `us-east-2`) or Availability Zone ID (like # `use2-az2`) that the metric subscription is enabled for. If you use # Availability Zone IDs, the Source and Destination Availability Zones # must be in the same Region. # @return [String] # # @!attribute [rw] metric # The metric used for the enabled subscription. # @return [String] # # @!attribute [rw] statistic # The statistic used for the enabled subscription. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableAwsNetworkPerformanceMetricSubscriptionRequest AWS API Documentation # class EnableAwsNetworkPerformanceMetricSubscriptionRequest < Struct.new( :source, :destination, :metric, :statistic, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] output # Indicates whether the subscribe action was successful. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableAwsNetworkPerformanceMetricSubscriptionResult AWS API Documentation # class EnableAwsNetworkPerformanceMetricSubscriptionResult < Struct.new( :output) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableEbsEncryptionByDefaultRequest AWS API Documentation # class EnableEbsEncryptionByDefaultRequest < Struct.new( :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] ebs_encryption_by_default # The updated status of encryption by default. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableEbsEncryptionByDefaultResult AWS API Documentation # class EnableEbsEncryptionByDefaultResult < Struct.new( :ebs_encryption_by_default) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] image_id # Specify the ID of the image for which to enable Windows fast launch. # @return [String] # # @!attribute [rw] resource_type # The type of resource to use for pre-provisioning the AMI for Windows # fast launch. Supported values include: `snapshot`, which is the # default value. # @return [String] # # @!attribute [rw] snapshot_configuration # Configuration settings for creating and managing the snapshots that # are used for pre-provisioning the AMI for Windows fast launch. The # associated `ResourceType` must be `snapshot`. # @return [Types::FastLaunchSnapshotConfigurationRequest] # # @!attribute [rw] launch_template # The launch template to use when launching Windows instances from # pre-provisioned snapshots. Launch template parameters can include # either the name or ID of the launch template, but not both. # @return [Types::FastLaunchLaunchTemplateSpecificationRequest] # # @!attribute [rw] max_parallel_launches # The maximum number of instances that Amazon EC2 can launch at the # same time to create pre-provisioned snapshots for Windows fast # launch. Value must be `6` or greater. # @return [Integer] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableFastLaunchRequest AWS API Documentation # class EnableFastLaunchRequest < Struct.new( :image_id, :resource_type, :snapshot_configuration, :launch_template, :max_parallel_launches, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] image_id # The image ID that identifies the AMI for which Windows fast launch # was enabled. # @return [String] # # @!attribute [rw] resource_type # The type of resource that was defined for pre-provisioning the AMI # for Windows fast launch. # @return [String] # # @!attribute [rw] snapshot_configuration # Settings to create and manage the pre-provisioned snapshots that # Amazon EC2 uses for faster launches from the Windows AMI. This # property is returned when the associated `resourceType` is # `snapshot`. # @return [Types::FastLaunchSnapshotConfigurationResponse] # # @!attribute [rw] launch_template # The launch template that is used when launching Windows instances # from pre-provisioned snapshots. # @return [Types::FastLaunchLaunchTemplateSpecificationResponse] # # @!attribute [rw] max_parallel_launches # The maximum number of instances that Amazon EC2 can launch at the # same time to create pre-provisioned snapshots for Windows fast # launch. # @return [Integer] # # @!attribute [rw] owner_id # The owner ID for the AMI for which Windows fast launch was enabled. # @return [String] # # @!attribute [rw] state # The current state of Windows fast launch for the specified AMI. # @return [String] # # @!attribute [rw] state_transition_reason # The reason that the state changed for Windows fast launch for the # AMI. # @return [String] # # @!attribute [rw] state_transition_time # The time that the state changed for Windows fast launch for the AMI. # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableFastLaunchResult AWS API Documentation # class EnableFastLaunchResult < Struct.new( :image_id, :resource_type, :snapshot_configuration, :launch_template, :max_parallel_launches, :owner_id, :state, :state_transition_reason, :state_transition_time) SENSITIVE = [] include Aws::Structure end # Contains information about the errors that occurred when enabling fast # snapshot restores. # # @!attribute [rw] snapshot_id # The ID of the snapshot. # @return [String] # # @!attribute [rw] fast_snapshot_restore_state_errors # The errors. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableFastSnapshotRestoreErrorItem AWS API Documentation # class EnableFastSnapshotRestoreErrorItem < Struct.new( :snapshot_id, :fast_snapshot_restore_state_errors) SENSITIVE = [] include Aws::Structure end # Describes an error that occurred when enabling fast snapshot restores. # # @!attribute [rw] code # The error code. # @return [String] # # @!attribute [rw] message # The error message. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableFastSnapshotRestoreStateError AWS API Documentation # class EnableFastSnapshotRestoreStateError < Struct.new( :code, :message) SENSITIVE = [] include Aws::Structure end # Contains information about an error that occurred when enabling fast # snapshot restores. # # @!attribute [rw] availability_zone # The Availability Zone. # @return [String] # # @!attribute [rw] error # The error. # @return [Types::EnableFastSnapshotRestoreStateError] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableFastSnapshotRestoreStateErrorItem AWS API Documentation # class EnableFastSnapshotRestoreStateErrorItem < Struct.new( :availability_zone, :error) SENSITIVE = [] include Aws::Structure end # Describes fast snapshot restores that were successfully enabled. # # @!attribute [rw] snapshot_id # The ID of the snapshot. # @return [String] # # @!attribute [rw] availability_zone # The Availability Zone. # @return [String] # # @!attribute [rw] state # The state of fast snapshot restores. # @return [String] # # @!attribute [rw] state_transition_reason # 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`. # @return [String] # # @!attribute [rw] owner_id # The ID of the Amazon Web Services account that enabled fast snapshot # restores on the snapshot. # @return [String] # # @!attribute [rw] owner_alias # The Amazon Web Services owner alias that enabled fast snapshot # restores on the snapshot. This is intended for future use. # @return [String] # # @!attribute [rw] enabling_time # The time at which fast snapshot restores entered the `enabling` # state. # @return [Time] # # @!attribute [rw] optimizing_time # The time at which fast snapshot restores entered the `optimizing` # state. # @return [Time] # # @!attribute [rw] enabled_time # The time at which fast snapshot restores entered the `enabled` # state. # @return [Time] # # @!attribute [rw] disabling_time # The time at which fast snapshot restores entered the `disabling` # state. # @return [Time] # # @!attribute [rw] disabled_time # The time at which fast snapshot restores entered the `disabled` # state. # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableFastSnapshotRestoreSuccessItem AWS API Documentation # class EnableFastSnapshotRestoreSuccessItem < Struct.new( :snapshot_id, :availability_zone, :state, :state_transition_reason, :owner_id, :owner_alias, :enabling_time, :optimizing_time, :enabled_time, :disabling_time, :disabled_time) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] availability_zones # One or more Availability Zones. For example, `us-east-2a`. # @return [Array] # # @!attribute [rw] source_snapshot_ids # The IDs of one or more snapshots. For example, # `snap-1234567890abcdef0`. You can specify a snapshot that was shared # with you from another Amazon Web Services account. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableFastSnapshotRestoresRequest AWS API Documentation # class EnableFastSnapshotRestoresRequest < Struct.new( :availability_zones, :source_snapshot_ids, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] successful # Information about the snapshots for which fast snapshot restores # were successfully enabled. # @return [Array] # # @!attribute [rw] unsuccessful # Information about the snapshots for which fast snapshot restores # could not be enabled. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableFastSnapshotRestoresResult AWS API Documentation # class EnableFastSnapshotRestoresResult < Struct.new( :successful, :unsuccessful) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] image_block_public_access_state # Specify `block-new-sharing` to enable block public access for AMIs # at the account level in the specified Region. This will block any # attempt to publicly share your AMIs in the specified Region. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableImageBlockPublicAccessRequest AWS API Documentation # class EnableImageBlockPublicAccessRequest < Struct.new( :image_block_public_access_state, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] image_block_public_access_state # Returns `block-new-sharing` if the request succeeds; otherwise, it # returns an error. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableImageBlockPublicAccessResult AWS API Documentation # class EnableImageBlockPublicAccessResult < Struct.new( :image_block_public_access_state) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] image_id # The ID of the AMI. # @return [String] # # @!attribute [rw] deprecate_at # The date and time to deprecate the AMI, in UTC, in the following # format: *YYYY*-*MM*-*DD*T*HH*:*MM*:*SS*Z. If you specify a value for # seconds, Amazon EC2 rounds the seconds to the nearest minute. # # You can’t specify a date in the past. The upper limit for # `DeprecateAt` is 10 years from now, except for public AMIs, where # the upper limit is 2 years from the creation date. # @return [Time] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableImageDeprecationRequest AWS API Documentation # class EnableImageDeprecationRequest < Struct.new( :image_id, :deprecate_at, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] return # Returns `true` if the request succeeds; otherwise, it returns an # error. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableImageDeprecationResult AWS API Documentation # class EnableImageDeprecationResult < Struct.new( :return) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] image_id # The ID of the AMI. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableImageRequest AWS API Documentation # class EnableImageRequest < Struct.new( :image_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] return # Returns `true` if the request succeeds; otherwise, it returns an # error. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableImageResult AWS API Documentation # class EnableImageResult < Struct.new( :return) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # A check for whether you have the required permissions for the action # without actually making the request and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] delegated_admin_account_id # The Organizations member account ID that you want to enable as the # IPAM account. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableIpamOrganizationAdminAccountRequest AWS API Documentation # class EnableIpamOrganizationAdminAccountRequest < Struct.new( :dry_run, :delegated_admin_account_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] success # The result of enabling the IPAM account. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableIpamOrganizationAdminAccountResult AWS API Documentation # class EnableIpamOrganizationAdminAccountResult < Struct.new( :success) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableReachabilityAnalyzerOrganizationSharingRequest AWS API Documentation # class EnableReachabilityAnalyzerOrganizationSharingRequest < Struct.new( :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] return_value # Returns `true` if the request succeeds; otherwise, returns an error. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableReachabilityAnalyzerOrganizationSharingResult AWS API Documentation # class EnableReachabilityAnalyzerOrganizationSharingResult < Struct.new( :return_value) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableSerialConsoleAccessRequest AWS API Documentation # class EnableSerialConsoleAccessRequest < Struct.new( :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] serial_console_access_enabled # If `true`, access to the EC2 serial console of all instances is # enabled for your account. If `false`, access to the EC2 serial # console of all instances is disabled for your account. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableSerialConsoleAccessResult AWS API Documentation # class EnableSerialConsoleAccessResult < Struct.new( :serial_console_access_enabled) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] state # The mode in which to enable block public access for snapshots for # the Region. Specify one of the following values: # # * `block-all-sharing` - Prevents all public sharing of snapshots in # the Region. Users in the account will no longer be able to request # new public sharing. Additionally, snapshots that are already # publicly shared are treated as private and they are no longer # publicly available. # # If you enable block public access for snapshots in # `block-all-sharing` mode, it does not change the permissions for # snapshots that are already publicly shared. Instead, it prevents # these snapshots from be publicly visible and publicly accessible. # Therefore, the attributes for these snapshots still indicate that # they are publicly shared, even though they are not publicly # available. # # # # * `block-new-sharing` - Prevents only new public sharing of # snapshots in the Region. Users in the account will no longer be # able to request new public sharing. However, snapshots that are # already publicly shared, remain publicly available. # # `unblocked` is not a valid value for # **EnableSnapshotBlockPublicAccess**. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableSnapshotBlockPublicAccessRequest AWS API Documentation # class EnableSnapshotBlockPublicAccessRequest < Struct.new( :state, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] state # The state of block public access for snapshots for the account and # Region. Returns either `block-all-sharing` or `block-new-sharing` if # the request succeeds. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableSnapshotBlockPublicAccessResult AWS API Documentation # class EnableSnapshotBlockPublicAccessResult < Struct.new( :state) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_route_table_id # The ID of the propagation route table. # @return [String] # # @!attribute [rw] transit_gateway_attachment_id # The ID of the attachment. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] transit_gateway_route_table_announcement_id # The ID of the transit gateway route table announcement. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableTransitGatewayRouteTablePropagationRequest AWS API Documentation # class EnableTransitGatewayRouteTablePropagationRequest < Struct.new( :transit_gateway_route_table_id, :transit_gateway_attachment_id, :dry_run, :transit_gateway_route_table_announcement_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] propagation # Information about route propagation. # @return [Types::TransitGatewayPropagation] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableTransitGatewayRouteTablePropagationResult AWS API Documentation # class EnableTransitGatewayRouteTablePropagationResult < Struct.new( :propagation) SENSITIVE = [] include Aws::Structure end # Contains the parameters for EnableVgwRoutePropagation. # # @!attribute [rw] gateway_id # The ID of the virtual private gateway that is attached to a VPC. The # virtual private gateway must be attached to the same VPC that the # routing tables are associated with. # @return [String] # # @!attribute [rw] route_table_id # The ID of the route table. The routing table must be associated with # the same VPC that the virtual private gateway is attached to. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableVgwRoutePropagationRequest AWS API Documentation # class EnableVgwRoutePropagationRequest < Struct.new( :gateway_id, :route_table_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] volume_id # The ID of the volume. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableVolumeIORequest AWS API Documentation # class EnableVolumeIORequest < Struct.new( :dry_run, :volume_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] vpc_id # The ID of the VPC. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableVpcClassicLinkDnsSupportRequest AWS API Documentation # class EnableVpcClassicLinkDnsSupportRequest < Struct.new( :vpc_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] return # Returns `true` if the request succeeds; otherwise, it returns an # error. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableVpcClassicLinkDnsSupportResult AWS API Documentation # class EnableVpcClassicLinkDnsSupportResult < Struct.new( :return) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] vpc_id # The ID of the VPC. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableVpcClassicLinkRequest AWS API Documentation # class EnableVpcClassicLinkRequest < Struct.new( :dry_run, :vpc_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] return # Returns `true` if the request succeeds; otherwise, it returns an # error. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnableVpcClassicLinkResult AWS API Documentation # class EnableVpcClassicLinkResult < Struct.new( :return) SENSITIVE = [] include Aws::Structure end # Indicates whether the instance is enabled for Amazon Web Services # Nitro Enclaves. # # @!attribute [rw] enabled # 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. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnclaveOptions AWS API Documentation # class EnclaveOptions < Struct.new( :enabled) SENSITIVE = [] include Aws::Structure end # Indicates whether the instance is enabled for Amazon Web Services # Nitro Enclaves. For more information, see [ What is Amazon Web # Services Nitro Enclaves?][1] in the *Amazon Web Services Nitro # Enclaves User Guide*. # # # # [1]: https://docs.aws.amazon.com/enclaves/latest/user/nitro-enclave.html # # @!attribute [rw] enabled # To enable the instance for Amazon Web Services Nitro Enclaves, set # this parameter to `true`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EnclaveOptionsRequest AWS API Documentation # class EnclaveOptionsRequest < Struct.new( :enabled) SENSITIVE = [] include Aws::Structure end # Describes an EC2 Fleet or Spot Fleet event. # # @!attribute [rw] event_description # The description of the event. # @return [String] # # @!attribute [rw] event_sub_type # 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. # @return [String] # # @!attribute [rw] instance_id # The ID of the instance. This information is available only for # `instanceChange` events. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/EventInformation AWS API Documentation # class EventInformation < Struct.new( :event_description, :event_sub_type, :instance_id) SENSITIVE = [] include Aws::Structure end # Describes an explanation code for an unreachable path. For more # information, see [Reachability Analyzer explanation codes][1]. # # # # [1]: https://docs.aws.amazon.com/vpc/latest/reachability/explanation-codes.html # # @!attribute [rw] acl # The network ACL. # @return [Types::AnalysisComponent] # # @!attribute [rw] acl_rule # The network ACL rule. # @return [Types::AnalysisAclRule] # # @!attribute [rw] address # The IPv4 address, in CIDR notation. # @return [String] # # @!attribute [rw] addresses # The IPv4 addresses, in CIDR notation. # @return [Array] # # @!attribute [rw] attached_to # The resource to which the component is attached. # @return [Types::AnalysisComponent] # # @!attribute [rw] availability_zones # The Availability Zones. # @return [Array] # # @!attribute [rw] cidrs # The CIDR ranges. # @return [Array] # # @!attribute [rw] component # The component. # @return [Types::AnalysisComponent] # # @!attribute [rw] customer_gateway # The customer gateway. # @return [Types::AnalysisComponent] # # @!attribute [rw] destination # The destination. # @return [Types::AnalysisComponent] # # @!attribute [rw] destination_vpc # The destination VPC. # @return [Types::AnalysisComponent] # # @!attribute [rw] direction # The direction. The following are the possible values: # # * egress # # * ingress # @return [String] # # @!attribute [rw] explanation_code # The explanation code. # @return [String] # # @!attribute [rw] ingress_route_table # The route table. # @return [Types::AnalysisComponent] # # @!attribute [rw] internet_gateway # The internet gateway. # @return [Types::AnalysisComponent] # # @!attribute [rw] load_balancer_arn # The Amazon Resource Name (ARN) of the load balancer. # @return [String] # # @!attribute [rw] classic_load_balancer_listener # The listener for a Classic Load Balancer. # @return [Types::AnalysisLoadBalancerListener] # # @!attribute [rw] load_balancer_listener_port # The listener port of the load balancer. # @return [Integer] # # @!attribute [rw] load_balancer_target # The target. # @return [Types::AnalysisLoadBalancerTarget] # # @!attribute [rw] load_balancer_target_group # The target group. # @return [Types::AnalysisComponent] # # @!attribute [rw] load_balancer_target_groups # The target groups. # @return [Array] # # @!attribute [rw] load_balancer_target_port # The target port. # @return [Integer] # # @!attribute [rw] elastic_load_balancer_listener # The load balancer listener. # @return [Types::AnalysisComponent] # # @!attribute [rw] missing_component # The missing component. # @return [String] # # @!attribute [rw] nat_gateway # The NAT gateway. # @return [Types::AnalysisComponent] # # @!attribute [rw] network_interface # The network interface. # @return [Types::AnalysisComponent] # # @!attribute [rw] packet_field # The packet field. # @return [String] # # @!attribute [rw] vpc_peering_connection # The VPC peering connection. # @return [Types::AnalysisComponent] # # @!attribute [rw] port # The port. # @return [Integer] # # @!attribute [rw] port_ranges # The port ranges. # @return [Array] # # @!attribute [rw] prefix_list # The prefix list. # @return [Types::AnalysisComponent] # # @!attribute [rw] protocols # The protocols. # @return [Array] # # @!attribute [rw] route_table_route # The route table route. # @return [Types::AnalysisRouteTableRoute] # # @!attribute [rw] route_table # The route table. # @return [Types::AnalysisComponent] # # @!attribute [rw] security_group # The security group. # @return [Types::AnalysisComponent] # # @!attribute [rw] security_group_rule # The security group rule. # @return [Types::AnalysisSecurityGroupRule] # # @!attribute [rw] security_groups # The security groups. # @return [Array] # # @!attribute [rw] source_vpc # The source VPC. # @return [Types::AnalysisComponent] # # @!attribute [rw] state # The state. # @return [String] # # @!attribute [rw] subnet # The subnet. # @return [Types::AnalysisComponent] # # @!attribute [rw] subnet_route_table # The route table for the subnet. # @return [Types::AnalysisComponent] # # @!attribute [rw] vpc # The component VPC. # @return [Types::AnalysisComponent] # # @!attribute [rw] vpc_endpoint # The VPC endpoint. # @return [Types::AnalysisComponent] # # @!attribute [rw] vpn_connection # The VPN connection. # @return [Types::AnalysisComponent] # # @!attribute [rw] vpn_gateway # The VPN gateway. # @return [Types::AnalysisComponent] # # @!attribute [rw] transit_gateway # The transit gateway. # @return [Types::AnalysisComponent] # # @!attribute [rw] transit_gateway_route_table # The transit gateway route table. # @return [Types::AnalysisComponent] # # @!attribute [rw] transit_gateway_route_table_route # The transit gateway route table route. # @return [Types::TransitGatewayRouteTableRoute] # # @!attribute [rw] transit_gateway_attachment # The transit gateway attachment. # @return [Types::AnalysisComponent] # # @!attribute [rw] component_account # The Amazon Web Services account for the component. # @return [String] # # @!attribute [rw] component_region # The Region for the component. # @return [String] # # @!attribute [rw] firewall_stateless_rule # The Network Firewall stateless rule. # @return [Types::FirewallStatelessRule] # # @!attribute [rw] firewall_stateful_rule # The Network Firewall stateful rule. # @return [Types::FirewallStatefulRule] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Explanation AWS API Documentation # class Explanation < Struct.new( :acl, :acl_rule, :address, :addresses, :attached_to, :availability_zones, :cidrs, :component, :customer_gateway, :destination, :destination_vpc, :direction, :explanation_code, :ingress_route_table, :internet_gateway, :load_balancer_arn, :classic_load_balancer_listener, :load_balancer_listener_port, :load_balancer_target, :load_balancer_target_group, :load_balancer_target_groups, :load_balancer_target_port, :elastic_load_balancer_listener, :missing_component, :nat_gateway, :network_interface, :packet_field, :vpc_peering_connection, :port, :port_ranges, :prefix_list, :protocols, :route_table_route, :route_table, :security_group, :security_group_rule, :security_groups, :source_vpc, :state, :subnet, :subnet_route_table, :vpc, :vpc_endpoint, :vpn_connection, :vpn_gateway, :transit_gateway, :transit_gateway_route_table, :transit_gateway_route_table_route, :transit_gateway_attachment, :component_account, :component_region, :firewall_stateless_rule, :firewall_stateful_rule) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] client_vpn_endpoint_id # The ID of the Client VPN endpoint. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ExportClientVpnClientCertificateRevocationListRequest AWS API Documentation # class ExportClientVpnClientCertificateRevocationListRequest < Struct.new( :client_vpn_endpoint_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] certificate_revocation_list # Information about the client certificate revocation list. # @return [String] # # @!attribute [rw] status # The current state of the client certificate revocation list. # @return [Types::ClientCertificateRevocationListStatus] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ExportClientVpnClientCertificateRevocationListResult AWS API Documentation # class ExportClientVpnClientCertificateRevocationListResult < Struct.new( :certificate_revocation_list, :status) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] client_vpn_endpoint_id # The ID of the Client VPN endpoint. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ExportClientVpnClientConfigurationRequest AWS API Documentation # class ExportClientVpnClientConfigurationRequest < Struct.new( :client_vpn_endpoint_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] client_configuration # The contents of the Client VPN endpoint configuration file. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ExportClientVpnClientConfigurationResult AWS API Documentation # class ExportClientVpnClientConfigurationResult < Struct.new( :client_configuration) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] client_token # Token to enable idempotency for export image requests. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # @return [String] # # @!attribute [rw] description # A description of the image being exported. The maximum length is 255 # characters. # @return [String] # # @!attribute [rw] disk_image_format # The disk image format. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] image_id # The ID of the image. # @return [String] # # @!attribute [rw] s3_export_location # The Amazon S3 bucket for the destination image. The destination # bucket must exist. # @return [Types::ExportTaskS3LocationRequest] # # @!attribute [rw] role_name # The name of the role that grants VM Import/Export permission to # export images to your Amazon S3 bucket. If this parameter is not # specified, the default role is named 'vmimport'. # @return [String] # # @!attribute [rw] tag_specifications # The tags to apply to the export image task during creation. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ExportImageRequest AWS API Documentation # class ExportImageRequest < Struct.new( :client_token, :description, :disk_image_format, :dry_run, :image_id, :s3_export_location, :role_name, :tag_specifications) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] description # A description of the image being exported. # @return [String] # # @!attribute [rw] disk_image_format # The disk image format for the exported image. # @return [String] # # @!attribute [rw] export_image_task_id # The ID of the export image task. # @return [String] # # @!attribute [rw] image_id # The ID of the image. # @return [String] # # @!attribute [rw] role_name # The name of the role that grants VM Import/Export permission to # export images to your Amazon S3 bucket. # @return [String] # # @!attribute [rw] progress # The percent complete of the export image task. # @return [String] # # @!attribute [rw] s3_export_location # Information about the destination Amazon S3 bucket. # @return [Types::ExportTaskS3Location] # # @!attribute [rw] status # The status of the export image task. The possible values are # `active`, `completed`, `deleting`, and `deleted`. # @return [String] # # @!attribute [rw] status_message # The status message for the export image task. # @return [String] # # @!attribute [rw] tags # Any tags assigned to the export image task. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ExportImageResult AWS API Documentation # class ExportImageResult < Struct.new( :description, :disk_image_format, :export_image_task_id, :image_id, :role_name, :progress, :s3_export_location, :status, :status_message, :tags) SENSITIVE = [] include Aws::Structure end # Describes an export image task. # # @!attribute [rw] description # A description of the image being exported. # @return [String] # # @!attribute [rw] export_image_task_id # The ID of the export image task. # @return [String] # # @!attribute [rw] image_id # The ID of the image. # @return [String] # # @!attribute [rw] progress # The percent complete of the export image task. # @return [String] # # @!attribute [rw] s3_export_location # Information about the destination Amazon S3 bucket. # @return [Types::ExportTaskS3Location] # # @!attribute [rw] status # The status of the export image task. The possible values are # `active`, `completed`, `deleting`, and `deleted`. # @return [String] # # @!attribute [rw] status_message # The status message for the export image task. # @return [String] # # @!attribute [rw] tags # Any tags assigned to the export image task. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ExportImageTask AWS API Documentation # class ExportImageTask < Struct.new( :description, :export_image_task_id, :image_id, :progress, :s3_export_location, :status, :status_message, :tags) SENSITIVE = [] include Aws::Structure end # Describes an export instance task. # # @!attribute [rw] description # A description of the resource being exported. # @return [String] # # @!attribute [rw] export_task_id # The ID of the export task. # @return [String] # # @!attribute [rw] export_to_s3_task # Information about the export task. # @return [Types::ExportToS3Task] # # @!attribute [rw] instance_export_details # Information about the instance to export. # @return [Types::InstanceExportDetails] # # @!attribute [rw] state # The state of the export task. # @return [String] # # @!attribute [rw] status_message # The status message related to the export task. # @return [String] # # @!attribute [rw] tags # The tags for the export task. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ExportTask AWS API Documentation # class ExportTask < Struct.new( :description, :export_task_id, :export_to_s3_task, :instance_export_details, :state, :status_message, :tags) SENSITIVE = [] include Aws::Structure end # Describes the destination for an export image task. # # @!attribute [rw] s3_bucket # The destination Amazon S3 bucket. # @return [String] # # @!attribute [rw] s3_prefix # The prefix (logical hierarchy) in the bucket. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ExportTaskS3Location AWS API Documentation # class ExportTaskS3Location < Struct.new( :s3_bucket, :s3_prefix) SENSITIVE = [] include Aws::Structure end # Describes the destination for an export image task. # # @!attribute [rw] s3_bucket # The destination Amazon S3 bucket. # @return [String] # # @!attribute [rw] s3_prefix # The prefix (logical hierarchy) in the bucket. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ExportTaskS3LocationRequest AWS API Documentation # class ExportTaskS3LocationRequest < Struct.new( :s3_bucket, :s3_prefix) SENSITIVE = [] include Aws::Structure end # Describes the format and location for the export task. # # @!attribute [rw] container_format # The container format used to combine disk images with metadata (such # as OVF). If absent, only the disk image is exported. # @return [String] # # @!attribute [rw] disk_image_format # The format for the exported image. # @return [String] # # @!attribute [rw] s3_bucket # 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][1] in the VM Import/Export User Guide. # # # # [1]: https://docs.aws.amazon.com/vm-import/latest/userguide/vmexport.html#vmexport-prerequisites # @return [String] # # @!attribute [rw] s3_key # The encryption key for your S3 bucket. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ExportToS3Task AWS API Documentation # class ExportToS3Task < Struct.new( :container_format, :disk_image_format, :s3_bucket, :s3_key) SENSITIVE = [] include Aws::Structure end # Describes an export instance task. # # @!attribute [rw] container_format # The container format used to combine disk images with metadata (such # as OVF). If absent, only the disk image is exported. # @return [String] # # @!attribute [rw] disk_image_format # The format for the exported image. # @return [String] # # @!attribute [rw] s3_bucket # 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][1] in the VM Import/Export User Guide. # # # # [1]: https://docs.aws.amazon.com/vm-import/latest/userguide/vmexport.html#vmexport-prerequisites # @return [String] # # @!attribute [rw] s3_prefix # The image is written to a single object in the Amazon S3 bucket at # the S3 key s3prefix + exportTaskId + '.' + diskImageFormat. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ExportToS3TaskSpecification AWS API Documentation # class ExportToS3TaskSpecification < Struct.new( :container_format, :disk_image_format, :s3_bucket, :s3_prefix) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_route_table_id # The ID of the route table. # @return [String] # # @!attribute [rw] filters # One or more filters. The possible values are: # # * `attachment.transit-gateway-attachment-id` - The id of the transit # gateway attachment. # # * `attachment.resource-id` - The resource id of the transit gateway # attachment. # # * `route-search.exact-match` - The exact match of the specified # filter. # # * `route-search.longest-prefix-match` - The longest prefix that # matches the route. # # * `route-search.subnet-of-match` - The routes with a subnet that # match the specified CIDR filter. # # * `route-search.supernet-of-match` - The routes with a CIDR that # encompass the CIDR filter. For example, if you have 10.0.1.0/29 # and 10.0.1.0/31 routes in your route table and you specify # supernet-of-match as 10.0.1.0/30, then the result returns # 10.0.1.0/29. # # * `state` - The state of the route (`active` \| `blackhole`). # # * `transit-gateway-route-destination-cidr-block` - The CIDR range. # # * `type` - The type of route (`propagated` \| `static`). # @return [Array] # # @!attribute [rw] s3_bucket # The name of the S3 bucket. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ExportTransitGatewayRoutesRequest AWS API Documentation # class ExportTransitGatewayRoutesRequest < Struct.new( :transit_gateway_route_table_id, :filters, :s3_bucket, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] s3_location # The URL of the exported file in Amazon S3. For example, # s3://*bucket\_name*/VPCTransitGateway/TransitGatewayRouteTables/*file\_name*. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ExportTransitGatewayRoutesResult AWS API Documentation # class ExportTransitGatewayRoutesResult < Struct.new( :s3_location) SENSITIVE = [] include Aws::Structure end # Describes a Capacity Reservation Fleet that could not be cancelled. # # @!attribute [rw] capacity_reservation_fleet_id # The ID of the Capacity Reservation Fleet that could not be # cancelled. # @return [String] # # @!attribute [rw] cancel_capacity_reservation_fleet_error # Information about the Capacity Reservation Fleet cancellation error. # @return [Types::CancelCapacityReservationFleetError] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/FailedCapacityReservationFleetCancellationResult AWS API Documentation # class FailedCapacityReservationFleetCancellationResult < Struct.new( :capacity_reservation_fleet_id, :cancel_capacity_reservation_fleet_error) SENSITIVE = [] include Aws::Structure end # Describes a Reserved Instance whose queued purchase was not deleted. # # @!attribute [rw] error # The error. # @return [Types::DeleteQueuedReservedInstancesError] # # @!attribute [rw] reserved_instances_id # The ID of the Reserved Instance. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/FailedQueuedPurchaseDeletion AWS API Documentation # class FailedQueuedPurchaseDeletion < Struct.new( :error, :reserved_instances_id) SENSITIVE = [] include Aws::Structure end # 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. # # # # @!attribute [rw] launch_template_id # Specify the ID of the launch template that the AMI should use for # Windows fast launch. # @return [String] # # @!attribute [rw] launch_template_name # Specify the name of the launch template that the AMI should use for # Windows fast launch. # @return [String] # # @!attribute [rw] version # Specify the version of the launch template that the AMI should use # for Windows fast launch. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/FastLaunchLaunchTemplateSpecificationRequest AWS API Documentation # class FastLaunchLaunchTemplateSpecificationRequest < Struct.new( :launch_template_id, :launch_template_name, :version) SENSITIVE = [] include Aws::Structure end # Identifies the launch template that the AMI uses for Windows fast # launch. # # @!attribute [rw] launch_template_id # The ID of the launch template that the AMI uses for Windows fast # launch. # @return [String] # # @!attribute [rw] launch_template_name # The name of the launch template that the AMI uses for Windows fast # launch. # @return [String] # # @!attribute [rw] version # The version of the launch template that the AMI uses for Windows # fast launch. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/FastLaunchLaunchTemplateSpecificationResponse AWS API Documentation # class FastLaunchLaunchTemplateSpecificationResponse < Struct.new( :launch_template_id, :launch_template_name, :version) SENSITIVE = [] include Aws::Structure end # Configuration settings for creating and managing pre-provisioned # snapshots for a Windows fast launch enabled AMI. # # @!attribute [rw] target_resource_count # The number of pre-provisioned snapshots to keep on hand for a # Windows fast launch enabled AMI. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/FastLaunchSnapshotConfigurationRequest AWS API Documentation # class FastLaunchSnapshotConfigurationRequest < Struct.new( :target_resource_count) SENSITIVE = [] include Aws::Structure end # Configuration settings for creating and managing pre-provisioned # snapshots for a Windows fast launch enabled Windows AMI. # # @!attribute [rw] target_resource_count # The number of pre-provisioned snapshots requested to keep on hand # for a Windows fast launch enabled AMI. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/FastLaunchSnapshotConfigurationResponse AWS API Documentation # class FastLaunchSnapshotConfigurationResponse < Struct.new( :target_resource_count) SENSITIVE = [] include Aws::Structure end # Describes the IAM SAML identity providers used for federated # authentication. # # @!attribute [rw] saml_provider_arn # The Amazon Resource Name (ARN) of the IAM SAML identity provider. # @return [String] # # @!attribute [rw] self_service_saml_provider_arn # The Amazon Resource Name (ARN) of the IAM SAML identity provider for # the self-service portal. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/FederatedAuthentication AWS API Documentation # class FederatedAuthentication < Struct.new( :saml_provider_arn, :self_service_saml_provider_arn) SENSITIVE = [] include Aws::Structure end # The IAM SAML identity provider used for federated authentication. # # @!attribute [rw] saml_provider_arn # The Amazon Resource Name (ARN) of the IAM SAML identity provider. # @return [String] # # @!attribute [rw] self_service_saml_provider_arn # The Amazon Resource Name (ARN) of the IAM SAML identity provider for # the self-service portal. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/FederatedAuthenticationRequest AWS API Documentation # class FederatedAuthenticationRequest < Struct.new( :saml_provider_arn, :self_service_saml_provider_arn) SENSITIVE = [] include Aws::Structure end # 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. # # @!attribute [rw] name # The name of the filter. Filter names are case-sensitive. # @return [String] # # @!attribute [rw] values # 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. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Filter AWS API Documentation # class Filter < Struct.new( :name, :values) SENSITIVE = [] include Aws::Structure end # Describes a port range. # # @!attribute [rw] from_port # The first port in the range. # @return [Integer] # # @!attribute [rw] to_port # The last port in the range. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/FilterPortRange AWS API Documentation # class FilterPortRange < Struct.new( :from_port, :to_port) SENSITIVE = [] include Aws::Structure end # Describes a stateful rule. # # @!attribute [rw] rule_group_arn # The ARN of the stateful rule group. # @return [String] # # @!attribute [rw] sources # The source IP addresses, in CIDR notation. # @return [Array] # # @!attribute [rw] destinations # The destination IP addresses, in CIDR notation. # @return [Array] # # @!attribute [rw] source_ports # The source ports. # @return [Array] # # @!attribute [rw] destination_ports # The destination ports. # @return [Array] # # @!attribute [rw] protocol # The protocol. # @return [String] # # @!attribute [rw] rule_action # The rule action. The possible values are `pass`, `drop`, and # `alert`. # @return [String] # # @!attribute [rw] direction # The direction. The possible values are `FORWARD` and `ANY`. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/FirewallStatefulRule AWS API Documentation # class FirewallStatefulRule < Struct.new( :rule_group_arn, :sources, :destinations, :source_ports, :destination_ports, :protocol, :rule_action, :direction) SENSITIVE = [] include Aws::Structure end # Describes a stateless rule. # # @!attribute [rw] rule_group_arn # The ARN of the stateless rule group. # @return [String] # # @!attribute [rw] sources # The source IP addresses, in CIDR notation. # @return [Array] # # @!attribute [rw] destinations # The destination IP addresses, in CIDR notation. # @return [Array] # # @!attribute [rw] source_ports # The source ports. # @return [Array] # # @!attribute [rw] destination_ports # The destination ports. # @return [Array] # # @!attribute [rw] protocols # The protocols. # @return [Array] # # @!attribute [rw] rule_action # The rule action. The possible values are `pass`, `drop`, and # `forward_to_site`. # @return [String] # # @!attribute [rw] priority # The rule priority. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/FirewallStatelessRule AWS API Documentation # class FirewallStatelessRule < Struct.new( :rule_group_arn, :sources, :destinations, :source_ports, :destination_ports, :protocols, :rule_action, :priority) SENSITIVE = [] include Aws::Structure end # Information about a Capacity Reservation in a Capacity Reservation # Fleet. # # @!attribute [rw] capacity_reservation_id # The ID of the Capacity Reservation. # @return [String] # # @!attribute [rw] availability_zone_id # The ID of the Availability Zone in which the Capacity Reservation # reserves capacity. # @return [String] # # @!attribute [rw] instance_type # The instance type for which the Capacity Reservation reserves # capacity. # @return [String] # # @!attribute [rw] instance_platform # The type of operating system for which the Capacity Reservation # reserves capacity. # @return [String] # # @!attribute [rw] availability_zone # The Availability Zone in which the Capacity Reservation reserves # capacity. # @return [String] # # @!attribute [rw] total_instance_count # The total number of instances for which the Capacity Reservation # reserves capacity. # @return [Integer] # # @!attribute [rw] fulfilled_capacity # The number of capacity units fulfilled by the Capacity Reservation. # For more information, see [ Total target capacity][1] in the Amazon # EC2 User Guide. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/crfleet-concepts.html#target-capacity # @return [Float] # # @!attribute [rw] ebs_optimized # Indicates whether the Capacity Reservation reserves capacity for # EBS-optimized instance types. # @return [Boolean] # # @!attribute [rw] create_date # The date and time at which the Capacity Reservation was created. # @return [Time] # # @!attribute [rw] weight # The weight of the instance type in the Capacity Reservation Fleet. # For more information, see [ Instance type weight][1] in the Amazon # EC2 User Guide. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/crfleet-concepts.html#instance-weight # @return [Float] # # @!attribute [rw] priority # The priority of the instance type in the Capacity Reservation Fleet. # For more information, see [ Instance type priority][1] in the Amazon # EC2 User Guide. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/crfleet-concepts.html#instance-priority # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/FleetCapacityReservation AWS API Documentation # class FleetCapacityReservation < Struct.new( :capacity_reservation_id, :availability_zone_id, :instance_type, :instance_platform, :availability_zone, :total_instance_count, :fulfilled_capacity, :ebs_optimized, :create_date, :weight, :priority) SENSITIVE = [] include Aws::Structure end # Describes an EC2 Fleet. # # @!attribute [rw] activity_status # 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. # @return [String] # # @!attribute [rw] create_time # The creation date and time of the EC2 Fleet. # @return [Time] # # @!attribute [rw] fleet_id # The ID of the EC2 Fleet. # @return [String] # # @!attribute [rw] fleet_state # The state of the EC2 Fleet. # @return [String] # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. For more information, see [Ensuring # idempotency][1]. # # Constraints: Maximum 64 ASCII characters # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] excess_capacity_termination_policy # 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`. # @return [String] # # @!attribute [rw] fulfilled_capacity # The number of units fulfilled by this request compared to the set # target capacity. # @return [Float] # # @!attribute [rw] fulfilled_on_demand_capacity # The number of units fulfilled by this request compared to the set # target On-Demand capacity. # @return [Float] # # @!attribute [rw] launch_template_configs # The launch template and overrides. # @return [Array] # # @!attribute [rw] target_capacity_specification # 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. # @return [Types::TargetCapacitySpecification] # # @!attribute [rw] terminate_instances_with_expiration # Indicates whether running instances should be terminated when the # EC2 Fleet expires. # @return [Boolean] # # @!attribute [rw] type # 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`. # @return [String] # # @!attribute [rw] valid_from # The start date and time of the request, in UTC format (for example, # *YYYY*-*MM*-*DD*T*HH*:*MM*:*SS*Z). The default is to start # fulfilling the request immediately. # @return [Time] # # @!attribute [rw] valid_until # The end date and time of the request, in UTC format (for example, # *YYYY*-*MM*-*DD*T*HH*:*MM*:*SS*Z). 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. # @return [Time] # # @!attribute [rw] replace_unhealthy_instances # Indicates whether EC2 Fleet should replace unhealthy Spot Instances. # Supported only for fleets of type `maintain`. For more information, # see [EC2 Fleet health checks][1] in the *Amazon EC2 User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/manage-ec2-fleet.html#ec2-fleet-health-checks # @return [Boolean] # # @!attribute [rw] spot_options # The configuration of Spot Instances in an EC2 Fleet. # @return [Types::SpotOptions] # # @!attribute [rw] on_demand_options # The allocation strategy of On-Demand Instances in an EC2 Fleet. # @return [Types::OnDemandOptions] # # @!attribute [rw] tags # The tags for an EC2 Fleet resource. # @return [Array] # # @!attribute [rw] errors # Information about the instances that could not be launched by the # fleet. Valid only when **Type** is set to `instant`. # @return [Array] # # @!attribute [rw] instances # Information about the instances that were launched by the fleet. # Valid only when **Type** is set to `instant`. # @return [Array] # # @!attribute [rw] context # Reserved. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/FleetData AWS API Documentation # class FleetData < Struct.new( :activity_status, :create_time, :fleet_id, :fleet_state, :client_token, :excess_capacity_termination_policy, :fulfilled_capacity, :fulfilled_on_demand_capacity, :launch_template_configs, :target_capacity_specification, :terminate_instances_with_expiration, :type, :valid_from, :valid_until, :replace_unhealthy_instances, :spot_options, :on_demand_options, :tags, :errors, :instances, :context) SENSITIVE = [] include Aws::Structure end # Describes a launch template and overrides. # # @!attribute [rw] launch_template_specification # The launch template. # @return [Types::FleetLaunchTemplateSpecification] # # @!attribute [rw] overrides # Any parameters that you specify override the same parameters in the # launch template. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/FleetLaunchTemplateConfig AWS API Documentation # class FleetLaunchTemplateConfig < Struct.new( :launch_template_specification, :overrides) SENSITIVE = [] include Aws::Structure end # Describes a launch template and overrides. # # @!attribute [rw] launch_template_specification # The launch template to use. You must specify either the launch # template ID or launch template name in the request. # @return [Types::FleetLaunchTemplateSpecificationRequest] # # @!attribute [rw] overrides # 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. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/FleetLaunchTemplateConfigRequest AWS API Documentation # class FleetLaunchTemplateConfigRequest < Struct.new( :launch_template_specification, :overrides) SENSITIVE = [] include Aws::Structure end # Describes overrides for a launch template. # # @!attribute [rw] instance_type # The instance type. # # `mac1.metal` is not supported as a launch template override. # # If you specify `InstanceType`, you can't specify # `InstanceRequirements`. # # # @return [String] # # @!attribute [rw] max_price # 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. # @return [String] # # @!attribute [rw] subnet_id # The ID of the subnet in which to launch the instances. # @return [String] # # @!attribute [rw] availability_zone # The Availability Zone in which to launch the instances. # @return [String] # # @!attribute [rw] weighted_capacity # The number of units provided by the specified instance type. # # 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. # # # @return [Float] # # @!attribute [rw] priority # 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. # @return [Float] # # @!attribute [rw] placement # The location where the instance launched, if applicable. # @return [Types::PlacementResponse] # # @!attribute [rw] instance_requirements # 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`. # # # @return [Types::InstanceRequirements] # # @!attribute [rw] image_id # The ID of the AMI. An AMI is required to launch an instance. 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. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/FleetLaunchTemplateOverrides AWS API Documentation # class FleetLaunchTemplateOverrides < Struct.new( :instance_type, :max_price, :subnet_id, :availability_zone, :weighted_capacity, :priority, :placement, :instance_requirements, :image_id) SENSITIVE = [] include Aws::Structure end # Describes overrides for a launch template. # # @!attribute [rw] instance_type # The instance type. # # `mac1.metal` is not supported as a launch template override. # # If you specify `InstanceType`, you can't specify # `InstanceRequirements`. # # # @return [String] # # @!attribute [rw] max_price # 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. # @return [String] # # @!attribute [rw] subnet_id # 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. # @return [String] # # @!attribute [rw] availability_zone # The Availability Zone in which to launch the instances. # @return [String] # # @!attribute [rw] weighted_capacity # The number of units provided by the specified instance type. # # 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. # # # @return [Float] # # @!attribute [rw] priority # 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. # @return [Float] # # @!attribute [rw] placement # The location where the instance launched, if applicable. # @return [Types::Placement] # # @!attribute [rw] instance_requirements # 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`. # # # @return [Types::InstanceRequirementsRequest] # # @!attribute [rw] image_id # The ID of the AMI. An AMI is required to launch an instance. 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. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/FleetLaunchTemplateOverridesRequest AWS API Documentation # class FleetLaunchTemplateOverridesRequest < Struct.new( :instance_type, :max_price, :subnet_id, :availability_zone, :weighted_capacity, :priority, :placement, :instance_requirements, :image_id) SENSITIVE = [] include Aws::Structure end # 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][1] in the *Amazon EC2 User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html # # @!attribute [rw] launch_template_id # The ID of the launch template. # # You must specify the `LaunchTemplateId` or the `LaunchTemplateName`, # but not both. # @return [String] # # @!attribute [rw] launch_template_name # The name of the launch template. # # You must specify the `LaunchTemplateName` or the `LaunchTemplateId`, # but not both. # @return [String] # # @!attribute [rw] version # 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. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/FleetLaunchTemplateSpecification AWS API Documentation # class FleetLaunchTemplateSpecification < Struct.new( :launch_template_id, :launch_template_name, :version) SENSITIVE = [] include Aws::Structure end # 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][1] in the *Amazon EC2 User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html # # @!attribute [rw] launch_template_id # The ID of the launch template. # # You must specify the `LaunchTemplateId` or the `LaunchTemplateName`, # but not both. # @return [String] # # @!attribute [rw] launch_template_name # The name of the launch template. # # You must specify the `LaunchTemplateName` or the `LaunchTemplateId`, # but not both. # @return [String] # # @!attribute [rw] version # 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. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/FleetLaunchTemplateSpecificationRequest AWS API Documentation # class FleetLaunchTemplateSpecificationRequest < Struct.new( :launch_template_id, :launch_template_name, :version) SENSITIVE = [] include Aws::Structure end # The strategy to use when Amazon EC2 emits a signal that your Spot # Instance is at an elevated risk of being interrupted. # # @!attribute [rw] replacement_strategy # 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. # @return [String] # # @!attribute [rw] termination_delay # 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. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/FleetSpotCapacityRebalance AWS API Documentation # class FleetSpotCapacityRebalance < Struct.new( :replacement_strategy, :termination_delay) SENSITIVE = [] include Aws::Structure end # 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 rebalancing][1] in the *Amazon EC2 User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-capacity-rebalance.html # # @!attribute [rw] replacement_strategy # 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. # @return [String] # # @!attribute [rw] termination_delay # 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. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/FleetSpotCapacityRebalanceRequest AWS API Documentation # class FleetSpotCapacityRebalanceRequest < Struct.new( :replacement_strategy, :termination_delay) SENSITIVE = [] include Aws::Structure end # The strategies for managing your Spot Instances that are at an # elevated risk of being interrupted. # # @!attribute [rw] capacity_rebalance # The strategy to use when Amazon EC2 emits a signal that your Spot # Instance is at an elevated risk of being interrupted. # @return [Types::FleetSpotCapacityRebalance] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/FleetSpotMaintenanceStrategies AWS API Documentation # class FleetSpotMaintenanceStrategies < Struct.new( :capacity_rebalance) SENSITIVE = [] include Aws::Structure end # The strategies for managing your Spot Instances that are at an # elevated risk of being interrupted. # # @!attribute [rw] capacity_rebalance # The strategy to use when Amazon EC2 emits a signal that your Spot # Instance is at an elevated risk of being interrupted. # @return [Types::FleetSpotCapacityRebalanceRequest] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/FleetSpotMaintenanceStrategiesRequest AWS API Documentation # class FleetSpotMaintenanceStrategiesRequest < Struct.new( :capacity_rebalance) SENSITIVE = [] include Aws::Structure end # Describes a flow log. # # @!attribute [rw] creation_time # The date and time the flow log was created. # @return [Time] # # @!attribute [rw] deliver_logs_error_message # 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. # @return [String] # # @!attribute [rw] deliver_logs_permission_arn # The ARN of the IAM role allows the service to publish logs to # CloudWatch Logs. # @return [String] # # @!attribute [rw] deliver_cross_account_role # The ARN of the IAM role that allows the service to publish flow logs # across accounts. # @return [String] # # @!attribute [rw] deliver_logs_status # The status of the logs delivery (`SUCCESS` \| `FAILED`). # @return [String] # # @!attribute [rw] flow_log_id # The ID of the flow log. # @return [String] # # @!attribute [rw] flow_log_status # The status of the flow log (`ACTIVE`). # @return [String] # # @!attribute [rw] log_group_name # The name of the flow log group. # @return [String] # # @!attribute [rw] resource_id # The ID of the resource being monitored. # @return [String] # # @!attribute [rw] traffic_type # The type of traffic captured for the flow log. # @return [String] # # @!attribute [rw] log_destination_type # The type of destination for the flow log data. # @return [String] # # @!attribute [rw] log_destination # The Amazon Resource Name (ARN) of the destination for the flow log # data. # @return [String] # # @!attribute [rw] log_format # The format of the flow log record. # @return [String] # # @!attribute [rw] tags # The tags for the flow log. # @return [Array] # # @!attribute [rw] max_aggregation_interval # 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][1], # the aggregation interval is always 60 seconds (1 minute) or less, # regardless of the specified value. # # Valid Values: `60` \| `600` # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#ec2-nitro-instances # @return [Integer] # # @!attribute [rw] destination_options # The destination options. # @return [Types::DestinationOptionsResponse] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/FlowLog AWS API Documentation # class FlowLog < Struct.new( :creation_time, :deliver_logs_error_message, :deliver_logs_permission_arn, :deliver_cross_account_role, :deliver_logs_status, :flow_log_id, :flow_log_status, :log_group_name, :resource_id, :traffic_type, :log_destination_type, :log_destination, :log_format, :tags, :max_aggregation_interval, :destination_options) SENSITIVE = [] include Aws::Structure end # Describes the FPGA accelerator for the instance type. # # @!attribute [rw] name # The name of the FPGA accelerator. # @return [String] # # @!attribute [rw] manufacturer # The manufacturer of the FPGA accelerator. # @return [String] # # @!attribute [rw] count # The count of FPGA accelerators for the instance type. # @return [Integer] # # @!attribute [rw] memory_info # Describes the memory for the FPGA accelerator for the instance type. # @return [Types::FpgaDeviceMemoryInfo] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/FpgaDeviceInfo AWS API Documentation # class FpgaDeviceInfo < Struct.new( :name, :manufacturer, :count, :memory_info) SENSITIVE = [] include Aws::Structure end # Describes the memory for the FPGA accelerator for the instance type. # # @!attribute [rw] size_in_mi_b # The size of the memory available to the FPGA accelerator, in MiB. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/FpgaDeviceMemoryInfo AWS API Documentation # class FpgaDeviceMemoryInfo < Struct.new( :size_in_mi_b) SENSITIVE = [] include Aws::Structure end # Describes an Amazon FPGA image (AFI). # # @!attribute [rw] fpga_image_id # The FPGA image identifier (AFI ID). # @return [String] # # @!attribute [rw] fpga_image_global_id # The global FPGA image identifier (AGFI ID). # @return [String] # # @!attribute [rw] name # The name of the AFI. # @return [String] # # @!attribute [rw] description # The description of the AFI. # @return [String] # # @!attribute [rw] shell_version # The version of the Amazon Web Services Shell that was used to create # the bitstream. # @return [String] # # @!attribute [rw] pci_id # Information about the PCI bus. # @return [Types::PciId] # # @!attribute [rw] state # Information about the state of the AFI. # @return [Types::FpgaImageState] # # @!attribute [rw] create_time # The date and time the AFI was created. # @return [Time] # # @!attribute [rw] update_time # The time of the most recent update to the AFI. # @return [Time] # # @!attribute [rw] owner_id # The ID of the Amazon Web Services account that owns the AFI. # @return [String] # # @!attribute [rw] owner_alias # The alias of the AFI owner. Possible values include `self`, # `amazon`, and `aws-marketplace`. # @return [String] # # @!attribute [rw] product_codes # The product codes for the AFI. # @return [Array] # # @!attribute [rw] tags # Any tags assigned to the AFI. # @return [Array] # # @!attribute [rw] public # Indicates whether the AFI is public. # @return [Boolean] # # @!attribute [rw] data_retention_support # Indicates whether data retention support is enabled for the AFI. # @return [Boolean] # # @!attribute [rw] instance_types # The instance types supported by the AFI. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/FpgaImage AWS API Documentation # class FpgaImage < Struct.new( :fpga_image_id, :fpga_image_global_id, :name, :description, :shell_version, :pci_id, :state, :create_time, :update_time, :owner_id, :owner_alias, :product_codes, :tags, :public, :data_retention_support, :instance_types) SENSITIVE = [] include Aws::Structure end # Describes an Amazon FPGA image (AFI) attribute. # # @!attribute [rw] fpga_image_id # The ID of the AFI. # @return [String] # # @!attribute [rw] name # The name of the AFI. # @return [String] # # @!attribute [rw] description # The description of the AFI. # @return [String] # # @!attribute [rw] load_permissions # The load permissions. # @return [Array] # # @!attribute [rw] product_codes # The product codes. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/FpgaImageAttribute AWS API Documentation # class FpgaImageAttribute < Struct.new( :fpga_image_id, :name, :description, :load_permissions, :product_codes) SENSITIVE = [] include Aws::Structure end # Describes the state of the bitstream generation process for an Amazon # FPGA image (AFI). # # @!attribute [rw] code # 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. # @return [String] # # @!attribute [rw] message # If the state is `failed`, this is the error message. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/FpgaImageState AWS API Documentation # class FpgaImageState < Struct.new( :code, :message) SENSITIVE = [] include Aws::Structure end # Describes the FPGAs for the instance type. # # @!attribute [rw] fpgas # Describes the FPGAs for the instance type. # @return [Array] # # @!attribute [rw] total_fpga_memory_in_mi_b # The total memory of all FPGA accelerators for the instance type. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/FpgaInfo AWS API Documentation # class FpgaInfo < Struct.new( :fpgas, :total_fpga_memory_in_mi_b) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] certificate_arn # The ARN of the ACM certificate for which to view the associated IAM # roles, encryption keys, and Amazon S3 object information. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetAssociatedEnclaveCertificateIamRolesRequest AWS API Documentation # class GetAssociatedEnclaveCertificateIamRolesRequest < Struct.new( :certificate_arn, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] associated_roles # Information about the associated IAM roles. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetAssociatedEnclaveCertificateIamRolesResult AWS API Documentation # class GetAssociatedEnclaveCertificateIamRolesResult < Struct.new( :associated_roles) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] pool_id # The ID of the IPv6 address pool. # @return [String] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetAssociatedIpv6PoolCidrsRequest AWS API Documentation # class GetAssociatedIpv6PoolCidrsRequest < Struct.new( :pool_id, :next_token, :max_results, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] ipv_6_cidr_associations # Information about the IPv6 CIDR block associations. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetAssociatedIpv6PoolCidrsResult AWS API Documentation # class GetAssociatedIpv6PoolCidrsResult < Struct.new( :ipv_6_cidr_associations, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] data_queries # A list of network performance data queries. # @return [Array] # # @!attribute [rw] start_time # The starting time for the performance data request. The starting # time must be formatted as `yyyy-mm-ddThh:mm:ss`. For example, # `2022-06-10T12:00:00.000Z`. # @return [Time] # # @!attribute [rw] end_time # The ending time for the performance data request. The end time must # be formatted as `yyyy-mm-ddThh:mm:ss`. For example, # `2022-06-12T12:00:00.000Z`. # @return [Time] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetAwsNetworkPerformanceDataRequest AWS API Documentation # class GetAwsNetworkPerformanceDataRequest < Struct.new( :data_queries, :start_time, :end_time, :max_results, :next_token, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] data_responses # The list of data responses. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetAwsNetworkPerformanceDataResult AWS API Documentation # class GetAwsNetworkPerformanceDataResult < Struct.new( :data_responses, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] capacity_reservation_id # The ID of the Capacity Reservation. # @return [String] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. # @return [String] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. For more information, see [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetCapacityReservationUsageRequest AWS API Documentation # class GetCapacityReservationUsageRequest < Struct.new( :capacity_reservation_id, :next_token, :max_results, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @!attribute [rw] capacity_reservation_id # The ID of the Capacity Reservation. # @return [String] # # @!attribute [rw] instance_type # The type of instance for which the Capacity Reservation reserves # capacity. # @return [String] # # @!attribute [rw] total_instance_count # The number of instances for which the Capacity Reservation reserves # capacity. # @return [Integer] # # @!attribute [rw] available_instance_count # The remaining capacity. Indicates the number of instances that can # be launched in the Capacity Reservation. # @return [Integer] # # @!attribute [rw] state # The current state of the Capacity Reservation. A Capacity # Reservation can be in one of the following states: # # * `active` - The Capacity Reservation is active and the capacity is # available for your use. # # * `expired` - The Capacity Reservation expired automatically at the # date and time specified in your request. The reserved capacity is # no longer available for your use. # # * `cancelled` - The Capacity Reservation was cancelled. 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 # might fail due to invalid request parameters, capacity # constraints, or instance limit constraints. Failed requests are # retained for 60 minutes. # @return [String] # # @!attribute [rw] instance_usages # Information about the Capacity Reservation usage. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetCapacityReservationUsageResult AWS API Documentation # class GetCapacityReservationUsageResult < Struct.new( :next_token, :capacity_reservation_id, :instance_type, :total_instance_count, :available_instance_count, :state, :instance_usages) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] pool_id # The ID of the address pool. # @return [String] # # @!attribute [rw] filters # One or more filters. # # * `coip-address-usage.allocation-id` - The allocation ID of the # address. # # * `coip-address-usage.aws-account-id` - The ID of the Amazon Web # Services account that is using the customer-owned IP address. # # * `coip-address-usage.aws-service` - The Amazon Web Services service # that is using the customer-owned IP address. # # * `coip-address-usage.co-ip` - The customer-owned IP address. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetCoipPoolUsageRequest AWS API Documentation # class GetCoipPoolUsageRequest < Struct.new( :pool_id, :filters, :max_results, :next_token, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] coip_pool_id # The ID of the customer-owned address pool. # @return [String] # # @!attribute [rw] coip_address_usages # Information about the address usage. # @return [Array] # # @!attribute [rw] local_gateway_route_table_id # The ID of the local gateway route table. # @return [String] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetCoipPoolUsageResult AWS API Documentation # class GetCoipPoolUsageResult < Struct.new( :coip_pool_id, :coip_address_usages, :local_gateway_route_table_id, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] instance_id # The ID of the instance. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] latest # When enabled, retrieves the latest console output for the instance. # # Default: disabled (`false`) # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetConsoleOutputRequest AWS API Documentation # class GetConsoleOutputRequest < Struct.new( :instance_id, :dry_run, :latest) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] instance_id # The ID of the instance. # @return [String] # # @!attribute [rw] output # The console output, base64-encoded. If you are using a command line # tool, the tool decodes the output for you. # @return [String] # # @!attribute [rw] timestamp # The time at which the output was last updated. # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetConsoleOutputResult AWS API Documentation # class GetConsoleOutputResult < Struct.new( :instance_id, :output, :timestamp) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] instance_id # The ID of the instance. # @return [String] # # @!attribute [rw] wake_up # When set to `true`, acts as keystroke input and wakes up an instance # that's in standby or "sleep" mode. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetConsoleScreenshotRequest AWS API Documentation # class GetConsoleScreenshotRequest < Struct.new( :dry_run, :instance_id, :wake_up) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] image_data # The data that comprises the image. # @return [String] # # @!attribute [rw] instance_id # The ID of the instance. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetConsoleScreenshotResult AWS API Documentation # class GetConsoleScreenshotResult < Struct.new( :image_data, :instance_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] instance_family # The instance family. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetDefaultCreditSpecificationRequest AWS API Documentation # class GetDefaultCreditSpecificationRequest < Struct.new( :dry_run, :instance_family) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] instance_family_credit_specification # The default credit option for CPU usage of the instance family. # @return [Types::InstanceFamilyCreditSpecification] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetDefaultCreditSpecificationResult AWS API Documentation # class GetDefaultCreditSpecificationResult < Struct.new( :instance_family_credit_specification) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetEbsDefaultKmsKeyIdRequest AWS API Documentation # class GetEbsDefaultKmsKeyIdRequest < Struct.new( :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] kms_key_id # The Amazon Resource Name (ARN) of the default KMS key for encryption # by default. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetEbsDefaultKmsKeyIdResult AWS API Documentation # class GetEbsDefaultKmsKeyIdResult < Struct.new( :kms_key_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetEbsEncryptionByDefaultRequest AWS API Documentation # class GetEbsEncryptionByDefaultRequest < Struct.new( :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] ebs_encryption_by_default # Indicates whether encryption by default is enabled. # @return [Boolean] # # @!attribute [rw] sse_type # Reserved for future use. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetEbsEncryptionByDefaultResult AWS API Documentation # class GetEbsEncryptionByDefaultResult < Struct.new( :ebs_encryption_by_default, :sse_type) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] flow_log_id # The ID of the flow log. # @return [String] # # @!attribute [rw] config_delivery_s3_destination_arn # To store the CloudFormation template in Amazon S3, specify the # location in Amazon S3. # @return [String] # # @!attribute [rw] integrate_services # Information about the service integration. # @return [Types::IntegrateServices] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetFlowLogsIntegrationTemplateRequest AWS API Documentation # class GetFlowLogsIntegrationTemplateRequest < Struct.new( :dry_run, :flow_log_id, :config_delivery_s3_destination_arn, :integrate_services) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] result # The generated CloudFormation template. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetFlowLogsIntegrationTemplateResult AWS API Documentation # class GetFlowLogsIntegrationTemplateResult < Struct.new( :result) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] capacity_reservation_id # The ID of the Capacity Reservation. If you specify a Capacity # Reservation that is shared with you, the operation returns only # Capacity Reservation groups that you own. # @return [String] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. # @return [String] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. For more information, see [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetGroupsForCapacityReservationRequest AWS API Documentation # class GetGroupsForCapacityReservationRequest < Struct.new( :capacity_reservation_id, :next_token, :max_results, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @!attribute [rw] capacity_reservation_groups # Information about the resource groups to which the Capacity # Reservation has been added. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetGroupsForCapacityReservationResult AWS API Documentation # class GetGroupsForCapacityReservationResult < Struct.new( :next_token, :capacity_reservation_groups) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] host_id_set # The IDs of the Dedicated Hosts with which the reservation is # associated. # @return [Array] # # @!attribute [rw] offering_id # The offering ID of the reservation. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetHostReservationPurchasePreviewRequest AWS API Documentation # class GetHostReservationPurchasePreviewRequest < Struct.new( :host_id_set, :offering_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] currency_code # The currency in which the `totalUpfrontPrice` and `totalHourlyPrice` # amounts are specified. At this time, the only supported currency is # `USD`. # @return [String] # # @!attribute [rw] purchase # The purchase information of the Dedicated Host reservation and the # Dedicated Hosts associated with it. # @return [Array] # # @!attribute [rw] total_hourly_price # The potential total hourly price of the reservation per hour. # @return [String] # # @!attribute [rw] total_upfront_price # The potential total upfront price. This is billed immediately. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetHostReservationPurchasePreviewResult AWS API Documentation # class GetHostReservationPurchasePreviewResult < Struct.new( :currency_code, :purchase, :total_hourly_price, :total_upfront_price) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetImageBlockPublicAccessStateRequest AWS API Documentation # class GetImageBlockPublicAccessStateRequest < Struct.new( :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] image_block_public_access_state # The current state of block public access for AMIs at the account # level in the specified Amazon Web Services Region. # # Possible values: # # * `block-new-sharing` - Any attempt to publicly share your AMIs in # the specified Region is blocked. # # * `unblocked` - Your AMIs in the specified Region can be publicly # shared. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetImageBlockPublicAccessStateResult AWS API Documentation # class GetImageBlockPublicAccessStateResult < Struct.new( :image_block_public_access_state) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetInstanceMetadataDefaultsRequest AWS API Documentation # class GetInstanceMetadataDefaultsRequest < Struct.new( :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] account_level # The account-level default IMDS settings. # @return [Types::InstanceMetadataDefaultsResponse] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetInstanceMetadataDefaultsResult AWS API Documentation # class GetInstanceMetadataDefaultsResult < Struct.new( :account_level) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] architecture_types # The processor architecture type. # @return [Array] # # @!attribute [rw] virtualization_types # The virtualization type. # @return [Array] # # @!attribute [rw] instance_requirements # The attributes required for the instance types. # @return [Types::InstanceRequirementsRequest] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. For more information, see [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @!attribute [rw] next_token # The token returned from a previous paginated request. Pagination # continues from the end of the items returned by the previous # request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetInstanceTypesFromInstanceRequirementsRequest AWS API Documentation # class GetInstanceTypesFromInstanceRequirementsRequest < Struct.new( :dry_run, :architecture_types, :virtualization_types, :instance_requirements, :max_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] instance_types # The instance types with the specified instance attributes. # @return [Array] # # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` when there are no more items to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetInstanceTypesFromInstanceRequirementsResult AWS API Documentation # class GetInstanceTypesFromInstanceRequirementsResult < Struct.new( :instance_types, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] instance_id # The ID of the instance from which to retrieve the UEFI data. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetInstanceUefiDataRequest AWS API Documentation # class GetInstanceUefiDataRequest < Struct.new( :instance_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] instance_id # The ID of the instance from which to retrieve the UEFI data. # @return [String] # # @!attribute [rw] uefi_data # Base64 representation of the non-volatile UEFI variable store. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetInstanceUefiDataResult AWS API Documentation # class GetInstanceUefiDataResult < Struct.new( :instance_id, :uefi_data) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # A check for whether you have the required permissions for the action # without actually making the request and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] cidr # The CIDR you want the history of. The CIDR can be an IPv4 or IPv6 IP # address range. If you enter a /16 IPv4 CIDR, you will get records # that match it exactly. You will not get records for any subnets # within the /16 CIDR. # @return [String] # # @!attribute [rw] ipam_scope_id # The ID of the IPAM scope that the CIDR is in. # @return [String] # # @!attribute [rw] vpc_id # The ID of the VPC you want your history records filtered by. # @return [String] # # @!attribute [rw] start_time # The start of the time period for which you are looking for history. # If you omit this option, it will default to the value of EndTime. # @return [Time] # # @!attribute [rw] end_time # The end of the time period for which you are looking for history. If # you omit this option, it will default to the current time. # @return [Time] # # @!attribute [rw] max_results # The maximum number of historical results you would like returned per # page. Defaults to 100. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetIpamAddressHistoryRequest AWS API Documentation # class GetIpamAddressHistoryRequest < Struct.new( :dry_run, :cidr, :ipam_scope_id, :vpc_id, :start_time, :end_time, :max_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] history_records # A historical record for a CIDR within an IPAM scope. If the CIDR is # associated with an EC2 instance, you will see an object in the # response for the instance and one for the network interface. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetIpamAddressHistoryResult AWS API Documentation # class GetIpamAddressHistoryResult < Struct.new( :history_records, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # A check for whether you have the required permissions for the action # without actually making the request and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] ipam_resource_discovery_id # A resource discovery ID. # @return [String] # # @!attribute [rw] discovery_region # The Amazon Web Services Region that the account information is # returned from. # @return [String] # # @!attribute [rw] filters # Discovered account filters. # @return [Array] # # @!attribute [rw] next_token # Specify the pagination token from a previous request to retrieve the # next page of results. # @return [String] # # @!attribute [rw] max_results # The maximum number of discovered accounts to return in one page of # results. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetIpamDiscoveredAccountsRequest AWS API Documentation # class GetIpamDiscoveredAccountsRequest < Struct.new( :dry_run, :ipam_resource_discovery_id, :discovery_region, :filters, :next_token, :max_results) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] ipam_discovered_accounts # Discovered accounts. # @return [Array] # # @!attribute [rw] next_token # Specify the pagination token from a previous request to retrieve the # next page of results. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetIpamDiscoveredAccountsResult AWS API Documentation # class GetIpamDiscoveredAccountsResult < Struct.new( :ipam_discovered_accounts, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # A check for whether you have the required permissions for the action # without actually making the request and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] ipam_resource_discovery_id # An IPAM resource discovery ID. # @return [String] # # @!attribute [rw] address_region # The Amazon Web Services Region for the IP address. # @return [String] # # @!attribute [rw] filters # Filters. # @return [Array] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] max_results # The maximum number of IPAM discovered public addresses to return in # one page of results. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetIpamDiscoveredPublicAddressesRequest AWS API Documentation # class GetIpamDiscoveredPublicAddressesRequest < Struct.new( :dry_run, :ipam_resource_discovery_id, :address_region, :filters, :next_token, :max_results) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] ipam_discovered_public_addresses # IPAM discovered public addresses. # @return [Array] # # @!attribute [rw] oldest_sample_time # The oldest successful resource discovery time. # @return [Time] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetIpamDiscoveredPublicAddressesResult AWS API Documentation # class GetIpamDiscoveredPublicAddressesResult < Struct.new( :ipam_discovered_public_addresses, :oldest_sample_time, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # A check for whether you have the required permissions for the action # without actually making the request and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] ipam_resource_discovery_id # A resource discovery ID. # @return [String] # # @!attribute [rw] resource_region # A resource Region. # @return [String] # # @!attribute [rw] filters # Filters. # @return [Array] # # @!attribute [rw] next_token # Specify the pagination token from a previous request to retrieve the # next page of results. # @return [String] # # @!attribute [rw] max_results # The maximum number of discovered resource CIDRs to return in one # page of results. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetIpamDiscoveredResourceCidrsRequest AWS API Documentation # class GetIpamDiscoveredResourceCidrsRequest < Struct.new( :dry_run, :ipam_resource_discovery_id, :resource_region, :filters, :next_token, :max_results) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] ipam_discovered_resource_cidrs # Discovered resource CIDRs. # @return [Array] # # @!attribute [rw] next_token # Specify the pagination token from a previous request to retrieve the # next page of results. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetIpamDiscoveredResourceCidrsResult AWS API Documentation # class GetIpamDiscoveredResourceCidrsResult < Struct.new( :ipam_discovered_resource_cidrs, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # A check for whether you have the required permissions for the action # without actually making the request and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] ipam_pool_id # The ID of the IPAM pool you want to see the allocations for. # @return [String] # # @!attribute [rw] ipam_pool_allocation_id # The ID of the allocation. # @return [String] # # @!attribute [rw] filters # One or more filters for the request. For more information about # filtering, see [Filtering CLI output][1]. # # # # [1]: https://docs.aws.amazon.com/cli/latest/userguide/cli-usage-filter.html # @return [Array] # # @!attribute [rw] max_results # The maximum number of results you would like returned per page. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetIpamPoolAllocationsRequest AWS API Documentation # class GetIpamPoolAllocationsRequest < Struct.new( :dry_run, :ipam_pool_id, :ipam_pool_allocation_id, :filters, :max_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] ipam_pool_allocations # The IPAM pool allocations you want information on. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetIpamPoolAllocationsResult AWS API Documentation # class GetIpamPoolAllocationsResult < Struct.new( :ipam_pool_allocations, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # A check for whether you have the required permissions for the action # without actually making the request and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] ipam_pool_id # The ID of the IPAM pool you want the CIDR for. # @return [String] # # @!attribute [rw] filters # One or more filters for the request. For more information about # filtering, see [Filtering CLI output][1]. # # # # [1]: https://docs.aws.amazon.com/cli/latest/userguide/cli-usage-filter.html # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return in the request. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetIpamPoolCidrsRequest AWS API Documentation # class GetIpamPoolCidrsRequest < Struct.new( :dry_run, :ipam_pool_id, :filters, :max_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] ipam_pool_cidrs # Information about the CIDRs provisioned to an IPAM pool. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetIpamPoolCidrsResult AWS API Documentation # class GetIpamPoolCidrsResult < Struct.new( :ipam_pool_cidrs, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # A check for whether you have the required permissions for the action # without actually making the request and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] filters # One or more filters for the request. For more information about # filtering, see [Filtering CLI output][1]. # # # # [1]: https://docs.aws.amazon.com/cli/latest/userguide/cli-usage-filter.html # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return in the request. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] ipam_scope_id # The ID of the scope that the resource is in. # @return [String] # # @!attribute [rw] ipam_pool_id # The ID of the IPAM pool that the resource is in. # @return [String] # # @!attribute [rw] resource_id # The ID of the resource. # @return [String] # # @!attribute [rw] resource_type # The resource type. # @return [String] # # @!attribute [rw] resource_tag # The resource tag. # @return [Types::RequestIpamResourceTag] # # @!attribute [rw] resource_owner # The ID of the Amazon Web Services account that owns the resource. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetIpamResourceCidrsRequest AWS API Documentation # class GetIpamResourceCidrsRequest < Struct.new( :dry_run, :filters, :max_results, :next_token, :ipam_scope_id, :ipam_pool_id, :resource_id, :resource_type, :resource_tag, :resource_owner) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @!attribute [rw] ipam_resource_cidrs # The resource CIDRs. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetIpamResourceCidrsResult AWS API Documentation # class GetIpamResourceCidrsResult < Struct.new( :next_token, :ipam_resource_cidrs) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] instance_id # The ID of the instance. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetLaunchTemplateDataRequest AWS API Documentation # class GetLaunchTemplateDataRequest < Struct.new( :dry_run, :instance_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] launch_template_data # The instance data. # @return [Types::ResponseLaunchTemplateData] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetLaunchTemplateDataResult AWS API Documentation # class GetLaunchTemplateDataResult < Struct.new( :launch_template_data) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] prefix_list_id # The ID of the prefix list. # @return [String] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetManagedPrefixListAssociationsRequest AWS API Documentation # class GetManagedPrefixListAssociationsRequest < Struct.new( :dry_run, :prefix_list_id, :max_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] prefix_list_associations # Information about the associations. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetManagedPrefixListAssociationsResult AWS API Documentation # class GetManagedPrefixListAssociationsResult < Struct.new( :prefix_list_associations, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] prefix_list_id # The ID of the prefix list. # @return [String] # # @!attribute [rw] target_version # The version of the prefix list for which to return the entries. The # default is the current version. # @return [Integer] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetManagedPrefixListEntriesRequest AWS API Documentation # class GetManagedPrefixListEntriesRequest < Struct.new( :dry_run, :prefix_list_id, :target_version, :max_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] entries # Information about the prefix list entries. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetManagedPrefixListEntriesResult AWS API Documentation # class GetManagedPrefixListEntriesResult < Struct.new( :entries, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] network_insights_access_scope_analysis_id # The ID of the Network Access Scope analysis. # @return [String] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetNetworkInsightsAccessScopeAnalysisFindingsRequest AWS API Documentation # class GetNetworkInsightsAccessScopeAnalysisFindingsRequest < Struct.new( :network_insights_access_scope_analysis_id, :max_results, :next_token, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] network_insights_access_scope_analysis_id # The ID of the Network Access Scope analysis. # @return [String] # # @!attribute [rw] analysis_status # The status of Network Access Scope Analysis. # @return [String] # # @!attribute [rw] analysis_findings # The findings associated with Network Access Scope Analysis. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetNetworkInsightsAccessScopeAnalysisFindingsResult AWS API Documentation # class GetNetworkInsightsAccessScopeAnalysisFindingsResult < Struct.new( :network_insights_access_scope_analysis_id, :analysis_status, :analysis_findings, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] network_insights_access_scope_id # The ID of the Network Access Scope. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetNetworkInsightsAccessScopeContentRequest AWS API Documentation # class GetNetworkInsightsAccessScopeContentRequest < Struct.new( :network_insights_access_scope_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] network_insights_access_scope_content # The Network Access Scope content. # @return [Types::NetworkInsightsAccessScopeContent] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetNetworkInsightsAccessScopeContentResult AWS API Documentation # class GetNetworkInsightsAccessScopeContentResult < Struct.new( :network_insights_access_scope_content) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] instance_id # The ID of the Windows instance. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetPasswordDataRequest AWS API Documentation # class GetPasswordDataRequest < Struct.new( :instance_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] instance_id # The ID of the Windows instance. # @return [String] # # @!attribute [rw] password_data # The password of the instance. Returns an empty string if the # password is not available. # @return [String] # # @!attribute [rw] timestamp # The time the data was last updated. # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetPasswordDataResult AWS API Documentation # class GetPasswordDataResult < Struct.new( :instance_id, :password_data, :timestamp) SENSITIVE = [:password_data] include Aws::Structure end # Contains the parameters for GetReservedInstanceExchangeQuote. # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] reserved_instance_ids # The IDs of the Convertible Reserved Instances to exchange. # @return [Array] # # @!attribute [rw] target_configurations # The configuration of the target Convertible Reserved Instance to # exchange for your current Convertible Reserved Instances. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetReservedInstancesExchangeQuoteRequest AWS API Documentation # class GetReservedInstancesExchangeQuoteRequest < Struct.new( :dry_run, :reserved_instance_ids, :target_configurations) SENSITIVE = [] include Aws::Structure end # Contains the output of GetReservedInstancesExchangeQuote. # # @!attribute [rw] currency_code # The currency of the transaction. # @return [String] # # @!attribute [rw] is_valid_exchange # If `true`, the exchange is valid. If `false`, the exchange cannot be # completed. # @return [Boolean] # # @!attribute [rw] output_reserved_instances_will_expire_at # The new end date of the reservation term. # @return [Time] # # @!attribute [rw] payment_due # The total true upfront charge for the exchange. # @return [String] # # @!attribute [rw] reserved_instance_value_rollup # The cost associated with the Reserved Instance. # @return [Types::ReservationValue] # # @!attribute [rw] reserved_instance_value_set # The configuration of your Convertible Reserved Instances. # @return [Array] # # @!attribute [rw] target_configuration_value_rollup # The cost associated with the Reserved Instance. # @return [Types::ReservationValue] # # @!attribute [rw] target_configuration_value_set # The values of the target Convertible Reserved Instances. # @return [Array] # # @!attribute [rw] validation_failure_reason # Describes the reason why the exchange cannot be completed. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetReservedInstancesExchangeQuoteResult AWS API Documentation # class GetReservedInstancesExchangeQuoteResult < Struct.new( :currency_code, :is_valid_exchange, :output_reserved_instances_will_expire_at, :payment_due, :reserved_instance_value_rollup, :reserved_instance_value_set, :target_configuration_value_rollup, :target_configuration_value_set, :validation_failure_reason) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] vpc_id # The VPC ID where the security group can be used. # @return [String] # # @!attribute [rw] next_token # The token returned from a previous paginated request. Pagination # continues from the end of the items returned by the previous # request. # @return [String] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. For more information, see [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @!attribute [rw] filters # The filters. If using multiple filters, the results include security # groups which match all filters. # # * `group-id`: The security group ID. # # * `description`: The security group's description. # # * `group-name`: The security group name. # # * `owner-id`: The security group owner ID. # # * `primary-vpc-id`: The VPC ID in which the security group was # created. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetSecurityGroupsForVpcRequest AWS API Documentation # class GetSecurityGroupsForVpcRequest < Struct.new( :vpc_id, :next_token, :max_results, :filters, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` when there are no more items to return. # @return [String] # # @!attribute [rw] security_group_for_vpcs # The security group that can be used by interfaces in the VPC. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetSecurityGroupsForVpcResult AWS API Documentation # class GetSecurityGroupsForVpcResult < Struct.new( :next_token, :security_group_for_vpcs) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetSerialConsoleAccessStatusRequest AWS API Documentation # class GetSerialConsoleAccessStatusRequest < Struct.new( :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] serial_console_access_enabled # If `true`, access to the EC2 serial console of all instances is # enabled for your account. If `false`, access to the EC2 serial # console of all instances is disabled for your account. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetSerialConsoleAccessStatusResult AWS API Documentation # class GetSerialConsoleAccessStatusResult < Struct.new( :serial_console_access_enabled) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetSnapshotBlockPublicAccessStateRequest AWS API Documentation # class GetSnapshotBlockPublicAccessStateRequest < Struct.new( :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] state # The current state of block public access for snapshots. Possible # values include: # # * `block-all-sharing` - All public sharing of snapshots is blocked. # Users in the account can't request new public sharing. # Additionally, snapshots that were already publicly shared are # treated as private and are not publicly available. # # * `block-new-sharing` - Only new public sharing of snapshots is # blocked. Users in the account can't request new public sharing. # However, snapshots that were already publicly shared, remain # publicly available. # # * `unblocked` - Public sharing is not blocked. Users can publicly # share snapshots. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetSnapshotBlockPublicAccessStateResult AWS API Documentation # class GetSnapshotBlockPublicAccessStateResult < Struct.new( :state) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] instance_types # The instance types. We recommend that you specify at least three # instance types. If you specify one or two instance types, or specify # variations of a single instance type (for example, an `m3.xlarge` # with and without instance storage), the returned placement score # will always be low. # # If you specify `InstanceTypes`, you can't specify # `InstanceRequirementsWithMetadata`. # @return [Array] # # @!attribute [rw] target_capacity # The target capacity. # @return [Integer] # # @!attribute [rw] target_capacity_unit_type # The unit for the target capacity. # @return [String] # # @!attribute [rw] single_availability_zone # Specify `true` so that the response returns a list of scored # Availability Zones. Otherwise, the response returns a list of scored # Regions. # # A list of scored Availability Zones is useful if you want to launch # all of your Spot capacity into a single Availability Zone. # @return [Boolean] # # @!attribute [rw] region_names # The Regions used to narrow down the list of Regions to be scored. # Enter the Region code, for example, `us-east-1`. # @return [Array] # # @!attribute [rw] instance_requirements_with_metadata # The attributes for the instance types. When you specify instance # attributes, Amazon EC2 will identify instance types with those # attributes. # # If you specify `InstanceRequirementsWithMetadata`, you can't # specify `InstanceTypes`. # @return [Types::InstanceRequirementsWithMetadataRequest] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. For more information, see [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @!attribute [rw] next_token # The token returned from a previous paginated request. Pagination # continues from the end of the items returned by the previous # request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetSpotPlacementScoresRequest AWS API Documentation # class GetSpotPlacementScoresRequest < Struct.new( :instance_types, :target_capacity, :target_capacity_unit_type, :single_availability_zone, :region_names, :instance_requirements_with_metadata, :dry_run, :max_results, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] spot_placement_scores # The Spot placement score for the top 10 Regions or Availability # Zones, scored on a scale from 1 to 10. Each score
 reflects how # likely it is that each Region or Availability Zone will succeed at # fulfilling the specified target capacity
 *at the time of the Spot # placement score request*. A score of `10` means that your Spot # capacity request is highly likely to succeed in that Region or # Availability Zone. # # If you request a Spot placement score for Regions, a high score # assumes that your fleet request will be configured to use all # Availability Zones and the `capacity-optimized` allocation strategy. # If you request a Spot placement score for Availability Zones, a high # score assumes that your fleet request will be configured to use a # single Availability Zone and the `capacity-optimized` allocation # strategy. # # Different
 Regions or Availability Zones might return the same # score. # # The Spot placement score serves as a recommendation only. No score # guarantees that your Spot request will be fully or partially # fulfilled. # # # @return [Array] # # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` when there are no more items to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetSpotPlacementScoresResult AWS API Documentation # class GetSpotPlacementScoresResult < Struct.new( :spot_placement_scores, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] filters # One or more filters. # # * `reservationType` - The type of reservation (`prefix` \| # `explicit`). # # * `subnet-id` - The ID of the subnet. # # * `tag`:<key> - 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. # # * `tag-key` - 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. # @return [Array] # # @!attribute [rw] subnet_id # The ID of the subnet. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetSubnetCidrReservationsRequest AWS API Documentation # class GetSubnetCidrReservationsRequest < Struct.new( :filters, :subnet_id, :dry_run, :next_token, :max_results) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] subnet_ipv_4_cidr_reservations # Information about the IPv4 subnet CIDR reservations. # @return [Array] # # @!attribute [rw] subnet_ipv_6_cidr_reservations # Information about the IPv6 subnet CIDR reservations. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetSubnetCidrReservationsResult AWS API Documentation # class GetSubnetCidrReservationsResult < Struct.new( :subnet_ipv_4_cidr_reservations, :subnet_ipv_6_cidr_reservations, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_attachment_id # The ID of the attachment. # @return [String] # # @!attribute [rw] filters # One or more filters. The possible values are: # # * `transit-gateway-route-table-id` - The ID of the transit gateway # route table. # # ^ # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetTransitGatewayAttachmentPropagationsRequest AWS API Documentation # class GetTransitGatewayAttachmentPropagationsRequest < Struct.new( :transit_gateway_attachment_id, :filters, :max_results, :next_token, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_attachment_propagations # Information about the propagation route tables. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetTransitGatewayAttachmentPropagationsResult AWS API Documentation # class GetTransitGatewayAttachmentPropagationsResult < Struct.new( :transit_gateway_attachment_propagations, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_multicast_domain_id # The ID of the transit gateway multicast domain. # @return [String] # # @!attribute [rw] filters # One or more filters. The possible values are: # # * `resource-id` - The ID of the resource. # # * `resource-type` - The type of resource. The valid value is: `vpc`. # # * `state` - The state of the subnet association. Valid values are # `associated` \| `associating` \| `disassociated` \| # `disassociating`. # # * `subnet-id` - The ID of the subnet. # # * `transit-gateway-attachment-id` - The id of the transit gateway # attachment. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetTransitGatewayMulticastDomainAssociationsRequest AWS API Documentation # class GetTransitGatewayMulticastDomainAssociationsRequest < Struct.new( :transit_gateway_multicast_domain_id, :filters, :max_results, :next_token, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] multicast_domain_associations # Information about the multicast domain associations. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetTransitGatewayMulticastDomainAssociationsResult AWS API Documentation # class GetTransitGatewayMulticastDomainAssociationsResult < Struct.new( :multicast_domain_associations, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_policy_table_id # The ID of the transit gateway policy table. # @return [String] # # @!attribute [rw] filters # The filters associated with the transit gateway policy table. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetTransitGatewayPolicyTableAssociationsRequest AWS API Documentation # class GetTransitGatewayPolicyTableAssociationsRequest < Struct.new( :transit_gateway_policy_table_id, :filters, :max_results, :next_token, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] associations # Returns details about the transit gateway policy table association. # @return [Array] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetTransitGatewayPolicyTableAssociationsResult AWS API Documentation # class GetTransitGatewayPolicyTableAssociationsResult < Struct.new( :associations, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_policy_table_id # The ID of the transit gateway policy table. # @return [String] # # @!attribute [rw] filters # The filters associated with the transit gateway policy table. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetTransitGatewayPolicyTableEntriesRequest AWS API Documentation # class GetTransitGatewayPolicyTableEntriesRequest < Struct.new( :transit_gateway_policy_table_id, :filters, :max_results, :next_token, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_policy_table_entries # The entries for the transit gateway policy table. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetTransitGatewayPolicyTableEntriesResult AWS API Documentation # class GetTransitGatewayPolicyTableEntriesResult < Struct.new( :transit_gateway_policy_table_entries) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_route_table_id # The ID of the transit gateway route table. # @return [String] # # @!attribute [rw] filters # One or more filters. The possible values are: # # * `attachment.resource-id` - The ID of the resource for the # attachment. # # * `attachment.resource-type` - The type of resource for the # attachment. Valid values are `vpc` \| `vpn` \| # `direct-connect-gateway` \| `peering`. # # * `attachment.transit-gateway-attachment-id` - The ID of the # attachment. # # * `is-blackhole` - Whether traffic matching the route is blocked # (`true` \| `false`). # # * `prefix-list-id` - The ID of the prefix list. # # * `prefix-list-owner-id` - The ID of the owner of the prefix list. # # * `state` - The state of the prefix list reference (`pending` \| # `available` \| `modifying` \| `deleting`). # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetTransitGatewayPrefixListReferencesRequest AWS API Documentation # class GetTransitGatewayPrefixListReferencesRequest < Struct.new( :transit_gateway_route_table_id, :filters, :max_results, :next_token, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_prefix_list_references # Information about the prefix list references. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetTransitGatewayPrefixListReferencesResult AWS API Documentation # class GetTransitGatewayPrefixListReferencesResult < Struct.new( :transit_gateway_prefix_list_references, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_route_table_id # The ID of the transit gateway route table. # @return [String] # # @!attribute [rw] filters # One or more filters. The possible values are: # # * `resource-id` - The ID of the resource. # # * `resource-type` - The resource type. Valid values are `vpc` \| # `vpn` \| `direct-connect-gateway` \| `peering` \| `connect`. # # * `transit-gateway-attachment-id` - The ID of the attachment. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetTransitGatewayRouteTableAssociationsRequest AWS API Documentation # class GetTransitGatewayRouteTableAssociationsRequest < Struct.new( :transit_gateway_route_table_id, :filters, :max_results, :next_token, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] associations # Information about the associations. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetTransitGatewayRouteTableAssociationsResult AWS API Documentation # class GetTransitGatewayRouteTableAssociationsResult < Struct.new( :associations, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_route_table_id # The ID of the transit gateway route table. # @return [String] # # @!attribute [rw] filters # One or more filters. The possible values are: # # * `resource-id` - The ID of the resource. # # * `resource-type` - The resource type. Valid values are `vpc` \| # `vpn` \| `direct-connect-gateway` \| `peering` \| `connect`. # # * `transit-gateway-attachment-id` - The ID of the attachment. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetTransitGatewayRouteTablePropagationsRequest AWS API Documentation # class GetTransitGatewayRouteTablePropagationsRequest < Struct.new( :transit_gateway_route_table_id, :filters, :max_results, :next_token, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_route_table_propagations # Information about the route table propagations. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetTransitGatewayRouteTablePropagationsResult AWS API Documentation # class GetTransitGatewayRouteTablePropagationsResult < Struct.new( :transit_gateway_route_table_propagations, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] verified_access_endpoint_id # The ID of the Verified Access endpoint. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetVerifiedAccessEndpointPolicyRequest AWS API Documentation # class GetVerifiedAccessEndpointPolicyRequest < Struct.new( :verified_access_endpoint_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] policy_enabled # The status of the Verified Access policy. # @return [Boolean] # # @!attribute [rw] policy_document # The Verified Access policy document. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetVerifiedAccessEndpointPolicyResult AWS API Documentation # class GetVerifiedAccessEndpointPolicyResult < Struct.new( :policy_enabled, :policy_document) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] verified_access_group_id # The ID of the Verified Access group. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetVerifiedAccessGroupPolicyRequest AWS API Documentation # class GetVerifiedAccessGroupPolicyRequest < Struct.new( :verified_access_group_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] policy_enabled # The status of the Verified Access policy. # @return [Boolean] # # @!attribute [rw] policy_document # The Verified Access policy document. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetVerifiedAccessGroupPolicyResult AWS API Documentation # class GetVerifiedAccessGroupPolicyResult < Struct.new( :policy_enabled, :policy_document) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] vpn_connection_id # The `VpnConnectionId` specifies the Site-to-Site VPN connection used # for the sample configuration. # @return [String] # # @!attribute [rw] vpn_connection_device_type_id # Device identifier provided by the `GetVpnConnectionDeviceTypes` API. # @return [String] # # @!attribute [rw] internet_key_exchange_version # The IKE version to be used in the sample configuration file for your # customer gateway device. You can specify one of the following # versions: `ikev1` or `ikev2`. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetVpnConnectionDeviceSampleConfigurationRequest AWS API Documentation # class GetVpnConnectionDeviceSampleConfigurationRequest < Struct.new( :vpn_connection_id, :vpn_connection_device_type_id, :internet_key_exchange_version, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] vpn_connection_device_sample_configuration # Sample configuration file for the specified customer gateway device. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetVpnConnectionDeviceSampleConfigurationResult AWS API Documentation # class GetVpnConnectionDeviceSampleConfigurationResult < Struct.new( :vpn_connection_device_sample_configuration) SENSITIVE = [:vpn_connection_device_sample_configuration] include Aws::Structure end # @!attribute [rw] max_results # The maximum number of results returned by # `GetVpnConnectionDeviceTypes` in paginated output. When this # parameter is used, `GetVpnConnectionDeviceTypes` only returns # `MaxResults` results in a single page along with a `NextToken` # response element. The remaining results of the initial request can # be seen by sending another `GetVpnConnectionDeviceTypes` request # with the returned `NextToken` value. This value can be between 200 # and 1000. If this parameter is not used, then # `GetVpnConnectionDeviceTypes` returns all results. # @return [Integer] # # @!attribute [rw] next_token # The `NextToken` value returned from a previous paginated # `GetVpnConnectionDeviceTypes` request where `MaxResults` was used # and the results exceeded the value of that parameter. Pagination # continues from the end of the previous results that returned the # `NextToken` value. This value is null when there are no more results # to return. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetVpnConnectionDeviceTypesRequest AWS API Documentation # class GetVpnConnectionDeviceTypesRequest < Struct.new( :max_results, :next_token, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] vpn_connection_device_types # List of customer gateway devices that have a sample configuration # file available for use. # @return [Array] # # @!attribute [rw] next_token # The `NextToken` value to include in a future # `GetVpnConnectionDeviceTypes` request. When the results of a # `GetVpnConnectionDeviceTypes` request exceed `MaxResults`, this # value can be used to retrieve the next page of results. This value # is null when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetVpnConnectionDeviceTypesResult AWS API Documentation # class GetVpnConnectionDeviceTypesResult < Struct.new( :vpn_connection_device_types, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] vpn_connection_id # The ID of the Site-to-Site VPN connection. # @return [String] # # @!attribute [rw] vpn_tunnel_outside_ip_address # The external IP address of the VPN tunnel. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetVpnTunnelReplacementStatusRequest AWS API Documentation # class GetVpnTunnelReplacementStatusRequest < Struct.new( :vpn_connection_id, :vpn_tunnel_outside_ip_address, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] vpn_connection_id # The ID of the Site-to-Site VPN connection. # @return [String] # # @!attribute [rw] transit_gateway_id # The ID of the transit gateway associated with the VPN connection. # @return [String] # # @!attribute [rw] customer_gateway_id # The ID of the customer gateway. # @return [String] # # @!attribute [rw] vpn_gateway_id # The ID of the virtual private gateway. # @return [String] # # @!attribute [rw] vpn_tunnel_outside_ip_address # The external IP address of the VPN tunnel. # @return [String] # # @!attribute [rw] maintenance_details # Get details of pending tunnel endpoint maintenance. # @return [Types::MaintenanceDetails] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GetVpnTunnelReplacementStatusResult AWS API Documentation # class GetVpnTunnelReplacementStatusResult < Struct.new( :vpn_connection_id, :transit_gateway_id, :customer_gateway_id, :vpn_gateway_id, :vpn_tunnel_outside_ip_address, :maintenance_details) SENSITIVE = [] include Aws::Structure end # Describes the GPU accelerators for the instance type. # # @!attribute [rw] name # The name of the GPU accelerator. # @return [String] # # @!attribute [rw] manufacturer # The manufacturer of the GPU accelerator. # @return [String] # # @!attribute [rw] count # The number of GPUs for the instance type. # @return [Integer] # # @!attribute [rw] memory_info # Describes the memory available to the GPU accelerator. # @return [Types::GpuDeviceMemoryInfo] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GpuDeviceInfo AWS API Documentation # class GpuDeviceInfo < Struct.new( :name, :manufacturer, :count, :memory_info) SENSITIVE = [] include Aws::Structure end # Describes the memory available to the GPU accelerator. # # @!attribute [rw] size_in_mi_b # The size of the memory available to the GPU accelerator, in MiB. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GpuDeviceMemoryInfo AWS API Documentation # class GpuDeviceMemoryInfo < Struct.new( :size_in_mi_b) SENSITIVE = [] include Aws::Structure end # Describes the GPU accelerators for the instance type. # # @!attribute [rw] gpus # Describes the GPU accelerators for the instance type. # @return [Array] # # @!attribute [rw] total_gpu_memory_in_mi_b # The total size of the memory for the GPU accelerators for the # instance type, in MiB. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GpuInfo AWS API Documentation # class GpuInfo < Struct.new( :gpus, :total_gpu_memory_in_mi_b) SENSITIVE = [] include Aws::Structure end # Describes a security group. # # @!attribute [rw] group_name # The name of the security group. # @return [String] # # @!attribute [rw] group_id # The ID of the security group. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/GroupIdentifier AWS API Documentation # class GroupIdentifier < Struct.new( :group_name, :group_id) SENSITIVE = [] include Aws::Structure end # Indicates whether your instance is configured for hibernation. This # parameter is valid only if the instance meets the [hibernation # prerequisites][1]. For more information, see [Hibernate your # instance][2] in the *Amazon EC2 User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/hibernating-prerequisites.html # [2]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Hibernate.html # # @!attribute [rw] configured # If `true`, your instance is enabled for hibernation; otherwise, it # is not enabled for hibernation. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/HibernationOptions AWS API Documentation # class HibernationOptions < Struct.new( :configured) SENSITIVE = [] include Aws::Structure end # Indicates whether your instance is configured for hibernation. This # parameter is valid only if the instance meets the [hibernation # prerequisites][1]. For more information, see [Hibernate your # instance][2] in the *Amazon EC2 User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/hibernating-prerequisites.html # [2]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Hibernate.html # # @!attribute [rw] configured # 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` ][1]), 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` # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SpotMarketOptions.html # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/HibernationOptionsRequest AWS API Documentation # class HibernationOptionsRequest < Struct.new( :configured) SENSITIVE = [] include Aws::Structure end # Describes an event in the history of the Spot Fleet request. # # @!attribute [rw] event_information # Information about the event. # @return [Types::EventInformation] # # @!attribute [rw] event_type # 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. # @return [String] # # @!attribute [rw] timestamp # The date and time of the event, in UTC format (for example, # *YYYY*-*MM*-*DD*T*HH*:*MM*:*SS*Z). # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/HistoryRecord AWS API Documentation # class HistoryRecord < Struct.new( :event_information, :event_type, :timestamp) SENSITIVE = [] include Aws::Structure end # Describes an event in the history of an EC2 Fleet. # # @!attribute [rw] event_information # Information about the event. # @return [Types::EventInformation] # # @!attribute [rw] event_type # The event type. # @return [String] # # @!attribute [rw] timestamp # The date and time of the event, in UTC format (for example, # *YYYY*-*MM*-*DD*T*HH*:*MM*:*SS*Z). # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/HistoryRecordEntry AWS API Documentation # class HistoryRecordEntry < Struct.new( :event_information, :event_type, :timestamp) SENSITIVE = [] include Aws::Structure end # Describes the properties of the Dedicated Host. # # @!attribute [rw] auto_placement # Whether auto-placement is on or off. # @return [String] # # @!attribute [rw] availability_zone # The Availability Zone of the Dedicated Host. # @return [String] # # @!attribute [rw] available_capacity # Information about the instances running on the Dedicated Host. # @return [Types::AvailableCapacity] # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. For more information, see [Ensuring # Idempotency][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] host_id # The ID of the Dedicated Host. # @return [String] # # @!attribute [rw] host_properties # The hardware specifications of the Dedicated Host. # @return [Types::HostProperties] # # @!attribute [rw] host_reservation_id # The reservation ID of the Dedicated Host. This returns a `null` # response if the Dedicated Host doesn't have an associated # reservation. # @return [String] # # @!attribute [rw] instances # The IDs and instance type that are currently running on the # Dedicated Host. # @return [Array] # # @!attribute [rw] state # The Dedicated Host's state. # @return [String] # # @!attribute [rw] allocation_time # The time that the Dedicated Host was allocated. # @return [Time] # # @!attribute [rw] release_time # The time that the Dedicated Host was released. # @return [Time] # # @!attribute [rw] tags # Any tags assigned to the Dedicated Host. # @return [Array] # # @!attribute [rw] host_recovery # Indicates whether host recovery is enabled or disabled for the # Dedicated Host. # @return [String] # # @!attribute [rw] allows_multiple_instance_types # 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. # @return [String] # # @!attribute [rw] owner_id # The ID of the Amazon Web Services account that owns the Dedicated # Host. # @return [String] # # @!attribute [rw] availability_zone_id # The ID of the Availability Zone in which the Dedicated Host is # allocated. # @return [String] # # @!attribute [rw] member_of_service_linked_resource_group # 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. # @return [Boolean] # # @!attribute [rw] outpost_arn # The Amazon Resource Name (ARN) of the Amazon Web Services Outpost on # which the Dedicated Host is allocated. # @return [String] # # @!attribute [rw] host_maintenance # Indicates whether host maintenance is enabled or disabled for the # Dedicated Host. # @return [String] # # @!attribute [rw] asset_id # The ID of the Outpost hardware asset on which the Dedicated Host is # allocated. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Host AWS API Documentation # class Host < Struct.new( :auto_placement, :availability_zone, :available_capacity, :client_token, :host_id, :host_properties, :host_reservation_id, :instances, :state, :allocation_time, :release_time, :tags, :host_recovery, :allows_multiple_instance_types, :owner_id, :availability_zone_id, :member_of_service_linked_resource_group, :outpost_arn, :host_maintenance, :asset_id) SENSITIVE = [] include Aws::Structure end # Describes an instance running on a Dedicated Host. # # @!attribute [rw] instance_id # The ID of instance that is running on the Dedicated Host. # @return [String] # # @!attribute [rw] instance_type # The instance type (for example, `m3.medium`) of the running # instance. # @return [String] # # @!attribute [rw] owner_id # The ID of the Amazon Web Services account that owns the instance. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/HostInstance AWS API Documentation # class HostInstance < Struct.new( :instance_id, :instance_type, :owner_id) SENSITIVE = [] include Aws::Structure end # Details about the Dedicated Host Reservation offering. # # @!attribute [rw] currency_code # The currency of the offering. # @return [String] # # @!attribute [rw] duration # The duration of the offering (in seconds). # @return [Integer] # # @!attribute [rw] hourly_price # The hourly price of the offering. # @return [String] # # @!attribute [rw] instance_family # The instance family of the offering. # @return [String] # # @!attribute [rw] offering_id # The ID of the offering. # @return [String] # # @!attribute [rw] payment_option # The available payment option. # @return [String] # # @!attribute [rw] upfront_price # The upfront price of the offering. Does not apply to No Upfront # offerings. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/HostOffering AWS API Documentation # class HostOffering < Struct.new( :currency_code, :duration, :hourly_price, :instance_family, :offering_id, :payment_option, :upfront_price) SENSITIVE = [] include Aws::Structure end # Describes the properties of a Dedicated Host. # # @!attribute [rw] cores # The number of cores on the Dedicated Host. # @return [Integer] # # @!attribute [rw] instance_type # The instance type supported by the Dedicated Host. For example, # `m5.large`. If the host supports multiple instance types, no # **instanceType** is returned. # @return [String] # # @!attribute [rw] instance_family # The instance family supported by the Dedicated Host. For example, # `m5`. # @return [String] # # @!attribute [rw] sockets # The number of sockets on the Dedicated Host. # @return [Integer] # # @!attribute [rw] total_v_cpus # The total number of vCPUs on the Dedicated Host. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/HostProperties AWS API Documentation # class HostProperties < Struct.new( :cores, :instance_type, :instance_family, :sockets, :total_v_cpus) SENSITIVE = [] include Aws::Structure end # Details about the Dedicated Host Reservation and associated Dedicated # Hosts. # # @!attribute [rw] count # The number of Dedicated Hosts the reservation is associated with. # @return [Integer] # # @!attribute [rw] currency_code # The currency in which the `upfrontPrice` and `hourlyPrice` amounts # are specified. At this time, the only supported currency is `USD`. # @return [String] # # @!attribute [rw] duration # The length of the reservation's term, specified in seconds. Can be # `31536000 (1 year)` \| `94608000 (3 years)`. # @return [Integer] # # @!attribute [rw] end # The date and time that the reservation ends. # @return [Time] # # @!attribute [rw] host_id_set # The IDs of the Dedicated Hosts associated with the reservation. # @return [Array] # # @!attribute [rw] host_reservation_id # The ID of the reservation that specifies the associated Dedicated # Hosts. # @return [String] # # @!attribute [rw] hourly_price # The hourly price of the reservation. # @return [String] # # @!attribute [rw] instance_family # 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. # @return [String] # # @!attribute [rw] offering_id # The ID of the reservation. This remains the same regardless of which # Dedicated Hosts are associated with it. # @return [String] # # @!attribute [rw] payment_option # The payment option selected for this reservation. # @return [String] # # @!attribute [rw] start # The date and time that the reservation started. # @return [Time] # # @!attribute [rw] state # The state of the reservation. # @return [String] # # @!attribute [rw] upfront_price # The upfront price of the reservation. # @return [String] # # @!attribute [rw] tags # Any tags assigned to the Dedicated Host Reservation. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/HostReservation AWS API Documentation # class HostReservation < Struct.new( :count, :currency_code, :duration, :end, :host_id_set, :host_reservation_id, :hourly_price, :instance_family, :offering_id, :payment_option, :start, :state, :upfront_price, :tags) SENSITIVE = [] include Aws::Structure end # The internet key exchange (IKE) version permitted for the VPN tunnel. # # @!attribute [rw] value # The IKE version. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/IKEVersionsListValue AWS API Documentation # class IKEVersionsListValue < Struct.new( :value) SENSITIVE = [] include Aws::Structure end # The IKE version that is permitted for the VPN tunnel. # # @!attribute [rw] value # The IKE version. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/IKEVersionsRequestListValue AWS API Documentation # class IKEVersionsRequestListValue < Struct.new( :value) SENSITIVE = [] include Aws::Structure end # Describes an IAM instance profile. # # @!attribute [rw] arn # The Amazon Resource Name (ARN) of the instance profile. # @return [String] # # @!attribute [rw] id # The ID of the instance profile. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/IamInstanceProfile AWS API Documentation # class IamInstanceProfile < Struct.new( :arn, :id) SENSITIVE = [] include Aws::Structure end # Describes an association between an IAM instance profile and an # instance. # # @!attribute [rw] association_id # The ID of the association. # @return [String] # # @!attribute [rw] instance_id # The ID of the instance. # @return [String] # # @!attribute [rw] iam_instance_profile # The IAM instance profile. # @return [Types::IamInstanceProfile] # # @!attribute [rw] state # The state of the association. # @return [String] # # @!attribute [rw] timestamp # The time the IAM instance profile was associated with the instance. # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/IamInstanceProfileAssociation AWS API Documentation # class IamInstanceProfileAssociation < Struct.new( :association_id, :instance_id, :iam_instance_profile, :state, :timestamp) SENSITIVE = [] include Aws::Structure end # Describes an IAM instance profile. # # @!attribute [rw] arn # The Amazon Resource Name (ARN) of the instance profile. # @return [String] # # @!attribute [rw] name # The name of the instance profile. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/IamInstanceProfileSpecification AWS API Documentation # class IamInstanceProfileSpecification < Struct.new( :arn, :name) SENSITIVE = [] include Aws::Structure end # Describes the ICMP type and code. # # @!attribute [rw] code # The ICMP code. A value of -1 means all codes for the specified ICMP # type. # @return [Integer] # # @!attribute [rw] type # The ICMP type. A value of -1 means all types. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/IcmpTypeCode AWS API Documentation # class IcmpTypeCode < Struct.new( :code, :type) SENSITIVE = [] include Aws::Structure end # Describes the ID format for a resource. # # @!attribute [rw] deadline # 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. # @return [Time] # # @!attribute [rw] resource # The type of resource. # @return [String] # # @!attribute [rw] use_long_ids # Indicates whether longer IDs (17-character IDs) are enabled for the # resource. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/IdFormat AWS API Documentation # class IdFormat < Struct.new( :deadline, :resource, :use_long_ids) SENSITIVE = [] include Aws::Structure end # Describes an image. # # @!attribute [rw] architecture # The architecture of the image. # @return [String] # # @!attribute [rw] creation_date # The date and time the image was created. # @return [String] # # @!attribute [rw] image_id # The ID of the AMI. # @return [String] # # @!attribute [rw] image_location # The location of the AMI. # @return [String] # # @!attribute [rw] image_type # The type of image. # @return [String] # # @!attribute [rw] public # 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. # @return [Boolean] # # @!attribute [rw] kernel_id # The kernel associated with the image, if any. Only applicable for # machine images. # @return [String] # # @!attribute [rw] owner_id # The ID of the Amazon Web Services account that owns the image. # @return [String] # # @!attribute [rw] platform # This value is set to `windows` for Windows AMIs; otherwise, it is # blank. # @return [String] # # @!attribute [rw] platform_details # The platform details associated with the billing code of the AMI. # For more information, see [Understand AMI billing information][1] in # the *Amazon EC2 User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ami-billing-info.html # @return [String] # # @!attribute [rw] usage_operation # The operation of the Amazon EC2 instance and the billing code that # is associated with the AMI. `usageOperation` corresponds to the # [lineitem/Operation][1] column on your Amazon Web Services Cost and # Usage Report and in the [Amazon Web Services Price List API][2]. 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][3] command in the Amazon EC2 API, or the # [describe-images][4] command in the CLI. # # # # [1]: https://docs.aws.amazon.com/cur/latest/userguide/Lineitem-columns.html#Lineitem-details-O-Operation # [2]: https://docs.aws.amazon.com/awsaccountbilling/latest/aboutv2/price-changes.html # [3]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeImages.html # [4]: https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-images.html # @return [String] # # @!attribute [rw] product_codes # Any product codes associated with the AMI. # @return [Array] # # @!attribute [rw] ramdisk_id # The RAM disk associated with the image, if any. Only applicable for # machine images. # @return [String] # # @!attribute [rw] state # The current state of the AMI. If the state is `available`, the image # is successfully registered and can be used to launch an instance. # @return [String] # # @!attribute [rw] block_device_mappings # Any block device mapping entries. # @return [Array] # # @!attribute [rw] description # The description of the AMI that was provided during image creation. # @return [String] # # @!attribute [rw] ena_support # Specifies whether enhanced networking with ENA is enabled. # @return [Boolean] # # @!attribute [rw] hypervisor # The hypervisor type of the image. Only `xen` is supported. `ovm` is # not supported. # @return [String] # # @!attribute [rw] image_owner_alias # The owner alias (`amazon` \| `aws-marketplace`). # @return [String] # # @!attribute [rw] name # The name of the AMI that was provided during image creation. # @return [String] # # @!attribute [rw] root_device_name # The device name of the root device volume (for example, # `/dev/sda1`). # @return [String] # # @!attribute [rw] root_device_type # The type of root device used by the AMI. The AMI can use an Amazon # EBS volume or an instance store volume. # @return [String] # # @!attribute [rw] sriov_net_support # Specifies whether enhanced networking with the Intel 82599 Virtual # Function interface is enabled. # @return [String] # # @!attribute [rw] state_reason # The reason for the state change. # @return [Types::StateReason] # # @!attribute [rw] tags # Any tags assigned to the image. # @return [Array] # # @!attribute [rw] virtualization_type # The type of virtualization of the AMI. # @return [String] # # @!attribute [rw] boot_mode # The boot mode of the image. For more information, see [Boot # modes][1] in the *Amazon EC2 User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ami-boot.html # @return [String] # # @!attribute [rw] tpm_support # If the image is configured for NitroTPM support, the value is # `v2.0`. For more information, see [NitroTPM][1] in the *Amazon EC2 # User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/nitrotpm.html # @return [String] # # @!attribute [rw] deprecation_time # The date and time to deprecate the AMI, in UTC, in the following # format: *YYYY*-*MM*-*DD*T*HH*:*MM*:*SS*Z. If you specified a value # for seconds, Amazon EC2 rounds the seconds to the nearest minute. # @return [String] # # @!attribute [rw] imds_support # 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][1] in the *Amazon EC2 User # Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/configuring-IMDS-new-instances.html#configure-IMDS-new-instances-ami-configuration # @return [String] # # @!attribute [rw] source_instance_id # The ID of the instance that the AMI was created from if the AMI was # created using [CreateImage][1]. This field only appears if the AMI # was created using CreateImage. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateImage.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Image AWS API Documentation # class Image < Struct.new( :architecture, :creation_date, :image_id, :image_location, :image_type, :public, :kernel_id, :owner_id, :platform, :platform_details, :usage_operation, :product_codes, :ramdisk_id, :state, :block_device_mappings, :description, :ena_support, :hypervisor, :image_owner_alias, :name, :root_device_name, :root_device_type, :sriov_net_support, :state_reason, :tags, :virtualization_type, :boot_mode, :tpm_support, :deprecation_time, :imds_support, :source_instance_id) SENSITIVE = [] include Aws::Structure end # Describes an image attribute. # # @!attribute [rw] block_device_mappings # The block device mapping entries. # @return [Array] # # @!attribute [rw] image_id # The ID of the AMI. # @return [String] # # @!attribute [rw] launch_permissions # The launch permissions. # @return [Array] # # @!attribute [rw] product_codes # The product codes. # @return [Array] # # @!attribute [rw] description # A description for the AMI. # @return [Types::AttributeValue] # # @!attribute [rw] kernel_id # The kernel ID. # @return [Types::AttributeValue] # # @!attribute [rw] ramdisk_id # The RAM disk ID. # @return [Types::AttributeValue] # # @!attribute [rw] sriov_net_support # Indicates whether enhanced networking with the Intel 82599 Virtual # Function interface is enabled. # @return [Types::AttributeValue] # # @!attribute [rw] boot_mode # The boot mode. # @return [Types::AttributeValue] # # @!attribute [rw] tpm_support # If the image is configured for NitroTPM support, the value is # `v2.0`. # @return [Types::AttributeValue] # # @!attribute [rw] uefi_data # Base64 representation of the non-volatile UEFI variable store. To # retrieve the UEFI data, use the [GetInstanceUefiData][1] command. # You can inspect and modify the UEFI data by using the # [python-uefivars tool][2] on GitHub. For more information, see [UEFI # Secure Boot][3] in the *Amazon EC2 User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetInstanceUefiData # [2]: https://github.com/awslabs/python-uefivars # [3]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/uefi-secure-boot.html # @return [Types::AttributeValue] # # @!attribute [rw] last_launched_time # The date and time, in [ISO 8601 date-time format][1], 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. # # # # # # [1]: http://www.iso.org/iso/iso8601 # @return [Types::AttributeValue] # # @!attribute [rw] imds_support # 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][1] in the *Amazon EC2 User # Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/configuring-IMDS-new-instances.html#configure-IMDS-new-instances-ami-configuration # @return [Types::AttributeValue] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ImageAttribute AWS API Documentation # class ImageAttribute < Struct.new( :block_device_mappings, :image_id, :launch_permissions, :product_codes, :description, :kernel_id, :ramdisk_id, :sriov_net_support, :boot_mode, :tpm_support, :uefi_data, :last_launched_time, :imds_support) SENSITIVE = [] include Aws::Structure end # Describes the disk container object for an import image task. # # @!attribute [rw] description # The description of the disk image. # @return [String] # # @!attribute [rw] device_name # The block device mapping for the disk. # @return [String] # # @!attribute [rw] format # The format of the disk image being imported. # # Valid values: `OVA` \| `VHD` \| `VHDX` \| `VMDK` \| `RAW` # @return [String] # # @!attribute [rw] snapshot_id # The ID of the EBS snapshot to be used for importing the snapshot. # @return [String] # # @!attribute [rw] url # 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://..) # @return [String] # # @!attribute [rw] user_bucket # The S3 bucket for the disk image. # @return [Types::UserBucket] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ImageDiskContainer AWS API Documentation # class ImageDiskContainer < Struct.new( :description, :device_name, :format, :snapshot_id, :url, :user_bucket) SENSITIVE = [:url] include Aws::Structure end # Information about an AMI that is currently in the Recycle Bin. # # @!attribute [rw] image_id # The ID of the AMI. # @return [String] # # @!attribute [rw] name # The name of the AMI. # @return [String] # # @!attribute [rw] description # The description of the AMI. # @return [String] # # @!attribute [rw] recycle_bin_enter_time # The date and time when the AMI entered the Recycle Bin. # @return [Time] # # @!attribute [rw] recycle_bin_exit_time # The date and time when the AMI is to be permanently deleted from the # Recycle Bin. # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ImageRecycleBinInfo AWS API Documentation # class ImageRecycleBinInfo < Struct.new( :image_id, :name, :description, :recycle_bin_enter_time, :recycle_bin_exit_time) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] client_vpn_endpoint_id # The ID of the Client VPN endpoint to which the client certificate # revocation list applies. # @return [String] # # @!attribute [rw] certificate_revocation_list # The client certificate revocation list file. For more information, # see [Generate a Client Certificate Revocation List][1] in the # *Client VPN Administrator Guide*. # # # # [1]: https://docs.aws.amazon.com/vpn/latest/clientvpn-admin/cvpn-working-certificates.html#cvpn-working-certificates-generate # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ImportClientVpnClientCertificateRevocationListRequest AWS API Documentation # class ImportClientVpnClientCertificateRevocationListRequest < Struct.new( :client_vpn_endpoint_id, :certificate_revocation_list, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] return # Returns `true` if the request succeeds; otherwise, it returns an # error. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ImportClientVpnClientCertificateRevocationListResult AWS API Documentation # class ImportClientVpnClientCertificateRevocationListResult < Struct.new( :return) SENSITIVE = [] include Aws::Structure end # The request information of license configurations. # # @!attribute [rw] license_configuration_arn # The ARN of a license configuration. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ImportImageLicenseConfigurationRequest AWS API Documentation # class ImportImageLicenseConfigurationRequest < Struct.new( :license_configuration_arn) SENSITIVE = [] include Aws::Structure end # The response information for license configurations. # # @!attribute [rw] license_configuration_arn # The ARN of a license configuration. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ImportImageLicenseConfigurationResponse AWS API Documentation # class ImportImageLicenseConfigurationResponse < Struct.new( :license_configuration_arn) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] architecture # The architecture of the virtual machine. # # Valid values: `i386` \| `x86_64` # @return [String] # # @!attribute [rw] client_data # The client-specific data. # @return [Types::ClientData] # # @!attribute [rw] client_token # The token to enable idempotency for VM import requests. # @return [String] # # @!attribute [rw] description # A description string for the import image task. # @return [String] # # @!attribute [rw] disk_containers # Information about the disk containers. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] encrypted # Specifies whether the destination AMI of the imported image should # be encrypted. The default KMS key for EBS is used unless you specify # a non-default KMS key using `KmsKeyId`. For more information, see # [Amazon EBS Encryption][1] in the *Amazon Elastic Compute Cloud User # Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html # @return [Boolean] # # @!attribute [rw] hypervisor # The target hypervisor platform. # # Valid values: `xen` # @return [String] # # @!attribute [rw] kms_key_id # An identifier for the symmetric KMS key to use when creating the # encrypted AMI. This parameter is only required if you want to use a # non-default KMS key; if this parameter is not specified, the default # KMS key for EBS is used. If a `KmsKeyId` is specified, the # `Encrypted` flag must also be set. # # The KMS key identifier may be provided in any of the following # formats: # # * Key ID # # * Key alias # # * ARN using key ID. The ID ARN contains the `arn:aws:kms` namespace, # followed by the Region of the key, the Amazon Web Services account # ID of the key owner, the `key` namespace, and then the key ID. For # example, # arn:aws:kms:*us-east-1*:*012345678910*:key/*abcd1234-a123-456a-a12b-a123b4cd56ef*. # # * ARN using key alias. The alias ARN contains the `arn:aws:kms` # namespace, followed by the Region of the key, the Amazon Web # Services account ID of the key owner, the `alias` namespace, and # then the key alias. For example, # arn:aws:kms:*us-east-1*:*012345678910*:alias/*ExampleAlias*. # # Amazon Web Services parses `KmsKeyId` asynchronously, meaning that # the action you call may appear to complete even though you provided # an invalid identifier. This action will eventually report failure. # # The specified KMS key must exist in the Region that the AMI is being # copied to. # # Amazon EBS does not support asymmetric KMS keys. # @return [String] # # @!attribute [rw] license_type # The license type to be used for the Amazon Machine Image (AMI) after # importing. # # Specify `AWS` to replace the source-system license with an Amazon # Web Services license or `BYOL` to retain the source-system license. # Leaving this parameter undefined is the same as choosing `AWS` when # importing a Windows Server operating system, and the same as # choosing `BYOL` when importing a Windows client operating system # (such as Windows 10) or a Linux operating system. # # To use `BYOL`, you must have existing licenses with rights to use # these licenses in a third party cloud, such as Amazon Web Services. # For more information, see [Prerequisites][1] in the VM Import/Export # User Guide. # # # # [1]: https://docs.aws.amazon.com/vm-import/latest/userguide/vmimport-image-import.html#prerequisites-image # @return [String] # # @!attribute [rw] platform # The operating system of the virtual machine. If you import a VM that # is compatible with Unified Extensible Firmware Interface (UEFI) # using an EBS snapshot, you must specify a value for the platform. # # Valid values: `Windows` \| `Linux` # @return [String] # # @!attribute [rw] role_name # The name of the role to use when not using the default role, # 'vmimport'. # @return [String] # # @!attribute [rw] license_specifications # The ARNs of the license configurations. # @return [Array] # # @!attribute [rw] tag_specifications # The tags to apply to the import image task during creation. # @return [Array] # # @!attribute [rw] usage_operation # The usage operation value. For more information, see [Licensing # options][1] in the *VM Import/Export User Guide*. # # # # [1]: https://docs.aws.amazon.com/vm-import/latest/userguide/vmie_prereqs.html#prerequisites # @return [String] # # @!attribute [rw] boot_mode # The boot mode of the virtual machine. # # The `uefi-preferred` boot mode isn't supported for importing # images. For more information, see [Boot modes][1] in the *VM # Import/Export User Guide*. # # # # # # [1]: https://docs.aws.amazon.com/vm-import/latest/userguide/prerequisites.html#vmimport-boot-modes # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ImportImageRequest AWS API Documentation # class ImportImageRequest < Struct.new( :architecture, :client_data, :client_token, :description, :disk_containers, :dry_run, :encrypted, :hypervisor, :kms_key_id, :license_type, :platform, :role_name, :license_specifications, :tag_specifications, :usage_operation, :boot_mode) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] architecture # The architecture of the virtual machine. # @return [String] # # @!attribute [rw] description # A description of the import task. # @return [String] # # @!attribute [rw] encrypted # Indicates whether the AMI is encrypted. # @return [Boolean] # # @!attribute [rw] hypervisor # The target hypervisor of the import task. # @return [String] # # @!attribute [rw] image_id # The ID of the Amazon Machine Image (AMI) created by the import task. # @return [String] # # @!attribute [rw] import_task_id # The task ID of the import image task. # @return [String] # # @!attribute [rw] kms_key_id # The identifier for the symmetric KMS key that was used to create the # encrypted AMI. # @return [String] # # @!attribute [rw] license_type # The license type of the virtual machine. # @return [String] # # @!attribute [rw] platform # The operating system of the virtual machine. # @return [String] # # @!attribute [rw] progress # The progress of the task. # @return [String] # # @!attribute [rw] snapshot_details # Information about the snapshots. # @return [Array] # # @!attribute [rw] status # A brief status of the task. # @return [String] # # @!attribute [rw] status_message # A detailed status message of the import task. # @return [String] # # @!attribute [rw] license_specifications # The ARNs of the license configurations. # @return [Array] # # @!attribute [rw] tags # Any tags assigned to the import image task. # @return [Array] # # @!attribute [rw] usage_operation # The usage operation value. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ImportImageResult AWS API Documentation # class ImportImageResult < Struct.new( :architecture, :description, :encrypted, :hypervisor, :image_id, :import_task_id, :kms_key_id, :license_type, :platform, :progress, :snapshot_details, :status, :status_message, :license_specifications, :tags, :usage_operation) SENSITIVE = [] include Aws::Structure end # Describes an import image task. # # @!attribute [rw] architecture # The architecture of the virtual machine. # # Valid values: `i386` \| `x86_64` \| `arm64` # @return [String] # # @!attribute [rw] description # A description of the import task. # @return [String] # # @!attribute [rw] encrypted # Indicates whether the image is encrypted. # @return [Boolean] # # @!attribute [rw] hypervisor # The target hypervisor for the import task. # # Valid values: `xen` # @return [String] # # @!attribute [rw] image_id # The ID of the Amazon Machine Image (AMI) of the imported virtual # machine. # @return [String] # # @!attribute [rw] import_task_id # The ID of the import image task. # @return [String] # # @!attribute [rw] kms_key_id # The identifier for the KMS key that was used to create the encrypted # image. # @return [String] # # @!attribute [rw] license_type # The license type of the virtual machine. # @return [String] # # @!attribute [rw] platform # The description string for the import image task. # @return [String] # # @!attribute [rw] progress # The percentage of progress of the import image task. # @return [String] # # @!attribute [rw] snapshot_details # Information about the snapshots. # @return [Array] # # @!attribute [rw] status # A brief status for the import image task. # @return [String] # # @!attribute [rw] status_message # A descriptive status message for the import image task. # @return [String] # # @!attribute [rw] tags # The tags for the import image task. # @return [Array] # # @!attribute [rw] license_specifications # The ARNs of the license configurations that are associated with the # import image task. # @return [Array] # # @!attribute [rw] usage_operation # The usage operation value. # @return [String] # # @!attribute [rw] boot_mode # The boot mode of the virtual machine. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ImportImageTask AWS API Documentation # class ImportImageTask < Struct.new( :architecture, :description, :encrypted, :hypervisor, :image_id, :import_task_id, :kms_key_id, :license_type, :platform, :progress, :snapshot_details, :status, :status_message, :tags, :license_specifications, :usage_operation, :boot_mode) SENSITIVE = [] include Aws::Structure end # Describes the launch specification for VM import. # # @!attribute [rw] additional_info # Reserved. # @return [String] # # @!attribute [rw] architecture # The architecture of the instance. # @return [String] # # @!attribute [rw] group_ids # The security group IDs. # @return [Array] # # @!attribute [rw] group_names # The security group names. # @return [Array] # # @!attribute [rw] instance_initiated_shutdown_behavior # Indicates whether an instance stops or terminates when you initiate # shutdown from the instance (using the operating system command for # system shutdown). # @return [String] # # @!attribute [rw] instance_type # The instance type. For more information about the instance types # that you can import, see [Instance Types][1] in the VM Import/Export # User Guide. # # # # [1]: https://docs.aws.amazon.com/vm-import/latest/userguide/vmie_prereqs.html#vmimport-instance-types # @return [String] # # @!attribute [rw] monitoring # Indicates whether monitoring is enabled. # @return [Boolean] # # @!attribute [rw] placement # The placement information for the instance. # @return [Types::Placement] # # @!attribute [rw] private_ip_address # \[EC2-VPC\] An available IP address from the IP address range of the # subnet. # @return [String] # # @!attribute [rw] subnet_id # \[EC2-VPC\] The ID of the subnet in which to launch the instance. # @return [String] # # @!attribute [rw] user_data # The Base64-encoded user data to make available to the instance. # @return [Types::UserData] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ImportInstanceLaunchSpecification AWS API Documentation # class ImportInstanceLaunchSpecification < Struct.new( :additional_info, :architecture, :group_ids, :group_names, :instance_initiated_shutdown_behavior, :instance_type, :monitoring, :placement, :private_ip_address, :subnet_id, :user_data) SENSITIVE = [:user_data] include Aws::Structure end # @!attribute [rw] description # A description for the instance being imported. # @return [String] # # @!attribute [rw] disk_images # The disk image. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] launch_specification # The launch specification. # @return [Types::ImportInstanceLaunchSpecification] # # @!attribute [rw] platform # The instance operating system. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ImportInstanceRequest AWS API Documentation # class ImportInstanceRequest < Struct.new( :description, :disk_images, :dry_run, :launch_specification, :platform) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] conversion_task # Information about the conversion task. # @return [Types::ConversionTask] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ImportInstanceResult AWS API Documentation # class ImportInstanceResult < Struct.new( :conversion_task) SENSITIVE = [] include Aws::Structure end # Describes an import instance task. # # @!attribute [rw] description # A description of the task. # @return [String] # # @!attribute [rw] instance_id # The ID of the instance. # @return [String] # # @!attribute [rw] platform # The instance operating system. # @return [String] # # @!attribute [rw] volumes # The volumes. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ImportInstanceTaskDetails AWS API Documentation # class ImportInstanceTaskDetails < Struct.new( :description, :instance_id, :platform, :volumes) SENSITIVE = [] include Aws::Structure end # Describes an import volume task. # # @!attribute [rw] availability_zone # The Availability Zone where the resulting instance will reside. # @return [String] # # @!attribute [rw] bytes_converted # The number of bytes converted so far. # @return [Integer] # # @!attribute [rw] description # A description of the task. # @return [String] # # @!attribute [rw] image # The image. # @return [Types::DiskImageDescription] # # @!attribute [rw] status # The status of the import of this particular disk image. # @return [String] # # @!attribute [rw] status_message # The status information or errors related to the disk image. # @return [String] # # @!attribute [rw] volume # The volume. # @return [Types::DiskImageVolumeDescription] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ImportInstanceVolumeDetailItem AWS API Documentation # class ImportInstanceVolumeDetailItem < Struct.new( :availability_zone, :bytes_converted, :description, :image, :status, :status_message, :volume) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] key_name # A unique name for the key pair. # @return [String] # # @!attribute [rw] public_key_material # The public key. For API calls, the text must be base64-encoded. For # command line tools, base64 encoding is performed for you. # @return [String] # # @!attribute [rw] tag_specifications # The tags to apply to the imported key pair. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ImportKeyPairRequest AWS API Documentation # class ImportKeyPairRequest < Struct.new( :dry_run, :key_name, :public_key_material, :tag_specifications) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] key_fingerprint # * For RSA key pairs, the key fingerprint is the MD5 public key # fingerprint as specified in section 4 of RFC 4716. # # * For ED25519 key pairs, the key fingerprint is the base64-encoded # SHA-256 digest, which is the default for OpenSSH, starting with # [OpenSSH 6.8][1]. # # # # [1]: http://www.openssh.com/txt/release-6.8 # @return [String] # # @!attribute [rw] key_name # The key pair name that you provided. # @return [String] # # @!attribute [rw] key_pair_id # The ID of the resulting key pair. # @return [String] # # @!attribute [rw] tags # The tags applied to the imported key pair. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ImportKeyPairResult AWS API Documentation # class ImportKeyPairResult < Struct.new( :key_fingerprint, :key_name, :key_pair_id, :tags) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] client_data # The client-specific data. # @return [Types::ClientData] # # @!attribute [rw] client_token # Token to enable idempotency for VM import requests. # @return [String] # # @!attribute [rw] description # The description string for the import snapshot task. # @return [String] # # @!attribute [rw] disk_container # Information about the disk container. # @return [Types::SnapshotDiskContainer] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] encrypted # Specifies whether the destination snapshot of the imported image # should be encrypted. The default KMS key for EBS is used unless you # specify a non-default KMS key using `KmsKeyId`. For more # information, see [Amazon EBS Encryption][1] in the *Amazon Elastic # Compute Cloud User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSEncryption.html # @return [Boolean] # # @!attribute [rw] kms_key_id # An identifier for the symmetric KMS key to use when creating the # encrypted snapshot. This parameter is only required if you want to # use a non-default KMS key; if this parameter is not specified, the # default KMS key for EBS is used. If a `KmsKeyId` is specified, the # `Encrypted` flag must also be set. # # The KMS key identifier may be provided in any of the following # formats: # # * Key ID # # * Key alias # # * ARN using key ID. The ID ARN contains the `arn:aws:kms` namespace, # followed by the Region of the key, the Amazon Web Services account # ID of the key owner, the `key` namespace, and then the key ID. For # example, # arn:aws:kms:*us-east-1*:*012345678910*:key/*abcd1234-a123-456a-a12b-a123b4cd56ef*. # # * ARN using key alias. The alias ARN contains the `arn:aws:kms` # namespace, followed by the Region of the key, the Amazon Web # Services account ID of the key owner, the `alias` namespace, and # then the key alias. For example, # arn:aws:kms:*us-east-1*:*012345678910*:alias/*ExampleAlias*. # # Amazon Web Services parses `KmsKeyId` asynchronously, meaning that # the action you call may appear to complete even though you provided # an invalid identifier. This action will eventually report failure. # # The specified KMS key must exist in the Region that the snapshot is # being copied to. # # Amazon EBS does not support asymmetric KMS keys. # @return [String] # # @!attribute [rw] role_name # The name of the role to use when not using the default role, # 'vmimport'. # @return [String] # # @!attribute [rw] tag_specifications # The tags to apply to the import snapshot task during creation. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ImportSnapshotRequest AWS API Documentation # class ImportSnapshotRequest < Struct.new( :client_data, :client_token, :description, :disk_container, :dry_run, :encrypted, :kms_key_id, :role_name, :tag_specifications) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] description # A description of the import snapshot task. # @return [String] # # @!attribute [rw] import_task_id # The ID of the import snapshot task. # @return [String] # # @!attribute [rw] snapshot_task_detail # Information about the import snapshot task. # @return [Types::SnapshotTaskDetail] # # @!attribute [rw] tags # Any tags assigned to the import snapshot task. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ImportSnapshotResult AWS API Documentation # class ImportSnapshotResult < Struct.new( :description, :import_task_id, :snapshot_task_detail, :tags) SENSITIVE = [] include Aws::Structure end # Describes an import snapshot task. # # @!attribute [rw] description # A description of the import snapshot task. # @return [String] # # @!attribute [rw] import_task_id # The ID of the import snapshot task. # @return [String] # # @!attribute [rw] snapshot_task_detail # Describes an import snapshot task. # @return [Types::SnapshotTaskDetail] # # @!attribute [rw] tags # The tags for the import snapshot task. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ImportSnapshotTask AWS API Documentation # class ImportSnapshotTask < Struct.new( :description, :import_task_id, :snapshot_task_detail, :tags) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] availability_zone # The Availability Zone for the resulting EBS volume. # @return [String] # # @!attribute [rw] description # A description of the volume. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] image # The disk image. # @return [Types::DiskImageDetail] # # @!attribute [rw] volume # The volume size. # @return [Types::VolumeDetail] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ImportVolumeRequest AWS API Documentation # class ImportVolumeRequest < Struct.new( :availability_zone, :description, :dry_run, :image, :volume) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] conversion_task # Information about the conversion task. # @return [Types::ConversionTask] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ImportVolumeResult AWS API Documentation # class ImportVolumeResult < Struct.new( :conversion_task) SENSITIVE = [] include Aws::Structure end # Describes an import volume task. # # @!attribute [rw] availability_zone # The Availability Zone where the resulting volume will reside. # @return [String] # # @!attribute [rw] bytes_converted # The number of bytes converted so far. # @return [Integer] # # @!attribute [rw] description # The description you provided when starting the import volume task. # @return [String] # # @!attribute [rw] image # The image. # @return [Types::DiskImageDescription] # # @!attribute [rw] volume # The volume. # @return [Types::DiskImageVolumeDescription] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ImportVolumeTaskDetails AWS API Documentation # class ImportVolumeTaskDetails < Struct.new( :availability_zone, :bytes_converted, :description, :image, :volume) SENSITIVE = [] include Aws::Structure end # Describes the Inference accelerators for the instance type. # # @!attribute [rw] accelerators # Describes the Inference accelerators for the instance type. # @return [Array] # # @!attribute [rw] total_inference_memory_in_mi_b # The total size of the memory for the inference accelerators for the # instance type, in MiB. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InferenceAcceleratorInfo AWS API Documentation # class InferenceAcceleratorInfo < Struct.new( :accelerators, :total_inference_memory_in_mi_b) SENSITIVE = [] include Aws::Structure end # Describes the Inference accelerators for the instance type. # # @!attribute [rw] count # The number of Inference accelerators for the instance type. # @return [Integer] # # @!attribute [rw] name # The name of the Inference accelerator. # @return [String] # # @!attribute [rw] manufacturer # The manufacturer of the Inference accelerator. # @return [String] # # @!attribute [rw] memory_info # Describes the memory available to the inference accelerator. # @return [Types::InferenceDeviceMemoryInfo] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InferenceDeviceInfo AWS API Documentation # class InferenceDeviceInfo < Struct.new( :count, :name, :manufacturer, :memory_info) SENSITIVE = [] include Aws::Structure end # Describes the memory available to the inference accelerator. # # @!attribute [rw] size_in_mi_b # The size of the memory available to the inference accelerator, in # MiB. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InferenceDeviceMemoryInfo AWS API Documentation # class InferenceDeviceMemoryInfo < Struct.new( :size_in_mi_b) SENSITIVE = [] include Aws::Structure end # Describes an instance. # # @!attribute [rw] ami_launch_index # The AMI launch index, which can be used to find this instance in the # launch group. # @return [Integer] # # @!attribute [rw] image_id # The ID of the AMI used to launch the instance. # @return [String] # # @!attribute [rw] instance_id # The ID of the instance. # @return [String] # # @!attribute [rw] instance_type # The instance type. # @return [String] # # @!attribute [rw] kernel_id # The kernel associated with this instance, if applicable. # @return [String] # # @!attribute [rw] key_name # The name of the key pair, if this instance was launched with an # associated key pair. # @return [String] # # @!attribute [rw] launch_time # The time the instance was launched. # @return [Time] # # @!attribute [rw] monitoring # The monitoring for the instance. # @return [Types::Monitoring] # # @!attribute [rw] placement # The location where the instance launched, if applicable. # @return [Types::Placement] # # @!attribute [rw] platform # The platform. This value is `windows` for Windows instances; # otherwise, it is empty. # @return [String] # # @!attribute [rw] private_dns_name # \[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. # @return [String] # # @!attribute [rw] private_ip_address # The private IPv4 address assigned to the instance. # @return [String] # # @!attribute [rw] product_codes # The product codes attached to this instance, if applicable. # @return [Array] # # @!attribute [rw] public_dns_name # \[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. # @return [String] # # @!attribute [rw] public_ip_address # 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. # @return [String] # # @!attribute [rw] ramdisk_id # The RAM disk associated with this instance, if applicable. # @return [String] # # @!attribute [rw] state # The current state of the instance. # @return [Types::InstanceState] # # @!attribute [rw] state_transition_reason # The reason for the most recent state transition. This might be an # empty string. # @return [String] # # @!attribute [rw] subnet_id # The ID of the subnet in which the instance is running. # @return [String] # # @!attribute [rw] vpc_id # The ID of the VPC in which the instance is running. # @return [String] # # @!attribute [rw] architecture # The architecture of the image. # @return [String] # # @!attribute [rw] block_device_mappings # Any block device mapping entries for the instance. # @return [Array] # # @!attribute [rw] client_token # The idempotency token you provided when you launched the instance, # if applicable. # @return [String] # # @!attribute [rw] ebs_optimized # 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. # @return [Boolean] # # @!attribute [rw] ena_support # Specifies whether enhanced networking with ENA is enabled. # @return [Boolean] # # @!attribute [rw] hypervisor # The hypervisor type of the instance. The value `xen` is used for # both Xen and Nitro hypervisors. # @return [String] # # @!attribute [rw] iam_instance_profile # The IAM instance profile associated with the instance, if # applicable. # @return [Types::IamInstanceProfile] # # @!attribute [rw] instance_lifecycle # Indicates whether this is a Spot Instance or a Scheduled Instance. # @return [String] # # @!attribute [rw] elastic_gpu_associations # 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. # # # @return [Array] # # @!attribute [rw] elastic_inference_accelerator_associations # The elastic inference accelerator associated with the instance. # @return [Array] # # @!attribute [rw] network_interfaces # The network interfaces for the instance. # @return [Array] # # @!attribute [rw] outpost_arn # The Amazon Resource Name (ARN) of the Outpost. # @return [String] # # @!attribute [rw] root_device_name # The device name of the root device volume (for example, # `/dev/sda1`). # @return [String] # # @!attribute [rw] root_device_type # The root device type used by the AMI. The AMI can use an EBS volume # or an instance store volume. # @return [String] # # @!attribute [rw] security_groups # The security groups for the instance. # @return [Array] # # @!attribute [rw] source_dest_check # Indicates whether source/destination checking is enabled. # @return [Boolean] # # @!attribute [rw] spot_instance_request_id # If the request is a Spot Instance request, the ID of the request. # @return [String] # # @!attribute [rw] sriov_net_support # Specifies whether enhanced networking with the Intel 82599 Virtual # Function interface is enabled. # @return [String] # # @!attribute [rw] state_reason # The reason for the most recent state transition. # @return [Types::StateReason] # # @!attribute [rw] tags # Any tags assigned to the instance. # @return [Array] # # @!attribute [rw] virtualization_type # The virtualization type of the instance. # @return [String] # # @!attribute [rw] cpu_options # The CPU options for the instance. # @return [Types::CpuOptions] # # @!attribute [rw] capacity_reservation_id # The ID of the Capacity Reservation. # @return [String] # # @!attribute [rw] capacity_reservation_specification # Information about the Capacity Reservation targeting option. # @return [Types::CapacityReservationSpecificationResponse] # # @!attribute [rw] hibernation_options # Indicates whether the instance is enabled for hibernation. # @return [Types::HibernationOptions] # # @!attribute [rw] licenses # The license configurations for the instance. # @return [Array] # # @!attribute [rw] metadata_options # The metadata options for the instance. # @return [Types::InstanceMetadataOptionsResponse] # # @!attribute [rw] enclave_options # Indicates whether the instance is enabled for Amazon Web Services # Nitro Enclaves. # @return [Types::EnclaveOptions] # # @!attribute [rw] boot_mode # 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][1] in the *Amazon EC2 User # Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ami-boot.html # @return [String] # # @!attribute [rw] platform_details # The platform details value for the instance. For more information, # see [AMI billing information fields][1] in the *Amazon EC2 User # Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/billing-info-fields.html # @return [String] # # @!attribute [rw] usage_operation # The usage operation value for the instance. For more information, # see [AMI billing information fields][1] in the *Amazon EC2 User # Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/billing-info-fields.html # @return [String] # # @!attribute [rw] usage_operation_update_time # The time that the usage operation was last updated. # @return [Time] # # @!attribute [rw] private_dns_name_options # The options for the instance hostname. # @return [Types::PrivateDnsNameOptionsResponse] # # @!attribute [rw] ipv_6_address # The IPv6 address assigned to the instance. # @return [String] # # @!attribute [rw] tpm_support # If the instance is configured for NitroTPM support, the value is # `v2.0`. For more information, see [NitroTPM][1] in the *Amazon EC2 # User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/nitrotpm.html # @return [String] # # @!attribute [rw] maintenance_options # Provides information on the recovery and maintenance options of your # instance. # @return [Types::InstanceMaintenanceOptions] # # @!attribute [rw] current_instance_boot_mode # The boot mode that is used to boot the instance at launch or start. # For more information, see [Boot modes][1] in the *Amazon EC2 User # Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ami-boot.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Instance AWS API Documentation # class Instance < Struct.new( :ami_launch_index, :image_id, :instance_id, :instance_type, :kernel_id, :key_name, :launch_time, :monitoring, :placement, :platform, :private_dns_name, :private_ip_address, :product_codes, :public_dns_name, :public_ip_address, :ramdisk_id, :state, :state_transition_reason, :subnet_id, :vpc_id, :architecture, :block_device_mappings, :client_token, :ebs_optimized, :ena_support, :hypervisor, :iam_instance_profile, :instance_lifecycle, :elastic_gpu_associations, :elastic_inference_accelerator_associations, :network_interfaces, :outpost_arn, :root_device_name, :root_device_type, :security_groups, :source_dest_check, :spot_instance_request_id, :sriov_net_support, :state_reason, :tags, :virtualization_type, :cpu_options, :capacity_reservation_id, :capacity_reservation_specification, :hibernation_options, :licenses, :metadata_options, :enclave_options, :boot_mode, :platform_details, :usage_operation, :usage_operation_update_time, :private_dns_name_options, :ipv_6_address, :tpm_support, :maintenance_options, :current_instance_boot_mode) SENSITIVE = [] include Aws::Structure end # 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. # # @!attribute [rw] ena_srd_enabled # Indicates whether ENA Express is enabled for the network interface. # @return [Boolean] # # @!attribute [rw] ena_srd_udp_specification # Configures ENA Express for UDP network traffic. # @return [Types::InstanceAttachmentEnaSrdUdpSpecification] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceAttachmentEnaSrdSpecification AWS API Documentation # class InstanceAttachmentEnaSrdSpecification < Struct.new( :ena_srd_enabled, :ena_srd_udp_specification) SENSITIVE = [] include Aws::Structure end # 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. # # @!attribute [rw] ena_srd_udp_enabled # Indicates whether UDP traffic to and from the instance uses ENA # Express. To specify this setting, you must first enable ENA Express. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceAttachmentEnaSrdUdpSpecification AWS API Documentation # class InstanceAttachmentEnaSrdUdpSpecification < Struct.new( :ena_srd_udp_enabled) SENSITIVE = [] include Aws::Structure end # Describes an instance attribute. # # @!attribute [rw] groups # The security groups associated with the instance. # @return [Array] # # @!attribute [rw] block_device_mappings # The block device mapping of the instance. # @return [Array] # # @!attribute [rw] disable_api_termination # If the value is `true`, you can't terminate the instance through # the Amazon EC2 console, CLI, or API; otherwise, you can. # @return [Types::AttributeBooleanValue] # # @!attribute [rw] ena_support # Indicates whether enhanced networking with ENA is enabled. # @return [Types::AttributeBooleanValue] # # @!attribute [rw] enclave_options # To enable the instance for Amazon Web Services Nitro Enclaves, set # this parameter to `true`; otherwise, set it to `false`. # @return [Types::EnclaveOptions] # # @!attribute [rw] ebs_optimized # Indicates whether the instance is optimized for Amazon EBS I/O. # @return [Types::AttributeBooleanValue] # # @!attribute [rw] instance_id # The ID of the instance. # @return [String] # # @!attribute [rw] instance_initiated_shutdown_behavior # Indicates whether an instance stops or terminates when you initiate # shutdown from the instance (using the operating system command for # system shutdown). # @return [Types::AttributeValue] # # @!attribute [rw] instance_type # The instance type. # @return [Types::AttributeValue] # # @!attribute [rw] kernel_id # The kernel ID. # @return [Types::AttributeValue] # # @!attribute [rw] product_codes # A list of product codes. # @return [Array] # # @!attribute [rw] ramdisk_id # The RAM disk ID. # @return [Types::AttributeValue] # # @!attribute [rw] root_device_name # The device name of the root device volume (for example, # `/dev/sda1`). # @return [Types::AttributeValue] # # @!attribute [rw] source_dest_check # Enable or disable source/destination checks, which ensure that the # instance is either the source or the destination of any traffic that # it receives. If the value is `true`, source/destination checks are # enabled; otherwise, they are disabled. The default value is `true`. # You must disable source/destination checks if the instance runs # services such as network address translation, routing, or firewalls. # @return [Types::AttributeBooleanValue] # # @!attribute [rw] sriov_net_support # Indicates whether enhanced networking with the Intel 82599 Virtual # Function interface is enabled. # @return [Types::AttributeValue] # # @!attribute [rw] user_data # The user data. # @return [Types::AttributeValue] # # @!attribute [rw] disable_api_stop # To enable the instance for Amazon Web Services Stop Protection, set # this parameter to `true`; otherwise, set it to `false`. # @return [Types::AttributeBooleanValue] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceAttribute AWS API Documentation # class InstanceAttribute < Struct.new( :groups, :block_device_mappings, :disable_api_termination, :ena_support, :enclave_options, :ebs_optimized, :instance_id, :instance_initiated_shutdown_behavior, :instance_type, :kernel_id, :product_codes, :ramdisk_id, :root_device_name, :source_dest_check, :sriov_net_support, :user_data, :disable_api_stop) SENSITIVE = [] include Aws::Structure end # Describes a block device mapping. # # @!attribute [rw] device_name # The device name (for example, `/dev/sdh` or `xvdh`). # @return [String] # # @!attribute [rw] ebs # Parameters used to automatically set up EBS volumes when the # instance is launched. # @return [Types::EbsInstanceBlockDevice] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceBlockDeviceMapping AWS API Documentation # class InstanceBlockDeviceMapping < Struct.new( :device_name, :ebs) SENSITIVE = [] include Aws::Structure end # Describes a block device mapping entry. # # @!attribute [rw] device_name # The device name (for example, `/dev/sdh` or `xvdh`). # @return [String] # # @!attribute [rw] ebs # Parameters used to automatically set up EBS volumes when the # instance is launched. # @return [Types::EbsInstanceBlockDeviceSpecification] # # @!attribute [rw] no_device # suppress the specified device included in the block device mapping. # @return [String] # # @!attribute [rw] virtual_name # The virtual device name. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceBlockDeviceMappingSpecification AWS API Documentation # class InstanceBlockDeviceMappingSpecification < Struct.new( :device_name, :ebs, :no_device, :virtual_name) SENSITIVE = [] include Aws::Structure end # Information about the number of instances that can be launched onto # the Dedicated Host. # # @!attribute [rw] available_capacity # The number of instances that can be launched onto the Dedicated Host # based on the host's available capacity. # @return [Integer] # # @!attribute [rw] instance_type # The instance type supported by the Dedicated Host. # @return [String] # # @!attribute [rw] total_capacity # The total number of instances that can be launched onto the # Dedicated Host if there are no instances running on it. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceCapacity AWS API Documentation # class InstanceCapacity < Struct.new( :available_capacity, :instance_type, :total_capacity) SENSITIVE = [] include Aws::Structure end # Describes a Reserved Instance listing state. # # @!attribute [rw] instance_count # The number of listed Reserved Instances in the state specified by # the `state`. # @return [Integer] # # @!attribute [rw] state # The states of the listed Reserved Instances. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceCount AWS API Documentation # class InstanceCount < Struct.new( :instance_count, :state) SENSITIVE = [] include Aws::Structure end # Describes the credit option for CPU usage of a burstable performance # instance. # # @!attribute [rw] instance_id # The ID of the instance. # @return [String] # # @!attribute [rw] cpu_credits # The credit option for CPU usage of the instance. # # Valid values: `standard` \| `unlimited` # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceCreditSpecification AWS API Documentation # class InstanceCreditSpecification < Struct.new( :instance_id, :cpu_credits) SENSITIVE = [] include Aws::Structure end # Describes the credit option for CPU usage of a burstable performance # instance. # # @!attribute [rw] instance_id # The ID of the instance. # @return [String] # # @!attribute [rw] cpu_credits # 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. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceCreditSpecificationRequest AWS API Documentation # class InstanceCreditSpecificationRequest < Struct.new( :instance_id, :cpu_credits) SENSITIVE = [] include Aws::Structure end # The event window. # # @!attribute [rw] instance_event_window_id # The ID of the event window. # @return [String] # # @!attribute [rw] time_ranges # One or more time ranges defined for the event window. # @return [Array] # # @!attribute [rw] name # The name of the event window. # @return [String] # # @!attribute [rw] cron_expression # The cron expression defined for the event window. # @return [String] # # @!attribute [rw] association_target # One or more targets associated with the event window. # @return [Types::InstanceEventWindowAssociationTarget] # # @!attribute [rw] state # The current state of the event window. # @return [String] # # @!attribute [rw] tags # The instance tags associated with the event window. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceEventWindow AWS API Documentation # class InstanceEventWindow < Struct.new( :instance_event_window_id, :time_ranges, :name, :cron_expression, :association_target, :state, :tags) SENSITIVE = [] include Aws::Structure end # 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. # # @!attribute [rw] instance_ids # 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. # @return [Array] # # @!attribute [rw] instance_tags # The instance tags to associate with the event window. Any instances # associated with the tags will be associated with the event window. # @return [Array] # # @!attribute [rw] dedicated_host_ids # The IDs of the Dedicated Hosts to associate with the event window. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceEventWindowAssociationRequest AWS API Documentation # class InstanceEventWindowAssociationRequest < Struct.new( :instance_ids, :instance_tags, :dedicated_host_ids) SENSITIVE = [] include Aws::Structure end # One or more targets associated with the event window. # # @!attribute [rw] instance_ids # The IDs of the instances associated with the event window. # @return [Array] # # @!attribute [rw] tags # The instance tags associated with the event window. Any instances # associated with the tags will be associated with the event window. # @return [Array] # # @!attribute [rw] dedicated_host_ids # The IDs of the Dedicated Hosts associated with the event window. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceEventWindowAssociationTarget AWS API Documentation # class InstanceEventWindowAssociationTarget < Struct.new( :instance_ids, :tags, :dedicated_host_ids) SENSITIVE = [] include Aws::Structure end # The targets to disassociate from the specified event window. # # @!attribute [rw] instance_ids # The IDs of the instances to disassociate from the event window. # @return [Array] # # @!attribute [rw] instance_tags # The instance tags to disassociate from the event window. Any # instances associated with the tags will be disassociated from the # event window. # @return [Array] # # @!attribute [rw] dedicated_host_ids # The IDs of the Dedicated Hosts to disassociate from the event # window. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceEventWindowDisassociationRequest AWS API Documentation # class InstanceEventWindowDisassociationRequest < Struct.new( :instance_ids, :instance_tags, :dedicated_host_ids) SENSITIVE = [] include Aws::Structure end # The state of the event window. # # @!attribute [rw] instance_event_window_id # The ID of the event window. # @return [String] # # @!attribute [rw] state # The current state of the event window. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceEventWindowStateChange AWS API Documentation # class InstanceEventWindowStateChange < Struct.new( :instance_event_window_id, :state) SENSITIVE = [] include Aws::Structure end # The start day and time and the end day and time of the time range, in # UTC. # # @!attribute [rw] start_week_day # The day on which the time range begins. # @return [String] # # @!attribute [rw] start_hour # The hour when the time range begins. # @return [Integer] # # @!attribute [rw] end_week_day # The day on which the time range ends. # @return [String] # # @!attribute [rw] end_hour # The hour when the time range ends. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceEventWindowTimeRange AWS API Documentation # class InstanceEventWindowTimeRange < Struct.new( :start_week_day, :start_hour, :end_week_day, :end_hour) SENSITIVE = [] include Aws::Structure end # The start day and time and the end day and time of the time range, in # UTC. # # @!attribute [rw] start_week_day # The day on which the time range begins. # @return [String] # # @!attribute [rw] start_hour # The hour when the time range begins. # @return [Integer] # # @!attribute [rw] end_week_day # The day on which the time range ends. # @return [String] # # @!attribute [rw] end_hour # The hour when the time range ends. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceEventWindowTimeRangeRequest AWS API Documentation # class InstanceEventWindowTimeRangeRequest < Struct.new( :start_week_day, :start_hour, :end_week_day, :end_hour) SENSITIVE = [] include Aws::Structure end # Describes an instance to export. # # @!attribute [rw] instance_id # The ID of the resource being exported. # @return [String] # # @!attribute [rw] target_environment # The target virtualization environment. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceExportDetails AWS API Documentation # class InstanceExportDetails < Struct.new( :instance_id, :target_environment) SENSITIVE = [] include Aws::Structure end # Describes the default credit option for CPU usage of a burstable # performance instance family. # # @!attribute [rw] instance_family # The instance family. # @return [String] # # @!attribute [rw] cpu_credits # The default credit option for CPU usage of the instance family. # Valid values are `standard` and `unlimited`. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceFamilyCreditSpecification AWS API Documentation # class InstanceFamilyCreditSpecification < Struct.new( :instance_family, :cpu_credits) SENSITIVE = [] include Aws::Structure end # Information about an IPv4 prefix. # # @!attribute [rw] ipv_4_prefix # One or more IPv4 prefixes assigned to the network interface. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceIpv4Prefix AWS API Documentation # class InstanceIpv4Prefix < Struct.new( :ipv_4_prefix) SENSITIVE = [] include Aws::Structure end # Describes an IPv6 address. # # @!attribute [rw] ipv_6_address # The IPv6 address. # @return [String] # # @!attribute [rw] is_primary_ipv_6 # 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][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceIpv6Address AWS API Documentation # class InstanceIpv6Address < Struct.new( :ipv_6_address, :is_primary_ipv_6) SENSITIVE = [] include Aws::Structure end # Describes an IPv6 address. # # @!attribute [rw] ipv_6_address # The IPv6 address. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceIpv6AddressRequest AWS API Documentation # class InstanceIpv6AddressRequest < Struct.new( :ipv_6_address) SENSITIVE = [] include Aws::Structure end # Information about an IPv6 prefix. # # @!attribute [rw] ipv_6_prefix # One or more IPv6 prefixes assigned to the network interface. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceIpv6Prefix AWS API Documentation # class InstanceIpv6Prefix < Struct.new( :ipv_6_prefix) SENSITIVE = [] include Aws::Structure end # The maintenance options for the instance. # # @!attribute [rw] auto_recovery # Provides information on the current automatic recovery behavior of # your instance. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceMaintenanceOptions AWS API Documentation # class InstanceMaintenanceOptions < Struct.new( :auto_recovery) SENSITIVE = [] include Aws::Structure end # The maintenance options for the instance. # # @!attribute [rw] auto_recovery # Disables the automatic recovery behavior of your instance or sets it # to default. For more information, see [Simplified automatic # recovery][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-recover.html#instance-configuration-recovery # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceMaintenanceOptionsRequest AWS API Documentation # class InstanceMaintenanceOptionsRequest < Struct.new( :auto_recovery) SENSITIVE = [] include Aws::Structure end # Describes the market (purchasing) option for the instances. # # @!attribute [rw] market_type # The market type. # @return [String] # # @!attribute [rw] spot_options # The options for Spot Instances. # @return [Types::SpotMarketOptions] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceMarketOptionsRequest AWS API Documentation # class InstanceMarketOptionsRequest < Struct.new( :market_type, :spot_options) SENSITIVE = [] include Aws::Structure end # The default instance metadata service (IMDS) settings that were set at # the account level in the specified Amazon Web Services
 Region. # # @!attribute [rw] http_tokens # 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. # @return [String] # # @!attribute [rw] http_put_response_hop_limit # The maximum number of hops that the metadata token can travel. # @return [Integer] # # @!attribute [rw] http_endpoint # Indicates whether the IMDS endpoint for an instance is enabled or # disabled. When disabled, the instance metadata can't be accessed. # @return [String] # # @!attribute [rw] instance_metadata_tags # 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][1] in the *Amazon EC2 # User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#work-with-tags-in-IMDS # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceMetadataDefaultsResponse AWS API Documentation # class InstanceMetadataDefaultsResponse < Struct.new( :http_tokens, :http_put_response_hop_limit, :http_endpoint, :instance_metadata_tags) SENSITIVE = [] include Aws::Structure end # The metadata options for the instance. # # @!attribute [rw] http_tokens # 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][1] in the *Amazon EC2 User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/configuring-instance-metadata-options.html#instance-metadata-options-order-of-precedence # @return [String] # # @!attribute [rw] http_put_response_hop_limit # The maximum number of hops that the metadata token can travel. # # Possible values: Integers from 1 to 64 # @return [Integer] # # @!attribute [rw] http_endpoint # 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` # @return [String] # # @!attribute [rw] http_protocol_ipv_6 # Enables or disables the IPv6 endpoint for the instance metadata # service. # # Default: `disabled` # @return [String] # # @!attribute [rw] instance_metadata_tags # 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][1]. # # Default: `disabled` # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#work-with-tags-in-IMDS # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceMetadataOptionsRequest AWS API Documentation # class InstanceMetadataOptionsRequest < Struct.new( :http_tokens, :http_put_response_hop_limit, :http_endpoint, :http_protocol_ipv_6, :instance_metadata_tags) SENSITIVE = [] include Aws::Structure end # The metadata options for the instance. # # @!attribute [rw] state # 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. # @return [String] # # @!attribute [rw] http_tokens # 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. # @return [String] # # @!attribute [rw] http_put_response_hop_limit # The maximum number of hops that the metadata token can travel. # # Possible values: Integers from `1` to `64` # @return [Integer] # # @!attribute [rw] http_endpoint # Indicates whether the HTTP metadata endpoint on your instances is # enabled or disabled. # # If the value is `disabled`, you cannot access your instance # metadata. # @return [String] # # @!attribute [rw] http_protocol_ipv_6 # Indicates whether the IPv6 endpoint for the instance metadata # service is enabled or disabled. # # Default: `disabled` # @return [String] # # @!attribute [rw] instance_metadata_tags # 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][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#work-with-tags-in-IMDS # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceMetadataOptionsResponse AWS API Documentation # class InstanceMetadataOptionsResponse < Struct.new( :state, :http_tokens, :http_put_response_hop_limit, :http_endpoint, :http_protocol_ipv_6, :instance_metadata_tags) SENSITIVE = [] include Aws::Structure end # Describes the monitoring of an instance. # # @!attribute [rw] instance_id # The ID of the instance. # @return [String] # # @!attribute [rw] monitoring # The monitoring for the instance. # @return [Types::Monitoring] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceMonitoring AWS API Documentation # class InstanceMonitoring < Struct.new( :instance_id, :monitoring) SENSITIVE = [] include Aws::Structure end # Describes a network interface. # # @!attribute [rw] association # The association information for an Elastic IPv4 associated with the # network interface. # @return [Types::InstanceNetworkInterfaceAssociation] # # @!attribute [rw] attachment # The network interface attachment. # @return [Types::InstanceNetworkInterfaceAttachment] # # @!attribute [rw] description # The description. # @return [String] # # @!attribute [rw] groups # The security groups. # @return [Array] # # @!attribute [rw] ipv_6_addresses # The IPv6 addresses associated with the network interface. # @return [Array] # # @!attribute [rw] mac_address # The MAC address. # @return [String] # # @!attribute [rw] network_interface_id # The ID of the network interface. # @return [String] # # @!attribute [rw] owner_id # The ID of the Amazon Web Services account that created the network # interface. # @return [String] # # @!attribute [rw] private_dns_name # The private DNS name. # @return [String] # # @!attribute [rw] private_ip_address # The IPv4 address of the network interface within the subnet. # @return [String] # # @!attribute [rw] private_ip_addresses # The private IPv4 addresses associated with the network interface. # @return [Array] # # @!attribute [rw] source_dest_check # Indicates whether source/destination checking is enabled. # @return [Boolean] # # @!attribute [rw] status # The status of the network interface. # @return [String] # # @!attribute [rw] subnet_id # The ID of the subnet. # @return [String] # # @!attribute [rw] vpc_id # The ID of the VPC. # @return [String] # # @!attribute [rw] interface_type # The type of network interface. # # Valid values: `interface` \| `efa` \| `trunk` # @return [String] # # @!attribute [rw] ipv_4_prefixes # The IPv4 delegated prefixes that are assigned to the network # interface. # @return [Array] # # @!attribute [rw] ipv_6_prefixes # The IPv6 delegated prefixes that are assigned to the network # interface. # @return [Array] # # @!attribute [rw] connection_tracking_configuration # 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][1] in the *Amazon Elastic Compute Cloud User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-connection-tracking.html#connection-tracking-timeouts # @return [Types::ConnectionTrackingSpecificationResponse] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceNetworkInterface AWS API Documentation # class InstanceNetworkInterface < Struct.new( :association, :attachment, :description, :groups, :ipv_6_addresses, :mac_address, :network_interface_id, :owner_id, :private_dns_name, :private_ip_address, :private_ip_addresses, :source_dest_check, :status, :subnet_id, :vpc_id, :interface_type, :ipv_4_prefixes, :ipv_6_prefixes, :connection_tracking_configuration) SENSITIVE = [] include Aws::Structure end # Describes association information for an Elastic IP address (IPv4). # # @!attribute [rw] carrier_ip # The carrier IP address associated with the network interface. # @return [String] # # @!attribute [rw] customer_owned_ip # The customer-owned IP address associated with the network interface. # @return [String] # # @!attribute [rw] ip_owner_id # The ID of the owner of the Elastic IP address. # @return [String] # # @!attribute [rw] public_dns_name # The public DNS name. # @return [String] # # @!attribute [rw] public_ip # The public IP address or Elastic IP address bound to the network # interface. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceNetworkInterfaceAssociation AWS API Documentation # class InstanceNetworkInterfaceAssociation < Struct.new( :carrier_ip, :customer_owned_ip, :ip_owner_id, :public_dns_name, :public_ip) SENSITIVE = [] include Aws::Structure end # Describes a network interface attachment. # # @!attribute [rw] attach_time # The time stamp when the attachment initiated. # @return [Time] # # @!attribute [rw] attachment_id # The ID of the network interface attachment. # @return [String] # # @!attribute [rw] delete_on_termination # Indicates whether the network interface is deleted when the instance # is terminated. # @return [Boolean] # # @!attribute [rw] device_index # The index of the device on the instance for the network interface # attachment. # @return [Integer] # # @!attribute [rw] status # The attachment state. # @return [String] # # @!attribute [rw] network_card_index # The index of the network card. # @return [Integer] # # @!attribute [rw] ena_srd_specification # Contains the ENA Express settings for the network interface that's # attached to the instance. # @return [Types::InstanceAttachmentEnaSrdSpecification] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceNetworkInterfaceAttachment AWS API Documentation # class InstanceNetworkInterfaceAttachment < Struct.new( :attach_time, :attachment_id, :delete_on_termination, :device_index, :status, :network_card_index, :ena_srd_specification) SENSITIVE = [] include Aws::Structure end # Describes a network interface. # # @!attribute [rw] associate_public_ip_address # 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][1]. # # # # [1]: http://aws.amazon.com/vpc/pricing/ # @return [Boolean] # # @!attribute [rw] delete_on_termination # 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. # @return [Boolean] # # @!attribute [rw] description # The description of the network interface. Applies only if creating a # network interface when launching an instance. # @return [String] # # @!attribute [rw] device_index # 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. # @return [Integer] # # @!attribute [rw] groups # The IDs of the security groups for the network interface. Applies # only if creating a network interface when launching an instance. # @return [Array] # # @!attribute [rw] ipv_6_address_count # 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. # @return [Integer] # # @!attribute [rw] ipv_6_addresses # 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. # @return [Array] # # @!attribute [rw] network_interface_id # 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. # @return [String] # # @!attribute [rw] private_ip_address # 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][1] request. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html # @return [String] # # @!attribute [rw] private_ip_addresses # 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][1] request. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html # @return [Array] # # @!attribute [rw] secondary_private_ip_address_count # 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][1] # request. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html # @return [Integer] # # @!attribute [rw] subnet_id # The ID of the subnet associated with the network interface. Applies # only if creating a network interface when launching an instance. # @return [String] # # @!attribute [rw] associate_carrier_ip_address # 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][1] in the *Amazon Web # Services Wavelength Developer Guide*. # # # # [1]: https://docs.aws.amazon.com/wavelength/latest/developerguide/how-wavelengths-work.html#provider-owned-ip # @return [Boolean] # # @!attribute [rw] interface_type # The type of network interface. # # Valid values: `interface` \| `efa` # @return [String] # # @!attribute [rw] network_card_index # 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][1] 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][2]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RequestSpotInstances.html # [2]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html # @return [Integer] # # @!attribute [rw] ipv_4_prefixes # The IPv4 delegated prefixes to be assigned to the network interface. # You cannot use this option if you use the `Ipv4PrefixCount` option. # @return [Array] # # @!attribute [rw] ipv_4_prefix_count # 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. # @return [Integer] # # @!attribute [rw] ipv_6_prefixes # The IPv6 delegated prefixes to be assigned to the network interface. # You cannot use this option if you use the `Ipv6PrefixCount` option. # @return [Array] # # @!attribute [rw] ipv_6_prefix_count # 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. # @return [Integer] # # @!attribute [rw] primary_ipv_6 # 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][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html # @return [Boolean] # # @!attribute [rw] ena_srd_specification # Specifies the ENA Express settings for the network interface that's # attached to the instance. # @return [Types::EnaSrdSpecificationRequest] # # @!attribute [rw] connection_tracking_specification # 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][1] in the *Amazon Elastic Compute Cloud User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-connection-tracking.html#connection-tracking-timeouts # @return [Types::ConnectionTrackingSpecificationRequest] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceNetworkInterfaceSpecification AWS API Documentation # class InstanceNetworkInterfaceSpecification < Struct.new( :associate_public_ip_address, :delete_on_termination, :description, :device_index, :groups, :ipv_6_address_count, :ipv_6_addresses, :network_interface_id, :private_ip_address, :private_ip_addresses, :secondary_private_ip_address_count, :subnet_id, :associate_carrier_ip_address, :interface_type, :network_card_index, :ipv_4_prefixes, :ipv_4_prefix_count, :ipv_6_prefixes, :ipv_6_prefix_count, :primary_ipv_6, :ena_srd_specification, :connection_tracking_specification) SENSITIVE = [] include Aws::Structure end # Describes a private IPv4 address. # # @!attribute [rw] association # The association information for an Elastic IP address for the # network interface. # @return [Types::InstanceNetworkInterfaceAssociation] # # @!attribute [rw] primary # Indicates whether this IPv4 address is the primary private IP # address of the network interface. # @return [Boolean] # # @!attribute [rw] private_dns_name # The private IPv4 DNS name. # @return [String] # # @!attribute [rw] private_ip_address # The private IPv4 address of the network interface. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstancePrivateIpAddress AWS API Documentation # class InstancePrivateIpAddress < Struct.new( :association, :primary, :private_dns_name, :private_ip_address) SENSITIVE = [] include Aws::Structure end # 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][1] # or with the [RunInstances API][2], you can't specify # `InstanceRequirements`. # # # # For more information, see [Create a mixed instances group using # attribute-based instance type selection][3] in the *Amazon EC2 Auto # Scaling User Guide*, and also [Attribute-based instance type selection # for EC2 Fleet][4], [Attribute-based instance type selection for Spot # Fleet][5], and [Spot placement score][6] in the *Amazon EC2 User # Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-instance-wizard.html # [2]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html # [3]: https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-mixed-instances-group-attribute-based-instance-type-selection.html # [4]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-attribute-based-instance-type-selection.html # [5]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-attribute-based-instance-type-selection.html # [6]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-placement-score.html # # @!attribute [rw] v_cpu_count # The minimum and maximum number of vCPUs. # @return [Types::VCpuCountRange] # # @!attribute [rw] memory_mi_b # The minimum and maximum amount of memory, in MiB. # @return [Types::MemoryMiB] # # @!attribute [rw] cpu_manufacturers # 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`. # # 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 # @return [Array] # # @!attribute [rw] memory_gi_b_per_v_cpu # The minimum and maximum amount of memory per vCPU, in GiB. # # Default: No minimum or maximum limits # @return [Types::MemoryGiBPerVCpu] # # @!attribute [rw] excluded_instance_types # 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 # @return [Array] # # @!attribute [rw] instance_generations # 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][1] 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 # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html # @return [Array] # # @!attribute [rw] spot_max_price_percentage_over_lowest_price # \[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][1] and # [GetInstanceTypesFromInstanceRequirements][2]. # # 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` # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html # [2]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetInstanceTypesFromInstanceRequirements.html # @return [Integer] # # @!attribute [rw] on_demand_max_price_percentage_over_lowest_price # \[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][1] and # [GetInstanceTypesFromInstanceRequirements][2]. # # 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` # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html # [2]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetInstanceTypesFromInstanceRequirements.html # @return [Integer] # # @!attribute [rw] bare_metal # 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` # @return [String] # # @!attribute [rw] burstable_performance # Indicates whether burstable performance T instance types are # included, excluded, or required. For more information, see # [Burstable performance instances][1]. # # * 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` # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances.html # @return [String] # # @!attribute [rw] require_hibernate_support # Indicates whether instance types must support hibernation for # On-Demand Instances. # # This parameter is not supported for [GetSpotPlacementScores][1]. # # Default: `false` # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html # @return [Boolean] # # @!attribute [rw] network_interface_count # The minimum and maximum number of network interfaces. # # Default: No minimum or maximum limits # @return [Types::NetworkInterfaceCount] # # @!attribute [rw] local_storage # Indicates whether instance types with instance store volumes are # included, excluded, or required. For more information, [Amazon EC2 # instance store][1] 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` # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/InstanceStorage.html # @return [String] # # @!attribute [rw] local_storage_types # 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` # @return [Array] # # @!attribute [rw] total_local_storage_gb # The minimum and maximum amount of total local storage, in GB. # # Default: No minimum or maximum limits # @return [Types::TotalLocalStorageGB] # # @!attribute [rw] baseline_ebs_bandwidth_mbps # The minimum and maximum baseline bandwidth to Amazon EBS, in Mbps. # For more information, see [Amazon EBS–optimized instances][1] in the # *Amazon EC2 User Guide*. # # Default: No minimum or maximum limits # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-optimized.html # @return [Types::BaselineEbsBandwidthMbps] # # @!attribute [rw] accelerator_types # 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`. # # * For instance types with inference accelerators, specify # `inference`. # # Default: Any accelerator type # @return [Array] # # @!attribute [rw] accelerator_count # 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 # @return [Types::AcceleratorCount] # # @!attribute [rw] accelerator_manufacturers # 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 # @return [Array] # # @!attribute [rw] accelerator_names # 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 # @return [Array] # # @!attribute [rw] accelerator_total_memory_mi_b # The minimum and maximum amount of total accelerator memory, in MiB. # # Default: No minimum or maximum limits # @return [Types::AcceleratorTotalMemoryMiB] # # @!attribute [rw] network_bandwidth_gbps # The minimum and maximum amount of network bandwidth, in gigabits per # second (Gbps). # # Default: No minimum or maximum limits # @return [Types::NetworkBandwidthGbps] # # @!attribute [rw] allowed_instance_types # 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 # @return [Array] # # @!attribute [rw] max_spot_price_as_percentage_of_optimal_on_demand_price # \[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 `DesiredCapacityType` 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`. # # # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceRequirements AWS API Documentation # class InstanceRequirements < Struct.new( :v_cpu_count, :memory_mi_b, :cpu_manufacturers, :memory_gi_b_per_v_cpu, :excluded_instance_types, :instance_generations, :spot_max_price_percentage_over_lowest_price, :on_demand_max_price_percentage_over_lowest_price, :bare_metal, :burstable_performance, :require_hibernate_support, :network_interface_count, :local_storage, :local_storage_types, :total_local_storage_gb, :baseline_ebs_bandwidth_mbps, :accelerator_types, :accelerator_count, :accelerator_manufacturers, :accelerator_names, :accelerator_total_memory_mi_b, :network_bandwidth_gbps, :allowed_instance_types, :max_spot_price_as_percentage_of_optimal_on_demand_price) SENSITIVE = [] include Aws::Structure end # 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][1], or with the [RunInstances][2] API or # [AWS::EC2::Instance][3] Amazon Web Services CloudFormation resource, # you can't specify `InstanceRequirements`. # # # # For more information, see [Attribute-based instance type selection for # EC2 Fleet][4], [Attribute-based instance type selection for Spot # Fleet][5], and [Spot placement score][6] in the *Amazon EC2 User # Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-instance-wizard.html # [2]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html # [3]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html # [4]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-attribute-based-instance-type-selection.html # [5]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-attribute-based-instance-type-selection.html # [6]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-placement-score.html # # @!attribute [rw] v_cpu_count # The minimum and maximum number of vCPUs. # @return [Types::VCpuCountRangeRequest] # # @!attribute [rw] memory_mi_b # The minimum and maximum amount of memory, in MiB. # @return [Types::MemoryMiBRequest] # # @!attribute [rw] cpu_manufacturers # 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`. # # 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 # @return [Array] # # @!attribute [rw] memory_gi_b_per_v_cpu # The minimum and maximum amount of memory per vCPU, in GiB. # # Default: No minimum or maximum limits # @return [Types::MemoryGiBPerVCpuRequest] # # @!attribute [rw] excluded_instance_types # 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 # @return [Array] # # @!attribute [rw] instance_generations # 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][1] 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 # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html # @return [Array] # # @!attribute [rw] spot_max_price_percentage_over_lowest_price # \[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][1] and # [GetInstanceTypesFromInstanceRequirements][2]. # # 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` # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html # [2]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetInstanceTypesFromInstanceRequirements.html # @return [Integer] # # @!attribute [rw] on_demand_max_price_percentage_over_lowest_price # \[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][1] and # [GetInstanceTypesFromInstanceRequirements][2]. # # 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` # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html # [2]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetInstanceTypesFromInstanceRequirements.html # @return [Integer] # # @!attribute [rw] bare_metal # 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` # @return [String] # # @!attribute [rw] burstable_performance # Indicates whether burstable performance T instance types are # included, excluded, or required. For more information, see # [Burstable performance instances][1]. # # * 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` # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances.html # @return [String] # # @!attribute [rw] require_hibernate_support # Indicates whether instance types must support hibernation for # On-Demand Instances. # # This parameter is not supported for [GetSpotPlacementScores][1]. # # Default: `false` # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetSpotPlacementScores.html # @return [Boolean] # # @!attribute [rw] network_interface_count # The minimum and maximum number of network interfaces. # # Default: No minimum or maximum limits # @return [Types::NetworkInterfaceCountRequest] # # @!attribute [rw] local_storage # Indicates whether instance types with instance store volumes are # included, excluded, or required. For more information, [Amazon EC2 # instance store][1] 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` # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/InstanceStorage.html # @return [String] # # @!attribute [rw] local_storage_types # 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` # @return [Array] # # @!attribute [rw] total_local_storage_gb # The minimum and maximum amount of total local storage, in GB. # # Default: No minimum or maximum limits # @return [Types::TotalLocalStorageGBRequest] # # @!attribute [rw] baseline_ebs_bandwidth_mbps # The minimum and maximum baseline bandwidth to Amazon EBS, in Mbps. # For more information, see [Amazon EBS–optimized instances][1] in the # *Amazon EC2 User Guide*. # # Default: No minimum or maximum limits # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-optimized.html # @return [Types::BaselineEbsBandwidthMbpsRequest] # # @!attribute [rw] accelerator_types # 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`. # # * To include instance types with inference hardware, specify # `inference`. # # Default: Any accelerator type # @return [Array] # # @!attribute [rw] accelerator_count # 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 # @return [Types::AcceleratorCountRequest] # # @!attribute [rw] accelerator_manufacturers # 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 # @return [Array] # # @!attribute [rw] accelerator_names # 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 # @return [Array] # # @!attribute [rw] accelerator_total_memory_mi_b # The minimum and maximum amount of total accelerator memory, in MiB. # # Default: No minimum or maximum limits # @return [Types::AcceleratorTotalMemoryMiBRequest] # # @!attribute [rw] network_bandwidth_gbps # The minimum and maximum amount of baseline network bandwidth, in # gigabits per second (Gbps). For more information, see [Amazon EC2 # instance network bandwidth][1] in the *Amazon EC2 User Guide*. # # Default: No minimum or maximum limits # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-network-bandwidth.html # @return [Types::NetworkBandwidthGbpsRequest] # # @!attribute [rw] allowed_instance_types # 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 # @return [Array] # # @!attribute [rw] max_spot_price_as_percentage_of_optimal_on_demand_price # \[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 `DesiredCapacityType` 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`. # # # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceRequirementsRequest AWS API Documentation # class InstanceRequirementsRequest < Struct.new( :v_cpu_count, :memory_mi_b, :cpu_manufacturers, :memory_gi_b_per_v_cpu, :excluded_instance_types, :instance_generations, :spot_max_price_percentage_over_lowest_price, :on_demand_max_price_percentage_over_lowest_price, :bare_metal, :burstable_performance, :require_hibernate_support, :network_interface_count, :local_storage, :local_storage_types, :total_local_storage_gb, :baseline_ebs_bandwidth_mbps, :accelerator_types, :accelerator_count, :accelerator_manufacturers, :accelerator_names, :accelerator_total_memory_mi_b, :network_bandwidth_gbps, :allowed_instance_types, :max_spot_price_as_percentage_of_optimal_on_demand_price) SENSITIVE = [] include Aws::Structure end # 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`. # # @!attribute [rw] architecture_types # The architecture type. # @return [Array] # # @!attribute [rw] virtualization_types # The virtualization type. # @return [Array] # # @!attribute [rw] instance_requirements # The attributes for the instance types. When you specify instance # attributes, Amazon EC2 will identify instance types with those # attributes. # @return [Types::InstanceRequirementsRequest] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceRequirementsWithMetadataRequest AWS API Documentation # class InstanceRequirementsWithMetadataRequest < Struct.new( :architecture_types, :virtualization_types, :instance_requirements) SENSITIVE = [] include Aws::Structure end # The instance details to specify which volumes should be snapshotted. # # @!attribute [rw] instance_id # The instance to specify which volumes should be snapshotted. # @return [String] # # @!attribute [rw] exclude_boot_volume # Excludes the root volume from being snapshotted. # @return [Boolean] # # @!attribute [rw] exclude_data_volume_ids # 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. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceSpecification AWS API Documentation # class InstanceSpecification < Struct.new( :instance_id, :exclude_boot_volume, :exclude_data_volume_ids) SENSITIVE = [] include Aws::Structure end # Describes the current state of an instance. # # @!attribute [rw] code # 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. # @return [Integer] # # @!attribute [rw] name # The current state of the instance. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceState AWS API Documentation # class InstanceState < Struct.new( :code, :name) SENSITIVE = [] include Aws::Structure end # Describes an instance state change. # # @!attribute [rw] current_state # The current state of the instance. # @return [Types::InstanceState] # # @!attribute [rw] instance_id # The ID of the instance. # @return [String] # # @!attribute [rw] previous_state # The previous state of the instance. # @return [Types::InstanceState] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceStateChange AWS API Documentation # class InstanceStateChange < Struct.new( :current_state, :instance_id, :previous_state) SENSITIVE = [] include Aws::Structure end # Describes the status of an instance. # # @!attribute [rw] availability_zone # The Availability Zone of the instance. # @return [String] # # @!attribute [rw] outpost_arn # The Amazon Resource Name (ARN) of the Outpost. # @return [String] # # @!attribute [rw] events # Any scheduled events associated with the instance. # @return [Array] # # @!attribute [rw] instance_id # The ID of the instance. # @return [String] # # @!attribute [rw] instance_state # The intended state of the instance. DescribeInstanceStatus requires # that an instance be in the `running` state. # @return [Types::InstanceState] # # @!attribute [rw] instance_status # Reports impaired functionality that stems from issues internal to # the instance, such as impaired reachability. # @return [Types::InstanceStatusSummary] # # @!attribute [rw] system_status # Reports impaired functionality that stems from issues related to the # systems that support an instance, such as hardware failures and # network connectivity problems. # @return [Types::InstanceStatusSummary] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceStatus AWS API Documentation # class InstanceStatus < Struct.new( :availability_zone, :outpost_arn, :events, :instance_id, :instance_state, :instance_status, :system_status) SENSITIVE = [] include Aws::Structure end # Describes the instance status. # # @!attribute [rw] impaired_since # The time when a status check failed. For an instance that was # launched and impaired, this is the time when the instance was # launched. # @return [Time] # # @!attribute [rw] name # The type of instance status. # @return [String] # # @!attribute [rw] status # The status. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceStatusDetails AWS API Documentation # class InstanceStatusDetails < Struct.new( :impaired_since, :name, :status) SENSITIVE = [] include Aws::Structure end # Describes a scheduled event for an instance. # # @!attribute [rw] instance_event_id # The ID of the event. # @return [String] # # @!attribute [rw] code # The event code. # @return [String] # # @!attribute [rw] description # 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\]. # @return [String] # # @!attribute [rw] not_after # The latest scheduled end time for the event. # @return [Time] # # @!attribute [rw] not_before # The earliest scheduled start time for the event. # @return [Time] # # @!attribute [rw] not_before_deadline # The deadline for starting the event. # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceStatusEvent AWS API Documentation # class InstanceStatusEvent < Struct.new( :instance_event_id, :code, :description, :not_after, :not_before, :not_before_deadline) SENSITIVE = [] include Aws::Structure end # Describes the status of an instance. # # @!attribute [rw] details # The system instance health or application instance health. # @return [Array] # # @!attribute [rw] status # The status. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceStatusSummary AWS API Documentation # class InstanceStatusSummary < Struct.new( :details, :status) SENSITIVE = [] include Aws::Structure end # Describes the instance store features that are supported by the # instance type. # # @!attribute [rw] total_size_in_gb # The total size of the disks, in GB. # @return [Integer] # # @!attribute [rw] disks # Describes the disks that are available for the instance type. # @return [Array] # # @!attribute [rw] nvme_support # Indicates whether non-volatile memory express (NVMe) is supported. # @return [String] # # @!attribute [rw] encryption_support # Indicates whether data is encrypted at rest. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceStorageInfo AWS API Documentation # class InstanceStorageInfo < Struct.new( :total_size_in_gb, :disks, :nvme_support, :encryption_support) SENSITIVE = [] include Aws::Structure end # Describes the registered tag keys for the current Region. # # @!attribute [rw] instance_tag_keys # The registered tag keys. # @return [Array] # # @!attribute [rw] include_all_tags_of_instance # 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. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceTagNotificationAttribute AWS API Documentation # class InstanceTagNotificationAttribute < Struct.new( :instance_tag_keys, :include_all_tags_of_instance) SENSITIVE = [] include Aws::Structure end # Information about the instance topology. # # @!attribute [rw] instance_id # The instance ID. # @return [String] # # @!attribute [rw] instance_type # The instance type. # @return [String] # # @!attribute [rw] group_name # The name of the placement group that the instance is in. # @return [String] # # @!attribute [rw] network_nodes # 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. # @return [Array] # # @!attribute [rw] availability_zone # The name of the Availability Zone or Local Zone that the instance is # in. # @return [String] # # @!attribute [rw] zone_id # The ID of the Availability Zone or Local Zone that the instance is # in. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceTopology AWS API Documentation # class InstanceTopology < Struct.new( :instance_id, :instance_type, :group_name, :network_nodes, :availability_zone, :zone_id) SENSITIVE = [] include Aws::Structure end # Describes the instance type. # # @!attribute [rw] instance_type # The instance type. For more information, see [Instance types][1] in # the *Amazon EC2 User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html # @return [String] # # @!attribute [rw] current_generation # Indicates whether the instance type is current generation. # @return [Boolean] # # @!attribute [rw] free_tier_eligible # Indicates whether the instance type is eligible for the free tier. # @return [Boolean] # # @!attribute [rw] supported_usage_classes # Indicates whether the instance type is offered for spot or # On-Demand. # @return [Array] # # @!attribute [rw] supported_root_device_types # The supported root device types. # @return [Array] # # @!attribute [rw] supported_virtualization_types # The supported virtualization types. # @return [Array] # # @!attribute [rw] bare_metal # Indicates whether the instance is a bare metal instance type. # @return [Boolean] # # @!attribute [rw] hypervisor # The hypervisor for the instance type. # @return [String] # # @!attribute [rw] processor_info # Describes the processor. # @return [Types::ProcessorInfo] # # @!attribute [rw] v_cpu_info # Describes the vCPU configurations for the instance type. # @return [Types::VCpuInfo] # # @!attribute [rw] memory_info # Describes the memory for the instance type. # @return [Types::MemoryInfo] # # @!attribute [rw] instance_storage_supported # Indicates whether instance storage is supported. # @return [Boolean] # # @!attribute [rw] instance_storage_info # Describes the instance storage for the instance type. # @return [Types::InstanceStorageInfo] # # @!attribute [rw] ebs_info # Describes the Amazon EBS settings for the instance type. # @return [Types::EbsInfo] # # @!attribute [rw] network_info # Describes the network settings for the instance type. # @return [Types::NetworkInfo] # # @!attribute [rw] gpu_info # Describes the GPU accelerator settings for the instance type. # @return [Types::GpuInfo] # # @!attribute [rw] fpga_info # Describes the FPGA accelerator settings for the instance type. # @return [Types::FpgaInfo] # # @!attribute [rw] placement_group_info # Describes the placement group settings for the instance type. # @return [Types::PlacementGroupInfo] # # @!attribute [rw] inference_accelerator_info # Describes the Inference accelerator settings for the instance type. # @return [Types::InferenceAcceleratorInfo] # # @!attribute [rw] hibernation_supported # Indicates whether On-Demand hibernation is supported. # @return [Boolean] # # @!attribute [rw] burstable_performance_supported # Indicates whether the instance type is a burstable performance T # instance type. For more information, see [Burstable performance # instances][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances.html # @return [Boolean] # # @!attribute [rw] dedicated_hosts_supported # Indicates whether Dedicated Hosts are supported on the instance # type. # @return [Boolean] # # @!attribute [rw] auto_recovery_supported # Indicates whether Amazon CloudWatch action based recovery is # supported. # @return [Boolean] # # @!attribute [rw] supported_boot_modes # The supported boot modes. For more information, see [Boot modes][1] # in the *Amazon EC2 User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ami-boot.html # @return [Array] # # @!attribute [rw] nitro_enclaves_support # Indicates whether Nitro Enclaves is supported. # @return [String] # # @!attribute [rw] nitro_tpm_support # Indicates whether NitroTPM is supported. # @return [String] # # @!attribute [rw] nitro_tpm_info # Describes the supported NitroTPM versions for the instance type. # @return [Types::NitroTpmInfo] # # @!attribute [rw] media_accelerator_info # Describes the media accelerator settings for the instance type. # @return [Types::MediaAcceleratorInfo] # # @!attribute [rw] neuron_info # Describes the Neuron accelerator settings for the instance type. # @return [Types::NeuronInfo] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceTypeInfo AWS API Documentation # class InstanceTypeInfo < Struct.new( :instance_type, :current_generation, :free_tier_eligible, :supported_usage_classes, :supported_root_device_types, :supported_virtualization_types, :bare_metal, :hypervisor, :processor_info, :v_cpu_info, :memory_info, :instance_storage_supported, :instance_storage_info, :ebs_info, :network_info, :gpu_info, :fpga_info, :placement_group_info, :inference_accelerator_info, :hibernation_supported, :burstable_performance_supported, :dedicated_hosts_supported, :auto_recovery_supported, :supported_boot_modes, :nitro_enclaves_support, :nitro_tpm_support, :nitro_tpm_info, :media_accelerator_info, :neuron_info) SENSITIVE = [] include Aws::Structure end # The list of instance types with the specified instance attributes. # # @!attribute [rw] instance_type # The matching instance type. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceTypeInfoFromInstanceRequirements AWS API Documentation # class InstanceTypeInfoFromInstanceRequirements < Struct.new( :instance_type) SENSITIVE = [] include Aws::Structure end # The instance types offered. # # @!attribute [rw] instance_type # The instance type. For more information, see [Instance types][1] in # the *Amazon EC2 User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html # @return [String] # # @!attribute [rw] location_type # The location type. # @return [String] # # @!attribute [rw] location # 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`.) # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceTypeOffering AWS API Documentation # class InstanceTypeOffering < Struct.new( :instance_type, :location_type, :location) SENSITIVE = [] include Aws::Structure end # Information about the Capacity Reservation usage. # # @!attribute [rw] account_id # The ID of the Amazon Web Services account that is making use of the # Capacity Reservation. # @return [String] # # @!attribute [rw] used_instance_count # The number of instances the Amazon Web Services account currently # has in the Capacity Reservation. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InstanceUsage AWS API Documentation # class InstanceUsage < Struct.new( :account_id, :used_instance_count) SENSITIVE = [] include Aws::Structure end # Describes service integrations with VPC Flow logs. # # @!attribute [rw] athena_integrations # Information about the integration with Amazon Athena. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/IntegrateServices AWS API Documentation # class IntegrateServices < Struct.new( :athena_integrations) SENSITIVE = [] include Aws::Structure end # Describes an internet gateway. # # @!attribute [rw] attachments # Any VPCs attached to the internet gateway. # @return [Array] # # @!attribute [rw] internet_gateway_id # The ID of the internet gateway. # @return [String] # # @!attribute [rw] owner_id # The ID of the Amazon Web Services account that owns the internet # gateway. # @return [String] # # @!attribute [rw] tags # Any tags assigned to the internet gateway. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InternetGateway AWS API Documentation # class InternetGateway < Struct.new( :attachments, :internet_gateway_id, :owner_id, :tags) SENSITIVE = [] include Aws::Structure end # Describes the attachment of a VPC to an internet gateway or an # egress-only internet gateway. # # @!attribute [rw] state # 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. # @return [String] # # @!attribute [rw] vpc_id # The ID of the VPC. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/InternetGatewayAttachment AWS API Documentation # class InternetGatewayAttachment < Struct.new( :state, :vpc_id) SENSITIVE = [] include Aws::Structure end # Describes the permissions for a security group rule. # # @!attribute [rw] from_port # 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). # @return [Integer] # # @!attribute [rw] ip_protocol # The IP protocol name (`tcp`, `udp`, `icmp`, `icmpv6`) or number (see # [Protocol Numbers][1]). # # 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. # # # # [1]: http://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml # @return [String] # # @!attribute [rw] ip_ranges # The IPv4 address ranges. # @return [Array] # # @!attribute [rw] ipv_6_ranges # The IPv6 address ranges. # @return [Array] # # @!attribute [rw] prefix_list_ids # The prefix list IDs. # @return [Array] # # @!attribute [rw] to_port # 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). # @return [Integer] # # @!attribute [rw] user_id_group_pairs # The security group and Amazon Web Services account ID pairs. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/IpPermission AWS API Documentation # class IpPermission < Struct.new( :from_port, :ip_protocol, :ip_ranges, :ipv_6_ranges, :prefix_list_ids, :to_port, :user_id_group_pairs) SENSITIVE = [] include Aws::Structure end # Describes an IPv4 address range. # # @!attribute [rw] cidr_ip # 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. # @return [String] # # @!attribute [rw] description # 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 .\_-:/()#,@\[\]+=&;\\\{\\}!$* # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/IpRange AWS API Documentation # class IpRange < Struct.new( :cidr_ip, :description) SENSITIVE = [] include Aws::Structure end # 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?][1] in the *Amazon VPC IPAM User # Guide*. # # # # [1]: https://docs.aws.amazon.com/vpc/latest/ipam/what-is-it-ipam.html # # @!attribute [rw] owner_id # The Amazon Web Services account ID of the owner of the IPAM. # @return [String] # # @!attribute [rw] ipam_id # The ID of the IPAM. # @return [String] # # @!attribute [rw] ipam_arn # The Amazon Resource Name (ARN) of the IPAM. # @return [String] # # @!attribute [rw] ipam_region # The Amazon Web Services Region of the IPAM. # @return [String] # # @!attribute [rw] public_default_scope_id # The ID of the IPAM's default public scope. # @return [String] # # @!attribute [rw] private_default_scope_id # The ID of the IPAM's default private scope. # @return [String] # # @!attribute [rw] scope_count # The number of scopes in the IPAM. The scope quota is 5. For more # information on quotas, see [Quotas in IPAM][1] in the *Amazon VPC # IPAM User Guide*. # # # # [1]: https://docs.aws.amazon.com/vpc/latest/ipam/quotas-ipam.html # @return [Integer] # # @!attribute [rw] description # The description for the IPAM. # @return [String] # # @!attribute [rw] operating_regions # 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][1] in the *Amazon VPC IPAM User Guide*. # # # # [1]: https://docs.aws.amazon.com/vpc/latest/ipam/create-ipam.html # @return [Array] # # @!attribute [rw] state # The state of the IPAM. # @return [String] # # @!attribute [rw] tags # 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. # @return [Array] # # @!attribute [rw] default_resource_discovery_id # The IPAM's default resource discovery ID. # @return [String] # # @!attribute [rw] default_resource_discovery_association_id # The IPAM's default resource discovery association ID. # @return [String] # # @!attribute [rw] resource_discovery_association_count # The IPAM's resource discovery association count. # @return [Integer] # # @!attribute [rw] state_message # The state message. # @return [String] # # @!attribute [rw] tier # 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][1]. # # # # [1]: http://aws.amazon.com/vpc/pricing/ # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Ipam AWS API Documentation # class Ipam < Struct.new( :owner_id, :ipam_id, :ipam_arn, :ipam_region, :public_default_scope_id, :private_default_scope_id, :scope_count, :description, :operating_regions, :state, :tags, :default_resource_discovery_id, :default_resource_discovery_association_id, :resource_discovery_association_count, :state_message, :tier) SENSITIVE = [] include Aws::Structure end # The historical record of a CIDR within an IPAM scope. For more # information, see [View the history of IP addresses][1] in the *Amazon # VPC IPAM User Guide*. # # # # [1]: https://docs.aws.amazon.com/vpc/latest/ipam/view-history-cidr-ipam.html # # @!attribute [rw] resource_owner_id # The ID of the resource owner. # @return [String] # # @!attribute [rw] resource_region # The Amazon Web Services Region of the resource. # @return [String] # # @!attribute [rw] resource_type # The type of the resource. # @return [String] # # @!attribute [rw] resource_id # The ID of the resource. # @return [String] # # @!attribute [rw] resource_cidr # The CIDR of the resource. # @return [String] # # @!attribute [rw] resource_name # The name of the resource. # @return [String] # # @!attribute [rw] resource_compliance_status # The compliance status of a resource. For more information on # compliance statuses, see [Monitor CIDR usage by resource][1] in the # *Amazon VPC IPAM User Guide*. # # # # [1]: https://docs.aws.amazon.com/vpc/latest/ipam/monitor-cidr-compliance-ipam.html # @return [String] # # @!attribute [rw] resource_overlap_status # 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][1] in the *Amazon VPC IPAM User Guide*. # # # # [1]: https://docs.aws.amazon.com/vpc/latest/ipam/monitor-cidr-compliance-ipam.html # @return [String] # # @!attribute [rw] vpc_id # The VPC ID of the resource. # @return [String] # # @!attribute [rw] sampled_start_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. # @return [Time] # # @!attribute [rw] sampled_end_time # 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. # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/IpamAddressHistoryRecord AWS API Documentation # class IpamAddressHistoryRecord < Struct.new( :resource_owner_id, :resource_region, :resource_type, :resource_id, :resource_cidr, :resource_name, :resource_compliance_status, :resource_overlap_status, :vpc_id, :sampled_start_time, :sampled_end_time) SENSITIVE = [] include Aws::Structure end # A signed document that proves that you are authorized to bring the # specified IP address range to Amazon using BYOIP. # # @!attribute [rw] message # The plain-text authorization message for the prefix and account. # @return [String] # # @!attribute [rw] signature # The signed authorization message for the prefix and account. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/IpamCidrAuthorizationContext AWS API Documentation # class IpamCidrAuthorizationContext < Struct.new( :message, :signature) SENSITIVE = [] include Aws::Structure end # 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. # # @!attribute [rw] account_id # The account ID. # @return [String] # # @!attribute [rw] discovery_region # 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. # @return [String] # # @!attribute [rw] failure_reason # The resource discovery failure reason. # @return [Types::IpamDiscoveryFailureReason] # # @!attribute [rw] last_attempted_discovery_time # The last attempted resource discovery time. # @return [Time] # # @!attribute [rw] last_successful_discovery_time # The last successful resource discovery time. # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/IpamDiscoveredAccount AWS API Documentation # class IpamDiscoveredAccount < Struct.new( :account_id, :discovery_region, :failure_reason, :last_attempted_discovery_time, :last_successful_discovery_time) SENSITIVE = [] include Aws::Structure end # A public IP Address discovered by IPAM. # # @!attribute [rw] ipam_resource_discovery_id # The resource discovery ID. # @return [String] # # @!attribute [rw] address_region # The Region of the resource the IP address is assigned to. # @return [String] # # @!attribute [rw] address # The IP address. # @return [String] # # @!attribute [rw] address_owner_id # The ID of the owner of the resource the IP address is assigned to. # @return [String] # # @!attribute [rw] address_allocation_id # The allocation ID of the resource the IP address is assigned to. # @return [String] # # @!attribute [rw] association_status # The association status. # @return [String] # # @!attribute [rw] address_type # The IP address type. # @return [String] # # @!attribute [rw] service # The Amazon Web Services service associated with the IP address. # @return [String] # # @!attribute [rw] service_resource # The resource ARN or ID. # @return [String] # # @!attribute [rw] vpc_id # The ID of the VPC that the resource with the assigned IP address is # in. # @return [String] # # @!attribute [rw] subnet_id # The ID of the subnet that the resource with the assigned IP address # is in. # @return [String] # # @!attribute [rw] public_ipv_4_pool_id # The ID of the public IPv4 pool that the resource with the assigned # IP address is from. # @return [String] # # @!attribute [rw] network_interface_id # The network interface ID of the resource with the assigned IP # address. # @return [String] # # @!attribute [rw] network_interface_description # The description of the network interface that IP address is assigned # to. # @return [String] # # @!attribute [rw] instance_id # The instance ID of the instance the assigned IP address is assigned # to. # @return [String] # # @!attribute [rw] tags # Tags associated with the IP address. # @return [Types::IpamPublicAddressTags] # # @!attribute [rw] network_border_group # The network border group that the resource that the IP address is # assigned to is in. # @return [String] # # @!attribute [rw] security_groups # Security groups associated with the resource that the IP address is # assigned to. # @return [Array] # # @!attribute [rw] sample_time # The last successful resource discovery time. # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/IpamDiscoveredPublicAddress AWS API Documentation # class IpamDiscoveredPublicAddress < Struct.new( :ipam_resource_discovery_id, :address_region, :address, :address_owner_id, :address_allocation_id, :association_status, :address_type, :service, :service_resource, :vpc_id, :subnet_id, :public_ipv_4_pool_id, :network_interface_id, :network_interface_description, :instance_id, :tags, :network_border_group, :security_groups, :sample_time) SENSITIVE = [] include Aws::Structure end # 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. # # @!attribute [rw] ipam_resource_discovery_id # The resource discovery ID. # @return [String] # # @!attribute [rw] resource_region # The resource Region. # @return [String] # # @!attribute [rw] resource_id # The resource ID. # @return [String] # # @!attribute [rw] resource_owner_id # The resource owner ID. # @return [String] # # @!attribute [rw] resource_cidr # The resource CIDR. # @return [String] # # @!attribute [rw] resource_type # The resource type. # @return [String] # # @!attribute [rw] resource_tags # The resource tags. # @return [Array] # # @!attribute [rw] ip_usage # 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). # @return [Float] # # @!attribute [rw] vpc_id # The VPC ID. # @return [String] # # @!attribute [rw] sample_time # The last successful resource discovery time. # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/IpamDiscoveredResourceCidr AWS API Documentation # class IpamDiscoveredResourceCidr < Struct.new( :ipam_resource_discovery_id, :resource_region, :resource_id, :resource_owner_id, :resource_cidr, :resource_type, :resource_tags, :ip_usage, :vpc_id, :sample_time) SENSITIVE = [] include Aws::Structure end # The discovery failure reason. # # @!attribute [rw] code # 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][1] in the *Amazon Elastic Compute Cloud API # Reference*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/errors-overview.html # @return [String] # # @!attribute [rw] message # The discovery failure message. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/IpamDiscoveryFailureReason AWS API Documentation # class IpamDiscoveryFailureReason < Struct.new( :code, :message) SENSITIVE = [] include Aws::Structure end # 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][1] # in the *Amazon VPC IPAM User Guide*. # # # # [1]: https://docs.aws.amazon.com/vpc/latest/ipam/create-ipam.html # # @!attribute [rw] region_name # The name of the operating Region. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/IpamOperatingRegion AWS API Documentation # class IpamOperatingRegion < Struct.new( :region_name) SENSITIVE = [] include Aws::Structure end # 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. # # @!attribute [rw] owner_id # The Amazon Web Services account ID of the owner of the IPAM pool. # @return [String] # # @!attribute [rw] ipam_pool_id # The ID of the IPAM pool. # @return [String] # # @!attribute [rw] source_ipam_pool_id # The ID of the source IPAM pool. You can use this option to create an # IPAM pool within an existing source pool. # @return [String] # # @!attribute [rw] ipam_pool_arn # The Amazon Resource Name (ARN) of the IPAM pool. # @return [String] # # @!attribute [rw] ipam_scope_arn # The ARN of the scope of the IPAM pool. # @return [String] # # @!attribute [rw] ipam_scope_type # 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. # @return [String] # # @!attribute [rw] ipam_arn # The ARN of the IPAM. # @return [String] # # @!attribute [rw] ipam_region # The Amazon Web Services Region of the IPAM pool. # @return [String] # # @!attribute [rw] locale # The locale of the IPAM pool. In IPAM, the locale is the Amazon Web # Services Region where you want to make an IPAM pool available for # allocations. Only resources in the same Region as the locale of the # pool can get IP address allocations from the pool. You can only # allocate a CIDR for a VPC, for example, from an IPAM pool that # shares a locale with the VPC’s Region. Note that once you choose a # Locale for a pool, you cannot modify it. 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. # @return [String] # # @!attribute [rw] pool_depth # The depth of pools in your IPAM pool. The pool depth quota is 10. # For more information, see [Quotas in IPAM][1] in the *Amazon VPC # IPAM User Guide*. # # # # [1]: https://docs.aws.amazon.com/vpc/latest/ipam/quotas-ipam.html # @return [Integer] # # @!attribute [rw] state # The state of the IPAM pool. # @return [String] # # @!attribute [rw] state_message # The state message. # @return [String] # # @!attribute [rw] description # The description of the IPAM pool. # @return [String] # # @!attribute [rw] auto_import # 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. # @return [Boolean] # # @!attribute [rw] publicly_advertisable # Determines if a pool is publicly advertisable. This option is not # available for pools with AddressFamily set to `ipv4`. # @return [Boolean] # # @!attribute [rw] address_family # The address family of the pool. # @return [String] # # @!attribute [rw] allocation_min_netmask_length # 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. # @return [Integer] # # @!attribute [rw] allocation_max_netmask_length # 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. # @return [Integer] # # @!attribute [rw] allocation_default_netmask_length # 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. # @return [Integer] # # @!attribute [rw] allocation_resource_tags # 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. # @return [Array] # # @!attribute [rw] tags # 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. # @return [Array] # # @!attribute [rw] aws_service # 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. # @return [String] # # @!attribute [rw] public_ip_source # 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][1] 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][2] in the *Amazon VPC IPAM User Guide*. # # # # [1]: https://docs.aws.amazon.com/vpc/latest/ipam/intro-create-ipv6-pools.html # [2]: https://docs.aws.amazon.com/vpc/latest/ipam/quotas-ipam.html # @return [String] # # @!attribute [rw] source_resource # The resource used to provision CIDRs to a resource planning pool. # @return [Types::IpamPoolSourceResource] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/IpamPool AWS API Documentation # class IpamPool < Struct.new( :owner_id, :ipam_pool_id, :source_ipam_pool_id, :ipam_pool_arn, :ipam_scope_arn, :ipam_scope_type, :ipam_arn, :ipam_region, :locale, :pool_depth, :state, :state_message, :description, :auto_import, :publicly_advertisable, :address_family, :allocation_min_netmask_length, :allocation_max_netmask_length, :allocation_default_netmask_length, :allocation_resource_tags, :tags, :aws_service, :public_ip_source, :source_resource) SENSITIVE = [] include Aws::Structure end # In IPAM, an allocation is a CIDR assignment from an IPAM pool to # another IPAM pool or to a resource. # # @!attribute [rw] cidr # 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`. # @return [String] # # @!attribute [rw] ipam_pool_allocation_id # The ID of an allocation. # @return [String] # # @!attribute [rw] description # A description of the pool allocation. # @return [String] # # @!attribute [rw] resource_id # The ID of the resource. # @return [String] # # @!attribute [rw] resource_type # The type of the resource. # @return [String] # # @!attribute [rw] resource_region # The Amazon Web Services Region of the resource. # @return [String] # # @!attribute [rw] resource_owner # The owner of the resource. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/IpamPoolAllocation AWS API Documentation # class IpamPoolAllocation < Struct.new( :cidr, :ipam_pool_allocation_id, :description, :resource_id, :resource_type, :resource_region, :resource_owner) SENSITIVE = [] include Aws::Structure end # A CIDR provisioned to an IPAM pool. # # @!attribute [rw] cidr # 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`. # @return [String] # # @!attribute [rw] state # The state of the CIDR. # @return [String] # # @!attribute [rw] failure_reason # Details related to why an IPAM pool CIDR failed to be provisioned. # @return [Types::IpamPoolCidrFailureReason] # # @!attribute [rw] ipam_pool_cidr_id # The IPAM pool CIDR ID. # @return [String] # # @!attribute [rw] netmask_length # 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. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/IpamPoolCidr AWS API Documentation # class IpamPoolCidr < Struct.new( :cidr, :state, :failure_reason, :ipam_pool_cidr_id, :netmask_length) SENSITIVE = [] include Aws::Structure end # Details related to why an IPAM pool CIDR failed to be provisioned. # # @!attribute [rw] code # An error code related to why an IPAM pool CIDR failed to be # provisioned. # @return [String] # # @!attribute [rw] message # A message related to why an IPAM pool CIDR failed to be provisioned. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/IpamPoolCidrFailureReason AWS API Documentation # class IpamPoolCidrFailureReason < Struct.new( :code, :message) SENSITIVE = [] include Aws::Structure end # The resource used to provision CIDRs to a resource planning pool. # # @!attribute [rw] resource_id # The source resource ID. # @return [String] # # @!attribute [rw] resource_type # The source resource type. # @return [String] # # @!attribute [rw] resource_region # The source resource Region. # @return [String] # # @!attribute [rw] resource_owner # The source resource owner. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/IpamPoolSourceResource AWS API Documentation # class IpamPoolSourceResource < Struct.new( :resource_id, :resource_type, :resource_region, :resource_owner) SENSITIVE = [] include Aws::Structure end # The resource used to provision CIDRs to a resource planning pool. # # @!attribute [rw] resource_id # The source resource ID. # @return [String] # # @!attribute [rw] resource_type # The source resource type. # @return [String] # # @!attribute [rw] resource_region # The source resource Region. # @return [String] # # @!attribute [rw] resource_owner # The source resource owner. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/IpamPoolSourceResourceRequest AWS API Documentation # class IpamPoolSourceResourceRequest < Struct.new( :resource_id, :resource_type, :resource_region, :resource_owner) SENSITIVE = [] include Aws::Structure end # The security group that the resource with the public IP address is in. # # @!attribute [rw] group_name # The security group's name. # @return [String] # # @!attribute [rw] group_id # The security group's ID. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/IpamPublicAddressSecurityGroup AWS API Documentation # class IpamPublicAddressSecurityGroup < Struct.new( :group_name, :group_id) SENSITIVE = [] include Aws::Structure end # A tag for a public IP address discovered by IPAM. # # @!attribute [rw] key # The tag's key. # @return [String] # # @!attribute [rw] value # The tag's value. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/IpamPublicAddressTag AWS API Documentation # class IpamPublicAddressTag < Struct.new( :key, :value) SENSITIVE = [] include Aws::Structure end # Tags for a public IP address discovered by IPAM. # # @!attribute [rw] eip_tags # Tags for an Elastic IP address. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/IpamPublicAddressTags AWS API Documentation # class IpamPublicAddressTags < Struct.new( :eip_tags) SENSITIVE = [] include Aws::Structure end # The CIDR for an IPAM resource. # # @!attribute [rw] ipam_id # The IPAM ID for an IPAM resource. # @return [String] # # @!attribute [rw] ipam_scope_id # The scope ID for an IPAM resource. # @return [String] # # @!attribute [rw] ipam_pool_id # The pool ID for an IPAM resource. # @return [String] # # @!attribute [rw] resource_region # The Amazon Web Services Region for an IPAM resource. # @return [String] # # @!attribute [rw] resource_owner_id # The Amazon Web Services account number of the owner of an IPAM # resource. # @return [String] # # @!attribute [rw] resource_id # The ID of an IPAM resource. # @return [String] # # @!attribute [rw] resource_name # The name of an IPAM resource. # @return [String] # # @!attribute [rw] resource_cidr # The CIDR for an IPAM resource. # @return [String] # # @!attribute [rw] resource_type # The type of IPAM resource. # @return [String] # # @!attribute [rw] resource_tags # The tags for an IPAM resource. # @return [Array] # # @!attribute [rw] ip_usage # 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). # @return [Float] # # @!attribute [rw] compliance_status # The compliance status of the IPAM resource. For more information on # compliance statuses, see [Monitor CIDR usage by resource][1] in the # *Amazon VPC IPAM User Guide*. # # # # [1]: https://docs.aws.amazon.com/vpc/latest/ipam/monitor-cidr-compliance-ipam.html # @return [String] # # @!attribute [rw] management_state # The management state of the resource. For more information about # management states, see [Monitor CIDR usage by resource][1] in the # *Amazon VPC IPAM User Guide*. # # # # [1]: https://docs.aws.amazon.com/vpc/latest/ipam/monitor-cidr-compliance-ipam.html # @return [String] # # @!attribute [rw] overlap_status # 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][1] in the *Amazon VPC IPAM User Guide*. # # # # [1]: https://docs.aws.amazon.com/vpc/latest/ipam/monitor-cidr-compliance-ipam.html # @return [String] # # @!attribute [rw] vpc_id # The ID of a VPC. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/IpamResourceCidr AWS API Documentation # class IpamResourceCidr < Struct.new( :ipam_id, :ipam_scope_id, :ipam_pool_id, :resource_region, :resource_owner_id, :resource_id, :resource_name, :resource_cidr, :resource_type, :resource_tags, :ip_usage, :compliance_status, :management_state, :overlap_status, :vpc_id) SENSITIVE = [] include Aws::Structure end # A resource discovery is an IPAM component that enables IPAM to manage # and monitor resources that belong to the owning account. # # @!attribute [rw] owner_id # The ID of the owner. # @return [String] # # @!attribute [rw] ipam_resource_discovery_id # The resource discovery ID. # @return [String] # # @!attribute [rw] ipam_resource_discovery_arn # The resource discovery Amazon Resource Name (ARN). # @return [String] # # @!attribute [rw] ipam_resource_discovery_region # The resource discovery Region. # @return [String] # # @!attribute [rw] description # The resource discovery description. # @return [String] # # @!attribute [rw] operating_regions # 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. # @return [Array] # # @!attribute [rw] is_default # Defines if the resource discovery is the default. The default # resource discovery is the resource discovery automatically created # when you create an IPAM. # @return [Boolean] # # @!attribute [rw] state # 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. # @return [String] # # @!attribute [rw] tags # 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. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/IpamResourceDiscovery AWS API Documentation # class IpamResourceDiscovery < Struct.new( :owner_id, :ipam_resource_discovery_id, :ipam_resource_discovery_arn, :ipam_resource_discovery_region, :description, :operating_regions, :is_default, :state, :tags) SENSITIVE = [] include Aws::Structure end # 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. # # @!attribute [rw] owner_id # The Amazon Web Services account ID of the resource discovery owner. # @return [String] # # @!attribute [rw] ipam_resource_discovery_association_id # The resource discovery association ID. # @return [String] # # @!attribute [rw] ipam_resource_discovery_association_arn # The resource discovery association Amazon Resource Name (ARN). # @return [String] # # @!attribute [rw] ipam_resource_discovery_id # The resource discovery ID. # @return [String] # # @!attribute [rw] ipam_id # The IPAM ID. # @return [String] # # @!attribute [rw] ipam_arn # The IPAM ARN. # @return [String] # # @!attribute [rw] ipam_region # The IPAM home Region. # @return [String] # # @!attribute [rw] is_default # 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. # @return [Boolean] # # @!attribute [rw] resource_discovery_status # 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. # @return [String] # # @!attribute [rw] state # 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. # @return [String] # # @!attribute [rw] tags # 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. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/IpamResourceDiscoveryAssociation AWS API Documentation # class IpamResourceDiscoveryAssociation < Struct.new( :owner_id, :ipam_resource_discovery_association_id, :ipam_resource_discovery_association_arn, :ipam_resource_discovery_id, :ipam_id, :ipam_arn, :ipam_region, :is_default, :resource_discovery_status, :state, :tags) SENSITIVE = [] include Aws::Structure end # 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. # # @!attribute [rw] key # 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. # @return [String] # # @!attribute [rw] value # The value of the tag. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/IpamResourceTag AWS API Documentation # class IpamResourceTag < Struct.new( :key, :value) SENSITIVE = [] include Aws::Structure end # 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][1] in the *Amazon VPC IPAM # User Guide*. # # # # [1]: https://docs.aws.amazon.com/vpc/latest/ipam/how-it-works-ipam.html # # @!attribute [rw] owner_id # The Amazon Web Services account ID of the owner of the scope. # @return [String] # # @!attribute [rw] ipam_scope_id # The ID of the scope. # @return [String] # # @!attribute [rw] ipam_scope_arn # The Amazon Resource Name (ARN) of the scope. # @return [String] # # @!attribute [rw] ipam_arn # The ARN of the IPAM. # @return [String] # # @!attribute [rw] ipam_region # The Amazon Web Services Region of the IPAM scope. # @return [String] # # @!attribute [rw] ipam_scope_type # The type of the scope. # @return [String] # # @!attribute [rw] is_default # Defines if the scope is the default scope or not. # @return [Boolean] # # @!attribute [rw] description # The description of the scope. # @return [String] # # @!attribute [rw] pool_count # The number of pools in the scope. # @return [Integer] # # @!attribute [rw] state # The state of the IPAM scope. # @return [String] # # @!attribute [rw] tags # 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. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/IpamScope AWS API Documentation # class IpamScope < Struct.new( :owner_id, :ipam_scope_id, :ipam_scope_arn, :ipam_arn, :ipam_region, :ipam_scope_type, :is_default, :description, :pool_count, :state, :tags) SENSITIVE = [] include Aws::Structure end # Describes an IPv4 prefix. # # @!attribute [rw] ipv_4_prefix # The IPv4 prefix. For information, see [ Assigning prefixes to Amazon # EC2 network interfaces][1] in the *Amazon Elastic Compute Cloud User # Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-prefix-eni.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Ipv4PrefixSpecification AWS API Documentation # class Ipv4PrefixSpecification < Struct.new( :ipv_4_prefix) SENSITIVE = [] include Aws::Structure end # Describes the IPv4 prefix option for a network interface. # # @!attribute [rw] ipv_4_prefix # The IPv4 prefix. For information, see [ Assigning prefixes to Amazon # EC2 network interfaces][1] in the *Amazon Elastic Compute Cloud User # Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-prefix-eni.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Ipv4PrefixSpecificationRequest AWS API Documentation # class Ipv4PrefixSpecificationRequest < Struct.new( :ipv_4_prefix) SENSITIVE = [] include Aws::Structure end # Information about the IPv4 delegated prefixes assigned to a network # interface. # # @!attribute [rw] ipv_4_prefix # The IPv4 delegated prefixes assigned to the network interface. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Ipv4PrefixSpecificationResponse AWS API Documentation # class Ipv4PrefixSpecificationResponse < Struct.new( :ipv_4_prefix) SENSITIVE = [] include Aws::Structure end # Describes an IPv6 CIDR block association. # # @!attribute [rw] ipv_6_cidr # The IPv6 CIDR block. # @return [String] # # @!attribute [rw] associated_resource # The resource that's associated with the IPv6 CIDR block. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Ipv6CidrAssociation AWS API Documentation # class Ipv6CidrAssociation < Struct.new( :ipv_6_cidr, :associated_resource) SENSITIVE = [] include Aws::Structure end # Describes an IPv6 CIDR block. # # @!attribute [rw] ipv_6_cidr_block # The IPv6 CIDR block. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Ipv6CidrBlock AWS API Documentation # class Ipv6CidrBlock < Struct.new( :ipv_6_cidr_block) SENSITIVE = [] include Aws::Structure end # Describes an IPv6 address pool. # # @!attribute [rw] pool_id # The ID of the address pool. # @return [String] # # @!attribute [rw] description # The description for the address pool. # @return [String] # # @!attribute [rw] pool_cidr_blocks # The CIDR blocks for the address pool. # @return [Array] # # @!attribute [rw] tags # Any tags for the address pool. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Ipv6Pool AWS API Documentation # class Ipv6Pool < Struct.new( :pool_id, :description, :pool_cidr_blocks, :tags) SENSITIVE = [] include Aws::Structure end # Describes the IPv6 prefix. # # @!attribute [rw] ipv_6_prefix # The IPv6 prefix. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Ipv6PrefixSpecification AWS API Documentation # class Ipv6PrefixSpecification < Struct.new( :ipv_6_prefix) SENSITIVE = [] include Aws::Structure end # Describes the IPv4 prefix option for a network interface. # # @!attribute [rw] ipv_6_prefix # The IPv6 prefix. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Ipv6PrefixSpecificationRequest AWS API Documentation # class Ipv6PrefixSpecificationRequest < Struct.new( :ipv_6_prefix) SENSITIVE = [] include Aws::Structure end # Information about the IPv6 delegated prefixes assigned to a network # interface. # # @!attribute [rw] ipv_6_prefix # The IPv6 delegated prefixes assigned to the network interface. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Ipv6PrefixSpecificationResponse AWS API Documentation # class Ipv6PrefixSpecificationResponse < Struct.new( :ipv_6_prefix) SENSITIVE = [] include Aws::Structure end # Describes an IPv6 address range. # # @!attribute [rw] cidr_ipv_6 # 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. # @return [String] # # @!attribute [rw] description # 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 .\_-:/()#,@\[\]+=&;\\\{\\}!$* # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Ipv6Range AWS API Documentation # class Ipv6Range < Struct.new( :cidr_ipv_6, :description) SENSITIVE = [] include Aws::Structure end # Describes a key pair. # # @!attribute [rw] key_fingerprint # * 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. # @return [String] # # @!attribute [rw] key_material # An unencrypted PEM encoded RSA or ED25519 private key. # @return [String] # # @!attribute [rw] key_name # The name of the key pair. # @return [String] # # @!attribute [rw] key_pair_id # The ID of the key pair. # @return [String] # # @!attribute [rw] tags # Any tags applied to the key pair. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/KeyPair AWS API Documentation # class KeyPair < Struct.new( :key_fingerprint, :key_material, :key_name, :key_pair_id, :tags) SENSITIVE = [:key_material] include Aws::Structure end # Describes a key pair. # # @!attribute [rw] key_pair_id # The ID of the key pair. # @return [String] # # @!attribute [rw] key_fingerprint # 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][1]. # # 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][1]. # # # # [1]: http://www.openssh.com/txt/release-6.8 # @return [String] # # @!attribute [rw] key_name # The name of the key pair. # @return [String] # # @!attribute [rw] key_type # The type of key pair. # @return [String] # # @!attribute [rw] tags # Any tags applied to the key pair. # @return [Array] # # @!attribute [rw] public_key # The public key material. # @return [String] # # @!attribute [rw] create_time # 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][1], 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][1], in # the UTC time zone. # # # # [1]: https://www.iso.org/iso-8601-date-and-time-format.html # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/KeyPairInfo AWS API Documentation # class KeyPairInfo < Struct.new( :key_pair_id, :key_fingerprint, :key_name, :key_type, :tags, :public_key, :create_time) SENSITIVE = [] include Aws::Structure end # The last error that occurred for a VPC endpoint. # # @!attribute [rw] message # The error message for the VPC endpoint error. # @return [String] # # @!attribute [rw] code # The error code for the VPC endpoint error. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LastError AWS API Documentation # class LastError < Struct.new( :message, :code) SENSITIVE = [] include Aws::Structure end # Describes a launch permission. # # @!attribute [rw] group # The name of the group. # @return [String] # # @!attribute [rw] user_id # The Amazon Web Services account ID. # # Constraints: Up to 10 000 account IDs can be specified in a single # request. # @return [String] # # @!attribute [rw] organization_arn # The Amazon Resource Name (ARN) of an organization. # @return [String] # # @!attribute [rw] organizational_unit_arn # The Amazon Resource Name (ARN) of an organizational unit (OU). # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchPermission AWS API Documentation # class LaunchPermission < Struct.new( :group, :user_id, :organization_arn, :organizational_unit_arn) SENSITIVE = [] include Aws::Structure end # Describes a launch permission modification. # # @!attribute [rw] add # The Amazon Web Services account ID, organization ARN, or OU ARN to # add to the list of launch permissions for the AMI. # @return [Array] # # @!attribute [rw] remove # The Amazon Web Services account ID, organization ARN, or OU ARN to # remove from the list of launch permissions for the AMI. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchPermissionModifications AWS API Documentation # class LaunchPermissionModifications < Struct.new( :add, :remove) SENSITIVE = [] include Aws::Structure end # Describes the launch specification for an instance. # # @!attribute [rw] user_data # The base64-encoded user data that instances use when starting up. # User data is limited to 16 KB. # @return [String] # # @!attribute [rw] security_groups # The IDs of the security groups. # @return [Array] # # @!attribute [rw] addressing_type # Deprecated. # @return [String] # # @!attribute [rw] block_device_mappings # The block device mapping entries. # @return [Array] # # @!attribute [rw] ebs_optimized # 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` # @return [Boolean] # # @!attribute [rw] iam_instance_profile # The IAM instance profile. # @return [Types::IamInstanceProfileSpecification] # # @!attribute [rw] image_id # The ID of the AMI. # @return [String] # # @!attribute [rw] instance_type # The instance type. Only one instance type can be specified. # @return [String] # # @!attribute [rw] kernel_id # The ID of the kernel. # @return [String] # # @!attribute [rw] key_name # The name of the key pair. # @return [String] # # @!attribute [rw] network_interfaces # The network interfaces. If you specify a network interface, you must # specify subnet IDs and security group IDs using the network # interface. # @return [Array] # # @!attribute [rw] placement # The placement information for the instance. # @return [Types::SpotPlacement] # # @!attribute [rw] ramdisk_id # The ID of the RAM disk. # @return [String] # # @!attribute [rw] subnet_id # The ID of the subnet in which to launch the instance. # @return [String] # # @!attribute [rw] monitoring # Describes the monitoring of an instance. # @return [Types::RunInstancesMonitoringEnabled] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchSpecification AWS API Documentation # class LaunchSpecification < Struct.new( :user_data, :security_groups, :addressing_type, :block_device_mappings, :ebs_optimized, :iam_instance_profile, :image_id, :instance_type, :kernel_id, :key_name, :network_interfaces, :placement, :ramdisk_id, :subnet_id, :monitoring) SENSITIVE = [:user_data] include Aws::Structure end # Describes a launch template. # # @!attribute [rw] launch_template_id # The ID of the launch template. # @return [String] # # @!attribute [rw] launch_template_name # The name of the launch template. # @return [String] # # @!attribute [rw] create_time # The time launch template was created. # @return [Time] # # @!attribute [rw] created_by # The principal that created the launch template. # @return [String] # # @!attribute [rw] default_version_number # The version number of the default version of the launch template. # @return [Integer] # # @!attribute [rw] latest_version_number # The version number of the latest version of the launch template. # @return [Integer] # # @!attribute [rw] tags # The tags for the launch template. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplate AWS API Documentation # class LaunchTemplate < Struct.new( :launch_template_id, :launch_template_name, :create_time, :created_by, :default_version_number, :latest_version_number, :tags) SENSITIVE = [] include Aws::Structure end # Describes a launch template and overrides. # # @!attribute [rw] launch_template_specification # The launch template. # @return [Types::FleetLaunchTemplateSpecification] # # @!attribute [rw] overrides # Any parameters that you specify override the same parameters in the # launch template. # @return [Types::FleetLaunchTemplateOverrides] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateAndOverridesResponse AWS API Documentation # class LaunchTemplateAndOverridesResponse < Struct.new( :launch_template_specification, :overrides) SENSITIVE = [] include Aws::Structure end # Describes a block device mapping. # # @!attribute [rw] device_name # The device name. # @return [String] # # @!attribute [rw] virtual_name # The virtual device name (ephemeralN). # @return [String] # # @!attribute [rw] ebs # Information about the block device for an EBS volume. # @return [Types::LaunchTemplateEbsBlockDevice] # # @!attribute [rw] no_device # To omit the device from the block device mapping, specify an empty # string. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateBlockDeviceMapping AWS API Documentation # class LaunchTemplateBlockDeviceMapping < Struct.new( :device_name, :virtual_name, :ebs, :no_device) SENSITIVE = [] include Aws::Structure end # Describes a block device mapping. # # @!attribute [rw] device_name # The device name (for example, /dev/sdh or xvdh). # @return [String] # # @!attribute [rw] virtual_name # 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. # @return [String] # # @!attribute [rw] ebs # Parameters used to automatically set up EBS volumes when the # instance is launched. # @return [Types::LaunchTemplateEbsBlockDeviceRequest] # # @!attribute [rw] no_device # To omit the device from the block device mapping, specify an empty # string. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateBlockDeviceMappingRequest AWS API Documentation # class LaunchTemplateBlockDeviceMappingRequest < Struct.new( :device_name, :virtual_name, :ebs, :no_device) SENSITIVE = [] include Aws::Structure end # 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. # # @!attribute [rw] capacity_reservation_preference # 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. # @return [String] # # @!attribute [rw] capacity_reservation_target # Information about the target Capacity Reservation or Capacity # Reservation group. # @return [Types::CapacityReservationTarget] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateCapacityReservationSpecificationRequest AWS API Documentation # class LaunchTemplateCapacityReservationSpecificationRequest < Struct.new( :capacity_reservation_preference, :capacity_reservation_target) SENSITIVE = [] include Aws::Structure end # Information about the Capacity Reservation targeting option. # # @!attribute [rw] capacity_reservation_preference # 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. # @return [String] # # @!attribute [rw] capacity_reservation_target # Information about the target Capacity Reservation or Capacity # Reservation group. # @return [Types::CapacityReservationTargetResponse] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateCapacityReservationSpecificationResponse AWS API Documentation # class LaunchTemplateCapacityReservationSpecificationResponse < Struct.new( :capacity_reservation_preference, :capacity_reservation_target) SENSITIVE = [] include Aws::Structure end # Describes a launch template and overrides. # # @!attribute [rw] launch_template_specification # 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. # @return [Types::FleetLaunchTemplateSpecification] # # @!attribute [rw] overrides # Any parameters that you specify override the same parameters in the # launch template. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateConfig AWS API Documentation # class LaunchTemplateConfig < Struct.new( :launch_template_specification, :overrides) SENSITIVE = [] include Aws::Structure end # The CPU options for the instance. # # @!attribute [rw] core_count # The number of CPU cores for the instance. # @return [Integer] # # @!attribute [rw] threads_per_core # The number of threads per CPU core. # @return [Integer] # # @!attribute [rw] amd_sev_snp # Indicates whether the instance is enabled for AMD SEV-SNP. For more # information, see [AMD SEV-SNP][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/sev-snp.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateCpuOptions AWS API Documentation # class LaunchTemplateCpuOptions < Struct.new( :core_count, :threads_per_core, :amd_sev_snp) SENSITIVE = [] include Aws::Structure end # The CPU options for the instance. Both the core count and threads per # core must be specified in the request. # # @!attribute [rw] core_count # The number of CPU cores for the instance. # @return [Integer] # # @!attribute [rw] threads_per_core # 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`. # @return [Integer] # # @!attribute [rw] amd_sev_snp # 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][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/sev-snp.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateCpuOptionsRequest AWS API Documentation # class LaunchTemplateCpuOptionsRequest < Struct.new( :core_count, :threads_per_core, :amd_sev_snp) SENSITIVE = [] include Aws::Structure end # Describes a block device for an EBS volume. # # @!attribute [rw] encrypted # Indicates whether the EBS volume is encrypted. # @return [Boolean] # # @!attribute [rw] delete_on_termination # Indicates whether the EBS volume is deleted on instance termination. # @return [Boolean] # # @!attribute [rw] iops # The number of I/O operations per second (IOPS) that the volume # supports. # @return [Integer] # # @!attribute [rw] kms_key_id # The ARN of the Key Management Service (KMS) CMK used for encryption. # @return [String] # # @!attribute [rw] snapshot_id # The ID of the snapshot. # @return [String] # # @!attribute [rw] volume_size # The size of the volume, in GiB. # @return [Integer] # # @!attribute [rw] volume_type # The volume type. # @return [String] # # @!attribute [rw] throughput # The throughput that the volume supports, in MiB/s. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateEbsBlockDevice AWS API Documentation # class LaunchTemplateEbsBlockDevice < Struct.new( :encrypted, :delete_on_termination, :iops, :kms_key_id, :snapshot_id, :volume_size, :volume_type, :throughput) SENSITIVE = [] include Aws::Structure end # The parameters for a block device for an EBS volume. # # @!attribute [rw] encrypted # 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. # @return [Boolean] # # @!attribute [rw] delete_on_termination # Indicates whether the EBS volume is deleted on instance termination. # @return [Boolean] # # @!attribute [rw] iops # 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][1]. On other instances, you can achieve # performance up to 32,000 IOPS. # # This parameter is supported for `io1`, `io2`, and `gp3` volumes # only. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#ec2-nitro-instances # @return [Integer] # # @!attribute [rw] kms_key_id # The ARN of the symmetric Key Management Service (KMS) CMK used for # encryption. # @return [String] # # @!attribute [rw] snapshot_id # The ID of the snapshot. # @return [String] # # @!attribute [rw] volume_size # 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 # @return [Integer] # # @!attribute [rw] volume_type # The volume type. For more information, see [Amazon EBS volume # types][1] in the *Amazon EBS User Guide*. # # # # [1]: https://docs.aws.amazon.com/ebs/latest/userguide/ebs-volume-types.html # @return [String] # # @!attribute [rw] throughput # 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. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateEbsBlockDeviceRequest AWS API Documentation # class LaunchTemplateEbsBlockDeviceRequest < Struct.new( :encrypted, :delete_on_termination, :iops, :kms_key_id, :snapshot_id, :volume_size, :volume_type, :throughput) SENSITIVE = [] include Aws::Structure end # Describes an elastic inference accelerator. # # @!attribute [rw] type # The type of elastic inference accelerator. The possible values are # eia1.medium, eia1.large, and eia1.xlarge. # @return [String] # # @!attribute [rw] count # The number of elastic inference accelerators to attach to the # instance. # # Default: 1 # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateElasticInferenceAccelerator AWS API Documentation # class LaunchTemplateElasticInferenceAccelerator < Struct.new( :type, :count) SENSITIVE = [] include Aws::Structure end # Describes an elastic inference accelerator. # # @!attribute [rw] type # The type of elastic inference accelerator. The possible values are # eia1.medium, eia1.large, and eia1.xlarge. # @return [String] # # @!attribute [rw] count # The number of elastic inference accelerators to attach to the # instance. # # Default: 1 # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateElasticInferenceAcceleratorResponse AWS API Documentation # class LaunchTemplateElasticInferenceAcceleratorResponse < Struct.new( :type, :count) SENSITIVE = [] include Aws::Structure end # 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. # # @!attribute [rw] ena_srd_enabled # Indicates whether ENA Express is enabled for the network interface. # @return [Boolean] # # @!attribute [rw] ena_srd_udp_specification # Configures ENA Express for UDP network traffic. # @return [Types::LaunchTemplateEnaSrdUdpSpecification] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateEnaSrdSpecification AWS API Documentation # class LaunchTemplateEnaSrdSpecification < Struct.new( :ena_srd_enabled, :ena_srd_udp_specification) SENSITIVE = [] include Aws::Structure end # 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. # # @!attribute [rw] ena_srd_udp_enabled # Indicates whether UDP traffic to and from the instance uses ENA # Express. To specify this setting, you must first enable ENA Express. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateEnaSrdUdpSpecification AWS API Documentation # class LaunchTemplateEnaSrdUdpSpecification < Struct.new( :ena_srd_udp_enabled) SENSITIVE = [] include Aws::Structure end # Indicates whether the instance is enabled for Amazon Web Services # Nitro Enclaves. # # @!attribute [rw] enabled # 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. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateEnclaveOptions AWS API Documentation # class LaunchTemplateEnclaveOptions < Struct.new( :enabled) SENSITIVE = [] include Aws::Structure end # Indicates whether the instance is enabled for Amazon Web Services # Nitro Enclaves. For more information, see [What is Amazon Web Services # Nitro Enclaves?][1] in the *Amazon Web Services Nitro Enclaves User # Guide*. # # # # [1]: https://docs.aws.amazon.com/enclaves/latest/user/nitro-enclave.html # # @!attribute [rw] enabled # To enable the instance for Amazon Web Services Nitro Enclaves, set # this parameter to `true`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateEnclaveOptionsRequest AWS API Documentation # class LaunchTemplateEnclaveOptionsRequest < Struct.new( :enabled) SENSITIVE = [] include Aws::Structure end # Indicates whether an instance is configured for hibernation. # # @!attribute [rw] configured # If this parameter is set to `true`, the instance is enabled for # hibernation; otherwise, it is not enabled for hibernation. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateHibernationOptions AWS API Documentation # class LaunchTemplateHibernationOptions < Struct.new( :configured) SENSITIVE = [] include Aws::Structure end # Indicates whether the instance is configured for hibernation. This # parameter is valid only if the instance meets the [hibernation # prerequisites][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/hibernating-prerequisites.html # # @!attribute [rw] configured # If you set this parameter to `true`, the instance is enabled for # hibernation. # # Default: `false` # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateHibernationOptionsRequest AWS API Documentation # class LaunchTemplateHibernationOptionsRequest < Struct.new( :configured) SENSITIVE = [] include Aws::Structure end # Describes an IAM instance profile. # # @!attribute [rw] arn # The Amazon Resource Name (ARN) of the instance profile. # @return [String] # # @!attribute [rw] name # The name of the instance profile. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateIamInstanceProfileSpecification AWS API Documentation # class LaunchTemplateIamInstanceProfileSpecification < Struct.new( :arn, :name) SENSITIVE = [] include Aws::Structure end # An IAM instance profile. # # @!attribute [rw] arn # The Amazon Resource Name (ARN) of the instance profile. # @return [String] # # @!attribute [rw] name # The name of the instance profile. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateIamInstanceProfileSpecificationRequest AWS API Documentation # class LaunchTemplateIamInstanceProfileSpecificationRequest < Struct.new( :arn, :name) SENSITIVE = [] include Aws::Structure end # The maintenance options of your instance. # # @!attribute [rw] auto_recovery # Disables the automatic recovery behavior of your instance or sets it # to default. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateInstanceMaintenanceOptions AWS API Documentation # class LaunchTemplateInstanceMaintenanceOptions < Struct.new( :auto_recovery) SENSITIVE = [] include Aws::Structure end # The maintenance options of your instance. # # @!attribute [rw] auto_recovery # Disables the automatic recovery behavior of your instance or sets it # to default. For more information, see [Simplified automatic # recovery][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-recover.html#instance-configuration-recovery # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateInstanceMaintenanceOptionsRequest AWS API Documentation # class LaunchTemplateInstanceMaintenanceOptionsRequest < Struct.new( :auto_recovery) SENSITIVE = [] include Aws::Structure end # The market (purchasing) option for the instances. # # @!attribute [rw] market_type # The market type. # @return [String] # # @!attribute [rw] spot_options # The options for Spot Instances. # @return [Types::LaunchTemplateSpotMarketOptions] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateInstanceMarketOptions AWS API Documentation # class LaunchTemplateInstanceMarketOptions < Struct.new( :market_type, :spot_options) SENSITIVE = [] include Aws::Structure end # The market (purchasing) option for the instances. # # @!attribute [rw] market_type # The market type. # @return [String] # # @!attribute [rw] spot_options # The options for Spot Instances. # @return [Types::LaunchTemplateSpotMarketOptionsRequest] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateInstanceMarketOptionsRequest AWS API Documentation # class LaunchTemplateInstanceMarketOptionsRequest < Struct.new( :market_type, :spot_options) SENSITIVE = [] include Aws::Structure end # The metadata options for the instance. For more information, see # [Instance metadata and user data][1] in the *Amazon Elastic Compute # Cloud User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html # # @!attribute [rw] state # 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. # @return [String] # # @!attribute [rw] http_tokens # 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. # @return [String] # # @!attribute [rw] http_put_response_hop_limit # 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 # @return [Integer] # # @!attribute [rw] http_endpoint # 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. # # # @return [String] # # @!attribute [rw] http_protocol_ipv_6 # Enables or disables the IPv6 endpoint for the instance metadata # service. # # Default: `disabled` # @return [String] # # @!attribute [rw] instance_metadata_tags # 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][1]. # # Default: `disabled` # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#work-with-tags-in-IMDS # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateInstanceMetadataOptions AWS API Documentation # class LaunchTemplateInstanceMetadataOptions < Struct.new( :state, :http_tokens, :http_put_response_hop_limit, :http_endpoint, :http_protocol_ipv_6, :instance_metadata_tags) SENSITIVE = [] include Aws::Structure end # The metadata options for the instance. For more information, see # [Instance metadata and user data][1] in the *Amazon Elastic Compute # Cloud User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html # # @!attribute [rw] http_tokens # 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`. # @return [String] # # @!attribute [rw] http_put_response_hop_limit # 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 # @return [Integer] # # @!attribute [rw] http_endpoint # 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. # # # @return [String] # # @!attribute [rw] http_protocol_ipv_6 # Enables or disables the IPv6 endpoint for the instance metadata # service. # # Default: `disabled` # @return [String] # # @!attribute [rw] instance_metadata_tags # 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][1]. # # Default: `disabled` # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#work-with-tags-in-IMDS # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateInstanceMetadataOptionsRequest AWS API Documentation # class LaunchTemplateInstanceMetadataOptionsRequest < Struct.new( :http_tokens, :http_put_response_hop_limit, :http_endpoint, :http_protocol_ipv_6, :instance_metadata_tags) SENSITIVE = [] include Aws::Structure end # Describes a network interface. # # @!attribute [rw] associate_carrier_ip_address # 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][1] in the *Wavelength Developer Guide*. # # # # [1]: https://docs.aws.amazon.com/wavelength/latest/developerguide/how-wavelengths-work.html#provider-owned-ip # @return [Boolean] # # @!attribute [rw] associate_public_ip_address # 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][1]. # # # # [1]: http://aws.amazon.com/vpc/pricing/ # @return [Boolean] # # @!attribute [rw] delete_on_termination # Indicates whether the network interface is deleted when the instance # is terminated. # @return [Boolean] # # @!attribute [rw] description # A description for the network interface. # @return [String] # # @!attribute [rw] device_index # The device index for the network interface attachment. # @return [Integer] # # @!attribute [rw] groups # The IDs of one or more security groups. # @return [Array] # # @!attribute [rw] interface_type # The type of network interface. # @return [String] # # @!attribute [rw] ipv_6_address_count # The number of IPv6 addresses for the network interface. # @return [Integer] # # @!attribute [rw] ipv_6_addresses # The IPv6 addresses for the network interface. # @return [Array] # # @!attribute [rw] network_interface_id # The ID of the network interface. # @return [String] # # @!attribute [rw] private_ip_address # The primary private IPv4 address of the network interface. # @return [String] # # @!attribute [rw] private_ip_addresses # One or more private IPv4 addresses. # @return [Array] # # @!attribute [rw] secondary_private_ip_address_count # The number of secondary private IPv4 addresses for the network # interface. # @return [Integer] # # @!attribute [rw] subnet_id # The ID of the subnet for the network interface. # @return [String] # # @!attribute [rw] network_card_index # The index of the network card. # @return [Integer] # # @!attribute [rw] ipv_4_prefixes # One or more IPv4 prefixes assigned to the network interface. # @return [Array] # # @!attribute [rw] ipv_4_prefix_count # The number of IPv4 prefixes that Amazon Web Services automatically # assigned to the network interface. # @return [Integer] # # @!attribute [rw] ipv_6_prefixes # One or more IPv6 prefixes assigned to the network interface. # @return [Array] # # @!attribute [rw] ipv_6_prefix_count # The number of IPv6 prefixes that Amazon Web Services automatically # assigned to the network interface. # @return [Integer] # # @!attribute [rw] primary_ipv_6 # 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][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html # @return [Boolean] # # @!attribute [rw] ena_srd_specification # Contains the ENA Express settings for instances launched from your # launch template. # @return [Types::LaunchTemplateEnaSrdSpecification] # # @!attribute [rw] connection_tracking_specification # 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][1] in the *Amazon Elastic Compute Cloud User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-connection-tracking.html#connection-tracking-timeouts # @return [Types::ConnectionTrackingSpecification] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateInstanceNetworkInterfaceSpecification AWS API Documentation # class LaunchTemplateInstanceNetworkInterfaceSpecification < Struct.new( :associate_carrier_ip_address, :associate_public_ip_address, :delete_on_termination, :description, :device_index, :groups, :interface_type, :ipv_6_address_count, :ipv_6_addresses, :network_interface_id, :private_ip_address, :private_ip_addresses, :secondary_private_ip_address_count, :subnet_id, :network_card_index, :ipv_4_prefixes, :ipv_4_prefix_count, :ipv_6_prefixes, :ipv_6_prefix_count, :primary_ipv_6, :ena_srd_specification, :connection_tracking_specification) SENSITIVE = [] include Aws::Structure end # The parameters for a network interface. # # @!attribute [rw] associate_carrier_ip_address # 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][1] in the *Wavelength Developer Guide*. # # # # [1]: https://docs.aws.amazon.com/wavelength/latest/developerguide/how-wavelengths-work.html#provider-owned-ip # @return [Boolean] # # @!attribute [rw] associate_public_ip_address # 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][1]. # # # # [1]: http://aws.amazon.com/vpc/pricing/ # @return [Boolean] # # @!attribute [rw] delete_on_termination # Indicates whether the network interface is deleted when the instance # is terminated. # @return [Boolean] # # @!attribute [rw] description # A description for the network interface. # @return [String] # # @!attribute [rw] device_index # The device index for the network interface attachment. # @return [Integer] # # @!attribute [rw] groups # The IDs of one or more security groups. # @return [Array] # # @!attribute [rw] interface_type # The type of network interface. To create an Elastic Fabric Adapter # (EFA), specify `efa`. For more information, see [Elastic Fabric # Adapter][1] in the *Amazon Elastic Compute Cloud User Guide*. # # If you are not creating an EFA, specify `interface` or omit this # parameter. # # Valid values: `interface` \| `efa` # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/efa.html # @return [String] # # @!attribute [rw] ipv_6_address_count # 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. # @return [Integer] # # @!attribute [rw] ipv_6_addresses # 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. # @return [Array] # # @!attribute [rw] network_interface_id # The ID of the network interface. # @return [String] # # @!attribute [rw] private_ip_address # The primary private IPv4 address of the network interface. # @return [String] # # @!attribute [rw] private_ip_addresses # One or more private IPv4 addresses. # @return [Array] # # @!attribute [rw] secondary_private_ip_address_count # The number of secondary private IPv4 addresses to assign to a # network interface. # @return [Integer] # # @!attribute [rw] subnet_id # The ID of the subnet for the network interface. # @return [String] # # @!attribute [rw] network_card_index # 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. # @return [Integer] # # @!attribute [rw] ipv_4_prefixes # One or more IPv4 prefixes to be assigned to the network interface. # You cannot use this option if you use the `Ipv4PrefixCount` option. # @return [Array] # # @!attribute [rw] ipv_4_prefix_count # The number of IPv4 prefixes to be automatically assigned to the # network interface. You cannot use this option if you use the # `Ipv4Prefix` option. # @return [Integer] # # @!attribute [rw] ipv_6_prefixes # One or more IPv6 prefixes to be assigned to the network interface. # You cannot use this option if you use the `Ipv6PrefixCount` option. # @return [Array] # # @!attribute [rw] ipv_6_prefix_count # The number of IPv6 prefixes to be automatically assigned to the # network interface. You cannot use this option if you use the # `Ipv6Prefix` option. # @return [Integer] # # @!attribute [rw] primary_ipv_6 # 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][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html # @return [Boolean] # # @!attribute [rw] ena_srd_specification # Configure ENA Express settings for your launch template. # @return [Types::EnaSrdSpecificationRequest] # # @!attribute [rw] connection_tracking_specification # 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][1] in the *Amazon Elastic Compute Cloud User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-connection-tracking.html#connection-tracking-timeouts # @return [Types::ConnectionTrackingSpecificationRequest] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateInstanceNetworkInterfaceSpecificationRequest AWS API Documentation # class LaunchTemplateInstanceNetworkInterfaceSpecificationRequest < Struct.new( :associate_carrier_ip_address, :associate_public_ip_address, :delete_on_termination, :description, :device_index, :groups, :interface_type, :ipv_6_address_count, :ipv_6_addresses, :network_interface_id, :private_ip_address, :private_ip_addresses, :secondary_private_ip_address_count, :subnet_id, :network_card_index, :ipv_4_prefixes, :ipv_4_prefix_count, :ipv_6_prefixes, :ipv_6_prefix_count, :primary_ipv_6, :ena_srd_specification, :connection_tracking_specification) SENSITIVE = [] include Aws::Structure end # Describes a license configuration. # # @!attribute [rw] license_configuration_arn # The Amazon Resource Name (ARN) of the license configuration. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateLicenseConfiguration AWS API Documentation # class LaunchTemplateLicenseConfiguration < Struct.new( :license_configuration_arn) SENSITIVE = [] include Aws::Structure end # Describes a license configuration. # # @!attribute [rw] license_configuration_arn # The Amazon Resource Name (ARN) of the license configuration. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateLicenseConfigurationRequest AWS API Documentation # class LaunchTemplateLicenseConfigurationRequest < Struct.new( :license_configuration_arn) SENSITIVE = [] include Aws::Structure end # Describes overrides for a launch template. # # @!attribute [rw] instance_type # The instance type. # @return [String] # # @!attribute [rw] spot_price # 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. # @return [String] # # @!attribute [rw] subnet_id # The ID of the subnet in which to launch the instances. # @return [String] # # @!attribute [rw] availability_zone # The Availability Zone in which to launch the instances. # @return [String] # # @!attribute [rw] weighted_capacity # The number of units provided by the specified instance type. # # 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. # # # @return [Float] # # @!attribute [rw] priority # 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. # @return [Float] # # @!attribute [rw] instance_requirements # 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`. # # # @return [Types::InstanceRequirements] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateOverrides AWS API Documentation # class LaunchTemplateOverrides < Struct.new( :instance_type, :spot_price, :subnet_id, :availability_zone, :weighted_capacity, :priority, :instance_requirements) SENSITIVE = [] include Aws::Structure end # Describes the placement of an instance. # # @!attribute [rw] availability_zone # The Availability Zone of the instance. # @return [String] # # @!attribute [rw] affinity # The affinity setting for the instance on the Dedicated Host. # @return [String] # # @!attribute [rw] group_name # The name of the placement group for the instance. # @return [String] # # @!attribute [rw] host_id # The ID of the Dedicated Host for the instance. # @return [String] # # @!attribute [rw] tenancy # The tenancy of the instance. An instance with a tenancy of # `dedicated` runs on single-tenant hardware. # @return [String] # # @!attribute [rw] spread_domain # Reserved for future use. # @return [String] # # @!attribute [rw] host_resource_group_arn # The ARN of the host resource group in which to launch the instances. # @return [String] # # @!attribute [rw] partition_number # The number of the partition the instance should launch in. Valid # only if the placement group strategy is set to `partition`. # @return [Integer] # # @!attribute [rw] group_id # The Group ID of the placement group. You must specify the Placement # Group **Group ID** to launch an instance in a shared placement # group. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplatePlacement AWS API Documentation # class LaunchTemplatePlacement < Struct.new( :availability_zone, :affinity, :group_name, :host_id, :tenancy, :spread_domain, :host_resource_group_arn, :partition_number, :group_id) SENSITIVE = [] include Aws::Structure end # Describes the placement of an instance. # # @!attribute [rw] availability_zone # The Availability Zone for the instance. # @return [String] # # @!attribute [rw] affinity # The affinity setting for an instance on a Dedicated Host. # @return [String] # # @!attribute [rw] group_name # The name of the placement group for the instance. # @return [String] # # @!attribute [rw] host_id # The ID of the Dedicated Host for the instance. # @return [String] # # @!attribute [rw] tenancy # The tenancy of the instance. An instance with a tenancy of dedicated # runs on single-tenant hardware. # @return [String] # # @!attribute [rw] spread_domain # Reserved for future use. # @return [String] # # @!attribute [rw] host_resource_group_arn # 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`. # @return [String] # # @!attribute [rw] partition_number # The number of the partition the instance should launch in. Valid # only if the placement group strategy is set to `partition`. # @return [Integer] # # @!attribute [rw] group_id # The Group Id of a placement group. You must specify the Placement # Group **Group Id** to launch an instance in a shared placement # group. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplatePlacementRequest AWS API Documentation # class LaunchTemplatePlacementRequest < Struct.new( :availability_zone, :affinity, :group_name, :host_id, :tenancy, :spread_domain, :host_resource_group_arn, :partition_number, :group_id) SENSITIVE = [] include Aws::Structure end # Describes the options for instance hostnames. # # @!attribute [rw] hostname_type # The type of hostname to assign to an instance. # @return [String] # # @!attribute [rw] enable_resource_name_dns_a_record # Indicates whether to respond to DNS queries for instance hostnames # with DNS A records. # @return [Boolean] # # @!attribute [rw] enable_resource_name_dns_aaaa_record # Indicates whether to respond to DNS queries for instance hostnames # with DNS AAAA records. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplatePrivateDnsNameOptions AWS API Documentation # class LaunchTemplatePrivateDnsNameOptions < Struct.new( :hostname_type, :enable_resource_name_dns_a_record, :enable_resource_name_dns_aaaa_record) SENSITIVE = [] include Aws::Structure end # Describes the options for instance hostnames. # # @!attribute [rw] hostname_type # 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. # @return [String] # # @!attribute [rw] enable_resource_name_dns_a_record # Indicates whether to respond to DNS queries for instance hostnames # with DNS A records. # @return [Boolean] # # @!attribute [rw] enable_resource_name_dns_aaaa_record # Indicates whether to respond to DNS queries for instance hostnames # with DNS AAAA records. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplatePrivateDnsNameOptionsRequest AWS API Documentation # class LaunchTemplatePrivateDnsNameOptionsRequest < Struct.new( :hostname_type, :enable_resource_name_dns_a_record, :enable_resource_name_dns_aaaa_record) SENSITIVE = [] include Aws::Structure end # The launch template to use. You must specify either the launch # template ID or launch template name in the request, but not both. # # @!attribute [rw] launch_template_id # The ID of the launch template. # # You must specify the `LaunchTemplateId` or the `LaunchTemplateName`, # but not both. # @return [String] # # @!attribute [rw] launch_template_name # The name of the launch template. # # You must specify the `LaunchTemplateName` or the `LaunchTemplateId`, # but not both. # @return [String] # # @!attribute [rw] version # The launch template version number, `$Latest`, or `$Default`. # # 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. # # Default: The default version of the launch template. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateSpecification AWS API Documentation # class LaunchTemplateSpecification < Struct.new( :launch_template_id, :launch_template_name, :version) SENSITIVE = [] include Aws::Structure end # The options for Spot Instances. # # @!attribute [rw] max_price # 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. # @return [String] # # @!attribute [rw] spot_instance_type # The Spot Instance request type. # @return [String] # # @!attribute [rw] block_duration_minutes # 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). # @return [Integer] # # @!attribute [rw] valid_until # 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. # @return [Time] # # @!attribute [rw] instance_interruption_behavior # The behavior when a Spot Instance is interrupted. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateSpotMarketOptions AWS API Documentation # class LaunchTemplateSpotMarketOptions < Struct.new( :max_price, :spot_instance_type, :block_duration_minutes, :valid_until, :instance_interruption_behavior) SENSITIVE = [] include Aws::Structure end # The options for Spot Instances. # # @!attribute [rw] max_price # 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. # @return [String] # # @!attribute [rw] spot_instance_type # The Spot Instance request type. # @return [String] # # @!attribute [rw] block_duration_minutes # Deprecated. # @return [Integer] # # @!attribute [rw] valid_until # The end date of the request, in UTC format # (*YYYY-MM-DD*T*HH:MM:SS*Z). 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 # @return [Time] # # @!attribute [rw] instance_interruption_behavior # The behavior when a Spot Instance is interrupted. The default is # `terminate`. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateSpotMarketOptionsRequest AWS API Documentation # class LaunchTemplateSpotMarketOptionsRequest < Struct.new( :max_price, :spot_instance_type, :block_duration_minutes, :valid_until, :instance_interruption_behavior) SENSITIVE = [] include Aws::Structure end # The tags specification for the launch template. # # @!attribute [rw] resource_type # The type of resource to tag. # @return [String] # # @!attribute [rw] tags # The tags for the resource. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateTagSpecification AWS API Documentation # class LaunchTemplateTagSpecification < Struct.new( :resource_type, :tags) SENSITIVE = [] include Aws::Structure end # The tags specification for the resources that are created during # instance launch. # # @!attribute [rw] resource_type # 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][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateTags.html # @return [String] # # @!attribute [rw] tags # The tags to apply to the resource. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateTagSpecificationRequest AWS API Documentation # class LaunchTemplateTagSpecificationRequest < Struct.new( :resource_type, :tags) SENSITIVE = [] include Aws::Structure end # Describes a launch template version. # # @!attribute [rw] launch_template_id # The ID of the launch template. # @return [String] # # @!attribute [rw] launch_template_name # The name of the launch template. # @return [String] # # @!attribute [rw] version_number # The version number. # @return [Integer] # # @!attribute [rw] version_description # The description for the version. # @return [String] # # @!attribute [rw] create_time # The time the version was created. # @return [Time] # # @!attribute [rw] created_by # The principal that created the version. # @return [String] # # @!attribute [rw] default_version # Indicates whether the version is the default version. # @return [Boolean] # # @!attribute [rw] launch_template_data # Information about the launch template. # @return [Types::ResponseLaunchTemplateData] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplateVersion AWS API Documentation # class LaunchTemplateVersion < Struct.new( :launch_template_id, :launch_template_name, :version_number, :version_description, :create_time, :created_by, :default_version, :launch_template_data) SENSITIVE = [] include Aws::Structure end # Describes the monitoring for the instance. # # @!attribute [rw] enabled # Indicates whether detailed monitoring is enabled. Otherwise, basic # monitoring is enabled. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplatesMonitoring AWS API Documentation # class LaunchTemplatesMonitoring < Struct.new( :enabled) SENSITIVE = [] include Aws::Structure end # Describes the monitoring for the instance. # # @!attribute [rw] enabled # Specify `true` to enable detailed monitoring. Otherwise, basic # monitoring is enabled. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LaunchTemplatesMonitoringRequest AWS API Documentation # class LaunchTemplatesMonitoringRequest < Struct.new( :enabled) SENSITIVE = [] include Aws::Structure end # Describes a license configuration. # # @!attribute [rw] license_configuration_arn # The Amazon Resource Name (ARN) of the license configuration. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LicenseConfiguration AWS API Documentation # class LicenseConfiguration < Struct.new( :license_configuration_arn) SENSITIVE = [] include Aws::Structure end # Describes a license configuration. # # @!attribute [rw] license_configuration_arn # The Amazon Resource Name (ARN) of the license configuration. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LicenseConfigurationRequest AWS API Documentation # class LicenseConfigurationRequest < Struct.new( :license_configuration_arn) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] image_ids # The IDs of the AMIs to list. Omit this parameter to list all of the # AMIs that are in the Recycle Bin. You can specify up to 20 IDs in a # single request. # @return [Array] # # @!attribute [rw] next_token # The token returned from a previous paginated request. Pagination # continues from the end of the items returned by the previous # request. # @return [String] # # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. For more information, see [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ListImagesInRecycleBinRequest AWS API Documentation # class ListImagesInRecycleBinRequest < Struct.new( :image_ids, :next_token, :max_results, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] images # Information about the AMIs. # @return [Array] # # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` when there are no more items to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ListImagesInRecycleBinResult AWS API Documentation # class ListImagesInRecycleBinResult < Struct.new( :images, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] max_results # The maximum number of items to return for this request. To get the # next page of items, make another request with the token returned in # the output. For more information, see [Pagination][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Query-Requests.html#api-pagination # @return [Integer] # # @!attribute [rw] next_token # The token returned from a previous paginated request. Pagination # continues from the end of the items returned by the previous # request. # @return [String] # # @!attribute [rw] snapshot_ids # The IDs of the snapshots to list. Omit this parameter to list all of # the snapshots that are in the Recycle Bin. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ListSnapshotsInRecycleBinRequest AWS API Documentation # class ListSnapshotsInRecycleBinRequest < Struct.new( :max_results, :next_token, :snapshot_ids, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] snapshots # Information about the snapshots. # @return [Array] # # @!attribute [rw] next_token # The token to include in another request to get the next page of # items. This value is `null` when there are no more items to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ListSnapshotsInRecycleBinResult AWS API Documentation # class ListSnapshotsInRecycleBinResult < Struct.new( :snapshots, :next_token) SENSITIVE = [] include Aws::Structure end # Describes the Classic Load Balancers and target groups to attach to a # Spot Fleet request. # # @!attribute [rw] classic_load_balancers_config # The Classic Load Balancers. # @return [Types::ClassicLoadBalancersConfig] # # @!attribute [rw] target_groups_config # The target groups. # @return [Types::TargetGroupsConfig] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LoadBalancersConfig AWS API Documentation # class LoadBalancersConfig < Struct.new( :classic_load_balancers_config, :target_groups_config) SENSITIVE = [] include Aws::Structure end # Describes a load permission. # # @!attribute [rw] user_id # The Amazon Web Services account ID. # @return [String] # # @!attribute [rw] group # The name of the group. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LoadPermission AWS API Documentation # class LoadPermission < Struct.new( :user_id, :group) SENSITIVE = [] include Aws::Structure end # Describes modifications to the load permissions of an Amazon FPGA # image (AFI). # # @!attribute [rw] add # The load permissions to add. # @return [Array] # # @!attribute [rw] remove # The load permissions to remove. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LoadPermissionModifications AWS API Documentation # class LoadPermissionModifications < Struct.new( :add, :remove) SENSITIVE = [] include Aws::Structure end # Describes a load permission. # # @!attribute [rw] group # The name of the group. # @return [String] # # @!attribute [rw] user_id # The Amazon Web Services account ID. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LoadPermissionRequest AWS API Documentation # class LoadPermissionRequest < Struct.new( :group, :user_id) SENSITIVE = [] include Aws::Structure end # Describes a local gateway. # # @!attribute [rw] local_gateway_id # The ID of the local gateway. # @return [String] # # @!attribute [rw] outpost_arn # The Amazon Resource Name (ARN) of the Outpost. # @return [String] # # @!attribute [rw] owner_id # The ID of the Amazon Web Services account that owns the local # gateway. # @return [String] # # @!attribute [rw] state # The state of the local gateway. # @return [String] # # @!attribute [rw] tags # The tags assigned to the local gateway. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LocalGateway AWS API Documentation # class LocalGateway < Struct.new( :local_gateway_id, :outpost_arn, :owner_id, :state, :tags) SENSITIVE = [] include Aws::Structure end # Describes a route for a local gateway route table. # # @!attribute [rw] destination_cidr_block # The CIDR block used for destination matches. # @return [String] # # @!attribute [rw] local_gateway_virtual_interface_group_id # The ID of the virtual interface group. # @return [String] # # @!attribute [rw] type # The route type. # @return [String] # # @!attribute [rw] state # The state of the route. # @return [String] # # @!attribute [rw] local_gateway_route_table_id # The ID of the local gateway route table. # @return [String] # # @!attribute [rw] local_gateway_route_table_arn # The Amazon Resource Name (ARN) of the local gateway route table. # @return [String] # # @!attribute [rw] owner_id # The ID of the Amazon Web Services account that owns the local # gateway route. # @return [String] # # @!attribute [rw] subnet_id # The ID of the subnet. # @return [String] # # @!attribute [rw] coip_pool_id # The ID of the customer-owned address pool. # @return [String] # # @!attribute [rw] network_interface_id # The ID of the network interface. # @return [String] # # @!attribute [rw] destination_prefix_list_id # The ID of the prefix list. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LocalGatewayRoute AWS API Documentation # class LocalGatewayRoute < Struct.new( :destination_cidr_block, :local_gateway_virtual_interface_group_id, :type, :state, :local_gateway_route_table_id, :local_gateway_route_table_arn, :owner_id, :subnet_id, :coip_pool_id, :network_interface_id, :destination_prefix_list_id) SENSITIVE = [] include Aws::Structure end # Describes a local gateway route table. # # @!attribute [rw] local_gateway_route_table_id # The ID of the local gateway route table. # @return [String] # # @!attribute [rw] local_gateway_route_table_arn # The Amazon Resource Name (ARN) of the local gateway route table. # @return [String] # # @!attribute [rw] local_gateway_id # The ID of the local gateway. # @return [String] # # @!attribute [rw] outpost_arn # The Amazon Resource Name (ARN) of the Outpost. # @return [String] # # @!attribute [rw] owner_id # The ID of the Amazon Web Services account that owns the local # gateway route table. # @return [String] # # @!attribute [rw] state # The state of the local gateway route table. # @return [String] # # @!attribute [rw] tags # The tags assigned to the local gateway route table. # @return [Array] # # @!attribute [rw] mode # The mode of the local gateway route table. # @return [String] # # @!attribute [rw] state_reason # Information about the state change. # @return [Types::StateReason] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LocalGatewayRouteTable AWS API Documentation # class LocalGatewayRouteTable < Struct.new( :local_gateway_route_table_id, :local_gateway_route_table_arn, :local_gateway_id, :outpost_arn, :owner_id, :state, :tags, :mode, :state_reason) SENSITIVE = [] include Aws::Structure end # Describes an association between a local gateway route table and a # virtual interface group. # # @!attribute [rw] local_gateway_route_table_virtual_interface_group_association_id # The ID of the association. # @return [String] # # @!attribute [rw] local_gateway_virtual_interface_group_id # The ID of the virtual interface group. # @return [String] # # @!attribute [rw] local_gateway_id # The ID of the local gateway. # @return [String] # # @!attribute [rw] local_gateway_route_table_id # The ID of the local gateway route table. # @return [String] # # @!attribute [rw] local_gateway_route_table_arn # The Amazon Resource Name (ARN) of the local gateway route table for # the virtual interface group. # @return [String] # # @!attribute [rw] owner_id # The ID of the Amazon Web Services account that owns the local # gateway virtual interface group association. # @return [String] # # @!attribute [rw] state # The state of the association. # @return [String] # # @!attribute [rw] tags # The tags assigned to the association. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LocalGatewayRouteTableVirtualInterfaceGroupAssociation AWS API Documentation # class LocalGatewayRouteTableVirtualInterfaceGroupAssociation < Struct.new( :local_gateway_route_table_virtual_interface_group_association_id, :local_gateway_virtual_interface_group_id, :local_gateway_id, :local_gateway_route_table_id, :local_gateway_route_table_arn, :owner_id, :state, :tags) SENSITIVE = [] include Aws::Structure end # Describes an association between a local gateway route table and a # VPC. # # @!attribute [rw] local_gateway_route_table_vpc_association_id # The ID of the association. # @return [String] # # @!attribute [rw] local_gateway_route_table_id # The ID of the local gateway route table. # @return [String] # # @!attribute [rw] local_gateway_route_table_arn # The Amazon Resource Name (ARN) of the local gateway route table for # the association. # @return [String] # # @!attribute [rw] local_gateway_id # The ID of the local gateway. # @return [String] # # @!attribute [rw] vpc_id # The ID of the VPC. # @return [String] # # @!attribute [rw] owner_id # The ID of the Amazon Web Services account that owns the local # gateway route table for the association. # @return [String] # # @!attribute [rw] state # The state of the association. # @return [String] # # @!attribute [rw] tags # The tags assigned to the association. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LocalGatewayRouteTableVpcAssociation AWS API Documentation # class LocalGatewayRouteTableVpcAssociation < Struct.new( :local_gateway_route_table_vpc_association_id, :local_gateway_route_table_id, :local_gateway_route_table_arn, :local_gateway_id, :vpc_id, :owner_id, :state, :tags) SENSITIVE = [] include Aws::Structure end # Describes a local gateway virtual interface. # # @!attribute [rw] local_gateway_virtual_interface_id # The ID of the virtual interface. # @return [String] # # @!attribute [rw] local_gateway_id # The ID of the local gateway. # @return [String] # # @!attribute [rw] vlan # The ID of the VLAN. # @return [Integer] # # @!attribute [rw] local_address # The local address. # @return [String] # # @!attribute [rw] peer_address # The peer address. # @return [String] # # @!attribute [rw] local_bgp_asn # The Border Gateway Protocol (BGP) Autonomous System Number (ASN) of # the local gateway. # @return [Integer] # # @!attribute [rw] peer_bgp_asn # The peer BGP ASN. # @return [Integer] # # @!attribute [rw] owner_id # The ID of the Amazon Web Services account that owns the local # gateway virtual interface. # @return [String] # # @!attribute [rw] tags # The tags assigned to the virtual interface. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LocalGatewayVirtualInterface AWS API Documentation # class LocalGatewayVirtualInterface < Struct.new( :local_gateway_virtual_interface_id, :local_gateway_id, :vlan, :local_address, :peer_address, :local_bgp_asn, :peer_bgp_asn, :owner_id, :tags) SENSITIVE = [] include Aws::Structure end # Describes a local gateway virtual interface group. # # @!attribute [rw] local_gateway_virtual_interface_group_id # The ID of the virtual interface group. # @return [String] # # @!attribute [rw] local_gateway_virtual_interface_ids # The IDs of the virtual interfaces. # @return [Array] # # @!attribute [rw] local_gateway_id # The ID of the local gateway. # @return [String] # # @!attribute [rw] owner_id # The ID of the Amazon Web Services account that owns the local # gateway virtual interface group. # @return [String] # # @!attribute [rw] tags # The tags assigned to the virtual interface group. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LocalGatewayVirtualInterfaceGroup AWS API Documentation # class LocalGatewayVirtualInterfaceGroup < Struct.new( :local_gateway_virtual_interface_group_id, :local_gateway_virtual_interface_ids, :local_gateway_id, :owner_id, :tags) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] snapshot_id # The ID of the snapshot to lock. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] lock_mode # The mode in which to lock the snapshot. Specify one of the # following: # # * `governance` - Locks the snapshot in governance mode. Snapshots # locked in governance mode can't be deleted until one of the # following conditions are met: # # * The lock duration expires. # # * The snapshot is unlocked by a user with the appropriate # permissions. # # Users with the appropriate IAM permissions can unlock the # snapshot, increase or decrease the lock duration, and change the # lock mode to `compliance` at any time. # # If you lock a snapshot in `governance` mode, omit # CoolOffPeriod. # # * `compliance` - Locks the snapshot in compliance mode. Snapshots # locked in compliance mode can't be unlocked by any user. They can # be deleted only after the lock duration expires. Users can't # decrease the lock duration or change the lock mode to # `governance`. However, users with appropriate IAM permissions can # increase the lock duration at any time. # # If you lock a snapshot in `compliance` mode, you can optionally # specify **CoolOffPeriod**. # @return [String] # # @!attribute [rw] cool_off_period # The cooling-off period during which you can unlock the snapshot or # modify the lock settings after locking the snapshot in compliance # mode, in hours. After the cooling-off period expires, you can't # unlock or delete the snapshot, decrease the lock duration, or change # the lock mode. You can increase the lock duration after the # cooling-off period expires. # # The cooling-off period is optional when locking a snapshot in # compliance mode. If you are locking the snapshot in governance mode, # omit this parameter. # # To lock the snapshot in compliance mode immediately without a # cooling-off period, omit this parameter. # # If you are extending the lock duration for a snapshot that is locked # in compliance mode after the cooling-off period has expired, omit # this parameter. If you specify a cooling-period in a such a request, # the request fails. # # Allowed values: Min 1, max 72. # @return [Integer] # # @!attribute [rw] lock_duration # The period of time for which to lock the snapshot, in days. The # snapshot lock will automatically expire after this period lapses. # # You must specify either this parameter or **ExpirationDate**, but # not both. # # Allowed values: Min: 1, max 36500 # @return [Integer] # # @!attribute [rw] expiration_date # The date and time at which the snapshot lock is to automatically # expire, in the UTC time zone (`YYYY-MM-DDThh:mm:ss.sssZ`). # # You must specify either this parameter or **LockDuration**, but not # both. # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LockSnapshotRequest AWS API Documentation # class LockSnapshotRequest < Struct.new( :snapshot_id, :dry_run, :lock_mode, :cool_off_period, :lock_duration, :expiration_date) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] snapshot_id # The ID of the snapshot # @return [String] # # @!attribute [rw] lock_state # 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. # @return [String] # # @!attribute [rw] lock_duration # The period of time for which the snapshot is locked, in days. # @return [Integer] # # @!attribute [rw] cool_off_period # The compliance mode cooling-off period, in hours. # @return [Integer] # # @!attribute [rw] cool_off_period_expires_on # The date and time at which the compliance mode cooling-off period # expires, in the UTC time zone (`YYYY-MM-DDThh:mm:ss.sssZ`). # @return [Time] # # @!attribute [rw] lock_created_on # The date and time at which the snapshot was locked, in the UTC time # zone (`YYYY-MM-DDThh:mm:ss.sssZ`). # @return [Time] # # @!attribute [rw] lock_expires_on # The date and time at which the lock will expire, in the UTC time # zone (`YYYY-MM-DDThh:mm:ss.sssZ`). # @return [Time] # # @!attribute [rw] lock_duration_start_time # The date and time at which the lock duration started, in the UTC # time zone (`YYYY-MM-DDThh:mm:ss.sssZ`). # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LockSnapshotResult AWS API Documentation # class LockSnapshotResult < Struct.new( :snapshot_id, :lock_state, :lock_duration, :cool_off_period, :cool_off_period_expires_on, :lock_created_on, :lock_expires_on, :lock_duration_start_time) SENSITIVE = [] include Aws::Structure end # Information about a locked snapshot. # # @!attribute [rw] owner_id # The account ID of the Amazon Web Services account that owns the # snapshot. # @return [String] # # @!attribute [rw] snapshot_id # The ID of the snapshot. # @return [String] # # @!attribute [rw] lock_state # 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. # @return [String] # # @!attribute [rw] lock_duration # The period of time for which the snapshot is locked, in days. # @return [Integer] # # @!attribute [rw] cool_off_period # The compliance mode cooling-off period, in hours. # @return [Integer] # # @!attribute [rw] cool_off_period_expires_on # The date and time at which the compliance mode cooling-off period # expires, in the UTC time zone (`YYYY-MM-DDThh:mm:ss.sssZ`). # @return [Time] # # @!attribute [rw] lock_created_on # The date and time at which the snapshot was locked, in the UTC time # zone (`YYYY-MM-DDThh:mm:ss.sssZ`). # @return [Time] # # @!attribute [rw] lock_duration_start_time # 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. # @return [Time] # # @!attribute [rw] lock_expires_on # The date and time at which the lock will expire, in the UTC time # zone (`YYYY-MM-DDThh:mm:ss.sssZ`). # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/LockedSnapshotsInfo AWS API Documentation # class LockedSnapshotsInfo < Struct.new( :owner_id, :snapshot_id, :lock_state, :lock_duration, :cool_off_period, :cool_off_period_expires_on, :lock_created_on, :lock_duration_start_time, :lock_expires_on) SENSITIVE = [] include Aws::Structure end # Information about the EC2 Mac Dedicated Host. # # @!attribute [rw] host_id # The EC2 Mac Dedicated Host ID. # @return [String] # # @!attribute [rw] mac_os_latest_supported_versions # The latest macOS versions that the EC2 Mac Dedicated Host can launch # without being upgraded. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/MacHost AWS API Documentation # class MacHost < Struct.new( :host_id, :mac_os_latest_supported_versions) SENSITIVE = [] include Aws::Structure end # Details for Site-to-Site VPN tunnel endpoint maintenance events. # # @!attribute [rw] pending_maintenance # Verify existence of a pending maintenance. # @return [String] # # @!attribute [rw] maintenance_auto_applied_after # The timestamp after which Amazon Web Services will automatically # apply maintenance. # @return [Time] # # @!attribute [rw] last_maintenance_applied # Timestamp of last applied maintenance. # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/MaintenanceDetails AWS API Documentation # class MaintenanceDetails < Struct.new( :pending_maintenance, :maintenance_auto_applied_after, :last_maintenance_applied) SENSITIVE = [] include Aws::Structure end # Describes a managed prefix list. # # @!attribute [rw] prefix_list_id # The ID of the prefix list. # @return [String] # # @!attribute [rw] address_family # The IP address version. # @return [String] # # @!attribute [rw] state # The current state of the prefix list. # @return [String] # # @!attribute [rw] state_message # The state message. # @return [String] # # @!attribute [rw] prefix_list_arn # The Amazon Resource Name (ARN) for the prefix list. # @return [String] # # @!attribute [rw] prefix_list_name # The name of the prefix list. # @return [String] # # @!attribute [rw] max_entries # The maximum number of entries for the prefix list. # @return [Integer] # # @!attribute [rw] version # The version of the prefix list. # @return [Integer] # # @!attribute [rw] tags # The tags for the prefix list. # @return [Array] # # @!attribute [rw] owner_id # The ID of the owner of the prefix list. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ManagedPrefixList AWS API Documentation # class ManagedPrefixList < Struct.new( :prefix_list_id, :address_family, :state, :state_message, :prefix_list_arn, :prefix_list_name, :max_entries, :version, :tags, :owner_id) SENSITIVE = [] include Aws::Structure end # Describes the media accelerators for the instance type. # # @!attribute [rw] accelerators # Describes the media accelerators for the instance type. # @return [Array] # # @!attribute [rw] total_media_memory_in_mi_b # The total size of the memory for the media accelerators for the # instance type, in MiB. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/MediaAcceleratorInfo AWS API Documentation # class MediaAcceleratorInfo < Struct.new( :accelerators, :total_media_memory_in_mi_b) SENSITIVE = [] include Aws::Structure end # Describes the media accelerators for the instance type. # # @!attribute [rw] count # The number of media accelerators for the instance type. # @return [Integer] # # @!attribute [rw] name # The name of the media accelerator. # @return [String] # # @!attribute [rw] manufacturer # The manufacturer of the media accelerator. # @return [String] # # @!attribute [rw] memory_info # Describes the memory available to the media accelerator. # @return [Types::MediaDeviceMemoryInfo] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/MediaDeviceInfo AWS API Documentation # class MediaDeviceInfo < Struct.new( :count, :name, :manufacturer, :memory_info) SENSITIVE = [] include Aws::Structure end # Describes the memory available to the media accelerator. # # @!attribute [rw] size_in_mi_b # The size of the memory available to each media accelerator, in MiB. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/MediaDeviceMemoryInfo AWS API Documentation # class MediaDeviceMemoryInfo < Struct.new( :size_in_mi_b) SENSITIVE = [] include Aws::Structure end # The minimum and maximum amount of memory per vCPU, in GiB. # # @!attribute [rw] min # The minimum amount of memory per vCPU, in GiB. If this parameter is # not specified, there is no minimum limit. # @return [Float] # # @!attribute [rw] max # The maximum amount of memory per vCPU, in GiB. If this parameter is # not specified, there is no maximum limit. # @return [Float] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/MemoryGiBPerVCpu AWS API Documentation # class MemoryGiBPerVCpu < Struct.new( :min, :max) SENSITIVE = [] include Aws::Structure end # The minimum and maximum amount of memory per vCPU, in GiB. # # @!attribute [rw] min # The minimum amount of memory per vCPU, in GiB. To specify no minimum # limit, omit this parameter. # @return [Float] # # @!attribute [rw] max # The maximum amount of memory per vCPU, in GiB. To specify no maximum # limit, omit this parameter. # @return [Float] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/MemoryGiBPerVCpuRequest AWS API Documentation # class MemoryGiBPerVCpuRequest < Struct.new( :min, :max) SENSITIVE = [] include Aws::Structure end # Describes the memory for the instance type. # # @!attribute [rw] size_in_mi_b # The size of the memory, in MiB. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/MemoryInfo AWS API Documentation # class MemoryInfo < Struct.new( :size_in_mi_b) SENSITIVE = [] include Aws::Structure end # The minimum and maximum amount of memory, in MiB. # # @!attribute [rw] min # The minimum amount of memory, in MiB. If this parameter is not # specified, there is no minimum limit. # @return [Integer] # # @!attribute [rw] max # The maximum amount of memory, in MiB. If this parameter is not # specified, there is no maximum limit. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/MemoryMiB AWS API Documentation # class MemoryMiB < Struct.new( :min, :max) SENSITIVE = [] include Aws::Structure end # The minimum and maximum amount of memory, in MiB. # # @!attribute [rw] min # The minimum amount of memory, in MiB. To specify no minimum limit, # specify `0`. # @return [Integer] # # @!attribute [rw] max # The maximum amount of memory, in MiB. To specify no maximum limit, # omit this parameter. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/MemoryMiBRequest AWS API Documentation # class MemoryMiBRequest < Struct.new( :min, :max) SENSITIVE = [] include Aws::Structure end # 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. # # @!attribute [rw] start_date # 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`. # @return [Time] # # @!attribute [rw] end_date # 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`. # @return [Time] # # @!attribute [rw] value # @return [Float] # # @!attribute [rw] status # The status of the metric point. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/MetricPoint AWS API Documentation # class MetricPoint < Struct.new( :start_date, :end_date, :value, :status) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] allocation_id # \[EC2-VPC\] The allocation ID. # @return [String] # # @!attribute [rw] domain_name # The domain name to modify for the IP address. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyAddressAttributeRequest AWS API Documentation # class ModifyAddressAttributeRequest < Struct.new( :allocation_id, :domain_name, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] address # Information about the Elastic IP address. # @return [Types::AddressAttribute] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyAddressAttributeResult AWS API Documentation # class ModifyAddressAttributeResult < Struct.new( :address) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] group_name # The name of the Availability Zone group, Local Zone group, or # Wavelength Zone group. # @return [String] # # @!attribute [rw] opt_in_status # Indicates whether you are opted in to the Local Zone group or # Wavelength Zone group. The only valid value is `opted-in`. You must # contact [Amazon Web Services Support][1] to opt out of a Local Zone # or Wavelength Zone group. # # # # [1]: https://console.aws.amazon.com/support/home#/case/create%3FissueType=customer-service%26serviceCode=general-info%26getting-started%26categoryCode=using-aws%26services # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyAvailabilityZoneGroupRequest AWS API Documentation # class ModifyAvailabilityZoneGroupRequest < Struct.new( :group_name, :opt_in_status, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] return # Is `true` if the request succeeds, and an error otherwise. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyAvailabilityZoneGroupResult AWS API Documentation # class ModifyAvailabilityZoneGroupResult < Struct.new( :return) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] capacity_reservation_fleet_id # The ID of the Capacity Reservation Fleet to modify. # @return [String] # # @!attribute [rw] total_target_capacity # The total number of capacity units to be reserved by the Capacity # Reservation Fleet. This value, together with the instance type # weights that you assign to each instance type used by 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][1] in # the Amazon EC2 User Guide. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/crfleet-concepts.html#target-capacity # @return [Integer] # # @!attribute [rw] end_date # The date and time at which the Capacity Reservation Fleet expires. # When the Capacity Reservation Fleet expires, its state changes to # `expired` and all of the Capacity Reservations in the Fleet expire. # # The Capacity Reservation Fleet expires within an hour after the # specified time. For example, if you specify `5/31/2019`, `13:30:55`, # the Capacity Reservation Fleet is guaranteed to expire between # `13:30:55` and `14:30:55` on `5/31/2019`. # # You can't specify **EndDate** and RemoveEndDate in the same # request. # @return [Time] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] remove_end_date # Indicates whether to remove the end date from the Capacity # Reservation Fleet. If you remove the end date, the Capacity # Reservation Fleet does not expire and it remains active until you # explicitly cancel it using the **CancelCapacityReservationFleet** # action. # # You can't specify **RemoveEndDate** and EndDate in the same # request. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyCapacityReservationFleetRequest AWS API Documentation # class ModifyCapacityReservationFleetRequest < Struct.new( :capacity_reservation_fleet_id, :total_target_capacity, :end_date, :dry_run, :remove_end_date) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] return # Returns `true` if the request succeeds; otherwise, it returns an # error. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyCapacityReservationFleetResult AWS API Documentation # class ModifyCapacityReservationFleetResult < Struct.new( :return) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] capacity_reservation_id # The ID of the Capacity Reservation. # @return [String] # # @!attribute [rw] instance_count # The number of instances for which to reserve capacity. The number of # instances can't be increased or decreased by more than `1000` in a # single request. # @return [Integer] # # @!attribute [rw] end_date # 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. # # The Capacity Reservation is cancelled within an hour from the # specified time. For example, if you specify 5/31/2019, 13:30:55, the # Capacity Reservation is guaranteed to end between 13:30:55 and # 14:30:55 on 5/31/2019. # # You must provide an `EndDate` value if `EndDateType` is `limited`. # Omit `EndDate` if `EndDateType` is `unlimited`. # @return [Time] # # @!attribute [rw] end_date_type # 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. Do not provide an `EndDate` value if # `EndDateType` is `unlimited`. # # * `limited` - The Capacity Reservation expires automatically at a # specified date and time. You must provide an `EndDate` value if # `EndDateType` is `limited`. # @return [String] # # @!attribute [rw] accept # Reserved. Capacity Reservations you have created are accepted by # default. # @return [Boolean] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] additional_info # Reserved for future use. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyCapacityReservationRequest AWS API Documentation # class ModifyCapacityReservationRequest < Struct.new( :capacity_reservation_id, :instance_count, :end_date, :end_date_type, :accept, :dry_run, :additional_info) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] return # Returns `true` if the request succeeds; otherwise, it returns an # error. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyCapacityReservationResult AWS API Documentation # class ModifyCapacityReservationResult < Struct.new( :return) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] client_vpn_endpoint_id # The ID of the Client VPN endpoint to modify. # @return [String] # # @!attribute [rw] server_certificate_arn # The ARN of the server certificate to be used. The server certificate # must be provisioned in Certificate Manager (ACM). # @return [String] # # @!attribute [rw] connection_log_options # Information about the client connection logging options. # # If you enable client connection logging, data about client # connections is sent to a Cloudwatch Logs log stream. The following # information is logged: # # * Client connection requests # # * Client connection results (successful and unsuccessful) # # * Reasons for unsuccessful client connection requests # # * Client connection termination time # @return [Types::ConnectionLogOptions] # # @!attribute [rw] dns_servers # Information about the DNS servers to be used by Client VPN # connections. A Client VPN endpoint can have up to two DNS servers. # @return [Types::DnsServersOptionsModifyStructure] # # @!attribute [rw] vpn_port # The port number to assign to the Client VPN endpoint for TCP and UDP # traffic. # # Valid Values: `443` \| `1194` # # Default Value: `443` # @return [Integer] # # @!attribute [rw] description # A brief description of the Client VPN endpoint. # @return [String] # # @!attribute [rw] split_tunnel # Indicates whether the VPN is split-tunnel. # # For information about split-tunnel VPN endpoints, see [Split-tunnel # Client VPN endpoint][1] in the *Client VPN Administrator Guide*. # # # # [1]: https://docs.aws.amazon.com/vpn/latest/clientvpn-admin/split-tunnel-vpn.html # @return [Boolean] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] security_group_ids # The IDs of one or more security groups to apply to the target # network. # @return [Array] # # @!attribute [rw] vpc_id # The ID of the VPC to associate with the Client VPN endpoint. # @return [String] # # @!attribute [rw] self_service_portal # Specify whether to enable the self-service portal for the Client VPN # endpoint. # @return [String] # # @!attribute [rw] client_connect_options # The options for managing connection authorization for new client # connections. # @return [Types::ClientConnectOptions] # # @!attribute [rw] session_timeout_hours # The maximum VPN session duration time in hours. # # Valid values: `8 | 10 | 12 | 24` # # Default value: `24` # @return [Integer] # # @!attribute [rw] client_login_banner_options # Options for enabling a customizable text banner that will be # displayed on Amazon Web Services provided clients when a VPN session # is established. # @return [Types::ClientLoginBannerOptions] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyClientVpnEndpointRequest AWS API Documentation # class ModifyClientVpnEndpointRequest < Struct.new( :client_vpn_endpoint_id, :server_certificate_arn, :connection_log_options, :dns_servers, :vpn_port, :description, :split_tunnel, :dry_run, :security_group_ids, :vpc_id, :self_service_portal, :client_connect_options, :session_timeout_hours, :client_login_banner_options) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] return # Returns `true` if the request succeeds; otherwise, it returns an # error. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyClientVpnEndpointResult AWS API Documentation # class ModifyClientVpnEndpointResult < Struct.new( :return) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] instance_family # The instance family. # @return [String] # # @!attribute [rw] cpu_credits # The credit option for CPU usage of the instance family. # # Valid Values: `standard` \| `unlimited` # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyDefaultCreditSpecificationRequest AWS API Documentation # class ModifyDefaultCreditSpecificationRequest < Struct.new( :dry_run, :instance_family, :cpu_credits) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] instance_family_credit_specification # The default credit option for CPU usage of the instance family. # @return [Types::InstanceFamilyCreditSpecification] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyDefaultCreditSpecificationResult AWS API Documentation # class ModifyDefaultCreditSpecificationResult < Struct.new( :instance_family_credit_specification) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] kms_key_id # The identifier of the Key Management Service (KMS) KMS key to use # for Amazon EBS encryption. If this parameter is not specified, your # KMS key for Amazon EBS is used. If `KmsKeyId` is specified, the # encrypted state must be `true`. # # You can specify the KMS key using any of the following: # # * Key ID. For example, 1234abcd-12ab-34cd-56ef-1234567890ab. # # * Key alias. For example, alias/ExampleAlias. # # * Key ARN. For example, # arn:aws:kms:us-east-1:012345678910:key/1234abcd-12ab-34cd-56ef-1234567890ab. # # * Alias ARN. For example, # arn:aws:kms:us-east-1:012345678910:alias/ExampleAlias. # # Amazon Web Services authenticates the KMS key asynchronously. # Therefore, if you specify an ID, alias, or ARN that is not valid, # the action can appear to complete, but eventually fails. # # Amazon EBS does not support asymmetric KMS keys. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyEbsDefaultKmsKeyIdRequest AWS API Documentation # class ModifyEbsDefaultKmsKeyIdRequest < Struct.new( :kms_key_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] kms_key_id # The Amazon Resource Name (ARN) of the default KMS key for encryption # by default. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyEbsDefaultKmsKeyIdResult AWS API Documentation # class ModifyEbsDefaultKmsKeyIdResult < Struct.new( :kms_key_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] excess_capacity_termination_policy # Indicates whether running instances should be terminated if the # total target capacity of the EC2 Fleet is decreased below the # current size of the EC2 Fleet. # # Supported only for fleets of type `maintain`. # @return [String] # # @!attribute [rw] launch_template_configs # The launch template and overrides. # @return [Array] # # @!attribute [rw] fleet_id # The ID of the EC2 Fleet. # @return [String] # # @!attribute [rw] target_capacity_specification # The size of the EC2 Fleet. # @return [Types::TargetCapacitySpecificationRequest] # # @!attribute [rw] context # Reserved. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyFleetRequest AWS API Documentation # class ModifyFleetRequest < Struct.new( :dry_run, :excess_capacity_termination_policy, :launch_template_configs, :fleet_id, :target_capacity_specification, :context) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] return # If the request succeeds, the response returns `true`. If the request # fails, no response is returned, and instead an error message is # returned. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyFleetResult AWS API Documentation # class ModifyFleetResult < Struct.new( :return) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] fpga_image_id # The ID of the AFI. # @return [String] # # @!attribute [rw] attribute # The name of the attribute. # @return [String] # # @!attribute [rw] operation_type # The operation type. # @return [String] # # @!attribute [rw] user_ids # The Amazon Web Services account IDs. This parameter is valid only # when modifying the `loadPermission` attribute. # @return [Array] # # @!attribute [rw] user_groups # The user groups. This parameter is valid only when modifying the # `loadPermission` attribute. # @return [Array] # # @!attribute [rw] product_codes # The product codes. After you add a product code to an AFI, it can't # be removed. This parameter is valid only when modifying the # `productCodes` attribute. # @return [Array] # # @!attribute [rw] load_permission # The load permission for the AFI. # @return [Types::LoadPermissionModifications] # # @!attribute [rw] description # A description for the AFI. # @return [String] # # @!attribute [rw] name # A name for the AFI. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyFpgaImageAttributeRequest AWS API Documentation # class ModifyFpgaImageAttributeRequest < Struct.new( :dry_run, :fpga_image_id, :attribute, :operation_type, :user_ids, :user_groups, :product_codes, :load_permission, :description, :name) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] fpga_image_attribute # Information about the attribute. # @return [Types::FpgaImageAttribute] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyFpgaImageAttributeResult AWS API Documentation # class ModifyFpgaImageAttributeResult < Struct.new( :fpga_image_attribute) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] auto_placement # Specify whether to enable or disable auto-placement. # @return [String] # # @!attribute [rw] host_ids # The IDs of the Dedicated Hosts to modify. # @return [Array] # # @!attribute [rw] host_recovery # Indicates whether to enable or disable host recovery for the # Dedicated Host. For more information, see [ Host recovery][1] in the # *Amazon EC2 User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/dedicated-hosts-recovery.html # @return [String] # # @!attribute [rw] instance_type # Specifies the instance type to be supported by the Dedicated Host. # Specify this parameter to modify a Dedicated Host to support only a # specific instance type. # # If you want to modify a Dedicated Host to support multiple instance # types in its current instance family, omit this parameter and # specify **InstanceFamily** instead. You cannot specify # **InstanceType** and **InstanceFamily** in the same request. # @return [String] # # @!attribute [rw] instance_family # Specifies the instance family to be supported by the Dedicated Host. # Specify this parameter to modify a Dedicated Host to support # multiple instance types within its current instance family. # # If you want to modify a Dedicated Host to support a specific # instance type only, omit this parameter and specify **InstanceType** # instead. You cannot specify **InstanceFamily** and **InstanceType** # in the same request. # @return [String] # # @!attribute [rw] host_maintenance # Indicates whether to enable or disable host maintenance for the # Dedicated Host. For more information, see [ Host maintenance][1] in # the *Amazon EC2 User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/dedicated-hosts-maintenance.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyHostsRequest AWS API Documentation # class ModifyHostsRequest < Struct.new( :auto_placement, :host_ids, :host_recovery, :instance_type, :instance_family, :host_maintenance) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] successful # The IDs of the Dedicated Hosts that were successfully modified. # @return [Array] # # @!attribute [rw] unsuccessful # The IDs of the Dedicated Hosts that could not be modified. Check # whether the setting you requested can be used. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyHostsResult AWS API Documentation # class ModifyHostsResult < Struct.new( :successful, :unsuccessful) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] resource # The type of resource: `bundle` \| `conversion-task` \| # `customer-gateway` \| `dhcp-options` \| `elastic-ip-allocation` \| # `elastic-ip-association` \| `export-task` \| `flow-log` \| `image` # \| `import-task` \| `internet-gateway` \| `network-acl` \| # `network-acl-association` \| `network-interface` \| # `network-interface-attachment` \| `prefix-list` \| `route-table` \| # `route-table-association` \| `security-group` \| `subnet` \| # `subnet-cidr-block-association` \| `vpc` \| # `vpc-cidr-block-association` \| `vpc-endpoint` \| # `vpc-peering-connection` \| `vpn-connection` \| `vpn-gateway`. # # Alternatively, use the `all-current` option to include all resource # types that are currently within their opt-in period for longer IDs. # @return [String] # # @!attribute [rw] use_long_ids # Indicate whether the resource should use longer IDs (17-character # IDs). # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyIdFormatRequest AWS API Documentation # class ModifyIdFormatRequest < Struct.new( :resource, :use_long_ids) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] principal_arn # The ARN of the principal, which can be an IAM user, IAM role, or the # root user. Specify `all` to modify the ID format for all IAM users, # IAM roles, and the root user of the account. # @return [String] # # @!attribute [rw] resource # The type of resource: `bundle` \| `conversion-task` \| # `customer-gateway` \| `dhcp-options` \| `elastic-ip-allocation` \| # `elastic-ip-association` \| `export-task` \| `flow-log` \| `image` # \| `import-task` \| `internet-gateway` \| `network-acl` \| # `network-acl-association` \| `network-interface` \| # `network-interface-attachment` \| `prefix-list` \| `route-table` \| # `route-table-association` \| `security-group` \| `subnet` \| # `subnet-cidr-block-association` \| `vpc` \| # `vpc-cidr-block-association` \| `vpc-endpoint` \| # `vpc-peering-connection` \| `vpn-connection` \| `vpn-gateway`. # # Alternatively, use the `all-current` option to include all resource # types that are currently within their opt-in period for longer IDs. # @return [String] # # @!attribute [rw] use_long_ids # Indicates whether the resource should use longer IDs (17-character # IDs) # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyIdentityIdFormatRequest AWS API Documentation # class ModifyIdentityIdFormatRequest < Struct.new( :principal_arn, :resource, :use_long_ids) SENSITIVE = [] include Aws::Structure end # Contains the parameters for ModifyImageAttribute. # # @!attribute [rw] attribute # The name of the attribute to modify. # # Valid values: `description` \| `imdsSupport` \| `launchPermission` # @return [String] # # @!attribute [rw] description # A new description for the AMI. # @return [Types::AttributeValue] # # @!attribute [rw] image_id # The ID of the AMI. # @return [String] # # @!attribute [rw] launch_permission # A new launch permission for the AMI. # @return [Types::LaunchPermissionModifications] # # @!attribute [rw] operation_type # The operation type. This parameter can be used only when the # `Attribute` parameter is `launchPermission`. # @return [String] # # @!attribute [rw] product_codes # Not supported. # @return [Array] # # @!attribute [rw] user_groups # The user groups. This parameter can be used only when the # `Attribute` parameter is `launchPermission`. # @return [Array] # # @!attribute [rw] user_ids # The Amazon Web Services account IDs. This parameter can be used only # when the `Attribute` parameter is `launchPermission`. # @return [Array] # # @!attribute [rw] value # The value of the attribute being modified. This parameter can be # used only when the `Attribute` parameter is `description` or # `imdsSupport`. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] organization_arns # The Amazon Resource Name (ARN) of an organization. This parameter # can be used only when the `Attribute` parameter is # `launchPermission`. # @return [Array] # # @!attribute [rw] organizational_unit_arns # The Amazon Resource Name (ARN) of an organizational unit (OU). This # parameter can be used only when the `Attribute` parameter is # `launchPermission`. # @return [Array] # # @!attribute [rw] imds_support # Set to `v2.0` to indicate 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][1] in the *Amazon EC2 User # Guide*. # # Do not use this parameter unless your AMI software supports IMDSv2. # After you set the value to `v2.0`, you can't undo it. The only way # to “reset” your AMI is to create a new AMI from the underlying # snapshot. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/configuring-IMDS-new-instances.html#configure-IMDS-new-instances-ami-configuration # @return [Types::AttributeValue] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyImageAttributeRequest AWS API Documentation # class ModifyImageAttributeRequest < Struct.new( :attribute, :description, :image_id, :launch_permission, :operation_type, :product_codes, :user_groups, :user_ids, :value, :dry_run, :organization_arns, :organizational_unit_arns, :imds_support) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] source_dest_check # Enable or disable source/destination checks, which ensure that the # instance is either the source or the destination of any traffic that # it receives. If the value is `true`, source/destination checks are # enabled; otherwise, they are disabled. The default value is `true`. # You must disable source/destination checks if the instance runs # services such as network address translation, routing, or firewalls. # @return [Types::AttributeBooleanValue] # # @!attribute [rw] attribute # The name of the attribute to modify. # # You can modify the following attributes only: # `disableApiTermination` \| `instanceType` \| `kernel` \| `ramdisk` # \| `instanceInitiatedShutdownBehavior` \| `blockDeviceMapping` \| # `userData` \| `sourceDestCheck` \| `groupSet` \| `ebsOptimized` \| # `sriovNetSupport` \| `enaSupport` \| `nvmeSupport` \| # `disableApiStop` \| `enclaveOptions` # @return [String] # # @!attribute [rw] block_device_mappings # Modifies the `DeleteOnTermination` attribute for volumes that are # currently attached. The volume must be owned by the caller. If no # value is specified for `DeleteOnTermination`, the default is `true` # and the volume is deleted when the instance is terminated. You # can't modify the `DeleteOnTermination` attribute for volumes that # are attached to Fargate tasks. # # To add instance store volumes to an Amazon EBS-backed instance, you # must add them when you launch the instance. For more information, # see [Update the block device mapping when launching an instance][1] # in the *Amazon EC2 User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/block-device-mapping-concepts.html#Using_OverridingAMIBDM # @return [Array] # # @!attribute [rw] disable_api_termination # If the value is `true`, you can't terminate the instance using the # Amazon EC2 console, CLI, or API; otherwise, you can. You cannot use # this parameter for Spot Instances. # @return [Types::AttributeBooleanValue] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] ebs_optimized # Specifies 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 EBS I/O # performance. This optimization isn't available with all instance # types. Additional usage charges apply when using an EBS Optimized # instance. # @return [Types::AttributeBooleanValue] # # @!attribute [rw] ena_support # Set to `true` to enable enhanced networking with ENA for the # instance. # # This option is supported only for HVM instances. Specifying this # option with a PV instance can make it unreachable. # @return [Types::AttributeBooleanValue] # # @!attribute [rw] groups # Replaces the security groups of the instance with the specified # security groups. You must specify the ID of at least one security # group, even if it's just the default security group for the VPC. # @return [Array] # # @!attribute [rw] instance_id # The ID of the instance. # @return [String] # # @!attribute [rw] instance_initiated_shutdown_behavior # Specifies whether an instance stops or terminates when you initiate # shutdown from the instance (using the operating system command for # system shutdown). # @return [Types::AttributeValue] # # @!attribute [rw] instance_type # Changes the instance type to the specified value. For more # information, see [Instance types][1] in the *Amazon EC2 User Guide*. # If the instance type is not valid, the error returned is # `InvalidInstanceAttributeValue`. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html # @return [Types::AttributeValue] # # @!attribute [rw] kernel # Changes the instance's kernel to the specified value. We recommend # that you use PV-GRUB instead of kernels and RAM disks. For more # information, see [PV-GRUB][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/UserProvidedKernels.html # @return [Types::AttributeValue] # # @!attribute [rw] ramdisk # Changes the instance's RAM disk to the specified value. We # recommend that you use PV-GRUB instead of kernels and RAM disks. For # more information, see [PV-GRUB][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/UserProvidedKernels.html # @return [Types::AttributeValue] # # @!attribute [rw] sriov_net_support # Set to `simple` to enable enhanced networking with the Intel 82599 # Virtual Function interface for the instance. # # There is no way to disable enhanced networking with the Intel 82599 # Virtual Function interface at this time. # # This option is supported only for HVM instances. Specifying this # option with a PV instance can make it unreachable. # @return [Types::AttributeValue] # # @!attribute [rw] user_data # Changes the instance's user data to the specified value. 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. # @return [Types::BlobAttributeValue] # # @!attribute [rw] value # A new value for the attribute. Use only with the `kernel`, # `ramdisk`, `userData`, `disableApiTermination`, or # `instanceInitiatedShutdownBehavior` attribute. # @return [String] # # @!attribute [rw] disable_api_stop # Indicates whether an instance is enabled for stop protection. For # more information, see [Stop Protection][1]. # # # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Stop_Start.html#Using_StopProtection # @return [Types::AttributeBooleanValue] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyInstanceAttributeRequest AWS API Documentation # class ModifyInstanceAttributeRequest < Struct.new( :source_dest_check, :attribute, :block_device_mappings, :disable_api_termination, :dry_run, :ebs_optimized, :ena_support, :groups, :instance_id, :instance_initiated_shutdown_behavior, :instance_type, :kernel, :ramdisk, :sriov_net_support, :user_data, :value, :disable_api_stop) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] instance_id # The ID of the instance to be modified. # @return [String] # # @!attribute [rw] capacity_reservation_specification # Information about the Capacity Reservation targeting option. # @return [Types::CapacityReservationSpecification] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyInstanceCapacityReservationAttributesRequest AWS API Documentation # class ModifyInstanceCapacityReservationAttributesRequest < Struct.new( :instance_id, :capacity_reservation_specification, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] return # Returns `true` if the request succeeds; otherwise, it returns an # error. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyInstanceCapacityReservationAttributesResult AWS API Documentation # class ModifyInstanceCapacityReservationAttributesResult < Struct.new( :return) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] client_token # A unique, case-sensitive token that you provide to ensure # idempotency of your modification request. For more information, see # [Ensuring Idempotency][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] instance_credit_specifications # Information about the credit option for CPU usage. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyInstanceCreditSpecificationRequest AWS API Documentation # class ModifyInstanceCreditSpecificationRequest < Struct.new( :dry_run, :client_token, :instance_credit_specifications) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] successful_instance_credit_specifications # Information about the instances whose credit option for CPU usage # was successfully modified. # @return [Array] # # @!attribute [rw] unsuccessful_instance_credit_specifications # Information about the instances whose credit option for CPU usage # was not modified. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyInstanceCreditSpecificationResult AWS API Documentation # class ModifyInstanceCreditSpecificationResult < Struct.new( :successful_instance_credit_specifications, :unsuccessful_instance_credit_specifications) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] instance_id # The ID of the instance with the scheduled event. # @return [String] # # @!attribute [rw] instance_event_id # The ID of the event whose date and time you are modifying. # @return [String] # # @!attribute [rw] not_before # The new date and time when the event will take place. # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyInstanceEventStartTimeRequest AWS API Documentation # class ModifyInstanceEventStartTimeRequest < Struct.new( :dry_run, :instance_id, :instance_event_id, :not_before) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] event # Information about the event. # @return [Types::InstanceStatusEvent] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyInstanceEventStartTimeResult AWS API Documentation # class ModifyInstanceEventStartTimeResult < Struct.new( :event) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] name # The name of the event window. # @return [String] # # @!attribute [rw] instance_event_window_id # The ID of the event window. # @return [String] # # @!attribute [rw] time_ranges # The time ranges of the event window. # @return [Array] # # @!attribute [rw] cron_expression # The cron expression of the event window, for example, `* 0-4,20-23 * # * 1,5`. # # Constraints: # # * Only hour and day of the week values are supported. # # * For day of the week values, you can specify either integers `0` # through `6`, or alternative single values `SUN` through `SAT`. # # * The minute, month, and year must be specified by `*`. # # * The hour value must be one or a multiple range, for example, `0-4` # or `0-4,20-23`. # # * Each hour range must be >= 2 hours, for example, `0-2` or # `20-23`. # # * The event window must be >= 4 hours. The combined total time # ranges in the event window must be >= 4 hours. # # For more information about cron expressions, see [cron][1] on the # *Wikipedia website*. # # # # [1]: https://en.wikipedia.org/wiki/Cron # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyInstanceEventWindowRequest AWS API Documentation # class ModifyInstanceEventWindowRequest < Struct.new( :dry_run, :name, :instance_event_window_id, :time_ranges, :cron_expression) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] instance_event_window # Information about the event window. # @return [Types::InstanceEventWindow] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyInstanceEventWindowResult AWS API Documentation # class ModifyInstanceEventWindowResult < Struct.new( :instance_event_window) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] instance_id # The ID of the instance. # @return [String] # # @!attribute [rw] auto_recovery # Disables the automatic recovery behavior of your instance or sets it # to default. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyInstanceMaintenanceOptionsRequest AWS API Documentation # class ModifyInstanceMaintenanceOptionsRequest < Struct.new( :instance_id, :auto_recovery, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] instance_id # The ID of the instance. # @return [String] # # @!attribute [rw] auto_recovery # Provides information on the current automatic recovery behavior of # your instance. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyInstanceMaintenanceOptionsResult AWS API Documentation # class ModifyInstanceMaintenanceOptionsResult < Struct.new( :instance_id, :auto_recovery) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] http_tokens # 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. # @return [String] # # @!attribute [rw] http_put_response_hop_limit # The maximum number of hops that the metadata token can travel. To # indicate no preference, specify `-1`. # # Possible values: Integers from `1` to `64`, and `-1` to indicate no # preference # @return [Integer] # # @!attribute [rw] http_endpoint # Enables or disables the IMDS endpoint on an instance. When disabled, # the instance metadata can't be accessed. # @return [String] # # @!attribute [rw] instance_metadata_tags # Enables or disables access to an instance's tags from the instance # metadata. For more information, see [Work with instance tags using # the instance metadata][1] in the *Amazon EC2 User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#work-with-tags-in-IMDS # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyInstanceMetadataDefaultsRequest AWS API Documentation # class ModifyInstanceMetadataDefaultsRequest < Struct.new( :http_tokens, :http_put_response_hop_limit, :http_endpoint, :instance_metadata_tags, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] return # If the request succeeds, the response returns `true`. If the request # fails, no response is returned, and instead an error message is # returned. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyInstanceMetadataDefaultsResult AWS API Documentation # class ModifyInstanceMetadataDefaultsResult < Struct.new( :return) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] instance_id # The ID of the instance. # @return [String] # # @!attribute [rw] http_tokens # 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` 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][1] in the *Amazon EC2 User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/configuring-instance-metadata-options.html#instance-metadata-options-order-of-precedence # @return [String] # # @!attribute [rw] http_put_response_hop_limit # The desired HTTP PUT response hop limit for instance metadata # requests. The larger the number, the further instance metadata # requests can travel. If no parameter is specified, the existing # state is maintained. # # Possible values: Integers from 1 to 64 # @return [Integer] # # @!attribute [rw] http_endpoint # Enables or disables the HTTP metadata endpoint on your instances. If # this parameter is not specified, the existing state is maintained. # # If you specify a value of `disabled`, you cannot access your # instance metadata. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] http_protocol_ipv_6 # Enables or disables the IPv6 endpoint for the instance metadata # service. Applies only if you enabled the HTTP metadata endpoint. # @return [String] # # @!attribute [rw] instance_metadata_tags # 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][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#work-with-tags-in-IMDS # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyInstanceMetadataOptionsRequest AWS API Documentation # class ModifyInstanceMetadataOptionsRequest < Struct.new( :instance_id, :http_tokens, :http_put_response_hop_limit, :http_endpoint, :dry_run, :http_protocol_ipv_6, :instance_metadata_tags) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] instance_id # The ID of the instance. # @return [String] # # @!attribute [rw] instance_metadata_options # The metadata options for the instance. # @return [Types::InstanceMetadataOptionsResponse] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyInstanceMetadataOptionsResult AWS API Documentation # class ModifyInstanceMetadataOptionsResult < Struct.new( :instance_id, :instance_metadata_options) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] affinity # The affinity setting for the instance. For more information, see # [Host affinity][1] in the *Amazon EC2 User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/how-dedicated-hosts-work.html#dedicated-hosts-affinity # @return [String] # # @!attribute [rw] group_name # The name of the placement group in which to place the instance. For # spread placement groups, the instance must have a tenancy of # `default`. For cluster and partition placement groups, the instance # must have a tenancy of `default` or `dedicated`. # # To remove an instance from a placement group, specify an empty # string (""). # @return [String] # # @!attribute [rw] host_id # The ID of the Dedicated Host with which to associate the instance. # @return [String] # # @!attribute [rw] instance_id # The ID of the instance that you are modifying. # @return [String] # # @!attribute [rw] tenancy # The tenancy for the instance. # # For T3 instances, you must launch the instance on a Dedicated Host # to use a tenancy of `host`. You can't change the tenancy from # `host` to `dedicated` or `default`. Attempting to make one of these # unsupported tenancy changes results in an `InvalidRequest` error # code. # # # @return [String] # # @!attribute [rw] partition_number # The number of the partition in which to place the instance. Valid # only if the placement group strategy is set to `partition`. # @return [Integer] # # @!attribute [rw] host_resource_group_arn # The ARN of the host resource group in which to place the instance. # The instance must have a tenancy of `host` to specify this # parameter. # @return [String] # # @!attribute [rw] group_id # The Group Id of a placement group. You must specify the Placement # Group **Group Id** to launch an instance in a shared placement # group. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyInstancePlacementRequest AWS API Documentation # class ModifyInstancePlacementRequest < Struct.new( :affinity, :group_name, :host_id, :instance_id, :tenancy, :partition_number, :host_resource_group_arn, :group_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] return # Is `true` if the request succeeds, and an error otherwise. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyInstancePlacementResult AWS API Documentation # class ModifyInstancePlacementResult < Struct.new( :return) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # A check for whether you have the required permissions for the action # without actually making the request and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] ipam_pool_id # The ID of the IPAM pool you want to modify. # @return [String] # # @!attribute [rw] description # The description of the IPAM pool you want to modify. # @return [String] # # @!attribute [rw] auto_import # If true, 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. # @return [Boolean] # # @!attribute [rw] allocation_min_netmask_length # The minimum netmask length required for CIDR allocations in this # IPAM pool to be compliant. Possible netmask lengths for IPv4 # addresses are 0 - 32. Possible netmask lengths for IPv6 addresses # are 0 - 128. The minimum netmask length must be less than the # maximum netmask length. # @return [Integer] # # @!attribute [rw] allocation_max_netmask_length # The maximum netmask length possible for CIDR allocations in this # IPAM pool to be compliant. Possible netmask lengths for IPv4 # addresses are 0 - 32. Possible netmask lengths for IPv6 addresses # are 0 - 128.The maximum netmask length must be greater than the # minimum netmask length. # @return [Integer] # # @!attribute [rw] allocation_default_netmask_length # 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. # @return [Integer] # # @!attribute [rw] clear_allocation_default_netmask_length # Clear the default netmask length allocation rule for this pool. # @return [Boolean] # # @!attribute [rw] add_allocation_resource_tags # Add tag allocation rules to a pool. For more information about # allocation rules, see [Create a top-level pool][1] in the *Amazon # VPC IPAM User Guide*. # # # # [1]: https://docs.aws.amazon.com/vpc/latest/ipam/create-top-ipam.html # @return [Array] # # @!attribute [rw] remove_allocation_resource_tags # Remove tag allocation rules from a pool. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyIpamPoolRequest AWS API Documentation # class ModifyIpamPoolRequest < Struct.new( :dry_run, :ipam_pool_id, :description, :auto_import, :allocation_min_netmask_length, :allocation_max_netmask_length, :allocation_default_netmask_length, :clear_allocation_default_netmask_length, :add_allocation_resource_tags, :remove_allocation_resource_tags) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] ipam_pool # The results of the modification. # @return [Types::IpamPool] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyIpamPoolResult AWS API Documentation # class ModifyIpamPoolResult < Struct.new( :ipam_pool) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # A check for whether you have the required permissions for the action # without actually making the request and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] ipam_id # The ID of the IPAM you want to modify. # @return [String] # # @!attribute [rw] description # The description of the IPAM you want to modify. # @return [String] # # @!attribute [rw] add_operating_regions # Choose the operating Regions for the 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][1] in the *Amazon VPC IPAM User Guide*. # # # # [1]: https://docs.aws.amazon.com/vpc/latest/ipam/create-ipam.html # @return [Array] # # @!attribute [rw] remove_operating_regions # The operating Regions to remove. # @return [Array] # # @!attribute [rw] tier # 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][1]. # # # # [1]: http://aws.amazon.com/vpc/pricing/ # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyIpamRequest AWS API Documentation # class ModifyIpamRequest < Struct.new( :dry_run, :ipam_id, :description, :add_operating_regions, :remove_operating_regions, :tier) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # A check for whether you have the required permissions for the action # without actually making the request and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] resource_id # The ID of the resource you want to modify. # @return [String] # # @!attribute [rw] resource_cidr # The CIDR of the resource you want to modify. # @return [String] # # @!attribute [rw] resource_region # The Amazon Web Services Region of the resource you want to modify. # @return [String] # # @!attribute [rw] current_ipam_scope_id # The ID of the current scope that the resource CIDR is in. # @return [String] # # @!attribute [rw] destination_ipam_scope_id # The ID of the scope you want to transfer the resource CIDR to. # @return [String] # # @!attribute [rw] monitored # Determines if the resource is monitored by IPAM. If a resource is # monitored, the resource is discovered by IPAM and you can view # details about the resource’s CIDR. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyIpamResourceCidrRequest AWS API Documentation # class ModifyIpamResourceCidrRequest < Struct.new( :dry_run, :resource_id, :resource_cidr, :resource_region, :current_ipam_scope_id, :destination_ipam_scope_id, :monitored) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] ipam_resource_cidr # The CIDR of the resource. # @return [Types::IpamResourceCidr] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyIpamResourceCidrResult AWS API Documentation # class ModifyIpamResourceCidrResult < Struct.new( :ipam_resource_cidr) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # A check for whether you have the required permissions for the action # without actually making the request and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] ipam_resource_discovery_id # A resource discovery ID. # @return [String] # # @!attribute [rw] description # A resource discovery description. # @return [String] # # @!attribute [rw] add_operating_regions # Add operating Regions to 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. # @return [Array] # # @!attribute [rw] remove_operating_regions # Remove operating Regions. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyIpamResourceDiscoveryRequest AWS API Documentation # class ModifyIpamResourceDiscoveryRequest < Struct.new( :dry_run, :ipam_resource_discovery_id, :description, :add_operating_regions, :remove_operating_regions) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] ipam_resource_discovery # A resource discovery. # @return [Types::IpamResourceDiscovery] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyIpamResourceDiscoveryResult AWS API Documentation # class ModifyIpamResourceDiscoveryResult < Struct.new( :ipam_resource_discovery) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] ipam # The results of the modification. # @return [Types::Ipam] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyIpamResult AWS API Documentation # class ModifyIpamResult < Struct.new( :ipam) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # A check for whether you have the required permissions for the action # without actually making the request and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] ipam_scope_id # The ID of the scope you want to modify. # @return [String] # # @!attribute [rw] description # The description of the scope you want to modify. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyIpamScopeRequest AWS API Documentation # class ModifyIpamScopeRequest < Struct.new( :dry_run, :ipam_scope_id, :description) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] ipam_scope # The results of the modification. # @return [Types::IpamScope] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyIpamScopeResult AWS API Documentation # class ModifyIpamScopeResult < Struct.new( :ipam_scope) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] client_token # Unique, case-sensitive identifier you provide to ensure the # idempotency of the request. For more information, see [Ensuring # idempotency][1]. # # Constraint: Maximum 128 ASCII characters. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] launch_template_id # The ID of the launch template. # # You must specify either the `LaunchTemplateId` or the # `LaunchTemplateName`, but not both. # @return [String] # # @!attribute [rw] launch_template_name # The name of the launch template. # # You must specify either the `LaunchTemplateName` or the # `LaunchTemplateId`, but not both. # @return [String] # # @!attribute [rw] default_version # The version number of the launch template to set as the default # version. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyLaunchTemplateRequest AWS API Documentation # class ModifyLaunchTemplateRequest < Struct.new( :dry_run, :client_token, :launch_template_id, :launch_template_name, :default_version) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] launch_template # Information about the launch template. # @return [Types::LaunchTemplate] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyLaunchTemplateResult AWS API Documentation # class ModifyLaunchTemplateResult < Struct.new( :launch_template) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] destination_cidr_block # The CIDR block used for destination matches. The value that you # provide must match the CIDR of an existing route in the table. # @return [String] # # @!attribute [rw] local_gateway_route_table_id # The ID of the local gateway route table. # @return [String] # # @!attribute [rw] local_gateway_virtual_interface_group_id # The ID of the virtual interface group. # @return [String] # # @!attribute [rw] network_interface_id # The ID of the network interface. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] destination_prefix_list_id # The ID of the prefix list. Use a prefix list in place of # `DestinationCidrBlock`. You cannot use `DestinationPrefixListId` and # `DestinationCidrBlock` in the same request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyLocalGatewayRouteRequest AWS API Documentation # class ModifyLocalGatewayRouteRequest < Struct.new( :destination_cidr_block, :local_gateway_route_table_id, :local_gateway_virtual_interface_group_id, :network_interface_id, :dry_run, :destination_prefix_list_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] route # Information about the local gateway route table. # @return [Types::LocalGatewayRoute] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyLocalGatewayRouteResult AWS API Documentation # class ModifyLocalGatewayRouteResult < Struct.new( :route) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] prefix_list_id # The ID of the prefix list. # @return [String] # # @!attribute [rw] current_version # The current version of the prefix list. # @return [Integer] # # @!attribute [rw] prefix_list_name # A name for the prefix list. # @return [String] # # @!attribute [rw] add_entries # One or more entries to add to the prefix list. # @return [Array] # # @!attribute [rw] remove_entries # One or more entries to remove from the prefix list. # @return [Array] # # @!attribute [rw] max_entries # The maximum number of entries for the prefix list. You cannot modify # the entries of a prefix list and modify the size of a prefix list at # the same time. # # If any of the resources that reference the prefix list cannot # support the new maximum size, the modify operation fails. Check the # state message for the IDs of the first ten resources that do not # support the new maximum size. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyManagedPrefixListRequest AWS API Documentation # class ModifyManagedPrefixListRequest < Struct.new( :dry_run, :prefix_list_id, :current_version, :prefix_list_name, :add_entries, :remove_entries, :max_entries) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] prefix_list # Information about the prefix list. # @return [Types::ManagedPrefixList] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyManagedPrefixListResult AWS API Documentation # class ModifyManagedPrefixListResult < Struct.new( :prefix_list) SENSITIVE = [] include Aws::Structure end # Contains the parameters for ModifyNetworkInterfaceAttribute. # # @!attribute [rw] attachment # Information about the interface attachment. If modifying the `delete # on termination` attribute, you must specify the ID of the interface # attachment. # @return [Types::NetworkInterfaceAttachmentChanges] # # @!attribute [rw] description # A description for the network interface. # @return [Types::AttributeValue] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] groups # Changes the security groups for the network interface. The new set # of groups you specify replaces the current set. You must specify at # least one group, even if it's just the default security group in # the VPC. You must specify the ID of the security group, not the # name. # @return [Array] # # @!attribute [rw] network_interface_id # The ID of the network interface. # @return [String] # # @!attribute [rw] source_dest_check # Enable or disable source/destination checks, which ensure that the # instance is either the source or the destination of any traffic that # it receives. If the value is `true`, source/destination checks are # enabled; otherwise, they are disabled. The default value is `true`. # You must disable source/destination checks if the instance runs # services such as network address translation, routing, or firewalls. # @return [Types::AttributeBooleanValue] # # @!attribute [rw] ena_srd_specification # Updates the ENA Express configuration for the network interface # that’s attached to the instance. # @return [Types::EnaSrdSpecification] # # @!attribute [rw] enable_primary_ipv_6 # If you’re modifying a network interface in a dual-stack or IPv6-only # subnet, you have the option to assign a primary IPv6 IP address. A # primary IPv6 address is an IPv6 GUA address associated with an ENI # that you have enabled to use a primary IPv6 address. Use this option # if the instance that this ENI will be attached to relies on its IPv6 # address not changing. Amazon Web Services will automatically assign # an IPv6 address associated with the ENI attached to your instance to # be the primary IPv6 address. Once you enable an IPv6 GUA address to # be a primary IPv6, you cannot disable it. 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. If you have multiple IPv6 addresses # associated with an ENI attached to your instance and you enable a # primary IPv6 address, the first IPv6 GUA address associated with the # ENI becomes the primary IPv6 address. # @return [Boolean] # # @!attribute [rw] connection_tracking_specification # A connection tracking specification. # @return [Types::ConnectionTrackingSpecificationRequest] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyNetworkInterfaceAttributeRequest AWS API Documentation # class ModifyNetworkInterfaceAttributeRequest < Struct.new( :attachment, :description, :dry_run, :groups, :network_interface_id, :source_dest_check, :ena_srd_specification, :enable_primary_ipv_6, :connection_tracking_specification) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] instance_id # The ID of the instance. # @return [String] # # @!attribute [rw] private_dns_hostname_type # 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. # @return [String] # # @!attribute [rw] enable_resource_name_dns_a_record # Indicates whether to respond to DNS queries for instance hostnames # with DNS A records. # @return [Boolean] # # @!attribute [rw] enable_resource_name_dns_aaaa_record # Indicates whether to respond to DNS queries for instance hostnames # with DNS AAAA records. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyPrivateDnsNameOptionsRequest AWS API Documentation # class ModifyPrivateDnsNameOptionsRequest < Struct.new( :dry_run, :instance_id, :private_dns_hostname_type, :enable_resource_name_dns_a_record, :enable_resource_name_dns_aaaa_record) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] return # Returns `true` if the request succeeds; otherwise, it returns an # error. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyPrivateDnsNameOptionsResult AWS API Documentation # class ModifyPrivateDnsNameOptionsResult < Struct.new( :return) SENSITIVE = [] include Aws::Structure end # Contains the parameters for ModifyReservedInstances. # # @!attribute [rw] reserved_instances_ids # The IDs of the Reserved Instances to modify. # @return [Array] # # @!attribute [rw] client_token # A unique, case-sensitive token you provide to ensure idempotency of # your modification request. For more information, see [Ensuring # Idempotency][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] target_configurations # The configuration settings for the Reserved Instances to modify. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyReservedInstancesRequest AWS API Documentation # class ModifyReservedInstancesRequest < Struct.new( :reserved_instances_ids, :client_token, :target_configurations) SENSITIVE = [] include Aws::Structure end # Contains the output of ModifyReservedInstances. # # @!attribute [rw] reserved_instances_modification_id # The ID for the modification. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyReservedInstancesResult AWS API Documentation # class ModifyReservedInstancesResult < Struct.new( :reserved_instances_modification_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] group_id # The ID of the security group. # @return [String] # # @!attribute [rw] security_group_rules # Information about the security group properties to update. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifySecurityGroupRulesRequest AWS API Documentation # class ModifySecurityGroupRulesRequest < Struct.new( :group_id, :security_group_rules, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] return # Returns `true` if the request succeeds; otherwise, returns an error. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifySecurityGroupRulesResult AWS API Documentation # class ModifySecurityGroupRulesResult < Struct.new( :return) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] attribute # The snapshot attribute to modify. Only volume creation permissions # can be modified. # @return [String] # # @!attribute [rw] create_volume_permission # A JSON representation of the snapshot attribute modification. # @return [Types::CreateVolumePermissionModifications] # # @!attribute [rw] group_names # The group to modify for the snapshot. # @return [Array] # # @!attribute [rw] operation_type # The type of operation to perform to the attribute. # @return [String] # # @!attribute [rw] snapshot_id # The ID of the snapshot. # @return [String] # # @!attribute [rw] user_ids # The account ID to modify for the snapshot. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifySnapshotAttributeRequest AWS API Documentation # class ModifySnapshotAttributeRequest < Struct.new( :attribute, :create_volume_permission, :group_names, :operation_type, :snapshot_id, :user_ids, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] snapshot_id # The ID of the snapshot. # @return [String] # # @!attribute [rw] storage_tier # The name of the storage tier. You must specify `archive`. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifySnapshotTierRequest AWS API Documentation # class ModifySnapshotTierRequest < Struct.new( :snapshot_id, :storage_tier, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] snapshot_id # The ID of the snapshot. # @return [String] # # @!attribute [rw] tiering_start_time # The date and time when the archive process was started. # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifySnapshotTierResult AWS API Documentation # class ModifySnapshotTierResult < Struct.new( :snapshot_id, :tiering_start_time) SENSITIVE = [] include Aws::Structure end # Contains the parameters for ModifySpotFleetRequest. # # @!attribute [rw] excess_capacity_termination_policy # Indicates whether running instances should be terminated if the # target capacity of the Spot Fleet request is decreased below the # current size of the Spot Fleet. # # Supported only for fleets of type `maintain`. # @return [String] # # @!attribute [rw] launch_template_configs # The launch template and overrides. You can only use this parameter # if you specified a launch template (`LaunchTemplateConfigs`) in your # Spot Fleet request. If you specified `LaunchSpecifications` in your # Spot Fleet request, then omit this parameter. # @return [Array] # # @!attribute [rw] spot_fleet_request_id # The ID of the Spot Fleet request. # @return [String] # # @!attribute [rw] target_capacity # The size of the fleet. # @return [Integer] # # @!attribute [rw] on_demand_target_capacity # The number of On-Demand Instances in the fleet. # @return [Integer] # # @!attribute [rw] context # Reserved. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifySpotFleetRequestRequest AWS API Documentation # class ModifySpotFleetRequestRequest < Struct.new( :excess_capacity_termination_policy, :launch_template_configs, :spot_fleet_request_id, :target_capacity, :on_demand_target_capacity, :context) SENSITIVE = [] include Aws::Structure end # Contains the output of ModifySpotFleetRequest. # # @!attribute [rw] return # If the request succeeds, the response returns `true`. If the request # fails, no response is returned, and instead an error message is # returned. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifySpotFleetRequestResponse AWS API Documentation # class ModifySpotFleetRequestResponse < Struct.new( :return) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] assign_ipv_6_address_on_creation # Specify `true` to indicate that network interfaces created in the # specified subnet should be assigned an IPv6 address. This includes a # network interface that's created when launching an instance into # the subnet (the instance therefore receives an IPv6 address). # # If you enable the IPv6 addressing feature for your subnet, your # network interface or instance only receives an IPv6 address if it's # created using version `2016-11-15` or later of the Amazon EC2 API. # @return [Types::AttributeBooleanValue] # # @!attribute [rw] map_public_ip_on_launch # Specify `true` to indicate that network interfaces attached to # instances created in the specified subnet should be assigned 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][1]. # # # # [1]: http://aws.amazon.com/vpc/pricing/ # @return [Types::AttributeBooleanValue] # # @!attribute [rw] subnet_id # The ID of the subnet. # @return [String] # # @!attribute [rw] map_customer_owned_ip_on_launch # Specify `true` to indicate that network interfaces attached to # instances created in the specified subnet should be assigned a # customer-owned IPv4 address. # # When this value is `true`, you must specify the customer-owned IP # pool using `CustomerOwnedIpv4Pool`. # @return [Types::AttributeBooleanValue] # # @!attribute [rw] customer_owned_ipv_4_pool # The customer-owned IPv4 address pool associated with the subnet. # # You must set this value when you specify `true` for # `MapCustomerOwnedIpOnLaunch`. # @return [String] # # @!attribute [rw] enable_dns_64 # Indicates whether DNS queries made to the Amazon-provided DNS # Resolver in this subnet should return synthetic IPv6 addresses for # IPv4-only destinations. # @return [Types::AttributeBooleanValue] # # @!attribute [rw] private_dns_hostname_type_on_launch # The type of hostname to assign to instances in the subnet at launch. # For IPv4-only and dual-stack (IPv4 and IPv6) subnets, an instance # DNS name can be based on the instance IPv4 address (ip-name) or the # instance ID (resource-name). For IPv6 only subnets, an instance DNS # name must be based on the instance ID (resource-name). # @return [String] # # @!attribute [rw] enable_resource_name_dns_a_record_on_launch # Indicates whether to respond to DNS queries for instance hostnames # with DNS A records. # @return [Types::AttributeBooleanValue] # # @!attribute [rw] enable_resource_name_dns_aaaa_record_on_launch # Indicates whether to respond to DNS queries for instance hostnames # with DNS AAAA records. # @return [Types::AttributeBooleanValue] # # @!attribute [rw] enable_lni_at_device_index # 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). A local network # interface cannot be the primary network interface (eth0). # @return [Integer] # # @!attribute [rw] disable_lni_at_device_index # Specify `true` to indicate that local network interfaces at the # current position should be disabled. # @return [Types::AttributeBooleanValue] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifySubnetAttributeRequest AWS API Documentation # class ModifySubnetAttributeRequest < Struct.new( :assign_ipv_6_address_on_creation, :map_public_ip_on_launch, :subnet_id, :map_customer_owned_ip_on_launch, :customer_owned_ipv_4_pool, :enable_dns_64, :private_dns_hostname_type_on_launch, :enable_resource_name_dns_a_record_on_launch, :enable_resource_name_dns_aaaa_record_on_launch, :enable_lni_at_device_index, :disable_lni_at_device_index) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] traffic_mirror_filter_id # The ID of the Traffic Mirror filter. # @return [String] # # @!attribute [rw] add_network_services # The network service, for example Amazon DNS, that you want to # mirror. # @return [Array] # # @!attribute [rw] remove_network_services # The network service, for example Amazon DNS, that you no longer want # to mirror. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyTrafficMirrorFilterNetworkServicesRequest AWS API Documentation # class ModifyTrafficMirrorFilterNetworkServicesRequest < Struct.new( :traffic_mirror_filter_id, :add_network_services, :remove_network_services, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] traffic_mirror_filter # The Traffic Mirror filter that the network service is associated # with. # @return [Types::TrafficMirrorFilter] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyTrafficMirrorFilterNetworkServicesResult AWS API Documentation # class ModifyTrafficMirrorFilterNetworkServicesResult < Struct.new( :traffic_mirror_filter) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] traffic_mirror_filter_rule_id # The ID of the Traffic Mirror rule. # @return [String] # # @!attribute [rw] traffic_direction # The type of traffic to assign to the rule. # @return [String] # # @!attribute [rw] rule_number # The number of the Traffic Mirror rule. This number must be unique # for each Traffic Mirror rule in a given direction. The rules are # processed in ascending order by rule number. # @return [Integer] # # @!attribute [rw] rule_action # The action to assign to the rule. # @return [String] # # @!attribute [rw] destination_port_range # The destination ports that are associated with the Traffic Mirror # rule. # @return [Types::TrafficMirrorPortRangeRequest] # # @!attribute [rw] source_port_range # The port range to assign to the Traffic Mirror rule. # @return [Types::TrafficMirrorPortRangeRequest] # # @!attribute [rw] protocol # The protocol, for example TCP, to assign to the Traffic Mirror rule. # @return [Integer] # # @!attribute [rw] destination_cidr_block # The destination CIDR block to assign to the Traffic Mirror rule. # @return [String] # # @!attribute [rw] source_cidr_block # The source CIDR block to assign to the Traffic Mirror rule. # @return [String] # # @!attribute [rw] description # The description to assign to the Traffic Mirror rule. # @return [String] # # @!attribute [rw] remove_fields # The properties that you want to remove from the Traffic Mirror # filter rule. # # When you remove a property from a Traffic Mirror filter rule, the # property is set to the default. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyTrafficMirrorFilterRuleRequest AWS API Documentation # class ModifyTrafficMirrorFilterRuleRequest < Struct.new( :traffic_mirror_filter_rule_id, :traffic_direction, :rule_number, :rule_action, :destination_port_range, :source_port_range, :protocol, :destination_cidr_block, :source_cidr_block, :description, :remove_fields, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] traffic_mirror_filter_rule # Modifies a Traffic Mirror rule. # @return [Types::TrafficMirrorFilterRule] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyTrafficMirrorFilterRuleResult AWS API Documentation # class ModifyTrafficMirrorFilterRuleResult < Struct.new( :traffic_mirror_filter_rule) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] traffic_mirror_session_id # The ID of the Traffic Mirror session. # @return [String] # # @!attribute [rw] traffic_mirror_target_id # The Traffic Mirror target. The target must be in the same VPC as the # source, or have a VPC peering connection with the source. # @return [String] # # @!attribute [rw] traffic_mirror_filter_id # The ID of the Traffic Mirror filter. # @return [String] # # @!attribute [rw] packet_length # The number of bytes in each packet to mirror. These are 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. # # For sessions with Network Load Balancer (NLB) traffic mirror # targets, the default `PacketLength` will be set to 8500. Valid # values are 1-8500. Setting a `PacketLength` greater than 8500 will # result in an error response. # @return [Integer] # # @!attribute [rw] session_number # 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. # @return [Integer] # # @!attribute [rw] virtual_network_id # The virtual network ID of the Traffic Mirror session. # @return [Integer] # # @!attribute [rw] description # The description to assign to the Traffic Mirror session. # @return [String] # # @!attribute [rw] remove_fields # The properties that you want to remove from the Traffic Mirror # session. # # When you remove a property from a Traffic Mirror session, the # property is set to the default. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyTrafficMirrorSessionRequest AWS API Documentation # class ModifyTrafficMirrorSessionRequest < Struct.new( :traffic_mirror_session_id, :traffic_mirror_target_id, :traffic_mirror_filter_id, :packet_length, :session_number, :virtual_network_id, :description, :remove_fields, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] traffic_mirror_session # Information about the Traffic Mirror session. # @return [Types::TrafficMirrorSession] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyTrafficMirrorSessionResult AWS API Documentation # class ModifyTrafficMirrorSessionResult < Struct.new( :traffic_mirror_session) SENSITIVE = [] include Aws::Structure end # The transit gateway options. # # @!attribute [rw] add_transit_gateway_cidr_blocks # 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. # @return [Array] # # @!attribute [rw] remove_transit_gateway_cidr_blocks # Removes CIDR blocks for the transit gateway. # @return [Array] # # @!attribute [rw] vpn_ecmp_support # Enable or disable Equal Cost Multipath Protocol support. # @return [String] # # @!attribute [rw] dns_support # Enable or disable DNS support. # @return [String] # # @!attribute [rw] security_group_referencing_support # This parameter is in preview and may not be available for your # account. # # # # Enables you to reference a security group across VPCs attached to a # transit gateway. Use this option to simplify security group # management and control of instance-to-instance traffic across VPCs # that are connected by transit gateway. You can also use this option # to migrate from VPC peering (which was the only option that # supported security group referencing) to transit gateways (which now # also support security group referencing). This option is disabled by # default and there are no additional costs to use this feature. # @return [String] # # @!attribute [rw] auto_accept_shared_attachments # Enable or disable automatic acceptance of attachment requests. # @return [String] # # @!attribute [rw] default_route_table_association # Enable or disable automatic association with the default association # route table. # @return [String] # # @!attribute [rw] association_default_route_table_id # The ID of the default association route table. # @return [String] # # @!attribute [rw] default_route_table_propagation # Enable or disable automatic propagation of routes to the default # propagation route table. # @return [String] # # @!attribute [rw] propagation_default_route_table_id # The ID of the default propagation route table. # @return [String] # # @!attribute [rw] amazon_side_asn # 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 with # active BGP sessions. You must first delete all transit gateway # attachments that have BGP configured prior to modifying the ASN on # the transit gateway. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyTransitGatewayOptions AWS API Documentation # class ModifyTransitGatewayOptions < Struct.new( :add_transit_gateway_cidr_blocks, :remove_transit_gateway_cidr_blocks, :vpn_ecmp_support, :dns_support, :security_group_referencing_support, :auto_accept_shared_attachments, :default_route_table_association, :association_default_route_table_id, :default_route_table_propagation, :propagation_default_route_table_id, :amazon_side_asn) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_route_table_id # The ID of the transit gateway route table. # @return [String] # # @!attribute [rw] prefix_list_id # The ID of the prefix list. # @return [String] # # @!attribute [rw] transit_gateway_attachment_id # The ID of the attachment to which traffic is routed. # @return [String] # # @!attribute [rw] blackhole # Indicates whether to drop traffic that matches this route. # @return [Boolean] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyTransitGatewayPrefixListReferenceRequest AWS API Documentation # class ModifyTransitGatewayPrefixListReferenceRequest < Struct.new( :transit_gateway_route_table_id, :prefix_list_id, :transit_gateway_attachment_id, :blackhole, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_prefix_list_reference # Information about the prefix list reference. # @return [Types::TransitGatewayPrefixListReference] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyTransitGatewayPrefixListReferenceResult AWS API Documentation # class ModifyTransitGatewayPrefixListReferenceResult < Struct.new( :transit_gateway_prefix_list_reference) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_id # The ID of the transit gateway. # @return [String] # # @!attribute [rw] description # The description for the transit gateway. # @return [String] # # @!attribute [rw] options # The options to modify. # @return [Types::ModifyTransitGatewayOptions] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyTransitGatewayRequest AWS API Documentation # class ModifyTransitGatewayRequest < Struct.new( :transit_gateway_id, :description, :options, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway # Information about the transit gateway. # @return [Types::TransitGateway] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyTransitGatewayResult AWS API Documentation # class ModifyTransitGatewayResult < Struct.new( :transit_gateway) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_attachment_id # The ID of the attachment. # @return [String] # # @!attribute [rw] add_subnet_ids # The IDs of one or more subnets to add. You can specify at most one # subnet per Availability Zone. # @return [Array] # # @!attribute [rw] remove_subnet_ids # The IDs of one or more subnets to remove. # @return [Array] # # @!attribute [rw] options # The new VPC attachment options. # @return [Types::ModifyTransitGatewayVpcAttachmentRequestOptions] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyTransitGatewayVpcAttachmentRequest AWS API Documentation # class ModifyTransitGatewayVpcAttachmentRequest < Struct.new( :transit_gateway_attachment_id, :add_subnet_ids, :remove_subnet_ids, :options, :dry_run) SENSITIVE = [] include Aws::Structure end # Describes the options for a VPC attachment. # # @!attribute [rw] dns_support # Enable or disable DNS support. The default is `enable`. # @return [String] # # @!attribute [rw] security_group_referencing_support # This parameter is in preview and may not be available for your # account. # # # # Enables you to reference a security group across VPCs attached to a # transit gateway. Use this option to simplify security group # management and control of instance-to-instance traffic across VPCs # that are connected by transit gateway. You can also use this option # to migrate from VPC peering (which was the only option that # supported security group referencing) to transit gateways (which now # also support security group referencing). This option is disabled by # default and there are no additional costs to use this feature. # @return [String] # # @!attribute [rw] ipv_6_support # Enable or disable IPv6 support. The default is `enable`. # @return [String] # # @!attribute [rw] appliance_mode_support # 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`. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyTransitGatewayVpcAttachmentRequestOptions AWS API Documentation # class ModifyTransitGatewayVpcAttachmentRequestOptions < Struct.new( :dns_support, :security_group_referencing_support, :ipv_6_support, :appliance_mode_support) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_vpc_attachment # Information about the modified attachment. # @return [Types::TransitGatewayVpcAttachment] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyTransitGatewayVpcAttachmentResult AWS API Documentation # class ModifyTransitGatewayVpcAttachmentResult < Struct.new( :transit_gateway_vpc_attachment) SENSITIVE = [] include Aws::Structure end # Describes the options when modifying a Verified Access endpoint with # the `network-interface` type. # # @!attribute [rw] protocol # The IP protocol. # @return [String] # # @!attribute [rw] port # The IP port number. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVerifiedAccessEndpointEniOptions AWS API Documentation # class ModifyVerifiedAccessEndpointEniOptions < Struct.new( :protocol, :port) SENSITIVE = [] include Aws::Structure end # Describes a load balancer when creating an Amazon Web Services # Verified Access endpoint using the `load-balancer` type. # # @!attribute [rw] subnet_ids # The IDs of the subnets. # @return [Array] # # @!attribute [rw] protocol # The IP protocol. # @return [String] # # @!attribute [rw] port # The IP port number. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVerifiedAccessEndpointLoadBalancerOptions AWS API Documentation # class ModifyVerifiedAccessEndpointLoadBalancerOptions < Struct.new( :subnet_ids, :protocol, :port) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] verified_access_endpoint_id # The ID of the Verified Access endpoint. # @return [String] # # @!attribute [rw] policy_enabled # The status of the Verified Access policy. # @return [Boolean] # # @!attribute [rw] policy_document # The Verified Access policy document. # @return [String] # # @!attribute [rw] client_token # A unique, case-sensitive token that you provide to ensure # idempotency of your modification request. For more information, see # [Ensuring Idempotency][1]. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] sse_specification # The options for server side encryption. # @return [Types::VerifiedAccessSseSpecificationRequest] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVerifiedAccessEndpointPolicyRequest AWS API Documentation # class ModifyVerifiedAccessEndpointPolicyRequest < Struct.new( :verified_access_endpoint_id, :policy_enabled, :policy_document, :client_token, :dry_run, :sse_specification) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] policy_enabled # The status of the Verified Access policy. # @return [Boolean] # # @!attribute [rw] policy_document # The Verified Access policy document. # @return [String] # # @!attribute [rw] sse_specification # The options in use for server side encryption. # @return [Types::VerifiedAccessSseSpecificationResponse] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVerifiedAccessEndpointPolicyResult AWS API Documentation # class ModifyVerifiedAccessEndpointPolicyResult < Struct.new( :policy_enabled, :policy_document, :sse_specification) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] verified_access_endpoint_id # The ID of the Verified Access endpoint. # @return [String] # # @!attribute [rw] verified_access_group_id # The ID of the Verified Access group. # @return [String] # # @!attribute [rw] load_balancer_options # The load balancer details if creating the Verified Access endpoint # as `load-balancer`type. # @return [Types::ModifyVerifiedAccessEndpointLoadBalancerOptions] # # @!attribute [rw] network_interface_options # The network interface options. # @return [Types::ModifyVerifiedAccessEndpointEniOptions] # # @!attribute [rw] description # A description for the Verified Access endpoint. # @return [String] # # @!attribute [rw] client_token # A unique, case-sensitive token that you provide to ensure # idempotency of your modification request. For more information, see # [Ensuring Idempotency][1]. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVerifiedAccessEndpointRequest AWS API Documentation # class ModifyVerifiedAccessEndpointRequest < Struct.new( :verified_access_endpoint_id, :verified_access_group_id, :load_balancer_options, :network_interface_options, :description, :client_token, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] verified_access_endpoint # Details about the Verified Access endpoint. # @return [Types::VerifiedAccessEndpoint] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVerifiedAccessEndpointResult AWS API Documentation # class ModifyVerifiedAccessEndpointResult < Struct.new( :verified_access_endpoint) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] verified_access_group_id # The ID of the Verified Access group. # @return [String] # # @!attribute [rw] policy_enabled # The status of the Verified Access policy. # @return [Boolean] # # @!attribute [rw] policy_document # The Verified Access policy document. # @return [String] # # @!attribute [rw] client_token # A unique, case-sensitive token that you provide to ensure # idempotency of your modification request. For more information, see # [Ensuring Idempotency][1]. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] sse_specification # The options for server side encryption. # @return [Types::VerifiedAccessSseSpecificationRequest] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVerifiedAccessGroupPolicyRequest AWS API Documentation # class ModifyVerifiedAccessGroupPolicyRequest < Struct.new( :verified_access_group_id, :policy_enabled, :policy_document, :client_token, :dry_run, :sse_specification) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] policy_enabled # The status of the Verified Access policy. # @return [Boolean] # # @!attribute [rw] policy_document # The Verified Access policy document. # @return [String] # # @!attribute [rw] sse_specification # The options in use for server side encryption. # @return [Types::VerifiedAccessSseSpecificationResponse] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVerifiedAccessGroupPolicyResult AWS API Documentation # class ModifyVerifiedAccessGroupPolicyResult < Struct.new( :policy_enabled, :policy_document, :sse_specification) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] verified_access_group_id # The ID of the Verified Access group. # @return [String] # # @!attribute [rw] verified_access_instance_id # The ID of the Verified Access instance. # @return [String] # # @!attribute [rw] description # A description for the Verified Access group. # @return [String] # # @!attribute [rw] client_token # A unique, case-sensitive token that you provide to ensure # idempotency of your modification request. For more information, see # [Ensuring Idempotency][1]. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVerifiedAccessGroupRequest AWS API Documentation # class ModifyVerifiedAccessGroupRequest < Struct.new( :verified_access_group_id, :verified_access_instance_id, :description, :client_token, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] verified_access_group # Details about the Verified Access group. # @return [Types::VerifiedAccessGroup] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVerifiedAccessGroupResult AWS API Documentation # class ModifyVerifiedAccessGroupResult < Struct.new( :verified_access_group) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] verified_access_instance_id # The ID of the Verified Access instance. # @return [String] # # @!attribute [rw] access_logs # The configuration options for Verified Access instances. # @return [Types::VerifiedAccessLogOptions] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] client_token # A unique, case-sensitive token that you provide to ensure # idempotency of your modification request. For more information, see # [Ensuring Idempotency][1]. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVerifiedAccessInstanceLoggingConfigurationRequest AWS API Documentation # class ModifyVerifiedAccessInstanceLoggingConfigurationRequest < Struct.new( :verified_access_instance_id, :access_logs, :dry_run, :client_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] logging_configuration # The logging configuration for the Verified Access instance. # @return [Types::VerifiedAccessInstanceLoggingConfiguration] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVerifiedAccessInstanceLoggingConfigurationResult AWS API Documentation # class ModifyVerifiedAccessInstanceLoggingConfigurationResult < Struct.new( :logging_configuration) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] verified_access_instance_id # The ID of the Verified Access instance. # @return [String] # # @!attribute [rw] description # A description for the Verified Access instance. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] client_token # A unique, case-sensitive token that you provide to ensure # idempotency of your modification request. For more information, see # [Ensuring Idempotency][1]. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVerifiedAccessInstanceRequest AWS API Documentation # class ModifyVerifiedAccessInstanceRequest < Struct.new( :verified_access_instance_id, :description, :dry_run, :client_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] verified_access_instance # Details about the Verified Access instance. # @return [Types::VerifiedAccessInstance] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVerifiedAccessInstanceResult AWS API Documentation # class ModifyVerifiedAccessInstanceResult < Struct.new( :verified_access_instance) SENSITIVE = [] include Aws::Structure end # Modifies the configuration of the specified device-based Amazon Web # Services Verified Access trust provider. # # @!attribute [rw] public_signing_key_url # The URL Amazon Web Services Verified Access will use to verify the # authenticity of the device tokens. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVerifiedAccessTrustProviderDeviceOptions AWS API Documentation # class ModifyVerifiedAccessTrustProviderDeviceOptions < Struct.new( :public_signing_key_url) SENSITIVE = [] include Aws::Structure end # Options for an OpenID Connect-compatible user-identity trust provider. # # @!attribute [rw] issuer # The OIDC issuer. # @return [String] # # @!attribute [rw] authorization_endpoint # The OIDC authorization endpoint. # @return [String] # # @!attribute [rw] token_endpoint # The OIDC token endpoint. # @return [String] # # @!attribute [rw] user_info_endpoint # The OIDC user info endpoint. # @return [String] # # @!attribute [rw] client_id # The client identifier. # @return [String] # # @!attribute [rw] client_secret # The client secret. # @return [String] # # @!attribute [rw] scope # 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. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVerifiedAccessTrustProviderOidcOptions AWS API Documentation # class ModifyVerifiedAccessTrustProviderOidcOptions < Struct.new( :issuer, :authorization_endpoint, :token_endpoint, :user_info_endpoint, :client_id, :client_secret, :scope) SENSITIVE = [:client_secret] include Aws::Structure end # @!attribute [rw] verified_access_trust_provider_id # The ID of the Verified Access trust provider. # @return [String] # # @!attribute [rw] oidc_options # The options for an OpenID Connect-compatible user-identity trust # provider. # @return [Types::ModifyVerifiedAccessTrustProviderOidcOptions] # # @!attribute [rw] device_options # The options for a device-based trust provider. This parameter is # required when the provider type is `device`. # @return [Types::ModifyVerifiedAccessTrustProviderDeviceOptions] # # @!attribute [rw] description # A description for the Verified Access trust provider. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] client_token # A unique, case-sensitive token that you provide to ensure # idempotency of your modification request. For more information, see # [Ensuring Idempotency][1]. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] sse_specification # The options for server side encryption. # @return [Types::VerifiedAccessSseSpecificationRequest] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVerifiedAccessTrustProviderRequest AWS API Documentation # class ModifyVerifiedAccessTrustProviderRequest < Struct.new( :verified_access_trust_provider_id, :oidc_options, :device_options, :description, :dry_run, :client_token, :sse_specification) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] verified_access_trust_provider # Details about the Verified Access trust provider. # @return [Types::VerifiedAccessTrustProvider] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVerifiedAccessTrustProviderResult AWS API Documentation # class ModifyVerifiedAccessTrustProviderResult < Struct.new( :verified_access_trust_provider) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] auto_enable_io # Indicates whether the volume should be auto-enabled for I/O # operations. # @return [Types::AttributeBooleanValue] # # @!attribute [rw] volume_id # The ID of the volume. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVolumeAttributeRequest AWS API Documentation # class ModifyVolumeAttributeRequest < Struct.new( :auto_enable_io, :volume_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] volume_id # The ID of the volume. # @return [String] # # @!attribute [rw] size # The target size of the volume, in GiB. The target volume size must # be greater than or equal to the existing size of the volume. # # 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 # # Default: The existing size is retained. # @return [Integer] # # @!attribute [rw] volume_type # The target EBS volume type of the volume. For more information, see # [Amazon EBS volume types][1] in the *Amazon EBS User Guide*. # # Default: The existing type is retained. # # # # [1]: https://docs.aws.amazon.com/ebs/latest/userguide/ebs-volume-types.html # @return [String] # # @!attribute [rw] iops # The target IOPS rate of the volume. This parameter is valid only for # `gp3`, `io1`, and `io2` volumes. # # 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][1]. On other instances, you can achieve # performance up to 32,000 IOPS. # # Default: The existing value is retained if you keep the same volume # type. If you change the volume type to `io1`, `io2`, or `gp3`, the # default is 3,000. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#ec2-nitro-instances # @return [Integer] # # @!attribute [rw] throughput # The target throughput of the volume, in MiB/s. This parameter is # valid only for `gp3` volumes. The maximum value is 1,000. # # Default: The existing value is retained if the source and target # volume type is `gp3`. Otherwise, the default value is 125. # # Valid Range: Minimum value of 125. Maximum value of 1000. # @return [Integer] # # @!attribute [rw] multi_attach_enabled # Specifies whether to enable Amazon EBS Multi-Attach. If you enable # Multi-Attach, you can attach the volume to up to 16 [ Nitro-based # instances][1] in the same Availability Zone. This parameter is # supported with `io1` and `io2` volumes only. For more information, # see [ Amazon EBS Multi-Attach][2] in the *Amazon EBS User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#ec2-nitro-instances # [2]: https://docs.aws.amazon.com/ebs/latest/userguide/ebs-volumes-multi.html # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVolumeRequest AWS API Documentation # class ModifyVolumeRequest < Struct.new( :dry_run, :volume_id, :size, :volume_type, :iops, :throughput, :multi_attach_enabled) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] volume_modification # Information about the volume modification. # @return [Types::VolumeModification] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVolumeResult AWS API Documentation # class ModifyVolumeResult < Struct.new( :volume_modification) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] enable_dns_hostnames # Indicates whether the instances launched in the VPC get DNS # hostnames. If enabled, instances in the VPC get DNS hostnames; # otherwise, they do not. # # You cannot modify the DNS resolution and DNS hostnames attributes in # the same request. Use separate requests for each attribute. You can # only enable DNS hostnames if you've enabled DNS support. # @return [Types::AttributeBooleanValue] # # @!attribute [rw] enable_dns_support # Indicates whether the DNS resolution is supported for the VPC. If # enabled, queries to the Amazon provided DNS server at the # 169.254.169.253 IP address, or the reserved IP address at the base # of the VPC network range "plus two" succeed. If disabled, the # Amazon provided DNS service in the VPC that resolves public DNS # hostnames to IP addresses is not enabled. # # You cannot modify the DNS resolution and DNS hostnames attributes in # the same request. Use separate requests for each attribute. # @return [Types::AttributeBooleanValue] # # @!attribute [rw] vpc_id # The ID of the VPC. # @return [String] # # @!attribute [rw] enable_network_address_usage_metrics # Indicates whether Network Address Usage metrics are enabled for your # VPC. # @return [Types::AttributeBooleanValue] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVpcAttributeRequest AWS API Documentation # class ModifyVpcAttributeRequest < Struct.new( :enable_dns_hostnames, :enable_dns_support, :vpc_id, :enable_network_address_usage_metrics) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] connection_notification_id # The ID of the notification. # @return [String] # # @!attribute [rw] connection_notification_arn # The ARN for the SNS topic for the notification. # @return [String] # # @!attribute [rw] connection_events # The events for the endpoint. Valid values are `Accept`, `Connect`, # `Delete`, and `Reject`. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVpcEndpointConnectionNotificationRequest AWS API Documentation # class ModifyVpcEndpointConnectionNotificationRequest < Struct.new( :dry_run, :connection_notification_id, :connection_notification_arn, :connection_events) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] return_value # Returns `true` if the request succeeds; otherwise, it returns an # error. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVpcEndpointConnectionNotificationResult AWS API Documentation # class ModifyVpcEndpointConnectionNotificationResult < Struct.new( :return_value) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] vpc_endpoint_id # The ID of the endpoint. # @return [String] # # @!attribute [rw] reset_policy # (Gateway endpoint) Specify `true` to reset the policy document to # the default policy. The default policy allows full access to the # service. # @return [Boolean] # # @!attribute [rw] policy_document # (Interface and gateway endpoints) A policy to attach to the endpoint # that controls access to the service. The policy must be in valid # JSON format. # @return [String] # # @!attribute [rw] add_route_table_ids # (Gateway endpoint) The IDs of the route tables to associate with the # endpoint. # @return [Array] # # @!attribute [rw] remove_route_table_ids # (Gateway endpoint) The IDs of the route tables to disassociate from # the endpoint. # @return [Array] # # @!attribute [rw] add_subnet_ids # (Interface and Gateway Load Balancer endpoints) The IDs of the # subnets in which to serve the endpoint. For a Gateway Load Balancer # endpoint, you can specify only one subnet. # @return [Array] # # @!attribute [rw] remove_subnet_ids # (Interface endpoint) The IDs of the subnets from which to remove the # endpoint. # @return [Array] # # @!attribute [rw] add_security_group_ids # (Interface endpoint) The IDs of the security groups to associate # with the endpoint network interfaces. # @return [Array] # # @!attribute [rw] remove_security_group_ids # (Interface endpoint) The IDs of the security groups to disassociate # from the endpoint network interfaces. # @return [Array] # # @!attribute [rw] ip_address_type # The IP address type for the endpoint. # @return [String] # # @!attribute [rw] dns_options # The DNS options for the endpoint. # @return [Types::DnsOptionsSpecification] # # @!attribute [rw] private_dns_enabled # (Interface endpoint) Indicates whether a private hosted zone is # associated with the VPC. # @return [Boolean] # # @!attribute [rw] subnet_configurations # The subnet configurations for the endpoint. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVpcEndpointRequest AWS API Documentation # class ModifyVpcEndpointRequest < Struct.new( :dry_run, :vpc_endpoint_id, :reset_policy, :policy_document, :add_route_table_ids, :remove_route_table_ids, :add_subnet_ids, :remove_subnet_ids, :add_security_group_ids, :remove_security_group_ids, :ip_address_type, :dns_options, :private_dns_enabled, :subnet_configurations) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] return # Returns `true` if the request succeeds; otherwise, it returns an # error. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVpcEndpointResult AWS API Documentation # class ModifyVpcEndpointResult < Struct.new( :return) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] service_id # The ID of the service. # @return [String] # # @!attribute [rw] private_dns_name # (Interface endpoint configuration) The private DNS name to assign to # the endpoint service. # @return [String] # # @!attribute [rw] remove_private_dns_name # (Interface endpoint configuration) Removes the private DNS name of # the endpoint service. # @return [Boolean] # # @!attribute [rw] acceptance_required # Indicates whether requests to create an endpoint to your service # must be accepted. # @return [Boolean] # # @!attribute [rw] add_network_load_balancer_arns # The Amazon Resource Names (ARNs) of Network Load Balancers to add to # your service configuration. # @return [Array] # # @!attribute [rw] remove_network_load_balancer_arns # The Amazon Resource Names (ARNs) of Network Load Balancers to remove # from your service configuration. # @return [Array] # # @!attribute [rw] add_gateway_load_balancer_arns # The Amazon Resource Names (ARNs) of Gateway Load Balancers to add to # your service configuration. # @return [Array] # # @!attribute [rw] remove_gateway_load_balancer_arns # The Amazon Resource Names (ARNs) of Gateway Load Balancers to remove # from your service configuration. # @return [Array] # # @!attribute [rw] add_supported_ip_address_types # The IP address types to add to your service configuration. # @return [Array] # # @!attribute [rw] remove_supported_ip_address_types # The IP address types to remove from your service configuration. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVpcEndpointServiceConfigurationRequest AWS API Documentation # class ModifyVpcEndpointServiceConfigurationRequest < Struct.new( :dry_run, :service_id, :private_dns_name, :remove_private_dns_name, :acceptance_required, :add_network_load_balancer_arns, :remove_network_load_balancer_arns, :add_gateway_load_balancer_arns, :remove_gateway_load_balancer_arns, :add_supported_ip_address_types, :remove_supported_ip_address_types) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] return # Returns `true` if the request succeeds; otherwise, it returns an # error. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVpcEndpointServiceConfigurationResult AWS API Documentation # class ModifyVpcEndpointServiceConfigurationResult < Struct.new( :return) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] service_id # The ID of the service. # @return [String] # # @!attribute [rw] payer_responsibility # The entity that is responsible for the endpoint costs. The default # is the endpoint owner. If you set the payer responsibility to the # service owner, you cannot set it back to the endpoint owner. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVpcEndpointServicePayerResponsibilityRequest AWS API Documentation # class ModifyVpcEndpointServicePayerResponsibilityRequest < Struct.new( :dry_run, :service_id, :payer_responsibility) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] return_value # Returns `true` if the request succeeds; otherwise, it returns an # error. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVpcEndpointServicePayerResponsibilityResult AWS API Documentation # class ModifyVpcEndpointServicePayerResponsibilityResult < Struct.new( :return_value) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] service_id # The ID of the service. # @return [String] # # @!attribute [rw] add_allowed_principals # The Amazon Resource Names (ARN) of the principals. Permissions are # granted to the principals in this list. To grant permissions to all # principals, specify an asterisk (*). # @return [Array] # # @!attribute [rw] remove_allowed_principals # The Amazon Resource Names (ARN) of the principals. Permissions are # revoked for principals in this list. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVpcEndpointServicePermissionsRequest AWS API Documentation # class ModifyVpcEndpointServicePermissionsRequest < Struct.new( :dry_run, :service_id, :add_allowed_principals, :remove_allowed_principals) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] added_principals # Information about the added principals. # @return [Array] # # @!attribute [rw] return_value # Returns `true` if the request succeeds; otherwise, it returns an # error. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVpcEndpointServicePermissionsResult AWS API Documentation # class ModifyVpcEndpointServicePermissionsResult < Struct.new( :added_principals, :return_value) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] accepter_peering_connection_options # The VPC peering connection options for the accepter VPC. # @return [Types::PeeringConnectionOptionsRequest] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] requester_peering_connection_options # The VPC peering connection options for the requester VPC. # @return [Types::PeeringConnectionOptionsRequest] # # @!attribute [rw] vpc_peering_connection_id # The ID of the VPC peering connection. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVpcPeeringConnectionOptionsRequest AWS API Documentation # class ModifyVpcPeeringConnectionOptionsRequest < Struct.new( :accepter_peering_connection_options, :dry_run, :requester_peering_connection_options, :vpc_peering_connection_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] accepter_peering_connection_options # Information about the VPC peering connection options for the # accepter VPC. # @return [Types::PeeringConnectionOptions] # # @!attribute [rw] requester_peering_connection_options # Information about the VPC peering connection options for the # requester VPC. # @return [Types::PeeringConnectionOptions] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVpcPeeringConnectionOptionsResult AWS API Documentation # class ModifyVpcPeeringConnectionOptionsResult < Struct.new( :accepter_peering_connection_options, :requester_peering_connection_options) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] vpc_id # The ID of the VPC. # @return [String] # # @!attribute [rw] instance_tenancy # The instance tenancy attribute for the VPC. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVpcTenancyRequest AWS API Documentation # class ModifyVpcTenancyRequest < Struct.new( :vpc_id, :instance_tenancy, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] return_value # Returns `true` if the request succeeds; otherwise, returns an error. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVpcTenancyResult AWS API Documentation # class ModifyVpcTenancyResult < Struct.new( :return_value) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] vpn_connection_id # The ID of the Site-to-Site VPN connection. # @return [String] # # @!attribute [rw] local_ipv_4_network_cidr # The IPv4 CIDR on the customer gateway (on-premises) side of the VPN # connection. # # Default: `0.0.0.0/0` # @return [String] # # @!attribute [rw] remote_ipv_4_network_cidr # The IPv4 CIDR on the Amazon Web Services side of the VPN connection. # # Default: `0.0.0.0/0` # @return [String] # # @!attribute [rw] local_ipv_6_network_cidr # The IPv6 CIDR on the customer gateway (on-premises) side of the VPN # connection. # # Default: `::/0` # @return [String] # # @!attribute [rw] remote_ipv_6_network_cidr # The IPv6 CIDR on the Amazon Web Services side of the VPN connection. # # Default: `::/0` # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVpnConnectionOptionsRequest AWS API Documentation # class ModifyVpnConnectionOptionsRequest < Struct.new( :vpn_connection_id, :local_ipv_4_network_cidr, :remote_ipv_4_network_cidr, :local_ipv_6_network_cidr, :remote_ipv_6_network_cidr, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] vpn_connection # Information about the VPN connection. # @return [Types::VpnConnection] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVpnConnectionOptionsResult AWS API Documentation # class ModifyVpnConnectionOptionsResult < Struct.new( :vpn_connection) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] vpn_connection_id # The ID of the VPN connection. # @return [String] # # @!attribute [rw] transit_gateway_id # The ID of the transit gateway. # @return [String] # # @!attribute [rw] customer_gateway_id # The ID of the customer gateway at your end of the VPN connection. # @return [String] # # @!attribute [rw] vpn_gateway_id # The ID of the virtual private gateway at the Amazon Web Services # side of the VPN connection. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVpnConnectionRequest AWS API Documentation # class ModifyVpnConnectionRequest < Struct.new( :vpn_connection_id, :transit_gateway_id, :customer_gateway_id, :vpn_gateway_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] vpn_connection # Information about the VPN connection. # @return [Types::VpnConnection] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVpnConnectionResult AWS API Documentation # class ModifyVpnConnectionResult < Struct.new( :vpn_connection) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] vpn_connection_id # The ID of the Amazon Web Services Site-to-Site VPN connection. # @return [String] # # @!attribute [rw] vpn_tunnel_outside_ip_address # The external IP address of the VPN tunnel. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVpnTunnelCertificateRequest AWS API Documentation # class ModifyVpnTunnelCertificateRequest < Struct.new( :vpn_connection_id, :vpn_tunnel_outside_ip_address, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] vpn_connection # Information about the VPN connection. # @return [Types::VpnConnection] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVpnTunnelCertificateResult AWS API Documentation # class ModifyVpnTunnelCertificateResult < Struct.new( :vpn_connection) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] vpn_connection_id # The ID of the Amazon Web Services Site-to-Site VPN connection. # @return [String] # # @!attribute [rw] vpn_tunnel_outside_ip_address # The external IP address of the VPN tunnel. # @return [String] # # @!attribute [rw] tunnel_options # The tunnel options to modify. # @return [Types::ModifyVpnTunnelOptionsSpecification] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] skip_tunnel_replacement # Choose whether or not to trigger immediate tunnel replacement. This # is only applicable when turning on or off # `EnableTunnelLifecycleControl`. # # Valid values: `True` \| `False` # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVpnTunnelOptionsRequest AWS API Documentation # class ModifyVpnTunnelOptionsRequest < Struct.new( :vpn_connection_id, :vpn_tunnel_outside_ip_address, :tunnel_options, :dry_run, :skip_tunnel_replacement) SENSITIVE = [:tunnel_options] include Aws::Structure end # @!attribute [rw] vpn_connection # Information about the VPN connection. # @return [Types::VpnConnection] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVpnTunnelOptionsResult AWS API Documentation # class ModifyVpnTunnelOptionsResult < Struct.new( :vpn_connection) SENSITIVE = [] include Aws::Structure end # The Amazon Web Services Site-to-Site VPN tunnel options to modify. # # @!attribute [rw] tunnel_inside_cidr # 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` # @return [String] # # @!attribute [rw] tunnel_inside_ipv_6_cidr # 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. # @return [String] # # @!attribute [rw] pre_shared_key # 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). # @return [String] # # @!attribute [rw] phase_1_lifetime_seconds # The lifetime for phase 1 of the IKE negotiation, in seconds. # # Constraints: A value between 900 and 28,800. # # Default: `28800` # @return [Integer] # # @!attribute [rw] phase_2_lifetime_seconds # 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` # @return [Integer] # # @!attribute [rw] rekey_margin_time_seconds # 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` # @return [Integer] # # @!attribute [rw] rekey_fuzz_percentage # 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` # @return [Integer] # # @!attribute [rw] replay_window_size # The number of packets in an IKE replay window. # # Constraints: A value between 64 and 2048. # # Default: `1024` # @return [Integer] # # @!attribute [rw] dpd_timeout_seconds # 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` # @return [Integer] # # @!attribute [rw] dpd_timeout_action # 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` # @return [String] # # @!attribute [rw] phase_1_encryption_algorithms # 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` # @return [Array] # # @!attribute [rw] phase_2_encryption_algorithms # 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` # @return [Array] # # @!attribute [rw] phase_1_integrity_algorithms # 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` # @return [Array] # # @!attribute [rw] phase_2_integrity_algorithms # 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` # @return [Array] # # @!attribute [rw] phase_1_dh_group_numbers # 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` # @return [Array] # # @!attribute [rw] phase_2_dh_group_numbers # 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` # @return [Array] # # @!attribute [rw] ike_versions # The IKE versions that are permitted for the VPN tunnel. # # Valid values: `ikev1` \| `ikev2` # @return [Array] # # @!attribute [rw] startup_action # 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` # @return [String] # # @!attribute [rw] log_options # Options for logging VPN tunnel activity. # @return [Types::VpnTunnelLogOptionsSpecification] # # @!attribute [rw] enable_tunnel_lifecycle_control # Turn on or off tunnel endpoint lifecycle control feature. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ModifyVpnTunnelOptionsSpecification AWS API Documentation # class ModifyVpnTunnelOptionsSpecification < Struct.new( :tunnel_inside_cidr, :tunnel_inside_ipv_6_cidr, :pre_shared_key, :phase_1_lifetime_seconds, :phase_2_lifetime_seconds, :rekey_margin_time_seconds, :rekey_fuzz_percentage, :replay_window_size, :dpd_timeout_seconds, :dpd_timeout_action, :phase_1_encryption_algorithms, :phase_2_encryption_algorithms, :phase_1_integrity_algorithms, :phase_2_integrity_algorithms, :phase_1_dh_group_numbers, :phase_2_dh_group_numbers, :ike_versions, :startup_action, :log_options, :enable_tunnel_lifecycle_control) SENSITIVE = [:pre_shared_key] include Aws::Structure end # @!attribute [rw] instance_ids # The IDs of the instances. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/MonitorInstancesRequest AWS API Documentation # class MonitorInstancesRequest < Struct.new( :instance_ids, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] instance_monitorings # The monitoring information. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/MonitorInstancesResult AWS API Documentation # class MonitorInstancesResult < Struct.new( :instance_monitorings) SENSITIVE = [] include Aws::Structure end # Describes the monitoring of an instance. # # @!attribute [rw] state # Indicates whether detailed monitoring is enabled. Otherwise, basic # monitoring is enabled. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Monitoring AWS API Documentation # class Monitoring < Struct.new( :state) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] public_ip # The Elastic IP address. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/MoveAddressToVpcRequest AWS API Documentation # class MoveAddressToVpcRequest < Struct.new( :dry_run, :public_ip) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] allocation_id # The allocation ID for the Elastic IP address. # @return [String] # # @!attribute [rw] status # The status of the move of the IP address. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/MoveAddressToVpcResult AWS API Documentation # class MoveAddressToVpcResult < Struct.new( :allocation_id, :status) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # A check for whether you have the required permissions for the action # without actually making the request and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] cidr # The BYOIP CIDR. # @return [String] # # @!attribute [rw] ipam_pool_id # The IPAM pool ID. # @return [String] # # @!attribute [rw] ipam_pool_owner # The Amazon Web Services account ID of the owner of the IPAM pool. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/MoveByoipCidrToIpamRequest AWS API Documentation # class MoveByoipCidrToIpamRequest < Struct.new( :dry_run, :cidr, :ipam_pool_id, :ipam_pool_owner) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] byoip_cidr # The BYOIP CIDR. # @return [Types::ByoipCidr] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/MoveByoipCidrToIpamResult AWS API Documentation # class MoveByoipCidrToIpamResult < Struct.new( :byoip_cidr) SENSITIVE = [] include Aws::Structure end # This action is deprecated. # # # # Describes the status of a moving Elastic IP address. # # @!attribute [rw] move_status # The status of the Elastic IP address that's being moved or # restored. # @return [String] # # @!attribute [rw] public_ip # The Elastic IP address. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/MovingAddressStatus AWS API Documentation # class MovingAddressStatus < Struct.new( :move_status, :public_ip) SENSITIVE = [] include Aws::Structure end # Describes a NAT gateway. # # @!attribute [rw] create_time # The date and time the NAT gateway was created. # @return [Time] # # @!attribute [rw] delete_time # The date and time the NAT gateway was deleted, if applicable. # @return [Time] # # @!attribute [rw] failure_code # 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`) # @return [String] # # @!attribute [rw] failure_message # 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." # @return [String] # # @!attribute [rw] nat_gateway_addresses # Information about the IP addresses and network interface associated # with the NAT gateway. # @return [Array] # # @!attribute [rw] nat_gateway_id # The ID of the NAT gateway. # @return [String] # # @!attribute [rw] provisioned_bandwidth # Reserved. If you need to sustain traffic greater than the # [documented limits][1], contact us through the [Support Center][2]. # # # # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html # [2]: https://console.aws.amazon.com/support/home? # @return [Types::ProvisionedBandwidth] # # @!attribute [rw] state # 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. # @return [String] # # @!attribute [rw] subnet_id # The ID of the subnet in which the NAT gateway is located. # @return [String] # # @!attribute [rw] vpc_id # The ID of the VPC in which the NAT gateway is located. # @return [String] # # @!attribute [rw] tags # The tags for the NAT gateway. # @return [Array] # # @!attribute [rw] connectivity_type # Indicates whether the NAT gateway supports public or private # connectivity. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/NatGateway AWS API Documentation # class NatGateway < Struct.new( :create_time, :delete_time, :failure_code, :failure_message, :nat_gateway_addresses, :nat_gateway_id, :provisioned_bandwidth, :state, :subnet_id, :vpc_id, :tags, :connectivity_type) SENSITIVE = [] include Aws::Structure end # Describes the IP addresses and network interface associated with a NAT # gateway. # # @!attribute [rw] allocation_id # \[Public NAT gateway only\] The allocation ID of the Elastic IP # address that's associated with the NAT gateway. # @return [String] # # @!attribute [rw] network_interface_id # The ID of the network interface associated with the NAT gateway. # @return [String] # # @!attribute [rw] private_ip # The private IP address associated with the NAT gateway. # @return [String] # # @!attribute [rw] public_ip # \[Public NAT gateway only\] The Elastic IP address associated with # the NAT gateway. # @return [String] # # @!attribute [rw] association_id # \[Public NAT gateway only\] The association ID of the Elastic IP # address that's associated with the NAT gateway. # @return [String] # # @!attribute [rw] is_primary # Defines if the IP address is the primary address. # @return [Boolean] # # @!attribute [rw] failure_message # The address failure message. # @return [String] # # @!attribute [rw] status # The address status. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/NatGatewayAddress AWS API Documentation # class NatGatewayAddress < Struct.new( :allocation_id, :network_interface_id, :private_ip, :public_ip, :association_id, :is_primary, :failure_message, :status) SENSITIVE = [] include Aws::Structure end # Describes a network ACL. # # @!attribute [rw] associations # Any associations between the network ACL and one or more subnets # @return [Array] # # @!attribute [rw] entries # The entries (rules) in the network ACL. # @return [Array] # # @!attribute [rw] is_default # Indicates whether this is the default network ACL for the VPC. # @return [Boolean] # # @!attribute [rw] network_acl_id # The ID of the network ACL. # @return [String] # # @!attribute [rw] tags # Any tags assigned to the network ACL. # @return [Array] # # @!attribute [rw] vpc_id # The ID of the VPC for the network ACL. # @return [String] # # @!attribute [rw] owner_id # The ID of the Amazon Web Services account that owns the network ACL. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/NetworkAcl AWS API Documentation # class NetworkAcl < Struct.new( :associations, :entries, :is_default, :network_acl_id, :tags, :vpc_id, :owner_id) SENSITIVE = [] include Aws::Structure end # Describes an association between a network ACL and a subnet. # # @!attribute [rw] network_acl_association_id # The ID of the association between a network ACL and a subnet. # @return [String] # # @!attribute [rw] network_acl_id # The ID of the network ACL. # @return [String] # # @!attribute [rw] subnet_id # The ID of the subnet. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/NetworkAclAssociation AWS API Documentation # class NetworkAclAssociation < Struct.new( :network_acl_association_id, :network_acl_id, :subnet_id) SENSITIVE = [] include Aws::Structure end # Describes an entry in a network ACL. # # @!attribute [rw] cidr_block # The IPv4 network range to allow or deny, in CIDR notation. # @return [String] # # @!attribute [rw] egress # Indicates whether the rule is an egress rule (applied to traffic # leaving the subnet). # @return [Boolean] # # @!attribute [rw] icmp_type_code # ICMP protocol: The ICMP type and code. # @return [Types::IcmpTypeCode] # # @!attribute [rw] ipv_6_cidr_block # The IPv6 network range to allow or deny, in CIDR notation. # @return [String] # # @!attribute [rw] port_range # TCP or UDP protocols: The range of ports the rule applies to. # @return [Types::PortRange] # # @!attribute [rw] protocol # The protocol number. A value of "-1" means all protocols. # @return [String] # # @!attribute [rw] rule_action # Indicates whether to allow or deny the traffic that matches the # rule. # @return [String] # # @!attribute [rw] rule_number # The rule number for the entry. ACL entries are processed in # ascending order by rule number. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/NetworkAclEntry AWS API Documentation # class NetworkAclEntry < Struct.new( :cidr_block, :egress, :icmp_type_code, :ipv_6_cidr_block, :port_range, :protocol, :rule_action, :rule_number) SENSITIVE = [] include Aws::Structure end # 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 bandwidth][1] in # the *Amazon EC2 User Guide*. # # # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-network-bandwidth.html#available-instance-bandwidth # # @!attribute [rw] min # The minimum amount of network bandwidth, in Gbps. If this parameter # is not specified, there is no minimum limit. # @return [Float] # # @!attribute [rw] max # The maximum amount of network bandwidth, in Gbps. If this parameter # is not specified, there is no maximum limit. # @return [Float] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/NetworkBandwidthGbps AWS API Documentation # class NetworkBandwidthGbps < Struct.new( :min, :max) SENSITIVE = [] include Aws::Structure end # 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 bandwidth][1] in # the *Amazon EC2 User Guide*. # # # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-network-bandwidth.html#available-instance-bandwidth # # @!attribute [rw] min # The minimum amount of network bandwidth, in Gbps. To specify no # minimum limit, omit this parameter. # @return [Float] # # @!attribute [rw] max # The maximum amount of network bandwidth, in Gbps. To specify no # maximum limit, omit this parameter. # @return [Float] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/NetworkBandwidthGbpsRequest AWS API Documentation # class NetworkBandwidthGbpsRequest < Struct.new( :min, :max) SENSITIVE = [] include Aws::Structure end # Describes the network card support of the instance type. # # @!attribute [rw] network_card_index # The index of the network card. # @return [Integer] # # @!attribute [rw] network_performance # The network performance of the network card. # @return [String] # # @!attribute [rw] maximum_network_interfaces # The maximum number of network interfaces for the network card. # @return [Integer] # # @!attribute [rw] baseline_bandwidth_in_gbps # The baseline network performance of the network card, in Gbps. # @return [Float] # # @!attribute [rw] peak_bandwidth_in_gbps # The peak (burst) network performance of the network card, in Gbps. # @return [Float] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/NetworkCardInfo AWS API Documentation # class NetworkCardInfo < Struct.new( :network_card_index, :network_performance, :maximum_network_interfaces, :baseline_bandwidth_in_gbps, :peak_bandwidth_in_gbps) SENSITIVE = [] include Aws::Structure end # Describes the networking features of the instance type. # # @!attribute [rw] network_performance # The network performance. # @return [String] # # @!attribute [rw] maximum_network_interfaces # The maximum number of network interfaces for the instance type. # @return [Integer] # # @!attribute [rw] maximum_network_cards # The maximum number of physical network cards that can be allocated # to the instance. # @return [Integer] # # @!attribute [rw] default_network_card_index # The index of the default network card, starting at 0. # @return [Integer] # # @!attribute [rw] network_cards # Describes the network cards for the instance type. # @return [Array] # # @!attribute [rw] ipv_4_addresses_per_interface # The maximum number of IPv4 addresses per network interface. # @return [Integer] # # @!attribute [rw] ipv_6_addresses_per_interface # The maximum number of IPv6 addresses per network interface. # @return [Integer] # # @!attribute [rw] ipv_6_supported # Indicates whether IPv6 is supported. # @return [Boolean] # # @!attribute [rw] ena_support # Indicates whether Elastic Network Adapter (ENA) is supported. # @return [String] # # @!attribute [rw] efa_supported # Indicates whether Elastic Fabric Adapter (EFA) is supported. # @return [Boolean] # # @!attribute [rw] efa_info # Describes the Elastic Fabric Adapters for the instance type. # @return [Types::EfaInfo] # # @!attribute [rw] encryption_in_transit_supported # Indicates whether the instance type automatically encrypts # in-transit traffic between instances. # @return [Boolean] # # @!attribute [rw] ena_srd_supported # 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. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/NetworkInfo AWS API Documentation # class NetworkInfo < Struct.new( :network_performance, :maximum_network_interfaces, :maximum_network_cards, :default_network_card_index, :network_cards, :ipv_4_addresses_per_interface, :ipv_6_addresses_per_interface, :ipv_6_supported, :ena_support, :efa_supported, :efa_info, :encryption_in_transit_supported, :ena_srd_supported) SENSITIVE = [] include Aws::Structure end # Describes a Network Access Scope. # # @!attribute [rw] network_insights_access_scope_id # The ID of the Network Access Scope. # @return [String] # # @!attribute [rw] network_insights_access_scope_arn # The Amazon Resource Name (ARN) of the Network Access Scope. # @return [String] # # @!attribute [rw] created_date # The creation date. # @return [Time] # # @!attribute [rw] updated_date # The last updated date. # @return [Time] # # @!attribute [rw] tags # The tags. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/NetworkInsightsAccessScope AWS API Documentation # class NetworkInsightsAccessScope < Struct.new( :network_insights_access_scope_id, :network_insights_access_scope_arn, :created_date, :updated_date, :tags) SENSITIVE = [] include Aws::Structure end # Describes a Network Access Scope analysis. # # @!attribute [rw] network_insights_access_scope_analysis_id # The ID of the Network Access Scope analysis. # @return [String] # # @!attribute [rw] network_insights_access_scope_analysis_arn # The Amazon Resource Name (ARN) of the Network Access Scope analysis. # @return [String] # # @!attribute [rw] network_insights_access_scope_id # The ID of the Network Access Scope. # @return [String] # # @!attribute [rw] status # The status. # @return [String] # # @!attribute [rw] status_message # The status message. # @return [String] # # @!attribute [rw] warning_message # The warning message. # @return [String] # # @!attribute [rw] start_date # The analysis start date. # @return [Time] # # @!attribute [rw] end_date # The analysis end date. # @return [Time] # # @!attribute [rw] findings_found # Indicates whether there are findings. # @return [String] # # @!attribute [rw] analyzed_eni_count # The number of network interfaces analyzed. # @return [Integer] # # @!attribute [rw] tags # The tags. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/NetworkInsightsAccessScopeAnalysis AWS API Documentation # class NetworkInsightsAccessScopeAnalysis < Struct.new( :network_insights_access_scope_analysis_id, :network_insights_access_scope_analysis_arn, :network_insights_access_scope_id, :status, :status_message, :warning_message, :start_date, :end_date, :findings_found, :analyzed_eni_count, :tags) SENSITIVE = [] include Aws::Structure end # Describes the Network Access Scope content. # # @!attribute [rw] network_insights_access_scope_id # The ID of the Network Access Scope. # @return [String] # # @!attribute [rw] match_paths # The paths to match. # @return [Array] # # @!attribute [rw] exclude_paths # The paths to exclude. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/NetworkInsightsAccessScopeContent AWS API Documentation # class NetworkInsightsAccessScopeContent < Struct.new( :network_insights_access_scope_id, :match_paths, :exclude_paths) SENSITIVE = [] include Aws::Structure end # Describes a network insights analysis. # # @!attribute [rw] network_insights_analysis_id # The ID of the network insights analysis. # @return [String] # # @!attribute [rw] network_insights_analysis_arn # The Amazon Resource Name (ARN) of the network insights analysis. # @return [String] # # @!attribute [rw] network_insights_path_id # The ID of the path. # @return [String] # # @!attribute [rw] additional_accounts # The member accounts that contain resources that the path can # traverse. # @return [Array] # # @!attribute [rw] filter_in_arns # The Amazon Resource Names (ARN) of the resources that the path must # traverse. # @return [Array] # # @!attribute [rw] start_date # The time the analysis started. # @return [Time] # # @!attribute [rw] status # The status of the network insights analysis. # @return [String] # # @!attribute [rw] status_message # The status message, if the status is `failed`. # @return [String] # # @!attribute [rw] warning_message # The warning message. # @return [String] # # @!attribute [rw] network_path_found # Indicates whether the destination is reachable from the source. # @return [Boolean] # # @!attribute [rw] forward_path_components # The components in the path from source to destination. # @return [Array] # # @!attribute [rw] return_path_components # The components in the path from destination to source. # @return [Array] # # @!attribute [rw] explanations # The explanations. For more information, see [Reachability Analyzer # explanation codes][1]. # # # # [1]: https://docs.aws.amazon.com/vpc/latest/reachability/explanation-codes.html # @return [Array] # # @!attribute [rw] alternate_path_hints # Potential intermediate components. # @return [Array] # # @!attribute [rw] suggested_accounts # Potential intermediate accounts. # @return [Array] # # @!attribute [rw] tags # The tags. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/NetworkInsightsAnalysis AWS API Documentation # class NetworkInsightsAnalysis < Struct.new( :network_insights_analysis_id, :network_insights_analysis_arn, :network_insights_path_id, :additional_accounts, :filter_in_arns, :start_date, :status, :status_message, :warning_message, :network_path_found, :forward_path_components, :return_path_components, :explanations, :alternate_path_hints, :suggested_accounts, :tags) SENSITIVE = [] include Aws::Structure end # Describes a path. # # @!attribute [rw] network_insights_path_id # The ID of the path. # @return [String] # # @!attribute [rw] network_insights_path_arn # The Amazon Resource Name (ARN) of the path. # @return [String] # # @!attribute [rw] created_date # The time stamp when the path was created. # @return [Time] # # @!attribute [rw] source # The ID of the source. # @return [String] # # @!attribute [rw] destination # The ID of the destination. # @return [String] # # @!attribute [rw] source_arn # The Amazon Resource Name (ARN) of the source. # @return [String] # # @!attribute [rw] destination_arn # The Amazon Resource Name (ARN) of the destination. # @return [String] # # @!attribute [rw] source_ip # The IP address of the source. # @return [String] # # @!attribute [rw] destination_ip # The IP address of the destination. # @return [String] # # @!attribute [rw] protocol # The protocol. # @return [String] # # @!attribute [rw] destination_port # The destination port. # @return [Integer] # # @!attribute [rw] tags # The tags associated with the path. # @return [Array] # # @!attribute [rw] filter_at_source # Scopes the analysis to network paths that match specific filters at # the source. # @return [Types::PathFilter] # # @!attribute [rw] filter_at_destination # Scopes the analysis to network paths that match specific filters at # the destination. # @return [Types::PathFilter] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/NetworkInsightsPath AWS API Documentation # class NetworkInsightsPath < Struct.new( :network_insights_path_id, :network_insights_path_arn, :created_date, :source, :destination, :source_arn, :destination_arn, :source_ip, :destination_ip, :protocol, :destination_port, :tags, :filter_at_source, :filter_at_destination) SENSITIVE = [] include Aws::Structure end # Describes a network interface. # # @!attribute [rw] association # The association information for an Elastic IP address (IPv4) # associated with the network interface. # @return [Types::NetworkInterfaceAssociation] # # @!attribute [rw] attachment # The network interface attachment. # @return [Types::NetworkInterfaceAttachment] # # @!attribute [rw] availability_zone # The Availability Zone. # @return [String] # # @!attribute [rw] connection_tracking_configuration # 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][1] in the *Amazon Elastic Compute Cloud User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/security-group-connection-tracking.html#connection-tracking-timeouts # @return [Types::ConnectionTrackingConfiguration] # # @!attribute [rw] description # A description. # @return [String] # # @!attribute [rw] groups # Any security groups for the network interface. # @return [Array] # # @!attribute [rw] interface_type # The type of network interface. # @return [String] # # @!attribute [rw] ipv_6_addresses # The IPv6 addresses associated with the network interface. # @return [Array] # # @!attribute [rw] mac_address # The MAC address. # @return [String] # # @!attribute [rw] network_interface_id # The ID of the network interface. # @return [String] # # @!attribute [rw] outpost_arn # The Amazon Resource Name (ARN) of the Outpost. # @return [String] # # @!attribute [rw] owner_id # The Amazon Web Services account ID of the owner of the network # interface. # @return [String] # # @!attribute [rw] private_dns_name # The private DNS name. # @return [String] # # @!attribute [rw] private_ip_address # The IPv4 address of the network interface within the subnet. # @return [String] # # @!attribute [rw] private_ip_addresses # The private IPv4 addresses associated with the network interface. # @return [Array] # # @!attribute [rw] ipv_4_prefixes # The IPv4 prefixes that are assigned to the network interface. # @return [Array] # # @!attribute [rw] ipv_6_prefixes # The IPv6 prefixes that are assigned to the network interface. # @return [Array] # # @!attribute [rw] requester_id # The alias or Amazon Web Services account ID of the principal or # service that created the network interface. # @return [String] # # @!attribute [rw] requester_managed # Indicates whether the network interface is being managed by Amazon # Web Services. # @return [Boolean] # # @!attribute [rw] source_dest_check # Indicates whether source/destination checking is enabled. # @return [Boolean] # # @!attribute [rw] status # The status of the network interface. # @return [String] # # @!attribute [rw] subnet_id # The ID of the subnet. # @return [String] # # @!attribute [rw] tag_set # Any tags assigned to the network interface. # @return [Array] # # @!attribute [rw] vpc_id # The ID of the VPC. # @return [String] # # @!attribute [rw] deny_all_igw_traffic # 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. # @return [Boolean] # # @!attribute [rw] ipv_6_native # Indicates whether this is an IPv6 only network interface. # @return [Boolean] # # @!attribute [rw] ipv_6_address # The IPv6 globally unique address associated with the network # interface. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/NetworkInterface AWS API Documentation # class NetworkInterface < Struct.new( :association, :attachment, :availability_zone, :connection_tracking_configuration, :description, :groups, :interface_type, :ipv_6_addresses, :mac_address, :network_interface_id, :outpost_arn, :owner_id, :private_dns_name, :private_ip_address, :private_ip_addresses, :ipv_4_prefixes, :ipv_6_prefixes, :requester_id, :requester_managed, :source_dest_check, :status, :subnet_id, :tag_set, :vpc_id, :deny_all_igw_traffic, :ipv_6_native, :ipv_6_address) SENSITIVE = [] include Aws::Structure end # 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). # # @!attribute [rw] allocation_id # The allocation ID. # @return [String] # # @!attribute [rw] association_id # The association ID. # @return [String] # # @!attribute [rw] ip_owner_id # The ID of the Elastic IP address owner. # @return [String] # # @!attribute [rw] public_dns_name # The public DNS name. # @return [String] # # @!attribute [rw] public_ip # The address of the Elastic IP address bound to the network # interface. # @return [String] # # @!attribute [rw] customer_owned_ip # The customer-owned IP address associated with the network interface. # @return [String] # # @!attribute [rw] carrier_ip # 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. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/NetworkInterfaceAssociation AWS API Documentation # class NetworkInterfaceAssociation < Struct.new( :allocation_id, :association_id, :ip_owner_id, :public_dns_name, :public_ip, :customer_owned_ip, :carrier_ip) SENSITIVE = [] include Aws::Structure end # Describes a network interface attachment. # # @!attribute [rw] attach_time # The timestamp indicating when the attachment initiated. # @return [Time] # # @!attribute [rw] attachment_id # The ID of the network interface attachment. # @return [String] # # @!attribute [rw] delete_on_termination # Indicates whether the network interface is deleted when the instance # is terminated. # @return [Boolean] # # @!attribute [rw] device_index # The device index of the network interface attachment on the # instance. # @return [Integer] # # @!attribute [rw] network_card_index # The index of the network card. # @return [Integer] # # @!attribute [rw] instance_id # The ID of the instance. # @return [String] # # @!attribute [rw] instance_owner_id # The Amazon Web Services account ID of the owner of the instance. # @return [String] # # @!attribute [rw] status # The attachment state. # @return [String] # # @!attribute [rw] ena_srd_specification # Configures ENA Express for the network interface that this action # attaches to the instance. # @return [Types::AttachmentEnaSrdSpecification] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/NetworkInterfaceAttachment AWS API Documentation # class NetworkInterfaceAttachment < Struct.new( :attach_time, :attachment_id, :delete_on_termination, :device_index, :network_card_index, :instance_id, :instance_owner_id, :status, :ena_srd_specification) SENSITIVE = [] include Aws::Structure end # Describes an attachment change. # # @!attribute [rw] attachment_id # The ID of the network interface attachment. # @return [String] # # @!attribute [rw] delete_on_termination # Indicates whether the network interface is deleted when the instance # is terminated. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/NetworkInterfaceAttachmentChanges AWS API Documentation # class NetworkInterfaceAttachmentChanges < Struct.new( :attachment_id, :delete_on_termination) SENSITIVE = [] include Aws::Structure end # The minimum and maximum number of network interfaces. # # @!attribute [rw] min # The minimum number of network interfaces. If this parameter is not # specified, there is no minimum limit. # @return [Integer] # # @!attribute [rw] max # The maximum number of network interfaces. If this parameter is not # specified, there is no maximum limit. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/NetworkInterfaceCount AWS API Documentation # class NetworkInterfaceCount < Struct.new( :min, :max) SENSITIVE = [] include Aws::Structure end # The minimum and maximum number of network interfaces. # # @!attribute [rw] min # The minimum number of network interfaces. To specify no minimum # limit, omit this parameter. # @return [Integer] # # @!attribute [rw] max # The maximum number of network interfaces. To specify no maximum # limit, omit this parameter. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/NetworkInterfaceCountRequest AWS API Documentation # class NetworkInterfaceCountRequest < Struct.new( :min, :max) SENSITIVE = [] include Aws::Structure end # Describes an IPv6 address associated with a network interface. # # @!attribute [rw] ipv_6_address # The IPv6 address. # @return [String] # # @!attribute [rw] is_primary_ipv_6 # 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][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ModifyNetworkInterfaceAttribute.html # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/NetworkInterfaceIpv6Address AWS API Documentation # class NetworkInterfaceIpv6Address < Struct.new( :ipv_6_address, :is_primary_ipv_6) SENSITIVE = [] include Aws::Structure end # Describes a permission for a network interface. # # @!attribute [rw] network_interface_permission_id # The ID of the network interface permission. # @return [String] # # @!attribute [rw] network_interface_id # The ID of the network interface. # @return [String] # # @!attribute [rw] aws_account_id # The Amazon Web Services account ID. # @return [String] # # @!attribute [rw] aws_service # The Amazon Web Service. # @return [String] # # @!attribute [rw] permission # The type of permission. # @return [String] # # @!attribute [rw] permission_state # Information about the state of the permission. # @return [Types::NetworkInterfacePermissionState] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/NetworkInterfacePermission AWS API Documentation # class NetworkInterfacePermission < Struct.new( :network_interface_permission_id, :network_interface_id, :aws_account_id, :aws_service, :permission, :permission_state) SENSITIVE = [] include Aws::Structure end # Describes the state of a network interface permission. # # @!attribute [rw] state # The state of the permission. # @return [String] # # @!attribute [rw] status_message # A status message, if applicable. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/NetworkInterfacePermissionState AWS API Documentation # class NetworkInterfacePermissionState < Struct.new( :state, :status_message) SENSITIVE = [] include Aws::Structure end # Describes the private IPv4 address of a network interface. # # @!attribute [rw] association # The association information for an Elastic IP address (IPv4) # associated with the network interface. # @return [Types::NetworkInterfaceAssociation] # # @!attribute [rw] primary # Indicates whether this IPv4 address is the primary private IPv4 # address of the network interface. # @return [Boolean] # # @!attribute [rw] private_dns_name # The private DNS name. # @return [String] # # @!attribute [rw] private_ip_address # The private IPv4 address. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/NetworkInterfacePrivateIpAddress AWS API Documentation # class NetworkInterfacePrivateIpAddress < Struct.new( :association, :primary, :private_dns_name, :private_ip_address) SENSITIVE = [] include Aws::Structure end # Describes the cores available to the neuron accelerator. # # @!attribute [rw] count # The number of cores available to the neuron accelerator. # @return [Integer] # # @!attribute [rw] version # The version of the neuron accelerator. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/NeuronDeviceCoreInfo AWS API Documentation # class NeuronDeviceCoreInfo < Struct.new( :count, :version) SENSITIVE = [] include Aws::Structure end # Describes the neuron accelerators for the instance type. # # @!attribute [rw] count # The number of neuron accelerators for the instance type. # @return [Integer] # # @!attribute [rw] name # The name of the neuron accelerator. # @return [String] # # @!attribute [rw] core_info # Describes the cores available to each neuron accelerator. # @return [Types::NeuronDeviceCoreInfo] # # @!attribute [rw] memory_info # Describes the memory available to each neuron accelerator. # @return [Types::NeuronDeviceMemoryInfo] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/NeuronDeviceInfo AWS API Documentation # class NeuronDeviceInfo < Struct.new( :count, :name, :core_info, :memory_info) SENSITIVE = [] include Aws::Structure end # Describes the memory available to the neuron accelerator. # # @!attribute [rw] size_in_mi_b # The size of the memory available to the neuron accelerator, in MiB. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/NeuronDeviceMemoryInfo AWS API Documentation # class NeuronDeviceMemoryInfo < Struct.new( :size_in_mi_b) SENSITIVE = [] include Aws::Structure end # Describes the neuron accelerators for the instance type. # # @!attribute [rw] neuron_devices # Describes the neuron accelerators for the instance type. # @return [Array] # # @!attribute [rw] total_neuron_device_memory_in_mi_b # The total size of the memory for the neuron accelerators for the # instance type, in MiB. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/NeuronInfo AWS API Documentation # class NeuronInfo < Struct.new( :neuron_devices, :total_neuron_device_memory_in_mi_b) SENSITIVE = [] include Aws::Structure end # Describes a DHCP configuration option. # # @!attribute [rw] key # The name of a DHCP option. # @return [String] # # @!attribute [rw] values # The values for the DHCP option. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/NewDhcpConfiguration AWS API Documentation # class NewDhcpConfiguration < Struct.new( :key, :values) SENSITIVE = [] include Aws::Structure end # Describes the supported NitroTPM versions for the instance type. # # @!attribute [rw] supported_versions # Indicates the supported NitroTPM versions. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/NitroTpmInfo AWS API Documentation # class NitroTpmInfo < Struct.new( :supported_versions) SENSITIVE = [] include Aws::Structure end # Describes the options for an OpenID Connect-compatible user-identity # trust provider. # # @!attribute [rw] issuer # The OIDC issuer. # @return [String] # # @!attribute [rw] authorization_endpoint # The OIDC authorization endpoint. # @return [String] # # @!attribute [rw] token_endpoint # The OIDC token endpoint. # @return [String] # # @!attribute [rw] user_info_endpoint # The OIDC user info endpoint. # @return [String] # # @!attribute [rw] client_id # The client identifier. # @return [String] # # @!attribute [rw] client_secret # The client secret. # @return [String] # # @!attribute [rw] scope # The OpenID Connect (OIDC) scope specified. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/OidcOptions AWS API Documentation # class OidcOptions < Struct.new( :issuer, :authorization_endpoint, :token_endpoint, :user_info_endpoint, :client_id, :client_secret, :scope) SENSITIVE = [:client_secret] include Aws::Structure end # Describes the configuration of On-Demand Instances in an EC2 Fleet. # # @!attribute [rw] allocation_strategy # 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` # @return [String] # # @!attribute [rw] capacity_reservation_options # The strategy for using unused Capacity Reservations for fulfilling # On-Demand capacity. # # Supported only for fleets of type `instant`. # @return [Types::CapacityReservationOptions] # # @!attribute [rw] single_instance_type # 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`. # @return [Boolean] # # @!attribute [rw] single_availability_zone # Indicates that the fleet launches all On-Demand Instances into a # single Availability Zone. # # Supported only for fleets of type `instant`. # @return [Boolean] # # @!attribute [rw] min_target_capacity # The minimum target capacity for On-Demand Instances in the fleet. If # the minimum target capacity is not reached, the fleet launches no # instances. # # Supported only for fleets of type `instant`. # # At least one of the following must be specified: # `SingleAvailabilityZone` \| `SingleInstanceType` # @return [Integer] # # @!attribute [rw] max_total_price # 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][1] in the *EC2 User Guide*. # # # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances-unlimited-mode-concepts.html#unlimited-mode-surplus-credits # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/OnDemandOptions AWS API Documentation # class OnDemandOptions < Struct.new( :allocation_strategy, :capacity_reservation_options, :single_instance_type, :single_availability_zone, :min_target_capacity, :max_total_price) SENSITIVE = [] include Aws::Structure end # Describes the configuration of On-Demand Instances in an EC2 Fleet. # # @!attribute [rw] allocation_strategy # 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` # @return [String] # # @!attribute [rw] capacity_reservation_options # The strategy for using unused Capacity Reservations for fulfilling # On-Demand capacity. # # Supported only for fleets of type `instant`. # @return [Types::CapacityReservationOptionsRequest] # # @!attribute [rw] single_instance_type # 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`. # @return [Boolean] # # @!attribute [rw] single_availability_zone # Indicates that the fleet launches all On-Demand Instances into a # single Availability Zone. # # Supported only for fleets of type `instant`. # @return [Boolean] # # @!attribute [rw] min_target_capacity # The minimum target capacity for On-Demand Instances in the fleet. If # the minimum target capacity is not reached, the fleet launches no # instances. # # Supported only for fleets of type `instant`. # # At least one of the following must be specified: # `SingleAvailabilityZone` \| `SingleInstanceType` # @return [Integer] # # @!attribute [rw] max_total_price # 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][1] in the *EC2 User Guide*. # # # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances-unlimited-mode-concepts.html#unlimited-mode-surplus-credits # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/OnDemandOptionsRequest AWS API Documentation # class OnDemandOptionsRequest < Struct.new( :allocation_strategy, :capacity_reservation_options, :single_instance_type, :single_availability_zone, :min_target_capacity, :max_total_price) SENSITIVE = [] include Aws::Structure end # Describes a packet header statement. # # @!attribute [rw] source_addresses # The source addresses. # @return [Array] # # @!attribute [rw] destination_addresses # The destination addresses. # @return [Array] # # @!attribute [rw] source_ports # The source ports. # @return [Array] # # @!attribute [rw] destination_ports # The destination ports. # @return [Array] # # @!attribute [rw] source_prefix_lists # The source prefix lists. # @return [Array] # # @!attribute [rw] destination_prefix_lists # The destination prefix lists. # @return [Array] # # @!attribute [rw] protocols # The protocols. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PacketHeaderStatement AWS API Documentation # class PacketHeaderStatement < Struct.new( :source_addresses, :destination_addresses, :source_ports, :destination_ports, :source_prefix_lists, :destination_prefix_lists, :protocols) SENSITIVE = [] include Aws::Structure end # Describes a packet header statement. # # @!attribute [rw] source_addresses # The source addresses. # @return [Array] # # @!attribute [rw] destination_addresses # The destination addresses. # @return [Array] # # @!attribute [rw] source_ports # The source ports. # @return [Array] # # @!attribute [rw] destination_ports # The destination ports. # @return [Array] # # @!attribute [rw] source_prefix_lists # The source prefix lists. # @return [Array] # # @!attribute [rw] destination_prefix_lists # The destination prefix lists. # @return [Array] # # @!attribute [rw] protocols # The protocols. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PacketHeaderStatementRequest AWS API Documentation # class PacketHeaderStatementRequest < Struct.new( :source_addresses, :destination_addresses, :source_ports, :destination_ports, :source_prefix_lists, :destination_prefix_lists, :protocols) SENSITIVE = [] include Aws::Structure end # Describes a path component. # # @!attribute [rw] sequence_number # The sequence number. # @return [Integer] # # @!attribute [rw] acl_rule # The network ACL rule. # @return [Types::AnalysisAclRule] # # @!attribute [rw] attached_to # The resource to which the path component is attached. # @return [Types::AnalysisComponent] # # @!attribute [rw] component # The component. # @return [Types::AnalysisComponent] # # @!attribute [rw] destination_vpc # The destination VPC. # @return [Types::AnalysisComponent] # # @!attribute [rw] outbound_header # The outbound header. # @return [Types::AnalysisPacketHeader] # # @!attribute [rw] inbound_header # The inbound header. # @return [Types::AnalysisPacketHeader] # # @!attribute [rw] route_table_route # The route table route. # @return [Types::AnalysisRouteTableRoute] # # @!attribute [rw] security_group_rule # The security group rule. # @return [Types::AnalysisSecurityGroupRule] # # @!attribute [rw] source_vpc # The source VPC. # @return [Types::AnalysisComponent] # # @!attribute [rw] subnet # The subnet. # @return [Types::AnalysisComponent] # # @!attribute [rw] vpc # The component VPC. # @return [Types::AnalysisComponent] # # @!attribute [rw] additional_details # The additional details. # @return [Array] # # @!attribute [rw] transit_gateway # The transit gateway. # @return [Types::AnalysisComponent] # # @!attribute [rw] transit_gateway_route_table_route # The route in a transit gateway route table. # @return [Types::TransitGatewayRouteTableRoute] # # @!attribute [rw] explanations # The explanation codes. # @return [Array] # # @!attribute [rw] elastic_load_balancer_listener # The load balancer listener. # @return [Types::AnalysisComponent] # # @!attribute [rw] firewall_stateless_rule # The Network Firewall stateless rule. # @return [Types::FirewallStatelessRule] # # @!attribute [rw] firewall_stateful_rule # The Network Firewall stateful rule. # @return [Types::FirewallStatefulRule] # # @!attribute [rw] service_name # The name of the VPC endpoint service. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PathComponent AWS API Documentation # class PathComponent < Struct.new( :sequence_number, :acl_rule, :attached_to, :component, :destination_vpc, :outbound_header, :inbound_header, :route_table_route, :security_group_rule, :source_vpc, :subnet, :vpc, :additional_details, :transit_gateway, :transit_gateway_route_table_route, :explanations, :elastic_load_balancer_listener, :firewall_stateless_rule, :firewall_stateful_rule, :service_name) SENSITIVE = [] include Aws::Structure end # Describes a set of filters for a path analysis. Use path filters to # scope the analysis when there can be multiple resulting paths. # # @!attribute [rw] source_address # The source IPv4 address. # @return [String] # # @!attribute [rw] source_port_range # The source port range. # @return [Types::FilterPortRange] # # @!attribute [rw] destination_address # The destination IPv4 address. # @return [String] # # @!attribute [rw] destination_port_range # The destination port range. # @return [Types::FilterPortRange] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PathFilter AWS API Documentation # class PathFilter < Struct.new( :source_address, :source_port_range, :destination_address, :destination_port_range) SENSITIVE = [] include Aws::Structure end # Describes a set of filters for a path analysis. Use path filters to # scope the analysis when there can be multiple resulting paths. # # @!attribute [rw] source_address # The source IPv4 address. # @return [String] # # @!attribute [rw] source_port_range # The source port range. # @return [Types::RequestFilterPortRange] # # @!attribute [rw] destination_address # The destination IPv4 address. # @return [String] # # @!attribute [rw] destination_port_range # The destination port range. # @return [Types::RequestFilterPortRange] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PathRequestFilter AWS API Documentation # class PathRequestFilter < Struct.new( :source_address, :source_port_range, :destination_address, :destination_port_range) SENSITIVE = [] include Aws::Structure end # Describes a path statement. # # @!attribute [rw] packet_header_statement # The packet header statement. # @return [Types::PacketHeaderStatement] # # @!attribute [rw] resource_statement # The resource statement. # @return [Types::ResourceStatement] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PathStatement AWS API Documentation # class PathStatement < Struct.new( :packet_header_statement, :resource_statement) SENSITIVE = [] include Aws::Structure end # Describes a path statement. # # @!attribute [rw] packet_header_statement # The packet header statement. # @return [Types::PacketHeaderStatementRequest] # # @!attribute [rw] resource_statement # The resource statement. # @return [Types::ResourceStatementRequest] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PathStatementRequest AWS API Documentation # class PathStatementRequest < Struct.new( :packet_header_statement, :resource_statement) SENSITIVE = [] include Aws::Structure end # Describes the data that identifies an Amazon FPGA image (AFI) on the # PCI bus. # # @!attribute [rw] device_id # The ID of the device. # @return [String] # # @!attribute [rw] vendor_id # The ID of the vendor. # @return [String] # # @!attribute [rw] subsystem_id # The ID of the subsystem. # @return [String] # # @!attribute [rw] subsystem_vendor_id # The ID of the vendor for the subsystem. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PciId AWS API Documentation # class PciId < Struct.new( :device_id, :vendor_id, :subsystem_id, :subsystem_vendor_id) SENSITIVE = [] include Aws::Structure end # The status of the transit gateway peering attachment. # # @!attribute [rw] code # The status code. # @return [String] # # @!attribute [rw] message # The status message, if applicable. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PeeringAttachmentStatus AWS API Documentation # class PeeringAttachmentStatus < Struct.new( :code, :message) SENSITIVE = [] include Aws::Structure end # Describes the VPC peering connection options. # # @!attribute [rw] allow_dns_resolution_from_remote_vpc # 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. # @return [Boolean] # # @!attribute [rw] allow_egress_from_local_classic_link_to_remote_vpc # Deprecated. # @return [Boolean] # # @!attribute [rw] allow_egress_from_local_vpc_to_remote_classic_link # Deprecated. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PeeringConnectionOptions AWS API Documentation # class PeeringConnectionOptions < Struct.new( :allow_dns_resolution_from_remote_vpc, :allow_egress_from_local_classic_link_to_remote_vpc, :allow_egress_from_local_vpc_to_remote_classic_link) SENSITIVE = [] include Aws::Structure end # The VPC peering connection options. # # @!attribute [rw] allow_dns_resolution_from_remote_vpc # If true, enables a local VPC to resolve public DNS hostnames to # private IP addresses when queried from instances in the peer VPC. # @return [Boolean] # # @!attribute [rw] allow_egress_from_local_classic_link_to_remote_vpc # Deprecated. # @return [Boolean] # # @!attribute [rw] allow_egress_from_local_vpc_to_remote_classic_link # Deprecated. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PeeringConnectionOptionsRequest AWS API Documentation # class PeeringConnectionOptionsRequest < Struct.new( :allow_dns_resolution_from_remote_vpc, :allow_egress_from_local_classic_link_to_remote_vpc, :allow_egress_from_local_vpc_to_remote_classic_link) SENSITIVE = [] include Aws::Structure end # Information about the transit gateway in the peering attachment. # # @!attribute [rw] transit_gateway_id # The ID of the transit gateway. # @return [String] # # @!attribute [rw] core_network_id # The ID of the core network where the transit gateway peer is # located. # @return [String] # # @!attribute [rw] owner_id # The ID of the Amazon Web Services account that owns the transit # gateway. # @return [String] # # @!attribute [rw] region # The Region of the transit gateway. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PeeringTgwInfo AWS API Documentation # class PeeringTgwInfo < Struct.new( :transit_gateway_id, :core_network_id, :owner_id, :region) SENSITIVE = [] include Aws::Structure end # The Diffie-Hellmann group number for phase 1 IKE negotiations. # # @!attribute [rw] value # The Diffie-Hellmann group number. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Phase1DHGroupNumbersListValue AWS API Documentation # class Phase1DHGroupNumbersListValue < Struct.new( :value) SENSITIVE = [] include Aws::Structure end # Specifies a Diffie-Hellman group number for the VPN tunnel for phase 1 # IKE negotiations. # # @!attribute [rw] value # The Diffie-Hellmann group number. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Phase1DHGroupNumbersRequestListValue AWS API Documentation # class Phase1DHGroupNumbersRequestListValue < Struct.new( :value) SENSITIVE = [] include Aws::Structure end # The encryption algorithm for phase 1 IKE negotiations. # # @!attribute [rw] value # The value for the encryption algorithm. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Phase1EncryptionAlgorithmsListValue AWS API Documentation # class Phase1EncryptionAlgorithmsListValue < Struct.new( :value) SENSITIVE = [] include Aws::Structure end # Specifies the encryption algorithm for the VPN tunnel for phase 1 IKE # negotiations. # # @!attribute [rw] value # The value for the encryption algorithm. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Phase1EncryptionAlgorithmsRequestListValue AWS API Documentation # class Phase1EncryptionAlgorithmsRequestListValue < Struct.new( :value) SENSITIVE = [] include Aws::Structure end # The integrity algorithm for phase 1 IKE negotiations. # # @!attribute [rw] value # The value for the integrity algorithm. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Phase1IntegrityAlgorithmsListValue AWS API Documentation # class Phase1IntegrityAlgorithmsListValue < Struct.new( :value) SENSITIVE = [] include Aws::Structure end # Specifies the integrity algorithm for the VPN tunnel for phase 1 IKE # negotiations. # # @!attribute [rw] value # The value for the integrity algorithm. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Phase1IntegrityAlgorithmsRequestListValue AWS API Documentation # class Phase1IntegrityAlgorithmsRequestListValue < Struct.new( :value) SENSITIVE = [] include Aws::Structure end # The Diffie-Hellmann group number for phase 2 IKE negotiations. # # @!attribute [rw] value # The Diffie-Hellmann group number. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Phase2DHGroupNumbersListValue AWS API Documentation # class Phase2DHGroupNumbersListValue < Struct.new( :value) SENSITIVE = [] include Aws::Structure end # Specifies a Diffie-Hellman group number for the VPN tunnel for phase 2 # IKE negotiations. # # @!attribute [rw] value # The Diffie-Hellmann group number. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Phase2DHGroupNumbersRequestListValue AWS API Documentation # class Phase2DHGroupNumbersRequestListValue < Struct.new( :value) SENSITIVE = [] include Aws::Structure end # The encryption algorithm for phase 2 IKE negotiations. # # @!attribute [rw] value # The encryption algorithm. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Phase2EncryptionAlgorithmsListValue AWS API Documentation # class Phase2EncryptionAlgorithmsListValue < Struct.new( :value) SENSITIVE = [] include Aws::Structure end # Specifies the encryption algorithm for the VPN tunnel for phase 2 IKE # negotiations. # # @!attribute [rw] value # The encryption algorithm. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Phase2EncryptionAlgorithmsRequestListValue AWS API Documentation # class Phase2EncryptionAlgorithmsRequestListValue < Struct.new( :value) SENSITIVE = [] include Aws::Structure end # The integrity algorithm for phase 2 IKE negotiations. # # @!attribute [rw] value # The integrity algorithm. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Phase2IntegrityAlgorithmsListValue AWS API Documentation # class Phase2IntegrityAlgorithmsListValue < Struct.new( :value) SENSITIVE = [] include Aws::Structure end # Specifies the integrity algorithm for the VPN tunnel for phase 2 IKE # negotiations. # # @!attribute [rw] value # The integrity algorithm. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Phase2IntegrityAlgorithmsRequestListValue AWS API Documentation # class Phase2IntegrityAlgorithmsRequestListValue < Struct.new( :value) SENSITIVE = [] include Aws::Structure end # Describes the placement of an instance. # # @!attribute [rw] availability_zone # 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][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateFleet # @return [String] # # @!attribute [rw] affinity # The affinity setting for the instance on the Dedicated Host. # # This parameter is not supported for [CreateFleet][1] or # [ImportInstance][2]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateFleet # [2]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ImportInstance.html # @return [String] # # @!attribute [rw] group_name # The name of the placement group that the instance is in. If you # specify `GroupName`, you can't specify `GroupId`. # @return [String] # # @!attribute [rw] partition_number # 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][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateFleet # @return [Integer] # # @!attribute [rw] host_id # The ID of the Dedicated Host on which the instance resides. # # This parameter is not supported for [CreateFleet][1] or # [ImportInstance][2]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateFleet # [2]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ImportInstance.html # @return [String] # # @!attribute [rw] tenancy # The tenancy of the instance. An instance with a tenancy of # `dedicated` runs on single-tenant hardware. # # This parameter is not supported for [CreateFleet][1]. The `host` # tenancy is not supported for [ImportInstance][2] or for T3 instances # that are configured for the `unlimited` CPU credit option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateFleet # [2]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ImportInstance.html # @return [String] # # @!attribute [rw] spread_domain # Reserved for future use. # @return [String] # # @!attribute [rw] host_resource_group_arn # 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][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateFleet # @return [String] # # @!attribute [rw] group_id # The ID of the placement group that the instance is in. If you # specify `GroupId`, you can't specify `GroupName`. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Placement AWS API Documentation # class Placement < Struct.new( :availability_zone, :affinity, :group_name, :partition_number, :host_id, :tenancy, :spread_domain, :host_resource_group_arn, :group_id) SENSITIVE = [] include Aws::Structure end # Describes a placement group. # # @!attribute [rw] group_name # The name of the placement group. # @return [String] # # @!attribute [rw] state # The state of the placement group. # @return [String] # # @!attribute [rw] strategy # The placement strategy. # @return [String] # # @!attribute [rw] partition_count # The number of partitions. Valid only if **strategy** is set to # `partition`. # @return [Integer] # # @!attribute [rw] group_id # The ID of the placement group. # @return [String] # # @!attribute [rw] tags # Any tags applied to the placement group. # @return [Array] # # @!attribute [rw] group_arn # The Amazon Resource Name (ARN) of the placement group. # @return [String] # # @!attribute [rw] spread_level # The spread level for the placement group. *Only* Outpost placement # groups can be spread across hosts. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PlacementGroup AWS API Documentation # class PlacementGroup < Struct.new( :group_name, :state, :strategy, :partition_count, :group_id, :tags, :group_arn, :spread_level) SENSITIVE = [] include Aws::Structure end # Describes the placement group support of the instance type. # # @!attribute [rw] supported_strategies # The supported placement group types. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PlacementGroupInfo AWS API Documentation # class PlacementGroupInfo < Struct.new( :supported_strategies) SENSITIVE = [] include Aws::Structure end # Describes the placement of an instance. # # @!attribute [rw] group_name # The name of the placement group that the instance is in. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PlacementResponse AWS API Documentation # class PlacementResponse < Struct.new( :group_name) SENSITIVE = [] include Aws::Structure end # Describes a CIDR block for an address pool. # # @!attribute [rw] cidr # The CIDR block. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PoolCidrBlock AWS API Documentation # class PoolCidrBlock < Struct.new( :cidr) SENSITIVE = [] include Aws::Structure end # Describes a range of ports. # # @!attribute [rw] from # The first port in the range. # @return [Integer] # # @!attribute [rw] to # The last port in the range. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PortRange AWS API Documentation # class PortRange < Struct.new( :from, :to) SENSITIVE = [] include Aws::Structure end # Describes prefixes for Amazon Web Services services. # # @!attribute [rw] cidrs # The IP address range of the Amazon Web Service. # @return [Array] # # @!attribute [rw] prefix_list_id # The ID of the prefix. # @return [String] # # @!attribute [rw] prefix_list_name # The name of the prefix. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PrefixList AWS API Documentation # class PrefixList < Struct.new( :cidrs, :prefix_list_id, :prefix_list_name) SENSITIVE = [] include Aws::Structure end # Describes the resource with which a prefix list is associated. # # @!attribute [rw] resource_id # The ID of the resource. # @return [String] # # @!attribute [rw] resource_owner # The owner of the resource. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PrefixListAssociation AWS API Documentation # class PrefixListAssociation < Struct.new( :resource_id, :resource_owner) SENSITIVE = [] include Aws::Structure end # Describes a prefix list entry. # # @!attribute [rw] cidr # The CIDR block. # @return [String] # # @!attribute [rw] description # The description. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PrefixListEntry AWS API Documentation # class PrefixListEntry < Struct.new( :cidr, :description) SENSITIVE = [] include Aws::Structure end # Describes a prefix list ID. # # @!attribute [rw] description # 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 .\_-:/()#,@\[\]+=;\\\{\\}!$* # @return [String] # # @!attribute [rw] prefix_list_id # The ID of the prefix. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PrefixListId AWS API Documentation # class PrefixListId < Struct.new( :description, :prefix_list_id) SENSITIVE = [] include Aws::Structure end # Describes the price for a Reserved Instance. # # @!attribute [rw] active # 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. # @return [Boolean] # # @!attribute [rw] currency_code # The currency for transacting the Reserved Instance resale. At this # time, the only supported currency is `USD`. # @return [String] # # @!attribute [rw] price # The fixed price for the term. # @return [Float] # # @!attribute [rw] term # The number of months remaining in the reservation. For example, 2 is # the second to the last month before the capacity reservation # expires. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PriceSchedule AWS API Documentation # class PriceSchedule < Struct.new( :active, :currency_code, :price, :term) SENSITIVE = [] include Aws::Structure end # Describes the price for a Reserved Instance. # # @!attribute [rw] currency_code # The currency for transacting the Reserved Instance resale. At this # time, the only supported currency is `USD`. # @return [String] # # @!attribute [rw] price # The fixed price for the term. # @return [Float] # # @!attribute [rw] term # The number of months remaining in the reservation. For example, 2 is # the second to the last month before the capacity reservation # expires. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PriceScheduleSpecification AWS API Documentation # class PriceScheduleSpecification < Struct.new( :currency_code, :price, :term) SENSITIVE = [] include Aws::Structure end # Describes a Reserved Instance offering. # # @!attribute [rw] count # The number of reservations available for the price. # @return [Integer] # # @!attribute [rw] price # The price per instance. # @return [Float] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PricingDetail AWS API Documentation # class PricingDetail < Struct.new( :count, :price) SENSITIVE = [] include Aws::Structure end # PrincipalIdFormat description # # @!attribute [rw] arn # PrincipalIdFormatARN description # @return [String] # # @!attribute [rw] statuses # PrincipalIdFormatStatuses description # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PrincipalIdFormat AWS API Documentation # class PrincipalIdFormat < Struct.new( :arn, :statuses) SENSITIVE = [] include Aws::Structure end # Information about the Private DNS name for interface endpoints. # # @!attribute [rw] private_dns_name # The private DNS name assigned to the VPC endpoint service. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PrivateDnsDetails AWS API Documentation # class PrivateDnsDetails < Struct.new( :private_dns_name) SENSITIVE = [] include Aws::Structure end # Information about the private DNS name for the service endpoint. # # @!attribute [rw] state # The verification state of the VPC endpoint service. # # >Consumers of the endpoint service can use the private name only # when the state is `verified`. # @return [String] # # @!attribute [rw] type # The endpoint service verification type, for example TXT. # @return [String] # # @!attribute [rw] value # The value the service provider adds to the private DNS name domain # record before verification. # @return [String] # # @!attribute [rw] name # The name of the record subdomain the service provider needs to # create. The service provider adds the `value` text to the `name`. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PrivateDnsNameConfiguration AWS API Documentation # class PrivateDnsNameConfiguration < Struct.new( :state, :type, :value, :name) SENSITIVE = [] include Aws::Structure end # Describes the options for instance hostnames. # # @!attribute [rw] hostname_type # 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. # @return [String] # # @!attribute [rw] enable_resource_name_dns_a_record # Indicates whether to respond to DNS queries for instance hostnames # with DNS A records. # @return [Boolean] # # @!attribute [rw] enable_resource_name_dns_aaaa_record # Indicates whether to respond to DNS queries for instance hostname # with DNS AAAA records. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PrivateDnsNameOptionsOnLaunch AWS API Documentation # class PrivateDnsNameOptionsOnLaunch < Struct.new( :hostname_type, :enable_resource_name_dns_a_record, :enable_resource_name_dns_aaaa_record) SENSITIVE = [] include Aws::Structure end # Describes the options for instance hostnames. # # @!attribute [rw] hostname_type # 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. # @return [String] # # @!attribute [rw] enable_resource_name_dns_a_record # Indicates whether to respond to DNS queries for instance hostnames # with DNS A records. # @return [Boolean] # # @!attribute [rw] enable_resource_name_dns_aaaa_record # Indicates whether to respond to DNS queries for instance hostnames # with DNS AAAA records. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PrivateDnsNameOptionsRequest AWS API Documentation # class PrivateDnsNameOptionsRequest < Struct.new( :hostname_type, :enable_resource_name_dns_a_record, :enable_resource_name_dns_aaaa_record) SENSITIVE = [] include Aws::Structure end # Describes the options for instance hostnames. # # @!attribute [rw] hostname_type # The type of hostname to assign to an instance. # @return [String] # # @!attribute [rw] enable_resource_name_dns_a_record # Indicates whether to respond to DNS queries for instance hostnames # with DNS A records. # @return [Boolean] # # @!attribute [rw] enable_resource_name_dns_aaaa_record # Indicates whether to respond to DNS queries for instance hostnames # with DNS AAAA records. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PrivateDnsNameOptionsResponse AWS API Documentation # class PrivateDnsNameOptionsResponse < Struct.new( :hostname_type, :enable_resource_name_dns_a_record, :enable_resource_name_dns_aaaa_record) SENSITIVE = [] include Aws::Structure end # Describes a secondary private IPv4 address for a network interface. # # @!attribute [rw] primary # Indicates whether the private IPv4 address is the primary private # IPv4 address. Only one IPv4 address can be designated as primary. # @return [Boolean] # # @!attribute [rw] private_ip_address # The private IPv4 address. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PrivateIpAddressSpecification AWS API Documentation # class PrivateIpAddressSpecification < Struct.new( :primary, :private_ip_address) SENSITIVE = [] include Aws::Structure end # Describes the processor used by the instance type. # # @!attribute [rw] supported_architectures # The architectures supported by the instance type. # @return [Array] # # @!attribute [rw] sustained_clock_speed_in_ghz # The speed of the processor, in GHz. # @return [Float] # # @!attribute [rw] supported_features # 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][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/sev-snp.html # @return [Array] # # @!attribute [rw] manufacturer # The manufacturer of the processor. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ProcessorInfo AWS API Documentation # class ProcessorInfo < Struct.new( :supported_architectures, :sustained_clock_speed_in_ghz, :supported_features, :manufacturer) SENSITIVE = [] include Aws::Structure end # Describes a product code. # # @!attribute [rw] product_code_id # The product code. # @return [String] # # @!attribute [rw] product_code_type # The type of product code. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ProductCode AWS API Documentation # class ProductCode < Struct.new( :product_code_id, :product_code_type) SENSITIVE = [] include Aws::Structure end # Describes a virtual private gateway propagating route. # # @!attribute [rw] gateway_id # The ID of the virtual private gateway. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PropagatingVgw AWS API Documentation # class PropagatingVgw < Struct.new( :gateway_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cidr # The public IPv4 or IPv6 address range, in CIDR notation. The most # specific IPv4 prefix that you can specify is /24. The most specific # IPv6 address range that you can bring is /48 for CIDRs that are # publicly advertisable and /56 for CIDRs that are not publicly # advertisable. The address range cannot overlap with another address # range that you've brought to this or another Region. # @return [String] # # @!attribute [rw] cidr_authorization_context # A signed document that proves that you are authorized to bring the # specified IP address range to Amazon using BYOIP. # @return [Types::CidrAuthorizationContext] # # @!attribute [rw] publicly_advertisable # (IPv6 only) Indicate whether the address range will be publicly # advertised to the internet. # # Default: true # @return [Boolean] # # @!attribute [rw] description # A description for the address range and the address pool. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] pool_tag_specifications # The tags to apply to the address pool. # @return [Array] # # @!attribute [rw] multi_region # Reserved. # @return [Boolean] # # @!attribute [rw] network_border_group # If you have [Local Zones][1] 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. # # # # # # [1]: https://docs.aws.amazon.com/local-zones/latest/ug/how-local-zones-work.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ProvisionByoipCidrRequest AWS API Documentation # class ProvisionByoipCidrRequest < Struct.new( :cidr, :cidr_authorization_context, :publicly_advertisable, :description, :dry_run, :pool_tag_specifications, :multi_region, :network_border_group) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] byoip_cidr # Information about the address range. # @return [Types::ByoipCidr] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ProvisionByoipCidrResult AWS API Documentation # class ProvisionByoipCidrResult < Struct.new( :byoip_cidr) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] ipam_id # An IPAM ID. # @return [String] # # @!attribute [rw] asn # A public 2-byte or 4-byte ASN. # @return [String] # # @!attribute [rw] asn_authorization_context # An ASN authorization context. # @return [Types::AsnAuthorizationContext] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ProvisionIpamByoasnRequest AWS API Documentation # class ProvisionIpamByoasnRequest < Struct.new( :dry_run, :ipam_id, :asn, :asn_authorization_context) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] byoasn # An ASN and BYOIP CIDR association. # @return [Types::Byoasn] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ProvisionIpamByoasnResult AWS API Documentation # class ProvisionIpamByoasnResult < Struct.new( :byoasn) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # A check for whether you have the required permissions for the action # without actually making the request and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] ipam_pool_id # The ID of the IPAM pool to which you want to assign a CIDR. # @return [String] # # @!attribute [rw] cidr # The CIDR you want to assign to the IPAM pool. Either # "NetmaskLength" or "Cidr" is required. This value will be null # if you specify "NetmaskLength" and will be filled in during the # provisioning process. # @return [String] # # @!attribute [rw] cidr_authorization_context # A signed document that proves that you are authorized to bring a # specified IP address range to Amazon using BYOIP. This option # applies to public pools only. # @return [Types::IpamCidrAuthorizationContext] # # @!attribute [rw] netmask_length # 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. Either # "NetmaskLength" or "Cidr" is required. # @return [Integer] # # @!attribute [rw] client_token # A unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. For more information, see [Ensuring # Idempotency][1]. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ProvisionIpamPoolCidrRequest AWS API Documentation # class ProvisionIpamPoolCidrRequest < Struct.new( :dry_run, :ipam_pool_id, :cidr, :cidr_authorization_context, :netmask_length, :client_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] ipam_pool_cidr # Information about the provisioned CIDR. # @return [Types::IpamPoolCidr] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ProvisionIpamPoolCidrResult AWS API Documentation # class ProvisionIpamPoolCidrResult < Struct.new( :ipam_pool_cidr) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # A check for whether you have the required permissions for the action # without actually making the request and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] ipam_pool_id # The ID of the IPAM pool you would like to use to allocate this CIDR. # @return [String] # # @!attribute [rw] pool_id # The ID of the public IPv4 pool you would like to use for this CIDR. # @return [String] # # @!attribute [rw] netmask_length # The netmask length of the CIDR you would like to allocate to the # public IPv4 pool. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ProvisionPublicIpv4PoolCidrRequest AWS API Documentation # class ProvisionPublicIpv4PoolCidrRequest < Struct.new( :dry_run, :ipam_pool_id, :pool_id, :netmask_length) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] pool_id # The ID of the pool that you want to provision the CIDR to. # @return [String] # # @!attribute [rw] pool_address_range # Information about the address range of the public IPv4 pool. # @return [Types::PublicIpv4PoolRange] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ProvisionPublicIpv4PoolCidrResult AWS API Documentation # class ProvisionPublicIpv4PoolCidrResult < Struct.new( :pool_id, :pool_address_range) SENSITIVE = [] include Aws::Structure end # Reserved. If you need to sustain traffic greater than the [documented # limits][1], contact us through the [Support Center][2]. # # # # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html # [2]: https://console.aws.amazon.com/support/home? # # @!attribute [rw] provision_time # Reserved. If you need to sustain traffic greater than the # [documented limits][1], contact us through the [Support Center][2]. # # # # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html # [2]: https://console.aws.amazon.com/support/home? # @return [Time] # # @!attribute [rw] provisioned # Reserved. If you need to sustain traffic greater than the # [documented limits][1], contact us through the [Support Center][2]. # # # # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html # [2]: https://console.aws.amazon.com/support/home? # @return [String] # # @!attribute [rw] request_time # Reserved. If you need to sustain traffic greater than the # [documented limits][1], contact us through the [Support Center][2]. # # # # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html # [2]: https://console.aws.amazon.com/support/home? # @return [Time] # # @!attribute [rw] requested # Reserved. If you need to sustain traffic greater than the # [documented limits][1], contact us through the [Support Center][2]. # # # # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html # [2]: https://console.aws.amazon.com/support/home? # @return [String] # # @!attribute [rw] status # Reserved. If you need to sustain traffic greater than the # [documented limits][1], contact us through the [Support Center][2]. # # # # [1]: https://docs.aws.amazon.com/vpc/latest/userguide/vpc-nat-gateway.html # [2]: https://console.aws.amazon.com/support/home? # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ProvisionedBandwidth AWS API Documentation # class ProvisionedBandwidth < Struct.new( :provision_time, :provisioned, :request_time, :requested, :status) SENSITIVE = [] include Aws::Structure end # The status of an updated pointer (PTR) record for an Elastic IP # address. # # @!attribute [rw] value # The value for the PTR record update. # @return [String] # # @!attribute [rw] status # The status of the PTR record update. # @return [String] # # @!attribute [rw] reason # The reason for the PTR record update. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PtrUpdateStatus AWS API Documentation # class PtrUpdateStatus < Struct.new( :value, :status, :reason) SENSITIVE = [] include Aws::Structure end # Describes an IPv4 address pool. # # @!attribute [rw] pool_id # The ID of the address pool. # @return [String] # # @!attribute [rw] description # A description of the address pool. # @return [String] # # @!attribute [rw] pool_address_ranges # The address ranges. # @return [Array] # # @!attribute [rw] total_address_count # The total number of addresses. # @return [Integer] # # @!attribute [rw] total_available_address_count # The total number of available addresses. # @return [Integer] # # @!attribute [rw] network_border_group # 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. # @return [String] # # @!attribute [rw] tags # Any tags for the address pool. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PublicIpv4Pool AWS API Documentation # class PublicIpv4Pool < Struct.new( :pool_id, :description, :pool_address_ranges, :total_address_count, :total_available_address_count, :network_border_group, :tags) SENSITIVE = [] include Aws::Structure end # Describes an address range of an IPv4 address pool. # # @!attribute [rw] first_address # The first IP address in the range. # @return [String] # # @!attribute [rw] last_address # The last IP address in the range. # @return [String] # # @!attribute [rw] address_count # The number of addresses in the range. # @return [Integer] # # @!attribute [rw] available_address_count # The number of available addresses in the range. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PublicIpv4PoolRange AWS API Documentation # class PublicIpv4PoolRange < Struct.new( :first_address, :last_address, :address_count, :available_address_count) SENSITIVE = [] include Aws::Structure end # Describes the result of the purchase. # # @!attribute [rw] currency_code # The currency in which the `UpfrontPrice` and `HourlyPrice` amounts # are specified. At this time, the only supported currency is `USD`. # @return [String] # # @!attribute [rw] duration # The duration of the reservation's term in seconds. # @return [Integer] # # @!attribute [rw] host_id_set # The IDs of the Dedicated Hosts associated with the reservation. # @return [Array] # # @!attribute [rw] host_reservation_id # The ID of the reservation. # @return [String] # # @!attribute [rw] hourly_price # The hourly price of the reservation per hour. # @return [String] # # @!attribute [rw] instance_family # The instance family on the Dedicated Host that the reservation can # be associated with. # @return [String] # # @!attribute [rw] payment_option # The payment option for the reservation. # @return [String] # # @!attribute [rw] upfront_price # The upfront price of the reservation. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Purchase AWS API Documentation # class Purchase < Struct.new( :currency_code, :duration, :host_id_set, :host_reservation_id, :hourly_price, :instance_family, :payment_option, :upfront_price) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] tag_specifications # The tags to apply to the Capacity Block during launch. # @return [Array] # # @!attribute [rw] capacity_block_offering_id # The ID of the Capacity Block offering. # @return [String] # # @!attribute [rw] instance_platform # The type of operating system for which to reserve capacity. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PurchaseCapacityBlockRequest AWS API Documentation # class PurchaseCapacityBlockRequest < Struct.new( :dry_run, :tag_specifications, :capacity_block_offering_id, :instance_platform) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] capacity_reservation # The Capacity Reservation. # @return [Types::CapacityReservation] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PurchaseCapacityBlockResult AWS API Documentation # class PurchaseCapacityBlockResult < Struct.new( :capacity_reservation) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. For more information, see [Ensuring # Idempotency][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] currency_code # The currency in which the `totalUpfrontPrice`, `LimitPrice`, and # `totalHourlyPrice` amounts are specified. At this time, the only # supported currency is `USD`. # @return [String] # # @!attribute [rw] host_id_set # The IDs of the Dedicated Hosts with which the reservation will be # associated. # @return [Array] # # @!attribute [rw] limit_price # The specified limit is checked against the total upfront cost of the # reservation (calculated as the offering's upfront cost multiplied # by the host count). If the total upfront cost is greater than the # specified price limit, the request fails. This is used to ensure # that the purchase does not exceed the expected upfront cost of the # purchase. At this time, the only supported currency is `USD`. For # example, to indicate a limit price of USD 100, specify 100.00. # @return [String] # # @!attribute [rw] offering_id # The ID of the offering. # @return [String] # # @!attribute [rw] tag_specifications # The tags to apply to the Dedicated Host Reservation during purchase. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PurchaseHostReservationRequest AWS API Documentation # class PurchaseHostReservationRequest < Struct.new( :client_token, :currency_code, :host_id_set, :limit_price, :offering_id, :tag_specifications) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. For more information, see [Ensuring # Idempotency][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] currency_code # The currency in which the `totalUpfrontPrice` and `totalHourlyPrice` # amounts are specified. At this time, the only supported currency is # `USD`. # @return [String] # # @!attribute [rw] purchase # Describes the details of the purchase. # @return [Array] # # @!attribute [rw] total_hourly_price # The total hourly price of the reservation calculated per hour. # @return [String] # # @!attribute [rw] total_upfront_price # The total amount charged to your account when you purchase the # reservation. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PurchaseHostReservationResult AWS API Documentation # class PurchaseHostReservationResult < Struct.new( :client_token, :currency_code, :purchase, :total_hourly_price, :total_upfront_price) SENSITIVE = [] include Aws::Structure end # Describes a request to purchase Scheduled Instances. # # @!attribute [rw] instance_count # The number of instances. # @return [Integer] # # @!attribute [rw] purchase_token # The purchase token. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PurchaseRequest AWS API Documentation # class PurchaseRequest < Struct.new( :instance_count, :purchase_token) SENSITIVE = [] include Aws::Structure end # Contains the parameters for PurchaseReservedInstancesOffering. # # @!attribute [rw] instance_count # The number of Reserved Instances to purchase. # @return [Integer] # # @!attribute [rw] reserved_instances_offering_id # The ID of the Reserved Instance offering to purchase. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] limit_price # Specified for Reserved Instance Marketplace offerings to limit the # total order and ensure that the Reserved Instances are not purchased # at unexpected prices. # @return [Types::ReservedInstanceLimitPrice] # # @!attribute [rw] purchase_time # The time at which to purchase the Reserved Instance, in UTC format # (for example, *YYYY*-*MM*-*DD*T*HH*:*MM*:*SS*Z). # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PurchaseReservedInstancesOfferingRequest AWS API Documentation # class PurchaseReservedInstancesOfferingRequest < Struct.new( :instance_count, :reserved_instances_offering_id, :dry_run, :limit_price, :purchase_time) SENSITIVE = [] include Aws::Structure end # Contains the output of PurchaseReservedInstancesOffering. # # @!attribute [rw] reserved_instances_id # The IDs of the purchased Reserved Instances. If your purchase # crosses into a discounted pricing tier, the final Reserved Instances # IDs might change. For more information, see [Crossing pricing # tiers][1] in the *Amazon Elastic Compute Cloud User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/concepts-reserved-instances-application.html#crossing-pricing-tiers # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PurchaseReservedInstancesOfferingResult AWS API Documentation # class PurchaseReservedInstancesOfferingResult < Struct.new( :reserved_instances_id) SENSITIVE = [] include Aws::Structure end # Contains the parameters for PurchaseScheduledInstances. # # @!attribute [rw] client_token # Unique, case-sensitive identifier that ensures the idempotency of # the request. For more information, see [Ensuring Idempotency][1]. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] purchase_requests # The purchase requests. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PurchaseScheduledInstancesRequest AWS API Documentation # class PurchaseScheduledInstancesRequest < Struct.new( :client_token, :dry_run, :purchase_requests) SENSITIVE = [] include Aws::Structure end # Contains the output of PurchaseScheduledInstances. # # @!attribute [rw] scheduled_instance_set # Information about the Scheduled Instances. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/PurchaseScheduledInstancesResult AWS API Documentation # class PurchaseScheduledInstancesResult < Struct.new( :scheduled_instance_set) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] instance_ids # The instance IDs. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RebootInstancesRequest AWS API Documentation # class RebootInstancesRequest < Struct.new( :instance_ids, :dry_run) SENSITIVE = [] include Aws::Structure end # Describes a recurring charge. # # @!attribute [rw] amount # The amount of the recurring charge. # @return [Float] # # @!attribute [rw] frequency # The frequency of the recurring charge. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RecurringCharge AWS API Documentation # class RecurringCharge < Struct.new( :amount, :frequency) SENSITIVE = [] include Aws::Structure end # Describes the security group that is referenced in the security group # rule. # # @!attribute [rw] group_id # The ID of the security group. # @return [String] # # @!attribute [rw] peering_status # The status of a VPC peering connection, if applicable. # @return [String] # # @!attribute [rw] user_id # The Amazon Web Services account ID. # @return [String] # # @!attribute [rw] vpc_id # The ID of the VPC. # @return [String] # # @!attribute [rw] vpc_peering_connection_id # The ID of the VPC peering connection (if applicable). # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ReferencedSecurityGroup AWS API Documentation # class ReferencedSecurityGroup < Struct.new( :group_id, :peering_status, :user_id, :vpc_id, :vpc_peering_connection_id) SENSITIVE = [] include Aws::Structure end # Describes a Region. # # @!attribute [rw] endpoint # The Region service endpoint. # @return [String] # # @!attribute [rw] region_name # The name of the Region. # @return [String] # # @!attribute [rw] opt_in_status # The Region opt-in status. The possible values are # `opt-in-not-required`, `opted-in`, and `not-opted-in`. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Region AWS API Documentation # class Region < Struct.new( :endpoint, :region_name, :opt_in_status) SENSITIVE = [] include Aws::Structure end # Contains the parameters for RegisterImage. # # @!attribute [rw] image_location # The full path to your AMI manifest in Amazon S3 storage. The # specified bucket must have the `aws-exec-read` canned access control # list (ACL) to ensure that it can be accessed by Amazon EC2. For more # information, see [Canned ACLs][1] in the *Amazon S3 Service # Developer Guide*. # # # # [1]: https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#canned-acl # @return [String] # # @!attribute [rw] architecture # The architecture of the AMI. # # Default: For Amazon EBS-backed AMIs, `i386`. For instance # store-backed AMIs, the architecture specified in the manifest file. # @return [String] # # @!attribute [rw] block_device_mappings # The block device mapping entries. # # If you specify an Amazon EBS volume using the ID of an Amazon EBS # snapshot, you can't specify the encryption state of the volume. # # If you create an AMI on an Outpost, then all backing snapshots must # be on the same Outpost or in the Region of that Outpost. AMIs on an # Outpost that include local snapshots can be used to launch instances # on the same Outpost only. For more information, [Amazon EBS local # snapshots on Outposts][1] in the *Amazon EBS User Guide*. # # # # [1]: https://docs.aws.amazon.com/ebs/latest/userguide/snapshots-outposts.html#ami # @return [Array] # # @!attribute [rw] description # A description for your AMI. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] ena_support # Set to `true` to enable enhanced networking with ENA for the AMI and # any instances that you launch from the AMI. # # This option is supported only for HVM AMIs. Specifying this option # with a PV AMI can make instances launched from the AMI unreachable. # @return [Boolean] # # @!attribute [rw] kernel_id # The ID of the kernel. # @return [String] # # @!attribute [rw] name # A name for your AMI. # # Constraints: 3-128 alphanumeric characters, parentheses (()), square # brackets (\[\]), spaces ( ), periods (.), slashes (/), dashes (-), # single quotes ('), at-signs (@), or underscores(\_) # @return [String] # # @!attribute [rw] billing_products # The billing product codes. Your account must be authorized to # specify billing product codes. # # If your account is not authorized to specify billing product codes, # you can publish AMIs that include billable software and list them on # the Amazon Web Services Marketplace. You must first register as a # seller on the Amazon Web Services Marketplace. For more information, # see [Getting started as a seller][1] and [AMI-based products][2] in # the *Amazon Web Services Marketplace Seller Guide*. # # # # [1]: https://docs.aws.amazon.com/marketplace/latest/userguide/user-guide-for-sellers.html # [2]: https://docs.aws.amazon.com/marketplace/latest/userguide/ami-products.html # @return [Array] # # @!attribute [rw] ramdisk_id # The ID of the RAM disk. # @return [String] # # @!attribute [rw] root_device_name # The device name of the root device volume (for example, # `/dev/sda1`). # @return [String] # # @!attribute [rw] sriov_net_support # Set to `simple` to enable enhanced networking with the Intel 82599 # Virtual Function interface for the AMI and any instances that you # launch from the AMI. # # There is no way to disable `sriovNetSupport` at this time. # # This option is supported only for HVM AMIs. Specifying this option # with a PV AMI can make instances launched from the AMI unreachable. # @return [String] # # @!attribute [rw] virtualization_type # The type of virtualization (`hvm` \| `paravirtual`). # # Default: `paravirtual` # @return [String] # # @!attribute [rw] boot_mode # The boot mode of the AMI. A value of `uefi-preferred` indicates that # the AMI supports both UEFI and Legacy BIOS. # # The operating system contained in the AMI must be configured to # support the specified boot mode. # # # # For more information, see [Boot modes][1] in the *Amazon EC2 User # Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ami-boot.html # @return [String] # # @!attribute [rw] tpm_support # Set to `v2.0` to enable Trusted Platform Module (TPM) support. For # more information, see [NitroTPM][1] in the *Amazon EC2 User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/nitrotpm.html # @return [String] # # @!attribute [rw] uefi_data # Base64 representation of the non-volatile UEFI variable store. To # retrieve the UEFI data, use the [GetInstanceUefiData][1] command. # You can inspect and modify the UEFI data by using the # [python-uefivars tool][2] on GitHub. For more information, see [UEFI # Secure Boot][3] in the *Amazon EC2 User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_GetInstanceUefiData # [2]: https://github.com/awslabs/python-uefivars # [3]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/uefi-secure-boot.html # @return [String] # # @!attribute [rw] imds_support # Set to `v2.0` to indicate 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][1] in the *Amazon EC2 User # Guide*. # # If you set the value to `v2.0`, make sure that your AMI software can # support IMDSv2. # # # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/configuring-IMDS-new-instances.html#configure-IMDS-new-instances-ami-configuration # @return [String] # # @!attribute [rw] tag_specifications # The tags to apply to the AMI. # # To tag the AMI, the value for `ResourceType` must be `image`. If you # specify another value for `ResourceType`, the request fails. # # To tag an AMI after it has been registered, see [CreateTags][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateTags.html # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RegisterImageRequest AWS API Documentation # class RegisterImageRequest < Struct.new( :image_location, :architecture, :block_device_mappings, :description, :dry_run, :ena_support, :kernel_id, :name, :billing_products, :ramdisk_id, :root_device_name, :sriov_net_support, :virtualization_type, :boot_mode, :tpm_support, :uefi_data, :imds_support, :tag_specifications) SENSITIVE = [] include Aws::Structure end # Contains the output of RegisterImage. # # @!attribute [rw] image_id # The ID of the newly registered AMI. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RegisterImageResult AWS API Documentation # class RegisterImageResult < Struct.new( :image_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] instance_tag_attribute # Information about the tag keys to register. # @return [Types::RegisterInstanceTagAttributeRequest] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RegisterInstanceEventNotificationAttributesRequest AWS API Documentation # class RegisterInstanceEventNotificationAttributesRequest < Struct.new( :dry_run, :instance_tag_attribute) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] instance_tag_attribute # The resulting set of tag keys. # @return [Types::InstanceTagNotificationAttribute] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RegisterInstanceEventNotificationAttributesResult AWS API Documentation # class RegisterInstanceEventNotificationAttributesResult < Struct.new( :instance_tag_attribute) SENSITIVE = [] include Aws::Structure end # 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 # # @!attribute [rw] include_all_tags_of_instance # Indicates whether to register all tag keys in the current Region. # Specify `true` to register all tag keys. # @return [Boolean] # # @!attribute [rw] instance_tag_keys # The tag keys to register. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RegisterInstanceTagAttributeRequest AWS API Documentation # class RegisterInstanceTagAttributeRequest < Struct.new( :include_all_tags_of_instance, :instance_tag_keys) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_multicast_domain_id # The ID of the transit gateway multicast domain. # @return [String] # # @!attribute [rw] group_ip_address # The IP address assigned to the transit gateway multicast group. # @return [String] # # @!attribute [rw] network_interface_ids # The group members' network interface IDs to register with the # transit gateway multicast group. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RegisterTransitGatewayMulticastGroupMembersRequest AWS API Documentation # class RegisterTransitGatewayMulticastGroupMembersRequest < Struct.new( :transit_gateway_multicast_domain_id, :group_ip_address, :network_interface_ids, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] registered_multicast_group_members # Information about the registered transit gateway multicast group # members. # @return [Types::TransitGatewayMulticastRegisteredGroupMembers] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RegisterTransitGatewayMulticastGroupMembersResult AWS API Documentation # class RegisterTransitGatewayMulticastGroupMembersResult < Struct.new( :registered_multicast_group_members) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_multicast_domain_id # The ID of the transit gateway multicast domain. # @return [String] # # @!attribute [rw] group_ip_address # The IP address assigned to the transit gateway multicast group. # @return [String] # # @!attribute [rw] network_interface_ids # The group sources' network interface IDs to register with the # transit gateway multicast group. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RegisterTransitGatewayMulticastGroupSourcesRequest AWS API Documentation # class RegisterTransitGatewayMulticastGroupSourcesRequest < Struct.new( :transit_gateway_multicast_domain_id, :group_ip_address, :network_interface_ids, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] registered_multicast_group_sources # Information about the transit gateway multicast group sources. # @return [Types::TransitGatewayMulticastRegisteredGroupSources] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RegisterTransitGatewayMulticastGroupSourcesResult AWS API Documentation # class RegisterTransitGatewayMulticastGroupSourcesResult < Struct.new( :registered_multicast_group_sources) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_multicast_domain_id # The ID of the transit gateway multicast domain. # @return [String] # # @!attribute [rw] transit_gateway_attachment_id # The ID of the transit gateway attachment. # @return [String] # # @!attribute [rw] subnet_ids # The IDs of the subnets to associate with the transit gateway # multicast domain. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RejectTransitGatewayMulticastDomainAssociationsRequest AWS API Documentation # class RejectTransitGatewayMulticastDomainAssociationsRequest < Struct.new( :transit_gateway_multicast_domain_id, :transit_gateway_attachment_id, :subnet_ids, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] associations # Information about the multicast domain associations. # @return [Types::TransitGatewayMulticastDomainAssociations] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RejectTransitGatewayMulticastDomainAssociationsResult AWS API Documentation # class RejectTransitGatewayMulticastDomainAssociationsResult < Struct.new( :associations) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_attachment_id # The ID of the transit gateway peering attachment. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RejectTransitGatewayPeeringAttachmentRequest AWS API Documentation # class RejectTransitGatewayPeeringAttachmentRequest < Struct.new( :transit_gateway_attachment_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_peering_attachment # The transit gateway peering attachment. # @return [Types::TransitGatewayPeeringAttachment] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RejectTransitGatewayPeeringAttachmentResult AWS API Documentation # class RejectTransitGatewayPeeringAttachmentResult < Struct.new( :transit_gateway_peering_attachment) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_attachment_id # The ID of the attachment. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RejectTransitGatewayVpcAttachmentRequest AWS API Documentation # class RejectTransitGatewayVpcAttachmentRequest < Struct.new( :transit_gateway_attachment_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_vpc_attachment # Information about the attachment. # @return [Types::TransitGatewayVpcAttachment] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RejectTransitGatewayVpcAttachmentResult AWS API Documentation # class RejectTransitGatewayVpcAttachmentResult < Struct.new( :transit_gateway_vpc_attachment) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] service_id # The ID of the service. # @return [String] # # @!attribute [rw] vpc_endpoint_ids # The IDs of the VPC endpoints. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RejectVpcEndpointConnectionsRequest AWS API Documentation # class RejectVpcEndpointConnectionsRequest < Struct.new( :dry_run, :service_id, :vpc_endpoint_ids) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] unsuccessful # Information about the endpoints that were not rejected, if # applicable. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RejectVpcEndpointConnectionsResult AWS API Documentation # class RejectVpcEndpointConnectionsResult < Struct.new( :unsuccessful) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] vpc_peering_connection_id # The ID of the VPC peering connection. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RejectVpcPeeringConnectionRequest AWS API Documentation # class RejectVpcPeeringConnectionRequest < Struct.new( :dry_run, :vpc_peering_connection_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] return # Returns `true` if the request succeeds; otherwise, it returns an # error. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RejectVpcPeeringConnectionResult AWS API Documentation # class RejectVpcPeeringConnectionResult < Struct.new( :return) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] allocation_id # The allocation ID. This parameter is required. # @return [String] # # @!attribute [rw] public_ip # Deprecated. # @return [String] # # @!attribute [rw] network_border_group # The set of Availability Zones, Local Zones, or Wavelength Zones from # which Amazon Web Services advertises IP addresses. # # If you provide an incorrect network border group, you receive an # `InvalidAddress.NotFound` error. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ReleaseAddressRequest AWS API Documentation # class ReleaseAddressRequest < Struct.new( :allocation_id, :public_ip, :network_border_group, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] host_ids # The IDs of the Dedicated Hosts to release. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ReleaseHostsRequest AWS API Documentation # class ReleaseHostsRequest < Struct.new( :host_ids) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] successful # The IDs of the Dedicated Hosts that were successfully released. # @return [Array] # # @!attribute [rw] unsuccessful # The IDs of the Dedicated Hosts that could not be released, including # an error message. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ReleaseHostsResult AWS API Documentation # class ReleaseHostsResult < Struct.new( :successful, :unsuccessful) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # A check for whether you have the required permissions for the action # without actually making the request and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] ipam_pool_id # The ID of the IPAM pool which contains the allocation you want to # release. # @return [String] # # @!attribute [rw] cidr # The CIDR of the allocation you want to release. # @return [String] # # @!attribute [rw] ipam_pool_allocation_id # The ID of the allocation. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ReleaseIpamPoolAllocationRequest AWS API Documentation # class ReleaseIpamPoolAllocationRequest < Struct.new( :dry_run, :ipam_pool_id, :cidr, :ipam_pool_allocation_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] success # Indicates if the release was successful. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ReleaseIpamPoolAllocationResult AWS API Documentation # class ReleaseIpamPoolAllocationResult < Struct.new( :success) SENSITIVE = [] include Aws::Structure end # 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][1] # in the *Amazon VPC IPAM User Guide* # # # # [1]: https://docs.aws.amazon.com/vpc/latest/ipam/create-ipam.html # # @!attribute [rw] region_name # The name of the operating Region you want to remove. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RemoveIpamOperatingRegion AWS API Documentation # class RemoveIpamOperatingRegion < Struct.new( :region_name) SENSITIVE = [] include Aws::Structure end # An entry for a prefix list. # # @!attribute [rw] cidr # The CIDR block. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RemovePrefixListEntry AWS API Documentation # class RemovePrefixListEntry < Struct.new( :cidr) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] iam_instance_profile # The IAM instance profile. # @return [Types::IamInstanceProfileSpecification] # # @!attribute [rw] association_id # The ID of the existing IAM instance profile association. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ReplaceIamInstanceProfileAssociationRequest AWS API Documentation # class ReplaceIamInstanceProfileAssociationRequest < Struct.new( :iam_instance_profile, :association_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] iam_instance_profile_association # Information about the IAM instance profile association. # @return [Types::IamInstanceProfileAssociation] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ReplaceIamInstanceProfileAssociationResult AWS API Documentation # class ReplaceIamInstanceProfileAssociationResult < Struct.new( :iam_instance_profile_association) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] association_id # The ID of the current association between the original network ACL # and the subnet. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] network_acl_id # The ID of the new network ACL to associate with the subnet. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ReplaceNetworkAclAssociationRequest AWS API Documentation # class ReplaceNetworkAclAssociationRequest < Struct.new( :association_id, :dry_run, :network_acl_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] new_association_id # The ID of the new association. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ReplaceNetworkAclAssociationResult AWS API Documentation # class ReplaceNetworkAclAssociationResult < Struct.new( :new_association_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cidr_block # The IPv4 network range to allow or deny, in CIDR notation (for # example `172.16.0.0/24`). # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] egress # Indicates whether to replace the egress rule. # # Default: If no value is specified, we replace the ingress rule. # @return [Boolean] # # @!attribute [rw] icmp_type_code # ICMP protocol: The ICMP or ICMPv6 type and code. Required if # specifying protocol 1 (ICMP) or protocol 58 (ICMPv6) with an IPv6 # CIDR block. # @return [Types::IcmpTypeCode] # # @!attribute [rw] ipv_6_cidr_block # The IPv6 network range to allow or deny, in CIDR notation (for # example `2001:bd8:1234:1a00::/64`). # @return [String] # # @!attribute [rw] network_acl_id # The ID of the ACL. # @return [String] # # @!attribute [rw] port_range # TCP or UDP protocols: The range of ports the rule applies to. # Required if specifying protocol 6 (TCP) or 17 (UDP). # @return [Types::PortRange] # # @!attribute [rw] protocol # The protocol number. A value of "-1" means all protocols. If you # specify "-1" or a protocol number other than "6" (TCP), "17" # (UDP), or "1" (ICMP), traffic on all ports is allowed, regardless # of any ports or ICMP types or codes that you specify. If you specify # protocol "58" (ICMPv6) and specify an IPv4 CIDR block, traffic for # all ICMP types and codes allowed, regardless of any that you # specify. If you specify protocol "58" (ICMPv6) and specify an IPv6 # CIDR block, you must specify an ICMP type and code. # @return [String] # # @!attribute [rw] rule_action # Indicates whether to allow or deny the traffic that matches the # rule. # @return [String] # # @!attribute [rw] rule_number # The rule number of the entry to replace. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ReplaceNetworkAclEntryRequest AWS API Documentation # class ReplaceNetworkAclEntryRequest < Struct.new( :cidr_block, :dry_run, :egress, :icmp_type_code, :ipv_6_cidr_block, :network_acl_id, :port_range, :protocol, :rule_action, :rule_number) SENSITIVE = [] include Aws::Structure end # Information about a root volume replacement task. # # @!attribute [rw] replace_root_volume_task_id # The ID of the root volume replacement task. # @return [String] # # @!attribute [rw] instance_id # The ID of the instance for which the root volume replacement task # was created. # @return [String] # # @!attribute [rw] task_state # 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. # @return [String] # # @!attribute [rw] start_time # The time the task was started. # @return [String] # # @!attribute [rw] complete_time # The time the task completed. # @return [String] # # @!attribute [rw] tags # The tags assigned to the task. # @return [Array] # # @!attribute [rw] image_id # The ID of the AMI used to create the replacement root volume. # @return [String] # # @!attribute [rw] snapshot_id # The ID of the snapshot used to create the replacement root volume. # @return [String] # # @!attribute [rw] delete_replaced_root_volume # Indicates whether the original root volume is to be deleted after # the root volume replacement task completes. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ReplaceRootVolumeTask AWS API Documentation # class ReplaceRootVolumeTask < Struct.new( :replace_root_volume_task_id, :instance_id, :task_state, :start_time, :complete_time, :tags, :image_id, :snapshot_id, :delete_replaced_root_volume) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] destination_cidr_block # The IPv4 CIDR address block used for the destination match. The # value that you provide must match the CIDR of an existing route in # the table. # @return [String] # # @!attribute [rw] destination_ipv_6_cidr_block # The IPv6 CIDR address block used for the destination match. The # value that you provide must match the CIDR of an existing route in # the table. # @return [String] # # @!attribute [rw] destination_prefix_list_id # The ID of the prefix list for the route. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] vpc_endpoint_id # The ID of a VPC endpoint. Supported for Gateway Load Balancer # endpoints only. # @return [String] # # @!attribute [rw] egress_only_internet_gateway_id # \[IPv6 traffic only\] The ID of an egress-only internet gateway. # @return [String] # # @!attribute [rw] gateway_id # The ID of an internet gateway or virtual private gateway. # @return [String] # # @!attribute [rw] instance_id # The ID of a NAT instance in your VPC. # @return [String] # # @!attribute [rw] local_target # Specifies whether to reset the local route to its default target # (`local`). # @return [Boolean] # # @!attribute [rw] nat_gateway_id # \[IPv4 traffic only\] The ID of a NAT gateway. # @return [String] # # @!attribute [rw] transit_gateway_id # The ID of a transit gateway. # @return [String] # # @!attribute [rw] local_gateway_id # The ID of the local gateway. # @return [String] # # @!attribute [rw] carrier_gateway_id # \[IPv4 traffic only\] The ID of a carrier gateway. # @return [String] # # @!attribute [rw] network_interface_id # The ID of a network interface. # @return [String] # # @!attribute [rw] route_table_id # The ID of the route table. # @return [String] # # @!attribute [rw] vpc_peering_connection_id # The ID of a VPC peering connection. # @return [String] # # @!attribute [rw] core_network_arn # The Amazon Resource Name (ARN) of the core network. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ReplaceRouteRequest AWS API Documentation # class ReplaceRouteRequest < Struct.new( :destination_cidr_block, :destination_ipv_6_cidr_block, :destination_prefix_list_id, :dry_run, :vpc_endpoint_id, :egress_only_internet_gateway_id, :gateway_id, :instance_id, :local_target, :nat_gateway_id, :transit_gateway_id, :local_gateway_id, :carrier_gateway_id, :network_interface_id, :route_table_id, :vpc_peering_connection_id, :core_network_arn) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] association_id # The association ID. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] route_table_id # The ID of the new route table to associate with the subnet. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ReplaceRouteTableAssociationRequest AWS API Documentation # class ReplaceRouteTableAssociationRequest < Struct.new( :association_id, :dry_run, :route_table_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] new_association_id # The ID of the new association. # @return [String] # # @!attribute [rw] association_state # The state of the association. # @return [Types::RouteTableAssociationState] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ReplaceRouteTableAssociationResult AWS API Documentation # class ReplaceRouteTableAssociationResult < Struct.new( :new_association_id, :association_state) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] destination_cidr_block # The CIDR range used for the destination match. Routing decisions are # based on the most specific match. # @return [String] # # @!attribute [rw] transit_gateway_route_table_id # The ID of the route table. # @return [String] # # @!attribute [rw] transit_gateway_attachment_id # The ID of the attachment. # @return [String] # # @!attribute [rw] blackhole # Indicates whether traffic matching this route is to be dropped. # @return [Boolean] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ReplaceTransitGatewayRouteRequest AWS API Documentation # class ReplaceTransitGatewayRouteRequest < Struct.new( :destination_cidr_block, :transit_gateway_route_table_id, :transit_gateway_attachment_id, :blackhole, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] route # Information about the modified route. # @return [Types::TransitGatewayRoute] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ReplaceTransitGatewayRouteResult AWS API Documentation # class ReplaceTransitGatewayRouteResult < Struct.new( :route) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] vpn_connection_id # The ID of the Site-to-Site VPN connection. # @return [String] # # @!attribute [rw] vpn_tunnel_outside_ip_address # The external IP address of the VPN tunnel. # @return [String] # # @!attribute [rw] apply_pending_maintenance # Trigger pending tunnel endpoint maintenance. # @return [Boolean] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ReplaceVpnTunnelRequest AWS API Documentation # class ReplaceVpnTunnelRequest < Struct.new( :vpn_connection_id, :vpn_tunnel_outside_ip_address, :apply_pending_maintenance, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] return # Confirmation of replace tunnel operation. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ReplaceVpnTunnelResult AWS API Documentation # class ReplaceVpnTunnelResult < Struct.new( :return) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] description # Descriptive text about the health state of your instance. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] end_time # The time at which the reported instance health state ended. # @return [Time] # # @!attribute [rw] instances # The instances. # @return [Array] # # @!attribute [rw] reason_codes # The reason codes that describe the health state of your instance. # # * `instance-stuck-in-state`: My instance is stuck in a state. # # * `unresponsive`: My instance is unresponsive. # # * `not-accepting-credentials`: My instance is not accepting my # credentials. # # * `password-not-available`: A password is not available for my # instance. # # * `performance-network`: My instance is experiencing performance # problems that I believe are network related. # # * `performance-instance-store`: My instance is experiencing # performance problems that I believe are related to the instance # stores. # # * `performance-ebs-volume`: My instance is experiencing performance # problems that I believe are related to an EBS volume. # # * `performance-other`: My instance is experiencing performance # problems. # # * `other`: \[explain using the description parameter\] # @return [Array] # # @!attribute [rw] start_time # The time at which the reported instance health state began. # @return [Time] # # @!attribute [rw] status # The status of all instances listed. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ReportInstanceStatusRequest AWS API Documentation # class ReportInstanceStatusRequest < Struct.new( :description, :dry_run, :end_time, :instances, :reason_codes, :start_time, :status) SENSITIVE = [] include Aws::Structure end # Describes a port range. # # @!attribute [rw] from_port # The first port in the range. # @return [Integer] # # @!attribute [rw] to_port # The last port in the range. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RequestFilterPortRange AWS API Documentation # class RequestFilterPortRange < Struct.new( :from_port, :to_port) SENSITIVE = [] include Aws::Structure end # A tag on an IPAM resource. # # @!attribute [rw] key # 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. # @return [String] # # @!attribute [rw] value # The value for the tag. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RequestIpamResourceTag AWS API Documentation # class RequestIpamResourceTag < Struct.new( :key, :value) SENSITIVE = [] include Aws::Structure end # The information to include in the launch template. # # You must specify at least one parameter for the launch template data. # # # # @!attribute [rw] kernel_id # 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][1] in the *Amazon # Elastic Compute Cloud User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/UserProvidedkernels.html # @return [String] # # @!attribute [rw] ebs_optimized # 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. # @return [Boolean] # # @!attribute [rw] iam_instance_profile # The name or Amazon Resource Name (ARN) of an IAM instance profile. # @return [Types::LaunchTemplateIamInstanceProfileSpecificationRequest] # # @!attribute [rw] block_device_mappings # The block device mapping. # @return [Array] # # @!attribute [rw] network_interfaces # The network interfaces for the instance. # @return [Array] # # @!attribute [rw] image_id # The ID of the AMI. Alternatively, you can specify a Systems Manager # parameter, which will resolve to an AMI ID on launch. # # Valid formats: # # * `ami-17characters00000` # # * `resolve:ssm:parameter-name` # # * `resolve:ssm:parameter-name:version-number` # # * `resolve:ssm:parameter-name:label` # # * `resolve:ssm:public-parameter` # # Currently, EC2 Fleet and Spot Fleet do not support specifying a # Systems Manager parameter. If the launch template will be used by an # EC2 Fleet or Spot Fleet, you must specify the AMI ID. # # # # For more information, see [Use a Systems Manager parameter instead # of an AMI ID][1] in the *Amazon Elastic Compute Cloud User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/create-launch-template.html#use-an-ssm-parameter-instead-of-an-ami-id # @return [String] # # @!attribute [rw] instance_type # The instance type. For more information, see [Instance types][1] in # the *Amazon Elastic Compute Cloud User Guide*. # # If you specify `InstanceType`, you can't specify # `InstanceRequirements`. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html # @return [String] # # @!attribute [rw] key_name # The name of the key pair. You can create a key pair using # [CreateKeyPair][1] or [ImportKeyPair][2]. # # 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. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateKeyPair.html # [2]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ImportKeyPair.html # @return [String] # # @!attribute [rw] monitoring # The monitoring for the instance. # @return [Types::LaunchTemplatesMonitoringRequest] # # @!attribute [rw] placement # The placement for the instance. # @return [Types::LaunchTemplatePlacementRequest] # # @!attribute [rw] ram_disk_id # 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][1] in the *Amazon # Elastic Compute Cloud User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/UserProvidedkernels.html # @return [String] # # @!attribute [rw] disable_api_termination # 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][1]. Alternatively, if you set # `InstanceInitiatedShutdownBehavior` to `terminate`, you can # terminate the instance by running the shutdown command from the # instance. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ModifyInstanceAttribute.html # @return [Boolean] # # @!attribute [rw] instance_initiated_shutdown_behavior # Indicates whether an instance stops or terminates when you initiate # shutdown from the instance (using the operating system command for # system shutdown). # # Default: `stop` # @return [String] # # @!attribute [rw] user_data # 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 Linux instance at launch][1] # (Linux) or [Work with instance user data][2] (Windows) in the # *Amazon Elastic Compute Cloud 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][3]. # For more information, see [Amazon EC2 user data in launch # templates][4] in the *Batch User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/user-data.html # [2]: https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/instancedata-add-user-data.html # [3]: https://cloudinit.readthedocs.io/en/latest/topics/format.html#mime-multi-part-archive # [4]: https://docs.aws.amazon.com/batch/latest/userguide/launch-templates.html # @return [String] # # @!attribute [rw] tag_specifications # The tags to apply to the resources that are created during instance # launch. These tags are not applied to the launch template. # @return [Array] # # @!attribute [rw] elastic_gpu_specifications # 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. # # # @return [Array] # # @!attribute [rw] elastic_inference_accelerators # 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. # # # @return [Array] # # @!attribute [rw] security_group_ids # 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. # @return [Array] # # @!attribute [rw] security_groups # 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. # @return [Array] # # @!attribute [rw] instance_market_options # The market (purchasing) option for the instances. # @return [Types::LaunchTemplateInstanceMarketOptionsRequest] # # @!attribute [rw] credit_specification # The credit option for CPU usage of the instance. Valid only for T # instances. # @return [Types::CreditSpecificationRequest] # # @!attribute [rw] cpu_options # The CPU options for the instance. For more information, see # [Optimizing CPU Options][1] in the *Amazon Elastic Compute Cloud # User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-optimize-cpu.html # @return [Types::LaunchTemplateCpuOptionsRequest] # # @!attribute [rw] capacity_reservation_specification # 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). # @return [Types::LaunchTemplateCapacityReservationSpecificationRequest] # # @!attribute [rw] license_specifications # The license configurations. # @return [Array] # # @!attribute [rw] hibernation_options # Indicates whether an instance is enabled for hibernation. This # parameter is valid only if the instance meets the [hibernation # prerequisites][1]. For more information, see [Hibernate your # instance][2] in the *Amazon Elastic Compute Cloud User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/hibernating-prerequisites.html # [2]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Hibernate.html # @return [Types::LaunchTemplateHibernationOptionsRequest] # # @!attribute [rw] metadata_options # The metadata options for the instance. For more information, see # [Instance metadata and user data][1] in the *Amazon Elastic Compute # Cloud User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html # @return [Types::LaunchTemplateInstanceMetadataOptionsRequest] # # @!attribute [rw] enclave_options # Indicates whether the instance is enabled for Amazon Web Services # Nitro Enclaves. For more information, see [ What is Amazon Web # Services Nitro Enclaves?][1] in the *Amazon Web Services Nitro # Enclaves User Guide*. # # You can't enable Amazon Web Services Nitro Enclaves and hibernation # on the same instance. # # # # [1]: https://docs.aws.amazon.com/enclaves/latest/user/nitro-enclave.html # @return [Types::LaunchTemplateEnclaveOptionsRequest] # # @!attribute [rw] instance_requirements # 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][1], or with the [RunInstances][2] API or # [AWS::EC2::Instance][3] Amazon Web Services CloudFormation resource, # you can't specify `InstanceRequirements`. # # # # For more information, see [Attribute-based instance type selection # for EC2 Fleet][4], [Attribute-based instance type selection for Spot # Fleet][5], and [Spot placement score][6] in the *Amazon EC2 User # Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-instance-wizard.html # [2]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances.html # [3]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance.html # [4]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-attribute-based-instance-type-selection.html # [5]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-attribute-based-instance-type-selection.html # [6]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-placement-score.html # @return [Types::InstanceRequirementsRequest] # # @!attribute [rw] private_dns_name_options # The options for the instance hostname. The default values are # inherited from the subnet. # @return [Types::LaunchTemplatePrivateDnsNameOptionsRequest] # # @!attribute [rw] maintenance_options # The maintenance options for the instance. # @return [Types::LaunchTemplateInstanceMaintenanceOptionsRequest] # # @!attribute [rw] disable_api_stop # Indicates whether to enable the instance for stop protection. For # more information, see [Stop protection][1] in the *Amazon Elastic # Compute Cloud User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Stop_Start.html#Using_StopProtection # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RequestLaunchTemplateData AWS API Documentation # class RequestLaunchTemplateData < Struct.new( :kernel_id, :ebs_optimized, :iam_instance_profile, :block_device_mappings, :network_interfaces, :image_id, :instance_type, :key_name, :monitoring, :placement, :ram_disk_id, :disable_api_termination, :instance_initiated_shutdown_behavior, :user_data, :tag_specifications, :elastic_gpu_specifications, :elastic_inference_accelerators, :security_group_ids, :security_groups, :instance_market_options, :credit_specification, :cpu_options, :capacity_reservation_specification, :license_specifications, :hibernation_options, :metadata_options, :enclave_options, :instance_requirements, :private_dns_name_options, :maintenance_options, :disable_api_stop) SENSITIVE = [:user_data] include Aws::Structure end # Contains the parameters for RequestSpotFleet. # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] spot_fleet_request_config # The configuration for the Spot Fleet request. # @return [Types::SpotFleetRequestConfigData] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RequestSpotFleetRequest AWS API Documentation # class RequestSpotFleetRequest < Struct.new( :dry_run, :spot_fleet_request_config) SENSITIVE = [] include Aws::Structure end # Contains the output of RequestSpotFleet. # # @!attribute [rw] spot_fleet_request_id # The ID of the Spot Fleet request. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RequestSpotFleetResponse AWS API Documentation # class RequestSpotFleetResponse < Struct.new( :spot_fleet_request_id) SENSITIVE = [] include Aws::Structure end # Contains the parameters for RequestSpotInstances. # # @!attribute [rw] availability_zone_group # The user-specified name for a logical grouping of requests. # # When you specify an Availability Zone group in a Spot Instance # request, all Spot Instances in the request are launched in the same # Availability Zone. Instance proximity is maintained with this # parameter, but the choice of Availability Zone is not. The group # applies only to requests for Spot Instances of the same instance # type. Any additional Spot Instance requests that are specified with # the same Availability Zone group name are launched in that same # Availability Zone, as long as at least one instance from the group # is still active. # # If there is no active instance running in the Availability Zone # group that you specify for a new Spot Instance request (all # instances are terminated, the request is expired, or the maximum # price you specified falls below current Spot price), then Amazon EC2 # launches the instance in any Availability Zone where the constraint # can be met. Consequently, the subsequent set of Spot Instances could # be placed in a different zone from the original request, even if you # specified the same Availability Zone group. # # Default: Instances are launched in any available Availability Zone. # @return [String] # # @!attribute [rw] block_duration_minutes # Deprecated. # @return [Integer] # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. For more information, see [How to Ensure # Idempotency][1] in the *Amazon EC2 User Guide for Linux Instances*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] instance_count # The maximum number of Spot Instances to launch. # # Default: 1 # @return [Integer] # # @!attribute [rw] launch_group # The instance launch group. Launch groups are Spot Instances that # launch together and terminate together. # # Default: Instances are launched and terminated individually # @return [String] # # @!attribute [rw] launch_specification # The launch specification. # @return [Types::RequestSpotLaunchSpecification] # # @!attribute [rw] spot_price # 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. # @return [String] # # @!attribute [rw] type # The Spot Instance request type. # # Default: `one-time` # @return [String] # # @!attribute [rw] valid_from # The start date of the request. If this is a one-time request, the # request becomes active at this date and time and remains active # until all instances launch, the request expires, or the request is # canceled. If the request is persistent, the request becomes active # at this date and time and remains active until it expires or is # canceled. # # The specified start date and time cannot be equal to the current # date and time. You must specify a start date and time that occurs # after the current date and time. # @return [Time] # # @!attribute [rw] valid_until # The end date of the request, in UTC format # (*YYYY*-*MM*-*DD*T*HH*:*MM*:*SS*Z). # # * 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. # @return [Time] # # @!attribute [rw] tag_specifications # The key-value pair for tagging the Spot Instance request on # creation. The value for `ResourceType` must be # `spot-instances-request`, otherwise the Spot Instance request fails. # To tag the Spot Instance request after it has been created, see # [CreateTags][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateTags.html # @return [Array] # # @!attribute [rw] instance_interruption_behavior # The behavior when a Spot Instance is interrupted. The default is # `terminate`. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RequestSpotInstancesRequest AWS API Documentation # class RequestSpotInstancesRequest < Struct.new( :availability_zone_group, :block_duration_minutes, :client_token, :dry_run, :instance_count, :launch_group, :launch_specification, :spot_price, :type, :valid_from, :valid_until, :tag_specifications, :instance_interruption_behavior) SENSITIVE = [] include Aws::Structure end # Contains the output of RequestSpotInstances. # # @!attribute [rw] spot_instance_requests # The Spot Instance requests. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RequestSpotInstancesResult AWS API Documentation # class RequestSpotInstancesResult < Struct.new( :spot_instance_requests) SENSITIVE = [] include Aws::Structure end # Describes the launch specification for an instance. # # @!attribute [rw] security_group_ids # The IDs of the security groups. # @return [Array] # # @!attribute [rw] security_groups # Not supported. # @return [Array] # # @!attribute [rw] addressing_type # Deprecated. # @return [String] # # @!attribute [rw] block_device_mappings # 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. # @return [Array] # # @!attribute [rw] ebs_optimized # 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` # @return [Boolean] # # @!attribute [rw] iam_instance_profile # The IAM instance profile. # @return [Types::IamInstanceProfileSpecification] # # @!attribute [rw] image_id # The ID of the AMI. # @return [String] # # @!attribute [rw] instance_type # The instance type. Only one instance type can be specified. # @return [String] # # @!attribute [rw] kernel_id # The ID of the kernel. # @return [String] # # @!attribute [rw] key_name # The name of the key pair. # @return [String] # # @!attribute [rw] monitoring # Indicates whether basic or detailed monitoring is enabled for the # instance. # # Default: Disabled # @return [Types::RunInstancesMonitoringEnabled] # # @!attribute [rw] network_interfaces # The network interfaces. If you specify a network interface, you must # specify subnet IDs and security group IDs using the network # interface. # @return [Array] # # @!attribute [rw] placement # The placement information for the instance. # @return [Types::SpotPlacement] # # @!attribute [rw] ramdisk_id # The ID of the RAM disk. # @return [String] # # @!attribute [rw] subnet_id # The ID of the subnet in which to launch the instance. # @return [String] # # @!attribute [rw] user_data # The base64-encoded user data that instances use when starting up. # User data is limited to 16 KB. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RequestSpotLaunchSpecification AWS API Documentation # class RequestSpotLaunchSpecification < Struct.new( :security_group_ids, :security_groups, :addressing_type, :block_device_mappings, :ebs_optimized, :iam_instance_profile, :image_id, :instance_type, :kernel_id, :key_name, :monitoring, :network_interfaces, :placement, :ramdisk_id, :subnet_id, :user_data) SENSITIVE = [:user_data] include Aws::Structure end # 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. # # @!attribute [rw] groups # Not supported. # @return [Array] # # @!attribute [rw] instances # The instances. # @return [Array] # # @!attribute [rw] owner_id # The ID of the Amazon Web Services account that owns the reservation. # @return [String] # # @!attribute [rw] requester_id # The ID of the requester that launched the instances on your behalf # (for example, Amazon Web Services Management Console or Auto # Scaling). # @return [String] # # @!attribute [rw] reservation_id # The ID of the reservation. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Reservation AWS API Documentation # class Reservation < Struct.new( :groups, :instances, :owner_id, :requester_id, :reservation_id) SENSITIVE = [] include Aws::Structure end # Information about an instance type to use in a Capacity Reservation # Fleet. # # @!attribute [rw] instance_type # The instance type for which the Capacity Reservation Fleet reserves # capacity. # @return [String] # # @!attribute [rw] instance_platform # The type of operating system for which the Capacity Reservation # Fleet reserves capacity. # @return [String] # # @!attribute [rw] weight # 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][1] in the Amazon EC2 User Guide. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/crfleet-concepts.html#target-capacity # @return [Float] # # @!attribute [rw] availability_zone # 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. # @return [String] # # @!attribute [rw] availability_zone_id # 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. # @return [String] # # @!attribute [rw] ebs_optimized # 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. # @return [Boolean] # # @!attribute [rw] priority # 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][1] in the Amazon EC2 # User Guide. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/crfleet-concepts.html#instance-priority # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ReservationFleetInstanceSpecification AWS API Documentation # class ReservationFleetInstanceSpecification < Struct.new( :instance_type, :instance_platform, :weight, :availability_zone, :availability_zone_id, :ebs_optimized, :priority) SENSITIVE = [] include Aws::Structure end # The cost associated with the Reserved Instance. # # @!attribute [rw] hourly_price # The hourly rate of the reservation. # @return [String] # # @!attribute [rw] remaining_total_value # The balance of the total value (the sum of remainingUpfrontValue + # hourlyPrice * number of hours remaining). # @return [String] # # @!attribute [rw] remaining_upfront_value # The remaining upfront cost of the reservation. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ReservationValue AWS API Documentation # class ReservationValue < Struct.new( :hourly_price, :remaining_total_value, :remaining_upfront_value) SENSITIVE = [] include Aws::Structure end # Describes the limit price of a Reserved Instance offering. # # @!attribute [rw] amount # Used for Reserved Instance Marketplace offerings. Specifies the # limit price on the total order (instanceCount * price). # @return [Float] # # @!attribute [rw] currency_code # The currency in which the `limitPrice` amount is specified. At this # time, the only supported currency is `USD`. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ReservedInstanceLimitPrice AWS API Documentation # class ReservedInstanceLimitPrice < Struct.new( :amount, :currency_code) SENSITIVE = [] include Aws::Structure end # The total value of the Convertible Reserved Instance. # # @!attribute [rw] reservation_value # The total value of the Convertible Reserved Instance that you are # exchanging. # @return [Types::ReservationValue] # # @!attribute [rw] reserved_instance_id # The ID of the Convertible Reserved Instance that you are exchanging. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ReservedInstanceReservationValue AWS API Documentation # class ReservedInstanceReservationValue < Struct.new( :reservation_value, :reserved_instance_id) SENSITIVE = [] include Aws::Structure end # Describes a Reserved Instance. # # @!attribute [rw] availability_zone # The Availability Zone in which the Reserved Instance can be used. # @return [String] # # @!attribute [rw] duration # The duration of the Reserved Instance, in seconds. # @return [Integer] # # @!attribute [rw] end # The time when the Reserved Instance expires. # @return [Time] # # @!attribute [rw] fixed_price # The purchase price of the Reserved Instance. # @return [Float] # # @!attribute [rw] instance_count # The number of reservations purchased. # @return [Integer] # # @!attribute [rw] instance_type # The instance type on which the Reserved Instance can be used. # @return [String] # # @!attribute [rw] product_description # The Reserved Instance product platform description. # @return [String] # # @!attribute [rw] reserved_instances_id # The ID of the Reserved Instance. # @return [String] # # @!attribute [rw] start # The date and time the Reserved Instance started. # @return [Time] # # @!attribute [rw] state # The state of the Reserved Instance purchase. # @return [String] # # @!attribute [rw] usage_price # The usage price of the Reserved Instance, per hour. # @return [Float] # # @!attribute [rw] currency_code # The currency of the Reserved Instance. It's specified using ISO # 4217 standard currency codes. At this time, the only supported # currency is `USD`. # @return [String] # # @!attribute [rw] instance_tenancy # The tenancy of the instance. # @return [String] # # @!attribute [rw] offering_class # The offering class of the Reserved Instance. # @return [String] # # @!attribute [rw] offering_type # The Reserved Instance offering type. # @return [String] # # @!attribute [rw] recurring_charges # The recurring charge tag assigned to the resource. # @return [Array] # # @!attribute [rw] scope # The scope of the Reserved Instance. # @return [String] # # @!attribute [rw] tags # Any tags assigned to the resource. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ReservedInstances AWS API Documentation # class ReservedInstances < Struct.new( :availability_zone, :duration, :end, :fixed_price, :instance_count, :instance_type, :product_description, :reserved_instances_id, :start, :state, :usage_price, :currency_code, :instance_tenancy, :offering_class, :offering_type, :recurring_charges, :scope, :tags) SENSITIVE = [] include Aws::Structure end # Describes the configuration settings for the modified Reserved # Instances. # # @!attribute [rw] availability_zone # The Availability Zone for the modified Reserved Instances. # @return [String] # # @!attribute [rw] instance_count # The number of modified Reserved Instances. # # This is a required field for a request. # # # @return [Integer] # # @!attribute [rw] instance_type # The instance type for the modified Reserved Instances. # @return [String] # # @!attribute [rw] platform # The network platform of the modified Reserved Instances. # @return [String] # # @!attribute [rw] scope # Whether the Reserved Instance is applied to instances in a Region or # instances in a specific Availability Zone. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ReservedInstancesConfiguration AWS API Documentation # class ReservedInstancesConfiguration < Struct.new( :availability_zone, :instance_count, :instance_type, :platform, :scope) SENSITIVE = [] include Aws::Structure end # Describes the ID of a Reserved Instance. # # @!attribute [rw] reserved_instances_id # The ID of the Reserved Instance. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ReservedInstancesId AWS API Documentation # class ReservedInstancesId < Struct.new( :reserved_instances_id) SENSITIVE = [] include Aws::Structure end # Describes a Reserved Instance listing. # # @!attribute [rw] client_token # A unique, case-sensitive key supplied by the client to ensure that # the request is idempotent. For more information, see [Ensuring # Idempotency][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] create_date # The time the listing was created. # @return [Time] # # @!attribute [rw] instance_counts # The number of instances in this state. # @return [Array] # # @!attribute [rw] price_schedules # The price of the Reserved Instance listing. # @return [Array] # # @!attribute [rw] reserved_instances_id # The ID of the Reserved Instance. # @return [String] # # @!attribute [rw] reserved_instances_listing_id # The ID of the Reserved Instance listing. # @return [String] # # @!attribute [rw] status # The status of the Reserved Instance listing. # @return [String] # # @!attribute [rw] status_message # The reason for the current status of the Reserved Instance listing. # The response can be blank. # @return [String] # # @!attribute [rw] tags # Any tags assigned to the resource. # @return [Array] # # @!attribute [rw] update_date # The last modified timestamp of the listing. # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ReservedInstancesListing AWS API Documentation # class ReservedInstancesListing < Struct.new( :client_token, :create_date, :instance_counts, :price_schedules, :reserved_instances_id, :reserved_instances_listing_id, :status, :status_message, :tags, :update_date) SENSITIVE = [] include Aws::Structure end # Describes a Reserved Instance modification. # # @!attribute [rw] client_token # A unique, case-sensitive key supplied by the client to ensure that # the request is idempotent. For more information, see [Ensuring # Idempotency][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] create_date # The time when the modification request was created. # @return [Time] # # @!attribute [rw] effective_date # The time for the modification to become effective. # @return [Time] # # @!attribute [rw] modification_results # Contains target configurations along with their corresponding new # Reserved Instance IDs. # @return [Array] # # @!attribute [rw] reserved_instances_ids # The IDs of one or more Reserved Instances. # @return [Array] # # @!attribute [rw] reserved_instances_modification_id # A unique ID for the Reserved Instance modification. # @return [String] # # @!attribute [rw] status # The status of the Reserved Instances modification request. # @return [String] # # @!attribute [rw] status_message # The reason for the status. # @return [String] # # @!attribute [rw] update_date # The time when the modification request was last updated. # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ReservedInstancesModification AWS API Documentation # class ReservedInstancesModification < Struct.new( :client_token, :create_date, :effective_date, :modification_results, :reserved_instances_ids, :reserved_instances_modification_id, :status, :status_message, :update_date) SENSITIVE = [] include Aws::Structure end # Describes the modification request/s. # # @!attribute [rw] reserved_instances_id # 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. # @return [String] # # @!attribute [rw] target_configuration # The target Reserved Instances configurations supplied as part of the # modification request. # @return [Types::ReservedInstancesConfiguration] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ReservedInstancesModificationResult AWS API Documentation # class ReservedInstancesModificationResult < Struct.new( :reserved_instances_id, :target_configuration) SENSITIVE = [] include Aws::Structure end # Describes a Reserved Instance offering. # # @!attribute [rw] availability_zone # The Availability Zone in which the Reserved Instance can be used. # @return [String] # # @!attribute [rw] duration # The duration of the Reserved Instance, in seconds. # @return [Integer] # # @!attribute [rw] fixed_price # The purchase price of the Reserved Instance. # @return [Float] # # @!attribute [rw] instance_type # The instance type on which the Reserved Instance can be used. # @return [String] # # @!attribute [rw] product_description # The Reserved Instance product platform description. # @return [String] # # @!attribute [rw] reserved_instances_offering_id # The ID of the Reserved Instance offering. This is the offering ID # used in GetReservedInstancesExchangeQuote to confirm that an # exchange can be made. # @return [String] # # @!attribute [rw] usage_price # The usage price of the Reserved Instance, per hour. # @return [Float] # # @!attribute [rw] currency_code # 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`. # @return [String] # # @!attribute [rw] instance_tenancy # The tenancy of the instance. # @return [String] # # @!attribute [rw] marketplace # 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`. # @return [Boolean] # # @!attribute [rw] offering_class # 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. # @return [String] # # @!attribute [rw] offering_type # The Reserved Instance offering type. # @return [String] # # @!attribute [rw] pricing_details # The pricing details of the Reserved Instance offering. # @return [Array] # # @!attribute [rw] recurring_charges # The recurring charge tag assigned to the resource. # @return [Array] # # @!attribute [rw] scope # Whether the Reserved Instance is applied to instances in a Region or # an Availability Zone. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ReservedInstancesOffering AWS API Documentation # class ReservedInstancesOffering < Struct.new( :availability_zone, :duration, :fixed_price, :instance_type, :product_description, :reserved_instances_offering_id, :usage_price, :currency_code, :instance_tenancy, :marketplace, :offering_class, :offering_type, :pricing_details, :recurring_charges, :scope) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] allocation_id # \[EC2-VPC\] The allocation ID. # @return [String] # # @!attribute [rw] attribute # The attribute of the IP address. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ResetAddressAttributeRequest AWS API Documentation # class ResetAddressAttributeRequest < Struct.new( :allocation_id, :attribute, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] address # Information about the IP address. # @return [Types::AddressAttribute] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ResetAddressAttributeResult AWS API Documentation # class ResetAddressAttributeResult < Struct.new( :address) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ResetEbsDefaultKmsKeyIdRequest AWS API Documentation # class ResetEbsDefaultKmsKeyIdRequest < Struct.new( :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] kms_key_id # The Amazon Resource Name (ARN) of the default KMS key for EBS # encryption by default. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ResetEbsDefaultKmsKeyIdResult AWS API Documentation # class ResetEbsDefaultKmsKeyIdResult < Struct.new( :kms_key_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] fpga_image_id # The ID of the AFI. # @return [String] # # @!attribute [rw] attribute # The attribute. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ResetFpgaImageAttributeRequest AWS API Documentation # class ResetFpgaImageAttributeRequest < Struct.new( :dry_run, :fpga_image_id, :attribute) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] return # Is `true` if the request succeeds, and an error otherwise. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ResetFpgaImageAttributeResult AWS API Documentation # class ResetFpgaImageAttributeResult < Struct.new( :return) SENSITIVE = [] include Aws::Structure end # Contains the parameters for ResetImageAttribute. # # @!attribute [rw] attribute # The attribute to reset (currently you can only reset the launch # permission attribute). # @return [String] # # @!attribute [rw] image_id # The ID of the AMI. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ResetImageAttributeRequest AWS API Documentation # class ResetImageAttributeRequest < Struct.new( :attribute, :image_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] attribute # The attribute to reset. # # You can only reset the following attributes: `kernel` \| `ramdisk` # \| `sourceDestCheck`. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] instance_id # The ID of the instance. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ResetInstanceAttributeRequest AWS API Documentation # class ResetInstanceAttributeRequest < Struct.new( :attribute, :dry_run, :instance_id) SENSITIVE = [] include Aws::Structure end # Contains the parameters for ResetNetworkInterfaceAttribute. # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] network_interface_id # The ID of the network interface. # @return [String] # # @!attribute [rw] source_dest_check # The source/destination checking attribute. Resets the value to # `true`. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ResetNetworkInterfaceAttributeRequest AWS API Documentation # class ResetNetworkInterfaceAttributeRequest < Struct.new( :dry_run, :network_interface_id, :source_dest_check) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] attribute # The attribute to reset. Currently, only the attribute for permission # to create volumes can be reset. # @return [String] # # @!attribute [rw] snapshot_id # The ID of the snapshot. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ResetSnapshotAttributeRequest AWS API Documentation # class ResetSnapshotAttributeRequest < Struct.new( :attribute, :snapshot_id, :dry_run) SENSITIVE = [] include Aws::Structure end # Describes a resource statement. # # @!attribute [rw] resources # The resources. # @return [Array] # # @!attribute [rw] resource_types # The resource types. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ResourceStatement AWS API Documentation # class ResourceStatement < Struct.new( :resources, :resource_types) SENSITIVE = [] include Aws::Structure end # Describes a resource statement. # # @!attribute [rw] resources # The resources. # @return [Array] # # @!attribute [rw] resource_types # The resource types. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ResourceStatementRequest AWS API Documentation # class ResourceStatementRequest < Struct.new( :resources, :resource_types) SENSITIVE = [] include Aws::Structure end # Describes the error that's returned when you cannot delete a launch # template version. # # @!attribute [rw] code # The error code. # @return [String] # # @!attribute [rw] message # The error message, if applicable. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ResponseError AWS API Documentation # class ResponseError < Struct.new( :code, :message) SENSITIVE = [] include Aws::Structure end # The information for a launch template. # # @!attribute [rw] kernel_id # The ID of the kernel, if applicable. # @return [String] # # @!attribute [rw] ebs_optimized # Indicates whether the instance is optimized for Amazon EBS I/O. # @return [Boolean] # # @!attribute [rw] iam_instance_profile # The IAM instance profile. # @return [Types::LaunchTemplateIamInstanceProfileSpecification] # # @!attribute [rw] block_device_mappings # The block device mappings. # @return [Array] # # @!attribute [rw] network_interfaces # The network interfaces. # @return [Array] # # @!attribute [rw] image_id # 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][1] in the *Amazon Elastic Compute Cloud User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html#use-an-ssm-parameter-instead-of-an-ami-id # @return [String] # # @!attribute [rw] instance_type # The instance type. # @return [String] # # @!attribute [rw] key_name # The name of the key pair. # @return [String] # # @!attribute [rw] monitoring # The monitoring for the instance. # @return [Types::LaunchTemplatesMonitoring] # # @!attribute [rw] placement # The placement of the instance. # @return [Types::LaunchTemplatePlacement] # # @!attribute [rw] ram_disk_id # The ID of the RAM disk, if applicable. # @return [String] # # @!attribute [rw] disable_api_termination # If set to `true`, indicates that the instance cannot be terminated # using the Amazon EC2 console, command line tool, or API. # @return [Boolean] # # @!attribute [rw] instance_initiated_shutdown_behavior # Indicates whether an instance stops or terminates when you initiate # shutdown from the instance (using the operating system command for # system shutdown). # @return [String] # # @!attribute [rw] user_data # The user data for the instance. # @return [String] # # @!attribute [rw] tag_specifications # The tags that are applied to the resources that are created during # instance launch. # @return [Array] # # @!attribute [rw] elastic_gpu_specifications # 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. # # # @return [Array] # # @!attribute [rw] elastic_inference_accelerators # 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. # # # @return [Array] # # @!attribute [rw] security_group_ids # The security group IDs. # @return [Array] # # @!attribute [rw] security_groups # The security group names. # @return [Array] # # @!attribute [rw] instance_market_options # The market (purchasing) option for the instances. # @return [Types::LaunchTemplateInstanceMarketOptions] # # @!attribute [rw] credit_specification # The credit option for CPU usage of the instance. # @return [Types::CreditSpecification] # # @!attribute [rw] cpu_options # The CPU options for the instance. For more information, see # [Optimizing CPU options][1] in the *Amazon Elastic Compute Cloud # User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-optimize-cpu.html # @return [Types::LaunchTemplateCpuOptions] # # @!attribute [rw] capacity_reservation_specification # Information about the Capacity Reservation targeting option. # @return [Types::LaunchTemplateCapacityReservationSpecificationResponse] # # @!attribute [rw] license_specifications # The license configurations. # @return [Array] # # @!attribute [rw] hibernation_options # Indicates whether an instance is configured for hibernation. For # more information, see [Hibernate your instance][1] in the *Amazon # Elastic Compute Cloud User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Hibernate.html # @return [Types::LaunchTemplateHibernationOptions] # # @!attribute [rw] metadata_options # The metadata options for the instance. For more information, see # [Instance metadata and user data][1] in the *Amazon Elastic Compute # Cloud User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html # @return [Types::LaunchTemplateInstanceMetadataOptions] # # @!attribute [rw] enclave_options # Indicates whether the instance is enabled for Amazon Web Services # Nitro Enclaves. # @return [Types::LaunchTemplateEnclaveOptions] # # @!attribute [rw] instance_requirements # 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`. # @return [Types::InstanceRequirements] # # @!attribute [rw] private_dns_name_options # The options for the instance hostname. # @return [Types::LaunchTemplatePrivateDnsNameOptions] # # @!attribute [rw] maintenance_options # The maintenance options for your instance. # @return [Types::LaunchTemplateInstanceMaintenanceOptions] # # @!attribute [rw] disable_api_stop # Indicates whether the instance is enabled for stop protection. For # more information, see [Stop protection][1] in the *Amazon Elastic # Compute Cloud User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Stop_Start.html#Using_StopProtection # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ResponseLaunchTemplateData AWS API Documentation # class ResponseLaunchTemplateData < Struct.new( :kernel_id, :ebs_optimized, :iam_instance_profile, :block_device_mappings, :network_interfaces, :image_id, :instance_type, :key_name, :monitoring, :placement, :ram_disk_id, :disable_api_termination, :instance_initiated_shutdown_behavior, :user_data, :tag_specifications, :elastic_gpu_specifications, :elastic_inference_accelerators, :security_group_ids, :security_groups, :instance_market_options, :credit_specification, :cpu_options, :capacity_reservation_specification, :license_specifications, :hibernation_options, :metadata_options, :enclave_options, :instance_requirements, :private_dns_name_options, :maintenance_options, :disable_api_stop) SENSITIVE = [:user_data] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] public_ip # The Elastic IP address. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RestoreAddressToClassicRequest AWS API Documentation # class RestoreAddressToClassicRequest < Struct.new( :dry_run, :public_ip) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] public_ip # The Elastic IP address. # @return [String] # # @!attribute [rw] status # The move status for the IP address. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RestoreAddressToClassicResult AWS API Documentation # class RestoreAddressToClassicResult < Struct.new( :public_ip, :status) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] image_id # The ID of the AMI to restore. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RestoreImageFromRecycleBinRequest AWS API Documentation # class RestoreImageFromRecycleBinRequest < Struct.new( :image_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] return # Returns `true` if the request succeeds; otherwise, it returns an # error. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RestoreImageFromRecycleBinResult AWS API Documentation # class RestoreImageFromRecycleBinResult < Struct.new( :return) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] prefix_list_id # The ID of the prefix list. # @return [String] # # @!attribute [rw] previous_version # The version to restore. # @return [Integer] # # @!attribute [rw] current_version # The current version number for the prefix list. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RestoreManagedPrefixListVersionRequest AWS API Documentation # class RestoreManagedPrefixListVersionRequest < Struct.new( :dry_run, :prefix_list_id, :previous_version, :current_version) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] prefix_list # Information about the prefix list. # @return [Types::ManagedPrefixList] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RestoreManagedPrefixListVersionResult AWS API Documentation # class RestoreManagedPrefixListVersionResult < Struct.new( :prefix_list) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] snapshot_id # The ID of the snapshot to restore. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RestoreSnapshotFromRecycleBinRequest AWS API Documentation # class RestoreSnapshotFromRecycleBinRequest < Struct.new( :snapshot_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] snapshot_id # The ID of the snapshot. # @return [String] # # @!attribute [rw] outpost_arn # The ARN of the Outpost on which the snapshot is stored. For more # information, see [Amazon EBS local snapshots on Outposts][1] in the # *Amazon EBS User Guide*. # # # # [1]: https://docs.aws.amazon.com/ebs/latest/userguide/snapshots-outposts.html # @return [String] # # @!attribute [rw] description # The description for the snapshot. # @return [String] # # @!attribute [rw] encrypted # Indicates whether the snapshot is encrypted. # @return [Boolean] # # @!attribute [rw] owner_id # The ID of the Amazon Web Services account that owns the EBS # snapshot. # @return [String] # # @!attribute [rw] progress # The progress of the snapshot, as a percentage. # @return [String] # # @!attribute [rw] start_time # The time stamp when the snapshot was initiated. # @return [Time] # # @!attribute [rw] state # The state of the snapshot. # @return [String] # # @!attribute [rw] volume_id # The ID of the volume that was used to create the snapshot. # @return [String] # # @!attribute [rw] volume_size # The size of the volume, in GiB. # @return [Integer] # # @!attribute [rw] sse_type # Reserved for future use. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RestoreSnapshotFromRecycleBinResult AWS API Documentation # class RestoreSnapshotFromRecycleBinResult < Struct.new( :snapshot_id, :outpost_arn, :description, :encrypted, :owner_id, :progress, :start_time, :state, :volume_id, :volume_size, :sse_type) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] snapshot_id # The ID of the snapshot to restore. # @return [String] # # @!attribute [rw] temporary_restore_days # Specifies the number of days for which to temporarily restore an # archived snapshot. Required for temporary restores only. The # snapshot will be automatically re-archived after this period. # # To temporarily restore an archived snapshot, specify the number of # days and omit the **PermanentRestore** parameter or set it to # `false`. # @return [Integer] # # @!attribute [rw] permanent_restore # Indicates whether to permanently restore an archived snapshot. To # permanently restore an archived snapshot, specify `true` and omit # the **RestoreSnapshotTierRequest$TemporaryRestoreDays** parameter. # @return [Boolean] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RestoreSnapshotTierRequest AWS API Documentation # class RestoreSnapshotTierRequest < Struct.new( :snapshot_id, :temporary_restore_days, :permanent_restore, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] snapshot_id # The ID of the snapshot. # @return [String] # # @!attribute [rw] restore_start_time # The date and time when the snapshot restore process started. # @return [Time] # # @!attribute [rw] restore_duration # For temporary restores only. The number of days for which the # archived snapshot is temporarily restored. # @return [Integer] # # @!attribute [rw] is_permanent_restore # Indicates whether the snapshot is permanently restored. `true` # indicates a permanent restore. `false` indicates a temporary # restore. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RestoreSnapshotTierResult AWS API Documentation # class RestoreSnapshotTierResult < Struct.new( :snapshot_id, :restore_start_time, :restore_duration, :is_permanent_restore) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] client_vpn_endpoint_id # The ID of the Client VPN endpoint with which the authorization rule # is associated. # @return [String] # # @!attribute [rw] target_network_cidr # The IPv4 address range, in CIDR notation, of the network for which # access is being removed. # @return [String] # # @!attribute [rw] access_group_id # The ID of the Active Directory group for which to revoke access. # @return [String] # # @!attribute [rw] revoke_all_groups # Indicates whether access should be revoked for all clients. # @return [Boolean] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RevokeClientVpnIngressRequest AWS API Documentation # class RevokeClientVpnIngressRequest < Struct.new( :client_vpn_endpoint_id, :target_network_cidr, :access_group_id, :revoke_all_groups, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] status # The current state of the authorization rule. # @return [Types::ClientVpnAuthorizationRuleStatus] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RevokeClientVpnIngressResult AWS API Documentation # class RevokeClientVpnIngressResult < Struct.new( :status) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] group_id # The ID of the security group. # @return [String] # # @!attribute [rw] ip_permissions # The sets of IP permissions. You can't specify a destination # security group and a CIDR IP address range in the same set of # permissions. # @return [Array] # # @!attribute [rw] security_group_rule_ids # The IDs of the security group rules. # @return [Array] # # @!attribute [rw] cidr_ip # Not supported. Use a set of IP permissions to specify the CIDR. # @return [String] # # @!attribute [rw] from_port # Not supported. Use a set of IP permissions to specify the port. # @return [Integer] # # @!attribute [rw] ip_protocol # Not supported. Use a set of IP permissions to specify the protocol # name or number. # @return [String] # # @!attribute [rw] to_port # Not supported. Use a set of IP permissions to specify the port. # @return [Integer] # # @!attribute [rw] source_security_group_name # Not supported. Use a set of IP permissions to specify a destination # security group. # @return [String] # # @!attribute [rw] source_security_group_owner_id # Not supported. Use a set of IP permissions to specify a destination # security group. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RevokeSecurityGroupEgressRequest AWS API Documentation # class RevokeSecurityGroupEgressRequest < Struct.new( :dry_run, :group_id, :ip_permissions, :security_group_rule_ids, :cidr_ip, :from_port, :ip_protocol, :to_port, :source_security_group_name, :source_security_group_owner_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] return # Returns `true` if the request succeeds; otherwise, returns an error. # @return [Boolean] # # @!attribute [rw] unknown_ip_permissions # The outbound rules that were unknown to the service. In some cases, # `unknownIpPermissionSet` might be in a different format from the # request parameter. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RevokeSecurityGroupEgressResult AWS API Documentation # class RevokeSecurityGroupEgressResult < Struct.new( :return, :unknown_ip_permissions) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] cidr_ip # The CIDR IP address range. You can't specify this parameter when # specifying a source security group. # @return [String] # # @!attribute [rw] from_port # If the protocol is TCP or UDP, this is the start of the port range. # If the protocol is ICMP, this is the ICMP type or -1 (all ICMP # types). # @return [Integer] # # @!attribute [rw] group_id # The ID of the security group. # @return [String] # # @!attribute [rw] group_name # \[Default VPC\] The name of the security group. You must specify # either the security group ID or the security group name in the # request. For security groups in a nondefault VPC, you must specify # the security group ID. # @return [String] # # @!attribute [rw] ip_permissions # The sets of IP permissions. You can't specify a source security # group and a CIDR IP address range in the same set of permissions. # @return [Array] # # @!attribute [rw] ip_protocol # The IP protocol name (`tcp`, `udp`, `icmp`) or number (see [Protocol # Numbers][1]). Use `-1` to specify all. # # # # [1]: http://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml # @return [String] # # @!attribute [rw] source_security_group_name # \[Default VPC\] The name of the source security group. You can't # specify this parameter in combination with the following parameters: # the CIDR IP address range, the start of the port range, the IP # protocol, and the end of the port range. The source security group # must be in the same VPC. To revoke a specific rule for an IP # protocol and port range, use a set of IP permissions instead. # @return [String] # # @!attribute [rw] source_security_group_owner_id # Not supported. # @return [String] # # @!attribute [rw] to_port # If the protocol is TCP or UDP, this is the end of the port range. If # the protocol is ICMP, this is the ICMP code or -1 (all ICMP codes). # @return [Integer] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] security_group_rule_ids # The IDs of the security group rules. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RevokeSecurityGroupIngressRequest AWS API Documentation # class RevokeSecurityGroupIngressRequest < Struct.new( :cidr_ip, :from_port, :group_id, :group_name, :ip_permissions, :ip_protocol, :source_security_group_name, :source_security_group_owner_id, :to_port, :dry_run, :security_group_rule_ids) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] return # Returns `true` if the request succeeds; otherwise, returns an error. # @return [Boolean] # # @!attribute [rw] unknown_ip_permissions # The inbound rules that were unknown to the service. In some cases, # `unknownIpPermissionSet` might be in a different format from the # request parameter. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RevokeSecurityGroupIngressResult AWS API Documentation # class RevokeSecurityGroupIngressResult < Struct.new( :return, :unknown_ip_permissions) SENSITIVE = [] include Aws::Structure end # Describes a route in a route table. # # @!attribute [rw] destination_cidr_block # The IPv4 CIDR block used for the destination match. # @return [String] # # @!attribute [rw] destination_ipv_6_cidr_block # The IPv6 CIDR block used for the destination match. # @return [String] # # @!attribute [rw] destination_prefix_list_id # The prefix of the Amazon Web Service. # @return [String] # # @!attribute [rw] egress_only_internet_gateway_id # The ID of the egress-only internet gateway. # @return [String] # # @!attribute [rw] gateway_id # The ID of a gateway attached to your VPC. # @return [String] # # @!attribute [rw] instance_id # The ID of a NAT instance in your VPC. # @return [String] # # @!attribute [rw] instance_owner_id # The ID of Amazon Web Services account that owns the instance. # @return [String] # # @!attribute [rw] nat_gateway_id # The ID of a NAT gateway. # @return [String] # # @!attribute [rw] transit_gateway_id # The ID of a transit gateway. # @return [String] # # @!attribute [rw] local_gateway_id # The ID of the local gateway. # @return [String] # # @!attribute [rw] carrier_gateway_id # The ID of the carrier gateway. # @return [String] # # @!attribute [rw] network_interface_id # The ID of the network interface. # @return [String] # # @!attribute [rw] origin # 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. # @return [String] # # @!attribute [rw] state # 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). # @return [String] # # @!attribute [rw] vpc_peering_connection_id # The ID of a VPC peering connection. # @return [String] # # @!attribute [rw] core_network_arn # The Amazon Resource Name (ARN) of the core network. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Route AWS API Documentation # class Route < Struct.new( :destination_cidr_block, :destination_ipv_6_cidr_block, :destination_prefix_list_id, :egress_only_internet_gateway_id, :gateway_id, :instance_id, :instance_owner_id, :nat_gateway_id, :transit_gateway_id, :local_gateway_id, :carrier_gateway_id, :network_interface_id, :origin, :state, :vpc_peering_connection_id, :core_network_arn) SENSITIVE = [] include Aws::Structure end # Describes a route table. # # @!attribute [rw] associations # The associations between the route table and one or more subnets or # a gateway. # @return [Array] # # @!attribute [rw] propagating_vgws # Any virtual private gateway (VGW) propagating routes. # @return [Array] # # @!attribute [rw] route_table_id # The ID of the route table. # @return [String] # # @!attribute [rw] routes # The routes in the route table. # @return [Array] # # @!attribute [rw] tags # Any tags assigned to the route table. # @return [Array] # # @!attribute [rw] vpc_id # The ID of the VPC. # @return [String] # # @!attribute [rw] owner_id # The ID of the Amazon Web Services account that owns the route table. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RouteTable AWS API Documentation # class RouteTable < Struct.new( :associations, :propagating_vgws, :route_table_id, :routes, :tags, :vpc_id, :owner_id) SENSITIVE = [] include Aws::Structure end # Describes an association between a route table and a subnet or # gateway. # # @!attribute [rw] main # Indicates whether this is the main route table. # @return [Boolean] # # @!attribute [rw] route_table_association_id # The ID of the association. # @return [String] # # @!attribute [rw] route_table_id # The ID of the route table. # @return [String] # # @!attribute [rw] subnet_id # The ID of the subnet. A subnet ID is not returned for an implicit # association. # @return [String] # # @!attribute [rw] gateway_id # The ID of the internet gateway or virtual private gateway. # @return [String] # # @!attribute [rw] association_state # The state of the association. # @return [Types::RouteTableAssociationState] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RouteTableAssociation AWS API Documentation # class RouteTableAssociation < Struct.new( :main, :route_table_association_id, :route_table_id, :subnet_id, :gateway_id, :association_state) SENSITIVE = [] include Aws::Structure end # Describes the state of an association between a route table and a # subnet or gateway. # # @!attribute [rw] state # The state of the association. # @return [String] # # @!attribute [rw] status_message # The status message, if applicable. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RouteTableAssociationState AWS API Documentation # class RouteTableAssociationState < Struct.new( :state, :status_message) SENSITIVE = [] include Aws::Structure end # Describes the rule options for a stateful rule group. # # @!attribute [rw] rule_group_arn # The ARN of the rule group. # @return [String] # # @!attribute [rw] rule_options # The rule options. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RuleGroupRuleOptionsPair AWS API Documentation # class RuleGroupRuleOptionsPair < Struct.new( :rule_group_arn, :rule_options) SENSITIVE = [] include Aws::Structure end # Describes the type of a stateful rule group. # # @!attribute [rw] rule_group_arn # The ARN of the rule group. # @return [String] # # @!attribute [rw] rule_group_type # The rule group type. The possible values are `Domain List` and # `Suricata`. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RuleGroupTypePair AWS API Documentation # class RuleGroupTypePair < Struct.new( :rule_group_arn, :rule_group_type) SENSITIVE = [] include Aws::Structure end # Describes additional settings for a stateful rule. # # @!attribute [rw] keyword # The Suricata keyword. # @return [String] # # @!attribute [rw] settings # The settings for the keyword. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RuleOption AWS API Documentation # class RuleOption < Struct.new( :keyword, :settings) SENSITIVE = [] include Aws::Structure end # Describes the monitoring of an instance. # # @!attribute [rw] enabled # Indicates whether detailed monitoring is enabled. Otherwise, basic # monitoring is enabled. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RunInstancesMonitoringEnabled AWS API Documentation # class RunInstancesMonitoringEnabled < Struct.new( :enabled) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] block_device_mappings # The block device mapping, which defines the EBS volumes and instance # store volumes to attach to the instance at launch. For more # information, see [Block device mappings][1] in the *Amazon EC2 User # Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/block-device-mapping-concepts.html # @return [Array] # # @!attribute [rw] image_id # The ID of the AMI. An AMI ID is required to launch an instance and # must be specified here or in a launch template. # @return [String] # # @!attribute [rw] instance_type # The instance type. For more information, see [Instance types][1] in # the *Amazon EC2 User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html # @return [String] # # @!attribute [rw] ipv_6_address_count # The number of IPv6 addresses to associate with the primary network # interface. Amazon EC2 chooses the IPv6 addresses from the range of # your 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. # # You cannot specify this option and the network interfaces option in # the same request. # @return [Integer] # # @!attribute [rw] ipv_6_addresses # The IPv6 addresses from the range of the subnet to associate with # the primary 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. # # You cannot specify this option and the network interfaces option in # the same request. # @return [Array] # # @!attribute [rw] kernel_id # The ID of the kernel. # # We recommend that you use PV-GRUB instead of kernels and RAM disks. # For more information, see [PV-GRUB][1] in the *Amazon EC2 User # Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/UserProvidedkernels.html # @return [String] # # @!attribute [rw] key_name # The name of the key pair. You can create a key pair using # [CreateKeyPair][1] or [ImportKeyPair][2]. # # 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. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateKeyPair.html # [2]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ImportKeyPair.html # @return [String] # # @!attribute [rw] max_count # The maximum number of instances to launch. If you specify more # instances than Amazon EC2 can launch in the target Availability # Zone, Amazon EC2 launches the largest possible number of instances # above `MinCount`. # # Constraints: Between 1 and the maximum number you're allowed for # the specified instance type. For more information about the default # limits, and how to request an increase, see [How many instances can # I run in Amazon EC2][1] in the Amazon EC2 FAQ. # # # # [1]: http://aws.amazon.com/ec2/faqs/#How_many_instances_can_I_run_in_Amazon_EC2 # @return [Integer] # # @!attribute [rw] min_count # The minimum number of instances to launch. If you specify a minimum # that is more instances than Amazon EC2 can launch in the target # Availability Zone, Amazon EC2 launches no instances. # # Constraints: Between 1 and the maximum number you're allowed for # the specified instance type. For more information about the default # limits, and how to request an increase, see [How many instances can # I run in Amazon EC2][1] in the Amazon EC2 General FAQ. # # # # [1]: http://aws.amazon.com/ec2/faqs/#How_many_instances_can_I_run_in_Amazon_EC2 # @return [Integer] # # @!attribute [rw] monitoring # Specifies whether detailed monitoring is enabled for the instance. # @return [Types::RunInstancesMonitoringEnabled] # # @!attribute [rw] placement # The placement for the instance. # @return [Types::Placement] # # @!attribute [rw] ramdisk_id # The ID of the RAM disk to select. 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, go to the Amazon Web Services Resource Center and # search for the kernel ID. # # We recommend that you use PV-GRUB instead of kernels and RAM disks. # For more information, see [PV-GRUB][1] in the *Amazon EC2 User # Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/UserProvidedkernels.html # @return [String] # # @!attribute [rw] security_group_ids # The IDs of the security groups. You can create a security group # using [CreateSecurityGroup][1]. # # If you specify a network interface, you must specify any security # groups as part of the network interface instead of using this # parameter. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateSecurityGroup.html # @return [Array] # # @!attribute [rw] security_groups # \[Default VPC\] The names 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. # # Default: Amazon EC2 uses the default security group. # @return [Array] # # @!attribute [rw] subnet_id # The ID of the subnet to launch the instance into. # # If you specify a network interface, you must specify any subnets as # part of the network interface instead of using this parameter. # @return [String] # # @!attribute [rw] user_data # The user data script to make available to the instance. For more # information, see [Run commands on your Linux instance at launch][1] # and [Run commands on your Windows instance at launch][2]. If you are # using a command line tool, base64-encoding is performed for you, and # you can load the text from a file. Otherwise, you must provide # base64-encoded text. User data is limited to 16 KB. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/user-data.html # [2]: https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/ec2-windows-user-data.html # @return [String] # # @!attribute [rw] additional_info # Reserved. # @return [String] # # @!attribute [rw] client_token # Unique, case-sensitive identifier you provide to ensure the # idempotency of the request. If you do not specify a client token, a # randomly generated token is used for the request to ensure # idempotency. # # For more information, see [Ensuring Idempotency][1]. # # Constraints: Maximum 64 ASCII characters # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] disable_api_termination # 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][1]. Alternatively, if you set # `InstanceInitiatedShutdownBehavior` to `terminate`, you can # terminate the instance by running the shutdown command from the # instance. # # Default: `false` # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ModifyInstanceAttribute.html # @return [Boolean] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] ebs_optimized # 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. # # Default: `false` # @return [Boolean] # # @!attribute [rw] iam_instance_profile # The name or Amazon Resource Name (ARN) of an IAM instance profile. # @return [Types::IamInstanceProfileSpecification] # # @!attribute [rw] instance_initiated_shutdown_behavior # Indicates whether an instance stops or terminates when you initiate # shutdown from the instance (using the operating system command for # system shutdown). # # Default: `stop` # @return [String] # # @!attribute [rw] network_interfaces # The network interfaces to associate with the instance. # @return [Array] # # @!attribute [rw] private_ip_address # The primary IPv4 address. You must specify a value from the IPv4 # address range of the subnet. # # Only one private IP address can be designated as primary. You can't # specify this option if you've specified the option to designate a # private IP address as the primary IP address in a network interface # specification. You cannot specify this option if you're launching # more than one instance in the request. # # You cannot specify this option and the network interfaces option in # the same request. # @return [String] # # @!attribute [rw] elastic_gpu_specification # An elastic GPU to associate with the instance. # # Amazon Elastic Graphics reached end of life on January 8, 2024. # # # @return [Array] # # @!attribute [rw] elastic_inference_accelerators # An elastic inference accelerator to associate with the instance. # # Amazon Elastic Inference (EI) is no longer available to new # customers. For more information, see [Amazon Elastic Inference # FAQs][1]. # # # # # # [1]: http://aws.amazon.com/machine-learning/elastic-inference/faqs/ # @return [Array] # # @!attribute [rw] tag_specifications # The tags to apply to the resources that are created during instance # launch. # # You can specify tags for the following resources only: # # * Instances # # * Volumes # # * Spot Instance requests # # * Network interfaces # # To tag a resource after it has been created, see [CreateTags][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateTags.html # @return [Array] # # @!attribute [rw] launch_template # The launch template to use to launch the instances. Any parameters # that you specify in RunInstances override the same parameters in the # launch template. You can specify either the name or ID of a launch # template, but not both. # @return [Types::LaunchTemplateSpecification] # # @!attribute [rw] instance_market_options # The market (purchasing) option for the instances. # # For RunInstances, persistent Spot Instance requests are only # supported when **InstanceInterruptionBehavior** is set to either # `hibernate` or `stop`. # @return [Types::InstanceMarketOptionsRequest] # # @!attribute [rw] credit_specification # The credit option for CPU usage of the burstable performance # instance. Valid values are `standard` and `unlimited`. To change # this attribute after launch, use [ # ModifyInstanceCreditSpecification][1]. For more information, see # [Burstable performance instances][2] in the *Amazon EC2 User Guide*. # # Default: `standard` (T2 instances) or `unlimited` (T3/T3a/T4g # instances) # # For T3 instances with `host` tenancy, only `standard` is supported. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ModifyInstanceCreditSpecification.html # [2]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances.html # @return [Types::CreditSpecificationRequest] # # @!attribute [rw] cpu_options # The CPU options for the instance. For more information, see # [Optimize CPU options][1] in the *Amazon EC2 User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-optimize-cpu.html # @return [Types::CpuOptionsRequest] # # @!attribute [rw] capacity_reservation_specification # Information about 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). # @return [Types::CapacityReservationSpecification] # # @!attribute [rw] hibernation_options # Indicates whether an instance is enabled for hibernation. This # parameter is valid only if the instance meets the [hibernation # prerequisites][1]. For more information, see [Hibernate your # instance][2] in the *Amazon EC2 User Guide*. # # You can't enable hibernation and Amazon Web Services Nitro Enclaves # on the same instance. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/hibernating-prerequisites.html # [2]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Hibernate.html # @return [Types::HibernationOptionsRequest] # # @!attribute [rw] license_specifications # The license configurations. # @return [Array] # # @!attribute [rw] metadata_options # The metadata options for the instance. For more information, see # [Instance metadata and user data][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html # @return [Types::InstanceMetadataOptionsRequest] # # @!attribute [rw] enclave_options # Indicates whether the instance is enabled for Amazon Web Services # Nitro Enclaves. For more information, see [What is Amazon Web # Services Nitro Enclaves?][1] in the *Amazon Web Services Nitro # Enclaves User Guide*. # # You can't enable Amazon Web Services Nitro Enclaves and hibernation # on the same instance. # # # # [1]: https://docs.aws.amazon.com/enclaves/latest/user/nitro-enclave.html # @return [Types::EnclaveOptionsRequest] # # @!attribute [rw] private_dns_name_options # The options for the instance hostname. The default values are # inherited from the subnet. Applies only if creating a network # interface, not attaching an existing one. # @return [Types::PrivateDnsNameOptionsRequest] # # @!attribute [rw] maintenance_options # The maintenance and recovery options for the instance. # @return [Types::InstanceMaintenanceOptionsRequest] # # @!attribute [rw] disable_api_stop # Indicates whether an instance is enabled for stop protection. For # more information, see [Stop protection][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Stop_Start.html#Using_StopProtection # @return [Boolean] # # @!attribute [rw] enable_primary_ipv_6 # If you’re launching an instance into a dual-stack or IPv6-only # subnet, you can enable assigning a primary IPv6 address. A primary # IPv6 address is an IPv6 GUA address associated with an ENI that you # have enabled to use a primary IPv6 address. Use this option if an # instance relies on its IPv6 address not changing. When you launch # the instance, Amazon Web Services will automatically assign an IPv6 # address associated with the ENI attached to your instance to be the # primary IPv6 address. Once you enable an IPv6 GUA address to be a # primary IPv6, you cannot disable it. 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. If you have multiple IPv6 addresses # associated with an ENI attached to your instance and you enable a # primary IPv6 address, the first IPv6 GUA address associated with the # ENI becomes the primary IPv6 address. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RunInstancesRequest AWS API Documentation # class RunInstancesRequest < Struct.new( :block_device_mappings, :image_id, :instance_type, :ipv_6_address_count, :ipv_6_addresses, :kernel_id, :key_name, :max_count, :min_count, :monitoring, :placement, :ramdisk_id, :security_group_ids, :security_groups, :subnet_id, :user_data, :additional_info, :client_token, :disable_api_termination, :dry_run, :ebs_optimized, :iam_instance_profile, :instance_initiated_shutdown_behavior, :network_interfaces, :private_ip_address, :elastic_gpu_specification, :elastic_inference_accelerators, :tag_specifications, :launch_template, :instance_market_options, :credit_specification, :cpu_options, :capacity_reservation_specification, :hibernation_options, :license_specifications, :metadata_options, :enclave_options, :private_dns_name_options, :maintenance_options, :disable_api_stop, :enable_primary_ipv_6) SENSITIVE = [:user_data] include Aws::Structure end # Contains the parameters for RunScheduledInstances. # # @!attribute [rw] client_token # Unique, case-sensitive identifier that ensures the idempotency of # the request. For more information, see [Ensuring Idempotency][1]. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] instance_count # The number of instances. # # Default: 1 # @return [Integer] # # @!attribute [rw] launch_specification # The launch specification. You must match the instance type, # Availability Zone, network, and platform of the schedule that you # purchased. # @return [Types::ScheduledInstancesLaunchSpecification] # # @!attribute [rw] scheduled_instance_id # The Scheduled Instance ID. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RunScheduledInstancesRequest AWS API Documentation # class RunScheduledInstancesRequest < Struct.new( :client_token, :dry_run, :instance_count, :launch_specification, :scheduled_instance_id) SENSITIVE = [:launch_specification] include Aws::Structure end # Contains the output of RunScheduledInstances. # # @!attribute [rw] instance_id_set # The IDs of the newly launched instances. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/RunScheduledInstancesResult AWS API Documentation # class RunScheduledInstancesResult < Struct.new( :instance_id_set) SENSITIVE = [] include Aws::Structure end # 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 # tags][1] in the *Amazon Simple Storage Service User Guide*. # # # # [1]: https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-tagging.html # # @!attribute [rw] key # 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`:. # @return [String] # # @!attribute [rw] value # The value of the tag. # # Constraints: Tag values are case-sensitive and can be up to 256 # Unicode characters in length. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/S3ObjectTag AWS API Documentation # class S3ObjectTag < Struct.new( :key, :value) SENSITIVE = [] include Aws::Structure end # Describes the storage parameters for Amazon S3 and Amazon S3 buckets # for an instance store-backed AMI. # # @!attribute [rw] aws_access_key_id # 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][1] in the *Account # ManagementReference Guide*. # # # # [1]: https://docs.aws.amazon.com/accounts/latest/reference/best-practices.html # @return [String] # # @!attribute [rw] bucket # 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. # @return [String] # # @!attribute [rw] prefix # The beginning of the file name of the AMI. # @return [String] # # @!attribute [rw] upload_policy # An Amazon S3 upload policy that gives Amazon EC2 permission to # upload items into Amazon S3 on your behalf. # @return [String] # # @!attribute [rw] upload_policy_signature # The signature of the JSON document. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/S3Storage AWS API Documentation # class S3Storage < Struct.new( :aws_access_key_id, :bucket, :prefix, :upload_policy, :upload_policy_signature) SENSITIVE = [:upload_policy_signature] include Aws::Structure end # Describes a Scheduled Instance. # # @!attribute [rw] availability_zone # The Availability Zone. # @return [String] # # @!attribute [rw] create_date # The date when the Scheduled Instance was purchased. # @return [Time] # # @!attribute [rw] hourly_price # The hourly price for a single instance. # @return [String] # # @!attribute [rw] instance_count # The number of instances. # @return [Integer] # # @!attribute [rw] instance_type # The instance type. # @return [String] # # @!attribute [rw] network_platform # The network platform. # @return [String] # # @!attribute [rw] next_slot_start_time # The time for the next schedule to start. # @return [Time] # # @!attribute [rw] platform # The platform (`Linux/UNIX` or `Windows`). # @return [String] # # @!attribute [rw] previous_slot_end_time # The time that the previous schedule ended or will end. # @return [Time] # # @!attribute [rw] recurrence # The schedule recurrence. # @return [Types::ScheduledInstanceRecurrence] # # @!attribute [rw] scheduled_instance_id # The Scheduled Instance ID. # @return [String] # # @!attribute [rw] slot_duration_in_hours # The number of hours in the schedule. # @return [Integer] # # @!attribute [rw] term_end_date # The end date for the Scheduled Instance. # @return [Time] # # @!attribute [rw] term_start_date # The start date for the Scheduled Instance. # @return [Time] # # @!attribute [rw] total_scheduled_instance_hours # The total number of hours for a single instance for the entire term. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ScheduledInstance AWS API Documentation # class ScheduledInstance < Struct.new( :availability_zone, :create_date, :hourly_price, :instance_count, :instance_type, :network_platform, :next_slot_start_time, :platform, :previous_slot_end_time, :recurrence, :scheduled_instance_id, :slot_duration_in_hours, :term_end_date, :term_start_date, :total_scheduled_instance_hours) SENSITIVE = [] include Aws::Structure end # Describes a schedule that is available for your Scheduled Instances. # # @!attribute [rw] availability_zone # The Availability Zone. # @return [String] # # @!attribute [rw] available_instance_count # The number of available instances. # @return [Integer] # # @!attribute [rw] first_slot_start_time # The time period for the first schedule to start. # @return [Time] # # @!attribute [rw] hourly_price # The hourly price for a single instance. # @return [String] # # @!attribute [rw] instance_type # The instance type. You can specify one of the C3, C4, M4, or R3 # instance types. # @return [String] # # @!attribute [rw] max_term_duration_in_days # The maximum term. The only possible value is 365 days. # @return [Integer] # # @!attribute [rw] min_term_duration_in_days # The minimum term. The only possible value is 365 days. # @return [Integer] # # @!attribute [rw] network_platform # The network platform. # @return [String] # # @!attribute [rw] platform # The platform (`Linux/UNIX` or `Windows`). # @return [String] # # @!attribute [rw] purchase_token # The purchase token. This token expires in two hours. # @return [String] # # @!attribute [rw] recurrence # The schedule recurrence. # @return [Types::ScheduledInstanceRecurrence] # # @!attribute [rw] slot_duration_in_hours # The number of hours in the schedule. # @return [Integer] # # @!attribute [rw] total_scheduled_instance_hours # The total number of hours for a single instance for the entire term. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ScheduledInstanceAvailability AWS API Documentation # class ScheduledInstanceAvailability < Struct.new( :availability_zone, :available_instance_count, :first_slot_start_time, :hourly_price, :instance_type, :max_term_duration_in_days, :min_term_duration_in_days, :network_platform, :platform, :purchase_token, :recurrence, :slot_duration_in_hours, :total_scheduled_instance_hours) SENSITIVE = [] include Aws::Structure end # Describes the recurring schedule for a Scheduled Instance. # # @!attribute [rw] frequency # The frequency (`Daily`, `Weekly`, or `Monthly`). # @return [String] # # @!attribute [rw] interval # The interval quantity. The interval unit depends on the value of # `frequency`. For example, every 2 weeks or every 2 months. # @return [Integer] # # @!attribute [rw] occurrence_day_set # 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). # @return [Array] # # @!attribute [rw] occurrence_relative_to_end # Indicates whether the occurrence is relative to the end of the # specified week or month. # @return [Boolean] # # @!attribute [rw] occurrence_unit # The unit for `occurrenceDaySet` (`DayOfWeek` or `DayOfMonth`). # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ScheduledInstanceRecurrence AWS API Documentation # class ScheduledInstanceRecurrence < Struct.new( :frequency, :interval, :occurrence_day_set, :occurrence_relative_to_end, :occurrence_unit) SENSITIVE = [] include Aws::Structure end # Describes the recurring schedule for a Scheduled Instance. # # @!attribute [rw] frequency # The frequency (`Daily`, `Weekly`, or `Monthly`). # @return [String] # # @!attribute [rw] interval # The interval quantity. The interval unit depends on the value of # `Frequency`. For example, every 2 weeks or every 2 months. # @return [Integer] # # @!attribute [rw] occurrence_days # 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. # @return [Array] # # @!attribute [rw] occurrence_relative_to_end # 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. # @return [Boolean] # # @!attribute [rw] occurrence_unit # 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. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ScheduledInstanceRecurrenceRequest AWS API Documentation # class ScheduledInstanceRecurrenceRequest < Struct.new( :frequency, :interval, :occurrence_days, :occurrence_relative_to_end, :occurrence_unit) SENSITIVE = [] include Aws::Structure end # Describes a block device mapping for a Scheduled Instance. # # @!attribute [rw] device_name # The device name (for example, `/dev/sdh` or `xvdh`). # @return [String] # # @!attribute [rw] ebs # Parameters used to set up EBS volumes automatically when the # instance is launched. # @return [Types::ScheduledInstancesEbs] # # @!attribute [rw] no_device # To omit the device from the block device mapping, specify an empty # string. # @return [String] # # @!attribute [rw] virtual_name # 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. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ScheduledInstancesBlockDeviceMapping AWS API Documentation # class ScheduledInstancesBlockDeviceMapping < Struct.new( :device_name, :ebs, :no_device, :virtual_name) SENSITIVE = [] include Aws::Structure end # Describes an EBS volume for a Scheduled Instance. # # @!attribute [rw] delete_on_termination # Indicates whether the volume is deleted on instance termination. # @return [Boolean] # # @!attribute [rw] encrypted # Indicates whether the volume is encrypted. You can attached # encrypted volumes only to instances that support them. # @return [Boolean] # # @!attribute [rw] iops # The number of I/O operations per second (IOPS) to provision for a # `gp3`, `io1`, or `io2` volume. # @return [Integer] # # @!attribute [rw] snapshot_id # The ID of the snapshot. # @return [String] # # @!attribute [rw] volume_size # 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. # @return [Integer] # # @!attribute [rw] volume_type # The volume type. # # Default: `gp2` # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ScheduledInstancesEbs AWS API Documentation # class ScheduledInstancesEbs < Struct.new( :delete_on_termination, :encrypted, :iops, :snapshot_id, :volume_size, :volume_type) SENSITIVE = [] include Aws::Structure end # Describes an IAM instance profile for a Scheduled Instance. # # @!attribute [rw] arn # The Amazon Resource Name (ARN). # @return [String] # # @!attribute [rw] name # The name. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ScheduledInstancesIamInstanceProfile AWS API Documentation # class ScheduledInstancesIamInstanceProfile < Struct.new( :arn, :name) SENSITIVE = [] include Aws::Structure end # Describes an IPv6 address. # # @!attribute [rw] ipv_6_address # The IPv6 address. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ScheduledInstancesIpv6Address AWS API Documentation # class ScheduledInstancesIpv6Address < Struct.new( :ipv_6_address) SENSITIVE = [] include Aws::Structure end # 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`. # # @!attribute [rw] block_device_mappings # The block device mapping entries. # @return [Array] # # @!attribute [rw] ebs_optimized # 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` # @return [Boolean] # # @!attribute [rw] iam_instance_profile # The IAM instance profile. # @return [Types::ScheduledInstancesIamInstanceProfile] # # @!attribute [rw] image_id # The ID of the Amazon Machine Image (AMI). # @return [String] # # @!attribute [rw] instance_type # The instance type. # @return [String] # # @!attribute [rw] kernel_id # The ID of the kernel. # @return [String] # # @!attribute [rw] key_name # The name of the key pair. # @return [String] # # @!attribute [rw] monitoring # Enable or disable monitoring for the instances. # @return [Types::ScheduledInstancesMonitoring] # # @!attribute [rw] network_interfaces # The network interfaces. # @return [Array] # # @!attribute [rw] placement # The placement information. # @return [Types::ScheduledInstancesPlacement] # # @!attribute [rw] ramdisk_id # The ID of the RAM disk. # @return [String] # # @!attribute [rw] security_group_ids # The IDs of the security groups. # @return [Array] # # @!attribute [rw] subnet_id # The ID of the subnet in which to launch the instances. # @return [String] # # @!attribute [rw] user_data # The base64-encoded MIME user data. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ScheduledInstancesLaunchSpecification AWS API Documentation # class ScheduledInstancesLaunchSpecification < Struct.new( :block_device_mappings, :ebs_optimized, :iam_instance_profile, :image_id, :instance_type, :kernel_id, :key_name, :monitoring, :network_interfaces, :placement, :ramdisk_id, :security_group_ids, :subnet_id, :user_data) SENSITIVE = [] include Aws::Structure end # Describes whether monitoring is enabled for a Scheduled Instance. # # @!attribute [rw] enabled # Indicates whether monitoring is enabled. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ScheduledInstancesMonitoring AWS API Documentation # class ScheduledInstancesMonitoring < Struct.new( :enabled) SENSITIVE = [] include Aws::Structure end # Describes a network interface for a Scheduled Instance. # # @!attribute [rw] associate_public_ip_address # 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][1]. # # # # [1]: http://aws.amazon.com/vpc/pricing/ # @return [Boolean] # # @!attribute [rw] delete_on_termination # Indicates whether to delete the interface when the instance is # terminated. # @return [Boolean] # # @!attribute [rw] description # The description. # @return [String] # # @!attribute [rw] device_index # The index of the device for the network interface attachment. # @return [Integer] # # @!attribute [rw] groups # The IDs of the security groups. # @return [Array] # # @!attribute [rw] ipv_6_address_count # The number of IPv6 addresses to assign to the network interface. The # IPv6 addresses are automatically selected from the subnet range. # @return [Integer] # # @!attribute [rw] ipv_6_addresses # The specific IPv6 addresses from the subnet range. # @return [Array] # # @!attribute [rw] network_interface_id # The ID of the network interface. # @return [String] # # @!attribute [rw] private_ip_address # The IPv4 address of the network interface within the subnet. # @return [String] # # @!attribute [rw] private_ip_address_configs # The private IPv4 addresses. # @return [Array] # # @!attribute [rw] secondary_private_ip_address_count # The number of secondary private IPv4 addresses. # @return [Integer] # # @!attribute [rw] subnet_id # The ID of the subnet. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ScheduledInstancesNetworkInterface AWS API Documentation # class ScheduledInstancesNetworkInterface < Struct.new( :associate_public_ip_address, :delete_on_termination, :description, :device_index, :groups, :ipv_6_address_count, :ipv_6_addresses, :network_interface_id, :private_ip_address, :private_ip_address_configs, :secondary_private_ip_address_count, :subnet_id) SENSITIVE = [] include Aws::Structure end # Describes the placement for a Scheduled Instance. # # @!attribute [rw] availability_zone # The Availability Zone. # @return [String] # # @!attribute [rw] group_name # The name of the placement group. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ScheduledInstancesPlacement AWS API Documentation # class ScheduledInstancesPlacement < Struct.new( :availability_zone, :group_name) SENSITIVE = [] include Aws::Structure end # Describes a private IPv4 address for a Scheduled Instance. # # @!attribute [rw] primary # Indicates whether this is a primary IPv4 address. Otherwise, this is # a secondary IPv4 address. # @return [Boolean] # # @!attribute [rw] private_ip_address # The IPv4 address. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ScheduledInstancesPrivateIpAddressConfig AWS API Documentation # class ScheduledInstancesPrivateIpAddressConfig < Struct.new( :primary, :private_ip_address) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] local_gateway_route_table_id # The ID of the local gateway route table. # @return [String] # # @!attribute [rw] filters # One or more filters. # # * `prefix-list-id` - The ID of the prefix list. # # * `route-search.exact-match` - The exact match of the specified # filter. # # * `route-search.longest-prefix-match` - The longest prefix that # matches the route. # # * `route-search.subnet-of-match` - The routes with a subnet that # match the specified CIDR filter. # # * `route-search.supernet-of-match` - The routes with a CIDR that # encompass the CIDR filter. For example, if you have 10.0.1.0/29 # and 10.0.1.0/31 routes in your route table and you specify # `supernet-of-match` as 10.0.1.0/30, then the result returns # 10.0.1.0/29. # # * `state` - The state of the route. # # * `type` - The route type. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SearchLocalGatewayRoutesRequest AWS API Documentation # class SearchLocalGatewayRoutesRequest < Struct.new( :local_gateway_route_table_id, :filters, :max_results, :next_token, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] routes # Information about the routes. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SearchLocalGatewayRoutesResult AWS API Documentation # class SearchLocalGatewayRoutesResult < Struct.new( :routes, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_multicast_domain_id # The ID of the transit gateway multicast domain. # @return [String] # # @!attribute [rw] filters # One or more filters. The possible values are: # # * `group-ip-address` - The IP address of the transit gateway # multicast group. # # * `is-group-member` - The resource is a group member. Valid values # are `true` \| `false`. # # * `is-group-source` - The resource is a group source. Valid values # are `true` \| `false`. # # * `member-type` - The member type. Valid values are `igmp` \| # `static`. # # * `resource-id` - The ID of the resource. # # * `resource-type` - The type of resource. Valid values are `vpc` \| # `vpn` \| `direct-connect-gateway` \| `tgw-peering`. # # * `source-type` - The source type. Valid values are `igmp` \| # `static`. # # * `subnet-id` - The ID of the subnet. # # * `transit-gateway-attachment-id` - The id of the transit gateway # attachment. # @return [Array] # # @!attribute [rw] max_results # The maximum number of results to return with a single call. To # retrieve the remaining results, make another call with the returned # `nextToken` value. # @return [Integer] # # @!attribute [rw] next_token # The token for the next page of results. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SearchTransitGatewayMulticastGroupsRequest AWS API Documentation # class SearchTransitGatewayMulticastGroupsRequest < Struct.new( :transit_gateway_multicast_domain_id, :filters, :max_results, :next_token, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] multicast_groups # Information about the transit gateway multicast group. # @return [Array] # # @!attribute [rw] next_token # The token to use to retrieve the next page of results. This value is # `null` when there are no more results to return. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SearchTransitGatewayMulticastGroupsResult AWS API Documentation # class SearchTransitGatewayMulticastGroupsResult < Struct.new( :multicast_groups, :next_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] transit_gateway_route_table_id # The ID of the transit gateway route table. # @return [String] # # @!attribute [rw] filters # One or more filters. The possible values are: # # * `attachment.transit-gateway-attachment-id`- The id of the transit # gateway attachment. # # * `attachment.resource-id` - The resource id of the transit gateway # attachment. # # * `attachment.resource-type` - The attachment resource type. Valid # values are `vpc` \| `vpn` \| `direct-connect-gateway` \| `peering` # \| `connect`. # # * `prefix-list-id` - The ID of the prefix list. # # * `route-search.exact-match` - The exact match of the specified # filter. # # * `route-search.longest-prefix-match` - The longest prefix that # matches the route. # # * `route-search.subnet-of-match` - The routes with a subnet that # match the specified CIDR filter. # # * `route-search.supernet-of-match` - The routes with a CIDR that # encompass the CIDR filter. For example, if you have 10.0.1.0/29 # and 10.0.1.0/31 routes in your route table and you specify # supernet-of-match as 10.0.1.0/30, then the result returns # 10.0.1.0/29. # # * `state` - The state of the route (`active` \| `blackhole`). # # * `type` - The type of route (`propagated` \| `static`). # @return [Array] # # @!attribute [rw] max_results # The maximum number of routes to return. If a value is not provided, # the default is 1000. # @return [Integer] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SearchTransitGatewayRoutesRequest AWS API Documentation # class SearchTransitGatewayRoutesRequest < Struct.new( :transit_gateway_route_table_id, :filters, :max_results, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] routes # Information about the routes. # @return [Array] # # @!attribute [rw] additional_routes_available # Indicates whether there are additional routes available. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SearchTransitGatewayRoutesResult AWS API Documentation # class SearchTransitGatewayRoutesResult < Struct.new( :routes, :additional_routes_available) SENSITIVE = [] include Aws::Structure end # Describes a security group. # # @!attribute [rw] description # A description of the security group. # @return [String] # # @!attribute [rw] group_name # The name of the security group. # @return [String] # # @!attribute [rw] ip_permissions # The inbound rules associated with the security group. # @return [Array] # # @!attribute [rw] owner_id # The Amazon Web Services account ID of the owner of the security # group. # @return [String] # # @!attribute [rw] group_id # The ID of the security group. # @return [String] # # @!attribute [rw] ip_permissions_egress # The outbound rules associated with the security group. # @return [Array] # # @!attribute [rw] tags # Any tags assigned to the security group. # @return [Array] # # @!attribute [rw] vpc_id # The ID of the VPC for the security group. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SecurityGroup AWS API Documentation # class SecurityGroup < Struct.new( :description, :group_name, :ip_permissions, :owner_id, :group_id, :ip_permissions_egress, :tags, :vpc_id) SENSITIVE = [] include Aws::Structure end # A security group that can be used by interfaces in the VPC. # # @!attribute [rw] description # The security group's description. # @return [String] # # @!attribute [rw] group_name # The security group name. # @return [String] # # @!attribute [rw] owner_id # The security group owner ID. # @return [String] # # @!attribute [rw] group_id # The security group ID. # @return [String] # # @!attribute [rw] tags # The security group tags. # @return [Array] # # @!attribute [rw] primary_vpc_id # The VPC ID in which the security group was created. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SecurityGroupForVpc AWS API Documentation # class SecurityGroupForVpc < Struct.new( :description, :group_name, :owner_id, :group_id, :tags, :primary_vpc_id) SENSITIVE = [] include Aws::Structure end # Describes a security group. # # @!attribute [rw] group_id # The ID of the security group. # @return [String] # # @!attribute [rw] group_name # The name of the security group. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SecurityGroupIdentifier AWS API Documentation # class SecurityGroupIdentifier < Struct.new( :group_id, :group_name) SENSITIVE = [] include Aws::Structure end # Describes a VPC with a security group that references your security # group. # # @!attribute [rw] group_id # The ID of your security group. # @return [String] # # @!attribute [rw] referencing_vpc_id # The ID of the VPC with the referencing security group. # @return [String] # # @!attribute [rw] vpc_peering_connection_id # 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][1] in the *VPC Peering Guide*. # # # # [1]: https://docs.aws.amazon.com/vpc/latest/peering/vpc-peering-security-groups.html # @return [String] # # @!attribute [rw] transit_gateway_id # This parameter is in preview and may not be available for your # account. # # # # The ID of the transit gateway (if applicable). # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SecurityGroupReference AWS API Documentation # class SecurityGroupReference < Struct.new( :group_id, :referencing_vpc_id, :vpc_peering_connection_id, :transit_gateway_id) SENSITIVE = [] include Aws::Structure end # Describes a security group rule. # # @!attribute [rw] security_group_rule_id # The ID of the security group rule. # @return [String] # # @!attribute [rw] group_id # The ID of the security group. # @return [String] # # @!attribute [rw] group_owner_id # The ID of the Amazon Web Services account that owns the security # group. # @return [String] # # @!attribute [rw] is_egress # Indicates whether the security group rule is an outbound rule. # @return [Boolean] # # @!attribute [rw] ip_protocol # The IP protocol name (`tcp`, `udp`, `icmp`, `icmpv6`) or number (see # [Protocol Numbers][1]). # # Use `-1` to specify all protocols. # # # # [1]: http://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml # @return [String] # # @!attribute [rw] from_port # 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). # @return [Integer] # # @!attribute [rw] to_port # 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). # @return [Integer] # # @!attribute [rw] cidr_ipv_4 # The IPv4 CIDR range. # @return [String] # # @!attribute [rw] cidr_ipv_6 # The IPv6 CIDR range. # @return [String] # # @!attribute [rw] prefix_list_id # The ID of the prefix list. # @return [String] # # @!attribute [rw] referenced_group_info # Describes the security group that is referenced in the rule. # @return [Types::ReferencedSecurityGroup] # # @!attribute [rw] description # The security group rule description. # @return [String] # # @!attribute [rw] tags # The tags applied to the security group rule. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SecurityGroupRule AWS API Documentation # class SecurityGroupRule < Struct.new( :security_group_rule_id, :group_id, :group_owner_id, :is_egress, :ip_protocol, :from_port, :to_port, :cidr_ipv_4, :cidr_ipv_6, :prefix_list_id, :referenced_group_info, :description, :tags) SENSITIVE = [] include Aws::Structure end # 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. # # @!attribute [rw] security_group_rule_id # The ID of the security group rule. # @return [String] # # @!attribute [rw] description # The description of the security group rule. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SecurityGroupRuleDescription AWS API Documentation # class SecurityGroupRuleDescription < Struct.new( :security_group_rule_id, :description) SENSITIVE = [] include Aws::Structure end # 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. # # @!attribute [rw] ip_protocol # The IP protocol name (`tcp`, `udp`, `icmp`, `icmpv6`) or number (see # [Protocol Numbers][1]). # # Use `-1` to specify all protocols. # # # # [1]: http://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml # @return [String] # # @!attribute [rw] from_port # 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). # @return [Integer] # # @!attribute [rw] to_port # 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). # @return [Integer] # # @!attribute [rw] cidr_ipv_4 # The IPv4 CIDR range. To specify a single IPv4 address, use the /32 # prefix length. # @return [String] # # @!attribute [rw] cidr_ipv_6 # The IPv6 CIDR range. To specify a single IPv6 address, use the /128 # prefix length. # @return [String] # # @!attribute [rw] prefix_list_id # The ID of the prefix list. # @return [String] # # @!attribute [rw] referenced_group_id # The ID of the security group that is referenced in the security # group rule. # @return [String] # # @!attribute [rw] description # The description of the security group rule. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SecurityGroupRuleRequest AWS API Documentation # class SecurityGroupRuleRequest < Struct.new( :ip_protocol, :from_port, :to_port, :cidr_ipv_4, :cidr_ipv_6, :prefix_list_id, :referenced_group_id, :description) SENSITIVE = [] include Aws::Structure end # Describes an update to a security group rule. # # @!attribute [rw] security_group_rule_id # The ID of the security group rule. # @return [String] # # @!attribute [rw] security_group_rule # Information about the security group rule. # @return [Types::SecurityGroupRuleRequest] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SecurityGroupRuleUpdate AWS API Documentation # class SecurityGroupRuleUpdate < Struct.new( :security_group_rule_id, :security_group_rule) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] instance_id # The ID of the instance. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SendDiagnosticInterruptRequest AWS API Documentation # class SendDiagnosticInterruptRequest < Struct.new( :instance_id, :dry_run) SENSITIVE = [] include Aws::Structure end # Describes a service configuration for a VPC endpoint service. # # @!attribute [rw] service_type # The type of service. # @return [Array] # # @!attribute [rw] service_id # The ID of the service. # @return [String] # # @!attribute [rw] service_name # The name of the service. # @return [String] # # @!attribute [rw] service_state # The service state. # @return [String] # # @!attribute [rw] availability_zones # The Availability Zones in which the service is available. # @return [Array] # # @!attribute [rw] acceptance_required # Indicates whether requests from other Amazon Web Services accounts # to create an endpoint to the service must first be accepted. # @return [Boolean] # # @!attribute [rw] manages_vpc_endpoints # Indicates whether the service manages its VPC endpoints. Management # of the service VPC endpoints using the VPC endpoint API is # restricted. # @return [Boolean] # # @!attribute [rw] network_load_balancer_arns # The Amazon Resource Names (ARNs) of the Network Load Balancers for # the service. # @return [Array] # # @!attribute [rw] gateway_load_balancer_arns # The Amazon Resource Names (ARNs) of the Gateway Load Balancers for # the service. # @return [Array] # # @!attribute [rw] supported_ip_address_types # The supported IP address types. # @return [Array] # # @!attribute [rw] base_endpoint_dns_names # The DNS names for the service. # @return [Array] # # @!attribute [rw] private_dns_name # The private DNS name for the service. # @return [String] # # @!attribute [rw] private_dns_name_configuration # Information about the endpoint service private DNS name # configuration. # @return [Types::PrivateDnsNameConfiguration] # # @!attribute [rw] payer_responsibility # The payer responsibility. # @return [String] # # @!attribute [rw] tags # The tags assigned to the service. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ServiceConfiguration AWS API Documentation # class ServiceConfiguration < Struct.new( :service_type, :service_id, :service_name, :service_state, :availability_zones, :acceptance_required, :manages_vpc_endpoints, :network_load_balancer_arns, :gateway_load_balancer_arns, :supported_ip_address_types, :base_endpoint_dns_names, :private_dns_name, :private_dns_name_configuration, :payer_responsibility, :tags) SENSITIVE = [] include Aws::Structure end # Describes a VPC endpoint service. # # @!attribute [rw] service_name # The name of the service. # @return [String] # # @!attribute [rw] service_id # The ID of the endpoint service. # @return [String] # # @!attribute [rw] service_type # The type of service. # @return [Array] # # @!attribute [rw] availability_zones # The Availability Zones in which the service is available. # @return [Array] # # @!attribute [rw] owner # The Amazon Web Services account ID of the service owner. # @return [String] # # @!attribute [rw] base_endpoint_dns_names # The DNS names for the service. # @return [Array] # # @!attribute [rw] private_dns_name # The private DNS name for the service. # @return [String] # # @!attribute [rw] private_dns_names # The private DNS names assigned to the VPC endpoint service. # @return [Array] # # @!attribute [rw] vpc_endpoint_policy_supported # Indicates whether the service supports endpoint policies. # @return [Boolean] # # @!attribute [rw] acceptance_required # Indicates whether VPC endpoint connection requests to the service # must be accepted by the service owner. # @return [Boolean] # # @!attribute [rw] manages_vpc_endpoints # Indicates whether the service manages its VPC endpoints. Management # of the service VPC endpoints using the VPC endpoint API is # restricted. # @return [Boolean] # # @!attribute [rw] payer_responsibility # The payer responsibility. # @return [String] # # @!attribute [rw] tags # The tags assigned to the service. # @return [Array] # # @!attribute [rw] private_dns_name_verification_state # The verification state of the VPC endpoint service. # # Consumers of the endpoint service cannot use the private name when # the state is not `verified`. # @return [String] # # @!attribute [rw] supported_ip_address_types # The supported IP address types. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ServiceDetail AWS API Documentation # class ServiceDetail < Struct.new( :service_name, :service_id, :service_type, :availability_zones, :owner, :base_endpoint_dns_names, :private_dns_name, :private_dns_names, :vpc_endpoint_policy_supported, :acceptance_required, :manages_vpc_endpoints, :payer_responsibility, :tags, :private_dns_name_verification_state, :supported_ip_address_types) SENSITIVE = [] include Aws::Structure end # Describes the type of service for a VPC endpoint. # # @!attribute [rw] service_type # The type of service. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ServiceTypeDetail AWS API Documentation # class ServiceTypeDetail < Struct.new( :service_type) SENSITIVE = [] include Aws::Structure end # Describes the time period for a Scheduled Instance to start its first # schedule. The time period must span less than one day. # # @!attribute [rw] earliest_time # The earliest date and time, in UTC, for the Scheduled Instance to # start. # @return [Time] # # @!attribute [rw] latest_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. # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SlotDateTimeRangeRequest AWS API Documentation # class SlotDateTimeRangeRequest < Struct.new( :earliest_time, :latest_time) SENSITIVE = [] include Aws::Structure end # Describes the time period for a Scheduled Instance to start its first # schedule. # # @!attribute [rw] earliest_time # The earliest date and time, in UTC, for the Scheduled Instance to # start. # @return [Time] # # @!attribute [rw] latest_time # The latest date and time, in UTC, for the Scheduled Instance to # start. # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SlotStartTimeRangeRequest AWS API Documentation # class SlotStartTimeRangeRequest < Struct.new( :earliest_time, :latest_time) SENSITIVE = [] include Aws::Structure end # Describes a snapshot. # # @!attribute [rw] data_encryption_key_id # 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. # @return [String] # # @!attribute [rw] description # The description for the snapshot. # @return [String] # # @!attribute [rw] encrypted # Indicates whether the snapshot is encrypted. # @return [Boolean] # # @!attribute [rw] kms_key_id # The Amazon Resource Name (ARN) of the Key Management Service (KMS) # KMS key that was used to protect the volume encryption key for the # parent volume. # @return [String] # # @!attribute [rw] owner_id # The ID of the Amazon Web Services account that owns the EBS # snapshot. # @return [String] # # @!attribute [rw] progress # The progress of the snapshot, as a percentage. # @return [String] # # @!attribute [rw] snapshot_id # The ID of the snapshot. Each snapshot receives a unique identifier # when it is created. # @return [String] # # @!attribute [rw] start_time # The time stamp when the snapshot was initiated. # @return [Time] # # @!attribute [rw] state # The snapshot state. # @return [String] # # @!attribute [rw] state_message # Encrypted Amazon EBS snapshots are copied asynchronously. If a # snapshot copy operation fails (for example, if the proper Key # Management Service (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. # @return [String] # # @!attribute [rw] volume_id # The ID of the volume that was used to create the snapshot. Snapshots # created by the CopySnapshot action have an arbitrary volume ID that # should not be used for any purpose. # @return [String] # # @!attribute [rw] volume_size # The size of the volume, in GiB. # @return [Integer] # # @!attribute [rw] owner_alias # 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. # @return [String] # # @!attribute [rw] outpost_arn # The ARN of the Outpost on which the snapshot is stored. For more # information, see [Amazon EBS local snapshots on Outposts][1] in the # *Amazon EBS User Guide*. # # # # [1]: https://docs.aws.amazon.com/ebs/latest/userguide/snapshots-outposts.html # @return [String] # # @!attribute [rw] tags # Any tags assigned to the snapshot. # @return [Array] # # @!attribute [rw] storage_tier # 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. # @return [String] # # @!attribute [rw] restore_expiry_time # Only for archived snapshots that are temporarily restored. Indicates # the date and time when a temporarily restored snapshot will be # automatically re-archived. # @return [Time] # # @!attribute [rw] sse_type # Reserved for future use. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Snapshot AWS API Documentation # class Snapshot < Struct.new( :data_encryption_key_id, :description, :encrypted, :kms_key_id, :owner_id, :progress, :snapshot_id, :start_time, :state, :state_message, :volume_id, :volume_size, :owner_alias, :outpost_arn, :tags, :storage_tier, :restore_expiry_time, :sse_type) SENSITIVE = [] include Aws::Structure end # Describes the snapshot created from the imported disk. # # @!attribute [rw] description # A description for the snapshot. # @return [String] # # @!attribute [rw] device_name # The block device mapping for the snapshot. # @return [String] # # @!attribute [rw] disk_image_size # The size of the disk in the snapshot, in GiB. # @return [Float] # # @!attribute [rw] format # The format of the disk image from which the snapshot is created. # @return [String] # # @!attribute [rw] progress # The percentage of progress for the task. # @return [String] # # @!attribute [rw] snapshot_id # The snapshot ID of the disk being imported. # @return [String] # # @!attribute [rw] status # A brief status of the snapshot creation. # @return [String] # # @!attribute [rw] status_message # A detailed status message for the snapshot creation. # @return [String] # # @!attribute [rw] url # The URL used to access the disk image. # @return [String] # # @!attribute [rw] user_bucket # The Amazon S3 bucket for the disk image. # @return [Types::UserBucketDetails] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SnapshotDetail AWS API Documentation # class SnapshotDetail < Struct.new( :description, :device_name, :disk_image_size, :format, :progress, :snapshot_id, :status, :status_message, :url, :user_bucket) SENSITIVE = [:url] include Aws::Structure end # The disk container object for the import snapshot request. # # @!attribute [rw] description # The description of the disk image being imported. # @return [String] # # @!attribute [rw] format # The format of the disk image being imported. # # Valid values: `VHD` \| `VMDK` \| `RAW` # @return [String] # # @!attribute [rw] url # 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://..). # @return [String] # # @!attribute [rw] user_bucket # The Amazon S3 bucket for the disk image. # @return [Types::UserBucket] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SnapshotDiskContainer AWS API Documentation # class SnapshotDiskContainer < Struct.new( :description, :format, :url, :user_bucket) SENSITIVE = [:url] include Aws::Structure end # Information about a snapshot. # # @!attribute [rw] description # Description specified by the CreateSnapshotRequest that has been # applied to all snapshots. # @return [String] # # @!attribute [rw] tags # Tags associated with this snapshot. # @return [Array] # # @!attribute [rw] encrypted # Indicates whether the snapshot is encrypted. # @return [Boolean] # # @!attribute [rw] volume_id # Source volume from which this snapshot was created. # @return [String] # # @!attribute [rw] state # Current state of the snapshot. # @return [String] # # @!attribute [rw] volume_size # Size of the volume from which this snapshot was created. # @return [Integer] # # @!attribute [rw] start_time # Time this snapshot was started. This is the same for all snapshots # initiated by the same request. # @return [Time] # # @!attribute [rw] progress # Progress this snapshot has made towards completing. # @return [String] # # @!attribute [rw] owner_id # Account id used when creating this snapshot. # @return [String] # # @!attribute [rw] snapshot_id # Snapshot id that can be used to describe this snapshot. # @return [String] # # @!attribute [rw] outpost_arn # The ARN of the Outpost on which the snapshot is stored. For more # information, see [Amazon EBS local snapshots on Outposts][1] in the # *Amazon EBS User Guide*. # # # # [1]: https://docs.aws.amazon.com/ebs/latest/userguide/snapshots-outposts.html # @return [String] # # @!attribute [rw] sse_type # Reserved for future use. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SnapshotInfo AWS API Documentation # class SnapshotInfo < Struct.new( :description, :tags, :encrypted, :volume_id, :state, :volume_size, :start_time, :progress, :owner_id, :snapshot_id, :outpost_arn, :sse_type) SENSITIVE = [] include Aws::Structure end # Information about a snapshot that is currently in the Recycle Bin. # # @!attribute [rw] snapshot_id # The ID of the snapshot. # @return [String] # # @!attribute [rw] recycle_bin_enter_time # The date and time when the snaphsot entered the Recycle Bin. # @return [Time] # # @!attribute [rw] recycle_bin_exit_time # The date and time when the snapshot is to be permanently deleted # from the Recycle Bin. # @return [Time] # # @!attribute [rw] description # The description for the snapshot. # @return [String] # # @!attribute [rw] volume_id # The ID of the volume from which the snapshot was created. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SnapshotRecycleBinInfo AWS API Documentation # class SnapshotRecycleBinInfo < Struct.new( :snapshot_id, :recycle_bin_enter_time, :recycle_bin_exit_time, :description, :volume_id) SENSITIVE = [] include Aws::Structure end # Details about the import snapshot task. # # @!attribute [rw] description # The description of the snapshot. # @return [String] # # @!attribute [rw] disk_image_size # The size of the disk in the snapshot, in GiB. # @return [Float] # # @!attribute [rw] encrypted # Indicates whether the snapshot is encrypted. # @return [Boolean] # # @!attribute [rw] format # The format of the disk image from which the snapshot is created. # @return [String] # # @!attribute [rw] kms_key_id # The identifier for the KMS key that was used to create the encrypted # snapshot. # @return [String] # # @!attribute [rw] progress # The percentage of completion for the import snapshot task. # @return [String] # # @!attribute [rw] snapshot_id # The snapshot ID of the disk being imported. # @return [String] # # @!attribute [rw] status # A brief status for the import snapshot task. # @return [String] # # @!attribute [rw] status_message # A detailed status message for the import snapshot task. # @return [String] # # @!attribute [rw] url # The URL of the disk image from which the snapshot is created. # @return [String] # # @!attribute [rw] user_bucket # The Amazon S3 bucket for the disk image. # @return [Types::UserBucketDetails] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SnapshotTaskDetail AWS API Documentation # class SnapshotTaskDetail < Struct.new( :description, :disk_image_size, :encrypted, :format, :kms_key_id, :progress, :snapshot_id, :status, :status_message, :url, :user_bucket) SENSITIVE = [:url] include Aws::Structure end # Provides information about a snapshot's storage tier. # # @!attribute [rw] snapshot_id # The ID of the snapshot. # @return [String] # # @!attribute [rw] volume_id # The ID of the volume from which the snapshot was created. # @return [String] # # @!attribute [rw] status # The state of the snapshot. # @return [String] # # @!attribute [rw] owner_id # The ID of the Amazon Web Services account that owns the snapshot. # @return [String] # # @!attribute [rw] tags # The tags that are assigned to the snapshot. # @return [Array] # # @!attribute [rw] storage_tier # 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. # @return [String] # # @!attribute [rw] last_tiering_start_time # The date and time when the last archive or restore process was # started. # @return [Time] # # @!attribute [rw] last_tiering_progress # The progress of the last archive or restore process, as a # percentage. # @return [Integer] # # @!attribute [rw] last_tiering_operation_status # The status of the last archive or restore process. # @return [String] # # @!attribute [rw] last_tiering_operation_status_detail # A message describing the status of the last archive or restore # process. # @return [String] # # @!attribute [rw] archival_complete_time # The date and time when the last archive process was completed. # @return [Time] # # @!attribute [rw] restore_expiry_time # Only for archived snapshots that are temporarily restored. Indicates # the date and time when a temporarily restored snapshot will be # automatically re-archived. # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SnapshotTierStatus AWS API Documentation # class SnapshotTierStatus < Struct.new( :snapshot_id, :volume_id, :status, :owner_id, :tags, :storage_tier, :last_tiering_start_time, :last_tiering_progress, :last_tiering_operation_status, :last_tiering_operation_status_detail, :archival_complete_time, :restore_expiry_time) SENSITIVE = [] include Aws::Structure end # 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][1] in # the *Amazon EC2 User Guide for Linux Instances*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-capacity-rebalance.html # # @!attribute [rw] replacement_strategy # 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. # @return [String] # # @!attribute [rw] termination_delay # 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. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SpotCapacityRebalance AWS API Documentation # class SpotCapacityRebalance < Struct.new( :replacement_strategy, :termination_delay) SENSITIVE = [] include Aws::Structure end # Describes the data feed for a Spot Instance. # # @!attribute [rw] bucket # The name of the Amazon S3 bucket where the Spot Instance data feed # is located. # @return [String] # # @!attribute [rw] fault # The fault codes for the Spot Instance request, if any. # @return [Types::SpotInstanceStateFault] # # @!attribute [rw] owner_id # The Amazon Web Services account ID of the account. # @return [String] # # @!attribute [rw] prefix # The prefix for the data feed files. # @return [String] # # @!attribute [rw] state # The state of the Spot Instance data feed subscription. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SpotDatafeedSubscription AWS API Documentation # class SpotDatafeedSubscription < Struct.new( :bucket, :fault, :owner_id, :prefix, :state) SENSITIVE = [] include Aws::Structure end # 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][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_LaunchTemplateConfig.html # # @!attribute [rw] security_groups # 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. # @return [Array] # # @!attribute [rw] addressing_type # Deprecated. # @return [String] # # @!attribute [rw] block_device_mappings # 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. # @return [Array] # # @!attribute [rw] ebs_optimized # 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` # @return [Boolean] # # @!attribute [rw] iam_instance_profile # The IAM instance profile. # @return [Types::IamInstanceProfileSpecification] # # @!attribute [rw] image_id # The ID of the AMI. # @return [String] # # @!attribute [rw] instance_type # The instance type. # @return [String] # # @!attribute [rw] kernel_id # The ID of the kernel. # @return [String] # # @!attribute [rw] key_name # The name of the key pair. # @return [String] # # @!attribute [rw] monitoring # Enable or disable monitoring for the instances. # @return [Types::SpotFleetMonitoring] # # @!attribute [rw] network_interfaces # The network interfaces. # # `SpotFleetLaunchSpecification` does not support Elastic Fabric # Adapter (EFA). You must use [LaunchTemplateConfig][1] instead. # # # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_LaunchTemplateConfig.html # @return [Array] # # @!attribute [rw] placement # The placement information. # @return [Types::SpotPlacement] # # @!attribute [rw] ramdisk_id # 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. # @return [String] # # @!attribute [rw] spot_price # 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. # @return [String] # # @!attribute [rw] subnet_id # 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. # @return [String] # # @!attribute [rw] user_data # The base64-encoded user data that instances use when starting up. # User data is limited to 16 KB. # @return [String] # # @!attribute [rw] weighted_capacity # 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. # @return [Float] # # @!attribute [rw] tag_specifications # The tags to apply during creation. # @return [Array] # # @!attribute [rw] instance_requirements # 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`. # # # @return [Types::InstanceRequirements] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SpotFleetLaunchSpecification AWS API Documentation # class SpotFleetLaunchSpecification < Struct.new( :security_groups, :addressing_type, :block_device_mappings, :ebs_optimized, :iam_instance_profile, :image_id, :instance_type, :kernel_id, :key_name, :monitoring, :network_interfaces, :placement, :ramdisk_id, :spot_price, :subnet_id, :user_data, :weighted_capacity, :tag_specifications, :instance_requirements) SENSITIVE = [:user_data] include Aws::Structure end # Describes whether monitoring is enabled. # # @!attribute [rw] enabled # Enables monitoring for the instance. # # Default: `false` # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SpotFleetMonitoring AWS API Documentation # class SpotFleetMonitoring < Struct.new( :enabled) SENSITIVE = [] include Aws::Structure end # Describes a Spot Fleet request. # # @!attribute [rw] activity_status # 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. # @return [String] # # @!attribute [rw] create_time # The creation date and time of the request. # @return [Time] # # @!attribute [rw] spot_fleet_request_config # The configuration of the Spot Fleet request. # @return [Types::SpotFleetRequestConfigData] # # @!attribute [rw] spot_fleet_request_id # The ID of the Spot Fleet request. # @return [String] # # @!attribute [rw] spot_fleet_request_state # The state of the Spot Fleet request. # @return [String] # # @!attribute [rw] tags # The tags for a Spot Fleet resource. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SpotFleetRequestConfig AWS API Documentation # class SpotFleetRequestConfig < Struct.new( :activity_status, :create_time, :spot_fleet_request_config, :spot_fleet_request_id, :spot_fleet_request_state, :tags) SENSITIVE = [] include Aws::Structure end # Describes the configuration of a Spot Fleet request. # # @!attribute [rw] allocation_strategy # 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][1] 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 # # : 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` # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-allocation-strategy.html # @return [String] # # @!attribute [rw] on_demand_allocation_strategy # 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`. # @return [String] # # @!attribute [rw] spot_maintenance_strategies # The strategies for managing your Spot Instances that are at an # elevated risk of being interrupted. # @return [Types::SpotMaintenanceStrategies] # # @!attribute [rw] client_token # 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][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @!attribute [rw] excess_capacity_termination_policy # 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`. # @return [String] # # @!attribute [rw] fulfilled_capacity # The number of units fulfilled by this request compared to the set # target capacity. You cannot set this value. # @return [Float] # # @!attribute [rw] on_demand_fulfilled_capacity # The number of On-Demand units fulfilled by this request compared to # the set target On-Demand capacity. # @return [Float] # # @!attribute [rw] iam_fleet_role # 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][1] in the *Amazon EC2 # User Guide*. Spot Fleet can terminate Spot Instances on your behalf # when you cancel its Spot Fleet request using # [CancelSpotFleetRequests][2] or when the Spot Fleet request expires, # if you set `TerminateInstancesWithExpiration`. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-requests.html#spot-fleet-prerequisites # [2]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CancelSpotFleetRequests # @return [String] # # @!attribute [rw] launch_specifications # 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. # # # @return [Array] # # @!attribute [rw] launch_template_configs # 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`. # @return [Array] # # @!attribute [rw] spot_price # 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. # @return [String] # # @!attribute [rw] target_capacity # 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. # @return [Integer] # # @!attribute [rw] on_demand_target_capacity # 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. # @return [Integer] # # @!attribute [rw] on_demand_max_total_price # 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][1] in the *EC2 # User Guide*. # # # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances-unlimited-mode-concepts.html#unlimited-mode-surplus-credits # @return [String] # # @!attribute [rw] spot_max_total_price # 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][1] in the *EC2 User Guide*. # # # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances-unlimited-mode-concepts.html#unlimited-mode-surplus-credits # @return [String] # # @!attribute [rw] terminate_instances_with_expiration # Indicates whether running Spot Instances are terminated when the # Spot Fleet request expires. # @return [Boolean] # # @!attribute [rw] type # 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. # @return [String] # # @!attribute [rw] valid_from # The start date and time of the request, in UTC format # (*YYYY*-*MM*-*DD*T*HH*:*MM*:*SS*Z). By default, Amazon EC2 starts # fulfilling the request immediately. # @return [Time] # # @!attribute [rw] valid_until # The end date and time of the request, in UTC format # (*YYYY*-*MM*-*DD*T*HH*:*MM*:*SS*Z). 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. # @return [Time] # # @!attribute [rw] replace_unhealthy_instances # Indicates whether Spot Fleet should replace unhealthy instances. # @return [Boolean] # # @!attribute [rw] instance_interruption_behavior # The behavior when a Spot Instance is interrupted. The default is # `terminate`. # @return [String] # # @!attribute [rw] load_balancers_config # 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. # @return [Types::LoadBalancersConfig] # # @!attribute [rw] instance_pools_to_use_count # 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. # @return [Integer] # # @!attribute [rw] context # Reserved. # @return [String] # # @!attribute [rw] target_capacity_unit_type # 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) # @return [String] # # @!attribute [rw] tag_specifications # 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][1] (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][2]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-launch-templates.html#create-launch-template # [2]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#tag-resources # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SpotFleetRequestConfigData AWS API Documentation # class SpotFleetRequestConfigData < Struct.new( :allocation_strategy, :on_demand_allocation_strategy, :spot_maintenance_strategies, :client_token, :excess_capacity_termination_policy, :fulfilled_capacity, :on_demand_fulfilled_capacity, :iam_fleet_role, :launch_specifications, :launch_template_configs, :spot_price, :target_capacity, :on_demand_target_capacity, :on_demand_max_total_price, :spot_max_total_price, :terminate_instances_with_expiration, :type, :valid_from, :valid_until, :replace_unhealthy_instances, :instance_interruption_behavior, :load_balancers_config, :instance_pools_to_use_count, :context, :target_capacity_unit_type, :tag_specifications) SENSITIVE = [] include Aws::Structure end # The tags for a Spot Fleet resource. # # @!attribute [rw] resource_type # 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 `. # @return [String] # # @!attribute [rw] tags # The tags. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SpotFleetTagSpecification AWS API Documentation # class SpotFleetTagSpecification < Struct.new( :resource_type, :tags) SENSITIVE = [] include Aws::Structure end # Describes a Spot Instance request. # # @!attribute [rw] actual_block_hourly_price # Deprecated. # @return [String] # # @!attribute [rw] availability_zone_group # 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. # @return [String] # # @!attribute [rw] block_duration_minutes # Deprecated. # @return [Integer] # # @!attribute [rw] create_time # The date and time when the Spot Instance request was created, in UTC # format (for example, *YYYY*-*MM*-*DD*T*HH*:*MM*:*SS*Z). # @return [Time] # # @!attribute [rw] fault # The fault codes for the Spot Instance request, if any. # @return [Types::SpotInstanceStateFault] # # @!attribute [rw] instance_id # The instance ID, if an instance has been launched to fulfill the # Spot Instance request. # @return [String] # # @!attribute [rw] launch_group # The instance launch group. Launch groups are Spot Instances that # launch together and terminate together. # @return [String] # # @!attribute [rw] launch_specification # Additional information for launching instances. # @return [Types::LaunchSpecification] # # @!attribute [rw] launched_availability_zone # The Availability Zone in which the request is launched. # @return [String] # # @!attribute [rw] product_description # The product description associated with the Spot Instance. # @return [String] # # @!attribute [rw] spot_instance_request_id # The ID of the Spot Instance request. # @return [String] # # @!attribute [rw] spot_price # 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. # @return [String] # # @!attribute [rw] state # The state of the Spot Instance request. Spot request status # information helps track your Spot Instance requests. For more # information, see [Spot request status][1] in the *Amazon EC2 User # Guide for Linux Instances*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-request-status.html # @return [String] # # @!attribute [rw] status # The status code and status message describing the Spot Instance # request. # @return [Types::SpotInstanceStatus] # # @!attribute [rw] tags # Any tags assigned to the resource. # @return [Array] # # @!attribute [rw] type # The Spot Instance request type. # @return [String] # # @!attribute [rw] valid_from # The start date of the request, in UTC format (for example, # *YYYY*-*MM*-*DD*T*HH*:*MM*:*SS*Z). The request becomes active at # this date and time. # @return [Time] # # @!attribute [rw] valid_until # The end date of the request, in UTC format # (*YYYY*-*MM*-*DD*T*HH*:*MM*:*SS*Z). # # * 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. # @return [Time] # # @!attribute [rw] instance_interruption_behavior # The behavior when a Spot Instance is interrupted. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SpotInstanceRequest AWS API Documentation # class SpotInstanceRequest < Struct.new( :actual_block_hourly_price, :availability_zone_group, :block_duration_minutes, :create_time, :fault, :instance_id, :launch_group, :launch_specification, :launched_availability_zone, :product_description, :spot_instance_request_id, :spot_price, :state, :status, :tags, :type, :valid_from, :valid_until, :instance_interruption_behavior) SENSITIVE = [] include Aws::Structure end # Describes a Spot Instance state change. # # @!attribute [rw] code # The reason code for the Spot Instance state change. # @return [String] # # @!attribute [rw] message # The message for the Spot Instance state change. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SpotInstanceStateFault AWS API Documentation # class SpotInstanceStateFault < Struct.new( :code, :message) SENSITIVE = [] include Aws::Structure end # Describes the status of a Spot Instance request. # # @!attribute [rw] code # The status code. For a list of status codes, see [Spot request # status codes][1] in the *Amazon EC2 User Guide for Linux Instances*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-request-status.html#spot-instance-request-status-understand # @return [String] # # @!attribute [rw] message # The description for the status code. # @return [String] # # @!attribute [rw] update_time # The date and time of the most recent status update, in UTC format # (for example, *YYYY*-*MM*-*DD*T*HH*:*MM*:*SS*Z). # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SpotInstanceStatus AWS API Documentation # class SpotInstanceStatus < Struct.new( :code, :message, :update_time) SENSITIVE = [] include Aws::Structure end # The strategies for managing your Spot Instances that are at an # elevated risk of being interrupted. # # @!attribute [rw] capacity_rebalance # 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][1] in # the *Amazon EC2 User Guide for Linux Instances*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-capacity-rebalance.html # @return [Types::SpotCapacityRebalance] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SpotMaintenanceStrategies AWS API Documentation # class SpotMaintenanceStrategies < Struct.new( :capacity_rebalance) SENSITIVE = [] include Aws::Structure end # The options for Spot Instances. # # @!attribute [rw] max_price # 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. # @return [String] # # @!attribute [rw] spot_instance_type # The Spot Instance request type. For [RunInstances][1], persistent # Spot Instance requests are only supported when the instance # interruption behavior is either `hibernate` or `stop`. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_RunInstances # @return [String] # # @!attribute [rw] block_duration_minutes # Deprecated. # @return [Integer] # # @!attribute [rw] valid_until # The end date of the request, in UTC format # (*YYYY*-*MM*-*DD*T*HH*:*MM*:*SS*Z). 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. # @return [Time] # # @!attribute [rw] instance_interruption_behavior # The behavior when a Spot Instance is interrupted. # # If `Configured` (for [ `HibernationOptions` ][1]) 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` ][1]) 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][2] in the *Amazon # EC2 User Guide*. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_HibernationOptionsRequest.html # [2]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/interruption-behavior.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SpotMarketOptions AWS API Documentation # class SpotMarketOptions < Struct.new( :max_price, :spot_instance_type, :block_duration_minutes, :valid_until, :instance_interruption_behavior) SENSITIVE = [] include Aws::Structure end # Describes the configuration of Spot Instances in an EC2 Fleet. # # @!attribute [rw] allocation_strategy # 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][1] 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 # # : 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` # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-allocation-strategy.html # @return [String] # # @!attribute [rw] maintenance_strategies # The strategies for managing your workloads on your Spot Instances # that will be interrupted. Currently only the capacity rebalance # strategy is available. # @return [Types::FleetSpotMaintenanceStrategies] # # @!attribute [rw] instance_interruption_behavior # The behavior when a Spot Instance is interrupted. # # Default: `terminate` # @return [String] # # @!attribute [rw] instance_pools_to_use_count # 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. # @return [Integer] # # @!attribute [rw] single_instance_type # Indicates that the fleet uses a single instance type to launch all # Spot Instances in the fleet. # # Supported only for fleets of type `instant`. # @return [Boolean] # # @!attribute [rw] single_availability_zone # Indicates that the fleet launches all Spot Instances into a single # Availability Zone. # # Supported only for fleets of type `instant`. # @return [Boolean] # # @!attribute [rw] min_target_capacity # The minimum target capacity for Spot Instances in the fleet. If the # minimum target capacity is not reached, the fleet launches no # instances. # # Supported only for fleets of type `instant`. # # At least one of the following must be specified: # `SingleAvailabilityZone` \| `SingleInstanceType` # @return [Integer] # # @!attribute [rw] max_total_price # 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][1] in the *EC2 User Guide*. # # # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances-unlimited-mode-concepts.html#unlimited-mode-surplus-credits # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SpotOptions AWS API Documentation # class SpotOptions < Struct.new( :allocation_strategy, :maintenance_strategies, :instance_interruption_behavior, :instance_pools_to_use_count, :single_instance_type, :single_availability_zone, :min_target_capacity, :max_total_price) SENSITIVE = [] include Aws::Structure end # Describes the configuration of Spot Instances in an EC2 Fleet request. # # @!attribute [rw] allocation_strategy # 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][1] 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 # # : 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` # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-fleet-allocation-strategy.html # @return [String] # # @!attribute [rw] maintenance_strategies # The strategies for managing your Spot Instances that are at an # elevated risk of being interrupted. # @return [Types::FleetSpotMaintenanceStrategiesRequest] # # @!attribute [rw] instance_interruption_behavior # The behavior when a Spot Instance is interrupted. # # Default: `terminate` # @return [String] # # @!attribute [rw] instance_pools_to_use_count # 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. # @return [Integer] # # @!attribute [rw] single_instance_type # Indicates that the fleet uses a single instance type to launch all # Spot Instances in the fleet. # # Supported only for fleets of type `instant`. # @return [Boolean] # # @!attribute [rw] single_availability_zone # Indicates that the fleet launches all Spot Instances into a single # Availability Zone. # # Supported only for fleets of type `instant`. # @return [Boolean] # # @!attribute [rw] min_target_capacity # The minimum target capacity for Spot Instances in the fleet. If the # minimum target capacity is not reached, the fleet launches no # instances. # # Supported only for fleets of type `instant`. # # At least one of the following must be specified: # `SingleAvailabilityZone` \| `SingleInstanceType` # @return [Integer] # # @!attribute [rw] max_total_price # 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][1] in the *EC2 User Guide*. # # # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances-unlimited-mode-concepts.html#unlimited-mode-surplus-credits # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SpotOptionsRequest AWS API Documentation # class SpotOptionsRequest < Struct.new( :allocation_strategy, :maintenance_strategies, :instance_interruption_behavior, :instance_pools_to_use_count, :single_instance_type, :single_availability_zone, :min_target_capacity, :max_total_price) SENSITIVE = [] include Aws::Structure end # Describes Spot Instance placement. # # @!attribute [rw] availability_zone # The Availability Zone. # # \[Spot Fleet only\] To specify multiple Availability Zones, separate # them using commas; for example, "us-west-2a, us-west-2b". # @return [String] # # @!attribute [rw] group_name # The name of the placement group. # @return [String] # # @!attribute [rw] tenancy # 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. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SpotPlacement AWS API Documentation # class SpotPlacement < Struct.new( :availability_zone, :group_name, :tenancy) SENSITIVE = [] include Aws::Structure end # 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. # # @!attribute [rw] region # The Region. # @return [String] # # @!attribute [rw] availability_zone_id # The Availability Zone. # @return [String] # # @!attribute [rw] score # 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. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SpotPlacementScore AWS API Documentation # class SpotPlacementScore < Struct.new( :region, :availability_zone_id, :score) SENSITIVE = [] include Aws::Structure end # 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. # # @!attribute [rw] availability_zone # The Availability Zone. # @return [String] # # @!attribute [rw] instance_type # The instance type. # @return [String] # # @!attribute [rw] product_description # A general description of the AMI. # @return [String] # # @!attribute [rw] spot_price # 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. # @return [String] # # @!attribute [rw] timestamp # The date and time the request was created, in UTC format (for # example, *YYYY*-*MM*-*DD*T*HH*:*MM*:*SS*Z). # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SpotPrice AWS API Documentation # class SpotPrice < Struct.new( :availability_zone, :instance_type, :product_description, :spot_price, :timestamp) SENSITIVE = [] include Aws::Structure end # Describes a stale rule in a security group. # # @!attribute [rw] from_port # 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). # @return [Integer] # # @!attribute [rw] ip_protocol # The IP protocol name (`tcp`, `udp`, `icmp`, `icmpv6`) or number (see # [Protocol Numbers)][1]. # # # # [1]: http://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml # @return [String] # # @!attribute [rw] ip_ranges # The IP ranges. Not applicable for stale security group rules. # @return [Array] # # @!attribute [rw] prefix_list_ids # The prefix list IDs. Not applicable for stale security group rules. # @return [Array] # # @!attribute [rw] to_port # 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). # @return [Integer] # # @!attribute [rw] user_id_group_pairs # The security group pairs. Returns the ID of the referenced security # group and VPC, and the ID and status of the VPC peering connection. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/StaleIpPermission AWS API Documentation # class StaleIpPermission < Struct.new( :from_port, :ip_protocol, :ip_ranges, :prefix_list_ids, :to_port, :user_id_group_pairs) SENSITIVE = [] include Aws::Structure end # Describes a stale security group (a security group that contains stale # rules). # # @!attribute [rw] description # The description of the security group. # @return [String] # # @!attribute [rw] group_id # The ID of the security group. # @return [String] # # @!attribute [rw] group_name # The name of the security group. # @return [String] # # @!attribute [rw] stale_ip_permissions # Information about the stale inbound rules in the security group. # @return [Array] # # @!attribute [rw] stale_ip_permissions_egress # Information about the stale outbound rules in the security group. # @return [Array] # # @!attribute [rw] vpc_id # The ID of the VPC for the security group. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/StaleSecurityGroup AWS API Documentation # class StaleSecurityGroup < Struct.new( :description, :group_id, :group_name, :stale_ip_permissions, :stale_ip_permissions_egress, :vpc_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] instance_ids # The IDs of the instances. # @return [Array] # # @!attribute [rw] additional_info # Reserved. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/StartInstancesRequest AWS API Documentation # class StartInstancesRequest < Struct.new( :instance_ids, :additional_info, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] starting_instances # Information about the started instances. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/StartInstancesResult AWS API Documentation # class StartInstancesResult < Struct.new( :starting_instances) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] network_insights_access_scope_id # The ID of the Network Access Scope. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] tag_specifications # The tags to apply. # @return [Array] # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. For more information, see [How to ensure # idempotency][1]. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/StartNetworkInsightsAccessScopeAnalysisRequest AWS API Documentation # class StartNetworkInsightsAccessScopeAnalysisRequest < Struct.new( :network_insights_access_scope_id, :dry_run, :tag_specifications, :client_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] network_insights_access_scope_analysis # The Network Access Scope analysis. # @return [Types::NetworkInsightsAccessScopeAnalysis] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/StartNetworkInsightsAccessScopeAnalysisResult AWS API Documentation # class StartNetworkInsightsAccessScopeAnalysisResult < Struct.new( :network_insights_access_scope_analysis) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] network_insights_path_id # The ID of the path. # @return [String] # # @!attribute [rw] additional_accounts # The member accounts that contain resources that the path can # traverse. # @return [Array] # # @!attribute [rw] filter_in_arns # The Amazon Resource Names (ARN) of the resources that the path must # traverse. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] tag_specifications # The tags to apply. # @return [Array] # # @!attribute [rw] client_token # Unique, case-sensitive identifier that you provide to ensure the # idempotency of the request. For more information, see [How to ensure # idempotency][1]. # # **A suitable default value is auto-generated.** You should normally # not need to pass this option. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/StartNetworkInsightsAnalysisRequest AWS API Documentation # class StartNetworkInsightsAnalysisRequest < Struct.new( :network_insights_path_id, :additional_accounts, :filter_in_arns, :dry_run, :tag_specifications, :client_token) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] network_insights_analysis # Information about the network insights analysis. # @return [Types::NetworkInsightsAnalysis] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/StartNetworkInsightsAnalysisResult AWS API Documentation # class StartNetworkInsightsAnalysisResult < Struct.new( :network_insights_analysis) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] service_id # The ID of the endpoint service. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/StartVpcEndpointServicePrivateDnsVerificationRequest AWS API Documentation # class StartVpcEndpointServicePrivateDnsVerificationRequest < Struct.new( :dry_run, :service_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] return_value # Returns `true` if the request succeeds; otherwise, it returns an # error. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/StartVpcEndpointServicePrivateDnsVerificationResult AWS API Documentation # class StartVpcEndpointServicePrivateDnsVerificationResult < Struct.new( :return_value) SENSITIVE = [] include Aws::Structure end # Describes a state change. # # @!attribute [rw] code # The reason code for the state change. # @return [String] # # @!attribute [rw] message # 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. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/StateReason AWS API Documentation # class StateReason < Struct.new( :code, :message) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] instance_ids # The IDs of the instances. # @return [Array] # # @!attribute [rw] hibernate # Hibernates the instance if the instance was enabled for hibernation # at launch. If the instance cannot hibernate successfully, a normal # shutdown occurs. For more information, see [Hibernate your # instance][1] in the *Amazon EC2 User Guide*. # # Default: `false` # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Hibernate.html # @return [Boolean] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] force # Forces the instances to stop. The instances do not have an # opportunity to flush file system caches or file system metadata. If # you use this option, you must perform file system check and repair # procedures. This option is not recommended for Windows instances. # # Default: `false` # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/StopInstancesRequest AWS API Documentation # class StopInstancesRequest < Struct.new( :instance_ids, :hibernate, :dry_run, :force) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] stopping_instances # Information about the stopped instances. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/StopInstancesResult AWS API Documentation # class StopInstancesResult < Struct.new( :stopping_instances) SENSITIVE = [] include Aws::Structure end # Describes the storage location for an instance store-backed AMI. # # @!attribute [rw] s3 # An Amazon S3 storage location. # @return [Types::S3Storage] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Storage AWS API Documentation # class Storage < Struct.new( :s3) SENSITIVE = [] include Aws::Structure end # Describes a storage location in Amazon S3. # # @!attribute [rw] bucket # The name of the S3 bucket. # @return [String] # # @!attribute [rw] key # The key. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/StorageLocation AWS API Documentation # class StorageLocation < Struct.new( :bucket, :key) SENSITIVE = [] include Aws::Structure end # The information about the AMI store task, including the progress of # the task. # # @!attribute [rw] ami_id # The ID of the AMI that is being stored. # @return [String] # # @!attribute [rw] task_start_time # The time the task started. # @return [Time] # # @!attribute [rw] bucket # The name of the Amazon S3 bucket that contains the stored AMI # object. # @return [String] # # @!attribute [rw] s3object_key # The name of the stored AMI object in the bucket. # @return [String] # # @!attribute [rw] progress_percentage # The progress of the task as a percentage. # @return [Integer] # # @!attribute [rw] store_task_state # The state of the store task (`InProgress`, `Completed`, or # `Failed`). # @return [String] # # @!attribute [rw] store_task_failure_reason # If the tasks fails, the reason for the failure is returned. If the # task succeeds, `null` is returned. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/StoreImageTaskResult AWS API Documentation # class StoreImageTaskResult < Struct.new( :ami_id, :task_start_time, :bucket, :s3object_key, :progress_percentage, :store_task_state, :store_task_failure_reason) SENSITIVE = [] include Aws::Structure end # Describes a subnet. # # @!attribute [rw] availability_zone # The Availability Zone of the subnet. # @return [String] # # @!attribute [rw] availability_zone_id # The AZ ID of the subnet. # @return [String] # # @!attribute [rw] available_ip_address_count # The number of unused private IPv4 addresses in the subnet. The IPv4 # addresses for any stopped instances are considered unavailable. # @return [Integer] # # @!attribute [rw] cidr_block # The IPv4 CIDR block assigned to the subnet. # @return [String] # # @!attribute [rw] default_for_az # Indicates whether this is the default subnet for the Availability # Zone. # @return [Boolean] # # @!attribute [rw] enable_lni_at_device_index # 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). # @return [Integer] # # @!attribute [rw] map_public_ip_on_launch # 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][1]. # # # # [1]: http://aws.amazon.com/vpc/pricing/ # @return [Boolean] # # @!attribute [rw] map_customer_owned_ip_on_launch # Indicates whether a network interface created in this subnet # (including a network interface created by RunInstances) receives a # customer-owned IPv4 address. # @return [Boolean] # # @!attribute [rw] customer_owned_ipv_4_pool # The customer-owned IPv4 address pool associated with the subnet. # @return [String] # # @!attribute [rw] state # The current state of the subnet. # @return [String] # # @!attribute [rw] subnet_id # The ID of the subnet. # @return [String] # # @!attribute [rw] vpc_id # The ID of the VPC the subnet is in. # @return [String] # # @!attribute [rw] owner_id # The ID of the Amazon Web Services account that owns the subnet. # @return [String] # # @!attribute [rw] assign_ipv_6_address_on_creation # Indicates whether a network interface created in this subnet # (including a network interface created by RunInstances) receives an # IPv6 address. # @return [Boolean] # # @!attribute [rw] ipv_6_cidr_block_association_set # Information about the IPv6 CIDR blocks associated with the subnet. # @return [Array] # # @!attribute [rw] tags # Any tags assigned to the subnet. # @return [Array] # # @!attribute [rw] subnet_arn # The Amazon Resource Name (ARN) of the subnet. # @return [String] # # @!attribute [rw] outpost_arn # The Amazon Resource Name (ARN) of the Outpost. # @return [String] # # @!attribute [rw] enable_dns_64 # Indicates whether DNS queries made to the Amazon-provided DNS # Resolver in this subnet should return synthetic IPv6 addresses for # IPv4-only destinations. # @return [Boolean] # # @!attribute [rw] ipv_6_native # Indicates whether this is an IPv6 only subnet. # @return [Boolean] # # @!attribute [rw] private_dns_name_options_on_launch # 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. # @return [Types::PrivateDnsNameOptionsOnLaunch] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Subnet AWS API Documentation # class Subnet < Struct.new( :availability_zone, :availability_zone_id, :available_ip_address_count, :cidr_block, :default_for_az, :enable_lni_at_device_index, :map_public_ip_on_launch, :map_customer_owned_ip_on_launch, :customer_owned_ipv_4_pool, :state, :subnet_id, :vpc_id, :owner_id, :assign_ipv_6_address_on_creation, :ipv_6_cidr_block_association_set, :tags, :subnet_arn, :outpost_arn, :enable_dns_64, :ipv_6_native, :private_dns_name_options_on_launch) SENSITIVE = [] include Aws::Structure end # Describes the subnet association with the transit gateway multicast # domain. # # @!attribute [rw] subnet_id # The ID of the subnet. # @return [String] # # @!attribute [rw] state # The state of the subnet association. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SubnetAssociation AWS API Documentation # class SubnetAssociation < Struct.new( :subnet_id, :state) SENSITIVE = [] include Aws::Structure end # Describes the state of a CIDR block. # # @!attribute [rw] state # The state of a CIDR block. # @return [String] # # @!attribute [rw] status_message # A message about the status of the CIDR block, if applicable. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SubnetCidrBlockState AWS API Documentation # class SubnetCidrBlockState < Struct.new( :state, :status_message) SENSITIVE = [] include Aws::Structure end # Describes a subnet CIDR reservation. # # @!attribute [rw] subnet_cidr_reservation_id # The ID of the subnet CIDR reservation. # @return [String] # # @!attribute [rw] subnet_id # The ID of the subnet. # @return [String] # # @!attribute [rw] cidr # The CIDR that has been reserved. # @return [String] # # @!attribute [rw] reservation_type # The type of reservation. # @return [String] # # @!attribute [rw] owner_id # The ID of the account that owns the subnet CIDR reservation. # @return [String] # # @!attribute [rw] description # The description assigned to the subnet CIDR reservation. # @return [String] # # @!attribute [rw] tags # The tags assigned to the subnet CIDR reservation. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SubnetCidrReservation AWS API Documentation # class SubnetCidrReservation < Struct.new( :subnet_cidr_reservation_id, :subnet_id, :cidr, :reservation_type, :owner_id, :description, :tags) SENSITIVE = [] include Aws::Structure end # Describes the configuration of a subnet for a VPC endpoint. # # @!attribute [rw] subnet_id # The ID of the subnet. # @return [String] # # @!attribute [rw] ipv_4 # 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. # @return [String] # # @!attribute [rw] ipv_6 # 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. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SubnetConfiguration AWS API Documentation # class SubnetConfiguration < Struct.new( :subnet_id, :ipv_4, :ipv_6) SENSITIVE = [] include Aws::Structure end # Describes an association between a subnet and an IPv6 CIDR block. # # @!attribute [rw] association_id # The ID of the association. # @return [String] # # @!attribute [rw] ipv_6_cidr_block # The IPv6 CIDR block. # @return [String] # # @!attribute [rw] ipv_6_cidr_block_state # The state of the CIDR block. # @return [Types::SubnetCidrBlockState] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SubnetIpv6CidrBlockAssociation AWS API Documentation # class SubnetIpv6CidrBlockAssociation < Struct.new( :association_id, :ipv_6_cidr_block, :ipv_6_cidr_block_state) SENSITIVE = [] include Aws::Structure end # Describes an Infrastructure Performance subscription. # # @!attribute [rw] source # The Region or Availability Zone that's the source for the # subscription. For example, `us-east-1`. # @return [String] # # @!attribute [rw] destination # The Region or Availability Zone that's the target for the # subscription. For example, `eu-west-1`. # @return [String] # # @!attribute [rw] metric # The metric used for the subscription. # @return [String] # # @!attribute [rw] statistic # The statistic used for the subscription. # @return [String] # # @!attribute [rw] period # The data aggregation time for the subscription. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Subscription AWS API Documentation # class Subscription < Struct.new( :source, :destination, :metric, :statistic, :period) SENSITIVE = [] include Aws::Structure end # Describes the burstable performance instance whose credit option for # CPU usage was successfully modified. # # @!attribute [rw] instance_id # The ID of the instance. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SuccessfulInstanceCreditSpecificationItem AWS API Documentation # class SuccessfulInstanceCreditSpecificationItem < Struct.new( :instance_id) SENSITIVE = [] include Aws::Structure end # Describes a Reserved Instance whose queued purchase was successfully # deleted. # # @!attribute [rw] reserved_instances_id # The ID of the Reserved Instance. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/SuccessfulQueuedPurchaseDeletion AWS API Documentation # class SuccessfulQueuedPurchaseDeletion < Struct.new( :reserved_instances_id) SENSITIVE = [] include Aws::Structure end # Describes a tag. # # @!attribute [rw] key # The key of the tag. # # Constraints: Tag keys are case-sensitive and accept a maximum of 127 # Unicode characters. May not begin with `aws:`. # @return [String] # # @!attribute [rw] value # The value of the tag. # # Constraints: Tag values are case-sensitive and accept a maximum of # 256 Unicode characters. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Tag AWS API Documentation # class Tag < Struct.new( :key, :value) SENSITIVE = [] include Aws::Structure end # Describes a tag. # # @!attribute [rw] key # The tag key. # @return [String] # # @!attribute [rw] resource_id # The ID of the resource. # @return [String] # # @!attribute [rw] resource_type # The resource type. # @return [String] # # @!attribute [rw] value # The tag value. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TagDescription AWS API Documentation # class TagDescription < Struct.new( :key, :resource_id, :resource_type, :value) SENSITIVE = [] include Aws::Structure end # 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. # # # # @!attribute [rw] resource_type # The type of resource to tag on creation. # @return [String] # # @!attribute [rw] tags # The tags to apply to the resource. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TagSpecification AWS API Documentation # class TagSpecification < Struct.new( :resource_type, :tags) SENSITIVE = [] include Aws::Structure end # 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][1] and [SpotOptions][2]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_OnDemandOptions.html # [2]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SpotOptions # # @!attribute [rw] total_target_capacity # The number of units to request, filled the default target capacity # type. # @return [Integer] # # @!attribute [rw] on_demand_target_capacity # 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. # @return [Integer] # # @!attribute [rw] spot_target_capacity # 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. # @return [Integer] # # @!attribute [rw] default_target_capacity_type # The default target capacity type. # @return [String] # # @!attribute [rw] target_capacity_unit_type # The unit for the target capacity. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TargetCapacitySpecification AWS API Documentation # class TargetCapacitySpecification < Struct.new( :total_target_capacity, :on_demand_target_capacity, :spot_target_capacity, :default_target_capacity_type, :target_capacity_unit_type) SENSITIVE = [] include Aws::Structure end # 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 [OnDemandOptionsRequest][1] and [SpotOptionsRequest][2]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_OnDemandOptionsRequest # [2]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_SpotOptionsRequest # # @!attribute [rw] total_target_capacity # The number of units to request, filled using the default target # capacity type. # @return [Integer] # # @!attribute [rw] on_demand_target_capacity # The number of On-Demand units to request. # @return [Integer] # # @!attribute [rw] spot_target_capacity # The number of Spot units to request. # @return [Integer] # # @!attribute [rw] default_target_capacity_type # The default target capacity type. # @return [String] # # @!attribute [rw] target_capacity_unit_type # 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) # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TargetCapacitySpecificationRequest AWS API Documentation # class TargetCapacitySpecificationRequest < Struct.new( :total_target_capacity, :on_demand_target_capacity, :spot_target_capacity, :default_target_capacity_type, :target_capacity_unit_type) SENSITIVE = [] include Aws::Structure end # Information about the Convertible Reserved Instance offering. # # @!attribute [rw] instance_count # The number of instances the Convertible Reserved Instance offering # can be applied to. This parameter is reserved and cannot be # specified in a request # @return [Integer] # # @!attribute [rw] offering_id # The ID of the Convertible Reserved Instance offering. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TargetConfiguration AWS API Documentation # class TargetConfiguration < Struct.new( :instance_count, :offering_id) SENSITIVE = [] include Aws::Structure end # Details about the target configuration. # # @!attribute [rw] instance_count # The number of instances the Convertible Reserved Instance offering # can be applied to. This parameter is reserved and cannot be # specified in a request # @return [Integer] # # @!attribute [rw] offering_id # The Convertible Reserved Instance offering ID. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TargetConfigurationRequest AWS API Documentation # class TargetConfigurationRequest < Struct.new( :instance_count, :offering_id) SENSITIVE = [] include Aws::Structure end # Describes a load balancer target group. # # @!attribute [rw] arn # The Amazon Resource Name (ARN) of the target group. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TargetGroup AWS API Documentation # class TargetGroup < Struct.new( :arn) SENSITIVE = [] include Aws::Structure end # Describes the target groups to attach to a Spot Fleet. Spot Fleet # registers the running Spot Instances with these target groups. # # @!attribute [rw] target_groups # One or more target groups. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TargetGroupsConfig AWS API Documentation # class TargetGroupsConfig < Struct.new( :target_groups) SENSITIVE = [] include Aws::Structure end # Describes a target network associated with a Client VPN endpoint. # # @!attribute [rw] association_id # The ID of the association. # @return [String] # # @!attribute [rw] vpc_id # The ID of the VPC in which the target network (subnet) is located. # @return [String] # # @!attribute [rw] target_network_id # The ID of the subnet specified as the target network. # @return [String] # # @!attribute [rw] client_vpn_endpoint_id # The ID of the Client VPN endpoint with which the target network is # associated. # @return [String] # # @!attribute [rw] status # The current state of the target network association. # @return [Types::AssociationStatus] # # @!attribute [rw] security_groups # The IDs of the security groups applied to the target network # association. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TargetNetwork AWS API Documentation # class TargetNetwork < Struct.new( :association_id, :vpc_id, :target_network_id, :client_vpn_endpoint_id, :status, :security_groups) SENSITIVE = [] include Aws::Structure end # The total value of the new Convertible Reserved Instances. # # @!attribute [rw] reservation_value # 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. # @return [Types::ReservationValue] # # @!attribute [rw] target_configuration # The configuration of the Convertible Reserved Instances that make up # the exchange. # @return [Types::TargetConfiguration] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TargetReservationValue AWS API Documentation # class TargetReservationValue < Struct.new( :reservation_value, :target_configuration) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] client_vpn_endpoint_id # The ID of the Client VPN endpoint to which the client is connected. # @return [String] # # @!attribute [rw] connection_id # The ID of the client connection to be terminated. # @return [String] # # @!attribute [rw] username # The name of the user who initiated the connection. Use this option # to terminate all active connections for the specified user. This # option can only be used if the user has established up to five # connections. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TerminateClientVpnConnectionsRequest AWS API Documentation # class TerminateClientVpnConnectionsRequest < Struct.new( :client_vpn_endpoint_id, :connection_id, :username, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] client_vpn_endpoint_id # The ID of the Client VPN endpoint. # @return [String] # # @!attribute [rw] username # The user who established the terminated client connections. # @return [String] # # @!attribute [rw] connection_statuses # The current state of the client connections. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TerminateClientVpnConnectionsResult AWS API Documentation # class TerminateClientVpnConnectionsResult < Struct.new( :client_vpn_endpoint_id, :username, :connection_statuses) SENSITIVE = [] include Aws::Structure end # Information about a terminated Client VPN endpoint client connection. # # @!attribute [rw] connection_id # The ID of the client connection. # @return [String] # # @!attribute [rw] previous_status # The state of the client connection. # @return [Types::ClientVpnConnectionStatus] # # @!attribute [rw] current_status # A message about the status of the client connection, if applicable. # @return [Types::ClientVpnConnectionStatus] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TerminateConnectionStatus AWS API Documentation # class TerminateConnectionStatus < Struct.new( :connection_id, :previous_status, :current_status) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] instance_ids # The IDs of the instances. # # Constraints: Up to 1000 instance IDs. We recommend breaking up this # request into smaller batches. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TerminateInstancesRequest AWS API Documentation # class TerminateInstancesRequest < Struct.new( :instance_ids, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] terminating_instances # Information about the terminated instances. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TerminateInstancesResult AWS API Documentation # class TerminateInstancesResult < Struct.new( :terminating_instances) SENSITIVE = [] include Aws::Structure end # Describes a through resource statement. # # @!attribute [rw] resource_statement # The resource statement. # @return [Types::ResourceStatement] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ThroughResourcesStatement AWS API Documentation # class ThroughResourcesStatement < Struct.new( :resource_statement) SENSITIVE = [] include Aws::Structure end # Describes a through resource statement. # # @!attribute [rw] resource_statement # The resource statement. # @return [Types::ResourceStatementRequest] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ThroughResourcesStatementRequest AWS API Documentation # class ThroughResourcesStatementRequest < Struct.new( :resource_statement) SENSITIVE = [] include Aws::Structure end # The minimum and maximum amount of total local storage, in GB. # # @!attribute [rw] min # The minimum amount of total local storage, in GB. If this parameter # is not specified, there is no minimum limit. # @return [Float] # # @!attribute [rw] max # The maximum amount of total local storage, in GB. If this parameter # is not specified, there is no maximum limit. # @return [Float] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TotalLocalStorageGB AWS API Documentation # class TotalLocalStorageGB < Struct.new( :min, :max) SENSITIVE = [] include Aws::Structure end # The minimum and maximum amount of total local storage, in GB. # # @!attribute [rw] min # The minimum amount of total local storage, in GB. To specify no # minimum limit, omit this parameter. # @return [Float] # # @!attribute [rw] max # The maximum amount of total local storage, in GB. To specify no # maximum limit, omit this parameter. # @return [Float] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TotalLocalStorageGBRequest AWS API Documentation # class TotalLocalStorageGBRequest < Struct.new( :min, :max) SENSITIVE = [] include Aws::Structure end # Describes the Traffic Mirror filter. # # @!attribute [rw] traffic_mirror_filter_id # The ID of the Traffic Mirror filter. # @return [String] # # @!attribute [rw] ingress_filter_rules # Information about the ingress rules that are associated with the # Traffic Mirror filter. # @return [Array] # # @!attribute [rw] egress_filter_rules # Information about the egress rules that are associated with the # Traffic Mirror filter. # @return [Array] # # @!attribute [rw] network_services # The network service traffic that is associated with the Traffic # Mirror filter. # @return [Array] # # @!attribute [rw] description # The description of the Traffic Mirror filter. # @return [String] # # @!attribute [rw] tags # The tags assigned to the Traffic Mirror filter. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TrafficMirrorFilter AWS API Documentation # class TrafficMirrorFilter < Struct.new( :traffic_mirror_filter_id, :ingress_filter_rules, :egress_filter_rules, :network_services, :description, :tags) SENSITIVE = [] include Aws::Structure end # Describes the Traffic Mirror rule. # # @!attribute [rw] traffic_mirror_filter_rule_id # The ID of the Traffic Mirror rule. # @return [String] # # @!attribute [rw] traffic_mirror_filter_id # The ID of the Traffic Mirror filter that the rule is associated # with. # @return [String] # # @!attribute [rw] traffic_direction # The traffic direction assigned to the Traffic Mirror rule. # @return [String] # # @!attribute [rw] rule_number # The rule number of the Traffic Mirror rule. # @return [Integer] # # @!attribute [rw] rule_action # The action assigned to the Traffic Mirror rule. # @return [String] # # @!attribute [rw] protocol # The protocol assigned to the Traffic Mirror rule. # @return [Integer] # # @!attribute [rw] destination_port_range # The destination port range assigned to the Traffic Mirror rule. # @return [Types::TrafficMirrorPortRange] # # @!attribute [rw] source_port_range # The source port range assigned to the Traffic Mirror rule. # @return [Types::TrafficMirrorPortRange] # # @!attribute [rw] destination_cidr_block # The destination CIDR block assigned to the Traffic Mirror rule. # @return [String] # # @!attribute [rw] source_cidr_block # The source CIDR block assigned to the Traffic Mirror rule. # @return [String] # # @!attribute [rw] description # The description of the Traffic Mirror rule. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TrafficMirrorFilterRule AWS API Documentation # class TrafficMirrorFilterRule < Struct.new( :traffic_mirror_filter_rule_id, :traffic_mirror_filter_id, :traffic_direction, :rule_number, :rule_action, :protocol, :destination_port_range, :source_port_range, :destination_cidr_block, :source_cidr_block, :description) SENSITIVE = [] include Aws::Structure end # Describes the Traffic Mirror port range. # # @!attribute [rw] from_port # The start of the Traffic Mirror port range. This applies to the TCP # and UDP protocols. # @return [Integer] # # @!attribute [rw] to_port # The end of the Traffic Mirror port range. This applies to the TCP # and UDP protocols. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TrafficMirrorPortRange AWS API Documentation # class TrafficMirrorPortRange < Struct.new( :from_port, :to_port) SENSITIVE = [] include Aws::Structure end # Information about the Traffic Mirror filter rule port range. # # @!attribute [rw] from_port # The first port in the Traffic Mirror port range. This applies to the # TCP and UDP protocols. # @return [Integer] # # @!attribute [rw] to_port # The last port in the Traffic Mirror port range. This applies to the # TCP and UDP protocols. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TrafficMirrorPortRangeRequest AWS API Documentation # class TrafficMirrorPortRangeRequest < Struct.new( :from_port, :to_port) SENSITIVE = [] include Aws::Structure end # Describes a Traffic Mirror session. # # @!attribute [rw] traffic_mirror_session_id # The ID for the Traffic Mirror session. # @return [String] # # @!attribute [rw] traffic_mirror_target_id # The ID of the Traffic Mirror target. # @return [String] # # @!attribute [rw] traffic_mirror_filter_id # The ID of the Traffic Mirror filter. # @return [String] # # @!attribute [rw] network_interface_id # The ID of the Traffic Mirror session's network interface. # @return [String] # # @!attribute [rw] owner_id # The ID of the account that owns the Traffic Mirror session. # @return [String] # # @!attribute [rw] packet_length # 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 # @return [Integer] # # @!attribute [rw] session_number # 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. # @return [Integer] # # @!attribute [rw] virtual_network_id # The virtual network ID associated with the Traffic Mirror session. # @return [Integer] # # @!attribute [rw] description # The description of the Traffic Mirror session. # @return [String] # # @!attribute [rw] tags # The tags assigned to the Traffic Mirror session. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TrafficMirrorSession AWS API Documentation # class TrafficMirrorSession < Struct.new( :traffic_mirror_session_id, :traffic_mirror_target_id, :traffic_mirror_filter_id, :network_interface_id, :owner_id, :packet_length, :session_number, :virtual_network_id, :description, :tags) SENSITIVE = [] include Aws::Structure end # Describes a Traffic Mirror target. # # @!attribute [rw] traffic_mirror_target_id # The ID of the Traffic Mirror target. # @return [String] # # @!attribute [rw] network_interface_id # The network interface ID that is attached to the target. # @return [String] # # @!attribute [rw] network_load_balancer_arn # The Amazon Resource Name (ARN) of the Network Load Balancer. # @return [String] # # @!attribute [rw] type # The type of Traffic Mirror target. # @return [String] # # @!attribute [rw] description # Information about the Traffic Mirror target. # @return [String] # # @!attribute [rw] owner_id # The ID of the account that owns the Traffic Mirror target. # @return [String] # # @!attribute [rw] tags # The tags assigned to the Traffic Mirror target. # @return [Array] # # @!attribute [rw] gateway_load_balancer_endpoint_id # The ID of the Gateway Load Balancer endpoint. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TrafficMirrorTarget AWS API Documentation # class TrafficMirrorTarget < Struct.new( :traffic_mirror_target_id, :network_interface_id, :network_load_balancer_arn, :type, :description, :owner_id, :tags, :gateway_load_balancer_endpoint_id) SENSITIVE = [] include Aws::Structure end # Describes a transit gateway. # # @!attribute [rw] transit_gateway_id # The ID of the transit gateway. # @return [String] # # @!attribute [rw] transit_gateway_arn # The Amazon Resource Name (ARN) of the transit gateway. # @return [String] # # @!attribute [rw] state # The state of the transit gateway. # @return [String] # # @!attribute [rw] owner_id # The ID of the Amazon Web Services account that owns the transit # gateway. # @return [String] # # @!attribute [rw] description # The description of the transit gateway. # @return [String] # # @!attribute [rw] creation_time # The creation time. # @return [Time] # # @!attribute [rw] options # The transit gateway options. # @return [Types::TransitGatewayOptions] # # @!attribute [rw] tags # The tags for the transit gateway. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGateway AWS API Documentation # class TransitGateway < Struct.new( :transit_gateway_id, :transit_gateway_arn, :state, :owner_id, :description, :creation_time, :options, :tags) SENSITIVE = [] include Aws::Structure end # Describes an association between a resource attachment and a transit # gateway route table. # # @!attribute [rw] transit_gateway_route_table_id # The ID of the transit gateway route table. # @return [String] # # @!attribute [rw] transit_gateway_attachment_id # The ID of the attachment. # @return [String] # # @!attribute [rw] resource_id # The ID of the resource. # @return [String] # # @!attribute [rw] resource_type # The resource type. Note that the `tgw-peering` resource type has # been deprecated. # @return [String] # # @!attribute [rw] state # The state of the association. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayAssociation AWS API Documentation # class TransitGatewayAssociation < Struct.new( :transit_gateway_route_table_id, :transit_gateway_attachment_id, :resource_id, :resource_type, :state) SENSITIVE = [] include Aws::Structure end # Describes an attachment between a resource and a transit gateway. # # @!attribute [rw] transit_gateway_attachment_id # The ID of the attachment. # @return [String] # # @!attribute [rw] transit_gateway_id # The ID of the transit gateway. # @return [String] # # @!attribute [rw] transit_gateway_owner_id # The ID of the Amazon Web Services account that owns the transit # gateway. # @return [String] # # @!attribute [rw] resource_owner_id # The ID of the Amazon Web Services account that owns the resource. # @return [String] # # @!attribute [rw] resource_type # The resource type. Note that the `tgw-peering` resource type has # been deprecated. # @return [String] # # @!attribute [rw] resource_id # The ID of the resource. # @return [String] # # @!attribute [rw] state # The attachment state. Note that the `initiating` state has been # deprecated. # @return [String] # # @!attribute [rw] association # The association. # @return [Types::TransitGatewayAttachmentAssociation] # # @!attribute [rw] creation_time # The creation time. # @return [Time] # # @!attribute [rw] tags # The tags for the attachment. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayAttachment AWS API Documentation # class TransitGatewayAttachment < Struct.new( :transit_gateway_attachment_id, :transit_gateway_id, :transit_gateway_owner_id, :resource_owner_id, :resource_type, :resource_id, :state, :association, :creation_time, :tags) SENSITIVE = [] include Aws::Structure end # Describes an association. # # @!attribute [rw] transit_gateway_route_table_id # The ID of the route table for the transit gateway. # @return [String] # # @!attribute [rw] state # The state of the association. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayAttachmentAssociation AWS API Documentation # class TransitGatewayAttachmentAssociation < Struct.new( :transit_gateway_route_table_id, :state) SENSITIVE = [] include Aws::Structure end # The BGP configuration information. # # @!attribute [rw] transit_gateway_asn # The transit gateway Autonomous System Number (ASN). # @return [Integer] # # @!attribute [rw] peer_asn # The peer Autonomous System Number (ASN). # @return [Integer] # # @!attribute [rw] transit_gateway_address # The interior BGP peer IP address for the transit gateway. # @return [String] # # @!attribute [rw] peer_address # The interior BGP peer IP address for the appliance. # @return [String] # # @!attribute [rw] bgp_status # The BGP status. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayAttachmentBgpConfiguration AWS API Documentation # class TransitGatewayAttachmentBgpConfiguration < Struct.new( :transit_gateway_asn, :peer_asn, :transit_gateway_address, :peer_address, :bgp_status) SENSITIVE = [] include Aws::Structure end # Describes a propagation route table. # # @!attribute [rw] transit_gateway_route_table_id # The ID of the propagation route table. # @return [String] # # @!attribute [rw] state # The state of the propagation route table. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayAttachmentPropagation AWS API Documentation # class TransitGatewayAttachmentPropagation < Struct.new( :transit_gateway_route_table_id, :state) SENSITIVE = [] include Aws::Structure end # Describes a transit gateway Connect attachment. # # @!attribute [rw] transit_gateway_attachment_id # The ID of the Connect attachment. # @return [String] # # @!attribute [rw] transport_transit_gateway_attachment_id # The ID of the attachment from which the Connect attachment was # created. # @return [String] # # @!attribute [rw] transit_gateway_id # The ID of the transit gateway. # @return [String] # # @!attribute [rw] state # The state of the attachment. # @return [String] # # @!attribute [rw] creation_time # The creation time. # @return [Time] # # @!attribute [rw] options # The Connect attachment options. # @return [Types::TransitGatewayConnectOptions] # # @!attribute [rw] tags # The tags for the attachment. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayConnect AWS API Documentation # class TransitGatewayConnect < Struct.new( :transit_gateway_attachment_id, :transport_transit_gateway_attachment_id, :transit_gateway_id, :state, :creation_time, :options, :tags) SENSITIVE = [] include Aws::Structure end # Describes the Connect attachment options. # # @!attribute [rw] protocol # The tunnel protocol. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayConnectOptions AWS API Documentation # class TransitGatewayConnectOptions < Struct.new( :protocol) SENSITIVE = [] include Aws::Structure end # Describes a transit gateway Connect peer. # # @!attribute [rw] transit_gateway_attachment_id # The ID of the Connect attachment. # @return [String] # # @!attribute [rw] transit_gateway_connect_peer_id # The ID of the Connect peer. # @return [String] # # @!attribute [rw] state # The state of the Connect peer. # @return [String] # # @!attribute [rw] creation_time # The creation time. # @return [Time] # # @!attribute [rw] connect_peer_configuration # The Connect peer details. # @return [Types::TransitGatewayConnectPeerConfiguration] # # @!attribute [rw] tags # The tags for the Connect peer. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayConnectPeer AWS API Documentation # class TransitGatewayConnectPeer < Struct.new( :transit_gateway_attachment_id, :transit_gateway_connect_peer_id, :state, :creation_time, :connect_peer_configuration, :tags) SENSITIVE = [] include Aws::Structure end # Describes the Connect peer details. # # @!attribute [rw] transit_gateway_address # The Connect peer IP address on the transit gateway side of the # tunnel. # @return [String] # # @!attribute [rw] peer_address # The Connect peer IP address on the appliance side of the tunnel. # @return [String] # # @!attribute [rw] inside_cidr_blocks # The range of interior BGP peer IP addresses. # @return [Array] # # @!attribute [rw] protocol # The tunnel protocol. # @return [String] # # @!attribute [rw] bgp_configurations # The BGP configuration details. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayConnectPeerConfiguration AWS API Documentation # class TransitGatewayConnectPeerConfiguration < Struct.new( :transit_gateway_address, :peer_address, :inside_cidr_blocks, :protocol, :bgp_configurations) SENSITIVE = [] include Aws::Structure end # The BGP options for the Connect attachment. # # @!attribute [rw] peer_asn # The peer Autonomous System Number (ASN). # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayConnectRequestBgpOptions AWS API Documentation # class TransitGatewayConnectRequestBgpOptions < Struct.new( :peer_asn) SENSITIVE = [] include Aws::Structure end # Describes the deregistered transit gateway multicast group members. # # @!attribute [rw] transit_gateway_multicast_domain_id # The ID of the transit gateway multicast domain. # @return [String] # # @!attribute [rw] deregistered_network_interface_ids # The network interface IDs of the deregistered members. # @return [Array] # # @!attribute [rw] group_ip_address # The IP address assigned to the transit gateway multicast group. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayMulticastDeregisteredGroupMembers AWS API Documentation # class TransitGatewayMulticastDeregisteredGroupMembers < Struct.new( :transit_gateway_multicast_domain_id, :deregistered_network_interface_ids, :group_ip_address) SENSITIVE = [] include Aws::Structure end # Describes the deregistered transit gateway multicast group sources. # # @!attribute [rw] transit_gateway_multicast_domain_id # The ID of the transit gateway multicast domain. # @return [String] # # @!attribute [rw] deregistered_network_interface_ids # The network interface IDs of the non-registered members. # @return [Array] # # @!attribute [rw] group_ip_address # The IP address assigned to the transit gateway multicast group. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayMulticastDeregisteredGroupSources AWS API Documentation # class TransitGatewayMulticastDeregisteredGroupSources < Struct.new( :transit_gateway_multicast_domain_id, :deregistered_network_interface_ids, :group_ip_address) SENSITIVE = [] include Aws::Structure end # Describes the transit gateway multicast domain. # # @!attribute [rw] transit_gateway_multicast_domain_id # The ID of the transit gateway multicast domain. # @return [String] # # @!attribute [rw] transit_gateway_id # The ID of the transit gateway. # @return [String] # # @!attribute [rw] transit_gateway_multicast_domain_arn # The Amazon Resource Name (ARN) of the transit gateway multicast # domain. # @return [String] # # @!attribute [rw] owner_id # The ID of the Amazon Web Services account that owns the transit # gateway multicast domain. # @return [String] # # @!attribute [rw] options # The options for the transit gateway multicast domain. # @return [Types::TransitGatewayMulticastDomainOptions] # # @!attribute [rw] state # The state of the transit gateway multicast domain. # @return [String] # # @!attribute [rw] creation_time # The time the transit gateway multicast domain was created. # @return [Time] # # @!attribute [rw] tags # The tags for the transit gateway multicast domain. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayMulticastDomain AWS API Documentation # class TransitGatewayMulticastDomain < Struct.new( :transit_gateway_multicast_domain_id, :transit_gateway_id, :transit_gateway_multicast_domain_arn, :owner_id, :options, :state, :creation_time, :tags) SENSITIVE = [] include Aws::Structure end # Describes the resources associated with the transit gateway multicast # domain. # # @!attribute [rw] transit_gateway_attachment_id # The ID of the transit gateway attachment. # @return [String] # # @!attribute [rw] resource_id # The ID of the resource. # @return [String] # # @!attribute [rw] resource_type # The type of resource, for example a VPC attachment. # @return [String] # # @!attribute [rw] resource_owner_id # The ID of the Amazon Web Services account that owns the transit # gateway multicast domain association resource. # @return [String] # # @!attribute [rw] subnet # The subnet associated with the transit gateway multicast domain. # @return [Types::SubnetAssociation] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayMulticastDomainAssociation AWS API Documentation # class TransitGatewayMulticastDomainAssociation < Struct.new( :transit_gateway_attachment_id, :resource_id, :resource_type, :resource_owner_id, :subnet) SENSITIVE = [] include Aws::Structure end # Describes the multicast domain associations. # # @!attribute [rw] transit_gateway_multicast_domain_id # The ID of the transit gateway multicast domain. # @return [String] # # @!attribute [rw] transit_gateway_attachment_id # The ID of the transit gateway attachment. # @return [String] # # @!attribute [rw] resource_id # The ID of the resource. # @return [String] # # @!attribute [rw] resource_type # The type of resource, for example a VPC attachment. # @return [String] # # @!attribute [rw] resource_owner_id # The ID of the Amazon Web Services account that owns the resource. # @return [String] # # @!attribute [rw] subnets # The subnets associated with the multicast domain. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayMulticastDomainAssociations AWS API Documentation # class TransitGatewayMulticastDomainAssociations < Struct.new( :transit_gateway_multicast_domain_id, :transit_gateway_attachment_id, :resource_id, :resource_type, :resource_owner_id, :subnets) SENSITIVE = [] include Aws::Structure end # Describes the options for a transit gateway multicast domain. # # @!attribute [rw] igmpv_2_support # Indicates whether Internet Group Management Protocol (IGMP) version # 2 is turned on for the transit gateway multicast domain. # @return [String] # # @!attribute [rw] static_sources_support # Indicates whether support for statically configuring transit gateway # multicast group sources is turned on. # @return [String] # # @!attribute [rw] auto_accept_shared_associations # Indicates whether to automatically cross-account subnet associations # that are associated with the transit gateway multicast domain. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayMulticastDomainOptions AWS API Documentation # class TransitGatewayMulticastDomainOptions < Struct.new( :igmpv_2_support, :static_sources_support, :auto_accept_shared_associations) SENSITIVE = [] include Aws::Structure end # Describes the transit gateway multicast group resources. # # @!attribute [rw] group_ip_address # The IP address assigned to the transit gateway multicast group. # @return [String] # # @!attribute [rw] transit_gateway_attachment_id # The ID of the transit gateway attachment. # @return [String] # # @!attribute [rw] subnet_id # The ID of the subnet. # @return [String] # # @!attribute [rw] resource_id # The ID of the resource. # @return [String] # # @!attribute [rw] resource_type # The type of resource, for example a VPC attachment. # @return [String] # # @!attribute [rw] resource_owner_id # The ID of the Amazon Web Services account that owns the transit # gateway multicast domain group resource. # @return [String] # # @!attribute [rw] network_interface_id # The ID of the transit gateway attachment. # @return [String] # # @!attribute [rw] group_member # Indicates that the resource is a transit gateway multicast group # member. # @return [Boolean] # # @!attribute [rw] group_source # Indicates that the resource is a transit gateway multicast group # member. # @return [Boolean] # # @!attribute [rw] member_type # The member type (for example, `static`). # @return [String] # # @!attribute [rw] source_type # The source type. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayMulticastGroup AWS API Documentation # class TransitGatewayMulticastGroup < Struct.new( :group_ip_address, :transit_gateway_attachment_id, :subnet_id, :resource_id, :resource_type, :resource_owner_id, :network_interface_id, :group_member, :group_source, :member_type, :source_type) SENSITIVE = [] include Aws::Structure end # Describes the registered transit gateway multicast group members. # # @!attribute [rw] transit_gateway_multicast_domain_id # The ID of the transit gateway multicast domain. # @return [String] # # @!attribute [rw] registered_network_interface_ids # The ID of the registered network interfaces. # @return [Array] # # @!attribute [rw] group_ip_address # The IP address assigned to the transit gateway multicast group. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayMulticastRegisteredGroupMembers AWS API Documentation # class TransitGatewayMulticastRegisteredGroupMembers < Struct.new( :transit_gateway_multicast_domain_id, :registered_network_interface_ids, :group_ip_address) SENSITIVE = [] include Aws::Structure end # Describes the members registered with the transit gateway multicast # group. # # @!attribute [rw] transit_gateway_multicast_domain_id # The ID of the transit gateway multicast domain. # @return [String] # # @!attribute [rw] registered_network_interface_ids # The IDs of the network interfaces members registered with the # transit gateway multicast group. # @return [Array] # # @!attribute [rw] group_ip_address # The IP address assigned to the transit gateway multicast group. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayMulticastRegisteredGroupSources AWS API Documentation # class TransitGatewayMulticastRegisteredGroupSources < Struct.new( :transit_gateway_multicast_domain_id, :registered_network_interface_ids, :group_ip_address) SENSITIVE = [] include Aws::Structure end # Describes the options for a transit gateway. # # @!attribute [rw] amazon_side_asn # 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. # @return [Integer] # # @!attribute [rw] transit_gateway_cidr_blocks # The transit gateway CIDR blocks. # @return [Array] # # @!attribute [rw] auto_accept_shared_attachments # Indicates whether attachment requests are automatically accepted. # @return [String] # # @!attribute [rw] default_route_table_association # Indicates whether resource attachments are automatically associated # with the default association route table. # @return [String] # # @!attribute [rw] association_default_route_table_id # The ID of the default association route table. # @return [String] # # @!attribute [rw] default_route_table_propagation # Indicates whether resource attachments automatically propagate # routes to the default propagation route table. # @return [String] # # @!attribute [rw] propagation_default_route_table_id # The ID of the default propagation route table. # @return [String] # # @!attribute [rw] vpn_ecmp_support # Indicates whether Equal Cost Multipath Protocol support is enabled. # @return [String] # # @!attribute [rw] dns_support # Indicates whether DNS support is enabled. # @return [String] # # @!attribute [rw] security_group_referencing_support # This parameter is in preview and may not be available for your # account. # # # # Enables you to reference a security group across VPCs attached to a # transit gateway. Use this option to simplify security group # management and control of instance-to-instance traffic across VPCs # that are connected by transit gateway. You can also use this option # to migrate from VPC peering (which was the only option that # supported security group referencing) to transit gateways (which now # also support security group referencing). This option is disabled by # default and there are no additional costs to use this feature. # @return [String] # # @!attribute [rw] multicast_support # Indicates whether multicast is enabled on the transit gateway # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayOptions AWS API Documentation # class TransitGatewayOptions < Struct.new( :amazon_side_asn, :transit_gateway_cidr_blocks, :auto_accept_shared_attachments, :default_route_table_association, :association_default_route_table_id, :default_route_table_propagation, :propagation_default_route_table_id, :vpn_ecmp_support, :dns_support, :security_group_referencing_support, :multicast_support) SENSITIVE = [] include Aws::Structure end # Describes the transit gateway peering attachment. # # @!attribute [rw] transit_gateway_attachment_id # The ID of the transit gateway peering attachment. # @return [String] # # @!attribute [rw] accepter_transit_gateway_attachment_id # The ID of the accepter transit gateway attachment. # @return [String] # # @!attribute [rw] requester_tgw_info # Information about the requester transit gateway. # @return [Types::PeeringTgwInfo] # # @!attribute [rw] accepter_tgw_info # Information about the accepter transit gateway. # @return [Types::PeeringTgwInfo] # # @!attribute [rw] options # Details about the transit gateway peering attachment. # @return [Types::TransitGatewayPeeringAttachmentOptions] # # @!attribute [rw] status # The status of the transit gateway peering attachment. # @return [Types::PeeringAttachmentStatus] # # @!attribute [rw] state # The state of the transit gateway peering attachment. Note that the # `initiating` state has been deprecated. # @return [String] # # @!attribute [rw] creation_time # The time the transit gateway peering attachment was created. # @return [Time] # # @!attribute [rw] tags # The tags for the transit gateway peering attachment. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayPeeringAttachment AWS API Documentation # class TransitGatewayPeeringAttachment < Struct.new( :transit_gateway_attachment_id, :accepter_transit_gateway_attachment_id, :requester_tgw_info, :accepter_tgw_info, :options, :status, :state, :creation_time, :tags) SENSITIVE = [] include Aws::Structure end # Describes dynamic routing for the transit gateway peering attachment. # # @!attribute [rw] dynamic_routing # Describes whether dynamic routing is enabled or disabled for the # transit gateway peering attachment. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayPeeringAttachmentOptions AWS API Documentation # class TransitGatewayPeeringAttachmentOptions < Struct.new( :dynamic_routing) SENSITIVE = [] include Aws::Structure end # Describes a rule associated with a transit gateway policy. # # @!attribute [rw] source_cidr_block # The source CIDR block for the transit gateway policy rule. # @return [String] # # @!attribute [rw] source_port_range # The port range for the transit gateway policy rule. Currently this # is set to * (all). # @return [String] # # @!attribute [rw] destination_cidr_block # The destination CIDR block for the transit gateway policy rule. # @return [String] # # @!attribute [rw] destination_port_range # The port range for the transit gateway policy rule. Currently this # is set to * (all). # @return [String] # # @!attribute [rw] protocol # The protocol used by the transit gateway policy rule. # @return [String] # # @!attribute [rw] meta_data # The meta data tags used for the transit gateway policy rule. # @return [Types::TransitGatewayPolicyRuleMetaData] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayPolicyRule AWS API Documentation # class TransitGatewayPolicyRule < Struct.new( :source_cidr_block, :source_port_range, :destination_cidr_block, :destination_port_range, :protocol, :meta_data) SENSITIVE = [] include Aws::Structure end # Describes the meta data tags associated with a transit gateway policy # rule. # # @!attribute [rw] meta_data_key # The key name for the transit gateway policy rule meta data tag. # @return [String] # # @!attribute [rw] meta_data_value # The value of the key for the transit gateway policy rule meta data # tag. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayPolicyRuleMetaData AWS API Documentation # class TransitGatewayPolicyRuleMetaData < Struct.new( :meta_data_key, :meta_data_value) SENSITIVE = [] include Aws::Structure end # Describes a transit gateway policy table. # # @!attribute [rw] transit_gateway_policy_table_id # The ID of the transit gateway policy table. # @return [String] # # @!attribute [rw] transit_gateway_id # The ID of the transit gateway. # @return [String] # # @!attribute [rw] state # The state of the transit gateway policy table # @return [String] # # @!attribute [rw] creation_time # The timestamp when the transit gateway policy table was created. # @return [Time] # # @!attribute [rw] tags # he key-value pairs associated with the transit gateway policy table. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayPolicyTable AWS API Documentation # class TransitGatewayPolicyTable < Struct.new( :transit_gateway_policy_table_id, :transit_gateway_id, :state, :creation_time, :tags) SENSITIVE = [] include Aws::Structure end # Describes a transit gateway policy table association. # # @!attribute [rw] transit_gateway_policy_table_id # The ID of the transit gateway policy table. # @return [String] # # @!attribute [rw] transit_gateway_attachment_id # The ID of the transit gateway attachment. # @return [String] # # @!attribute [rw] resource_id # The resource ID of the transit gateway attachment. # @return [String] # # @!attribute [rw] resource_type # The resource type for the transit gateway policy table association. # @return [String] # # @!attribute [rw] state # The state of the transit gateway policy table association. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayPolicyTableAssociation AWS API Documentation # class TransitGatewayPolicyTableAssociation < Struct.new( :transit_gateway_policy_table_id, :transit_gateway_attachment_id, :resource_id, :resource_type, :state) SENSITIVE = [] include Aws::Structure end # Describes a transit gateway policy table entry # # @!attribute [rw] policy_rule_number # The rule number for the transit gateway policy table entry. # @return [String] # # @!attribute [rw] policy_rule # The policy rule associated with the transit gateway policy table. # @return [Types::TransitGatewayPolicyRule] # # @!attribute [rw] target_route_table_id # The ID of the target route table. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayPolicyTableEntry AWS API Documentation # class TransitGatewayPolicyTableEntry < Struct.new( :policy_rule_number, :policy_rule, :target_route_table_id) SENSITIVE = [] include Aws::Structure end # Describes a transit gateway prefix list attachment. # # @!attribute [rw] transit_gateway_attachment_id # The ID of the attachment. # @return [String] # # @!attribute [rw] resource_type # The resource type. Note that the `tgw-peering` resource type has # been deprecated. # @return [String] # # @!attribute [rw] resource_id # The ID of the resource. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayPrefixListAttachment AWS API Documentation # class TransitGatewayPrefixListAttachment < Struct.new( :transit_gateway_attachment_id, :resource_type, :resource_id) SENSITIVE = [] include Aws::Structure end # Describes a prefix list reference. # # @!attribute [rw] transit_gateway_route_table_id # The ID of the transit gateway route table. # @return [String] # # @!attribute [rw] prefix_list_id # The ID of the prefix list. # @return [String] # # @!attribute [rw] prefix_list_owner_id # The ID of the prefix list owner. # @return [String] # # @!attribute [rw] state # The state of the prefix list reference. # @return [String] # # @!attribute [rw] blackhole # Indicates whether traffic that matches this route is dropped. # @return [Boolean] # # @!attribute [rw] transit_gateway_attachment # Information about the transit gateway attachment. # @return [Types::TransitGatewayPrefixListAttachment] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayPrefixListReference AWS API Documentation # class TransitGatewayPrefixListReference < Struct.new( :transit_gateway_route_table_id, :prefix_list_id, :prefix_list_owner_id, :state, :blackhole, :transit_gateway_attachment) SENSITIVE = [] include Aws::Structure end # Describes route propagation. # # @!attribute [rw] transit_gateway_attachment_id # The ID of the attachment. # @return [String] # # @!attribute [rw] resource_id # The ID of the resource. # @return [String] # # @!attribute [rw] resource_type # The resource type. Note that the `tgw-peering` resource type has # been deprecated. # @return [String] # # @!attribute [rw] transit_gateway_route_table_id # The ID of the transit gateway route table. # @return [String] # # @!attribute [rw] state # The state. # @return [String] # # @!attribute [rw] transit_gateway_route_table_announcement_id # The ID of the transit gateway route table announcement. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayPropagation AWS API Documentation # class TransitGatewayPropagation < Struct.new( :transit_gateway_attachment_id, :resource_id, :resource_type, :transit_gateway_route_table_id, :state, :transit_gateway_route_table_announcement_id) SENSITIVE = [] include Aws::Structure end # Describes the options for a transit gateway. # # @!attribute [rw] amazon_side_asn # 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`. # @return [Integer] # # @!attribute [rw] auto_accept_shared_attachments # Enable or disable automatic acceptance of attachment requests. # Disabled by default. # @return [String] # # @!attribute [rw] default_route_table_association # Enable or disable automatic association with the default association # route table. Enabled by default. # @return [String] # # @!attribute [rw] default_route_table_propagation # Enable or disable automatic propagation of routes to the default # propagation route table. Enabled by default. # @return [String] # # @!attribute [rw] vpn_ecmp_support # Enable or disable Equal Cost Multipath Protocol support. Enabled by # default. # @return [String] # # @!attribute [rw] dns_support # Enable or disable DNS support. Enabled by default. # @return [String] # # @!attribute [rw] security_group_referencing_support # This parameter is in preview and may not be available for your # account. # # # # Enables you to reference a security group across VPCs attached to a # transit gateway. Use this option to simplify security group # management and control of instance-to-instance traffic across VPCs # that are connected by transit gateway. You can also use this option # to migrate from VPC peering (which was the only option that # supported security group referencing) to transit gateways (which now # also support security group referencing). This option is disabled by # default and there are no additional costs to use this feature. # @return [String] # # @!attribute [rw] multicast_support # Indicates whether multicast is enabled on the transit gateway # @return [String] # # @!attribute [rw] transit_gateway_cidr_blocks # 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. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayRequestOptions AWS API Documentation # class TransitGatewayRequestOptions < Struct.new( :amazon_side_asn, :auto_accept_shared_attachments, :default_route_table_association, :default_route_table_propagation, :vpn_ecmp_support, :dns_support, :security_group_referencing_support, :multicast_support, :transit_gateway_cidr_blocks) SENSITIVE = [] include Aws::Structure end # Describes a route for a transit gateway route table. # # @!attribute [rw] destination_cidr_block # The CIDR block used for destination matches. # @return [String] # # @!attribute [rw] prefix_list_id # The ID of the prefix list used for destination matches. # @return [String] # # @!attribute [rw] transit_gateway_route_table_announcement_id # The ID of the transit gateway route table announcement. # @return [String] # # @!attribute [rw] transit_gateway_attachments # The attachments. # @return [Array] # # @!attribute [rw] type # The route type. # @return [String] # # @!attribute [rw] state # The state of the route. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayRoute AWS API Documentation # class TransitGatewayRoute < Struct.new( :destination_cidr_block, :prefix_list_id, :transit_gateway_route_table_announcement_id, :transit_gateway_attachments, :type, :state) SENSITIVE = [] include Aws::Structure end # Describes a route attachment. # # @!attribute [rw] resource_id # The ID of the resource. # @return [String] # # @!attribute [rw] transit_gateway_attachment_id # The ID of the attachment. # @return [String] # # @!attribute [rw] resource_type # The resource type. Note that the `tgw-peering` resource type has # been deprecated. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayRouteAttachment AWS API Documentation # class TransitGatewayRouteAttachment < Struct.new( :resource_id, :transit_gateway_attachment_id, :resource_type) SENSITIVE = [] include Aws::Structure end # Describes a transit gateway route table. # # @!attribute [rw] transit_gateway_route_table_id # The ID of the transit gateway route table. # @return [String] # # @!attribute [rw] transit_gateway_id # The ID of the transit gateway. # @return [String] # # @!attribute [rw] state # The state of the transit gateway route table. # @return [String] # # @!attribute [rw] default_association_route_table # Indicates whether this is the default association route table for # the transit gateway. # @return [Boolean] # # @!attribute [rw] default_propagation_route_table # Indicates whether this is the default propagation route table for # the transit gateway. # @return [Boolean] # # @!attribute [rw] creation_time # The creation time. # @return [Time] # # @!attribute [rw] tags # Any tags assigned to the route table. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayRouteTable AWS API Documentation # class TransitGatewayRouteTable < Struct.new( :transit_gateway_route_table_id, :transit_gateway_id, :state, :default_association_route_table, :default_propagation_route_table, :creation_time, :tags) SENSITIVE = [] include Aws::Structure end # Describes a transit gateway route table announcement. # # @!attribute [rw] transit_gateway_route_table_announcement_id # The ID of the transit gateway route table announcement. # @return [String] # # @!attribute [rw] transit_gateway_id # The ID of the transit gateway. # @return [String] # # @!attribute [rw] core_network_id # The ID of the core network for the transit gateway route table # announcement. # @return [String] # # @!attribute [rw] peer_transit_gateway_id # The ID of the peer transit gateway. # @return [String] # # @!attribute [rw] peer_core_network_id # The ID of the core network ID for the peer. # @return [String] # # @!attribute [rw] peering_attachment_id # The ID of the peering attachment. # @return [String] # # @!attribute [rw] announcement_direction # The direction for the route table announcement. # @return [String] # # @!attribute [rw] transit_gateway_route_table_id # The ID of the transit gateway route table. # @return [String] # # @!attribute [rw] state # The state of the transit gateway announcement. # @return [String] # # @!attribute [rw] creation_time # The timestamp when the transit gateway route table announcement was # created. # @return [Time] # # @!attribute [rw] tags # The key-value pairs associated with the route table announcement. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayRouteTableAnnouncement AWS API Documentation # class TransitGatewayRouteTableAnnouncement < Struct.new( :transit_gateway_route_table_announcement_id, :transit_gateway_id, :core_network_id, :peer_transit_gateway_id, :peer_core_network_id, :peering_attachment_id, :announcement_direction, :transit_gateway_route_table_id, :state, :creation_time, :tags) SENSITIVE = [] include Aws::Structure end # Describes an association between a route table and a resource # attachment. # # @!attribute [rw] transit_gateway_attachment_id # The ID of the attachment. # @return [String] # # @!attribute [rw] resource_id # The ID of the resource. # @return [String] # # @!attribute [rw] resource_type # The resource type. Note that the `tgw-peering` resource type has # been deprecated. # @return [String] # # @!attribute [rw] state # The state of the association. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayRouteTableAssociation AWS API Documentation # class TransitGatewayRouteTableAssociation < Struct.new( :transit_gateway_attachment_id, :resource_id, :resource_type, :state) SENSITIVE = [] include Aws::Structure end # Describes a route table propagation. # # @!attribute [rw] transit_gateway_attachment_id # The ID of the attachment. # @return [String] # # @!attribute [rw] resource_id # The ID of the resource. # @return [String] # # @!attribute [rw] resource_type # The type of resource. Note that the `tgw-peering` resource type has # been deprecated. # @return [String] # # @!attribute [rw] state # The state of the resource. # @return [String] # # @!attribute [rw] transit_gateway_route_table_announcement_id # The ID of the transit gateway route table announcement. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayRouteTablePropagation AWS API Documentation # class TransitGatewayRouteTablePropagation < Struct.new( :transit_gateway_attachment_id, :resource_id, :resource_type, :state, :transit_gateway_route_table_announcement_id) SENSITIVE = [] include Aws::Structure end # Describes a route in a transit gateway route table. # # @!attribute [rw] destination_cidr # The CIDR block used for destination matches. # @return [String] # # @!attribute [rw] state # The state of the route. # @return [String] # # @!attribute [rw] route_origin # The route origin. The following are the possible values: # # * static # # * propagated # @return [String] # # @!attribute [rw] prefix_list_id # The ID of the prefix list. # @return [String] # # @!attribute [rw] attachment_id # The ID of the route attachment. # @return [String] # # @!attribute [rw] resource_id # The ID of the resource for the route attachment. # @return [String] # # @!attribute [rw] resource_type # The resource type for the route attachment. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayRouteTableRoute AWS API Documentation # class TransitGatewayRouteTableRoute < Struct.new( :destination_cidr, :state, :route_origin, :prefix_list_id, :attachment_id, :resource_id, :resource_type) SENSITIVE = [] include Aws::Structure end # Describes a VPC attachment. # # @!attribute [rw] transit_gateway_attachment_id # The ID of the attachment. # @return [String] # # @!attribute [rw] transit_gateway_id # The ID of the transit gateway. # @return [String] # # @!attribute [rw] vpc_id # The ID of the VPC. # @return [String] # # @!attribute [rw] vpc_owner_id # The ID of the Amazon Web Services account that owns the VPC. # @return [String] # # @!attribute [rw] state # The state of the VPC attachment. Note that the `initiating` state # has been deprecated. # @return [String] # # @!attribute [rw] subnet_ids # The IDs of the subnets. # @return [Array] # # @!attribute [rw] creation_time # The creation time. # @return [Time] # # @!attribute [rw] options # The VPC attachment options. # @return [Types::TransitGatewayVpcAttachmentOptions] # # @!attribute [rw] tags # The tags for the VPC attachment. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayVpcAttachment AWS API Documentation # class TransitGatewayVpcAttachment < Struct.new( :transit_gateway_attachment_id, :transit_gateway_id, :vpc_id, :vpc_owner_id, :state, :subnet_ids, :creation_time, :options, :tags) SENSITIVE = [] include Aws::Structure end # Describes the VPC attachment options. # # @!attribute [rw] dns_support # Indicates whether DNS support is enabled. # @return [String] # # @!attribute [rw] security_group_referencing_support # This parameter is in preview and may not be available for your # account. # # # # Enables you to reference a security group across VPCs attached to a # transit gateway. Use this option to simplify security group # management and control of instance-to-instance traffic across VPCs # that are connected by transit gateway. You can also use this option # to migrate from VPC peering (which was the only option that # supported security group referencing) to transit gateways (which now # also support security group referencing). This option is disabled by # default and there are no additional costs to use this feature. # @return [String] # # @!attribute [rw] ipv_6_support # Indicates whether IPv6 support is disabled. # @return [String] # # @!attribute [rw] appliance_mode_support # Indicates whether appliance mode support is enabled. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TransitGatewayVpcAttachmentOptions AWS API Documentation # class TransitGatewayVpcAttachmentOptions < Struct.new( :dns_support, :security_group_referencing_support, :ipv_6_support, :appliance_mode_support) SENSITIVE = [] include Aws::Structure end # Information about an association between a branch network interface # with a trunk network interface. # # @!attribute [rw] association_id # The ID of the association. # @return [String] # # @!attribute [rw] branch_interface_id # The ID of the branch network interface. # @return [String] # # @!attribute [rw] trunk_interface_id # The ID of the trunk network interface. # @return [String] # # @!attribute [rw] interface_protocol # The interface protocol. Valid values are `VLAN` and `GRE`. # @return [String] # # @!attribute [rw] vlan_id # The ID of the VLAN when you use the VLAN protocol. # @return [Integer] # # @!attribute [rw] gre_key # The application key when you use the GRE protocol. # @return [Integer] # # @!attribute [rw] tags # The tags for the trunk interface association. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TrunkInterfaceAssociation AWS API Documentation # class TrunkInterfaceAssociation < Struct.new( :association_id, :branch_interface_id, :trunk_interface_id, :interface_protocol, :vlan_id, :gre_key, :tags) SENSITIVE = [] include Aws::Structure end # The VPN tunnel options. # # @!attribute [rw] outside_ip_address # The external IP address of the VPN tunnel. # @return [String] # # @!attribute [rw] tunnel_inside_cidr # The range of inside IPv4 addresses for the tunnel. # @return [String] # # @!attribute [rw] tunnel_inside_ipv_6_cidr # The range of inside IPv6 addresses for the tunnel. # @return [String] # # @!attribute [rw] pre_shared_key # The pre-shared key (PSK) to establish initial authentication between # the virtual private gateway and the customer gateway. # @return [String] # # @!attribute [rw] phase_1_lifetime_seconds # The lifetime for phase 1 of the IKE negotiation, in seconds. # @return [Integer] # # @!attribute [rw] phase_2_lifetime_seconds # The lifetime for phase 2 of the IKE negotiation, in seconds. # @return [Integer] # # @!attribute [rw] rekey_margin_time_seconds # 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. # @return [Integer] # # @!attribute [rw] rekey_fuzz_percentage # The percentage of the rekey window determined by # `RekeyMarginTimeSeconds` during which the rekey time is randomly # selected. # @return [Integer] # # @!attribute [rw] replay_window_size # The number of packets in an IKE replay window. # @return [Integer] # # @!attribute [rw] dpd_timeout_seconds # The number of seconds after which a DPD timeout occurs. # @return [Integer] # # @!attribute [rw] dpd_timeout_action # The action to take after a DPD timeout occurs. # @return [String] # # @!attribute [rw] phase_1_encryption_algorithms # The permitted encryption algorithms for the VPN tunnel for phase 1 # IKE negotiations. # @return [Array] # # @!attribute [rw] phase_2_encryption_algorithms # The permitted encryption algorithms for the VPN tunnel for phase 2 # IKE negotiations. # @return [Array] # # @!attribute [rw] phase_1_integrity_algorithms # The permitted integrity algorithms for the VPN tunnel for phase 1 # IKE negotiations. # @return [Array] # # @!attribute [rw] phase_2_integrity_algorithms # The permitted integrity algorithms for the VPN tunnel for phase 2 # IKE negotiations. # @return [Array] # # @!attribute [rw] phase_1_dh_group_numbers # The permitted Diffie-Hellman group numbers for the VPN tunnel for # phase 1 IKE negotiations. # @return [Array] # # @!attribute [rw] phase_2_dh_group_numbers # The permitted Diffie-Hellman group numbers for the VPN tunnel for # phase 2 IKE negotiations. # @return [Array] # # @!attribute [rw] ike_versions # The IKE versions that are permitted for the VPN tunnel. # @return [Array] # # @!attribute [rw] startup_action # The action to take when the establishing the VPN tunnels for a VPN # connection. # @return [String] # # @!attribute [rw] log_options # Options for logging VPN tunnel activity. # @return [Types::VpnTunnelLogOptions] # # @!attribute [rw] enable_tunnel_lifecycle_control # Status of tunnel endpoint lifecycle control feature. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/TunnelOption AWS API Documentation # class TunnelOption < Struct.new( :outside_ip_address, :tunnel_inside_cidr, :tunnel_inside_ipv_6_cidr, :pre_shared_key, :phase_1_lifetime_seconds, :phase_2_lifetime_seconds, :rekey_margin_time_seconds, :rekey_fuzz_percentage, :replay_window_size, :dpd_timeout_seconds, :dpd_timeout_action, :phase_1_encryption_algorithms, :phase_2_encryption_algorithms, :phase_1_integrity_algorithms, :phase_2_integrity_algorithms, :phase_1_dh_group_numbers, :phase_2_dh_group_numbers, :ike_versions, :startup_action, :log_options, :enable_tunnel_lifecycle_control) SENSITIVE = [:pre_shared_key] include Aws::Structure end # @!attribute [rw] ipv_6_addresses # The IPv6 addresses to unassign from the network interface. # @return [Array] # # @!attribute [rw] ipv_6_prefixes # The IPv6 prefixes to unassign from the network interface. # @return [Array] # # @!attribute [rw] network_interface_id # The ID of the network interface. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/UnassignIpv6AddressesRequest AWS API Documentation # class UnassignIpv6AddressesRequest < Struct.new( :ipv_6_addresses, :ipv_6_prefixes, :network_interface_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] network_interface_id # The ID of the network interface. # @return [String] # # @!attribute [rw] unassigned_ipv_6_addresses # The IPv6 addresses that have been unassigned from the network # interface. # @return [Array] # # @!attribute [rw] unassigned_ipv_6_prefixes # The IPv4 prefixes that have been unassigned from the network # interface. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/UnassignIpv6AddressesResult AWS API Documentation # class UnassignIpv6AddressesResult < Struct.new( :network_interface_id, :unassigned_ipv_6_addresses, :unassigned_ipv_6_prefixes) SENSITIVE = [] include Aws::Structure end # Contains the parameters for UnassignPrivateIpAddresses. # # @!attribute [rw] network_interface_id # The ID of the network interface. # @return [String] # # @!attribute [rw] private_ip_addresses # The secondary private IP addresses to unassign from the network # interface. You can specify this option multiple times to unassign # more than one IP address. # @return [Array] # # @!attribute [rw] ipv_4_prefixes # The IPv4 prefixes to unassign from the network interface. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/UnassignPrivateIpAddressesRequest AWS API Documentation # class UnassignPrivateIpAddressesRequest < Struct.new( :network_interface_id, :private_ip_addresses, :ipv_4_prefixes) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] nat_gateway_id # The ID of the NAT gateway. # @return [String] # # @!attribute [rw] private_ip_addresses # The private IPv4 addresses you want to unassign. # @return [Array] # # @!attribute [rw] max_drain_duration_seconds # The maximum amount of time to wait (in seconds) before forcibly # releasing the IP addresses if connections are still in progress. # Default value is 350 seconds. # @return [Integer] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/UnassignPrivateNatGatewayAddressRequest AWS API Documentation # class UnassignPrivateNatGatewayAddressRequest < Struct.new( :nat_gateway_id, :private_ip_addresses, :max_drain_duration_seconds, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] nat_gateway_id # The ID of the NAT gateway. # @return [String] # # @!attribute [rw] nat_gateway_addresses # Information about the NAT gateway IP addresses. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/UnassignPrivateNatGatewayAddressResult AWS API Documentation # class UnassignPrivateNatGatewayAddressResult < Struct.new( :nat_gateway_id, :nat_gateway_addresses) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] snapshot_id # The ID of the snapshot to unlock. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/UnlockSnapshotRequest AWS API Documentation # class UnlockSnapshotRequest < Struct.new( :snapshot_id, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] snapshot_id # The ID of the snapshot. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/UnlockSnapshotResult AWS API Documentation # class UnlockSnapshotResult < Struct.new( :snapshot_id) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] instance_ids # The IDs of the instances. # @return [Array] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/UnmonitorInstancesRequest AWS API Documentation # class UnmonitorInstancesRequest < Struct.new( :instance_ids, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] instance_monitorings # The monitoring information. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/UnmonitorInstancesResult AWS API Documentation # class UnmonitorInstancesResult < Struct.new( :instance_monitorings) SENSITIVE = [] include Aws::Structure end # Describes the burstable performance instance whose credit option for # CPU usage was not modified. # # @!attribute [rw] instance_id # The ID of the instance. # @return [String] # # @!attribute [rw] error # The applicable error for the burstable performance instance whose # credit option for CPU usage was not modified. # @return [Types::UnsuccessfulInstanceCreditSpecificationItemError] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/UnsuccessfulInstanceCreditSpecificationItem AWS API Documentation # class UnsuccessfulInstanceCreditSpecificationItem < Struct.new( :instance_id, :error) SENSITIVE = [] include Aws::Structure end # Information about the error for the burstable performance instance # whose credit option for CPU usage was not modified. # # @!attribute [rw] code # The error code. # @return [String] # # @!attribute [rw] message # The applicable error message. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/UnsuccessfulInstanceCreditSpecificationItemError AWS API Documentation # class UnsuccessfulInstanceCreditSpecificationItemError < Struct.new( :code, :message) SENSITIVE = [] include Aws::Structure end # Information about items that were not successfully processed in a # batch call. # # @!attribute [rw] error # Information about the error. # @return [Types::UnsuccessfulItemError] # # @!attribute [rw] resource_id # The ID of the resource. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/UnsuccessfulItem AWS API Documentation # class UnsuccessfulItem < Struct.new( :error, :resource_id) SENSITIVE = [] include Aws::Structure end # Information about the error that occurred. For more information about # errors, see [Error codes][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/errors-overview.html # # @!attribute [rw] code # The error code. # @return [String] # # @!attribute [rw] message # The error message accompanying the error code. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/UnsuccessfulItemError AWS API Documentation # class UnsuccessfulItemError < Struct.new( :code, :message) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] group_id # The ID of the security group. You must specify either the security # group ID or the security group name in the request. For security # groups in a nondefault VPC, you must specify the security group ID. # @return [String] # # @!attribute [rw] group_name # \[Default VPC\] The name of the security group. You must specify # either the security group ID or the security group name. # @return [String] # # @!attribute [rw] ip_permissions # The IP permissions for the security group rule. You must specify # either the IP permissions or the description. # @return [Array] # # @!attribute [rw] security_group_rule_descriptions # The description for the egress security group rules. You must # specify either the description or the IP permissions. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/UpdateSecurityGroupRuleDescriptionsEgressRequest AWS API Documentation # class UpdateSecurityGroupRuleDescriptionsEgressRequest < Struct.new( :dry_run, :group_id, :group_name, :ip_permissions, :security_group_rule_descriptions) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] return # Returns `true` if the request succeeds; otherwise, returns an error. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/UpdateSecurityGroupRuleDescriptionsEgressResult AWS API Documentation # class UpdateSecurityGroupRuleDescriptionsEgressResult < Struct.new( :return) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @!attribute [rw] group_id # The ID of the security group. You must specify either the security # group ID or the security group name in the request. For security # groups in a nondefault VPC, you must specify the security group ID. # @return [String] # # @!attribute [rw] group_name # \[Default VPC\] The name of the security group. You must specify # either the security group ID or the security group name. For # security groups in a nondefault VPC, you must specify the security # group ID. # @return [String] # # @!attribute [rw] ip_permissions # The IP permissions for the security group rule. You must specify # either IP permissions or a description. # @return [Array] # # @!attribute [rw] security_group_rule_descriptions # The description for the ingress security group rules. You must # specify either a description or IP permissions. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/UpdateSecurityGroupRuleDescriptionsIngressRequest AWS API Documentation # class UpdateSecurityGroupRuleDescriptionsIngressRequest < Struct.new( :dry_run, :group_id, :group_name, :ip_permissions, :security_group_rule_descriptions) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] return # Returns `true` if the request succeeds; otherwise, returns an error. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/UpdateSecurityGroupRuleDescriptionsIngressResult AWS API Documentation # class UpdateSecurityGroupRuleDescriptionsIngressResult < Struct.new( :return) SENSITIVE = [] include Aws::Structure end # Describes the Amazon S3 bucket for the disk image. # # @!attribute [rw] s3_bucket # The name of the Amazon S3 bucket where the disk image is located. # @return [String] # # @!attribute [rw] s3_key # The file name of the disk image. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/UserBucket AWS API Documentation # class UserBucket < Struct.new( :s3_bucket, :s3_key) SENSITIVE = [] include Aws::Structure end # Describes the Amazon S3 bucket for the disk image. # # @!attribute [rw] s3_bucket # The Amazon S3 bucket from which the disk image was created. # @return [String] # # @!attribute [rw] s3_key # The file name of the disk image. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/UserBucketDetails AWS API Documentation # class UserBucketDetails < Struct.new( :s3_bucket, :s3_key) SENSITIVE = [] include Aws::Structure end # Describes the user data for an instance. # # @!attribute [rw] data # 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. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/UserData AWS API Documentation # class UserData < Struct.new( :data) SENSITIVE = [] include Aws::Structure end # Describes a security group and Amazon Web Services account ID pair. # # @!attribute [rw] description # 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 .\_-:/()#,@\[\]+=;\\\{\\}!$* # @return [String] # # @!attribute [rw] group_id # The ID of the security group. # @return [String] # # @!attribute [rw] group_name # \[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. # @return [String] # # @!attribute [rw] peering_status # The status of a VPC peering connection, if applicable. # @return [String] # # @!attribute [rw] user_id # 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. # @return [String] # # @!attribute [rw] vpc_id # The ID of the VPC for the referenced security group, if applicable. # @return [String] # # @!attribute [rw] vpc_peering_connection_id # The ID of the VPC peering connection, if applicable. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/UserIdGroupPair AWS API Documentation # class UserIdGroupPair < Struct.new( :description, :group_id, :group_name, :peering_status, :user_id, :vpc_id, :vpc_peering_connection_id) SENSITIVE = [] include Aws::Structure end # The minimum and maximum number of vCPUs. # # @!attribute [rw] min # The minimum number of vCPUs. If the value is `0`, there is no # minimum limit. # @return [Integer] # # @!attribute [rw] max # The maximum number of vCPUs. If this parameter is not specified, # there is no maximum limit. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VCpuCountRange AWS API Documentation # class VCpuCountRange < Struct.new( :min, :max) SENSITIVE = [] include Aws::Structure end # The minimum and maximum number of vCPUs. # # @!attribute [rw] min # The minimum number of vCPUs. To specify no minimum limit, specify # `0`. # @return [Integer] # # @!attribute [rw] max # The maximum number of vCPUs. To specify no maximum limit, omit this # parameter. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VCpuCountRangeRequest AWS API Documentation # class VCpuCountRangeRequest < Struct.new( :min, :max) SENSITIVE = [] include Aws::Structure end # Describes the vCPU configurations for the instance type. # # @!attribute [rw] default_v_cpus # The default number of vCPUs for the instance type. # @return [Integer] # # @!attribute [rw] default_cores # The default number of cores for the instance type. # @return [Integer] # # @!attribute [rw] default_threads_per_core # The default number of threads per core for the instance type. # @return [Integer] # # @!attribute [rw] valid_cores # The valid number of cores that can be configured for the instance # type. # @return [Array] # # @!attribute [rw] valid_threads_per_core # The valid number of threads per core that can be configured for the # instance type. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VCpuInfo AWS API Documentation # class VCpuInfo < Struct.new( :default_v_cpus, :default_cores, :default_threads_per_core, :valid_cores, :valid_threads_per_core) SENSITIVE = [] include Aws::Structure end # 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. # # @!attribute [rw] code # The error code that indicates why the parameter or parameter # combination is not valid. For more information about error codes, # see [Error codes][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/errors-overview.html # @return [String] # # @!attribute [rw] message # The error message that describes why the parameter or parameter # combination is not valid. For more information about error messages, # see [Error codes][1]. # # # # [1]: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/errors-overview.html # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ValidationError AWS API Documentation # class ValidationError < Struct.new( :code, :message) SENSITIVE = [] include Aws::Structure end # 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. # # @!attribute [rw] errors # The error codes and error messages. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/ValidationWarning AWS API Documentation # class ValidationWarning < Struct.new( :errors) SENSITIVE = [] include Aws::Structure end # 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. # # @!attribute [rw] verified_access_instance_id # The ID of the Amazon Web Services Verified Access instance. # @return [String] # # @!attribute [rw] verified_access_group_id # The ID of the Amazon Web Services Verified Access group. # @return [String] # # @!attribute [rw] verified_access_endpoint_id # The ID of the Amazon Web Services Verified Access endpoint. # @return [String] # # @!attribute [rw] application_domain # The DNS name for users to reach your application. # @return [String] # # @!attribute [rw] endpoint_type # 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. # @return [String] # # @!attribute [rw] attachment_type # The type of attachment used to provide connectivity between the # Amazon Web Services Verified Access endpoint and the application. # @return [String] # # @!attribute [rw] domain_certificate_arn # The ARN of a public TLS/SSL certificate imported into or created # with ACM. # @return [String] # # @!attribute [rw] endpoint_domain # A DNS name that is generated for the endpoint. # @return [String] # # @!attribute [rw] device_validation_domain # Returned if endpoint has a device trust provider attached. # @return [String] # # @!attribute [rw] security_group_ids # The IDs of the security groups for the endpoint. # @return [Array] # # @!attribute [rw] load_balancer_options # The load balancer details if creating the Amazon Web Services # Verified Access endpoint as `load-balancer`type. # @return [Types::VerifiedAccessEndpointLoadBalancerOptions] # # @!attribute [rw] network_interface_options # The options for network-interface type endpoint. # @return [Types::VerifiedAccessEndpointEniOptions] # # @!attribute [rw] status # The endpoint status. # @return [Types::VerifiedAccessEndpointStatus] # # @!attribute [rw] description # A description for the Amazon Web Services Verified Access endpoint. # @return [String] # # @!attribute [rw] creation_time # The creation time. # @return [String] # # @!attribute [rw] last_updated_time # The last updated time. # @return [String] # # @!attribute [rw] deletion_time # The deletion time. # @return [String] # # @!attribute [rw] tags # The tags. # @return [Array] # # @!attribute [rw] sse_specification # The options in use for server side encryption. # @return [Types::VerifiedAccessSseSpecificationResponse] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VerifiedAccessEndpoint AWS API Documentation # class VerifiedAccessEndpoint < Struct.new( :verified_access_instance_id, :verified_access_group_id, :verified_access_endpoint_id, :application_domain, :endpoint_type, :attachment_type, :domain_certificate_arn, :endpoint_domain, :device_validation_domain, :security_group_ids, :load_balancer_options, :network_interface_options, :status, :description, :creation_time, :last_updated_time, :deletion_time, :tags, :sse_specification) SENSITIVE = [] include Aws::Structure end # Options for a network-interface type endpoint. # # @!attribute [rw] network_interface_id # The ID of the network interface. # @return [String] # # @!attribute [rw] protocol # The IP protocol. # @return [String] # # @!attribute [rw] port # The IP port number. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VerifiedAccessEndpointEniOptions AWS API Documentation # class VerifiedAccessEndpointEniOptions < Struct.new( :network_interface_id, :protocol, :port) SENSITIVE = [] include Aws::Structure end # Describes a load balancer when creating an Amazon Web Services # Verified Access endpoint using the `load-balancer` type. # # @!attribute [rw] protocol # The IP protocol. # @return [String] # # @!attribute [rw] port # The IP port number. # @return [Integer] # # @!attribute [rw] load_balancer_arn # The ARN of the load balancer. # @return [String] # # @!attribute [rw] subnet_ids # The IDs of the subnets. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VerifiedAccessEndpointLoadBalancerOptions AWS API Documentation # class VerifiedAccessEndpointLoadBalancerOptions < Struct.new( :protocol, :port, :load_balancer_arn, :subnet_ids) SENSITIVE = [] include Aws::Structure end # Describes the status of a Verified Access endpoint. # # @!attribute [rw] code # The status code of the Verified Access endpoint. # @return [String] # # @!attribute [rw] message # The status message of the Verified Access endpoint. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VerifiedAccessEndpointStatus AWS API Documentation # class VerifiedAccessEndpointStatus < Struct.new( :code, :message) SENSITIVE = [] include Aws::Structure end # Describes a Verified Access group. # # @!attribute [rw] verified_access_group_id # The ID of the Verified Access group. # @return [String] # # @!attribute [rw] verified_access_instance_id # The ID of the Amazon Web Services Verified Access instance. # @return [String] # # @!attribute [rw] description # A description for the Amazon Web Services Verified Access group. # @return [String] # # @!attribute [rw] owner # The Amazon Web Services account number that owns the group. # @return [String] # # @!attribute [rw] verified_access_group_arn # The ARN of the Verified Access group. # @return [String] # # @!attribute [rw] creation_time # The creation time. # @return [String] # # @!attribute [rw] last_updated_time # The last updated time. # @return [String] # # @!attribute [rw] deletion_time # The deletion time. # @return [String] # # @!attribute [rw] tags # The tags. # @return [Array] # # @!attribute [rw] sse_specification # The options in use for server side encryption. # @return [Types::VerifiedAccessSseSpecificationResponse] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VerifiedAccessGroup AWS API Documentation # class VerifiedAccessGroup < Struct.new( :verified_access_group_id, :verified_access_instance_id, :description, :owner, :verified_access_group_arn, :creation_time, :last_updated_time, :deletion_time, :tags, :sse_specification) SENSITIVE = [] include Aws::Structure end # Describes a Verified Access instance. # # @!attribute [rw] verified_access_instance_id # The ID of the Amazon Web Services Verified Access instance. # @return [String] # # @!attribute [rw] description # A description for the Amazon Web Services Verified Access instance. # @return [String] # # @!attribute [rw] verified_access_trust_providers # The IDs of the Amazon Web Services Verified Access trust providers. # @return [Array] # # @!attribute [rw] creation_time # The creation time. # @return [String] # # @!attribute [rw] last_updated_time # The last updated time. # @return [String] # # @!attribute [rw] tags # The tags. # @return [Array] # # @!attribute [rw] fips_enabled # Indicates whether support for Federal Information Processing # Standards (FIPS) is enabled on the instance. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VerifiedAccessInstance AWS API Documentation # class VerifiedAccessInstance < Struct.new( :verified_access_instance_id, :description, :verified_access_trust_providers, :creation_time, :last_updated_time, :tags, :fips_enabled) SENSITIVE = [] include Aws::Structure end # Describes logging options for an Amazon Web Services Verified Access # instance. # # @!attribute [rw] verified_access_instance_id # The ID of the Amazon Web Services Verified Access instance. # @return [String] # # @!attribute [rw] access_logs # Details about the logging options. # @return [Types::VerifiedAccessLogs] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VerifiedAccessInstanceLoggingConfiguration AWS API Documentation # class VerifiedAccessInstanceLoggingConfiguration < Struct.new( :verified_access_instance_id, :access_logs) SENSITIVE = [] include Aws::Structure end # Options for CloudWatch Logs as a logging destination. # # @!attribute [rw] enabled # Indicates whether logging is enabled. # @return [Boolean] # # @!attribute [rw] delivery_status # The delivery status for access logs. # @return [Types::VerifiedAccessLogDeliveryStatus] # # @!attribute [rw] log_group # The ID of the CloudWatch Logs log group. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VerifiedAccessLogCloudWatchLogsDestination AWS API Documentation # class VerifiedAccessLogCloudWatchLogsDestination < Struct.new( :enabled, :delivery_status, :log_group) SENSITIVE = [] include Aws::Structure end # Options for CloudWatch Logs as a logging destination. # # @!attribute [rw] enabled # Indicates whether logging is enabled. # @return [Boolean] # # @!attribute [rw] log_group # The ID of the CloudWatch Logs log group. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VerifiedAccessLogCloudWatchLogsDestinationOptions AWS API Documentation # class VerifiedAccessLogCloudWatchLogsDestinationOptions < Struct.new( :enabled, :log_group) SENSITIVE = [] include Aws::Structure end # Describes a log delivery status. # # @!attribute [rw] code # The status code. # @return [String] # # @!attribute [rw] message # The status message. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VerifiedAccessLogDeliveryStatus AWS API Documentation # class VerifiedAccessLogDeliveryStatus < Struct.new( :code, :message) SENSITIVE = [] include Aws::Structure end # Options for Kinesis as a logging destination. # # @!attribute [rw] enabled # Indicates whether logging is enabled. # @return [Boolean] # # @!attribute [rw] delivery_status # The delivery status. # @return [Types::VerifiedAccessLogDeliveryStatus] # # @!attribute [rw] delivery_stream # The ID of the delivery stream. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VerifiedAccessLogKinesisDataFirehoseDestination AWS API Documentation # class VerifiedAccessLogKinesisDataFirehoseDestination < Struct.new( :enabled, :delivery_status, :delivery_stream) SENSITIVE = [] include Aws::Structure end # Describes Amazon Kinesis Data Firehose logging options. # # @!attribute [rw] enabled # Indicates whether logging is enabled. # @return [Boolean] # # @!attribute [rw] delivery_stream # The ID of the delivery stream. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VerifiedAccessLogKinesisDataFirehoseDestinationOptions AWS API Documentation # class VerifiedAccessLogKinesisDataFirehoseDestinationOptions < Struct.new( :enabled, :delivery_stream) SENSITIVE = [] include Aws::Structure end # Options for Verified Access logs. # # @!attribute [rw] s3 # Sends Verified Access logs to Amazon S3. # @return [Types::VerifiedAccessLogS3DestinationOptions] # # @!attribute [rw] cloud_watch_logs # Sends Verified Access logs to CloudWatch Logs. # @return [Types::VerifiedAccessLogCloudWatchLogsDestinationOptions] # # @!attribute [rw] kinesis_data_firehose # Sends Verified Access logs to Kinesis. # @return [Types::VerifiedAccessLogKinesisDataFirehoseDestinationOptions] # # @!attribute [rw] log_version # The logging version. # # Valid values: `ocsf-0.1` \| `ocsf-1.0.0-rc.2` # @return [String] # # @!attribute [rw] include_trust_context # Indicates whether to include trust data sent by trust providers in # the logs. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VerifiedAccessLogOptions AWS API Documentation # class VerifiedAccessLogOptions < Struct.new( :s3, :cloud_watch_logs, :kinesis_data_firehose, :log_version, :include_trust_context) SENSITIVE = [] include Aws::Structure end # Options for Amazon S3 as a logging destination. # # @!attribute [rw] enabled # Indicates whether logging is enabled. # @return [Boolean] # # @!attribute [rw] delivery_status # The delivery status. # @return [Types::VerifiedAccessLogDeliveryStatus] # # @!attribute [rw] bucket_name # The bucket name. # @return [String] # # @!attribute [rw] prefix # The bucket prefix. # @return [String] # # @!attribute [rw] bucket_owner # The Amazon Web Services account number that owns the bucket. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VerifiedAccessLogS3Destination AWS API Documentation # class VerifiedAccessLogS3Destination < Struct.new( :enabled, :delivery_status, :bucket_name, :prefix, :bucket_owner) SENSITIVE = [] include Aws::Structure end # Options for Amazon S3 as a logging destination. # # @!attribute [rw] enabled # Indicates whether logging is enabled. # @return [Boolean] # # @!attribute [rw] bucket_name # The bucket name. # @return [String] # # @!attribute [rw] prefix # The bucket prefix. # @return [String] # # @!attribute [rw] bucket_owner # The ID of the Amazon Web Services account that owns the Amazon S3 # bucket. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VerifiedAccessLogS3DestinationOptions AWS API Documentation # class VerifiedAccessLogS3DestinationOptions < Struct.new( :enabled, :bucket_name, :prefix, :bucket_owner) SENSITIVE = [] include Aws::Structure end # Describes the options for Verified Access logs. # # @!attribute [rw] s3 # Amazon S3 logging options. # @return [Types::VerifiedAccessLogS3Destination] # # @!attribute [rw] cloud_watch_logs # CloudWatch Logs logging destination. # @return [Types::VerifiedAccessLogCloudWatchLogsDestination] # # @!attribute [rw] kinesis_data_firehose # Kinesis logging destination. # @return [Types::VerifiedAccessLogKinesisDataFirehoseDestination] # # @!attribute [rw] log_version # The log version. # @return [String] # # @!attribute [rw] include_trust_context # Indicates whether trust data is included in the logs. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VerifiedAccessLogs AWS API Documentation # class VerifiedAccessLogs < Struct.new( :s3, :cloud_watch_logs, :kinesis_data_firehose, :log_version, :include_trust_context) SENSITIVE = [] include Aws::Structure end # 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. # # @!attribute [rw] customer_managed_key_enabled # Enable or disable the use of customer managed KMS keys for server # side encryption. # # Valid values: `True` \| `False` # @return [Boolean] # # @!attribute [rw] kms_key_arn # The ARN of the KMS key. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VerifiedAccessSseSpecificationRequest AWS API Documentation # class VerifiedAccessSseSpecificationRequest < Struct.new( :customer_managed_key_enabled, :kms_key_arn) SENSITIVE = [] include Aws::Structure end # The options in use for server side encryption. # # @!attribute [rw] customer_managed_key_enabled # Indicates whether customer managed KMS keys are in use for server # side encryption. # # Valid values: `True` \| `False` # @return [Boolean] # # @!attribute [rw] kms_key_arn # The ARN of the KMS key. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VerifiedAccessSseSpecificationResponse AWS API Documentation # class VerifiedAccessSseSpecificationResponse < Struct.new( :customer_managed_key_enabled, :kms_key_arn) SENSITIVE = [] include Aws::Structure end # Describes a Verified Access trust provider. # # @!attribute [rw] verified_access_trust_provider_id # The ID of the Amazon Web Services Verified Access trust provider. # @return [String] # # @!attribute [rw] description # A description for the Amazon Web Services Verified Access trust # provider. # @return [String] # # @!attribute [rw] trust_provider_type # The type of Verified Access trust provider. # @return [String] # # @!attribute [rw] user_trust_provider_type # The type of user-based trust provider. # @return [String] # # @!attribute [rw] device_trust_provider_type # The type of device-based trust provider. # @return [String] # # @!attribute [rw] oidc_options # The options for an OpenID Connect-compatible user-identity trust # provider. # @return [Types::OidcOptions] # # @!attribute [rw] device_options # The options for device-identity trust provider. # @return [Types::DeviceOptions] # # @!attribute [rw] policy_reference_name # The identifier to be used when working with policy rules. # @return [String] # # @!attribute [rw] creation_time # The creation time. # @return [String] # # @!attribute [rw] last_updated_time # The last updated time. # @return [String] # # @!attribute [rw] tags # The tags. # @return [Array] # # @!attribute [rw] sse_specification # The options in use for server side encryption. # @return [Types::VerifiedAccessSseSpecificationResponse] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VerifiedAccessTrustProvider AWS API Documentation # class VerifiedAccessTrustProvider < Struct.new( :verified_access_trust_provider_id, :description, :trust_provider_type, :user_trust_provider_type, :device_trust_provider_type, :oidc_options, :device_options, :policy_reference_name, :creation_time, :last_updated_time, :tags, :sse_specification) SENSITIVE = [] include Aws::Structure end # Condensed information about a trust provider. # # @!attribute [rw] verified_access_trust_provider_id # The ID of the trust provider. # @return [String] # # @!attribute [rw] description # The description of trust provider. # @return [String] # # @!attribute [rw] trust_provider_type # The type of trust provider (user- or device-based). # @return [String] # # @!attribute [rw] user_trust_provider_type # The type of user-based trust provider. # @return [String] # # @!attribute [rw] device_trust_provider_type # The type of device-based trust provider. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VerifiedAccessTrustProviderCondensed AWS API Documentation # class VerifiedAccessTrustProviderCondensed < Struct.new( :verified_access_trust_provider_id, :description, :trust_provider_type, :user_trust_provider_type, :device_trust_provider_type) SENSITIVE = [] include Aws::Structure end # Describes telemetry for a VPN tunnel. # # @!attribute [rw] accepted_route_count # The number of accepted routes. # @return [Integer] # # @!attribute [rw] last_status_change # 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. # @return [Time] # # @!attribute [rw] outside_ip_address # The Internet-routable IP address of the virtual private gateway's # outside interface. # @return [String] # # @!attribute [rw] status # The status of the VPN tunnel. # @return [String] # # @!attribute [rw] status_message # If an error occurs, a description of the error. # @return [String] # # @!attribute [rw] certificate_arn # The Amazon Resource Name (ARN) of the VPN tunnel endpoint # certificate. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VgwTelemetry AWS API Documentation # class VgwTelemetry < Struct.new( :accepted_route_count, :last_status_change, :outside_ip_address, :status, :status_message, :certificate_arn) SENSITIVE = [] include Aws::Structure end # Describes a volume. # # @!attribute [rw] attachments # Information about the volume attachments. # @return [Array] # # @!attribute [rw] availability_zone # The Availability Zone for the volume. # @return [String] # # @!attribute [rw] create_time # The time stamp when volume creation was initiated. # @return [Time] # # @!attribute [rw] encrypted # Indicates whether the volume is encrypted. # @return [Boolean] # # @!attribute [rw] kms_key_id # The Amazon Resource Name (ARN) of the Key Management Service (KMS) # KMS key that was used to protect the volume encryption key for the # volume. # @return [String] # # @!attribute [rw] outpost_arn # The Amazon Resource Name (ARN) of the Outpost. # @return [String] # # @!attribute [rw] size # The size of the volume, in GiBs. # @return [Integer] # # @!attribute [rw] snapshot_id # The snapshot from which the volume was created, if applicable. # @return [String] # # @!attribute [rw] state # The volume state. # @return [String] # # @!attribute [rw] volume_id # The ID of the volume. # @return [String] # # @!attribute [rw] iops # 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. # @return [Integer] # # @!attribute [rw] tags # Any tags assigned to the volume. # @return [Array] # # @!attribute [rw] volume_type # The volume type. # @return [String] # # @!attribute [rw] fast_restored # Indicates whether the volume was created using fast snapshot # restore. # @return [Boolean] # # @!attribute [rw] multi_attach_enabled # Indicates whether Amazon EBS Multi-Attach is enabled. # @return [Boolean] # # @!attribute [rw] throughput # The throughput that the volume supports, in MiB/s. # @return [Integer] # # @!attribute [rw] sse_type # Reserved for future use. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Volume AWS API Documentation # class Volume < Struct.new( :attachments, :availability_zone, :create_time, :encrypted, :kms_key_id, :outpost_arn, :size, :snapshot_id, :state, :volume_id, :iops, :tags, :volume_type, :fast_restored, :multi_attach_enabled, :throughput, :sse_type) SENSITIVE = [] include Aws::Structure end # Describes volume attachment details. # # @!attribute [rw] attach_time # The time stamp when the attachment initiated. # @return [Time] # # @!attribute [rw] device # The device name. # # If the volume is attached to a Fargate task, this parameter returns # `null`. # @return [String] # # @!attribute [rw] instance_id # The ID of the instance. # # If the volume is attached to a Fargate task, this parameter returns # `null`. # @return [String] # # @!attribute [rw] state # The attachment state of the volume. # @return [String] # # @!attribute [rw] volume_id # The ID of the volume. # @return [String] # # @!attribute [rw] delete_on_termination # Indicates whether the EBS volume is deleted on instance termination. # @return [Boolean] # # @!attribute [rw] associated_resource # The ARN of the Amazon ECS or Fargate task to which the volume is # attached. # @return [String] # # @!attribute [rw] instance_owning_service # 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. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VolumeAttachment AWS API Documentation # class VolumeAttachment < Struct.new( :attach_time, :device, :instance_id, :state, :volume_id, :delete_on_termination, :associated_resource, :instance_owning_service) SENSITIVE = [] include Aws::Structure end # Describes an EBS volume. # # @!attribute [rw] size # The size of the volume, in GiB. # @return [Integer] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VolumeDetail AWS API Documentation # class VolumeDetail < Struct.new( :size) SENSITIVE = [] include Aws::Structure end # Describes the modification status of an EBS volume. # # If the volume has never been modified, some element values will be # null. # # @!attribute [rw] volume_id # The ID of the volume. # @return [String] # # @!attribute [rw] modification_state # The current modification state. The modification state is null for # unmodified volumes. # @return [String] # # @!attribute [rw] status_message # A status message about the modification progress or failure. # @return [String] # # @!attribute [rw] target_size # The target size of the volume, in GiB. # @return [Integer] # # @!attribute [rw] target_iops # The target IOPS rate of the volume. # @return [Integer] # # @!attribute [rw] target_volume_type # The target EBS volume type of the volume. # @return [String] # # @!attribute [rw] target_throughput # The target throughput of the volume, in MiB/s. # @return [Integer] # # @!attribute [rw] target_multi_attach_enabled # The target setting for Amazon EBS Multi-Attach. # @return [Boolean] # # @!attribute [rw] original_size # The original size of the volume, in GiB. # @return [Integer] # # @!attribute [rw] original_iops # The original IOPS rate of the volume. # @return [Integer] # # @!attribute [rw] original_volume_type # The original EBS volume type of the volume. # @return [String] # # @!attribute [rw] original_throughput # The original throughput of the volume, in MiB/s. # @return [Integer] # # @!attribute [rw] original_multi_attach_enabled # The original setting for Amazon EBS Multi-Attach. # @return [Boolean] # # @!attribute [rw] progress # The modification progress, from 0 to 100 percent complete. # @return [Integer] # # @!attribute [rw] start_time # The modification start time. # @return [Time] # # @!attribute [rw] end_time # The modification completion or failure time. # @return [Time] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VolumeModification AWS API Documentation # class VolumeModification < Struct.new( :volume_id, :modification_state, :status_message, :target_size, :target_iops, :target_volume_type, :target_throughput, :target_multi_attach_enabled, :original_size, :original_iops, :original_volume_type, :original_throughput, :original_multi_attach_enabled, :progress, :start_time, :end_time) SENSITIVE = [] include Aws::Structure end # Describes a volume status operation code. # # @!attribute [rw] code # The code identifying the operation, for example, `enable-volume-io`. # @return [String] # # @!attribute [rw] description # A description of the operation. # @return [String] # # @!attribute [rw] event_id # The ID of the event associated with this operation. # @return [String] # # @!attribute [rw] event_type # The event type associated with this operation. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VolumeStatusAction AWS API Documentation # class VolumeStatusAction < Struct.new( :code, :description, :event_id, :event_type) SENSITIVE = [] include Aws::Structure end # Information about the instances to which the volume is attached. # # @!attribute [rw] io_performance # The maximum IOPS supported by the attached instance. # @return [String] # # @!attribute [rw] instance_id # The ID of the attached instance. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VolumeStatusAttachmentStatus AWS API Documentation # class VolumeStatusAttachmentStatus < Struct.new( :io_performance, :instance_id) SENSITIVE = [] include Aws::Structure end # Describes a volume status. # # @!attribute [rw] name # The name of the volume status. # @return [String] # # @!attribute [rw] status # The intended status of the volume status. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VolumeStatusDetails AWS API Documentation # class VolumeStatusDetails < Struct.new( :name, :status) SENSITIVE = [] include Aws::Structure end # Describes a volume status event. # # @!attribute [rw] description # A description of the event. # @return [String] # # @!attribute [rw] event_id # The ID of this event. # @return [String] # # @!attribute [rw] event_type # The type of this event. # @return [String] # # @!attribute [rw] not_after # The latest end time of the event. # @return [Time] # # @!attribute [rw] not_before # The earliest start time of the event. # @return [Time] # # @!attribute [rw] instance_id # The ID of the instance associated with the event. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VolumeStatusEvent AWS API Documentation # class VolumeStatusEvent < Struct.new( :description, :event_id, :event_type, :not_after, :not_before, :instance_id) SENSITIVE = [] include Aws::Structure end # Describes the status of a volume. # # @!attribute [rw] details # The details of the volume status. # @return [Array] # # @!attribute [rw] status # The status of the volume. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VolumeStatusInfo AWS API Documentation # class VolumeStatusInfo < Struct.new( :details, :status) SENSITIVE = [] include Aws::Structure end # Describes the volume status. # # @!attribute [rw] actions # The details of the operation. # @return [Array] # # @!attribute [rw] availability_zone # The Availability Zone of the volume. # @return [String] # # @!attribute [rw] outpost_arn # The Amazon Resource Name (ARN) of the Outpost. # @return [String] # # @!attribute [rw] events # A list of events associated with the volume. # @return [Array] # # @!attribute [rw] volume_id # The volume ID. # @return [String] # # @!attribute [rw] volume_status # The volume status. # @return [Types::VolumeStatusInfo] # # @!attribute [rw] attachment_statuses # Information about the instances to which the volume is attached. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VolumeStatusItem AWS API Documentation # class VolumeStatusItem < Struct.new( :actions, :availability_zone, :outpost_arn, :events, :volume_id, :volume_status, :attachment_statuses) SENSITIVE = [] include Aws::Structure end # Describes a VPC. # # @!attribute [rw] cidr_block # The primary IPv4 CIDR block for the VPC. # @return [String] # # @!attribute [rw] dhcp_options_id # The ID of the set of DHCP options you've associated with the VPC. # @return [String] # # @!attribute [rw] state # The current state of the VPC. # @return [String] # # @!attribute [rw] vpc_id # The ID of the VPC. # @return [String] # # @!attribute [rw] owner_id # The ID of the Amazon Web Services account that owns the VPC. # @return [String] # # @!attribute [rw] instance_tenancy # The allowed tenancy of instances launched into the VPC. # @return [String] # # @!attribute [rw] ipv_6_cidr_block_association_set # Information about the IPv6 CIDR blocks associated with the VPC. # @return [Array] # # @!attribute [rw] cidr_block_association_set # Information about the IPv4 CIDR blocks associated with the VPC. # @return [Array] # # @!attribute [rw] is_default # Indicates whether the VPC is the default VPC. # @return [Boolean] # # @!attribute [rw] tags # Any tags assigned to the VPC. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/Vpc AWS API Documentation # class Vpc < Struct.new( :cidr_block, :dhcp_options_id, :state, :vpc_id, :owner_id, :instance_tenancy, :ipv_6_cidr_block_association_set, :cidr_block_association_set, :is_default, :tags) SENSITIVE = [] include Aws::Structure end # Describes an attachment between a virtual private gateway and a VPC. # # @!attribute [rw] state # The current state of the attachment. # @return [String] # # @!attribute [rw] vpc_id # The ID of the VPC. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VpcAttachment AWS API Documentation # class VpcAttachment < Struct.new( :state, :vpc_id) SENSITIVE = [] include Aws::Structure end # Describes an IPv4 CIDR block associated with a VPC. # # @!attribute [rw] association_id # The association ID for the IPv4 CIDR block. # @return [String] # # @!attribute [rw] cidr_block # The IPv4 CIDR block. # @return [String] # # @!attribute [rw] cidr_block_state # Information about the state of the CIDR block. # @return [Types::VpcCidrBlockState] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VpcCidrBlockAssociation AWS API Documentation # class VpcCidrBlockAssociation < Struct.new( :association_id, :cidr_block, :cidr_block_state) SENSITIVE = [] include Aws::Structure end # Describes the state of a CIDR block. # # @!attribute [rw] state # The state of the CIDR block. # @return [String] # # @!attribute [rw] status_message # A message about the status of the CIDR block, if applicable. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VpcCidrBlockState AWS API Documentation # class VpcCidrBlockState < Struct.new( :state, :status_message) SENSITIVE = [] include Aws::Structure end # Deprecated. # # # # Describes whether a VPC is enabled for ClassicLink. # # @!attribute [rw] classic_link_enabled # Indicates whether the VPC is enabled for ClassicLink. # @return [Boolean] # # @!attribute [rw] tags # Any tags assigned to the VPC. # @return [Array] # # @!attribute [rw] vpc_id # The ID of the VPC. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VpcClassicLink AWS API Documentation # class VpcClassicLink < Struct.new( :classic_link_enabled, :tags, :vpc_id) SENSITIVE = [] include Aws::Structure end # Describes a VPC endpoint. # # @!attribute [rw] vpc_endpoint_id # The ID of the endpoint. # @return [String] # # @!attribute [rw] vpc_endpoint_type # The type of endpoint. # @return [String] # # @!attribute [rw] vpc_id # The ID of the VPC to which the endpoint is associated. # @return [String] # # @!attribute [rw] service_name # The name of the service to which the endpoint is associated. # @return [String] # # @!attribute [rw] state # The state of the endpoint. # @return [String] # # @!attribute [rw] policy_document # The policy document associated with the endpoint, if applicable. # @return [String] # # @!attribute [rw] route_table_ids # (Gateway endpoint) The IDs of the route tables associated with the # endpoint. # @return [Array] # # @!attribute [rw] subnet_ids # (Interface endpoint) The subnets for the endpoint. # @return [Array] # # @!attribute [rw] groups # (Interface endpoint) Information about the security groups that are # associated with the network interface. # @return [Array] # # @!attribute [rw] ip_address_type # The IP address type for the endpoint. # @return [String] # # @!attribute [rw] dns_options # The DNS options for the endpoint. # @return [Types::DnsOptions] # # @!attribute [rw] private_dns_enabled # (Interface endpoint) Indicates whether the VPC is associated with a # private hosted zone. # @return [Boolean] # # @!attribute [rw] requester_managed # Indicates whether the endpoint is being managed by its service. # @return [Boolean] # # @!attribute [rw] network_interface_ids # (Interface endpoint) The network interfaces for the endpoint. # @return [Array] # # @!attribute [rw] dns_entries # (Interface endpoint) The DNS entries for the endpoint. # @return [Array] # # @!attribute [rw] creation_timestamp # The date and time that the endpoint was created. # @return [Time] # # @!attribute [rw] tags # The tags assigned to the endpoint. # @return [Array] # # @!attribute [rw] owner_id # The ID of the Amazon Web Services account that owns the endpoint. # @return [String] # # @!attribute [rw] last_error # The last error that occurred for endpoint. # @return [Types::LastError] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VpcEndpoint AWS API Documentation # class VpcEndpoint < Struct.new( :vpc_endpoint_id, :vpc_endpoint_type, :vpc_id, :service_name, :state, :policy_document, :route_table_ids, :subnet_ids, :groups, :ip_address_type, :dns_options, :private_dns_enabled, :requester_managed, :network_interface_ids, :dns_entries, :creation_timestamp, :tags, :owner_id, :last_error) SENSITIVE = [] include Aws::Structure end # Describes a VPC endpoint connection to a service. # # @!attribute [rw] service_id # The ID of the service to which the endpoint is connected. # @return [String] # # @!attribute [rw] vpc_endpoint_id # The ID of the VPC endpoint. # @return [String] # # @!attribute [rw] vpc_endpoint_owner # The ID of the Amazon Web Services account that owns the VPC # endpoint. # @return [String] # # @!attribute [rw] vpc_endpoint_state # The state of the VPC endpoint. # @return [String] # # @!attribute [rw] creation_timestamp # The date and time that the VPC endpoint was created. # @return [Time] # # @!attribute [rw] dns_entries # The DNS entries for the VPC endpoint. # @return [Array] # # @!attribute [rw] network_load_balancer_arns # The Amazon Resource Names (ARNs) of the network load balancers for # the service. # @return [Array] # # @!attribute [rw] gateway_load_balancer_arns # The Amazon Resource Names (ARNs) of the Gateway Load Balancers for # the service. # @return [Array] # # @!attribute [rw] ip_address_type # The IP address type for the endpoint. # @return [String] # # @!attribute [rw] vpc_endpoint_connection_id # The ID of the VPC endpoint connection. # @return [String] # # @!attribute [rw] tags # The tags. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VpcEndpointConnection AWS API Documentation # class VpcEndpointConnection < Struct.new( :service_id, :vpc_endpoint_id, :vpc_endpoint_owner, :vpc_endpoint_state, :creation_timestamp, :dns_entries, :network_load_balancer_arns, :gateway_load_balancer_arns, :ip_address_type, :vpc_endpoint_connection_id, :tags) SENSITIVE = [] include Aws::Structure end # Describes an IPv6 CIDR block associated with a VPC. # # @!attribute [rw] association_id # The association ID for the IPv6 CIDR block. # @return [String] # # @!attribute [rw] ipv_6_cidr_block # The IPv6 CIDR block. # @return [String] # # @!attribute [rw] ipv_6_cidr_block_state # Information about the state of the CIDR block. # @return [Types::VpcCidrBlockState] # # @!attribute [rw] network_border_group # 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`. # @return [String] # # @!attribute [rw] ipv_6_pool # The ID of the IPv6 address pool from which the IPv6 CIDR block is # allocated. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VpcIpv6CidrBlockAssociation AWS API Documentation # class VpcIpv6CidrBlockAssociation < Struct.new( :association_id, :ipv_6_cidr_block, :ipv_6_cidr_block_state, :network_border_group, :ipv_6_pool) SENSITIVE = [] include Aws::Structure end # Describes a VPC peering connection. # # @!attribute [rw] accepter_vpc_info # Information about the accepter VPC. CIDR block information is only # returned when describing an active VPC peering connection. # @return [Types::VpcPeeringConnectionVpcInfo] # # @!attribute [rw] expiration_time # The time that an unaccepted VPC peering connection will expire. # @return [Time] # # @!attribute [rw] requester_vpc_info # Information about the requester VPC. CIDR block information is only # returned when describing an active VPC peering connection. # @return [Types::VpcPeeringConnectionVpcInfo] # # @!attribute [rw] status # The status of the VPC peering connection. # @return [Types::VpcPeeringConnectionStateReason] # # @!attribute [rw] tags # Any tags assigned to the resource. # @return [Array] # # @!attribute [rw] vpc_peering_connection_id # The ID of the VPC peering connection. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VpcPeeringConnection AWS API Documentation # class VpcPeeringConnection < Struct.new( :accepter_vpc_info, :expiration_time, :requester_vpc_info, :status, :tags, :vpc_peering_connection_id) SENSITIVE = [] include Aws::Structure end # Describes the VPC peering connection options. # # @!attribute [rw] allow_dns_resolution_from_remote_vpc # Indicates whether a local VPC can resolve public DNS hostnames to # private IP addresses when queried from instances in a peer VPC. # @return [Boolean] # # @!attribute [rw] allow_egress_from_local_classic_link_to_remote_vpc # Deprecated. # @return [Boolean] # # @!attribute [rw] allow_egress_from_local_vpc_to_remote_classic_link # Deprecated. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VpcPeeringConnectionOptionsDescription AWS API Documentation # class VpcPeeringConnectionOptionsDescription < Struct.new( :allow_dns_resolution_from_remote_vpc, :allow_egress_from_local_classic_link_to_remote_vpc, :allow_egress_from_local_vpc_to_remote_classic_link) SENSITIVE = [] include Aws::Structure end # Describes the status of a VPC peering connection. # # @!attribute [rw] code # The status of the VPC peering connection. # @return [String] # # @!attribute [rw] message # A message that provides more information about the status, if # applicable. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VpcPeeringConnectionStateReason AWS API Documentation # class VpcPeeringConnectionStateReason < Struct.new( :code, :message) SENSITIVE = [] include Aws::Structure end # Describes a VPC in a VPC peering connection. # # @!attribute [rw] cidr_block # The IPv4 CIDR block for the VPC. # @return [String] # # @!attribute [rw] ipv_6_cidr_block_set # The IPv6 CIDR block for the VPC. # @return [Array] # # @!attribute [rw] cidr_block_set # Information about the IPv4 CIDR blocks for the VPC. # @return [Array] # # @!attribute [rw] owner_id # The ID of the Amazon Web Services account that owns the VPC. # @return [String] # # @!attribute [rw] peering_options # Information about the VPC peering connection options for the # accepter or requester VPC. # @return [Types::VpcPeeringConnectionOptionsDescription] # # @!attribute [rw] vpc_id # The ID of the VPC. # @return [String] # # @!attribute [rw] region # The Region in which the VPC is located. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VpcPeeringConnectionVpcInfo AWS API Documentation # class VpcPeeringConnectionVpcInfo < Struct.new( :cidr_block, :ipv_6_cidr_block_set, :cidr_block_set, :owner_id, :peering_options, :vpc_id, :region) SENSITIVE = [] include Aws::Structure end # Describes a VPN connection. # # @!attribute [rw] customer_gateway_configuration # The configuration information for the VPN connection's customer # gateway (in the native XML format). This element is always present # in the CreateVpnConnection response; however, it's present in the # DescribeVpnConnections response only if the VPN connection is in the # `pending` or `available` state. # @return [String] # # @!attribute [rw] customer_gateway_id # The ID of the customer gateway at your end of the VPN connection. # @return [String] # # @!attribute [rw] category # 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. # @return [String] # # @!attribute [rw] state # The current state of the VPN connection. # @return [String] # # @!attribute [rw] type # The type of VPN connection. # @return [String] # # @!attribute [rw] vpn_connection_id # The ID of the VPN connection. # @return [String] # # @!attribute [rw] vpn_gateway_id # The ID of the virtual private gateway at the Amazon Web Services # side of the VPN connection. # @return [String] # # @!attribute [rw] transit_gateway_id # The ID of the transit gateway associated with the VPN connection. # @return [String] # # @!attribute [rw] core_network_arn # The ARN of the core network. # @return [String] # # @!attribute [rw] core_network_attachment_arn # The ARN of the core network attachment. # @return [String] # # @!attribute [rw] gateway_association_state # The current state of the gateway association. # @return [String] # # @!attribute [rw] options # The VPN connection options. # @return [Types::VpnConnectionOptions] # # @!attribute [rw] routes # The static routes associated with the VPN connection. # @return [Array] # # @!attribute [rw] tags # Any tags assigned to the VPN connection. # @return [Array] # # @!attribute [rw] vgw_telemetry # Information about the VPN tunnel. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VpnConnection AWS API Documentation # class VpnConnection < Struct.new( :customer_gateway_configuration, :customer_gateway_id, :category, :state, :type, :vpn_connection_id, :vpn_gateway_id, :transit_gateway_id, :core_network_arn, :core_network_attachment_arn, :gateway_association_state, :options, :routes, :tags, :vgw_telemetry) SENSITIVE = [:customer_gateway_configuration] include Aws::Structure end # 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 # device][1] in the *Amazon Web Services Site-to-Site VPN User Guide*. # # # # [1]: https://docs.aws.amazon.com/vpn/latest/s2svpn/your-cgw.html # # @!attribute [rw] vpn_connection_device_type_id # Customer gateway device identifier. # @return [String] # # @!attribute [rw] vendor # Customer gateway device vendor. # @return [String] # # @!attribute [rw] platform # Customer gateway device platform. # @return [String] # # @!attribute [rw] software # Customer gateway device software version. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VpnConnectionDeviceType AWS API Documentation # class VpnConnectionDeviceType < Struct.new( :vpn_connection_device_type_id, :vendor, :platform, :software) SENSITIVE = [] include Aws::Structure end # Describes VPN connection options. # # @!attribute [rw] enable_acceleration # Indicates whether acceleration is enabled for the VPN connection. # @return [Boolean] # # @!attribute [rw] static_routes_only # Indicates whether the VPN connection uses static routes only. Static # routes must be used for devices that don't support BGP. # @return [Boolean] # # @!attribute [rw] local_ipv_4_network_cidr # The IPv4 CIDR on the customer gateway (on-premises) side of the VPN # connection. # @return [String] # # @!attribute [rw] remote_ipv_4_network_cidr # The IPv4 CIDR on the Amazon Web Services side of the VPN connection. # @return [String] # # @!attribute [rw] local_ipv_6_network_cidr # The IPv6 CIDR on the customer gateway (on-premises) side of the VPN # connection. # @return [String] # # @!attribute [rw] remote_ipv_6_network_cidr # The IPv6 CIDR on the Amazon Web Services side of the VPN connection. # @return [String] # # @!attribute [rw] outside_ip_address_type # The type of IPv4 address assigned to the outside interface of the # customer gateway. # # Valid values: `PrivateIpv4` \| `PublicIpv4` # # Default: `PublicIpv4` # @return [String] # # @!attribute [rw] transport_transit_gateway_attachment_id # The transit gateway attachment ID in use for the VPN tunnel. # @return [String] # # @!attribute [rw] tunnel_inside_ip_version # Indicates whether the VPN tunnels process IPv4 or IPv6 traffic. # @return [String] # # @!attribute [rw] tunnel_options # Indicates the VPN tunnel options. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VpnConnectionOptions AWS API Documentation # class VpnConnectionOptions < Struct.new( :enable_acceleration, :static_routes_only, :local_ipv_4_network_cidr, :remote_ipv_4_network_cidr, :local_ipv_6_network_cidr, :remote_ipv_6_network_cidr, :outside_ip_address_type, :transport_transit_gateway_attachment_id, :tunnel_inside_ip_version, :tunnel_options) SENSITIVE = [] include Aws::Structure end # Describes VPN connection options. # # @!attribute [rw] enable_acceleration # Indicate whether to enable acceleration for the VPN connection. # # Default: `false` # @return [Boolean] # # @!attribute [rw] static_routes_only # 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` # @return [Boolean] # # @!attribute [rw] tunnel_inside_ip_version # Indicate whether the VPN tunnels process IPv4 or IPv6 traffic. # # Default: `ipv4` # @return [String] # # @!attribute [rw] tunnel_options # The tunnel options for the VPN connection. # @return [Array] # # @!attribute [rw] local_ipv_4_network_cidr # The IPv4 CIDR on the customer gateway (on-premises) side of the VPN # connection. # # Default: `0.0.0.0/0` # @return [String] # # @!attribute [rw] remote_ipv_4_network_cidr # The IPv4 CIDR on the Amazon Web Services side of the VPN connection. # # Default: `0.0.0.0/0` # @return [String] # # @!attribute [rw] local_ipv_6_network_cidr # The IPv6 CIDR on the customer gateway (on-premises) side of the VPN # connection. # # Default: `::/0` # @return [String] # # @!attribute [rw] remote_ipv_6_network_cidr # The IPv6 CIDR on the Amazon Web Services side of the VPN connection. # # Default: `::/0` # @return [String] # # @!attribute [rw] outside_ip_address_type # The type of IPv4 address assigned to the outside interface of the # customer gateway device. # # Valid values: `PrivateIpv4` \| `PublicIpv4` # # Default: `PublicIpv4` # @return [String] # # @!attribute [rw] transport_transit_gateway_attachment_id # The transit gateway attachment ID to use for the VPN tunnel. # # Required if `OutsideIpAddressType` is set to `PrivateIpv4`. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VpnConnectionOptionsSpecification AWS API Documentation # class VpnConnectionOptionsSpecification < Struct.new( :enable_acceleration, :static_routes_only, :tunnel_inside_ip_version, :tunnel_options, :local_ipv_4_network_cidr, :remote_ipv_4_network_cidr, :local_ipv_6_network_cidr, :remote_ipv_6_network_cidr, :outside_ip_address_type, :transport_transit_gateway_attachment_id) SENSITIVE = [] include Aws::Structure end # Describes a virtual private gateway. # # @!attribute [rw] availability_zone # The Availability Zone where the virtual private gateway was created, # if applicable. This field may be empty or not returned. # @return [String] # # @!attribute [rw] state # The current state of the virtual private gateway. # @return [String] # # @!attribute [rw] type # The type of VPN connection the virtual private gateway supports. # @return [String] # # @!attribute [rw] vpc_attachments # Any VPCs attached to the virtual private gateway. # @return [Array] # # @!attribute [rw] vpn_gateway_id # The ID of the virtual private gateway. # @return [String] # # @!attribute [rw] amazon_side_asn # The private Autonomous System Number (ASN) for the Amazon side of a # BGP session. # @return [Integer] # # @!attribute [rw] tags # Any tags assigned to the virtual private gateway. # @return [Array] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VpnGateway AWS API Documentation # class VpnGateway < Struct.new( :availability_zone, :state, :type, :vpc_attachments, :vpn_gateway_id, :amazon_side_asn, :tags) SENSITIVE = [] include Aws::Structure end # Describes a static route for a VPN connection. # # @!attribute [rw] destination_cidr_block # The CIDR block associated with the local subnet of the customer data # center. # @return [String] # # @!attribute [rw] source # Indicates how the routes were provided. # @return [String] # # @!attribute [rw] state # The current state of the static route. # @return [String] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VpnStaticRoute AWS API Documentation # class VpnStaticRoute < Struct.new( :destination_cidr_block, :source, :state) SENSITIVE = [] include Aws::Structure end # Options for logging VPN tunnel activity. # # @!attribute [rw] cloud_watch_log_options # Options for sending VPN tunnel logs to CloudWatch. # @return [Types::CloudWatchLogOptions] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VpnTunnelLogOptions AWS API Documentation # class VpnTunnelLogOptions < Struct.new( :cloud_watch_log_options) SENSITIVE = [] include Aws::Structure end # Options for logging VPN tunnel activity. # # @!attribute [rw] cloud_watch_log_options # Options for sending VPN tunnel logs to CloudWatch. # @return [Types::CloudWatchLogOptionsSpecification] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VpnTunnelLogOptionsSpecification AWS API Documentation # class VpnTunnelLogOptionsSpecification < Struct.new( :cloud_watch_log_options) SENSITIVE = [] include Aws::Structure end # The tunnel options for a single VPN tunnel. # # @!attribute [rw] tunnel_inside_cidr # 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` # @return [String] # # @!attribute [rw] tunnel_inside_ipv_6_cidr # 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. # @return [String] # # @!attribute [rw] pre_shared_key # 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). # @return [String] # # @!attribute [rw] phase_1_lifetime_seconds # The lifetime for phase 1 of the IKE negotiation, in seconds. # # Constraints: A value between 900 and 28,800. # # Default: `28800` # @return [Integer] # # @!attribute [rw] phase_2_lifetime_seconds # 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` # @return [Integer] # # @!attribute [rw] rekey_margin_time_seconds # 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` # @return [Integer] # # @!attribute [rw] rekey_fuzz_percentage # 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` # @return [Integer] # # @!attribute [rw] replay_window_size # The number of packets in an IKE replay window. # # Constraints: A value between 64 and 2048. # # Default: `1024` # @return [Integer] # # @!attribute [rw] dpd_timeout_seconds # The number of seconds after which a DPD timeout occurs. # # Constraints: A value greater than or equal to 30. # # Default: `30` # @return [Integer] # # @!attribute [rw] dpd_timeout_action # 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` # @return [String] # # @!attribute [rw] phase_1_encryption_algorithms # 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` # @return [Array] # # @!attribute [rw] phase_2_encryption_algorithms # 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` # @return [Array] # # @!attribute [rw] phase_1_integrity_algorithms # 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` # @return [Array] # # @!attribute [rw] phase_2_integrity_algorithms # 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` # @return [Array] # # @!attribute [rw] phase_1_dh_group_numbers # 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` # @return [Array] # # @!attribute [rw] phase_2_dh_group_numbers # 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` # @return [Array] # # @!attribute [rw] ike_versions # The IKE versions that are permitted for the VPN tunnel. # # Valid values: `ikev1` \| `ikev2` # @return [Array] # # @!attribute [rw] startup_action # 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` # @return [String] # # @!attribute [rw] log_options # Options for logging VPN tunnel activity. # @return [Types::VpnTunnelLogOptionsSpecification] # # @!attribute [rw] enable_tunnel_lifecycle_control # Turn on or off tunnel endpoint lifecycle control feature. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/VpnTunnelOptionsSpecification AWS API Documentation # class VpnTunnelOptionsSpecification < Struct.new( :tunnel_inside_cidr, :tunnel_inside_ipv_6_cidr, :pre_shared_key, :phase_1_lifetime_seconds, :phase_2_lifetime_seconds, :rekey_margin_time_seconds, :rekey_fuzz_percentage, :replay_window_size, :dpd_timeout_seconds, :dpd_timeout_action, :phase_1_encryption_algorithms, :phase_2_encryption_algorithms, :phase_1_integrity_algorithms, :phase_2_integrity_algorithms, :phase_1_dh_group_numbers, :phase_2_dh_group_numbers, :ike_versions, :startup_action, :log_options, :enable_tunnel_lifecycle_control) SENSITIVE = [:pre_shared_key] include Aws::Structure end # @!attribute [rw] cidr # The address range, in CIDR notation. # @return [String] # # @!attribute [rw] dry_run # Checks whether you have the required permissions for the action, # without actually making the request, and provides an error response. # If you have the required permissions, the error response is # `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`. # @return [Boolean] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/WithdrawByoipCidrRequest AWS API Documentation # class WithdrawByoipCidrRequest < Struct.new( :cidr, :dry_run) SENSITIVE = [] include Aws::Structure end # @!attribute [rw] byoip_cidr # Information about the address pool. # @return [Types::ByoipCidr] # # @see http://docs.aws.amazon.com/goto/WebAPI/ec2-2016-11-15/WithdrawByoipCidrResult AWS API Documentation # class WithdrawByoipCidrResult < Struct.new( :byoip_cidr) SENSITIVE = [] include Aws::Structure end end end