diff options
-rw-r--r-- | contrib/cirrus/packer/fedora_setup.sh | 15 | ||||
-rw-r--r-- | contrib/cirrus/packer/ubuntu_setup.sh | 35 | ||||
-rwxr-xr-x | contrib/cirrus/setup_environment.sh | 19 |
3 files changed, 44 insertions, 25 deletions
diff --git a/contrib/cirrus/packer/fedora_setup.sh b/contrib/cirrus/packer/fedora_setup.sh index 20014e5f3..cc7f1c34f 100644 --- a/contrib/cirrus/packer/fedora_setup.sh +++ b/contrib/cirrus/packer/fedora_setup.sh @@ -26,7 +26,6 @@ else warn "NOT enabling updates-testing repository for image based on $PRIOR_FEDORA_BASE_IMAGE" fi -echo "Installing general build/test dependencies for Fedora '$OS_RELEASE_VER'" REMOVE_PACKAGES=() INSTALL_PACKAGES=(\ autoconf @@ -74,6 +73,7 @@ INSTALL_PACKAGES=(\ make msitools nmap-ncat + ostree-devel pandoc podman procps-ng @@ -86,11 +86,15 @@ INSTALL_PACKAGES=(\ python3-dateutil python3-psutil python3-pytoml + rsync + runc selinux-policy-devel skopeo + skopeo-containers slirp4netns unzip vim + wget which xz zip @@ -112,16 +116,21 @@ case "$OS_RELEASE_VER" in *) bad_os_id_ver ;; esac + +echo "Installing general build/test dependencies for Fedora '$OS_RELEASE_VER'" $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 +echo "Enabling cgroup management from containers" +ooe.sh sudo setsebool container_manage_cgroup true ooe.sh sudo /tmp/libpod/hack/install_catatonit.sh +# Ensure there are no disruptive periodic services enabled by default in image +systemd_banish + rh_finalize echo "SUCCESS!" diff --git a/contrib/cirrus/packer/ubuntu_setup.sh b/contrib/cirrus/packer/ubuntu_setup.sh index 1299fd464..a270faf45 100644 --- a/contrib/cirrus/packer/ubuntu_setup.sh +++ b/contrib/cirrus/packer/ubuntu_setup.sh @@ -40,9 +40,9 @@ fi echo "Configuring/Instaling deps from Open build server" VERSION_ID=$(source /etc/os-release; echo $VERSION_ID) echo "deb http://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/xUbuntu_$VERSION_ID/ /" \ - > /etc/apt/sources.list.d/devel:kubic:libcontainers:stable.list -curl -L -o /tmp/Release.key "https://download.opensuse.org/repositories/devel:kubic:libcontainers:stable/xUbuntu_${VERSION_ID}/Release.key" -apt-key add - < /tmp/Release.key + | ooe.sh sudo tee /etc/apt/sources.list.d/devel:kubic:libcontainers:stable.list +ooe.sh curl -L -o /tmp/Release.key "https://download.opensuse.org/repositories/devel:kubic:libcontainers:stable/xUbuntu_${VERSION_ID}/Release.key" +ooe.sh sudo apt-key add - < /tmp/Release.key INSTALL_PACKAGES=(\ apparmor @@ -51,14 +51,15 @@ INSTALL_PACKAGES=(\ automake bash-completion bison - btrfs-tools build-essential + bzip2 + conmon containernetworking-plugins containers-common + coreutils cri-o-runc criu curl - conmon dnsmasq e2fslibs-dev emacs-nox @@ -66,6 +67,7 @@ INSTALL_PACKAGES=(\ gawk gcc gettext + git go-md2man golang iproute2 @@ -84,17 +86,19 @@ INSTALL_PACKAGES=(\ libnet1 libnet1-dev libnl-3-dev - libvarlink libprotobuf-c-dev libprotobuf-dev libseccomp-dev libseccomp2 + libselinux-dev libsystemd-dev libtool libudev-dev + libvarlink lsof make netcat + openssl pkg-config podman protobuf-c-compiler @@ -107,19 +111,26 @@ INSTALL_PACKAGES=(\ python3-psutil python3-pytoml python3-setuptools + rsync + runc + scons skopeo slirp4netns socat unzip vim + wget xz-utils + yum-utils zip + zlib1g-dev ) if [[ "$OS_RELEASE_VER" -ge "19" ]] then INSTALL_PACKAGES+=(\ bats + btrfs-progs fuse3 libbtrfs-dev libfuse3-dev @@ -130,7 +141,10 @@ else BATS_URL='http://launchpadlibrarian.net/438140887/bats_1.1.0+git104-g1c83a1b-1_all.deb' curl -L -O "$BATS_URL" cd - - INSTALL_PACKAGES+=(/tmp/$(basename $BATS_URL)) + INSTALL_PACKAGES+=(\ + /tmp/$(basename $BATS_URL) + btrfs-tools + ) echo "Forced Ubuntu 18 kernel to enable cgroup swap accounting." SEDCMD='s/^GRUB_CMDLINE_LINUX="(.*)"/GRUB_CMDLINE_LINUX="\1 cgroup_enable=memory swapaccount=1"/g' @@ -151,6 +165,13 @@ ooe.sh sudo make -C /tmp/libpod install.libseccomp.sudo # Ensure there are no disruptive periodic services enabled by default in image systemd_banish +CRIO_RUNC_PATH="/usr/lib/cri-o-runc/sbin/runc" +if sudo dpkg -L cri-o-runc | grep -m 1 -q "$CRIO_RUNC_PATH" +then + echo "Linking $CRIO_RUNC_PATH to /usr/bin/runc for ease of testing." + sudo ln -f "$CRIO_RUNC_PATH" "/usr/bin/runc" +fi + ubuntu_finalize echo "SUCCESS!" diff --git a/contrib/cirrus/setup_environment.sh b/contrib/cirrus/setup_environment.sh index 9b4a56acd..eceb80b00 100755 --- a/contrib/cirrus/setup_environment.sh +++ b/contrib/cirrus/setup_environment.sh @@ -39,23 +39,8 @@ done cd "${GOSRC}/" case "${OS_RELEASE_ID}" in ubuntu) - CRIO_RUNC_PATH="/usr/lib/cri-o-runc/sbin/runc" - if dpkg -L cri-o-runc | grep -m 1 -q "$CRIO_RUNC_PATH" - then - echo "Linking $CRIO_RUNC_PATH to /usr/bin/runc for ease of testing." - ln -f "$CRIO_RUNC_PATH" "/usr/bin/runc" - fi ;; fedora) - # This is temporary and should be removed once conmon is in stable - # and the images can be rebuilt properly. - if [[ "$OS_RELEASE_VER" -eq "30" ]]; then - dnf -y install https://kojipkgs.fedoraproject.org//packages/conmon/2.0.13/1.fc30/x86_64/conmon-2.0.13-1.fc30.x86_64.rpm - else - dnf -y install https://kojipkgs.fedoraproject.org//packages/conmon/2.0.13/1.fc31/x86_64/conmon-2.0.13-1.fc31.x86_64.rpm - fi - # End of temporary patch - # All SELinux distros need this for systemd-in-a-container setsebool container_manage_cgroup true if [[ "$ADD_SECOND_PARTITION" == "true" ]]; then @@ -67,6 +52,10 @@ case "${OS_RELEASE_ID}" in echo "mq-deadline" > /sys/block/sda/queue/scheduler cat /sys/block/sda/queue/scheduler + if [[ "$ADD_SECOND_PARTITION" == "true" ]]; then + bash "$SCRIPT_BASE/add_second_partition.sh" + fi + warn "Forcing systemd cgroup manager" X=$(echo "export CGROUP_MANAGER=systemd" | \ tee -a /etc/environment) && eval "$X" && echo "$X" |