File: Vagrantfile

package info (click to toggle)
golang-github-libvirt-libvirt-go 6.0.0%2Bgit20200210.224cad8-2
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, bullseye, forky, sid, trixie
  • size: 1,284 kB
  • sloc: ansic: 3,782; ruby: 84; makefile: 3
file content (87 lines) | stat: -rw-r--r-- 4,052 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
# -*- mode: ruby -*-
# vi: set ft=ruby :

#######################################################################################################
#
# 	If you get problems about guest additions versions, please get this plugin to fix it up:
#
#		vagrant plugin install vagrant-vbguest
#
#######################################################################################################

require './vagrant-provision-reboot-plugin'

VAGRANTFILE_API_VERSION = "2"

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
  config.vm.box = "rafacas/fedora19-plain"

  config.vm.provider "virtualbox" do |v|
     v.cpus = 8
  end
  config.vm.provision "shell", privileged: true, inline: <<-EOF
    set -e
    echo "Installing LXC + libvirt dependencies"
	yum -y install cyrus-sasl-devel device-mapper-devel gnutls-devel \
	libxml2-devel cyrus-sasl-md5 gnutls-utils nc numactl numactl-libs libwsman1 \
	libwsman-devel avahi-devel e2fsprogs-devel libcap-ng-devel libnl-devel \
	libpciaccess-devel libselinux-devel libssh2-devel libudev-devel netcf-devel \
	numactl-devel parted-devel python-devel readline-devel xen-devel xhtml1-dtds \
	xmlrpc-c-devel yajl-devel pm-utils dmidecode libcgroup numad iptables-ipv6 \
	radvd lzop glusterfs-client iscsi-initiator-utils sheepdog fuse-libs \
	glusterfs-api librados2 librbd1 qemu-img lxc qemu-system-x86

	echo "Download libvirt 1.2.2 RPMs"
	mkdir -p /tmp/rpms && cd /tmp/rpms
	wget -N http://libvirt.org/sources/libvirt-client-1.2.2-1.fc19.x86_64.rpm \
	http://libvirt.org/sources/libvirt-daemon-1.2.2-1.fc19.x86_64.rpm \
	http://libvirt.org/sources/libvirt-daemon-config-network-1.2.2-1.fc19.x86_64.rpm \
	http://libvirt.org/sources/libvirt-daemon-config-nwfilter-1.2.2-1.fc19.x86_64.rpm \
	http://libvirt.org/sources/libvirt-daemon-driver-interface-1.2.2-1.fc19.x86_64.rpm \
	http://libvirt.org/sources/libvirt-daemon-driver-libxl-1.2.2-1.fc19.x86_64.rpm \
	http://libvirt.org/sources/libvirt-daemon-driver-lxc-1.2.2-1.fc19.x86_64.rpm \
	http://libvirt.org/sources/libvirt-daemon-driver-network-1.2.2-1.fc19.x86_64.rpm \
	http://libvirt.org/sources/libvirt-daemon-driver-nodedev-1.2.2-1.fc19.x86_64.rpm \
	http://libvirt.org/sources/libvirt-daemon-driver-nwfilter-1.2.2-1.fc19.x86_64.rpm \
	http://libvirt.org/sources/libvirt-daemon-driver-qemu-1.2.2-1.fc19.x86_64.rpm \
	http://libvirt.org/sources/libvirt-daemon-driver-secret-1.2.2-1.fc19.x86_64.rpm \
	http://libvirt.org/sources/libvirt-daemon-driver-storage-1.2.2-1.fc19.x86_64.rpm \
	http://libvirt.org/sources/libvirt-daemon-driver-uml-1.2.2-1.fc19.x86_64.rpm \
	http://libvirt.org/sources/libvirt-daemon-driver-vbox-1.2.2-1.fc19.x86_64.rpm \
	http://libvirt.org/sources/libvirt-daemon-driver-xen-1.2.2-1.fc19.x86_64.rpm \
	http://libvirt.org/sources/libvirt-daemon-lxc-1.2.2-1.fc19.x86_64.rpm \
	http://libvirt.org/sources/libvirt-devel-1.2.2-1.fc19.x86_64.rpm \
	http://libvirt.org/sources/libvirt-docs-1.2.2-1.fc19.x86_64.rpm

	echo "Installing libvirt RPMs"
	cd /tmp/rpms
	# sigh, bad rpm
	yum -y install *.rpm || true

    GOVERSION="1.3.3"
    GOTARBALL="go${GOVERSION}.linux-amd64.tar.gz"
    export GOROOT=/usr/local/go
    export GOPATH=/opt/go
    export PATH=$PATH:$GOROOT/bin:$GOPATH/bin
    echo "Installing Go $GOVERSION"
    if [ ! $(which go) ]; then
    echo " Downloading $GOTARBALL"
    wget --quiet --directory-prefix=/tmp https://storage.googleapis.com/golang/$GOTARBALL
    echo " Extracting $GOTARBALL to $GOROOT"
    tar -C /usr/local -xzf /tmp/$GOTARBALL
    echo " Configuring GOPATH"
    mkdir -p $GOPATH/src $GOPATH/bin $GOPATH/pkg
    chown -R vagrant $GOPATH
    echo " Configuring env vars"
    echo "export PATH=\$PATH:$GOROOT/bin:$GOPATH/bin" | tee /etc/profile.d/golang.sh > /dev/null
    echo "export GOROOT=$GOROOT" | tee --append /etc/profile.d/golang.sh > /dev/null
    echo "export GOPATH=$GOPATH" | tee --append /etc/profile.d/golang.sh > /dev/null
    fi

    systemctl enable lxc
    systemctl enable libvirtd
  EOF

  config.vm.provision :unix_reboot
  config.vm.synced_folder "..", "/opt/go/src/libvirt"
end