class ImageBuilder::Builders::AWS::Base
Generic class doc comment
Attributes
access_key[RW]
ami_block_device_mappings[RW]
-
opt -
ami_description[RW]
ami_groups[RW]
ami_name[RW]
ami_product_codes[RW]
ami_regions[RW]
ami_users[RW]
ami_virtualization_type[RW]
associate_public_ip_address[RW]
availability_zone[RW]
enhanced_networking[RW]
iam_instance_profile[RW]
instance_type[RW]
launch_block_device_mappings[RW]
region[RW]
secret_key[RW]
security_group_id[RW]
security_group_ids[RW]
source_ami[RW]
spot_price[RW]
spot_price_auto_product[RW]
ssh_port[RW]
ssh_private_ip[RW]
ssh_private_key_file[RW]
ssh_timeout[RW]
ssh_username[RW]
subnet_id[RW]
temporary_key_pair_name[RW]
token[RW]
type[R]
user_data[RW]
user_data_file[RW]
vpc_id[RW]
Public Class Methods
default_block_device_mappings()
click to toggle source
# File lib/image_builder/builders/aws_base.rb, line 53 def self.default_block_device_mappings [ { device_name: '/dev/sdf', virtual_name: 'ephemeral0' }, { device_name: '/dev/sdg', virtual_name: 'ephemeral1' }, { device_name: '/dev/sdh', virtual_name: 'ephemeral2' }, { device_name: '/dev/sdi', virtual_name: 'ephemeral3' } ] end
default_launch_block_device_mappings()
click to toggle source
# File lib/image_builder/builders/aws_base.rb, line 62 def self.default_launch_block_device_mappings [ { device_name: '/dev/sdb', no_device: true }, { device_name: '/dev/sdc', no_device: true }, { device_name: '/dev/sdd', no_device: true } ] end
new()
click to toggle source
# File lib/image_builder/builders/aws_base.rb, line 47 def initialize @access_key = ENV['AWS_ACCESS_KEY_ID'] || ENV['AWS_ACCESS_KEY'] @secret_key = ENV['AWS_SECRET_ACCESS_KEY'] || ENV['AWS_SECRET_KEY'] @region = 'us-east-1' end
Public Instance Methods
packer_hash()
click to toggle source
# File lib/image_builder/builders/aws_base.rb, line 70 def packer_hash hash = {} req_attrs = [ :type, :name, :access_key, :ami_name, :instance_type, :region, :secret_key, :source_ami, :ssh_username ] opt_attrs = [ :ami_description, :ami_groups, :ami_product_codes, :ami_regions, :ami_regions, :ami_users, :ami_virtualization_type, :associate_public_ip_address, :availability_zone, :enhanced_networking, :iam_instance_profile, :run_tags, :security_group_id, :security_group_ids, :spot_price, :spot_price_auto_product, :ssh_port, :ssh_private_key_file, :ssh_private_ip, :ssh_timeout, :subnet_id, :tags, :temporary_key_pair_name, :token, :user_data, :user_data_file, :vpc_id, :launch_block_device_mappings, :ami_block_device_mappings ] # Required attrs req_attrs.each do |a| attr_to_hash(hash, a, true) end opt_attrs.each do |a| attr_to_hash(hash, a) end hash end