Class: Packer::Builder::Amazon
Defined Under Namespace
Classes: EBS, Instance
Constant Summary
AMAZON_EBS, AMAZON_INSTANCE, DOCKER, VALID_BUILDER_TYPES, VIRTUALBOX_ISO
Instance Attribute Summary
Attributes inherited from DataObject
#data, #required
Instance Method Summary
collapse
get_builder, #name, types
Methods inherited from DataObject
#__add_array_of_array_of_strings, #__add_array_of_hashes, #__add_array_of_strings, #__add_boolean, #__add_hash, #__add_integer, #__add_string, #__exclusive_key_error, #add_required, #deep_copy, #validate
Constructor Details
#initialize ⇒ Amazon
Returns a new instance of Amazon.
22
23
24
25
26
27
28
29
30
31
|
# File 'lib/packer/builders/amazon.rb', line 22
def initialize
super
self.add_required(
'ami_name',
'instance_type',
'region',
'source_ami',
'ssh_username'
)
end
|
Instance Method Details
#access_key(key) ⇒ Object
33
34
35
|
# File 'lib/packer/builders/amazon.rb', line 33
def access_key(key)
self.__add_string('access_key', key)
end
|
#ami_block_device_mappings(mappings) ⇒ Object
61
62
63
|
# File 'lib/packer/builders/amazon.rb', line 61
def ami_block_device_mappings(mappings)
self.__add_array_of_hashes('ami_block_device_mappings', mappings)
end
|
#ami_description(description) ⇒ Object
65
66
67
|
# File 'lib/packer/builders/amazon.rb', line 65
def ami_description(description)
self.__add_string('ami_description', description)
end
|
#ami_groups(groups) ⇒ Object
69
70
71
|
# File 'lib/packer/builders/amazon.rb', line 69
def ami_groups(groups)
self.__add_array_of_strings('ami_groups', groups)
end
|
#ami_name(name) ⇒ Object
37
38
39
|
# File 'lib/packer/builders/amazon.rb', line 37
def ami_name(name)
self.__add_string('ami_name', name)
end
|
#ami_product_codes(codes) ⇒ Object
73
74
75
|
# File 'lib/packer/builders/amazon.rb', line 73
def ami_product_codes(codes)
self.__add_array_of_strings('ami_product_codes', codes)
end
|
#ami_regions(regions) ⇒ Object
77
78
79
|
# File 'lib/packer/builders/amazon.rb', line 77
def ami_regions(regions)
self.__add_array_of_strings('ami_regions', regions)
end
|
#ami_users(users) ⇒ Object
81
82
83
|
# File 'lib/packer/builders/amazon.rb', line 81
def ami_users(users)
self.__add_array_of_strings('ami_users', users)
end
|
#ami_virtualization_type(type) ⇒ Object
85
86
87
|
# File 'lib/packer/builders/amazon.rb', line 85
def ami_virtualization_type(type)
self.__add_string('ami_virtualization_type', type)
end
|
#associate_public_ip_address(bool) ⇒ Object
89
90
91
|
# File 'lib/packer/builders/amazon.rb', line 89
def associate_public_ip_address(bool)
self.__add_boolean('associate_public_ip_address', bool)
end
|
#availability_zone(zone) ⇒ Object
93
94
95
|
# File 'lib/packer/builders/amazon.rb', line 93
def availability_zone(zone)
self.__add_string('availability_zone', zone)
end
|
#enhanced_networking(bool) ⇒ Object
97
98
99
|
# File 'lib/packer/builders/amazon.rb', line 97
def enhanced_networking(bool)
self.__add_boolean('enhanced_networking', bool)
end
|
#iam_instance_profile(profile) ⇒ Object
101
102
103
|
# File 'lib/packer/builders/amazon.rb', line 101
def iam_instance_profile(profile)
self.__add_string('iam_instance_profile', profile)
end
|
#instance_type(type) ⇒ Object
41
42
43
|
# File 'lib/packer/builders/amazon.rb', line 41
def instance_type(type)
self.__add_string('instance_type', type)
end
|
#launch_block_device_mappings(mappings) ⇒ Object
105
106
107
|
# File 'lib/packer/builders/amazon.rb', line 105
def launch_block_device_mappings(mappings)
self.__add_array_of_hashes('launch_block_device_mappings', mappings)
end
|
#region(name) ⇒ Object
45
46
47
|
# File 'lib/packer/builders/amazon.rb', line 45
def region(name)
self.__add_string('region', name)
end
|
109
110
111
|
# File 'lib/packer/builders/amazon.rb', line 109
def run_tags(tags)
self.__add_hash('run_tags', tags)
end
|
#secret_key(key) ⇒ Object
57
58
59
|
# File 'lib/packer/builders/amazon.rb', line 57
def secret_key(key)
self.__add_string('secret_key', key)
end
|
#security_group_id(id) ⇒ Object
113
114
115
|
# File 'lib/packer/builders/amazon.rb', line 113
def security_group_id(id)
self.__add_string('security_group_id', id, %w[security_group_ids])
end
|
#security_group_ids(ids) ⇒ Object
117
118
119
|
# File 'lib/packer/builders/amazon.rb', line 117
def security_group_ids(ids)
self.__add_array_of_strings('security_group_ids', ids, %w[security_group_id])
end
|
#source_ami(name) ⇒ Object
49
50
51
|
# File 'lib/packer/builders/amazon.rb', line 49
def source_ami(name)
self.__add_string('source_ami', name)
end
|
#ssh_port(port) ⇒ Object
121
122
123
|
# File 'lib/packer/builders/amazon.rb', line 121
def ssh_port(port)
self.__add_integer('ssh_port', port)
end
|
#ssh_private_key_file(file) ⇒ Object
125
126
127
|
# File 'lib/packer/builders/amazon.rb', line 125
def ssh_private_key_file(file)
self.__add_string('ssh_private_key_file', file)
end
|
#ssh_timeout(time) ⇒ Object
129
130
131
|
# File 'lib/packer/builders/amazon.rb', line 129
def ssh_timeout(time)
self.__add_string('ssh_timeout', time)
end
|
#ssh_username(username) ⇒ Object
53
54
55
|
# File 'lib/packer/builders/amazon.rb', line 53
def ssh_username(username)
self.__add_string('ssh_username', username)
end
|
#subnet_id(id) ⇒ Object
133
134
135
|
# File 'lib/packer/builders/amazon.rb', line 133
def subnet_id(id)
self.__add_string('subnet_id', id)
end
|
137
138
139
|
# File 'lib/packer/builders/amazon.rb', line 137
def tags(tags)
self.__add_hash('tags', tags)
end
|
#temporary_key_pair_name(name) ⇒ Object
141
142
143
|
# File 'lib/packer/builders/amazon.rb', line 141
def temporary_key_pair_name(name)
self.__add_string('temporary_key_pair_name', name)
end
|
#user_data(data) ⇒ Object
145
146
147
|
# File 'lib/packer/builders/amazon.rb', line 145
def user_data(data)
self.__add_string('user_data', data)
end
|
#user_data_file(file) ⇒ Object
149
150
151
|
# File 'lib/packer/builders/amazon.rb', line 149
def user_data_file(file)
self.__add_string('user_data_file', file)
end
|
#vpc_id(id) ⇒ Object
153
154
155
|
# File 'lib/packer/builders/amazon.rb', line 153
def vpc_id(id)
self.__add_string('vpc_id', id)
end
|