template.json
----------------------------------
{
"variables": {
"ssh_name": "packer",
"ssh_pass": "packer",
"username" : "root",
"password" : "vagrant",
"autologin" : "true"
},
"builders": [
{
"type": "vmware-iso",
"boot_command": [
"<tab> text ks=http://{{ .HTTPIP }}:{{ .HTTPPort }}/ks1.cfg<enter><wait>"
],
"boot_wait": "20s",
"disk_size": 40520,
"guest_os_type": "centos-64",
"http_directory": "http",
"iso_checksum_type": "sha256",
"iso_checksum" : "907e5755f824c5848b9c8efbb484f3cd945e93faa024bad6ba875226f9683b16",
"output_directory" : "C:/Users/miracle/Desktop/MSBImage8",
"communicator" : "ssh",
"ssh_username": "root",
"ssh_password" : "vagrant",
"ssh_port": 22,
"ssh_wait_timeout": "10000s",
"ssh_pty" : "true",
"shutdown_command": "echo {{user `vagrant`}} | sudo -S shutdown -P now",
"tools_upload_flavor": "linux",
"vmx_data": {
"memsize": "512",
"numvcpus": "1",
"cpuid.coresPerSocket": "1"
}
}
],
"provisioners": [
{
"type": "shell",
"override": {
"vmware-iso":
{
"execute_command" : "echo 'vagrant' | {{ .Vars }} sudo -E -S sh '{{ .Path }}'",
"inline" : [ "su -c 'yum install java-1.8.0-openjdk java-1.8.0-openjdk-devel' ",
"su -c 'yum install tomcat -y' "
]
}
}
}
],
"post-processors": [
{
"type": "vagrant",
"override":
{
"vmware":
{
"output": "centos-7-1-x64-vmware.box"
}
}
}
]
}
---------------------------------------------
ks1.cfg
-----------
install
cdrom
lang en_US.UTF-8
keyboard us
network --onboot yes --device eth0 --bootproto dhcp --noipv6
rootpw --plaintext vagrant
firewall --enabled --service=ssh
authconfig --enableshadow --passalgo=sha256
selinux --disabled
timezone Asia/Kolkata
bootloader --location=mbr --driveorder=sda --append="crashkernel=auto rhgb quiet"
text
skipx
zerombr
clearpart --all --initlabel
autopart
auth --useshadow --enablemd5
firstboot --disabled
reboot
%packages --ignoremissing
@core
bzip2
kernel-devel
kernel-headers
-ipw2100-firmware
-ipw2200-firmware
-ivtv-firmware
%end
%post
# sudo
echo "%vagrant ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers.d/vagrant
sed -i "s/^[^#].*requiretty/#Defaults requiretty/" /etc/sudoers
%end