git: 5c3bc831b256 - main - ports-mgmt/poudriere: update to 3.4.0

From: Baptiste Daroussin <bapt_at_FreeBSD.org>
Date: Mon, 11 Dec 2023 08:56:28 UTC
The branch main has been updated by bapt:

URL: https://cgit.FreeBSD.org/ports/commit/?id=5c3bc831b2562c080c177076e089156a37f87e31

commit 5c3bc831b2562c080c177076e089156a37f87e31
Author:     Baptiste Daroussin <bapt@FreeBSD.org>
AuthorDate: 2023-12-11 08:54:28 +0000
Commit:     Baptiste Daroussin <bapt@FreeBSD.org>
CommitDate: 2023-12-11 08:56:26 +0000

    ports-mgmt/poudriere: update to 3.4.0
    
    Changes:
    - testport|bulk -b: New feature to fetch remote packages. See PACKAGE_FETCH
      options in poudriere.conf.sample.
    - bulk: IGNORED and BLACKLISTED ports are now trimmed before build. This reduces
      queue size and avoids building dependencies that are not needed.
    - jail -cu: Stop modifying /etc/login.conf in the jail. This is done at bulk
      jail startup now.
    - Add DISALLOW_NETWORKING, fixes #689
    - image: Add zsnapshot imagetype.
    - bulk -a: Don't print ports in summary unless -v is used.
    - Show FLAVOR in more places.
    - ports -l: Fix error when no ports trees exist yet.
    - image: Add sleep, ls, and ping to miniroot.
    - ports -u: Add hook 'ports_update done' call.
    - Add status for saving workdir on failure.
    - Expand securelevel check to handle IMMUTABLE_BASE=schg and
      TMPFS_WRKDIR/TMPFS_LOCALBASE.
    - bulk/testport: Initial support for ports OVERLAYS
    - testport: Show log info on failure exit
    - Always export LC_COLLATE=C
    - image: Make iso images bootable in UEFI
    - ports: move away from portsnap as default
    - zfs rollback: Try harder to rollback snapshots.
    - bulk -n: Don't remove .building dir unless this ran made it
    - common.sh: use new URL for base system
    - jail: Fix git checkout during jail update to operate within SRC_BASE.
    - image: Add -w (swap size) and -b (swap position)
    - image: Support pre and post build scripts
    - image: remove unneeded vfs.root.mountfrom that might cause problems
    - image: Fix usb and usb+mfs
    - image: Add pkgbase support
    - image: Fix loader.efi name for arm and arm64
    - image: Don't install pmbr and gptboot on !x86
    - image: Enable zfs in rc.conf
    - testport: Support overlay
    - jail: Support PKG_REPO_SIGNING_KEY/KERNCONF for pkgbase
    - bulk|testport -i: Mount ports rw
    - MOVED: Support from overlays
    - bulk: Always build repo even if no packages build
    - distclean: Don't delete .hidden files.
    - bulk: Delete FORBIDDEN packages during incremental check.
    - pkgclean: Delete FORBIDDEN packages.
    - bulk: Delete corrupted packages like pkgclean does.
    - bulk -af: Delete unqueued packages like pkgclean.
    - bulk [-a] -f: Delete packages unknown/unqueued like pkgclean would.
    - bulk: Link to the build logs at PACKAGES/logs
    - Many test improvements
    - Many fixes for builtin helpers
    - jail -m http|ftp: freebsd-update(8) now uses -b rather than running inside of
      the jail.
    - clonefs: Fix cpignore handling to not race with other bulks.
    - bulk: Package notes, and build logs, now include ports top checkout git
      revision and port dir git revision. If PKG_REPRODUCIBLE is not set then a
      timestamp and poudriere's version is also added in.
    - bulk/testport -i: If POUDRIERE_INTERACTIVE_NO_INSTALL is set don't install the
      packages
    - Allow zstd in WRKDIR_ARCHIVE_FORMAT
    - jail: Automatically set XDEV as needed
    - Rename MUTABLE_BASE to clearer IMMUTABLE_BASE
    - bulk/testport -i: Many improvements and /etc/motd populated with env hints
    - bulk: Rebuild all packages if the pkg bootstrap is missing
    - Disallow /dev/bpf in the jails
    - bulk: Do not process dependencies of IGNORED ports.
    - CCACHE_DIR_NON_ROOT_SAFE: Chmod /root to 755 to allow non-root to access
    - CCACHE + BUILD_AS_NON_ROOT: Give detailed information on proper setup for
      this. See https://github.com/freebsd/poudriere/commit/8c36dfe5cca92
    - bulk: Rebuild packages with changed ABI
    - Show loginfo on error
    - image: Add support for zfs image types, including send streams
    - image: Run the post-build script before the build target
    - bulk: Opportunistically start builders as needed
    - bulk: New SIGINFO output. Now with tmpfs space usage, cpu%/mem%(rss) from ps.
    - bulk: Add a mechanishm to avoid building rust in tmpfs. See
      poudriere.conf.sample for TMPFS_BLACKLIST and TMPFS_BLACKLIST_TMPDIR.
    - Remove obsolete test for vfs.mnt_free_list_batch
    - jail: -l sort properly by version
    - options: Error on mutually-exclusive command flags
    - sh: make stat a builtin
    - Use setsid(1) for port build phases
    - bulk/testport: Store bulk output in logs/{bulk,testport}.log
    - Adding pushover support for notification
    - image: document hybridiso
    - remove jexecd
    - remove unused libnv
    - umount: unconditionnaly use MNT_NONBUSY
    - options: supports both portconfig and dialog4ports
    - Adding pushover support for notification
    - Add support for subpackages
    - Add option to force rebuilding repo and signing.
    - Add hosts entry for jail (ref or builder) (needed for newer jdk)
    - reduce the amount of i/o and the number of call to fsync
    - image: regenerate pwd database to account for overlays
---
 ports-mgmt/poudriere/Makefile                      |  7 +---
 ports-mgmt/poudriere/distinfo                      |  6 +--
 .../patch-8bfaa898b32370bbfff9bf37fc833d7abc4b8b67 | 24 ------------
 ports-mgmt/poudriere/files/patch-portconfig        | 43 ----------------------
 ports-mgmt/poudriere/pkg-plist                     | 18 +++++++--
 5 files changed, 20 insertions(+), 78 deletions(-)

diff --git a/ports-mgmt/poudriere/Makefile b/ports-mgmt/poudriere/Makefile
index 1b7dab000346..30fe2745e786 100644
--- a/ports-mgmt/poudriere/Makefile
+++ b/ports-mgmt/poudriere/Makefile
@@ -1,6 +1,5 @@
 PORTNAME=	poudriere
-DISTVERSION=	3.3.7
-PORTREVISION=	4
+DISTVERSION=	3.4.0
 CATEGORIES=	ports-mgmt
 MASTER_SITES=	LOCAL/bdrewery/${PORTNAME}/ \
 		http://mirror.shatow.net/freebsd/${PORTNAME}/ \
@@ -47,11 +46,9 @@ PLIST_SUB+=	RM="@comment "
 .endif
 
 post-patch:
-	${CP} -f ${WRKSRC}/src/bin/poudriere ${WRKSRC}/poudriere
 	${REINPLACE_CMD} \
 	    -e "s,^\(POUDRIERE_VERSION\)=.*,\1='${PKGVERSION}'," \
-	    ${WRKSRC}/poudriere
-	${REINPLACE_CMD} '/.PHONY: poudriere/d' ${WRKSRC}/Makefile.*
+	    ${WRKSRC}/src/bin/poudriere.in
 
 post-install:
 	${LN} -fs ${LOCALBASE}/share/freebsd/MANIFESTS \
diff --git a/ports-mgmt/poudriere/distinfo b/ports-mgmt/poudriere/distinfo
index 6ef82ef0ca7d..bd45ff2b7dbf 100644
--- a/ports-mgmt/poudriere/distinfo
+++ b/ports-mgmt/poudriere/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1629310335
-SHA256 (freebsd-poudriere-3.3.7_GH0.tar.gz) = a85cfeb601455758bcc777182c1ef59e5172f9c2171d66c994e4c00cfac572ee
-SIZE (freebsd-poudriere-3.3.7_GH0.tar.gz) = 4423394
+TIMESTAMP = 1702284621
+SHA256 (freebsd-poudriere-3.4.0_GH0.tar.gz) = 73bc59732555aa2f9cc4586e7bd4ea8d38528e0017c27e4cd7c7479c67465223
+SIZE (freebsd-poudriere-3.4.0_GH0.tar.gz) = 4163633
diff --git a/ports-mgmt/poudriere/files/patch-8bfaa898b32370bbfff9bf37fc833d7abc4b8b67 b/ports-mgmt/poudriere/files/patch-8bfaa898b32370bbfff9bf37fc833d7abc4b8b67
deleted file mode 100644
index 892ab3d338ae..000000000000
--- a/ports-mgmt/poudriere/files/patch-8bfaa898b32370bbfff9bf37fc833d7abc4b8b67
+++ /dev/null
@@ -1,24 +0,0 @@
-commit 8bfaa898b32370bbfff9bf37fc833d7abc4b8b67
-Author: Bryan Drewery <bryan@shatow.net>
-Date:   Sat Aug 28 11:57:56 2021 -0700
-
-    distclean: Fix reading make.conf
-    
-    Fixes #910
-    Fixes fa0308152e6 ("Move make.conf ports_env handling to its own not-spammy file")
-    
-    (cherry picked from commit 95971acb6ffd51b2432a38efd1111dd189f68edd)
-
-diff --git src/share/poudriere/distclean.sh src/share/poudriere/distclean.sh
-index 08889f1dd..f77163fc4 100755
---- src/share/poudriere/distclean.sh
-+++ src/share/poudriere/distclean.sh
-@@ -144,7 +144,7 @@ for PTNAME in ${PTNAMES}; do
- 
- 	__MAKE_CONF=$(mktemp -t poudriere-make.conf)
- 	export __MAKE_CONF
--	setup_ports_env "/" "${__MAKE_CONF}"
-+	setup_ports_env "" "${__MAKE_CONF}"
- 	if [ -z "${NO_PACKAGE_BUILDING}" ]; then
- 		echo "BATCH=yes"
- 		echo "PACKAGE_BUILDING=yes"
diff --git a/ports-mgmt/poudriere/files/patch-portconfig b/ports-mgmt/poudriere/files/patch-portconfig
deleted file mode 100644
index ef7d75cc1471..000000000000
--- a/ports-mgmt/poudriere/files/patch-portconfig
+++ /dev/null
@@ -1,43 +0,0 @@
-diff --git src/share/poudriere/options.sh src/share/poudriere/options.sh
-index 745c20d8..51a9aff9 100755
---- src/share/poudriere/options.sh
-+++ src/share/poudriere/options.sh
-@@ -155,7 +155,13 @@ fi
- export PORTSDIR=`pget ${PTNAME} mnt`
- [ -d "${PORTSDIR}/ports" ] && PORTSDIR="${PORTSDIR}/ports"
- [ -z "${PORTSDIR}" ] && err 1 "No such ports tree: ${PTNAME}"
--command -v dialog4ports >/dev/null 2>&1 || err 1 "You must have ports-mgmt/dialog4ports installed on the host to use this command."
-+if command -v portconfig >/dev/null 2>&1; then
-+	d4p=portconfig
-+elif command -v dialog4ports >/dev/null 2>&1; then
-+	d4p=dialog4ports
-+else
-+	err 1 "You must have ports-mgmt/dialog4ports or ports-mgmt/portconfig installed on the host to use this command."
-+fi
- 
- read_packages_from_params "$@"
- 
-@@ -205,7 +211,7 @@ for originspec in $(listed_ports show_moved); do
- 		env ${flavor:+FLAVOR=${flavor}} \
- 		make PORT_DBDIR=${PORT_DBDIR} \
- 			PKG_BIN=`which pkg-static` \
--			DIALOG4PORTS=`which dialog4ports` \
-+			DIALOG4PORTS=`which $d4p` \
- 			LOCALBASE=/nonexistent \
- 			-C ${PORTSDIR}/${origin} \
- 			${RECURSE_COMMAND}
-diff --git a/src/share/poudriere/testport.sh b/src/share/poudriere/testport.sh
-index 07b788310..c684a3d27 100755
---- src/share/poudriere/testport.sh
-+++ src/share/poudriere/testport.sh
-@@ -231,7 +231,9 @@ injail /usr/bin/make -C ${portdir} maintainer ECHO_CMD=true || \
-     err 1 "Port is broken"
- 
- if [ $CONFIGSTR -eq 1 ]; then
--	command -v dialog4ports >/dev/null 2>&1 || err 1 "You must have ports-mgmt/dialog4ports installed on the host to use -c."
-+	command -v portconfig >/dev/null 2>&1 || \
-+	    command -v dialog4ports >/dev/null 2>&1 || \
-+	    err 1 "You must have ports-mgmt/dialog4ports or ports-mgmt/portconfig installed on the host to use -c."
- 	__MAKE_CONF=$(mktemp -t poudriere-make.conf)
- 	setup_makeconf "${__MAKE_CONF}" "${JAILNAME}" "${PTNAME}" "${SETNAME}"
- 	PORTSDIR=${portsdir} \
diff --git a/ports-mgmt/poudriere/pkg-plist b/ports-mgmt/poudriere/pkg-plist
index 1a724e592533..8bffd5711b0e 100644
--- a/ports-mgmt/poudriere/pkg-plist
+++ b/ports-mgmt/poudriere/pkg-plist
@@ -4,20 +4,20 @@ bin/poudriere
 %%ETCDIR%%/hooks/pkgbuild.sh.sample
 @sample etc/poudriered.conf.sample
 etc/rc.d/poudriered
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/Caddyfile.sample
 libexec/poudriere/cachec
 libexec/poudriere/cached
 libexec/poudriere/clock
 libexec/poudriere/cpdup
 libexec/poudriere/dirempty
 libexec/poudriere/dirwatch
-libexec/poudriere/jexecd
 libexec/poudriere/locked_mkdir
 libexec/poudriere/nc
 libexec/poudriere/poudriered
 libexec/poudriere/ptsort
 libexec/poudriere/pwait
 libexec/poudriere/rename
-libexec/poudriere/rexec
+libexec/poudriere/setsid
 %%RM%%libexec/poudriere/rm
 libexec/poudriere/sh
 libexec/poudriere/timeout
@@ -38,6 +38,7 @@ man/man8/poudriere-version.8.gz
 %%PORTEXAMPLES%%%%EXAMPLESDIR%%/httpd.conf.sample
 %%PORTEXAMPLES%%%%EXAMPLESDIR%%/nginx.conf.sample
 %%DATADIR%%/MANIFESTS
+%%DATADIR%%/api.sh
 %%DATADIR%%/awk/dependency_loop.awk
 %%DATADIR%%/awk/humanize.awk
 %%DATADIR%%/awk/json.awk
@@ -47,7 +48,6 @@ man/man8/poudriere-version.8.gz
 %%DATADIR%%/awk/processonelog2.awk
 %%DATADIR%%/awk/siginfo_buildtime.awk
 %%DATADIR%%/awk/unique_pkgnames_from_flavored_origins.awk
-%%DATADIR%%/api.sh
 %%DATADIR%%/bulk.sh
 %%DATADIR%%/common.sh
 %%DATADIR%%/daemon.sh
@@ -87,6 +87,16 @@ man/man8/poudriere-version.8.gz
 %%DATADIR%%/html/jail.html
 %%DATADIR%%/html/robots.txt
 %%DATADIR%%/image.sh
+%%DATADIR%%/image_dump.sh
+%%DATADIR%%/image_firmware.sh
+%%DATADIR%%/image_hybridiso.sh
+%%DATADIR%%/image_iso.sh
+%%DATADIR%%/image_mfs.sh
+%%DATADIR%%/image_rawdisk.sh
+%%DATADIR%%/image_tar.sh
+%%DATADIR%%/image_usb.sh
+%%DATADIR%%/image_zfs.sh
+%%DATADIR%%/image_zsnapshot.sh
 %%DATADIR%%/include/cache.sh
 %%DATADIR%%/include/colors.pre.sh
 %%DATADIR%%/include/colors.sh
@@ -97,6 +107,8 @@ man/man8/poudriere-version.8.gz
 %%DATADIR%%/include/hash.sh
 %%DATADIR%%/include/html.sh
 %%DATADIR%%/include/parallel.sh
+%%DATADIR%%/include/pkg.sh
+%%DATADIR%%/include/pkgqueue.sh
 %%DATADIR%%/include/shared_hash.sh
 %%DATADIR%%/include/util.sh
 %%DATADIR%%/jail.sh