mirror of
https://github.com/hauler-dev/hauler.git
synced 2026-02-14 18:09:51 +00:00
66 lines
2.0 KiB
Ruby
66 lines
2.0 KiB
Ruby
##################################
|
|
# The vagrant-vbguest plugin is required for CentOS 7.
|
|
# Run the following command to install/update this plugin:
|
|
# vagrant plugin install vagrant-vbguest
|
|
##################################
|
|
|
|
Vagrant.configure("2") do |config|
|
|
config.vm.box = "centos/8"
|
|
config.vm.hostname = "airgap"
|
|
config.vm.network "private_network", type: "dhcp"
|
|
|
|
config.vm.synced_folder ".", "/vagrant"
|
|
|
|
config.vm.provider "virtualbox" do |vb|
|
|
vb.memory = "2048"
|
|
vb.cpus = "2"
|
|
|
|
config.vm.provision "airgap", type: "shell", run: "always",
|
|
inline: "/vagrant/vagrant-scripts/airgap.sh airgap"
|
|
end
|
|
|
|
# SELinux is Enforcing by default.
|
|
# To set SELinux as Disabled on a VM that has already been provisioned:
|
|
# SELINUX=Disabled vagrant up --provision-with=selinux
|
|
# To set SELinux as Permissive on a VM that has already been provsioned
|
|
# SELINUX=Permissive vagrant up --provision-with=selinux
|
|
config.vm.provision "selinux", type: "shell", run: "once" do |sh|
|
|
sh.upload_path = "/tmp/vagrant-selinux"
|
|
sh.env = {
|
|
'SELINUX': ENV['SELINUX'] || "Enforcing"
|
|
}
|
|
sh.inline = <<~SHELL
|
|
#!/usr/bin/env bash
|
|
set -eux -o pipefail
|
|
|
|
if ! type -p getenforce setenforce &>/dev/null; then
|
|
echo SELinux is Disabled
|
|
exit 0
|
|
fi
|
|
|
|
case "${SELINUX}" in
|
|
Disabled)
|
|
if mountpoint -q /sys/fs/selinux; then
|
|
setenforce 0
|
|
umount -v /sys/fs/selinux
|
|
fi
|
|
;;
|
|
Enforcing)
|
|
mountpoint -q /sys/fs/selinux || mount -o rw,relatime -t selinuxfs selinuxfs /sys/fs/selinux
|
|
setenforce 1
|
|
;;
|
|
Permissive)
|
|
mountpoint -q /sys/fs/selinux || mount -o rw,relatime -t selinuxfs selinuxfs /sys/fs/selinux
|
|
setenforce 0
|
|
;;
|
|
*)
|
|
echo "SELinux mode not supported: ${SELINUX}" >&2
|
|
exit 1
|
|
;;
|
|
esac
|
|
|
|
echo SELinux is $(getenforce)
|
|
SHELL
|
|
end
|
|
end
|