#!/bin/bash # This script is called by packer on the subject fedora VM, to setup the podman # build/test environment. It's not intended to be used outside of this context. set -e # Load in library (copied by packer, before this script was run) source /tmp/libpod/$SCRIPT_BASE/lib.sh req_env_var SCRIPT_BASE PACKER_BUILDER_NAME GOSRC install_ooe export GOPATH="$(mktemp -d)" trap "sudo rm -rf $GOPATH" EXIT $BIGTO ooe.sh sudo dnf update -y echo "Enabling updates-testing repository" $LILTO ooe.sh sudo dnf install -y 'dnf-command(config-manager)' $LILTO ooe.sh sudo dnf config-manager --set-enabled updates-testing echo "Installing general build/test dependencies for Fedora '$OS_RELEASE_VER'" REMOVE_PACKAGES=() INSTALL_PACKAGES=(\ autoconf automake bash-completion bats bridge-utils btrfs-progs-devel bzip2 conmon container-selinux containernetworking-plugins containers-common criu device-mapper-devel dnsmasq emacs-nox file findutils fuse3 fuse3-devel gcc git glib2-devel glibc-static gnupg go-md2man golang gpgme-devel iproute iptables jq libassuan-devel libcap-devel libmsi1 libnet libnet-devel libnl3-devel libseccomp libseccomp-devel libselinux-devel libtool libvarlink-util lsof make msitools nmap-ncat pandoc podman procps-ng protobuf protobuf-c protobuf-c-devel protobuf-devel protobuf-python python python3-dateutil python3-psutil python3-pytoml selinux-policy-devel skopeo slirp4netns unzip vim which xz zip ) case "$OS_RELEASE_VER" in 30) INSTALL_PACKAGES+=(\ atomic-registries golang-github-cpuguy83-go-md2man python2-future runc ) ;; 31) INSTALL_PACKAGES+=(crun) REMOVE_PACKAGES+=(runc) ;; *) bad_os_id_ver ;; esac $BIGTO ooe.sh sudo dnf install -y ${INSTALL_PACKAGES[@]} [[ "${#REMOVE_PACKAGES[@]}" -eq "0" ]] || \ $LILTO ooe.sh sudo dnf erase -y ${REMOVE_PACKAGES[@]} # Ensure there are no disruptive periodic services enabled by default in image systemd_banish ooe.sh sudo /tmp/libpod/hack/install_catatonit.sh rh_finalize echo "SUCCESS!"