# -*- mode: ruby -*- # vi: set ft=ruby : Vagrant.configure("2") do |config| config.vm.box = "centos/7" config.vm.provider :virtualbox do |v| v.memory = 2048 v.cpus = 2 end config.vm.provider :libvirt do |v| v.memory = 2048 v.cpus = 2 end config.vm.provision "shell", inline: <<-SHELL # configuration GO_VERSION="1.13.11" BATS_VERSION="v1.2.0" # install yum packages yum install -y -q epel-release yum install -y -q gcc git iptables jq libseccomp-devel make yum clean all # install Go curl -fsSL "https://dl.google.com/go/go${GO_VERSION}.linux-amd64.tar.gz" | tar Cxz /usr/local # install bats git clone https://github.com/bats-core/bats-core cd bats-core git checkout $BATS_VERSION ./install.sh /usr/local # NOTE: criu is NOT installed. criu tests are skipped. # set PATH (NOTE: sudo without -i ignores this PATH) cat >> /etc/profile.d/sh.local <<EOF PATH=/usr/local/go/bin:/usr/local/bin:$PATH export PATH EOF source /etc/profile.d/sh.local # sysctl echo "user.max_user_namespaces=15076" > /etc/sysctl.d/userns.conf sysctl --system # Add a user for rootless tests useradd -u2000 -m -d/home/rootless -s/bin/bash rootless # Add busybox for libcontainer/integration tests . /vagrant/tests/integration/multi-arch.bash \ && mkdir /busybox \ && curl -fsSL $(get_busybox) | tar xfJC - /busybox SHELL end