Struct aws_throwaway::AwsBuilder
source · pub struct AwsBuilder { /* private fields */ }Implementations§
source§impl AwsBuilder
impl AwsBuilder
The default configuration will succeed for an AMI user with sufficient access and unmodified default vpcs/subnets Consider altering the configuration if:
- you want to reduce the amount of access required by the user
- you want to connect directly from within the VPC
- you have already created a specific VPC, subnet or security group that you want aws-throwaway to make use of.
All resources will be created in us-east-1c. This is hardcoded so that aws-throawaway only has to look into one region when cleaning up. All instances are created in a single spread placement group in a single AZ to ensure consistent latency between instances.
sourcepub fn use_public_addresses(self, use_public_addresses: bool) -> Self
pub fn use_public_addresses(self, use_public_addresses: bool) -> Self
When set to:
- true => aws-throwaway will connect to the public ip of the instances that it creates.
- The subnet must have the property MapPublicIpOnLaunch set to true (the unmodified default subnet meets this requirement)
- Elastic IPs will be created for instances with multiple network interfaces because AWS does not assign a public IP in that scenario
- false => aws-throwaway will connect to the private ip of the instances that it creates.
- aws-throwaway must be running on a machine within the VPC used by aws-throwaaway or a VPN must be used to connect to the VPC or another similar setup.
If the subnet used has MapPublicIpOnLaunch=true then all instances will be publically accessible regardless of this use_public_addresses field.
The default is true.
sourcepub fn use_vpc_id(self, vpc_id: Option<String>) -> Self
pub fn use_vpc_id(self, vpc_id: Option<String>) -> Self
- Some(_) => All resources will go into the specified vpc
- None => All resources will go into the default vpc
The default is None
sourcepub fn use_subnet_id(self, subnet_id: Option<String>) -> Self
pub fn use_subnet_id(self, subnet_id: Option<String>) -> Self
- Some(_) => All instances will go into the specified subnet
- None => All instances will go into the default subnet for the specified or default vpc
The default is None
sourcepub fn use_placement_strategy(
self,
placement_strategy: PlacementStrategy
) -> Self
pub fn use_placement_strategy( self, placement_strategy: PlacementStrategy ) -> Self
All EC2 instances are created within a single placement group with the specified strategy.
The default is PlacementStrategy::Spread
sourcepub fn use_security_group_id(self, security_group_id: Option<String>) -> Self
pub fn use_security_group_id(self, security_group_id: Option<String>) -> Self
- Some(_) => All instances will use the specified security group
- None => A single security group will be created for all instances to use. It will allow:
- ssh traffic in from the internet
- all traffic out to the internet
- all traffic in+out between instances in the security group, i.e. all ec2 instances created by this
Awsinstance
The default is None