Created
September 4, 2020 20:58
-
-
Save cmbits/ae9ba8ef31032bc85597a6e5a3485d23 to your computer and use it in GitHub Desktop.
Packer buildfile for Windows template creation in vSphere content library
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"builders": [ | |
{ | |
"CPUs": "{{user `vm-cpu-num`}}", | |
"RAM": "{{user `vm-mem-size`}}", | |
"RAM_reserve_all": "false", | |
"boot_command": [ | |
"<tab><wait><tab>" | |
], | |
"boot_wait": "-1s", | |
"cluster": "{{user `vsphere-cluster`}}", | |
"communicator": "winrm", | |
"convert_to_template": "false", | |
"datacenter": "{{user `vsphere-datacenter`}}", | |
"datastore": "{{user `vsphere-datastore`}}", | |
"disk_controller_type": "lsilogic-sas", | |
"firmware": "efi", | |
"cdrom_type": "sata", | |
"floppy_files": [ | |
"2016/gui/autounattend.xml", | |
"scripts/disable-network-discovery.cmd", | |
"scripts/disable-winrm.ps1", | |
"scripts/enable-winrm.ps1", | |
"scripts/install-vcredist.ps1", | |
"scripts/install-vmtools.ps1", | |
"scripts/save_shutdown_command.ps1", | |
"scripts/vmxnet3/vmxnet3.cat", | |
"scripts/vmxnet3/vmxnet3.inf", | |
"scripts/vmxnet3/vmxnet3.sys", | |
"scripts/vmxnet3/vmxnet3ver.dll" | |
], | |
"folder": "{{user `vsphere-folder`}}", | |
"content_library_destination" : { | |
"library": "Public", | |
"ovf": "true", | |
"name": "2016GUICloudInit-OVF", | |
"destroy": "true" | |
}, | |
"guest_os_type": "windows9Server64Guest", | |
"insecure_connection": "true", | |
"iso_paths": [ | |
"{{user `os-iso-path-win2016`}}" | |
], | |
"name": "2016GUICloudInit", | |
"network_adapters": [ | |
{ | |
"network": "{{user `vsphere-network`}}", | |
"network_card": "vmxnet3" | |
} | |
], | |
"notes": "Built via Packer", | |
"password": "{{user `vsphere-password`}}", | |
"remove_cdrom": "false", | |
"shutdown_command": "C:/Windows/packer/PackerShutdown.bat", | |
"shutdown_timeout": "2h", | |
"storage": [ | |
{ | |
"disk_size": "{{user `vm-disk-size`}}", | |
"disk_thin_provisioned": true | |
} | |
], | |
"type": "vsphere-iso", | |
"username": "{{user `vsphere-user`}}", | |
"vcenter_server": "{{user `vsphere-server`}}", | |
"vm_name": "Template-Win2016-GUI-CloudInit-OVF", | |
"vm_version": "{{user `vm-version`}}", | |
"winrm_password": "{{user `winadmin-password`}}", | |
"winrm_username": "Administrator" | |
}, | |
{ | |
"CPUs": "{{user `vm-cpu-num`}}", | |
"RAM": "{{user `vm-mem-size`}}", | |
"RAM_reserve_all": "false", | |
"boot_command": [ | |
"<tab><wait><tab>" | |
], | |
"boot_wait": "-1s", | |
"cluster": "{{user `vsphere-cluster`}}", | |
"communicator": "winrm", | |
"convert_to_template": "false", | |
"datacenter": "{{user `vsphere-datacenter`}}", | |
"datastore": "{{user `vsphere-datastore`}}", | |
"disk_controller_type": "lsilogic-sas", | |
"firmware": "efi", | |
"cdrom_type": "sata", | |
"floppy_files": [ | |
"2016/core/autounattend.xml", | |
"scripts/disable-network-discovery.cmd", | |
"scripts/disable-winrm.ps1", | |
"scripts/enable-winrm.ps1", | |
"scripts/install-vcredist.ps1", | |
"scripts/install-vmtools.ps1", | |
"scripts/save_shutdown_command.ps1", | |
"scripts/vmxnet3/vmxnet3.cat", | |
"scripts/vmxnet3/vmxnet3.inf", | |
"scripts/vmxnet3/vmxnet3.sys", | |
"scripts/vmxnet3/vmxnet3ver.dll" | |
], | |
"folder": "{{user `vsphere-folder`}}", | |
"content_library_destination" : { | |
"library": "Public", | |
"ovf": "true", | |
"name": "2016CoreCloudInit-OVF", | |
"destroy": "true" | |
}, | |
"guest_os_type": "windows9Server64Guest", | |
"insecure_connection": "true", | |
"iso_paths": [ | |
"{{user `os-iso-path-win2016`}}" | |
], | |
"name": "2016CoreCloudInit", | |
"network_adapters": [ | |
{ | |
"network": "{{user `vsphere-network`}}", | |
"network_card": "vmxnet3" | |
} | |
], | |
"notes": "Built via Packer", | |
"password": "{{user `vsphere-password`}}", | |
"remove_cdrom": "false", | |
"shutdown_command": "C:/Windows/packer/PackerShutdown.bat", | |
"shutdown_timeout": "2h", | |
"storage": [ | |
{ | |
"disk_size": "{{user `vm-disk-size`}}", | |
"disk_thin_provisioned": true | |
} | |
], | |
"type": "vsphere-iso", | |
"username": "{{user `vsphere-user`}}", | |
"vcenter_server": "{{user `vsphere-server`}}", | |
"vm_name": "Template-Win2016-Core-CloudInit-OVF", | |
"vm_version": "{{user `vm-version`}}", | |
"winrm_password": "{{user `winadmin-password`}}", | |
"winrm_username": "Administrator" | |
}, | |
{ | |
"CPUs": "{{user `vm-cpu-num`}}", | |
"RAM": "{{user `vm-mem-size`}}", | |
"RAM_reserve_all": "false", | |
"boot_command": [ | |
"<tab><wait><tab>" | |
], | |
"boot_wait": "-1s", | |
"cluster": "{{user `vsphere-cluster`}}", | |
"communicator": "winrm", | |
"convert_to_template": "false", | |
"datacenter": "{{user `vsphere-datacenter`}}", | |
"datastore": "{{user `vsphere-datastore`}}", | |
"disk_controller_type": "lsilogic-sas", | |
"firmware": "efi", | |
"cdrom_type": "sata", | |
"floppy_files": [ | |
"2019/gui/autounattend.xml", | |
"scripts/disable-network-discovery.cmd", | |
"scripts/disable-winrm.ps1", | |
"scripts/enable-winrm.ps1", | |
"scripts/install-vmtools.ps1", | |
"scripts/save_shutdown_command.ps1", | |
"scripts/vmxnet3/vmxnet3.cat", | |
"scripts/vmxnet3/vmxnet3.inf", | |
"scripts/vmxnet3/vmxnet3.sys", | |
"scripts/vmxnet3/vmxnet3ver.dll" | |
], | |
"folder": "{{user `vsphere-folder`}}", | |
"content_library_destination" : { | |
"library": "Public", | |
"ovf": "true", | |
"name": "2019GUICloudInit-OVF", | |
"destroy": "true" | |
}, | |
"guest_os_type": "windows2019srv_64Guest", | |
"insecure_connection": "true", | |
"iso_paths": [ | |
"{{user `os-iso-path-win2019`}}" | |
], | |
"name": "2019GUICloudInit", | |
"network_adapters": [ | |
{ | |
"network": "{{user `vsphere-network`}}", | |
"network_card": "vmxnet3" | |
} | |
], | |
"notes": "Built via Packer", | |
"password": "{{user `vsphere-password`}}", | |
"remove_cdrom": "false", | |
"shutdown_command": "C:/Windows/packer/PackerShutdown.bat", | |
"shutdown_timeout": "2h", | |
"storage": [ | |
{ | |
"disk_size": "{{user `vm-disk-size`}}", | |
"disk_thin_provisioned": true | |
} | |
], | |
"type": "vsphere-iso", | |
"username": "{{user `vsphere-user`}}", | |
"vcenter_server": "{{user `vsphere-server`}}", | |
"vm_name": "Template-Win2019-GUI-CloudInit-OVF", | |
"vm_version": "{{user `vm-version`}}", | |
"winrm_password": "{{user `winadmin-password`}}", | |
"winrm_username": "Administrator" | |
}, | |
{ | |
"CPUs": "{{user `vm-cpu-num`}}", | |
"RAM": "{{user `vm-mem-size`}}", | |
"RAM_reserve_all": "false", | |
"boot_command": [ | |
"<tab><wait><tab>" | |
], | |
"boot_wait": "-1s", | |
"cluster": "{{user `vsphere-cluster`}}", | |
"communicator": "winrm", | |
"convert_to_template": "false", | |
"datacenter": "{{user `vsphere-datacenter`}}", | |
"datastore": "{{user `vsphere-datastore`}}", | |
"disk_controller_type": "lsilogic-sas", | |
"firmware": "efi", | |
"cdrom_type": "sata", | |
"floppy_files": [ | |
"2019/core/autounattend.xml", | |
"scripts/disable-network-discovery.cmd", | |
"scripts/disable-winrm.ps1", | |
"scripts/enable-winrm.ps1", | |
"scripts/install-vmtools.ps1", | |
"scripts/save_shutdown_command.ps1", | |
"scripts/vmxnet3/vmxnet3.cat", | |
"scripts/vmxnet3/vmxnet3.inf", | |
"scripts/vmxnet3/vmxnet3.sys", | |
"scripts/vmxnet3/vmxnet3ver.dll" | |
], | |
"folder": "{{user `vsphere-folder`}}", | |
"content_library_destination" : { | |
"library": "Public", | |
"ovf": "true", | |
"name": "2019CoreCloudInit-OVF", | |
"destroy": "true" | |
}, | |
"guest_os_type": "windows2019srv_64Guest", | |
"insecure_connection": "true", | |
"iso_paths": [ | |
"{{user `os-iso-path-win2019`}}" | |
], | |
"name": "2019CoreCloudInit", | |
"network_adapters": [ | |
{ | |
"network": "{{user `vsphere-network`}}", | |
"network_card": "vmxnet3" | |
} | |
], | |
"notes": "Built via Packer", | |
"password": "{{user `vsphere-password`}}", | |
"remove_cdrom": "false", | |
"shutdown_command": "C:/Windows/packer/PackerShutdown.bat", | |
"shutdown_timeout": "2h", | |
"storage": [ | |
{ | |
"disk_size": "{{user `vm-disk-size`}}", | |
"disk_thin_provisioned": true | |
} | |
], | |
"type": "vsphere-iso", | |
"username": "{{user `vsphere-user`}}", | |
"vcenter_server": "{{user `vsphere-server`}}", | |
"vm_name": "Template-Win2019-Core-CloudInit-OVF", | |
"vm_version": "{{user `vm-version`}}", | |
"winrm_password": "{{user `winadmin-password`}}", | |
"winrm_username": "Administrator" | |
} | |
], | |
"provisioners": [ | |
{ | |
"inline": [ | |
"ipconfig" | |
], | |
"type": "windows-shell" | |
}, | |
{ | |
"script": "scripts/install-cloudinit.ps1", | |
"type": "powershell" | |
}, | |
{ | |
"script": "scripts/version-template.ps1", | |
"type": "powershell" | |
}, | |
{ | |
"type": "windows-update" | |
}, | |
{ | |
"script": "scripts/save_shutdown_command.ps1", | |
"type": "powershell" | |
} | |
], | |
"sensitive-variables": [ | |
"vsphere-password", | |
"winadmin-password" | |
], | |
"variables": { | |
"os-iso-path-win2016": "[vsanDatastore] ISOs/SW_DVD9_Win_Svr_STD_Core_and_DataCtr_Core_2016_64Bit_English_-3_MLF_X21-30350.ISO", | |
"os-iso-path-win2019": "[vsanDatastore] ISOs/SW_DVD9_Win_Server_STD_CORE_2019_1809.2_64Bit_English_DC_STD_MLF_X22-18452.ISO", | |
"os_iso_path": "[vsanDatastore] ISOs/", | |
"tools-iso-path-11": "[vsanDatastore] ISOs/Tools/vmware-tools-windows-11.0.6-15940789.iso", | |
"vm-cpu-num": "2", | |
"vm-disk-size": "81920", | |
"vm-mem-size": "8192", | |
"vm-name": "Windows-packer", | |
"vm-version": "17", | |
"vsphere-cluster": "Cluster", | |
"vsphere-datacenter": "Datacenter", | |
"vsphere-datastore": "vsanDatastore", | |
"vsphere-folder": "Templates", | |
"vsphere-network": "", | |
"vsphere-password": "", | |
"vsphere-server": "", | |
"vsphere-user": "", | |
"winadmin-password": "" |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment