@@ -22,6 +22,8 @@ packer {
22
22
23
23
variable "vagrant_box" { type = string }
24
24
variable "output_directory" { type = string }
25
+ variable "iso_url" { type = string }
26
+ variable "iso_checksum" { type = string }
25
27
26
28
// Ansible provisioning settings
27
29
variable "artifactory_api_key" {
@@ -42,13 +44,13 @@ variable "user_username" {
42
44
}
43
45
44
46
// Basic hardware specs
45
- variable "cpu_count " {
47
+ variable "cpus " {
46
48
type = number
47
49
default = " 2"
48
50
}
49
- variable "ram_gb " {
51
+ variable "ram_mb " {
50
52
type = number
51
- default = " 4 "
53
+ default = 4096
52
54
}
53
55
variable "disk_size" {
54
56
type = string
@@ -130,10 +132,10 @@ source "hyperv-iso" "ubuntu" {
130
132
disk_size = " ${ var . disk_size } "
131
133
enable_secure_boot = false
132
134
generation = " ${ var . hyperv_generation } "
133
- http_directory = " ${ local . http_directory } "
134
- iso_checksum = " ${ var . iso_checksum_type } : ${ var . iso_checksum } "
135
- iso_url = " ${ var . mirror } / ${ var . mirror_directory } / ${ var . iso_name } "
136
- memory = " ${ var . memory } "
135
+ http_directory = " ./http "
136
+ iso_checksum = " ${ var . iso_checksum } "
137
+ iso_url = " ${ var . iso_url } "
138
+ ram_gb = " ${ var . ram_mb } / 1024 "
137
139
output_directory = " ${ var . build_directory } /packer-${ var . template } -hyperv"
138
140
shutdown_command = " echo 'vagrant' | sudo -S shutdown -P now"
139
141
ssh_password = " vagrant"
@@ -149,16 +151,14 @@ source "virtualbox-iso" "ubuntu" {
149
151
boot_wait = " 4s"
150
152
cpus = " ${ var . cpus } "
151
153
disk_size = " ${ var . disk_size } "
152
- guest_additions_path = " VBoxGuestAdditions_{{ .Version }}.iso"
153
- guest_additions_url = " ${ var . guest_additions_url } "
154
154
guest_os_type = " Ubuntu_64"
155
155
hard_drive_interface = " sata"
156
156
headless = " ${ var . headless } "
157
- http_directory = " ${ local . http_directory } "
158
- iso_checksum = " ${ var . iso_checksum_type } : ${ var . iso_checksum } "
159
- iso_url = " ${ var . mirror } / ${ var . mirror_directory } / ${ var . iso_name } "
160
- memory = " ${ var . memory } "
161
- output_directory = " ${ var . build_directory } /packer- ${ var . template } - virtualbox"
157
+ http_directory = " ./http "
158
+ iso_checksum = " ${ var . iso_checksum } "
159
+ iso_url = " ${ var . iso_url } "
160
+ memory = " ${ var . ram_mb } "
161
+ output_directory = " ${ var . output_directory } / virtualbox"
162
162
shutdown_command = " echo 'vagrant' | sudo -S shutdown -P now"
163
163
ssh_handshake_attempts = 20
164
164
ssh_password = " vagrant"
@@ -167,7 +167,7 @@ source "virtualbox-iso" "ubuntu" {
167
167
ssh_username = " vagrant"
168
168
vboxmanage = [[" modifyvm" , " {{ .Name }}" , " --clipboard-mode" , " bidirectional" ], [" modifyvm" , " {{ .Name }}" , " --graphicscontroller" , " vmsvga" ], [" modifyvm" , " {{ .Name }}" , " --accelerate3d" , " on" ], [" storageattach" , " {{ .Name }}" , " --storagectl" , " SATA Controller" , " --port" , " 1" , " --device" , " 0" , " --type" , " dvddrive" , " --medium" , " emptydrive" ]]
169
169
virtualbox_version_file = " .vbox_version"
170
- vm_name = " ${ var . template } "
170
+ vm_name = " ${ var . vagrant_box } "
171
171
}
172
172
173
173
source "vmware-iso" "ubuntu" {
@@ -177,19 +177,19 @@ source "vmware-iso" "ubuntu" {
177
177
disk_size = " ${ var . disk_size } "
178
178
guest_os_type = " ubuntu-64"
179
179
headless = " ${ var . headless } "
180
- http_directory = " ${ local . http_directory } "
181
- iso_checksum = " ${ var . iso_checksum_type } : ${ var . iso_checksum } "
182
- iso_url = " ${ var . mirror } / ${ var . mirror_directory } / ${ var . iso_name } "
183
- memory = " ${ var . memory } "
180
+ http_directory = " ./http "
181
+ iso_checksum = " ${ var . iso_checksum } "
182
+ iso_url = " ${ var . iso_url } "
183
+ memory = " ${ var . ram_mb } "
184
184
network_adapter_type = " VMXNET3"
185
- output_directory = " ${ var . build_directory } /packer- ${ var . template } - vmware"
185
+ output_directory = " ${ var . output_directory } / vmware"
186
186
shutdown_command = " echo 'vagrant' | sudo -S shutdown -P now"
187
187
ssh_password = " vagrant"
188
188
ssh_port = 22
189
189
ssh_timeout = " 1h"
190
190
ssh_username = " vagrant"
191
191
tools_upload_flavor = " "
192
- vm_name = " ${ var . template } "
192
+ vm_name = " ${ var . vagrant_box } "
193
193
vmx_data = {
194
194
" cpuid.coresPerSocket" = " 1"
195
195
" disk.EnableUUID" = " TRUE"
@@ -219,10 +219,10 @@ source "vsphere-iso" "ubuntu" {
219
219
disk_thin_provisioned = true
220
220
}
221
221
guest_os_type = " ubuntu64Guest"
222
- http_directory = " ${ local . http_directory } "
223
- iso_checksum = " ${ var . iso_checksum_type } : ${ var . iso_checksum } "
224
- iso_url = " ${ var . mirror } / ${ var . mirror_directory } / ${ var . iso_name } "
225
- RAM = " ${ var . memory } "
222
+ http_directory = " ./http "
223
+ iso_checksum = " ${ var . iso_checksum } "
224
+ iso_url = " ${ var . iso_url } "
225
+ memory = " ${ var . ram_mb } "
226
226
shutdown_command = " echo 'vagrant' | sudo -S /sbin/halt -h -p"
227
227
ssh_password = " vagrant"
228
228
ssh_port = 22
@@ -240,7 +240,7 @@ source "vsphere-iso" "ubuntu" {
240
240
# https://www.packer.io/docs/templates/hcl_templates/blocks/build
241
241
build {
242
242
sources = [
243
- " source.hyperv-iso.ubuntu" ,
243
+ // "source.hyperv-iso.ubuntu",
244
244
" source.virtualbox-iso.ubuntu" ,
245
245
" source.vmware-iso.ubuntu" ,
246
246
" source.vsphere-iso.ubuntu"
0 commit comments