Author: gjb
Date: Fri May  4 20:38:26 2018
New Revision: 333262
URL: https://svnweb.freebsd.org/changeset/base/333262

Log:
  Ensure the ports and src trees are available on GCE images,
  satisfying a requirement to allow FreeBSD to be considered
  a top-tier supported OS in Google Compute Engine.
  
  MFC after:    3 days
  Sponsored by: The FreeBSD Foundation

Modified:
  head/release/tools/gce.conf

Modified: head/release/tools/gce.conf
==============================================================================
--- head/release/tools/gce.conf Fri May  4 19:31:28 2018        (r333261)
+++ head/release/tools/gce.conf Fri May  4 20:38:26 2018        (r333262)
@@ -85,6 +85,29 @@ debug.trace_on_panic=1
 debug.debugger_on_panic=0
 EOF
 
+       # To meet GCE marketplace requirements, extract the src.txz and
+       # ports.txz distributions to the target virtual machine disk image
+       # and fetch the sources for the third-part software installed on
+       # the image.
+       if [ ! -c "${DESTDIR}/dev/null" ]; then
+               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)
+               for PACKAGE in ${_INSTALLED_PACKAGES}; do
+                       chroot ${DESTDIR} \
+                               make -C /usr/ports/${PACKAGE} fetch
+               done
+       fi
+       if [ -c "${DESTDIR}/dev/null" ]; 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
        ## of the image prior to packaging for upload to GCE.
_______________________________________________
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to