Class: MintPress::Aws::EC2::InstanceAttribute

Inherits:
Object
  • Object
show all
Includes:
MintLogger, AwsCommon, Mixins::Properties
Defined in:
src/mintpress-infrastructure-aws/lib/mintpress-infrastructure-aws/generated/ec2/instance_attribute.rb

Properties (Read/Write)

  • #block_device_mappings ⇒ Array of ⇒ [MintPress::Aws::EC2::BlockDeviceMapping]
    'Modifies the DeleteOnTermination attribute for volumes that are currently attached. The volume must be owned by the caller. If no value is specified for DeleteOnTermination, the default is true and the volume is deleted when the instance is terminated. To add instance store volumes to an Amazon EBS-backed instance, you must add them when you launch the instance. For more information, see Updating the block device mapping when launching an instance in the Amazon Elastic Compute Cloud User Guide.'

    Property Attributes
    • source"modify_instance_attribute"
    • orig_name'block_device_mappings'
    • modify_instance_attribute_prop'block_device_mappings'
    • read_onlyfalse
    
    
    23
    24
    25
    26
    27
    28
    29
    30
    31
    # File 'src/mintpress-infrastructure-aws/lib/mintpress-infrastructure-aws/generated/ec2/instance_attribute.rb', line 23
    
    property :block_device_mappings, description: 'Modifies the DeleteOnTermination attribute for volumes that are
    currently attached. The volume must be owned by the caller. If no
    value is specified for DeleteOnTermination, the default is true
    and the volume is deleted when the instance is terminated.
    
    To add instance store volumes to an Amazon EBS-backed instance, you
    must add them when you launch the instance. For more information, see
    Updating the block device mapping when launching an instance in
    the Amazon Elastic Compute Cloud User Guide.', source: "modify_instance_attribute", orig_name: 'block_device_mappings', type: [MintPress::Aws::EC2::BlockDeviceMapping], array: true, modify_instance_attribute_prop: 'block_device_mappings', read_only: false
  • #disable_api_termination ⇒ [TrueClass,FalseClass]
    'If the value is true, you can"t terminate the instance using the Amazon EC2 console, CLI, or API; otherwise, you can. You cannot use this parameter for Spot Instances.'

    Property Attributes
    • source"modify_instance_attribute"
    • orig_name'disable_api_termination'
    • modify_instance_attribute_prop"disable_api_termination.value"
    • read_onlyfalse
    
    
    32
    33
    34
    # File 'src/mintpress-infrastructure-aws/lib/mintpress-infrastructure-aws/generated/ec2/instance_attribute.rb', line 32
    
    property :disable_api_termination, description: 'If the value is true, you can"t terminate the instance using the
    Amazon EC2 console, CLI, or API; otherwise, you can. You cannot use
    this parameter for Spot Instances.', source: "modify_instance_attribute", orig_name: 'disable_api_termination', type: [TrueClass,FalseClass], modify_instance_attribute_prop: "disable_api_termination.value", read_only: false
  • #ebs_optimized ⇒ [TrueClass,FalseClass]
    'Specifies whether the instance is optimized for Amazon EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn"t available with all instance types. Additional usage charges apply when using an EBS Optimized instance.'

    Property Attributes
    • source"modify_instance_attribute"
    • orig_name'ebs_optimized'
    • modify_instance_attribute_prop"ebs_optimized.value"
    • read_onlyfalse
    
    
    35
    36
    37
    38
    39
    # File 'src/mintpress-infrastructure-aws/lib/mintpress-infrastructure-aws/generated/ec2/instance_attribute.rb', line 35
    
    property :ebs_optimized, description: 'Specifies whether the instance is optimized for Amazon EBS I/O. This
    optimization provides dedicated throughput to Amazon EBS and an
    optimized configuration stack to provide optimal EBS I/O performance.
    This optimization isn"t available with all instance types. Additional
    usage charges apply when using an EBS Optimized instance.', source: "modify_instance_attribute", orig_name: 'ebs_optimized', type: [TrueClass,FalseClass], modify_instance_attribute_prop: "ebs_optimized.value", read_only: false
  • #ena_support ⇒ [TrueClass,FalseClass]
    'Set to true to enable enhanced networking with ENA for the instance. This option is supported only for HVM instances. Specifying this option with a PV instance can make it unreachable.'

    Property Attributes
    • source"modify_instance_attribute"
    • orig_name'ena_support'
    • modify_instance_attribute_prop"ena_support.value"
    • read_onlyfalse
    
    
    40
    41
    42
    43
    # File 'src/mintpress-infrastructure-aws/lib/mintpress-infrastructure-aws/generated/ec2/instance_attribute.rb', line 40
    
    property :ena_support, description: 'Set to true to enable enhanced networking with ENA for the instance.
    
    This option is supported only for HVM instances. Specifying this
    option with a PV instance can make it unreachable.', source: "modify_instance_attribute", orig_name: 'ena_support', type: [TrueClass,FalseClass], modify_instance_attribute_prop: "ena_support.value", read_only: false
  • #enclave_options ⇒ [MintPress::Aws::EC2::EnclaveOption] (Default Value: MintPress::Aws::EC2::EnclaveOption.new)
    'To enable the instance for AWS Nitro Enclaves, set this parameter to true; otherwise, set it to false.'

    Property Attributes
    • disposition:attribute
    • source"Types::InstanceAttribute"
    • orig_name'enclave_options'
    • defaultMintPress::Aws::EC2::EnclaveOption.new
    
    
    44
    # File 'src/mintpress-infrastructure-aws/lib/mintpress-infrastructure-aws/generated/ec2/instance_attribute.rb', line 44
    
    property :enclave_options, disposition: :attribute, description: 'To enable the instance for AWS Nitro Enclaves, set this parameter to true; otherwise, set it to false.', source: "Types::InstanceAttribute", orig_name: 'enclave_options', type: [MintPress::Aws::EC2::EnclaveOption], default: MintPress::Aws::EC2::EnclaveOption.new
  • #groups ⇒ Array of ⇒ [String]
    '[EC2-VPC] Changes the security groups of the instance. You must specify at least one security group, even if it"s just the default security group for the VPC. You must specify the security group ID, not the security group name.'

    Property Attributes
    • source"modify_instance_attribute"
    • orig_name'groups'
    • modify_instance_attribute_prop'groups'
    • read_onlyfalse
    
    
    45
    46
    47
    48
    # File 'src/mintpress-infrastructure-aws/lib/mintpress-infrastructure-aws/generated/ec2/instance_attribute.rb', line 45
    
    property :groups, description: '[EC2-VPC] Changes the security groups of the instance. You must
    specify at least one security group, even if it"s just the default
    security group for the VPC. You must specify the security group ID,
    not the security group name.', source: "modify_instance_attribute", orig_name: 'groups', type: [String], array: true, modify_instance_attribute_prop: 'groups', read_only: false
  • #instance_initiated_shutdown_behavior ⇒ [String]
    'Specifies whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown).'

    Property Attributes
    • source"modify_instance_attribute"
    • orig_name'instance_initiated_shutdown_behavior'
    • modify_instance_attribute_prop"instance_initiated_shutdown_behavior.value"
    • read_onlyfalse
    
    
    49
    50
    51
    # File 'src/mintpress-infrastructure-aws/lib/mintpress-infrastructure-aws/generated/ec2/instance_attribute.rb', line 49
    
    property :instance_initiated_shutdown_behavior, description: 'Specifies whether an instance stops or terminates when you initiate
    shutdown from the instance (using the operating system command for
    system shutdown).', source: "modify_instance_attribute", orig_name: 'instance_initiated_shutdown_behavior', type: [String], modify_instance_attribute_prop: "instance_initiated_shutdown_behavior.value", read_only: false
  • #instance_type ⇒ [String]
    'Changes the instance type to the specified value. For more information, see Instance types. If the instance type is not valid, the error returned is InvalidInstanceAttributeValue.'

    Property Attributes
    • source"modify_instance_attribute"
    • orig_name'instance_type'
    • modify_instance_attribute_prop"instance_type.value"
    • read_onlyfalse
    
    
    52
    53
    54
    # File 'src/mintpress-infrastructure-aws/lib/mintpress-infrastructure-aws/generated/ec2/instance_attribute.rb', line 52
    
    property :instance_type, description: 'Changes the instance type to the specified value. For more
    information, see Instance types. If the instance type is not
    valid, the error returned is InvalidInstanceAttributeValue.', source: "modify_instance_attribute", orig_name: 'instance_type', type: [String], modify_instance_attribute_prop: "instance_type.value", read_only: false
  • #product_codes ⇒ Hash of ⇒ [MintPress::Aws::EC2::ProductCode]
    'A list of product codes.'

    Property Attributes
    • disposition:attribute
    • source"Types::InstanceAttribute"
    • orig_name'product_codes'
    
    
    55
    # File 'src/mintpress-infrastructure-aws/lib/mintpress-infrastructure-aws/generated/ec2/instance_attribute.rb', line 55
    
    property :product_codes, disposition: :attribute, description: 'A list of product codes.', source: "Types::InstanceAttribute", orig_name: 'product_codes', type: [MintPress::Aws::EC2::ProductCode], array: false, hash: true
  • #root_device_name ⇒ [MintPress::Aws::EC2::AttributeValue] (Default Value: Proc.new { self.name })
    'The device name of the root device volume (for example, /dev/sda1).'

    Property Attributes
    • disposition:attribute
    • source"Types::InstanceAttribute"
    • orig_name'root_device_name'
    • defaultProc.new { self.name }
    
    
    56
    # File 'src/mintpress-infrastructure-aws/lib/mintpress-infrastructure-aws/generated/ec2/instance_attribute.rb', line 56
    
    property :root_device_name, disposition: :attribute, description: 'The device name of the root device volume (for example, /dev/sda1).', source: "Types::InstanceAttribute", orig_name: 'root_device_name', type: [MintPress::Aws::EC2::AttributeValue], default: Proc.new { self.name }
  • #source_dest_check ⇒ [TrueClass,FalseClass]
    'Specifies whether source/destination checking is enabled. A value of true means that checking is enabled, and false means that checking is disabled. This value must be false for a NAT instance to perform NAT.'

    Property Attributes
    • source"modify_instance_attribute"
    • orig_name'source_dest_check'
    • modify_instance_attribute_prop"source_dest_check.value"
    • read_onlyfalse
    
    
    57
    58
    59
    60
    # File 'src/mintpress-infrastructure-aws/lib/mintpress-infrastructure-aws/generated/ec2/instance_attribute.rb', line 57
    
    property :source_dest_check, description: 'Specifies whether source/destination checking is enabled. A value of
    true means that checking is enabled, and false means that checking
    is disabled. This value must be false for a NAT instance to perform
    NAT.', source: "modify_instance_attribute", orig_name: 'source_dest_check', type: [TrueClass,FalseClass], modify_instance_attribute_prop: "source_dest_check.value", read_only: false
  • #sriov_net_support ⇒ [String]
    'Set to simple to enable enhanced networking with the Intel 82599 Virtual Function interface for the instance. There is no way to disable enhanced networking with the Intel 82599 Virtual Function interface at this time. This option is supported only for HVM instances. Specifying this option with a PV instance can make it unreachable.'

    Property Attributes
    • source"modify_instance_attribute"
    • orig_name'sriov_net_support'
    • modify_instance_attribute_prop"sriov_net_support.value"
    • read_onlyfalse
    
    
    61
    62
    63
    64
    65
    66
    67
    68
    # File 'src/mintpress-infrastructure-aws/lib/mintpress-infrastructure-aws/generated/ec2/instance_attribute.rb', line 61
    
    property :sriov_net_support, description: 'Set to simple to enable enhanced networking with the Intel 82599
    Virtual Function interface for the instance.
    
    There is no way to disable enhanced networking with the Intel 82599
    Virtual Function interface at this time.
    
    This option is supported only for HVM instances. Specifying this
    option with a PV instance can make it unreachable.', source: "modify_instance_attribute", orig_name: 'sriov_net_support', type: [String], modify_instance_attribute_prop: "sriov_net_support.value", read_only: false
  • #user_data ⇒ [String]
    'Changes the instance"s user data to the specified value. If you are using an AWS SDK or command line tool, base64-encoding is performed for you, and you can load the text from a file. Otherwise, you must provide base64-encoded text.'

    Property Attributes
    • source"modify_instance_attribute"
    • orig_name'user_data'
    • modify_instance_attribute_prop"user_data.value"
    • read_onlyfalse
    
    
    69
    70
    71
    72
    # File 'src/mintpress-infrastructure-aws/lib/mintpress-infrastructure-aws/generated/ec2/instance_attribute.rb', line 69
    
    property :user_data, description: 'Changes the instance"s user data to the specified value. If you are
    using an AWS SDK or command line tool, base64-encoding is performed
    for you, and you can load the text from a file. Otherwise, you must
    provide base64-encoded text.', source: "modify_instance_attribute", orig_name: 'user_data', type: [String], modify_instance_attribute_prop: "user_data.value", read_only: false
  • #attribute ⇒ [String]
    'The name of the attribute.'

    Property Attributes
    • describe_instance_attribute_prop'attribute'
    • source"modify_instance_attribute"
    • modify_instance_attribute_prop'attribute'
    • read_onlyfalse
    
    
    73
    # File 'src/mintpress-infrastructure-aws/lib/mintpress-infrastructure-aws/generated/ec2/instance_attribute.rb', line 73
    
    property :attribute, describe_instance_attribute_prop: 'attribute', type: [String], source: "modify_instance_attribute", description: 'The name of the attribute.', modify_instance_attribute_prop: 'attribute', read_only: false
  • #dry_run ⇒ [TrueClass,FalseClass]
    '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.'

    Property Attributes
    • describe_instance_attribute_prop'dry_run'
    • source"modify_instance_attribute"
    • modify_instance_attribute_prop'dry_run'
    • read_onlyfalse
    
    
    74
    75
    76
    77
    # File 'src/mintpress-infrastructure-aws/lib/mintpress-infrastructure-aws/generated/ec2/instance_attribute.rb', line 74
    
    property :dry_run, describe_instance_attribute_prop: 'dry_run', type: [TrueClass,FalseClass], source: "modify_instance_attribute", description: '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.', modify_instance_attribute_prop: 'dry_run', read_only: false
  • #kernel ⇒ [String] (Default Value: MintPress::Aws::EC2::AttributeValue.new)
    'Changes the instance"s kernel to the specified value. We recommend that you use PV-GRUB instead of kernels and RAM disks. For more information, see PV-GRUB.'

    Property Attributes
    • source"modify_instance_attribute"
    • orig_name'kernel_id'
    • defaultMintPress::Aws::EC2::AttributeValue.new
    • modify_instance_attribute_prop"kernel.value"
    • read_onlyfalse
    • fromString
    
    
    78
    79
    80
    # File 'src/mintpress-infrastructure-aws/lib/mintpress-infrastructure-aws/generated/ec2/instance_attribute.rb', line 78
    
    property :kernel, description: 'Changes the instance"s kernel to the specified value. We recommend
    that you use PV-GRUB instead of kernels and RAM disks. For more
    information, see PV-GRUB.', source: "modify_instance_attribute", orig_name: 'kernel_id', type: [String], default: MintPress::Aws::EC2::AttributeValue.new, modify_instance_attribute_prop: "kernel.value", read_only: false, from: String
  • #ramdisk ⇒ [String] (Default Value: MintPress::Aws::EC2::AttributeValue.new)
    'Changes the instance"s RAM disk to the specified value. We recommend that you use PV-GRUB instead of kernels and RAM disks. For more information, see PV-GRUB.'

    Property Attributes
    • source"modify_instance_attribute"
    • orig_name'ramdisk_id'
    • defaultMintPress::Aws::EC2::AttributeValue.new
    • modify_instance_attribute_prop"ramdisk.value"
    • read_onlyfalse
    • fromString
    
    
    81
    82
    83
    # File 'src/mintpress-infrastructure-aws/lib/mintpress-infrastructure-aws/generated/ec2/instance_attribute.rb', line 81
    
    property :ramdisk, description: 'Changes the instance"s RAM disk to the specified value. We recommend
    that you use PV-GRUB instead of kernels and RAM disks. For more
    information, see PV-GRUB.', source: "modify_instance_attribute", orig_name: 'ramdisk_id', type: [String], default: MintPress::Aws::EC2::AttributeValue.new, modify_instance_attribute_prop: "ramdisk.value", read_only: false, from: String
  • #value ⇒ [String]
    'A new value for the attribute. Use only with the kernel, ramdisk, userData, disableApiTermination, or instanceInitiatedShutdownBehavior attribute.'

    Property Attributes
    • modify_instance_attribute_prop'value'
    • read_onlyfalse
    • source"modify_instance_attribute"
    
    
    84
    85
    86
    # File 'src/mintpress-infrastructure-aws/lib/mintpress-infrastructure-aws/generated/ec2/instance_attribute.rb', line 84
    
    property :value, modify_instance_attribute_prop: 'value', type: [String], read_only: false, source: "modify_instance_attribute", description: 'A new value for the attribute. Use only with the kernel, ramdisk,
    userData, disableApiTermination, or
    instanceInitiatedShutdownBehavior attribute.'
  • #id ⇒ [String]
    'The ID of the instance.'

    Property Attributes
    • source"modify_instance_attribute"
    • orig_name'instance_id'
    • describe_instance_attribute_prop'instance_id'
    • modify_instance_attribute_prop'instance_id'
    • read_onlyfalse
    
    
    87
    # File 'src/mintpress-infrastructure-aws/lib/mintpress-infrastructure-aws/generated/ec2/instance_attribute.rb', line 87
    
    property :id, description: 'The ID of the instance.', source: "modify_instance_attribute", orig_name: 'instance_id', type: [String], describe_instance_attribute_prop: 'instance_id', modify_instance_attribute_prop: 'instance_id', read_only: false, array: false, hash: false
  • #name ⇒ [String]

    Property Attributes
    
    
    88
    # File 'src/mintpress-infrastructure-aws/lib/mintpress-infrastructure-aws/generated/ec2/instance_attribute.rb', line 88
    
    property :name, type: [String]
  • #region ⇒ String
    Region _specifically for this object_. If you're not doing different objects in different regions, you should not set this, but rather set the region on your AwsPlatformProvider instead

    Property Attributes
    
    
    92
    # File 'src/mintpress-infrastructure-aws/lib/mintpress-infrastructure-aws/generated/ec2/instance_attribute.rb', line 92
    
    property :region, type: String
  • #platform ⇒ MintPress::InfrastructureAws::AwsPlatform (Default Value: MintPress::InfrastructureAws::AwsPlatform.new)
    The platform details, including credentials - normally this will come via AwsPlatformProvider (see the Infrastructure Providers section of the documentation)

    Property Attributes
    • defaultMintPress::InfrastructureAws::AwsPlatform.new
    
    
    95
    # File 'src/mintpress-infrastructure-aws/lib/mintpress-infrastructure-aws/generated/ec2/instance_attribute.rb', line 95
    
    property :platform, type: MintPress::InfrastructureAws::AwsPlatform, default: MintPress::InfrastructureAws::AwsPlatform.new

Properties (Read Only)

Constant Summary

Constants included from MintLogger

MintLogger::DEBUG, MintLogger::ERROR, MintLogger::FATAL, MintLogger::INFO, MintLogger::UNKNOWN, MintLogger::VERBOSE, MintLogger::WARN

Instance Attribute Summary

Attributes included from Mixins::Properties

#autopush_set_cache, #dynamic_create, #harvest_on_access, #harvest_undefined_only, #harvested, #tree_root

Instance Method Summary collapse

Methods included from AwsCommon

#alive?, all, #attach_generic, #attached?, #available?, #build_create_hash, #by_id, #by_name, #create_generic, #delete_cascade_generic, #delete_generic, #detach_generic, #exists?, #fill_in_details, #find_by_details, #find_global_object, #get_aws_region, #get_state, #handle_singleton_object, #harvest, #perform_operation, #prop_to_hash, #register_aws_object, #resource_api, #running?, #start_generic, #started?, #stop_generic, #terminate_generic

Methods included from Mixins::Properties

#[], #[]=, #add_validate_report_result, #armour_set_property, #array_contains?, #array_is_a?, #check_autopush, #check_stack_overflow, #clone_property_object, #cloner_handle_single_property, #coerce_single, #contains_as_string?, #display_validate_report_result, #double_initialize?, #dump_to_hash, #find_parent, #find_parent_by_identity, #generate_accessor_functions, #get_canonical_renamed, #get_from_opts, #get_my_name, #get_property, #get_property_item, #has?, included, #initialize_validate_report, #inspect, #is_cloned_object?, #is_mintpress_object?, #is_probably_canonical?, #is_set?, #local_debug, #local_info, #local_verbose, #mintpress_property_definitions, #place_object_by_identity, #process_properties, #prop_set?, #property, #property_definitions, #property_details, #property_is_simple_object?, #push_root!, #require_property, #require_update, #retrieve_docstring, #sanitize, #set_map_dirty, #set_property, #set_property_item, #show_short_array, #strip_defaults!, #synchronize, #uncloned_property_definitions, #update_map, #validate, #validate_generic, #validate_properties, #validate_property, #validate_required, #version_allowed?, #weakref

Methods included from MintLogger::Utils::Common

#boolean_val, #has_value?, #no_value?, #nvl, #path_as_symbol, #ruby_level_to_send

Constructor Details

#initialize(opts = {}) ⇒ InstanceAttribute

Returns a new instance of InstanceAttribute.

Instance Method Details

#describeObject

#modifyObject