github.com/cptmikhailov/conmon@v2.0.20+incompatible/contrib/cirrus/packer/image-builder-image_base-setup.sh (about) 1 #!/bin/bash 2 3 # This script is called by packer on a vanilla CentOS VM, to setup the image 4 # used for building cache-images from base-images. It's not intended to be used 5 # outside of this context. 6 7 set -e 8 9 [[ "$1" == "post" ]] || exit 0 # pre stage not needed 10 11 # Load in library (copied by packer, before this script was run) 12 source $SRC/$SCRIPT_BASE/lib.sh 13 14 req_env_var " 15 TIMESTAMP $TIMESTAMP 16 SRC $SRC 17 SCRIPT_BASE $SCRIPT_BASE 18 PACKER_BASE $PACKER_BASE 19 " 20 21 install_ooe 22 23 echo "Updating packages" 24 ooe.sh sudo yum -y update 25 26 echo "Configuring repositories" 27 ooe.sh sudo yum -y install centos-release-scl epel-release 28 29 echo "Installing packages" 30 ooe.sh sudo yum -y install \ 31 genisoimage \ 32 gcc \ 33 golang \ 34 google-cloud-sdk \ 35 libvirt \ 36 libvirt-admin \ 37 libvirt-client \ 38 libvirt-daemon \ 39 make \ 40 python34 \ 41 python34 \ 42 python34-PyYAML \ 43 python34-PyYAML \ 44 qemu-img \ 45 qemu-kvm \ 46 qemu-kvm-tools \ 47 qemu-user \ 48 rsync \ 49 unzip \ 50 util-linux \ 51 vim 52 53 sudo ln -s /usr/libexec/qemu-kvm /usr/bin/ 54 55 sudo tee /etc/modprobe.d/kvm-nested.conf <<EOF 56 options kvm-intel nested=1 57 options kvm-intel enable_shadow_vmcs=1 58 options kvm-intel enable_apicv=1 59 options kvm-intel ept=1 60 EOF 61 62 echo "Installing packer" 63 sudo mkdir -p /root/$(basename $PACKER_BASE) 64 sudo cp $SRC/$PACKER_BASE/*packer* /root/$(basename $PACKER_BASE) 65 sudo mkdir -p /root/$(basename $SCRIPT_BASE) 66 sudo cp $SRC/$SCRIPT_BASE/*.sh /root/$(basename $SCRIPT_BASE) 67 68 echo "Cleaning up" 69 cd / 70 rm -rf $SRC 71 72 rh_finalize 73 74 echo "SUCCESS!"