Skip to content

Commit 457fe40

Browse files
committed
Added the following builds:
eval-win2008r2-standard eval-win2012r2-standard win2012r2-standardcore win2012r2-standardcore-cygwin eval-win2008r2-datacenter-cygwin eval-win2008r2-standard eval-win2008r2-standard-cygwin eval-win2012r2-datacenter-cygwin eval-win2012r2-standard eval-win2012r2-standard-cygwin eval-win7x64-enterprise-cygwin eval-win81x64-enterprise-cygwin Fixed Makefile to allow packer.exe to be renamed Simplified Makefile by moving cygwin builds into BUILDBOX macro
1 parent a424a47 commit 457fe40

39 files changed

+2274
-67
lines changed

Makefile

+57-67
Original file line numberDiff line numberDiff line change
@@ -62,12 +62,12 @@ endif
6262
# Packer does not allow empty variables, so only pass variables that are defined
6363
PACKER_VARS := -var 'cm=$(CM)' -var 'version=$(BOX_VERSION)' -var 'update=$(UPDATE)'
6464
ifdef CM_VERSION
65-
PACKER_VARS := $(PACKER_VARS) -var 'cm_version=$(CM_VERSION)'
65+
PACKER_VARS += -var 'cm_version=$(CM_VERSION)'
6666
endif
67+
PACKER ?= packer
6768
ifdef PACKER_DEBUG
68-
PACKER := PACKER_LOG=1 packer --debug
69+
PACKER := PACKER_LOG=1 $(PACKER) --debug
6970
else
70-
PACKER := packer
7171
endif
7272
BUILDER_TYPES ?= vmware virtualbox
7373
ifeq ($(OS),Windows_NT)
@@ -228,7 +228,7 @@ eval-openssh: eval-win2012r2-datacenter eval-win2008r2-datacenter eval-win81x64-
228228

229229
test-eval-openssh: test-eval-win2012r2-datacenter test-eval-win2008r2-datacenter test-eval-win81x64-enterprise test-eval-win7x64-enterprise
230230

231-
define buildbox
231+
define BUILDBOX
232232

233233
$(VIRTUALBOX_BOX_DIR)/$(1)$(BOX_SUFFIX): $(1).json
234234
rm -rf $(VIRTUALBOX_OUTPUT)
@@ -245,95 +245,80 @@ $(PARALLELS_BOX_DIR)/$(1)$(BOX_SUFFIX): $(1).json
245245
mkdir -p $(PARALLELS_BOX_DIR)
246246
packer build -only=$(PARALLELS_BUILDER) $(PACKER_VARS) -var "iso_url=$(2)" -var "iso_checksum=$(3)" $(1).json
247247

248-
endef
249-
250-
$(eval $(call buildbox,win2008r2-datacenter,$(WIN2008R2_X64),$(WIN2008R2_X64_CHECKSUM)))
251-
252-
$(eval $(call buildbox,eval-win2008r2-datacenter,$(EVAL_WIN2008R2_X64),$(EVAL_WIN2008R2_X64_CHECKSUM)))
253-
254-
$(eval $(call buildbox,win2008r2-enterprise,$(WIN2008R2_X64),$(WIN2008R2_X64_CHECKSUM)))
255-
256-
$(eval $(call buildbox,win2008r2-standard,$(WIN2008R2_X64),$(WIN2008R2_X64_CHECKSUM)))
257-
258-
$(eval $(call buildbox,win2008r2-web,$(WIN2008R2_X64),$(WIN2008R2_X64_CHECKSUM)))
259-
260-
$(eval $(call buildbox,win2008r2-datacenter-cygwin,$(WIN2008R2_X64),$(WIN2008R2_X64_CHECKSUM)))
261-
262-
$(eval $(call buildbox,win2008r2-enterprise-cygwin,$(WIN2008R2_X64),$(WIN2008R2_X64_CHECKSUM)))
263-
264-
$(eval $(call buildbox,win2008r2-standard-cygwin,$(WIN2008R2_X64),$(WIN2008R2_X64_CHECKSUM)))
265-
266-
$(eval $(call buildbox,win2008r2-web-cygwin,$(WIN2008R2_X64),$(WIN2008R2_X64_CHECKSUM)))
267-
268-
$(eval $(call buildbox,win2012-datacenter,$(WIN2012_X64),$(WIN2012_X64_CHECKSUM)))
269-
270-
$(eval $(call buildbox,win2012-standard,$(WIN2012_X64),$(WIN2012_X64_CHECKSUM)))
271-
272-
$(eval $(call buildbox,win2012-datacenter-cygwin,$(WIN2012_X64),$(WIN2012_X64_CHECKSUM)))
273-
274-
$(eval $(call buildbox,win2012-standard-cygwin,$(WIN2012_X64),$(WIN2012_X64_CHECKSUM)))
248+
$(VIRTUALBOX_BOX_DIR)/$(1)-cygwin$(BOX_SUFFIX): $(1)-cygwin.json
249+
rm -rf $(VIRTUALBOX_OUTPUT)
250+
mkdir -p $(VIRTUALBOX_BOX_DIR)
251+
packer build -only=$(VIRTUALBOX_BUILDER) $(PACKER_VARS) -var "iso_url=$(2)" -var "iso_checksum=$(3)" $(1)-cygwin.json
275252

276-
$(eval $(call buildbox,win2012r2-datacenter,$(WIN2012R2_X64),$(WIN2012R2_X64_CHECKSUM)))
253+
$(VMWARE_BOX_DIR)/$(1)-cygwin$(BOX_SUFFIX): $(1)-cygwin.json
254+
rm -rf $(VMWARE_OUTPUT)
255+
mkdir -p $(VMWARE_BOX_DIR)
256+
packer build -only=$(VMWARE_BUILDER) $(PACKER_VARS) -var "iso_url=$(2)" -var "iso_checksum=$(3)" $(1)-cygwin.json
277257

278-
$(eval $(call buildbox,eval-win2012r2-datacenter,$(EVAL_WIN2012R2_X64),$(EVAL_WIN2012R2_X64_CHECKSUM)))
258+
$(PARALLELS_BOX_DIR)/$(1)-cygwin$(BOX_SUFFIX): $(1)-cygwin.json
259+
rm -rf $(PARALLELS_OUTPUT)
260+
mkdir -p $(PARALLELS_BOX_DIR)
261+
packer build -only=$(PARALLELS_BUILDER) $(PACKER_VARS) -var "iso_url=$(2)" -var "iso_checksum=$(3)" $(1)-cygwin.json
279262

280-
$(eval $(call buildbox,win2012r2-standard,$(WIN2012R2_X64),$(WIN2012R2_X64_CHECKSUM)))
263+
endef
281264

282-
$(eval $(call buildbox,win2012r2-datacenter-cygwin,$(WIN2012R2_X64),$(WIN2012R2_X64_CHECKSUM)))
265+
$(eval $(call BUILDBOX,win2008r2-datacenter,$(WIN2008R2_X64),$(WIN2008R2_X64_CHECKSUM)))
283266

284-
$(eval $(call buildbox,win2012r2-standard-cygwin,$(WIN2012R2_X64),$(WIN2012R2_X64_CHECKSUM)))
267+
$(eval $(call BUILDBOX,eval-win2008r2-datacenter,$(EVAL_WIN2008R2_X64),$(EVAL_WIN2008R2_X64_CHECKSUM)))
285268

286-
$(eval $(call buildbox,win7x64-enterprise,$(WIN7_X64_ENTERPRISE),$(WIN7_X64_ENTERPRISE_CHECKSUM)))
269+
$(eval $(call BUILDBOX,win2008r2-enterprise,$(WIN2008R2_X64),$(WIN2008R2_X64_CHECKSUM)))
287270

288-
$(eval $(call buildbox,eval-win7x64-enterprise,$(EVAL_WIN7_X64),$(EVAL_WIN7_X64_CHECKSUM)))
271+
$(eval $(call BUILDBOX,win2008r2-standard,$(WIN2008R2_X64),$(WIN2008R2_X64_CHECKSUM)))
289272

290-
$(eval $(call buildbox,win7x86-enterprise,$(WIN7_X86_ENTERPRISE),$(WIN7_X86_ENTERPRISE_CHECKSUM)))
273+
$(eval $(call BUILDBOX,eval-win2008r2-standard,$(EVAL_WIN2008R2_X64),$(EVAL_WIN2008R2_X64_CHECKSUM)))
291274

292-
$(eval $(call buildbox,win7x64-pro,$(WIN7_X64_PRO),$(WIN7_X64_PRO_CHECKSUM)))
275+
$(eval $(call BUILDBOX,win2008r2-web,$(WIN2008R2_X64),$(WIN2008R2_X64_CHECKSUM)))
293276

294-
$(eval $(call buildbox,win7x86-pro,$(WIN7_X86_PRO),$(WIN7_X86_PRO_CHECKSUM)))
277+
$(eval $(call BUILDBOX,win2012-datacenter,$(WIN2012_X64),$(WIN2012_X64_CHECKSUM)))
295278

296-
$(eval $(call buildbox,win7x64-enterprise-cygwin,$(WIN7_X64_ENTERPRISE),$(WIN7_X64_ENTERPRISE_CHECKSUM)))
279+
$(eval $(call BUILDBOX,win2012-standard,$(WIN2012_X64),$(WIN2012_X64_CHECKSUM)))
297280

298-
$(eval $(call buildbox,win7x86-enterprise-cygwin,$(WIN7_X86_ENTERPRISE),$(WIN7_X86_ENTERPRISE_CHECKSUM)))
281+
$(eval $(call BUILDBOX,win2012r2-datacenter,$(WIN2012R2_X64),$(WIN2012R2_X64_CHECKSUM)))
299282

300-
$(eval $(call buildbox,win7x64-pro-cygwin,$(WIN7_X64_PRO),$(WIN7_X64_PRO_CHECKSUM)))
283+
$(eval $(call BUILDBOX,eval-win2012r2-datacenter,$(EVAL_WIN2012R2_X64),$(EVAL_WIN2012R2_X64_CHECKSUM)))
301284

302-
$(eval $(call buildbox,win7x86-pro-cygwin,$(WIN7_X86_PRO),$(WIN7_X86_PRO_CHECKSUM)))
285+
$(eval $(call BUILDBOX,win2012r2-standard,$(WIN2012R2_X64),$(WIN2012R2_X64_CHECKSUM)))
303286

304-
$(eval $(call buildbox,win8x64-enterprise,$(WIN8_X64_ENTERPRISE),$(WIN8_X64_ENTERPRISE_CHECKSUM)))
287+
$(eval $(call BUILDBOX,eval-win2012r2-standard,$(EVAL_WIN2012R2_X64),$(EVAL_WIN2012R2_X64_CHECKSUM)))
305288

306-
$(eval $(call buildbox,win8x64-pro,$(WIN8_X64_PRO),$(WIN8_X64_PRO_CHECKSUM)))
289+
$(eval $(call BUILDBOX,win2012r2-standardcore,$(WIN2012R2_X64),$(WIN2012R2_X64_CHECKSUM)))
307290

308-
$(eval $(call buildbox,win8x86-enterprise,$(WIN8_X86_ENTERPRISE),$(WIN8_X86_ENTERPRISE_CHECKSUM)))
291+
$(eval $(call BUILDBOX,win7x64-enterprise,$(WIN7_X64_ENTERPRISE),$(WIN7_X64_ENTERPRISE_CHECKSUM)))
309292

310-
$(eval $(call buildbox,win8x86-pro,$(WIN8_X86_PRO),$(WIN8_X86_PRO_CHECKSUM)))
293+
$(eval $(call BUILDBOX,eval-win7x64-enterprise,$(EVAL_WIN7_X64),$(EVAL_WIN7_X64_CHECKSUM)))
311294

312-
$(eval $(call buildbox,win8x64-enterprise-cygwin,$(WIN8_X64_ENTERPRISE),$(WIN8_X64_ENTERPRISE_CHECKSUM)))
295+
$(eval $(call BUILDBOX,win7x86-enterprise,$(WIN7_X86_ENTERPRISE),$(WIN7_X86_ENTERPRISE_CHECKSUM)))
313296

314-
$(eval $(call buildbox,win8x64-pro-cygwin,$(WIN8_X64_PRO),$(WIN8_X64_PRO_CHECKSUM)))
297+
$(eval $(call BUILDBOX,win7x64-pro,$(WIN7_X64_PRO),$(WIN7_X64_PRO_CHECKSUM)))
315298

316-
$(eval $(call buildbox,win8x86-enterprise-cygwin,$(WIN8_X86_ENTERPRISE),$(WIN8_X86_ENTERPRISE_CHECKSUM)))
299+
$(eval $(call BUILDBOX,win7x86-pro,$(WIN7_X86_PRO),$(WIN7_X86_PRO_CHECKSUM)))
317300

318-
$(eval $(call buildbox,win8x86-pro-cygwin,$(WIN8_X86_PRO),$(WIN8_X86_PRO_CHECKSUM)))
301+
$(eval $(call BUILDBOX,win8x64-enterprise,$(WIN8_X64_ENTERPRISE),$(WIN8_X64_ENTERPRISE_CHECKSUM)))
319302

320-
$(eval $(call buildbox,win81x64-enterprise,$(WIN81_X64_ENTERPRISE),$(WIN81_X64_ENTERPRISE_CHECKSUM)))
303+
$(eval $(call BUILDBOX,win8x64-pro,$(WIN8_X64_PRO),$(WIN8_X64_PRO_CHECKSUM)))
321304

322-
$(eval $(call buildbox,eval-win81x64-enterprise,$(EVAL_WIN81_X64),$(EVAL_WIN81_X64_CHECKSUM)))
305+
$(eval $(call BUILDBOX,win8x86-enterprise,$(WIN8_X86_ENTERPRISE),$(WIN8_X86_ENTERPRISE_CHECKSUM)))
323306

324-
$(eval $(call buildbox,win81x86-enterprise,$(WIN81_X86_ENTERPRISE),$(WIN81_X86_ENTERPRISE_CHECKSUM)))
307+
$(eval $(call BUILDBOX,win8x86-pro,$(WIN8_X86_PRO),$(WIN8_X86_PRO_CHECKSUM)))
325308

326-
$(eval $(call buildbox,win81x64-pro,$(WIN81_X64_PRO),$(WIN81_X64_PRO_CHECKSUM)))
309+
$(eval $(call BUILDBOX,win81x64-enterprise,$(WIN81_X64_ENTERPRISE),$(WIN81_X64_ENTERPRISE_CHECKSUM)))
327310

328-
$(eval $(call buildbox,win81x86-pro,$(WIN81_X86_PRO),$(WIN81_X86_PRO_CHECKSUM)))
311+
$(eval $(call BUILDBOX,eval-win81x64-enterprise,$(EVAL_WIN81_X64),$(EVAL_WIN81_X64_CHECKSUM)))
329312

330-
$(eval $(call buildbox,win81x64-enterprise-cygwin,$(WIN81_X64_ENTERPRISE),$(WIN81_X64_ENTERPRISE_CHECKSUM)))
313+
$(eval $(call BUILDBOX,win81x86-enterprise,$(WIN81_X86_ENTERPRISE),$(WIN81_X86_ENTERPRISE_CHECKSUM)))
331314

332-
$(eval $(call buildbox,win81x86-enterprise-cygwin,$(WIN81_X86_ENTERPRISE),$(WIN81_X86_ENTERPRISE_CHECKSUM)))
315+
$(eval $(call BUILDBOX,win81x64-pro,$(WIN81_X64_PRO),$(WIN81_X64_PRO_CHECKSUM)))
333316

334-
$(eval $(call buildbox,win81x64-pro-cygwin,$(WIN81_X64_PRO),$(WIN81_X64_PRO_CHECKSUM)))
317+
$(eval $(call BUILDBOX,win81x86-pro,$(WIN81_X86_PRO),$(WIN81_X86_PRO_CHECKSUM)))
335318

336-
$(eval $(call buildbox,win81x86-pro-cygwin,$(WIN81_X86_PRO),$(WIN81_X86_PRO_CHECKSUM)))
319+
# can't find powershell:
320+
#$(eval $(call BUILDBOX,win2008r2-standardcore,$(WIN2008R2_X64),$(WIN2008R2_X64_CHECKSUM)))
321+
#$(eval $(call BUILDBOX,win2008r2-standardcore-cygwin,$(WIN2008R2_X64),$(WIN2008R2_X64_CHECKSUM)))
337322

338323
# Generic rule - not used currently
339324
#$(VMWARE_BOX_DIR)/%$(BOX_SUFFIX): %.json
@@ -350,17 +335,22 @@ $(eval $(call buildbox,win81x86-pro-cygwin,$(WIN81_X86_PRO),$(WIN81_X86_PRO_CHEC
350335
# packer build -only=virtualbox-iso $(PACKER_VARS) $<
351336

352337
list:
338+
@echo "To build for all target platforms:"
339+
@echo " make win7x64-pro"
340+
@echo ""
353341
@echo "Prepend 'vmware/' or 'virtualbox/' to build only one target platform:"
354-
@echo " make vmware/win7x64"
342+
@echo " make vmware/win7x64-pro"
343+
@echo ""
344+
@echo "Append '-cygwin' to use Cygwin's SSH instead of OpenSSH:"
345+
@echo " make win7x64-pro-cygwin"
355346
@echo ""
356-
@echo "Append '-cygwin' to build with Cygwin SSH instead of the default"
357-
@echo "OpenSSH:"
358-
@echo " make win7x64-cygwin"
347+
@echo "Or to build for vmware only:"
348+
@echo " make vmware/win7x64-pro-cygwin"
359349
@echo ""
360350
@echo "Targets:"
361351
@for shortcut_target in $(SHORTCUT_TARGETS) ; do \
362352
echo $$shortcut_target ; \
363-
done
353+
done | sort
364354

365355
validate:
366356
@for template_filename in $(TEMPLATE_FILENAMES) ; do \

eval-win2008r2-datacenter-cygwin.json

+107
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,107 @@
1+
{
2+
"variables": {
3+
"version": "0.1.0",
4+
"cm": "chef",
5+
"cm_version": "",
6+
"iso_url": "http://download.microsoft.com/download/7/5/E/75EC4E54-5B02-42D6-8879-D8D3A25FBEF7/7601.17514.101119-1850_x64fre_server_eval_en-us-GRMSXEVAL_EN_DVD.iso",
7+
"iso_checksum": "beed231a34e90e1dd9a04b3afabec31d62ce3889",
8+
"update": true
9+
},
10+
"builders": [
11+
{
12+
"vm_name": "eval-win2008r2-datacenter-cygwin",
13+
"type": "vmware-iso",
14+
"guest_os_type": "windows7srv-64",
15+
"iso_url": "{{ user `iso_url` }}",
16+
"iso_checksum": "{{ user `iso_checksum` }}",
17+
"iso_checksum_type": "sha1",
18+
"ssh_username": "vagrant",
19+
"ssh_password": "vagrant",
20+
"ssh_wait_timeout": "10000s",
21+
"floppy_files": [
22+
"floppy/win2008r2-datacenter/Autounattend.xml",
23+
"floppy/00-run-all-scripts.cmd",
24+
"floppy/install-winrm.cmd",
25+
"floppy/powerconfig.bat",
26+
"floppy/01-install-wget.cmd",
27+
"floppy/_download.cmd",
28+
"floppy/_packer_config.cmd",
29+
"floppy/passwordchange.bat",
30+
"floppy/cygwin.bat",
31+
"floppy/cygwin.sh",
32+
"floppy/zz-start-sshd.cmd"
33+
],
34+
"tools_upload_flavor": "windows",
35+
"shutdown_command": "shutdown /s /t 10 /f /d p:4:1 /c 'Packer Shutdown'",
36+
"disk_size": 40960,
37+
"vmx_data": {
38+
"memsize": "768",
39+
"numvcpus": "1",
40+
"cpuid.coresPerSocket": "1"
41+
}
42+
},
43+
{
44+
"vm_name": "eval-win2008r2-datacenter-cygwin",
45+
"type": "virtualbox-iso",
46+
"guest_os_type": "Windows2008_64",
47+
"iso_url": "{{ user `iso_url` }}",
48+
"iso_checksum": "{{ user `iso_checksum` }}",
49+
"iso_checksum_type": "sha1",
50+
"ssh_username": "vagrant",
51+
"ssh_password": "vagrant",
52+
"ssh_wait_timeout": "10000s",
53+
"floppy_files": [
54+
"floppy/win2008r2-datacenter/Autounattend.xml",
55+
"floppy/00-run-all-scripts.cmd",
56+
"floppy/install-winrm.cmd",
57+
"floppy/powerconfig.bat",
58+
"floppy/01-install-wget.cmd",
59+
"floppy/_download.cmd",
60+
"floppy/_packer_config.cmd",
61+
"floppy/passwordchange.bat",
62+
"floppy/cygwin.bat",
63+
"floppy/cygwin.sh",
64+
"floppy/zz-start-sshd.cmd",
65+
"floppy/oracle-cert.cer"
66+
],
67+
"shutdown_command": "shutdown /s /t 10 /f /d p:4:1 /c 'Packer Shutdown'",
68+
"disk_size": 40960,
69+
"vboxmanage": [
70+
["modifyvm", "{{.Name}}", "--memory", "768"],
71+
["modifyvm", "{{.Name}}", "--cpus", "1"]
72+
]
73+
}
74+
],
75+
"provisioners": [
76+
{
77+
"type": "shell",
78+
"remote_path": "/tmp/script.bat",
79+
"environment_vars": [
80+
"CM={{user `cm`}}",
81+
"CM_VERSION={{user `cm_version`}}",
82+
"UPDATE={{user `update`}}"
83+
],
84+
"execute_command": "{{.Vars}} cmd /c C:/Windows/Temp/script.bat",
85+
"scripts": [
86+
"script/vagrant.bat",
87+
"script/cmtool.bat",
88+
"script/vmtool.bat",
89+
"script/clean.bat",
90+
"script/ultradefrag.bat",
91+
"script/uninstall-7zip.bat",
92+
"script/sdelete.bat"
93+
]
94+
},
95+
{
96+
"type": "shell",
97+
"inline": ["rm -f /tmp/script.bat"]
98+
}
99+
],
100+
"post-processors": [{
101+
"type": "vagrant",
102+
"keep_input_artifact": false,
103+
"compression_level": 1,
104+
"vagrantfile_template": "tpl/vagrantfile-eval-win2008r2-datacenter-cygwin.tpl",
105+
"output": "box/{{.Provider}}/eval-win2008r2-datacenter-cygwin-{{user `cm`}}{{user `cm_version`}}-{{user `version`}}.box"
106+
}]
107+
}

0 commit comments

Comments
 (0)