#[non_exhaustive]
pub struct LaunchTemplateInstanceMetadataOptions { /* private fields */ }
Expand description

The metadata options for the instance. For more information, see Instance metadata and user data in the Amazon Elastic Compute Cloud User Guide.

Implementations§

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.

The state of token usage for your instance metadata requests. If the parameter is not specified in the request, the default state is optional.

If the state is optional, you can choose to retrieve instance metadata with or without a signed token header on your request. If you retrieve the IAM role credentials without a token, the version 1.0 role credentials are returned. If you retrieve the IAM role credentials using a valid signed token, the version 2.0 role credentials are returned.

If the state is required, you must send a signed token header with any instance metadata retrieval requests. In this state, retrieving the IAM role credentials always returns the version 2.0 credentials; the version 1.0 credentials are not available.

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

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.

Enables or disables the IPv6 endpoint for the instance metadata service.

Default: disabled

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.

Default: disabled

Creates a new builder-style object to manufacture LaunchTemplateInstanceMetadataOptions.

Examples found in repository?
src/xml_deser.rs (line 53105)
53098
53099
53100
53101
53102
53103
53104
53105
53106
53107
53108
53109
53110
53111
53112
53113
53114
53115
53116
53117
53118
53119
53120
53121
53122
53123
53124
53125
53126
53127
53128
53129
53130
53131
53132
53133
53134
53135
53136
53137
53138
53139
53140
53141
53142
53143
53144
53145
53146
53147
53148
53149
53150
53151
53152
53153
53154
53155
53156
53157
53158
53159
53160
53161
53162
53163
53164
53165
53166
53167
53168
53169
53170
53171
53172
53173
53174
53175
53176
53177
53178
53179
53180
53181
53182
53183
53184
53185
53186
53187
53188
53189
53190
53191
53192
53193
53194
53195
53196
53197
pub fn deser_structure_crate_model_launch_template_instance_metadata_options(
    decoder: &mut aws_smithy_xml::decode::ScopedDecoder,
) -> Result<
    crate::model::LaunchTemplateInstanceMetadataOptions,
    aws_smithy_xml::decode::XmlDecodeError,
> {
    #[allow(unused_mut)]
    let mut builder = crate::model::LaunchTemplateInstanceMetadataOptions::builder();
    while let Some(mut tag) = decoder.next_tag() {
        match tag.start_el() {
            s if s.matches("state") /* State com.amazonaws.ec2#LaunchTemplateInstanceMetadataOptions$State */ =>  {
                let var_2532 =
                    Some(
                        Result::<crate::model::LaunchTemplateInstanceMetadataOptionsState, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            crate::model::LaunchTemplateInstanceMetadataOptionsState::from(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                        )
                        ?
                    )
                ;
                builder = builder.set_state(var_2532);
            }
            ,
            s if s.matches("httpTokens") /* HttpTokens com.amazonaws.ec2#LaunchTemplateInstanceMetadataOptions$HttpTokens */ =>  {
                let var_2533 =
                    Some(
                        Result::<crate::model::LaunchTemplateHttpTokensState, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            crate::model::LaunchTemplateHttpTokensState::from(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                        )
                        ?
                    )
                ;
                builder = builder.set_http_tokens(var_2533);
            }
            ,
            s if s.matches("httpPutResponseHopLimit") /* HttpPutResponseHopLimit com.amazonaws.ec2#LaunchTemplateInstanceMetadataOptions$HttpPutResponseHopLimit */ =>  {
                let var_2534 =
                    Some(
                         {
                            <i32 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 (integer: `com.amazonaws.ec2#Integer`)"))
                        }
                        ?
                    )
                ;
                builder = builder.set_http_put_response_hop_limit(var_2534);
            }
            ,
            s if s.matches("httpEndpoint") /* HttpEndpoint com.amazonaws.ec2#LaunchTemplateInstanceMetadataOptions$HttpEndpoint */ =>  {
                let var_2535 =
                    Some(
                        Result::<crate::model::LaunchTemplateInstanceMetadataEndpointState, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            crate::model::LaunchTemplateInstanceMetadataEndpointState::from(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                        )
                        ?
                    )
                ;
                builder = builder.set_http_endpoint(var_2535);
            }
            ,
            s if s.matches("httpProtocolIpv6") /* HttpProtocolIpv6 com.amazonaws.ec2#LaunchTemplateInstanceMetadataOptions$HttpProtocolIpv6 */ =>  {
                let var_2536 =
                    Some(
                        Result::<crate::model::LaunchTemplateInstanceMetadataProtocolIpv6, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            crate::model::LaunchTemplateInstanceMetadataProtocolIpv6::from(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                        )
                        ?
                    )
                ;
                builder = builder.set_http_protocol_ipv6(var_2536);
            }
            ,
            s if s.matches("instanceMetadataTags") /* InstanceMetadataTags com.amazonaws.ec2#LaunchTemplateInstanceMetadataOptions$InstanceMetadataTags */ =>  {
                let var_2537 =
                    Some(
                        Result::<crate::model::LaunchTemplateInstanceMetadataTagsState, aws_smithy_xml::decode::XmlDecodeError>::Ok(
                            crate::model::LaunchTemplateInstanceMetadataTagsState::from(
                                aws_smithy_xml::decode::try_data(&mut tag)?.as_ref()
                            )
                        )
                        ?
                    )
                ;
                builder = builder.set_instance_metadata_tags(var_2537);
            }
            ,
            _ => {}
        }
    }
    Ok(builder.build())
}

Trait Implementations§

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more
This method tests for self and other values to be equal, and is used by ==. Read more
This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason. Read more

Auto Trait Implementations§

Blanket Implementations§

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Instruments this type with the current Span, returning an Instrumented wrapper. Read more

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Should always be Self
The resulting type after obtaining ownership.
Creates owned data from borrowed data, usually by cloning. Read more
Uses borrowed data to replace owned data, usually by cloning. Read more
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.
Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more