Add Packer template from b1-systems/packer-templates
This packer template is usded to create the packstack-vagrant basebox and should be part of packstack-vagrant. Change-Id: I8283faaeafb12b9c8be7c85b3fc9ee093cbf154e
This commit is contained in:

committed by
Christian Berendt

parent
5b68c5f03e
commit
e342568a87
4
packer/.gitignore
vendored
Normal file
4
packer/.gitignore
vendored
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
packer_cache
|
||||||
|
output-virtualbox-iso
|
||||||
|
*.box
|
||||||
|
build.*
|
43
packer/centos-packstack-7.0.json
Normal file
43
packer/centos-packstack-7.0.json
Normal file
@@ -0,0 +1,43 @@
|
|||||||
|
{
|
||||||
|
"builders": [
|
||||||
|
{
|
||||||
|
"vm_name": "centos-packstack",
|
||||||
|
"type": "virtualbox-iso",
|
||||||
|
"http_directory": "http",
|
||||||
|
"iso_url": "http://ftp.halifax.rwth-aachen.de/centos/7.0.1406/isos/x86_64/CentOS-7.0-1406-x86_64-DVD.iso",
|
||||||
|
"iso_checksum": "713ea7847adcdd1700e92429f212721a",
|
||||||
|
"iso_checksum_type": "md5",
|
||||||
|
"guest_os_type": "RedHat_64",
|
||||||
|
"guest_additions_path": "VBoxGuestAdditions_{{.Version}}.iso",
|
||||||
|
"virtualbox_version_file": ".vbox_version",
|
||||||
|
"ssh_username": "vagrant",
|
||||||
|
"ssh_password": "vagrant",
|
||||||
|
"ssh_wait_timeout": "10000s",
|
||||||
|
"headless": "true",
|
||||||
|
"boot_command": [
|
||||||
|
"<tab> text ks=http://{{ .HTTPIP }}:{{ .HTTPPort}}/ks.cfg<enter>"
|
||||||
|
],
|
||||||
|
"shutdown_command": "echo 'vagrant'|sudo -S shutdown -P now",
|
||||||
|
"disk_size": 16384,
|
||||||
|
"hard_drive_interface": "sata",
|
||||||
|
"vboxmanage": [
|
||||||
|
["storagectl", "{{.Name}}", "--name", "SATA Controller", "--portcount", "4"]
|
||||||
|
]
|
||||||
|
}],
|
||||||
|
"provisioners": [{
|
||||||
|
"type": "shell",
|
||||||
|
"execute_command": "echo 'vagrant' | {{.Vars}} sudo -E -S bash '{{.Path}}'",
|
||||||
|
"scripts": [
|
||||||
|
"scripts/update.sh",
|
||||||
|
"scripts/vbox.sh",
|
||||||
|
"scripts/sshd.sh",
|
||||||
|
"scripts/vagrant.sh",
|
||||||
|
"scripts/cleanup.sh"
|
||||||
|
]
|
||||||
|
}],
|
||||||
|
"post-processors": [{
|
||||||
|
"type": "vagrant",
|
||||||
|
"keep_input_artifact": false,
|
||||||
|
"output": "centos-packstack-7.0.box"
|
||||||
|
}]
|
||||||
|
}
|
81
packer/http/ks.cfg
Normal file
81
packer/http/ks.cfg
Normal file
@@ -0,0 +1,81 @@
|
|||||||
|
lang en_US.UTF-8
|
||||||
|
keyboard us
|
||||||
|
rootpw vagrant
|
||||||
|
authconfig --enableshadow --enablemd5
|
||||||
|
timezone UTC
|
||||||
|
install
|
||||||
|
cdrom
|
||||||
|
user --name=vagrant --plaintext --password vagrant
|
||||||
|
unsupported_hardware
|
||||||
|
network --bootproto=dhcp
|
||||||
|
firewall --disabled
|
||||||
|
selinux --disabled
|
||||||
|
bootloader --location=mbr
|
||||||
|
text
|
||||||
|
skipx
|
||||||
|
zerombr
|
||||||
|
clearpart --all --initlabel
|
||||||
|
autopart --type=plain
|
||||||
|
firstboot --disabled
|
||||||
|
reboot
|
||||||
|
|
||||||
|
%packages --nobase --ignoremissing --excludedocs
|
||||||
|
openssh-clients
|
||||||
|
kernel-headers
|
||||||
|
kernel-devel
|
||||||
|
gcc
|
||||||
|
make
|
||||||
|
perl
|
||||||
|
curl
|
||||||
|
wget
|
||||||
|
bzip2
|
||||||
|
dkms
|
||||||
|
patch
|
||||||
|
net-tools
|
||||||
|
git
|
||||||
|
sudo
|
||||||
|
nfs-utils
|
||||||
|
-fprintd-pam
|
||||||
|
-intltool
|
||||||
|
-aic94xx-firmware
|
||||||
|
-atmel-firmware
|
||||||
|
-b43-openfwwf
|
||||||
|
-bfa-firmware
|
||||||
|
-ipw2100-firmware
|
||||||
|
-ipw2200-firmware
|
||||||
|
-ivtv-firmware
|
||||||
|
-iwl100-firmware
|
||||||
|
-iwl1000-firmware
|
||||||
|
-iwl105-firmware
|
||||||
|
-iwl135-firmware
|
||||||
|
-iwl2000-firmware
|
||||||
|
-iwl2030-firmware
|
||||||
|
-iwl3160-firmware
|
||||||
|
-iwl3945-firmware
|
||||||
|
-iwl4965-firmware
|
||||||
|
-iwl5000-firmware
|
||||||
|
-iwl5150-firmware
|
||||||
|
-iwl6000-firmware
|
||||||
|
-iwl6000g2a-firmware
|
||||||
|
-iwl6000g2b-firmware
|
||||||
|
-iwl6050-firmware
|
||||||
|
-iwl7260-firmware
|
||||||
|
-libertas-usb8388-firmware
|
||||||
|
-ql2100-firmware
|
||||||
|
-ql2200-firmware
|
||||||
|
-ql23xx-firmware
|
||||||
|
-ql2400-firmware
|
||||||
|
-ql2500-firmware
|
||||||
|
-rt61pci-firmware
|
||||||
|
-rt73usb-firmware
|
||||||
|
-xorg-x11-drv-ati-firmware
|
||||||
|
-zd1211-firmware
|
||||||
|
|
||||||
|
%end
|
||||||
|
|
||||||
|
%post
|
||||||
|
echo "%vagrant ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers.d/vagrant
|
||||||
|
cp /etc/sudoers /etc/sudoers.orig
|
||||||
|
sed -i "s/^\(.*requiretty\)$/#\1/" /etc/sudoers
|
||||||
|
echo 'Defaults env_keep += "HTTP_PROXY HTTPS_PROXY FTP_PROXY RSYNC_PROXY NO_PROXY"' >> /etc/sudoers
|
||||||
|
%end
|
7
packer/scripts/cleanup.sh
Normal file
7
packer/scripts/cleanup.sh
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
rm -rf /dev/.udev/
|
||||||
|
rm -rf /tmp/*
|
||||||
|
dd if=/dev/zero of=/EMPTY bs=1M
|
||||||
|
rm -f /EMPTY
|
||||||
|
sync
|
4
packer/scripts/sshd.sh
Normal file
4
packer/scripts/sshd.sh
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
echo "UseDNS no" >> /etc/ssh/sshd_config
|
||||||
|
echo "GSSAPIAuthentication no" >> /etc/ssh/sshd_config
|
4
packer/scripts/update.sh
Normal file
4
packer/scripts/update.sh
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
yum update -y
|
||||||
|
reboot
|
8
packer/scripts/vagrant.sh
Normal file
8
packer/scripts/vagrant.sh
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
mkdir /home/vagrant/.ssh
|
||||||
|
wget --no-check-certificate \
|
||||||
|
'https://github.com/mitchellh/vagrant/raw/master/keys/vagrant.pub' \
|
||||||
|
-O /home/vagrant/.ssh/authorized_keys
|
||||||
|
chown -R vagrant /home/vagrant/.ssh
|
||||||
|
chmod -R go-rwsx /home/vagrant/.ssh
|
12
packer/scripts/vbox.sh
Normal file
12
packer/scripts/vbox.sh
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
VBOX_VERSION=$(cat /home/vagrant/.vbox_version)
|
||||||
|
mount -o loop /home/vagrant/VBoxGuestAdditions_$VBOX_VERSION.iso /mnt
|
||||||
|
sh /mnt/VBoxLinuxAdditions.run --nox11
|
||||||
|
umount /mnt
|
||||||
|
rm -rf /home/vagrant/VBoxGuestAdditions_$VBOX_VERSION.iso
|
||||||
|
rm -f /home/vagrant/.vbox_version
|
||||||
|
if [[ $VBOX_VERSION = "4.3.10" ]]; then
|
||||||
|
ln -s /opt/VBoxGuestAdditions-4.3.10/lib/VBoxGuestAdditions /usr/lib/VBoxGuestAdditions
|
||||||
|
fi
|
||||||
|
yum -y remove gcc cpp kernel-devel kernel-headers perl
|
Reference in New Issue
Block a user