Merge pull request #7601 from ChengyuZhu6/install_dmsetup

CC | tools: Install dependencies with dm-verity in rootfs
This commit is contained in:
Steve Horsman 2023-08-23 17:24:43 +01:00 committed by GitHub
commit 0e9a8f22ca
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 22 additions and 4 deletions

View File

@ -12,6 +12,7 @@ set -o pipefail
DOCKER_RUNTIME=${DOCKER_RUNTIME:-runc} DOCKER_RUNTIME=${DOCKER_RUNTIME:-runc}
MEASURED_ROOTFS=${MEASURED_ROOTFS:-no} MEASURED_ROOTFS=${MEASURED_ROOTFS:-no}
DM_VERITY=${DM_VERITY:-no}
#For cross build #For cross build
CROSS_BUILD=${CROSS_BUILD:-false} CROSS_BUILD=${CROSS_BUILD:-false}
@ -51,6 +52,13 @@ readonly dax_header_sz=2
readonly dax_alignment=2 readonly dax_alignment=2
# The list of systemd units and files that are not needed in Kata Containers # The list of systemd units and files that are not needed in Kata Containers
readonly -a udev_systemd_units=(
"systemd-udevd"
"systemd-udevd-control"
"systemd-udevd-kernel"
"systemd-udev-trigger"
)
readonly -a systemd_units=( readonly -a systemd_units=(
"systemd-coredump@" "systemd-coredump@"
"systemd-journald" "systemd-journald"
@ -59,10 +67,6 @@ readonly -a systemd_units=(
"systemd-random-seed" "systemd-random-seed"
"systemd-timesyncd" "systemd-timesyncd"
"systemd-tmpfiles-setup" "systemd-tmpfiles-setup"
"systemd-udevd"
"systemd-udevd-control"
"systemd-udevd-kernel"
"systemd-udev-trigger"
"systemd-update-utmp" "systemd-update-utmp"
) )
@ -455,6 +459,14 @@ setup_selinux() {
setup_systemd() { setup_systemd() {
local mount_dir="$1" local mount_dir="$1"
if [ "${DM_VERITY}" == "no" ]; then
for u in "${udev_systemd_units[@]}"; do
find "${mount_dir}" -type f \( \
-name "${u}.service" -o \
-name "${u}.socket" \) \
-exec rm -f {} \;
done
fi
info "Removing unneeded systemd services and sockets" info "Removing unneeded systemd services and sockets"
for u in "${systemd_units[@]}"; do for u in "${systemd_units[@]}"; do

View File

@ -18,6 +18,7 @@ AGENT_BIN=${AGENT_BIN:-kata-agent}
AGENT_INIT=${AGENT_INIT:-no} AGENT_INIT=${AGENT_INIT:-no}
KATA_BUILD_CC=${KATA_BUILD_CC:-no} KATA_BUILD_CC=${KATA_BUILD_CC:-no}
MEASURED_ROOTFS=${MEASURED_ROOTFS:-no} MEASURED_ROOTFS=${MEASURED_ROOTFS:-no}
DM_VERITY=${DM_VERITY:-no}
KERNEL_MODULES_DIR=${KERNEL_MODULES_DIR:-""} KERNEL_MODULES_DIR=${KERNEL_MODULES_DIR:-""}
OSBUILDER_VERSION="unknown" OSBUILDER_VERSION="unknown"
DOCKER_RUNTIME=${DOCKER_RUNTIME:-runc} DOCKER_RUNTIME=${DOCKER_RUNTIME:-runc}
@ -459,6 +460,7 @@ build_rootfs_distro()
--env ARCH="${ARCH}" \ --env ARCH="${ARCH}" \
--env CI="${CI}" \ --env CI="${CI}" \
--env MEASURED_ROOTFS="${MEASURED_ROOTFS}" \ --env MEASURED_ROOTFS="${MEASURED_ROOTFS}" \
--env DM_VERITY="${DM_VERITY}" \
--env KERNEL_MODULES_DIR="${KERNEL_MODULES_DIR}" \ --env KERNEL_MODULES_DIR="${KERNEL_MODULES_DIR}" \
--env LIBC="${LIBC}" \ --env LIBC="${LIBC}" \
--env EXTRA_PKGS="${EXTRA_PKGS}" \ --env EXTRA_PKGS="${EXTRA_PKGS}" \

View File

@ -9,6 +9,7 @@ PACKAGES="chrony iptables dbus kmod"
[ "$AGENT_INIT" = no ] && PACKAGES+=" init" [ "$AGENT_INIT" = no ] && PACKAGES+=" init"
[ "$MEASURED_ROOTFS" = yes ] && PACKAGES+=" cryptsetup-bin e2fsprogs" [ "$MEASURED_ROOTFS" = yes ] && PACKAGES+=" cryptsetup-bin e2fsprogs"
[ "$SECCOMP" = yes ] && PACKAGES+=" libseccomp2" [ "$SECCOMP" = yes ] && PACKAGES+=" libseccomp2"
[ "$DM_VERITY" = yes ] && PACKAGES+=" udev dmsetup"
REPO_URL=http://ports.ubuntu.com REPO_URL=http://ports.ubuntu.com
case "$ARCH" in case "$ARCH" in

View File

@ -94,6 +94,7 @@ docker run \
--env TDSHIM_CONTAINER_BUILDER="${TDSHIM_CONTAINER_BUILDER:-}" \ --env TDSHIM_CONTAINER_BUILDER="${TDSHIM_CONTAINER_BUILDER:-}" \
--env VIRTIOFSD_CONTAINER_BUILDER="${VIRTIOFSD_CONTAINER_BUILDER:-}" \ --env VIRTIOFSD_CONTAINER_BUILDER="${VIRTIOFSD_CONTAINER_BUILDER:-}" \
--env MEASURED_ROOTFS="${MEASURED_ROOTFS:-}" \ --env MEASURED_ROOTFS="${MEASURED_ROOTFS:-}" \
--env DM_VERITY="${DM_VERITY:-}" \
--env USE_CACHE="${USE_CACHE:-}" \ --env USE_CACHE="${USE_CACHE:-}" \
--env CROSS_BUILD="${CROSS_BUILD}" \ --env CROSS_BUILD="${CROSS_BUILD}" \
--env TARGET_ARCH="${TARGET_ARCH}" \ --env TARGET_ARCH="${TARGET_ARCH}" \

View File

@ -44,6 +44,7 @@ readonly cached_artifacts_path="lastSuccessfulBuild/artifact/artifacts"
ARCH=${ARCH:-$(uname -m)} ARCH=${ARCH:-$(uname -m)}
MEASURED_ROOTFS=${MEASURED_ROOTFS:-no} MEASURED_ROOTFS=${MEASURED_ROOTFS:-no}
DM_VERITY=${DM_VERITY:-no}
USE_CACHE="${USE_CACHE:-"yes"}" USE_CACHE="${USE_CACHE:-"yes"}"
workdir="${WORKDIR:-$PWD}" workdir="${WORKDIR:-$PWD}"
@ -226,6 +227,7 @@ install_cc_image() {
export AA_KBC="${AA_KBC:-offline_fs_kbc}" export AA_KBC="${AA_KBC:-offline_fs_kbc}"
export KATA_BUILD_CC=yes export KATA_BUILD_CC=yes
export MEASURED_ROOTFS=yes export MEASURED_ROOTFS=yes
export DM_VERITY=yes
variant="${1:-}" variant="${1:-}"
install_image "${variant}" install_image "${variant}"