# -*- mode: ruby -*-
# vi: set ft=ruby :
# Vagrant configuration file which creates a virtual machine that can run the
# test suite using fedora-test-runner.sh, in an environment similar to the one
# used for automated continuous integration tests (Travis-CI)
#
# To create a new virtual machine:
#
#    vagrant up --provision
#
# To launch tests (for example after modifications to libsepol, libselinux... are made):
#
#    vagrant rsync && echo ./run-selinux-test.sh | vagrant ssh
#
# To destroy the virtual machine (for example to start again from a clean environment):
#
#    vagrant destroy

# Create a helper script in the VM to run the testsuite as root from a clean environment
$script = <<SCRIPT
cat > /home/vagrant/run-selinux-test.sh << EOF
#/bin/sh
set -e -v

# Run the tests
sudo /root/selinux/scripts/ci/fedora-test-runner.sh
echo 'All tests passed :)'
EOF
chmod +x /home/vagrant/run-selinux-test.sh
SCRIPT

# All Vagrant configuration is done below. The "2" in Vagrant.configure
# configures the configuration version (we support older styles for
# backwards compatibility). Please don't change it unless you know what
# you're doing.
Vagrant.configure("2") do |config|
  config.vm.box = "fedora/36-cloud-base"
  config.vm.synced_folder "../..", "/root/selinux"

  config.vm.provider "virtualbox" do |v|
     v.memory = 4096
  end
  config.vm.provider "libvirt" do |v|
     v.memory = 4096
  end

  config.vm.provision :shell, inline: $script
end
