diff --git a/training/common/usr/lib/systemd/system/bootc-generic-growpart.service b/training/common/usr/lib/systemd/system/bootc-generic-growpart.service deleted file mode 100644 index 77bb310b..00000000 --- a/training/common/usr/lib/systemd/system/bootc-generic-growpart.service +++ /dev/null @@ -1,20 +0,0 @@ -[Unit] -Description=Bootc Fallback Root Filesystem Grow -Documentation=https://gitlab.com/fedora/bootc/docs -# For now we skip bare metal cases, and we also have nothing to do -# for containers. -ConditionVirtualization=vm -# This helps verify that we're running in a bootc/ostree based target. -ConditionPathIsMountPoint=/sysroot -# We want to run before any e.g. large container images might be pulled. -DefaultDependencies=no -Requires=sysinit.target -After=sysinit.target -Before=basic.target - -[Service] -ExecStart=/usr/libexec/bootc-generic-growpart -# So we can temporarily remount the sysroot writable -MountFlags=slave -# Just to auto-cleanup our temporary files -PrivateTmp=yes diff --git a/training/common/usr/lib/systemd/system/local-fs.target.wants/bootc-generic-growpart.service b/training/common/usr/lib/systemd/system/local-fs.target.wants/bootc-generic-growpart.service deleted file mode 120000 index c8e2408d..00000000 --- a/training/common/usr/lib/systemd/system/local-fs.target.wants/bootc-generic-growpart.service +++ /dev/null @@ -1 +0,0 @@ -../bootc-generic-growpart.service \ No newline at end of file diff --git a/training/common/usr/libexec/bootc-generic-growpart b/training/common/usr/libexec/bootc-generic-growpart deleted file mode 100755 index c2277ba3..00000000 --- a/training/common/usr/libexec/bootc-generic-growpart +++ /dev/null @@ -1,41 +0,0 @@ -#!/bin/bash -set -eu - -backing_device=$(findmnt -vno SOURCE /sysroot) -echo "Backing device: ${backing_device}" -syspath=/sys/class/block/$(basename "${backing_device}") -if ! test -d "${syspath}"; then - echo "failed to find backing device ${syspath}"; exit 1 -fi - -# Handling devicemapper targets is a whole other thing -case $backing_device in - /dev/mapper/*) "Not growing $backing_device"; exit 0 ;; -esac - -# Note that we expect that the rootfs is on a partition -partition=$(cat "${syspath}"/partition) - -# Walk up to find the parent blockdev -parentpath=$(dirname "$(realpath "${syspath}")") -devmajmin=$(cat "${parentpath}"/dev) -parent="/dev/block/${devmajmin}" - -# Grow the partition -tmpf=$(mktemp) -# Ignore errors because growpart exits 1 if nothing changed; -# we need to check the output for NOCHANGE: -if ! /usr/bin/growpart "${parent}" "${partition}" > "${tmpf}"; then - cat "${tmpf}" - if grep -qEe '^NOCHANGE: ' "${tmpf}"; then - exit 0 - fi - echo "growpart failed" - exit 1 -fi -cat "${tmpf}" -# Now, temporarily remount the sysroot writable in our mount namespace -mount -o remount,rw /sysroot -# And defer to systemd's growfs wrapper which handles dispatching on -# the target filesystem type. -/usr/lib/systemd/systemd-growfs /sysroot