Index: head/en_US.ISO8859-1/books/porters-handbook/testing/chapter.xml =================================================================== --- head/en_US.ISO8859-1/books/porters-handbook/testing/chapter.xml +++ head/en_US.ISO8859-1/books/porters-handbook/testing/chapter.xml @@ -417,46 +417,65 @@ Poudriere will use for building: - &prompt.root; poudriere jail -c -j 93Ramd64 -v 9.3-RELEASE -a amd64 + &prompt.root; poudriere jail -c -j 111Ramd64 -v 11.1-RELEASE -a amd64 - Fetch a 9.3-RELEASE for + Fetch a 11.1-RELEASE for amd64 from the FTP server given by FREEBSD_HOST in poudriere.conf, create the zfs file - system tank/poudriere/jails/93Ramd64, mount - it on /poudriere/jails/93Ramd64 and - extract the 9.3-RELEASE tarballs into this + system tank/poudriere/jails/111Ramd64, mount + it on /poudriere/jails/111Ramd64 and + extract the 11.1-RELEASE tarballs into this file system. - &prompt.root; poudriere jail -c -j 10i386 -v stable/10 -a i386 -m svn+https + &prompt.root; poudriere jail -c -j 11i386 -v stable/11 -a i386 -m svn+https - Create tank/poudriere/jails/10i386, - mount it on /poudriere/jails/10i386, then + Create tank/poudriere/jails/11i386, + mount it on /poudriere/jails/11i386, then check out the tip of the Subversion - branch of &os;-10-STABLE from + branch of &os;-11-STABLE from SVN_HOST in poudriere.conf into - /poudriere/jails/10i386/usr/src, then + /poudriere/jails/11i386/usr/src, then complete a buildworld and install - it into /poudriere/jails/10i386. + it into /poudriere/jails/11i386. If a specific Subversion revision is needed, append it to the version string. For example: - &prompt.root; poudriere jail -c -j 10i386 -v stable/10@123456 -a i386 -m svn+https + &prompt.root; poudriere jail -c -j 11i386 -v stable/11@123456 -a i386 -m svn+https While it is possible to build a newer version of &os; on an older version, most of the time it will not run. For - example, if a stable/10 jail is needed, - the host will have to run stable/10 too. - Running 10.0-RELEASE is not + example, if a stable/11 jail is needed, + the host will have to run stable/11 too. + Running 11.0-RELEASE is not enough. + + To create a Poudriere jail + for 12.0-CURRENT: + + &prompt.root; poudriere jail -c -j 12amd64 -v head -a amd64 -m svn+https + + In order to run a 12.0-CURRENT + Poudriere jail you must be + running 12.0-CURRENT. In general, newer + kernels can build and run older jails. For instance, a + 12.0-CURRENT kernel can build and run a + 11.1-STABLE + Poudriere jails if the + COMPAT_FREEBSD11 kernel option was + compiled in (on by default in + 12.0-CURRENT + GENERIC kernel config). + + The default svn protocol works but is not very secure. Using svn+https along @@ -471,8 +490,8 @@ &prompt.root; poudriere jail -l JAILNAME VERSION ARCH METHOD -93Ramd64 9.3-RELEASE amd64 ftp -10i386 10.0-STABLE i386 svn+https +111Ramd64 11.1-RELEASE amd64 ftp +11i386 11.0-STABLE i386 svn+https @@ -635,9 +654,9 @@ For example, local modifications to the www/firefox port located in /work/ports/www/firefox can be tested in - the previously created 9.3-RELEASE jail: + the previously created 11.1-RELEASE jail: - &prompt.root; poudriere testport -j 93Ramd64 -p development -o www/firefox + &prompt.root; poudriere testport -j 111Ramd64 -p development -o www/firefox This will build all dependencies of Firefox. If a dependency has been @@ -648,13 +667,13 @@ built. The complete build of every port is logged to - /poudriere/data/logs/bulk/93Ri386-development/build-time/logs. + /poudriere/data/logs/bulk/111Ri386-development/build-time/logs. - The directory name 93Ri386-development + The directory name 111Ri386-development is derived from the arguments to -j and -p, respectively. For convenience, a symbolic link - /poudriere/data/logs/bulk/93Ri386-development/latest + /poudriere/data/logs/bulk/111Ri386-development/latest is also maintained. The link points to the latest build-time directory. Also in this directory is an index.html for observing @@ -666,7 +685,7 @@ the build by adding to testport: - &prompt.root; poudriere testport -j 93Ramd64 -p development -i -o www/firefox + &prompt.root; poudriere testport -j 111Ramd64 -p development -i -o www/firefox After the build completes, and regardless of whether it was successful, a shell is provided within the jail. The @@ -677,16 +696,16 @@ will show the command to run when the jail is no longer needed. It is then possible to &man.jexec.8; into it: - &prompt.root; poudriere testport -j 93Ramd64 -p development -I -o www/firefox + &prompt.root; poudriere testport -j 111Ramd64 -p development -I -o www/firefox [...] ====>> Installing local Pkg repository to /usr/local/etc/pkg/repos -====>> Leaving jail 93Ramd64-development-n running, mounted at /poudriere/data/.m/93Ramd64-development/ref for interactive run testing -====>> To enter jail: jexec 93Ramd64-development-n env -i TERM=$TERM /usr/bin/login -fp root -====>> To stop jail: poudriere jail -k -j 93Ramd64 -p development -&prompt.root; jexec 93Ramd64-development-n env -i TERM=$TERM /usr/bin/login -fp root +====>> Leaving jail 111Ramd64-development-n running, mounted at /poudriere/data/.m/111Ramd64-development/ref for interactive run testing +====>> To enter jail: jexec 111Ramd64-development-n env -i TERM=$TERM /usr/bin/login -fp root +====>> To stop jail: poudriere jail -k -j 111Ramd64 -p development +&prompt.root; jexec 111Ramd64-development-n env -i TERM=$TERM /usr/bin/login -fp root &prompt.root; [do some stuff in the jail] &prompt.root; exit -&prompt.root; poudriere jail -k -j 93Ramd64 -p development +&prompt.root; poudriere jail -k -j 111Ramd64 -p development ====>> Umounting file systems An integral part of the &os; ports build infrastructure is @@ -729,7 +748,7 @@ an existing directory structure similar to PORT_DBDIR, defaults to /var/db/ports in its configuration - directory. This directory is then nullfs-mounted into the + directory. This directory is then &man.nullfs.5;-mounted into the jails where the ports and their dependencies are built. Usually a suitable starting point can be obtained by recursively copying the existing PORT_DBDIR @@ -741,22 +760,22 @@ -z devset parameter to the testport command: - &prompt.root; poudriere testport -j 93Ramd64 -p development -z devset -o www/firefox + &prompt.root; poudriere testport -j 111Ramd64 -p development -z devset -o www/firefox This will look for the existence of these directories in this order: - /usr/local/etc/poudriere.d/93Ramd64-development-devset-options + /usr/local/etc/poudriere.d/111Ramd64-development-devset-options - /usr/local/etc/poudriere.d/93Ramd64-devset-options + /usr/local/etc/poudriere.d/111Ramd64-devset-options - /usr/local/etc/poudriere.d/93Ramd64-development-options + /usr/local/etc/poudriere.d/111Ramd64-development-options @@ -768,7 +787,7 @@ - /usr/local/etc/poudriere.d/93Ramd64-options + /usr/local/etc/poudriere.d/111Ramd64-options @@ -777,7 +796,7 @@ From this list, Poudriere - nullfs-mounts the first existing + &man.nullfs.5;-mounts the first existing directory tree into the /var/db/ports directory of the build jails. Hence, all custom options are used for all the ports during this run of @@ -815,7 +834,7 @@ matching a name scheme derived from the command line. For instance: - &prompt.root; poudriere testport -j 93Ramd64 -p development -z devset -o www/firefox + &prompt.root; poudriere testport -j 111Ramd64 -p development -z devset -o www/firefox causes Poudriere to check for the existence of these files in this order: @@ -834,19 +853,19 @@ - /usr/local/etc/poudriere.d/93Ramd64-make.conf + /usr/local/etc/poudriere.d/111Ramd64-make.conf - /usr/local/etc/poudriere.d/93Ramd64-development-make.conf + /usr/local/etc/poudriere.d/111Ramd64-development-make.conf - /usr/local/etc/poudriere.d/93Ramd64-devset-make.conf + /usr/local/etc/poudriere.d/111Ramd64-devset-make.conf - /usr/local/etc/poudriere.d/93Ramd64-development-devset-make.conf + /usr/local/etc/poudriere.d/111Ramd64-development-devset-make.conf @@ -859,7 +878,7 @@ Special variables, intended to affect only certain jails or sets can be set in specialised make.conf files, such as - /usr/local/etc/poudriere.d/93Ramd64-development-devset-make.conf. + /usr/local/etc/poudriere.d/111Ramd64-development-devset-make.conf. Using <filename>make.conf</filename> to Change Default