# -*- 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 set -e -u -o pipefail # configuration GO_VERSION="1.13.11" BATS_VERSION="v1.2.0" # install yum packages yum install -y -q epel-release (cd /etc/yum.repos.d && curl -O https://copr.fedorainfracloud.org/coprs/adrian/criu-el7/repo/epel-7/adrian-criu-el7-epel-7.repo) yum install -y -q gcc git iptables jq libseccomp-devel make skopeo criu yum clean all # install Go curl -fsSL "https://dl.google.com/go/go${GO_VERSION}.linux-amd64.tar.gz" | tar Cxz /usr/local # Install umoci curl -o /usr/local/bin/umoci -fsSL https://github.com/opencontainers/umoci/releases/download/v0.4.5/umoci.amd64 chmod +x /usr/local/bin/umoci # install bats git clone https://github.com/bats-core/bats-core cd bats-core git checkout $BATS_VERSION ./install.sh /usr/local # set PATH (NOTE: sudo without -i ignores this PATH) cat >> /etc/profile.d/sh.local < /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