git: 1deb72ac2db6 - stable/15 - release: Prepare GCE cloudware images for building as non-root
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Tue, 30 Sep 2025 15:23:35 UTC
The branch stable/15 has been updated by markj:
URL: https://cgit.FreeBSD.org/src/commit/?id=1deb72ac2db60c983310edae33f1d33eaf3ac8e9
commit 1deb72ac2db60c983310edae33f1d33eaf3ac8e9
Author: Mark Johnston <markj@FreeBSD.org>
AuthorDate: 2025-09-16 16:54:11 +0000
Commit: Mark Johnston <markj@FreeBSD.org>
CommitDate: 2025-09-30 09:43:08 +0000
release: Prepare GCE cloudware images for building as non-root
- Avoid mounting devfs just to list packages and fetch distfiles.
- Add metalog entries.
Reviewed by: cperciva, emaste
MFC after: 3 days
Sponsored by: The FreeBSD Foundation
Sponsored by: Klara, Inc.
Differential Revision: https://reviews.freebsd.org/D52455
(cherry picked from commit f1995d6fc13fa4a36f83cea3b90f27bce2aca4d9)
---
release/tools/gce.conf | 17 +++++------------
1 file changed, 5 insertions(+), 12 deletions(-)
diff --git a/release/tools/gce.conf b/release/tools/gce.conf
index 382a839786f3..e1c208e69fe5 100644
--- a/release/tools/gce.conf
+++ b/release/tools/gce.conf
@@ -21,6 +21,7 @@ vm_extra_install_base() {
echo 'search google.internal' > ${DESTDIR}/etc/resolv.conf
echo 'nameserver 169.254.169.254' >> ${DESTDIR}/etc/resolv.conf
echo 'nameserver 8.8.8.8' >> ${DESTDIR}/etc/resolv.conf
+ metalog_add ./etc/resolv.conf
}
vm_extra_pre_umount() {
@@ -94,25 +95,18 @@ EOF
# ports.txz distributions to the target virtual machine disk image
# and fetch the sources for the third-party software installed on
# the image.
- if [ ! -c "${DESTDIR}/dev/null" ]; then
- DEVFSISOURS=1
- mkdir -p ${DESTDIR}/dev
- mount -t devfs devfs ${DESTDIR}/dev
- fi
if [ -e "${DESTDIR}/../ftp/src.txz" ]; then
tar fxJ ${DESTDIR}/../ftp/src.txz -C ${DESTDIR}
fi
if [ -e "${DESTDIR}/../ftp/ports.txz" ]; then
tar fxJ ${DESTDIR}/../ftp/ports.txz -C ${DESTDIR}
- _INSTALLED_PACKAGES=$(chroot ${DESTDIR} pkg info -o -q -a)
+ _INSTALLED_PACKAGES=$(pkg -r ${DESTDIR} info -o -q -a)
for PACKAGE in ${_INSTALLED_PACKAGES}; do
- chroot ${DESTDIR} \
- make -C /usr/ports/${PACKAGE} fetch
+ make -C ${DESTDIR}/usr/ports/${PACKAGE} fetch \
+ DISTDIR=${DESTDIR}/usr/ports/distfiles
+
done
fi
- if [ "$DEVFSISOURS" = "1" ]; then
- umount_loop ${DESTDIR}/dev
- fi
## XXX: Verify this is needed. I do not see this requirement
## in the docs, and it impairs the ability to boot-test a copy
@@ -130,6 +124,5 @@ vm_emulation_cleanup() {
if [ -n "${QEMUSTATIC}" ]; then
rm -f ${DESTDIR}/${EMULATOR}
fi
- umount_loop ${DESTDIR}/dev
return 0
}