Struct aws_sdk_autoscaling::model::BlockDeviceMapping
source · #[non_exhaustive]pub struct BlockDeviceMapping { /* private fields */ }Expand description
Describes a block device mapping.
Implementations§
source§impl BlockDeviceMapping
impl BlockDeviceMapping
sourcepub fn virtual_name(&self) -> Option<&str>
pub fn virtual_name(&self) -> Option<&str>
The name of the instance store volume (virtual device) to attach to an instance at launch. The name must be in the form ephemeralX where X is a number starting from zero (0), for example, ephemeral0.
sourcepub fn device_name(&self) -> Option<&str>
pub fn device_name(&self) -> Option<&str>
The device name assigned to the volume (for example, /dev/sdh or xvdh). For more information, see Device naming on Linux instances in the Amazon EC2 User Guide for Linux Instances.
To define a block device mapping, set the device name and exactly one of the following properties: Ebs, NoDevice, or VirtualName.
sourcepub fn ebs(&self) -> Option<&Ebs>
pub fn ebs(&self) -> Option<&Ebs>
Information to attach an EBS volume to an instance at launch.
sourcepub fn no_device(&self) -> Option<bool>
pub fn no_device(&self) -> Option<bool>
Setting this value to true prevents a volume that is included in the block device mapping of the AMI from being mapped to the specified device name at launch.
If NoDevice is true for the root device, instances might fail the EC2 health check. In that case, Amazon EC2 Auto Scaling launches replacement instances.
source§impl BlockDeviceMapping
impl BlockDeviceMapping
sourcepub fn builder() -> Builder
pub fn builder() -> Builder
Creates a new builder-style object to manufacture BlockDeviceMapping.
Examples found in repository?
6049 6050 6051 6052 6053 6054 6055 6056 6057 6058 6059 6060 6061 6062 6063 6064 6065 6066 6067 6068 6069 6070 6071 6072 6073 6074 6075 6076 6077 6078 6079 6080 6081 6082 6083 6084 6085 6086 6087 6088 6089 6090 6091 6092 6093 6094 6095 6096 6097 6098 6099 6100 6101 6102 6103 6104 6105 6106 6107 6108 6109 6110 6111
pub fn deser_structure_crate_model_block_device_mapping(
decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<crate::model::BlockDeviceMapping, aws_smithy_xml::decode::XmlDecodeError> {
#[allow(unused_mut)]
let mut builder = crate::model::BlockDeviceMapping::builder();
while let Some(mut tag) = decoder.next_tag() {
match tag.start_el() {
s if s.matches("VirtualName") /* VirtualName com.amazonaws.autoscaling#BlockDeviceMapping$VirtualName */ => {
let var_273 =
Some(
Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
.into()
)
?
)
;
builder = builder.set_virtual_name(var_273);
}
,
s if s.matches("DeviceName") /* DeviceName com.amazonaws.autoscaling#BlockDeviceMapping$DeviceName */ => {
let var_274 =
Some(
Result::<std::string::String, aws_smithy_xml::decode::XmlDecodeError>::Ok(
aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
.into()
)
?
)
;
builder = builder.set_device_name(var_274);
}
,
s if s.matches("Ebs") /* Ebs com.amazonaws.autoscaling#BlockDeviceMapping$Ebs */ => {
let var_275 =
Some(
crate::xml_deser::deser_structure_crate_model_ebs(&mut tag)
?
)
;
builder = builder.set_ebs(var_275);
}
,
s if s.matches("NoDevice") /* NoDevice com.amazonaws.autoscaling#BlockDeviceMapping$NoDevice */ => {
let var_276 =
Some(
{
<bool as aws_smithy_types::primitive::Parse>::parse_smithy_primitive(
aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
)
.map_err(|_|aws_smithy_xml::decode::XmlDecodeError::custom("expected (boolean: `com.amazonaws.autoscaling#NoDevice`)"))
}
?
)
;
builder = builder.set_no_device(var_276);
}
,
_ => {}
}
}
Ok(builder.build())
}Trait Implementations§
source§impl Clone for BlockDeviceMapping
impl Clone for BlockDeviceMapping
source§fn clone(&self) -> BlockDeviceMapping
fn clone(&self) -> BlockDeviceMapping
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more