Type annotations for boto3.EC2 1.14.32 service, generated by mypy-boto3-buider 2.2.0
Project description
mypy-boto3-ec2
Type annotations for boto3.EC2 1.14.32 service compatible with mypy, VSCode, PyCharm and other tools.
Generated by mypy-boto3-buider 2.2.0.
More information can be found on boto3-stubs page.
How to install
Make sure you have mypy installed and activated in your IDE.
Install boto3-stubs
for EC2
service.
python -m pip install boto3-stubs[ec2]
How to use
Client annotations
EC2Client
provides annotations for boto3.client("ec2")
.
import boto3
from mypy_boto3_ec2 import EC2Client, EC2ServiceResource
from mypy_boto3_ec2.paginator import (
DescribeByoipCidrsPaginator,
DescribeCapacityReservationsPaginator,
DescribeClassicLinkInstancesPaginator,
DescribeClientVpnAuthorizationRulesPaginator,
DescribeClientVpnConnectionsPaginator,
DescribeClientVpnEndpointsPaginator,
DescribeClientVpnRoutesPaginator,
DescribeClientVpnTargetNetworksPaginator,
DescribeCoipPoolsPaginator,
DescribeDhcpOptionsPaginator,
DescribeEgressOnlyInternetGatewaysPaginator,
DescribeExportImageTasksPaginator,
DescribeFastSnapshotRestoresPaginator,
DescribeFleetsPaginator,
DescribeFlowLogsPaginator,
DescribeFpgaImagesPaginator,
DescribeHostReservationOfferingsPaginator,
DescribeHostReservationsPaginator,
DescribeHostsPaginator,
DescribeIamInstanceProfileAssociationsPaginator,
DescribeImportImageTasksPaginator,
DescribeImportSnapshotTasksPaginator,
DescribeInstanceCreditSpecificationsPaginator,
DescribeInstancesPaginator,
DescribeInstanceStatusPaginator,
DescribeInstanceTypeOfferingsPaginator,
DescribeInstanceTypesPaginator,
DescribeInternetGatewaysPaginator,
DescribeIpv6PoolsPaginator,
DescribeLaunchTemplatesPaginator,
DescribeLaunchTemplateVersionsPaginator,
DescribeLocalGatewayRouteTablesPaginator,
DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsPaginator,
DescribeLocalGatewayRouteTableVpcAssociationsPaginator,
DescribeLocalGatewaysPaginator,
DescribeLocalGatewayVirtualInterfaceGroupsPaginator,
DescribeLocalGatewayVirtualInterfacesPaginator,
DescribeManagedPrefixListsPaginator,
DescribeMovingAddressesPaginator,
DescribeNatGatewaysPaginator,
DescribeNetworkAclsPaginator,
DescribeNetworkInterfacePermissionsPaginator,
DescribeNetworkInterfacesPaginator,
DescribePrefixListsPaginator,
DescribePrincipalIdFormatPaginator,
DescribePublicIpv4PoolsPaginator,
DescribeReservedInstancesModificationsPaginator,
DescribeReservedInstancesOfferingsPaginator,
DescribeRouteTablesPaginator,
DescribeScheduledInstanceAvailabilityPaginator,
DescribeScheduledInstancesPaginator,
DescribeSecurityGroupsPaginator,
DescribeSnapshotsPaginator,
DescribeSpotFleetInstancesPaginator,
DescribeSpotFleetRequestsPaginator,
DescribeSpotInstanceRequestsPaginator,
DescribeSpotPriceHistoryPaginator,
DescribeStaleSecurityGroupsPaginator,
DescribeSubnetsPaginator,
DescribeTagsPaginator,
DescribeTrafficMirrorFiltersPaginator,
DescribeTrafficMirrorSessionsPaginator,
DescribeTrafficMirrorTargetsPaginator,
DescribeTransitGatewayAttachmentsPaginator,
DescribeTransitGatewayMulticastDomainsPaginator,
DescribeTransitGatewayPeeringAttachmentsPaginator,
DescribeTransitGatewayRouteTablesPaginator,
DescribeTransitGatewaysPaginator,
DescribeTransitGatewayVpcAttachmentsPaginator,
DescribeVolumesModificationsPaginator,
DescribeVolumesPaginator,
DescribeVolumeStatusPaginator,
DescribeVpcClassicLinkDnsSupportPaginator,
DescribeVpcEndpointConnectionNotificationsPaginator,
DescribeVpcEndpointConnectionsPaginator,
DescribeVpcEndpointServiceConfigurationsPaginator,
DescribeVpcEndpointServicePermissionsPaginator,
DescribeVpcEndpointServicesPaginator,
DescribeVpcEndpointsPaginator,
DescribeVpcPeeringConnectionsPaginator,
DescribeVpcsPaginator,
GetAssociatedIpv6PoolCidrsPaginator,
GetGroupsForCapacityReservationPaginator,
GetManagedPrefixListAssociationsPaginator,
GetManagedPrefixListEntriesPaginator,
GetTransitGatewayAttachmentPropagationsPaginator,
GetTransitGatewayMulticastDomainAssociationsPaginator,
GetTransitGatewayRouteTableAssociationsPaginator,
GetTransitGatewayRouteTablePropagationsPaginator,
SearchLocalGatewayRoutesPaginator,
SearchTransitGatewayMulticastGroupsPaginator,
)
from mypy_boto3_ec2.service_resource import (
ClassicAddress,
DhcpOptions,
Image,
Instance,
InternetGateway,
KeyPair,
KeyPairInfo,
NetworkAcl,
NetworkInterface,
NetworkInterfaceAssociation,
PlacementGroup,
Route,
RouteTable,
RouteTableAssociation,
SecurityGroup,
ServiceResourceClassicAddressesCollection,
ServiceResourceDhcpOptionsSetsCollection,
ServiceResourceImagesCollection,
ServiceResourceInstancesCollection,
ServiceResourceInternetGatewaysCollection,
ServiceResourceKeyPairsCollection,
ServiceResourceNetworkAclsCollection,
ServiceResourceNetworkInterfacesCollection,
ServiceResourcePlacementGroupsCollection,
ServiceResourceRouteTablesCollection,
ServiceResourceSecurityGroupsCollection,
ServiceResourceSnapshotsCollection,
ServiceResourceSubnetsCollection,
ServiceResourceVolumesCollection,
ServiceResourceVpcAddressesCollection,
ServiceResourceVpcPeeringConnectionsCollection,
ServiceResourceVpcsCollection,
Snapshot,
Subnet,
Tag,
Volume,
Vpc,
VpcAddress,
VpcPeeringConnection,
)
from mypy_boto3_ec2.type_defs import AccountAttributeTypeDef, ...
from mypy_boto3_ec2.waiter import (
BundleTaskCompleteWaiter,
ConversionTaskCancelledWaiter,
ConversionTaskCompletedWaiter,
ConversionTaskDeletedWaiter,
CustomerGatewayAvailableWaiter,
ExportTaskCancelledWaiter,
ExportTaskCompletedWaiter,
ImageAvailableWaiter,
ImageExistsWaiter,
InstanceExistsWaiter,
InstanceRunningWaiter,
InstanceStatusOkWaiter,
InstanceStoppedWaiter,
InstanceTerminatedWaiter,
KeyPairExistsWaiter,
NatGatewayAvailableWaiter,
NetworkInterfaceAvailableWaiter,
PasswordDataAvailableWaiter,
SecurityGroupExistsWaiter,
SnapshotCompletedWaiter,
SpotInstanceRequestFulfilledWaiter,
SubnetAvailableWaiter,
SystemStatusOkWaiter,
VolumeAvailableWaiter,
VolumeDeletedWaiter,
VolumeInUseWaiter,
VpcAvailableWaiter,
VpcExistsWaiter,
VpcPeeringConnectionDeletedWaiter,
VpcPeeringConnectionExistsWaiter,
VpnConnectionAvailableWaiter,
VpnConnectionDeletedWaiter,
)
client: EC2Client = boto3.client("ec2")
# now client usage is checked by mypy and IDE should provide code auto-complete
# works for session as well
session = boto3.session.Session(region="us-west-1")
session_client: EC2Client = session.client("ec2")
Paginators annotations
mypy_boto3_ec2.paginator
module contains type annotations for all paginators.
client: EC2Client = boto3.client("ec2")
# Explicit type annotations are optional here
# Type should be correctly discovered by mypy and IDEs
# VSCode requires explicit type annotations
describe_byoip_cidrs_paginator: DescribeByoipCidrsPaginator = client.get_paginator("describe_byoip_cidrs")
describe_capacity_reservations_paginator: DescribeCapacityReservationsPaginator = client.get_paginator("describe_capacity_reservations")
describe_classic_link_instances_paginator: DescribeClassicLinkInstancesPaginator = client.get_paginator("describe_classic_link_instances")
describe_client_vpn_authorization_rules_paginator: DescribeClientVpnAuthorizationRulesPaginator = client.get_paginator("describe_client_vpn_authorization_rules")
describe_client_vpn_connections_paginator: DescribeClientVpnConnectionsPaginator = client.get_paginator("describe_client_vpn_connections")
describe_client_vpn_endpoints_paginator: DescribeClientVpnEndpointsPaginator = client.get_paginator("describe_client_vpn_endpoints")
describe_client_vpn_routes_paginator: DescribeClientVpnRoutesPaginator = client.get_paginator("describe_client_vpn_routes")
describe_client_vpn_target_networks_paginator: DescribeClientVpnTargetNetworksPaginator = client.get_paginator("describe_client_vpn_target_networks")
describe_coip_pools_paginator: DescribeCoipPoolsPaginator = client.get_paginator("describe_coip_pools")
describe_dhcp_options_paginator: DescribeDhcpOptionsPaginator = client.get_paginator("describe_dhcp_options")
describe_egress_only_internet_gateways_paginator: DescribeEgressOnlyInternetGatewaysPaginator = client.get_paginator("describe_egress_only_internet_gateways")
describe_export_image_tasks_paginator: DescribeExportImageTasksPaginator = client.get_paginator("describe_export_image_tasks")
describe_fast_snapshot_restores_paginator: DescribeFastSnapshotRestoresPaginator = client.get_paginator("describe_fast_snapshot_restores")
describe_fleets_paginator: DescribeFleetsPaginator = client.get_paginator("describe_fleets")
describe_flow_logs_paginator: DescribeFlowLogsPaginator = client.get_paginator("describe_flow_logs")
describe_fpga_images_paginator: DescribeFpgaImagesPaginator = client.get_paginator("describe_fpga_images")
describe_host_reservation_offerings_paginator: DescribeHostReservationOfferingsPaginator = client.get_paginator("describe_host_reservation_offerings")
describe_host_reservations_paginator: DescribeHostReservationsPaginator = client.get_paginator("describe_host_reservations")
describe_hosts_paginator: DescribeHostsPaginator = client.get_paginator("describe_hosts")
describe_iam_instance_profile_associations_paginator: DescribeIamInstanceProfileAssociationsPaginator = client.get_paginator("describe_iam_instance_profile_associations")
describe_import_image_tasks_paginator: DescribeImportImageTasksPaginator = client.get_paginator("describe_import_image_tasks")
describe_import_snapshot_tasks_paginator: DescribeImportSnapshotTasksPaginator = client.get_paginator("describe_import_snapshot_tasks")
describe_instance_credit_specifications_paginator: DescribeInstanceCreditSpecificationsPaginator = client.get_paginator("describe_instance_credit_specifications")
describe_instance_status_paginator: DescribeInstanceStatusPaginator = client.get_paginator("describe_instance_status")
describe_instance_type_offerings_paginator: DescribeInstanceTypeOfferingsPaginator = client.get_paginator("describe_instance_type_offerings")
describe_instance_types_paginator: DescribeInstanceTypesPaginator = client.get_paginator("describe_instance_types")
describe_instances_paginator: DescribeInstancesPaginator = client.get_paginator("describe_instances")
describe_internet_gateways_paginator: DescribeInternetGatewaysPaginator = client.get_paginator("describe_internet_gateways")
describe_ipv6_pools_paginator: DescribeIpv6PoolsPaginator = client.get_paginator("describe_ipv6_pools")
describe_launch_template_versions_paginator: DescribeLaunchTemplateVersionsPaginator = client.get_paginator("describe_launch_template_versions")
describe_launch_templates_paginator: DescribeLaunchTemplatesPaginator = client.get_paginator("describe_launch_templates")
describe_local_gateway_route_table_virtual_interface_group_associations_paginator: DescribeLocalGatewayRouteTableVirtualInterfaceGroupAssociationsPaginator = client.get_paginator("describe_local_gateway_route_table_virtual_interface_group_associations")
describe_local_gateway_route_table_vpc_associations_paginator: DescribeLocalGatewayRouteTableVpcAssociationsPaginator = client.get_paginator("describe_local_gateway_route_table_vpc_associations")
describe_local_gateway_route_tables_paginator: DescribeLocalGatewayRouteTablesPaginator = client.get_paginator("describe_local_gateway_route_tables")
describe_local_gateway_virtual_interface_groups_paginator: DescribeLocalGatewayVirtualInterfaceGroupsPaginator = client.get_paginator("describe_local_gateway_virtual_interface_groups")
describe_local_gateway_virtual_interfaces_paginator: DescribeLocalGatewayVirtualInterfacesPaginator = client.get_paginator("describe_local_gateway_virtual_interfaces")
describe_local_gateways_paginator: DescribeLocalGatewaysPaginator = client.get_paginator("describe_local_gateways")
describe_managed_prefix_lists_paginator: DescribeManagedPrefixListsPaginator = client.get_paginator("describe_managed_prefix_lists")
describe_moving_addresses_paginator: DescribeMovingAddressesPaginator = client.get_paginator("describe_moving_addresses")
describe_nat_gateways_paginator: DescribeNatGatewaysPaginator = client.get_paginator("describe_nat_gateways")
describe_network_acls_paginator: DescribeNetworkAclsPaginator = client.get_paginator("describe_network_acls")
describe_network_interface_permissions_paginator: DescribeNetworkInterfacePermissionsPaginator = client.get_paginator("describe_network_interface_permissions")
describe_network_interfaces_paginator: DescribeNetworkInterfacesPaginator = client.get_paginator("describe_network_interfaces")
describe_prefix_lists_paginator: DescribePrefixListsPaginator = client.get_paginator("describe_prefix_lists")
describe_principal_id_format_paginator: DescribePrincipalIdFormatPaginator = client.get_paginator("describe_principal_id_format")
describe_public_ipv4_pools_paginator: DescribePublicIpv4PoolsPaginator = client.get_paginator("describe_public_ipv4_pools")
describe_reserved_instances_modifications_paginator: DescribeReservedInstancesModificationsPaginator = client.get_paginator("describe_reserved_instances_modifications")
describe_reserved_instances_offerings_paginator: DescribeReservedInstancesOfferingsPaginator = client.get_paginator("describe_reserved_instances_offerings")
describe_route_tables_paginator: DescribeRouteTablesPaginator = client.get_paginator("describe_route_tables")
describe_scheduled_instance_availability_paginator: DescribeScheduledInstanceAvailabilityPaginator = client.get_paginator("describe_scheduled_instance_availability")
describe_scheduled_instances_paginator: DescribeScheduledInstancesPaginator = client.get_paginator("describe_scheduled_instances")
describe_security_groups_paginator: DescribeSecurityGroupsPaginator = client.get_paginator("describe_security_groups")
describe_snapshots_paginator: DescribeSnapshotsPaginator = client.get_paginator("describe_snapshots")
describe_spot_fleet_instances_paginator: DescribeSpotFleetInstancesPaginator = client.get_paginator("describe_spot_fleet_instances")
describe_spot_fleet_requests_paginator: DescribeSpotFleetRequestsPaginator = client.get_paginator("describe_spot_fleet_requests")
describe_spot_instance_requests_paginator: DescribeSpotInstanceRequestsPaginator = client.get_paginator("describe_spot_instance_requests")
describe_spot_price_history_paginator: DescribeSpotPriceHistoryPaginator = client.get_paginator("describe_spot_price_history")
describe_stale_security_groups_paginator: DescribeStaleSecurityGroupsPaginator = client.get_paginator("describe_stale_security_groups")
describe_subnets_paginator: DescribeSubnetsPaginator = client.get_paginator("describe_subnets")
describe_tags_paginator: DescribeTagsPaginator = client.get_paginator("describe_tags")
describe_traffic_mirror_filters_paginator: DescribeTrafficMirrorFiltersPaginator = client.get_paginator("describe_traffic_mirror_filters")
describe_traffic_mirror_sessions_paginator: DescribeTrafficMirrorSessionsPaginator = client.get_paginator("describe_traffic_mirror_sessions")
describe_traffic_mirror_targets_paginator: DescribeTrafficMirrorTargetsPaginator = client.get_paginator("describe_traffic_mirror_targets")
describe_transit_gateway_attachments_paginator: DescribeTransitGatewayAttachmentsPaginator = client.get_paginator("describe_transit_gateway_attachments")
describe_transit_gateway_multicast_domains_paginator: DescribeTransitGatewayMulticastDomainsPaginator = client.get_paginator("describe_transit_gateway_multicast_domains")
describe_transit_gateway_peering_attachments_paginator: DescribeTransitGatewayPeeringAttachmentsPaginator = client.get_paginator("describe_transit_gateway_peering_attachments")
describe_transit_gateway_route_tables_paginator: DescribeTransitGatewayRouteTablesPaginator = client.get_paginator("describe_transit_gateway_route_tables")
describe_transit_gateway_vpc_attachments_paginator: DescribeTransitGatewayVpcAttachmentsPaginator = client.get_paginator("describe_transit_gateway_vpc_attachments")
describe_transit_gateways_paginator: DescribeTransitGatewaysPaginator = client.get_paginator("describe_transit_gateways")
describe_volume_status_paginator: DescribeVolumeStatusPaginator = client.get_paginator("describe_volume_status")
describe_volumes_paginator: DescribeVolumesPaginator = client.get_paginator("describe_volumes")
describe_volumes_modifications_paginator: DescribeVolumesModificationsPaginator = client.get_paginator("describe_volumes_modifications")
describe_vpc_classic_link_dns_support_paginator: DescribeVpcClassicLinkDnsSupportPaginator = client.get_paginator("describe_vpc_classic_link_dns_support")
describe_vpc_endpoint_connection_notifications_paginator: DescribeVpcEndpointConnectionNotificationsPaginator = client.get_paginator("describe_vpc_endpoint_connection_notifications")
describe_vpc_endpoint_connections_paginator: DescribeVpcEndpointConnectionsPaginator = client.get_paginator("describe_vpc_endpoint_connections")
describe_vpc_endpoint_service_configurations_paginator: DescribeVpcEndpointServiceConfigurationsPaginator = client.get_paginator("describe_vpc_endpoint_service_configurations")
describe_vpc_endpoint_service_permissions_paginator: DescribeVpcEndpointServicePermissionsPaginator = client.get_paginator("describe_vpc_endpoint_service_permissions")
describe_vpc_endpoint_services_paginator: DescribeVpcEndpointServicesPaginator = client.get_paginator("describe_vpc_endpoint_services")
describe_vpc_endpoints_paginator: DescribeVpcEndpointsPaginator = client.get_paginator("describe_vpc_endpoints")
describe_vpc_peering_connections_paginator: DescribeVpcPeeringConnectionsPaginator = client.get_paginator("describe_vpc_peering_connections")
describe_vpcs_paginator: DescribeVpcsPaginator = client.get_paginator("describe_vpcs")
get_associated_ipv6_pool_cidrs_paginator: GetAssociatedIpv6PoolCidrsPaginator = client.get_paginator("get_associated_ipv6_pool_cidrs")
get_groups_for_capacity_reservation_paginator: GetGroupsForCapacityReservationPaginator = client.get_paginator("get_groups_for_capacity_reservation")
get_managed_prefix_list_associations_paginator: GetManagedPrefixListAssociationsPaginator = client.get_paginator("get_managed_prefix_list_associations")
get_managed_prefix_list_entries_paginator: GetManagedPrefixListEntriesPaginator = client.get_paginator("get_managed_prefix_list_entries")
get_transit_gateway_attachment_propagations_paginator: GetTransitGatewayAttachmentPropagationsPaginator = client.get_paginator("get_transit_gateway_attachment_propagations")
get_transit_gateway_multicast_domain_associations_paginator: GetTransitGatewayMulticastDomainAssociationsPaginator = client.get_paginator("get_transit_gateway_multicast_domain_associations")
get_transit_gateway_route_table_associations_paginator: GetTransitGatewayRouteTableAssociationsPaginator = client.get_paginator("get_transit_gateway_route_table_associations")
get_transit_gateway_route_table_propagations_paginator: GetTransitGatewayRouteTablePropagationsPaginator = client.get_paginator("get_transit_gateway_route_table_propagations")
search_local_gateway_routes_paginator: SearchLocalGatewayRoutesPaginator = client.get_paginator("search_local_gateway_routes")
search_transit_gateway_multicast_groups_paginator: SearchTransitGatewayMulticastGroupsPaginator = client.get_paginator("search_transit_gateway_multicast_groups")
Waiters annotations
mypy_boto3_ec2.waiter
module contains type annotations for all waiters.
client: EC2Client = boto3.client("ec2")
# Explicit type annotations are optional here
# Type should be correctly discovered by mypy and IDEs
# VSCode requires explicit type annotations
bundle_task_complete_waiter: BundleTaskCompleteWaiter = client.get_waiter("bundle_task_complete")
conversion_task_cancelled_waiter: ConversionTaskCancelledWaiter = client.get_waiter("conversion_task_cancelled")
conversion_task_completed_waiter: ConversionTaskCompletedWaiter = client.get_waiter("conversion_task_completed")
conversion_task_deleted_waiter: ConversionTaskDeletedWaiter = client.get_waiter("conversion_task_deleted")
customer_gateway_available_waiter: CustomerGatewayAvailableWaiter = client.get_waiter("customer_gateway_available")
export_task_cancelled_waiter: ExportTaskCancelledWaiter = client.get_waiter("export_task_cancelled")
export_task_completed_waiter: ExportTaskCompletedWaiter = client.get_waiter("export_task_completed")
image_available_waiter: ImageAvailableWaiter = client.get_waiter("image_available")
image_exists_waiter: ImageExistsWaiter = client.get_waiter("image_exists")
instance_exists_waiter: InstanceExistsWaiter = client.get_waiter("instance_exists")
instance_running_waiter: InstanceRunningWaiter = client.get_waiter("instance_running")
instance_status_ok_waiter: InstanceStatusOkWaiter = client.get_waiter("instance_status_ok")
instance_stopped_waiter: InstanceStoppedWaiter = client.get_waiter("instance_stopped")
instance_terminated_waiter: InstanceTerminatedWaiter = client.get_waiter("instance_terminated")
key_pair_exists_waiter: KeyPairExistsWaiter = client.get_waiter("key_pair_exists")
nat_gateway_available_waiter: NatGatewayAvailableWaiter = client.get_waiter("nat_gateway_available")
network_interface_available_waiter: NetworkInterfaceAvailableWaiter = client.get_waiter("network_interface_available")
password_data_available_waiter: PasswordDataAvailableWaiter = client.get_waiter("password_data_available")
security_group_exists_waiter: SecurityGroupExistsWaiter = client.get_waiter("security_group_exists")
snapshot_completed_waiter: SnapshotCompletedWaiter = client.get_waiter("snapshot_completed")
spot_instance_request_fulfilled_waiter: SpotInstanceRequestFulfilledWaiter = client.get_waiter("spot_instance_request_fulfilled")
subnet_available_waiter: SubnetAvailableWaiter = client.get_waiter("subnet_available")
system_status_ok_waiter: SystemStatusOkWaiter = client.get_waiter("system_status_ok")
volume_available_waiter: VolumeAvailableWaiter = client.get_waiter("volume_available")
volume_deleted_waiter: VolumeDeletedWaiter = client.get_waiter("volume_deleted")
volume_in_use_waiter: VolumeInUseWaiter = client.get_waiter("volume_in_use")
vpc_available_waiter: VpcAvailableWaiter = client.get_waiter("vpc_available")
vpc_exists_waiter: VpcExistsWaiter = client.get_waiter("vpc_exists")
vpc_peering_connection_deleted_waiter: VpcPeeringConnectionDeletedWaiter = client.get_waiter("vpc_peering_connection_deleted")
vpc_peering_connection_exists_waiter: VpcPeeringConnectionExistsWaiter = client.get_waiter("vpc_peering_connection_exists")
vpn_connection_available_waiter: VpnConnectionAvailableWaiter = client.get_waiter("vpn_connection_available")
vpn_connection_deleted_waiter: VpnConnectionDeletedWaiter = client.get_waiter("vpn_connection_deleted")
Service Resource annotations
EC2ServiceResource
provides annotations for boto3.resource("ec2")
.
resource: EC2ServiceResource = boto3.resource("ec2")
# now resource usage is checked by mypy and IDE should provide code auto-complete
# works for session as well
session = boto3.session.Session(region="us-west-1")
session_resource: EC2ServiceResource = session.resource("ec2")
Other resources annotations
mypy_boto3_ec2.service_resource
module contains type annotations for all resources.
resource: EC2ServiceResource = boto3.resource("ec2")
# Explicit type annotations are optional here
# Type should be correctly discovered by mypy and IDEs
my_classic_address: ClassicAddress = resource.ClassicAddress(...)
my_dhcp_options: DhcpOptions = resource.DhcpOptions(...)
my_image: Image = resource.Image(...)
my_instance: Instance = resource.Instance(...)
my_internet_gateway: InternetGateway = resource.InternetGateway(...)
my_key_pair: KeyPair = resource.KeyPair(...)
my_key_pair_info: KeyPairInfo = resource.KeyPairInfo(...)
my_network_acl: NetworkAcl = resource.NetworkAcl(...)
my_network_interface: NetworkInterface = resource.NetworkInterface(...)
my_network_interface_association: NetworkInterfaceAssociation = resource.NetworkInterfaceAssociation(...)
my_placement_group: PlacementGroup = resource.PlacementGroup(...)
my_route: Route = resource.Route(...)
my_route_table: RouteTable = resource.RouteTable(...)
my_route_table_association: RouteTableAssociation = resource.RouteTableAssociation(...)
my_security_group: SecurityGroup = resource.SecurityGroup(...)
my_snapshot: Snapshot = resource.Snapshot(...)
my_subnet: Subnet = resource.Subnet(...)
my_tag: Tag = resource.Tag(...)
my_volume: Volume = resource.Volume(...)
my_vpc: Vpc = resource.Vpc(...)
my_vpc_peering_connection: VpcPeeringConnection = resource.VpcPeeringConnection(...)
my_vpc_address: VpcAddress = resource.VpcAddress(...)
Collections annotations
mypy_boto3_ec2.service_resource
module contains type annotations
for all EC2ServiceResource
collections.
resource: EC2ServiceResource = boto3.resource("ec2")
# Explicit type annotations are optional here
# Type should be correctly discovered by mypy and IDEs
classic_addresses: ec2_resources.ServiceResourceClassicAddressesCollection = resource.classic_addresses
dhcp_options_sets: ec2_resources.ServiceResourceDhcpOptionsSetsCollection = resource.dhcp_options_sets
images: ec2_resources.ServiceResourceImagesCollection = resource.images
instances: ec2_resources.ServiceResourceInstancesCollection = resource.instances
internet_gateways: ec2_resources.ServiceResourceInternetGatewaysCollection = resource.internet_gateways
key_pairs: ec2_resources.ServiceResourceKeyPairsCollection = resource.key_pairs
network_acls: ec2_resources.ServiceResourceNetworkAclsCollection = resource.network_acls
network_interfaces: ec2_resources.ServiceResourceNetworkInterfacesCollection = resource.network_interfaces
placement_groups: ec2_resources.ServiceResourcePlacementGroupsCollection = resource.placement_groups
route_tables: ec2_resources.ServiceResourceRouteTablesCollection = resource.route_tables
security_groups: ec2_resources.ServiceResourceSecurityGroupsCollection = resource.security_groups
snapshots: ec2_resources.ServiceResourceSnapshotsCollection = resource.snapshots
subnets: ec2_resources.ServiceResourceSubnetsCollection = resource.subnets
volumes: ec2_resources.ServiceResourceVolumesCollection = resource.volumes
vpc_addresses: ec2_resources.ServiceResourceVpcAddressesCollection = resource.vpc_addresses
vpc_peering_connections: ec2_resources.ServiceResourceVpcPeeringConnectionsCollection = resource.vpc_peering_connections
vpcs: ec2_resources.ServiceResourceVpcsCollection = resource.vpcs
Typed dictionations
mypy_boto3_ec2.type_defs
module contains structures and shapes assembled
to typed dictionaries for additional type checking.
def get_structure() -> AccountAttributeTypeDef:
return {
...
}
Dynamic type annotations
mypy_boto3
command generates boto3.client/resource
type annotations for
mypy_boto3_ec2
and other installed services.
# Run this command after you add or remove service packages
python -m mypy_boto3
Generated type annotations provide overloads for boto3.client
and boto3.resource
,
boto3.Session.client
and boto3.Session.resource
functions,
so explicit type annotations are not needed.
mypy
supports function overloads as expectedPyCharm
also supports function overloads, but consumes a lot of RAM, use carefully if you have many services installedVSCode
does not currently support function overloads, use explicit type annotations
# Type is discovered correctly by mypy and PyCharm
# VSCode still needs explicit type annotations
client = boto3.client("ec2")
resource = boto3.resource("ec2")
session_client = boto3.Session().client("ec2")
session_resource = boto3.Session().resource("ec2")
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for mypy_boto3_ec2-1.14.32.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 96de3ebea616df4d5fd1e9a7af1822eba4af9cc4dc9b4e6f016d3c524dadcee9 |
|
MD5 | 6a29dc0d2076c139976ca5bb8e7663a4 |
|
BLAKE2b-256 | 1f454c8e20fdde89adc5c39ff13532debfbae4c85388611ba8b25b8bb3b9dc70 |