This repository has been archived by the owner on Aug 23, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 3
/
packer.json
180 lines (180 loc) · 8 KB
/
packer.json
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
{
"variables": {
"hostname": "idoitappliance",
"ssh_username": "idoit",
"ssh_password": "idoit",
"root_password": "idoit",
"iso": "https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/debian-10.6.0-amd64-netinst.iso",
"checksum": "https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/SHA512SUMS",
"vm_name": "i-doit-virtual-appliance-debian-10-amd64",
"cpus": "2",
"memory": "4096",
"disk_size": "20480"
},
"builders": [
{
"name": "virtualbox",
"type": "virtualbox-iso",
"boot_command": [
"<esc><wait>",
"install <wait>",
"preseed/url=http://{{ .HTTPIP }}:{{ .HTTPPort }}/preseed_buster.cfg <wait>",
"debian-installer=en_US.UTF-8 <wait>",
"auto <wait>",
"locale=en_US.UTF-8 <wait>",
"kbd-chooser/method=us <wait>",
"keyboard-configuration/xkb-keymap=us <wait>",
"netcfg/get_hostname={{user `hostname`}} <wait>",
"netcfg/get_domain=example.com <wait>",
"fb=false <wait>",
"debconf/frontend=noninteractive <wait>",
"console-setup/ask_detect=false <wait>",
"console-keymaps-at/keymap=us <wait>",
"passwd/root-password=\"{{user `root_password`}}\" <wait>",
"passwd/root-password-again=\"{{user `root_password`}}\" <wait>",
"passwd/username=\"{{user `ssh_username`}}\" <wait>",
"passwd/user-fullname=\"{{user `ssh_username`}}\" <wait>",
"passwd/user-password=\"{{user `ssh_password`}}\" <wait>",
"passwd/user-password-again=\"{{user `ssh_password`}}\" <wait>",
"<enter><wait>"
],
"boot_wait": "10s",
"cpus": "{{user `cpus`}}",
"disk_size": "{{user `disk_size`}}",
"format": "ovf",
"guest_os_type": "Debian_64",
"headless": true,
"http_directory": "http",
"iso_checksum_type": "sha512",
"iso_checksum_url": "{{user `checksum`}}",
"iso_url": "{{user `iso`}}",
"memory": "{{user `memory`}}",
"output_directory": "builds/{{user `vm_name`}}-virtualbox",
"ssh_username": "{{user `ssh_username`}}",
"ssh_password": "{{user `ssh_password`}}",
"ssh_port": 22,
"ssh_wait_timeout": "10000s",
"shutdown_command": "echo '/sbin/shutdown -h -P now' > /tmp/shutdown.sh; echo '{{user `ssh_password`}}' | sudo -S sh '/tmp/shutdown.sh'",
"shutdown_timeout": "60s",
"virtualbox_version_file": ".vbox_version",
"vm_name": "{{user `vm_name`}}-virtualbox"
},
{
"name": "vmware",
"type": "vmware-iso",
"boot_command": [
"<esc><wait>",
"install <wait>",
"preseed/url=http://{{ .HTTPIP }}:{{ .HTTPPort }}/preseed_buster.cfg <wait>",
"debian-installer=en_US.UTF-8 <wait>",
"auto <wait>",
"locale=en_US.UTF-8 <wait>",
"kbd-chooser/method=us <wait>",
"keyboard-configuration/xkb-keymap=us <wait>",
"netcfg/get_hostname={{user `hostname`}} <wait>",
"netcfg/get_domain=example.com <wait>",
"fb=false <wait>",
"debconf/frontend=noninteractive <wait>",
"console-setup/ask_detect=false <wait>",
"console-keymaps-at/keymap=us <wait>",
"passwd/root-password=\"{{user `root_password`}}\" <wait>",
"passwd/root-password-again=\"{{user `root_password`}}\" <wait>",
"passwd/username=\"{{user `ssh_username`}}\" <wait>",
"passwd/user-fullname=\"{{user `ssh_username`}}\" <wait>",
"passwd/user-password=\"{{user `ssh_password`}}\" <wait>",
"passwd/user-password-again=\"{{user `ssh_password`}}\" <wait>",
"<enter><wait>"
],
"boot_wait": "10s",
"cpus": "{{user `cpus`}}",
"disk_type_id": 4,
"disk_size": "{{user `disk_size`}}",
"guest_os_type": "debian9-64",
"headless": true,
"http_directory": "http",
"iso_checksum_type": "sha512",
"iso_checksum_url": "{{user `checksum`}}",
"iso_url": "{{user `iso`}}",
"memory": "{{user `memory`}}",
"output_directory": "builds/{{user `vm_name`}}-vmware",
"shutdown_command": "echo '/sbin/shutdown -h -P now' > /tmp/shutdown.sh; echo '{{user `ssh_password`}}' | sudo -S sh '/tmp/shutdown.sh'",
"shutdown_timeout": "60s",
"ssh_password": "{{user `ssh_password`}}",
"ssh_port": 22,
"ssh_username": "{{user `ssh_username`}}",
"ssh_wait_timeout": "10000s",
"version": "13",
"vm_name": "{{user `vm_name`}}-vmware"
},
{
"name": "hyper-v",
"type": "hyperv-iso",
"boot_command": [
"<esc><wait>",
"install <wait>",
"preseed/url=http://{{ .HTTPIP }}:{{ .HTTPPort }}/preseed_buster_hyper-v.cfg <wait>",
"debian-installer=en_US.UTF-8 <wait>",
"auto <wait>",
"locale=en_US.UTF-8 <wait>",
"kbd-chooser/method=us <wait>",
"keyboard-configuration/xkb-keymap=us <wait>",
"netcfg/get_hostname={{user `hostname`}} <wait>",
"netcfg/get_domain=example.com <wait>",
"fb=false <wait>",
"debconf/frontend=noninteractive <wait>",
"console-setup/ask_detect=false <wait>",
"console-keymaps-at/keymap=us <wait>",
"passwd/root-password=\"{{user `root_password`}}\" <wait>",
"passwd/root-password-again=\"{{user `root_password`}}\" <wait>",
"passwd/username=\"{{user `ssh_username`}}\" <wait>",
"passwd/user-fullname=\"{{user `ssh_username`}}\" <wait>",
"passwd/user-password=\"{{user `ssh_password`}}\" <wait>",
"passwd/user-password-again=\"{{user `ssh_password`}}\" <wait>",
"<enter><wait>"
],
"boot_wait": "20s",
"communicator": "ssh",
"cpus": "{{user `cpus`}}",
"disk_size": "{{user `disk_size`}}",
"generation": 1,
"headless": false,
"http_directory": "http",
"iso_checksum_type": "sha512",
"iso_checksum_url": "{{user `checksum`}}",
"iso_url": "{{user `iso`}}",
"memory": "{{user `memory`}}",
"ssh_username": "{{user `ssh_username`}}",
"ssh_password": "{{user `ssh_password`}}",
"ssh_port": 22,
"ssh_timeout" : "2h",
"output_directory": "builds/{{user `vm_name`}}-hyper-v",
"shutdown_command": "echo '/sbin/shutdown -h -P now' > /tmp/shutdown.sh; echo '{{user `ssh_password`}}' | sudo -S sh '/tmp/shutdown.sh'",
"shutdown_timeout": "60s",
"vm_name": "{{user `vm_name`}}-hyper-v",
"mac_address": "0000deadbeef",
"ssh_host": "10.10.60.55"
}
],
"provisioners": [
{
"type": "file",
"source": "./bin/",
"destination": "/tmp"
},
{
"type": "file",
"source": "./etc/",
"destination": "/tmp"
},
{
"type": "file",
"source": "./dotfiles/",
"destination": "/tmp"
},
{
"type": "shell",
"execute_command": "echo '{{user `ssh_password`}}' | {{.Vars}} IVA_USER=\"{{user `ssh_username`}}\" IVA_HOSTNAME=\"{{user `hostname`}}\" sudo -E -S bash '{{.Path}}'",
"script": "./deploy"
}
]
}