Struct aws_sdk_ec2::input::create_vpc_input::Builder
source · pub struct Builder { /* private fields */ }
Expand description
A builder for CreateVpcInput
.
Implementations§
source§impl Builder
impl Builder
sourcepub fn cidr_block(self, input: impl Into<String>) -> Self
pub fn cidr_block(self, input: impl Into<String>) -> Self
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
.
sourcepub fn set_cidr_block(self, input: Option<String>) -> Self
pub fn set_cidr_block(self, input: Option<String>) -> Self
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
.
sourcepub fn amazon_provided_ipv6_cidr_block(self, input: bool) -> Self
pub fn amazon_provided_ipv6_cidr_block(self, input: bool) -> Self
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.
sourcepub fn set_amazon_provided_ipv6_cidr_block(self, input: Option<bool>) -> Self
pub fn set_amazon_provided_ipv6_cidr_block(self, input: Option<bool>) -> Self
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.
sourcepub fn ipv6_pool(self, input: impl Into<String>) -> Self
pub fn ipv6_pool(self, input: impl Into<String>) -> Self
The ID of an IPv6 address pool from which to allocate the IPv6 CIDR block.
sourcepub fn set_ipv6_pool(self, input: Option<String>) -> Self
pub fn set_ipv6_pool(self, input: Option<String>) -> Self
The ID of an IPv6 address pool from which to allocate the IPv6 CIDR block.
sourcepub fn ipv6_cidr_block(self, input: impl Into<String>) -> Self
pub fn ipv6_cidr_block(self, input: impl Into<String>) -> Self
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.
sourcepub fn set_ipv6_cidr_block(self, input: Option<String>) -> Self
pub fn set_ipv6_cidr_block(self, input: Option<String>) -> Self
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.
sourcepub fn ipv4_ipam_pool_id(self, input: impl Into<String>) -> Self
pub fn ipv4_ipam_pool_id(self, input: impl Into<String>) -> Self
The ID of an IPv4 IPAM pool you want to use for allocating this VPC's CIDR. For more information, see What is IPAM? in the Amazon VPC IPAM User Guide.
sourcepub fn set_ipv4_ipam_pool_id(self, input: Option<String>) -> Self
pub fn set_ipv4_ipam_pool_id(self, input: Option<String>) -> Self
The ID of an IPv4 IPAM pool you want to use for allocating this VPC's CIDR. For more information, see What is IPAM? in the Amazon VPC IPAM User Guide.
sourcepub fn ipv4_netmask_length(self, input: i32) -> Self
pub fn ipv4_netmask_length(self, input: i32) -> Self
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? in the Amazon VPC IPAM User Guide.
sourcepub fn set_ipv4_netmask_length(self, input: Option<i32>) -> Self
pub fn set_ipv4_netmask_length(self, input: Option<i32>) -> Self
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? in the Amazon VPC IPAM User Guide.
sourcepub fn ipv6_ipam_pool_id(self, input: impl Into<String>) -> Self
pub fn ipv6_ipam_pool_id(self, input: impl Into<String>) -> Self
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? in the Amazon VPC IPAM User Guide.
sourcepub fn set_ipv6_ipam_pool_id(self, input: Option<String>) -> Self
pub fn set_ipv6_ipam_pool_id(self, input: Option<String>) -> Self
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? in the Amazon VPC IPAM User Guide.
sourcepub fn ipv6_netmask_length(self, input: i32) -> Self
pub fn ipv6_netmask_length(self, input: i32) -> Self
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? in the Amazon VPC IPAM User Guide.
sourcepub fn set_ipv6_netmask_length(self, input: Option<i32>) -> Self
pub fn set_ipv6_netmask_length(self, input: Option<i32>) -> Self
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? in the Amazon VPC IPAM User Guide.
sourcepub fn dry_run(self, input: bool) -> Self
pub fn dry_run(self, input: bool) -> Self
Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
sourcepub fn set_dry_run(self, input: Option<bool>) -> Self
pub fn set_dry_run(self, input: Option<bool>) -> Self
Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is DryRunOperation
. Otherwise, it is UnauthorizedOperation
.
sourcepub fn instance_tenancy(self, input: Tenancy) -> Self
pub fn instance_tenancy(self, input: Tenancy) -> Self
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
sourcepub fn set_instance_tenancy(self, input: Option<Tenancy>) -> Self
pub fn set_instance_tenancy(self, input: Option<Tenancy>) -> Self
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
sourcepub fn ipv6_cidr_block_network_border_group(
self,
input: impl Into<String>
) -> Self
pub fn ipv6_cidr_block_network_border_group(
self,
input: impl Into<String>
) -> Self
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.
sourcepub fn set_ipv6_cidr_block_network_border_group(
self,
input: Option<String>
) -> Self
pub fn set_ipv6_cidr_block_network_border_group(
self,
input: Option<String>
) -> Self
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.
sourcepub fn tag_specifications(self, input: TagSpecification) -> Self
pub fn tag_specifications(self, input: TagSpecification) -> Self
Appends an item to tag_specifications
.
To override the contents of this collection use set_tag_specifications
.
The tags to assign to the VPC.
sourcepub fn set_tag_specifications(self, input: Option<Vec<TagSpecification>>) -> Self
pub fn set_tag_specifications(self, input: Option<Vec<TagSpecification>>) -> Self
The tags to assign to the VPC.
sourcepub fn build(self) -> Result<CreateVpcInput, BuildError>
pub fn build(self) -> Result<CreateVpcInput, BuildError>
Consumes the builder and constructs a CreateVpcInput
.
Examples found in repository?
24383 24384 24385 24386 24387 24388 24389 24390 24391 24392 24393 24394 24395 24396 24397 24398 24399 24400 24401 24402 24403 24404 24405 24406 24407 24408 24409 24410 24411 24412 24413 24414 24415 24416 24417 24418 24419 24420 24421 24422 24423 24424 24425
pub async fn customize(
self,
) -> std::result::Result<
crate::operation::customize::CustomizableOperation<
crate::operation::CreateVpc,
aws_http::retry::AwsResponseRetryClassifier,
>,
aws_smithy_http::result::SdkError<crate::error::CreateVpcError>,
> {
let handle = self.handle.clone();
let operation = self
.inner
.build()
.map_err(aws_smithy_http::result::SdkError::construction_failure)?
.make_operation(&handle.conf)
.await
.map_err(aws_smithy_http::result::SdkError::construction_failure)?;
Ok(crate::operation::customize::CustomizableOperation { handle, operation })
}
/// Sends the request and returns the response.
///
/// If an error occurs, an `SdkError` will be returned with additional details that
/// can be matched against.
///
/// By default, any retryable failures will be retried twice. Retry behavior
/// is configurable with the [RetryConfig](aws_smithy_types::retry::RetryConfig), which can be
/// set when configuring the client.
pub async fn send(
self,
) -> std::result::Result<
crate::output::CreateVpcOutput,
aws_smithy_http::result::SdkError<crate::error::CreateVpcError>,
> {
let op = self
.inner
.build()
.map_err(aws_smithy_http::result::SdkError::construction_failure)?
.make_operation(&self.handle.conf)
.await
.map_err(aws_smithy_http::result::SdkError::construction_failure)?;
self.handle.client.call(op).await
}