39 lines
1.6 KiB
Ruby

# Copyright (c) HashiCorp, Inc.
# SPDX-License-Identifier: BUSL-1.1
module VagrantPlugins
module PodmanProvisioner
module Cap
module Centos
module PodmanInstall
def self.podman_install(machine, kubic)
if kubic
# Official install instructions for podman
# https://podman.io/getting-started/installation.html
case machine.guest.capability("flavor")
when :centos_7
machine.communicate.tap do |comm|
comm.sudo("curl -L -o /etc/yum.repos.d/devel:kubic:libcontainers:stable.repo https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/CentOS_7/devel:kubic:libcontainers:stable.repo")
comm.sudo("yum -q -y install podman")
end
when :centos_8
machine.communicate.tap do |comm|
comm.sudo("dnf -y module disable container-tools &> /dev/null || echo 'container-tools module does not exist'")
comm.sudo("dnf -y install 'dnf-command(copr)'")
comm.sudo("dnf -y copr enable rhcontainerbot/container-selinux")
comm.sudo("curl -L -o /etc/yum.repos.d/devel:kubic:libcontainers:stable.repo https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/CentOS_8/devel:kubic:libcontainers:stable.repo")
comm.sudo("dnf -y install podman")
end
end
else
machine.communicate.tap do |comm|
comm.sudo("yum -q -y install podman")
end
end
end
end
end
end
end
end