Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- {
- "variables": {
- "source_path_win10": "source-win10.ova",
- "source_path_win2012_r2": "source-win2012-r2.ova",
- "source_path_win2016": "source-win2016.ova",
- "source_path_win2019": "source-win2019.ova",
- "target_path": "",
- "dvd_drive_letter": "D:",
- "agenda_dvd_source": "D:\\",
- "agenda_target": "C:\\Agenda",
- "agenda_setup_artifacts": "files",
- "agenda_setup_logfilepath": "C:\\Windows\\Temp\\setup\\SetupSilent.log",
- "agenda_setup_additional_options": "",
- "headless": "true",
- "memory": "1536",
- "cpus": "2",
- "shrink_image": "false",
- "output_directory": "output_preinstalled",
- "output_directory_vbox": "VirtualBox",
- "output_directory_vmware": "VMWare",
- "output_directory_vagrant": "Vagrant",
- "username": "agenda-user",
- "password": "agenda",
- "vm_name_prefix": "agenda-preinstalled-",
- "vm_description": "",
- "vm_version": "1.0",
- "vm_name_win10": "win10",
- "vm_name_win2012_r2": "win2012-r2",
- "vm_name_win2016": "win2016",
- "vm_name_win2019": "win2019",
- "vagrantfile_template": "vagrant/vagrantfile-base.template",
- "host_share_name": "packer_share"
- },
- "builders": [
- {
- "type": "vmware-vmx",
- "name": "vmware-preinstalled-win2016",
- "vmx_data": {
- "memsize": "{{ user `memory` }}",
- "numvcpus": "{{ user `cpus` }}",
- "cpuid.coresPerSocket": "{{ user `cpus` }}",
- "virtualHW.version": "12",
- "ide1:0.clientdevice": "TRUE",
- "ide1:0.present": "TRUE",
- "ide1:0.fileName": "{{ user `agenda_setup_artifacts` }}\\iso\\agenda.iso",
- "ide1:0.deviceType": "cdrom-image",
- "isolation.tools.hgfs.disable": "FALSE",
- "sharedFolder0.present": "TRUE",
- "sharedFolder0.enabled": "TRUE",
- "sharedFolder0.readAccess": "TRUE",
- "sharedFolder0.hostPath": "{{ user `agenda_setup_artifacts` }}\\upload",
- "sharedFolder0.guestName": "{{ user `host_share_name` }}",
- "sharedFolder0.expiration": "never",
- "sharedFolder.maxNum": "1",
- "hgfs.mapRootShare": "FALSE"
- },
- "vmx_data_post": {
- "ide1:0.deviceType": "cdrom-raw",
- "ide1:0.fileName": "auto detect",
- "sharedFolder0.present": "FALSE",
- "sharedFolder.maxNum": "0"
- },
- "source_path": "{{ user `source_path_win2016` }}",
- "vm_name": "{{ user `vm_name_prefix` }}{{ user `vm_name_win2016` }}",
- "output_directory": "{{ user `output_directory` }}/{{ user `output_directory_vmware` }}",
- "tools_upload_flavor": "",
- "headless": "{{ user `headless` }}",
- "communicator": "winrm",
- "winrm_username": "{{ user `username` }}",
- "winrm_password": "{{ user `password` }}",
- "winrm_timeout": "1h",
- "floppy_files": [
- "assets/answer_file/win2016/sysprep-autounattend.xml",
- "assets/sysprep/run-sysprep.bat"
- ],
- "shutdown_command": "A:\\run-sysprep.bat",
- "shutdown_timeout": "30m"
- },
- {
- "type": "virtualbox-ovf",
- "name": "vbox-preinstalled-win2019",
- "vboxmanage": [
- [
- "modifyvm",
- "{{ .Name }}",
- "--memory",
- "{{ user `memory` }}"
- ],
- [
- "modifyvm",
- "{{ .Name }}",
- "--cpus",
- "{{ user `cpus` }}"
- ],
- [
- "modifyvm",
- "{{ .Name }}",
- "--vram",
- "256"
- ],
- [
- "modifyvm",
- "{{ .Name }}",
- "--accelerate3d",
- "off"
- ],
- [
- "modifyvm",
- "{{ .Name }}",
- "--accelerate2dvideo",
- "off"
- ],
- [
- "modifyvm",
- "{{ .Name }}",
- "--uart1",
- "0x3F8",
- "4"
- ],
- [
- "modifyvm",
- "{{ .Name }}",
- "--uartmode1",
- "disconnected"
- ],
- [
- "storagectl",
- "{{ .Name }}",
- "--name",
- "SATA Controller",
- "--portcount",
- "2"
- ],
- [
- "storageattach",
- "{{ .Name }}",
- "--storagectl",
- "SATA Controller",
- "--port",
- "1",
- "--type",
- "dvddrive",
- "--medium",
- "{{ user `agenda_setup_artifacts` }}\\iso\\agenda.iso"
- ],
- [
- "sharedfolder",
- "add",
- "{{ .Name }}",
- "--name",
- "{{ user `host_share_name` }}",
- "-hostpath",
- "{{ user `agenda_setup_artifacts` }}\\upload"
- ]
- ],
- "vboxmanage_post": [
- [
- "storageattach",
- "{{ .Name }}",
- "--storagectl",
- "SATA Controller",
- "--port",
- "1",
- "--medium",
- "none"
- ],
- [
- "sharedfolder",
- "remove",
- "{{ .Name }}",
- "--name",
- "{{ user `host_share_name` }}"
- ]
- ],
- "source_path": "{{ user `source_path_win2019` }}",
- "target_path": "{{ user `target_path` }}",
- "format": "ova",
- "export_opts": [
- "--manifest",
- "--vsys",
- "0",
- "--description",
- "{{ user `vm_description` }}",
- "--version",
- "{{ user `vm_version` }}"
- ],
- "vm_name": "{{ user `vm_name_prefix` }}{{ user `vm_name_win2019` }}",
- "output_directory": "{{ user `output_directory` }}/{{ user `output_directory_vbox` }}",
- "guest_additions_mode": "disable",
- "headless": "{{ user `headless` }}",
- "communicator": "winrm",
- "winrm_username": "{{ user `username` }}",
- "winrm_password": "{{ user `password` }}",
- "winrm_timeout": "1h",
- "floppy_files": [
- "assets/answer_file/win2019/sysprep-autounattend.xml",
- "assets/sysprep/run-sysprep.bat"
- ],
- "shutdown_command": "A:\\run-sysprep.bat",
- "shutdown_timeout": "30m",
- "post_shutdown_delay": "1m"
- },
- {
- "type": "virtualbox-ovf",
- "name": "vbox-preinstalled-win2016",
- "vboxmanage": [
- [
- "modifyvm",
- "{{ .Name }}",
- "--memory",
- "{{ user `memory` }}"
- ],
- [
- "modifyvm",
- "{{ .Name }}",
- "--cpus",
- "{{ user `cpus` }}"
- ],
- [
- "modifyvm",
- "{{ .Name }}",
- "--vram",
- "256"
- ],
- [
- "modifyvm",
- "{{ .Name }}",
- "--accelerate3d",
- "off"
- ],
- [
- "modifyvm",
- "{{ .Name }}",
- "--accelerate2dvideo",
- "off"
- ],
- [
- "modifyvm",
- "{{ .Name }}",
- "--uart1",
- "0x3F8",
- "4"
- ],
- [
- "modifyvm",
- "{{ .Name }}",
- "--uartmode1",
- "disconnected"
- ],
- [
- "storagectl",
- "{{ .Name }}",
- "--name",
- "SATA Controller",
- "--portcount",
- "2"
- ],
- [
- "storageattach",
- "{{ .Name }}",
- "--storagectl",
- "SATA Controller",
- "--port",
- "1",
- "--type",
- "dvddrive",
- "--medium",
- "{{ user `agenda_setup_artifacts` }}\\iso\\agenda.iso"
- ],
- [
- "sharedfolder",
- "add",
- "{{ .Name }}",
- "--name",
- "{{ user `host_share_name` }}",
- "-hostpath",
- "{{ user `agenda_setup_artifacts` }}\\upload"
- ]
- ],
- "vboxmanage_post": [
- [
- "storageattach",
- "{{ .Name }}",
- "--storagectl",
- "SATA Controller",
- "--port",
- "1",
- "--medium",
- "none"
- ],
- [
- "sharedfolder",
- "remove",
- "{{ .Name }}",
- "--name",
- "{{ user `host_share_name` }}"
- ]
- ],
- "source_path": "{{ user `source_path_win2016` }}",
- "target_path": "{{ user `target_path` }}",
- "format": "ova",
- "export_opts": [
- "--manifest",
- "--vsys",
- "0",
- "--description",
- "{{ user `vm_description` }}",
- "--version",
- "{{ user `vm_version` }}"
- ],
- "vm_name": "{{ user `vm_name_prefix` }}{{ user `vm_name_win2016` }}",
- "output_directory": "{{ user `output_directory` }}/{{ user `output_directory_vbox` }}",
- "guest_additions_mode": "disable",
- "headless": "{{ user `headless` }}",
- "communicator": "winrm",
- "winrm_username": "{{ user `username` }}",
- "winrm_password": "{{ user `password` }}",
- "winrm_timeout": "1h",
- "floppy_files": [
- "assets/answer_file/win2016/sysprep-autounattend.xml",
- "assets/sysprep/run-sysprep.bat"
- ],
- "shutdown_command": "A:\\run-sysprep.bat",
- "shutdown_timeout": "30m",
- "post_shutdown_delay": "1m"
- },
- {
- "type": "virtualbox-ovf",
- "name": "vbox-preinstalled-win10",
- "vboxmanage": [
- [
- "modifyvm",
- "{{ .Name }}",
- "--memory",
- "{{ user `memory` }}"
- ],
- [
- "modifyvm",
- "{{ .Name }}",
- "--cpus",
- "{{ user `cpus` }}"
- ],
- [
- "modifyvm",
- "{{ .Name }}",
- "--vram",
- "256"
- ],
- [
- "modifyvm",
- "{{ .Name }}",
- "--accelerate3d",
- "off"
- ],
- [
- "modifyvm",
- "{{ .Name }}",
- "--accelerate2dvideo",
- "off"
- ],
- [
- "modifyvm",
- "{{ .Name }}",
- "--uart1",
- "0x3F8",
- "4"
- ],
- [
- "modifyvm",
- "{{ .Name }}",
- "--uartmode1",
- "disconnected"
- ],
- [
- "storagectl",
- "{{ .Name }}",
- "--name",
- "SATA Controller",
- "--portcount",
- "2"
- ],
- [
- "storageattach",
- "{{ .Name }}",
- "--storagectl",
- "SATA Controller",
- "--port",
- "1",
- "--type",
- "dvddrive",
- "--medium",
- "{{ user `agenda_setup_artifacts` }}\\iso\\agenda.iso"
- ],
- [
- "sharedfolder",
- "add",
- "{{ .Name }}",
- "--name",
- "{{ user `host_share_name` }}",
- "-hostpath",
- "{{ user `agenda_setup_artifacts` }}\\upload"
- ]
- ],
- "vboxmanage_post": [
- [
- "storageattach",
- "{{ .Name }}",
- "--storagectl",
- "SATA Controller",
- "--port",
- "1",
- "--medium",
- "none"
- ],
- [
- "sharedfolder",
- "remove",
- "{{ .Name }}",
- "--name",
- "{{ user `host_share_name` }}"
- ]
- ],
- "source_path": "{{ user `source_path_win10` }}",
- "target_path": "{{ user `target_path` }}",
- "format": "ova",
- "export_opts": [
- "--manifest",
- "--vsys",
- "0",
- "--description",
- "{{ user `vm_description` }}",
- "--version",
- "{{ user `vm_version` }}"
- ],
- "vm_name": "{{ user `vm_name_prefix` }}{{ user `vm_name_win10` }}",
- "output_directory": "{{ user `output_directory` }}/{{ user `output_directory_vbox` }}",
- "guest_additions_mode": "disable",
- "headless": "{{ user `headless` }}",
- "communicator": "winrm",
- "winrm_username": "{{ user `username` }}",
- "winrm_password": "{{ user `password` }}",
- "winrm_timeout": "1h",
- "floppy_files": [
- "assets/answer_file/win10/sysprep-autounattend.xml",
- "assets/sysprep/run-sysprep.bat"
- ],
- "shutdown_command": "A:\\run-sysprep.bat",
- "shutdown_timeout": "30m",
- "post_shutdown_delay": "1m"
- },
- {
- "type": "virtualbox-ovf",
- "name": "vbox-preinstalled-win2012-r2",
- "vboxmanage": [
- [
- "modifyvm",
- "{{ .Name }}",
- "--memory",
- "{{ user `memory` }}"
- ],
- [
- "modifyvm",
- "{{ .Name }}",
- "--cpus",
- "{{ user `cpus` }}"
- ],
- [
- "modifyvm",
- "{{ .Name }}",
- "--vram",
- "256"
- ],
- [
- "modifyvm",
- "{{ .Name }}",
- "--accelerate3d",
- "off"
- ],
- [
- "modifyvm",
- "{{ .Name }}",
- "--accelerate2dvideo",
- "off"
- ],
- [
- "modifyvm",
- "{{ .Name }}",
- "--uart1",
- "0x3F8",
- "4"
- ],
- [
- "modifyvm",
- "{{ .Name }}",
- "--uartmode1",
- "disconnected"
- ],
- [
- "storagectl",
- "{{ .Name }}",
- "--name",
- "SATA Controller",
- "--portcount",
- "2"
- ],
- [
- "storageattach",
- "{{ .Name }}",
- "--storagectl",
- "SATA Controller",
- "--port",
- "1",
- "--type",
- "dvddrive",
- "--medium",
- "{{ user `agenda_setup_artifacts` }}\\iso\\agenda.iso"
- ],
- [
- "sharedfolder",
- "add",
- "{{ .Name }}",
- "--name",
- "{{ user `host_share_name` }}",
- "-hostpath",
- "{{ user `agenda_setup_artifacts` }}\\upload"
- ]
- ],
- "vboxmanage_post": [
- [
- "storageattach",
- "{{ .Name }}",
- "--storagectl",
- "SATA Controller",
- "--port",
- "1",
- "--medium",
- "none"
- ],
- [
- "sharedfolder",
- "remove",
- "{{ .Name }}",
- "--name",
- "{{ user `host_share_name` }}"
- ]
- ],
- "source_path": "{{ user `source_path_win2012_r2` }}",
- "target_path": "{{ user `target_path` }}",
- "format": "ova",
- "export_opts": [
- "--manifest",
- "--vsys",
- "0",
- "--description",
- "{{ user `vm_description` }}",
- "--version",
- "{{ user `vm_version` }}"
- ],
- "vm_name": "{{ user `vm_name_prefix` }}{{ user `vm_name_win2012_r2` }}",
- "output_directory": "{{ user `output_directory` }}/{{ user `output_directory_vbox` }}",
- "guest_additions_mode": "disable",
- "headless": "{{ user `headless` }}",
- "communicator": "winrm",
- "winrm_username": "{{ user `username` }}",
- "winrm_password": "{{ user `password` }}",
- "winrm_timeout": "1h",
- "floppy_files": [
- "assets/answer_file/win2012-r2/sysprep-autounattend.xml",
- "assets/sysprep/run-sysprep.bat"
- ],
- "shutdown_command": "A:\\run-sysprep.bat",
- "shutdown_timeout": "30m",
- "post_shutdown_delay": "1m"
- }
- ],
- "provisioners": [
- {
- "type": "powershell",
- "script": "scripts/common/configure-outbound-traffic.ps1",
- "remote_path": "C:/Windows/Temp/scripts/configure-outbound-traffic.ps1",
- "environment_vars": [
- "outboundtraffic_enabled=false"
- ],
- "valid_exit_codes": [
- 0
- ]
- },
- {
- "type": "powershell",
- "inline": [
- "New-Item -Path C:\\Windows\\Temp\\scripts -ItemType Directory -Force",
- "New-Item -Path C:\\Windows\\Temp\\common -ItemType Directory -Force"
- ]
- },
- {
- "type": "powershell",
- "script": "scripts/common/windows-defender.ps1",
- "remote_path": "C:/Windows/Temp/scripts/windows-defender.ps1",
- "environment_vars": [
- "enable_defender=false"
- ],
- "valid_exit_codes": [
- 0
- ],
- "elevated_user": "{{ user `username` }}",
- "elevated_password": "{{ user `password` }}",
- "pause_before": "1m"
- },
- {
- "type": "windows-restart",
- "restart_timeout": "2h"
- },
- {
- "type": "file",
- "source": "assets/common/",
- "destination": "C:/Windows/Temp/common",
- "direction": "upload"
- },
- {
- "type": "powershell",
- "script": "scripts/preinstalled/apply-settings.ps1",
- "remote_path": "C:/Windows/Temp/scripts/apply-settings.ps1",
- "environment_vars": [
- "agenda_target={{ user `agenda_target` }}"
- ],
- "valid_exit_codes": [
- 0
- ]
- },
- {
- "type": "windows-restart",
- "restart_timeout": "2h"
- },
- {
- "type": "powershell",
- "inline": [
- "$ErrorActionPreference = \"Stop\"",
- "cmd.exe /C \"net use X: \\\\VBOXSVR\\{{ user `host_share_name` }} /persistent:no\"",
- "cmd.exe /C \"mklink /D C:\\Windows\\Temp\\setup \\\\VBOXSVR\\{{ user `host_share_name` }}\"",
- "if ($LASTEXITCODE -ne 0) {exit 1}"
- ],
- "only": [
- "vbox-preinstalled-win10",
- "vbox-preinstalled-win2012-r2",
- "vbox-preinstalled-win2016",
- "vbox-preinstalled-win2019"
- ],
- "elevated_user": "{{ user `username` }}",
- "elevated_password": "{{ user `password` }}"
- },
- {
- "type": "powershell",
- "inline": [
- "$ErrorActionPreference = \"Stop\"",
- "cmd.exe /C \"net use X: `\"\\\\vmware-host\\Shared Folders\\{{ user `host_share_name` }}`\" /persistent:no\"",
- "cmd.exe /C \"mklink /D C:\\Windows\\Temp\\setup `\"\\\\vmware-host\\Shared Folders\\{{ user `host_share_name` }}`\"\"",
- "if ($LASTEXITCODE -ne 0) {exit 1}"
- ],
- "only": [
- "vmware-preinstalled-win2016"
- ],
- "elevated_user": "{{ user `username` }}",
- "elevated_password": "{{ user `password` }}"
- },
- {
- "type": "powershell",
- "inline": [
- "$ErrorActionPreference = \"Stop\"",
- "& PsExec -accepteula -s C:\\Windows\\Temp\\setup\\SetupSilent.exe -config:C:\\Windows\\Temp\\setup\\InputConfig.xml -log:{{ user `agenda_setup_logfilepath` }} -teamcity -debug {{ user `agenda_setup_additional_options` }}",
- "if ($LASTEXITCODE -ne 0) {exit 1}"
- ]
- },
- {
- "type": "windows-restart",
- "restart_timeout": "2h"
- },
- {
- "type": "powershell",
- "script": "scripts/common/image-shrink.ps1",
- "remote_path": "C:/Windows/Temp/scripts/image-shrink.ps1",
- "environment_vars": [
- "shrink_image={{ user `shrink_image` }}",
- "sdelete=C:\\Windows\\Temp\\common\\sdelete.exe"
- ],
- "valid_exit_codes": [
- 0
- ]
- },
- {
- "type": "powershell",
- "script": "scripts/common/windows-defender.ps1",
- "remote_path": "C:/Windows/Temp/scripts/windows-defender.ps1",
- "environment_vars": [
- "enable_defender=true"
- ],
- "valid_exit_codes": [
- 0
- ],
- "elevated_user": "{{ user `username` }}",
- "elevated_password": "{{ user `password` }}",
- "pause_before": "1m"
- },
- {
- "type": "powershell",
- "inline": [
- "$ErrorActionPreference = \"Stop\"",
- "cmd.exe /C \"rmdir C:\\Windows\\Temp\\setup\"",
- "if ($LASTEXITCODE -ne 0) {exit 1}",
- "Remove-Item \"C:\\Windows\\Temp\\*\" -Recurse -Force -ErrorAction SilentlyContinue"
- ]
- },
- {
- "type": "powershell",
- "script": "scripts/common/configure-outbound-traffic.ps1",
- "remote_path": "C:/Windows/Temp/scripts/configure-outbound-traffic.ps1",
- "environment_vars": [
- "outboundtraffic_enabled=true"
- ],
- "valid_exit_codes": [
- 0
- ]
- }
- ],
- "post-processors": [
- {
- "type": "vagrant",
- "vagrantfile_template": "{{ user `vagrantfile_template` }}",
- "keep_input_artifact": true,
- "compression_level": 0,
- "output": "{{ user `output_directory` }}/{{ user `output_directory_vagrant` }}/{{ .BuildName }}-vagrant.box"
- }
- ]
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement