aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorColin Percival <cperciva@FreeBSD.org>2023-07-14 22:11:22 +0000
committerColin Percival <cperciva@FreeBSD.org>2023-08-07 16:21:08 +0000
commitac4f03e03e6d94ac46fed7c4f7801b522d290423 (patch)
treeed720a66d4631eada57c6d25a11e3858315548c8
parent454c425dbed1d341025c71a8645011a980e20ccd (diff)
downloadsrc-ac4f03e03e6d94ac46fed7c4f7801b522d290423.tar.gz
src-ac4f03e03e6d94ac46fed7c4f7801b522d290423.zip
Firecracker: Make root disk configurable
Add a FCROOTFSSZ variable which defaults to "1g" which controls the size of the Firecracker root filesystem; it can be set as low as "300m" at present. Allow WITHOUTS to be overridden if users want to build a root disk with more -- or fewer -- parts of the FreeBSD base system. Reviewed by: gjb Sponsored by: https://www.patreon.com/cperciva Differential Revision: https://reviews.freebsd.org/D41041
-rw-r--r--release/Makefile.firecracker5
1 files changed, 3 insertions, 2 deletions
diff --git a/release/Makefile.firecracker b/release/Makefile.firecracker
index bb54db7da5db..dc5506f364d2 100644
--- a/release/Makefile.firecracker
+++ b/release/Makefile.firecracker
@@ -17,7 +17,7 @@ WITHOUT_FC_ENOENT=WITHOUT_ACPI=YES WITHOUT_BOOT=YES WITHOUT_BHYVE=YES \
WITHOUT_FC_FEATURES=WITHOUT_DEBUG_FILES=YES WITHOUT_INCLUDES=YES \
WITHOUT_INSTALLLIB=YES WITHOUT_TESTS=YES WITHOUT_TOOLCHAIN=YES
# All the excluded bits
-WITHOUTS=${WITHOUT_VM_ENOENT} ${WITHOUT_FC_ENOENT} ${WITHOUT_FC_FEATURES}
+WITHOUTS?=${WITHOUT_VM_ENOENT} ${WITHOUT_FC_ENOENT} ${WITHOUT_FC_FEATURES}
firecracker: firecracker-freebsd-kern.bin firecracker-freebsd-rootfs.bin
@@ -35,6 +35,7 @@ firecracker-freebsd-kern.bin:
cp ${FCKDIR}/boot/kernel/kernel ${DESTDIR}/freebsd-kern.bin
FCWDIR= ${.OBJDIR}/${TARGET}/firecracker-world
+FCROOTFSSZ?= 1g
firecracker-freebsd-rootfs.bin:
mkdir -p ${FCWDIR}
${MAKE} -C ${WORLDDIR} DESTDIR=${FCWDIR} \
@@ -54,5 +55,5 @@ firecracker-freebsd-rootfs.bin:
-u 1001 -g 1001 -G 0 -c "FreeBSD User" -d /home/freebsd -s /bin/sh
pw -R ${FCWDIR} usermod root -w yes
touch ${FCWDIR}/firstboot
- makefs -s 1g -o label=rootfs -o version=2 -o softupdates=1 \
+ makefs -s ${FCROOTFSSZ} -o label=rootfs -o version=2 -o softupdates=1 \
${DESTDIR}/freebsd-rootfs.bin ${FCWDIR}