#!/usr/bin/env bash # -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*- # ex: ts=8 sw=4 sts=4 et filetype=sh set -e TEST_DESCRIPTION="test systemd-dissect" IMAGE_NAME="dissect" TEST_NO_NSPAWN=1 . $TEST_BASE_DIR/test-functions command -v mksquashfs >/dev/null 2>&1 || exit 0 command -v veritysetup >/dev/null 2>&1 || exit 0 command -v sfdisk >/dev/null 2>&1 || exit 0 # Need loop devices for systemd-dissect test_create_image() { create_empty_image_rootdir # Create what will eventually be our root filesystem onto an overlay # If some pieces are missing from the host, skip rather than fail ( LOG_LEVEL=5 setup_basic_environment mask_supporting_services instmods loop =block instmods squashfs =squashfs instmods dm_verity =md install_dmevent generate_module_dependencies inst_binary losetup BASICTOOLS=( bash cat mount ) oldinitdir=$initdir export initdir=$TESTDIR/minimal mkdir -p $initdir/usr/lib $initdir/etc setup_basic_dirs install_basic_tools cp $os_release $initdir/usr/lib/os-release ln -s ../usr/lib/os-release $initdir/etc/os-release echo MARKER=1 >> $initdir/usr/lib/os-release mksquashfs $initdir $oldinitdir/usr/share/minimal.raw veritysetup format $oldinitdir/usr/share/minimal.raw $oldinitdir/usr/share/minimal.verity | grep '^Root hash:' | cut -f2 | tr -d '\n' > $oldinitdir/usr/share/minimal.roothash export initdir=$oldinitdir ) } do_test "$@" 50