From 7791a1330718b58b1965eecbf059a08427da6c55 Mon Sep 17 00:00:00 2001 From: Adam Tucker Date: Tue, 27 May 2014 16:16:43 -0400 Subject: [PATCH] Allow VPC instance to associate withi non-EIP public IP on launch. --- lib/aerosol/launch_configuration.rb | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/lib/aerosol/launch_configuration.rb b/lib/aerosol/launch_configuration.rb index 7094a94..2692f20 100644 --- a/lib/aerosol/launch_configuration.rb +++ b/lib/aerosol/launch_configuration.rb @@ -3,16 +3,17 @@ class Aerosol::LaunchConfiguration include Dockly::Util::Logger::Mixin logger_prefix '[aerosol launch_configuration]' - aws_attribute :aws_identifier => 'LaunchConfigurationName', - :ami => 'ImageId', - :instance_type => 'InstanceType', - :security_groups => 'SecurityGroups', - :user_data => 'UserData', - :iam_role => 'IamInstanceProfile', - :kernel_id => 'KernelId', - :key_name => 'KeyName', - :spot_price => 'SpotPrice', - :created_time => 'CreatedTime' + aws_attribute :aws_identifier => 'LaunchConfigurationName', + :ami => 'ImageId', + :instance_type => 'InstanceType', + :security_groups => 'SecurityGroups', + :user_data => 'UserData', + :iam_role => 'IamInstanceProfile', + :kernel_id => 'KernelId', + :key_name => 'KeyName', + :spot_price => 'SpotPrice', + :created_time => 'CreatedTime', + :associate_public_ip_address => 'AssociatePublicIpAddress' primary_key :aws_identifier default_value(:security_groups) { [] } @@ -81,7 +82,8 @@ def create_options 'KeyName' => key_name, 'SecurityGroups' => security_groups, 'SpotPrice' => spot_price, - 'UserData' => Aerosol::Util.strip_heredoc(user_data || '') + 'UserData' => Aerosol::Util.strip_heredoc(user_data || ''), + 'AssociatePublicIpAddress' => associate_public_ip_address }.reject { |k, v| v.nil? } end