1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-11-18 00:10:04 +00:00

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
This commit is contained in:
Baptiste Daroussin 2023-12-11 09:54:28 +01:00
parent 90af7f14c3
commit 5c3bc831b2
5 changed files with 20 additions and 78 deletions

View File

@ -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 \

View File

@ -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

View File

@ -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"

View File

@ -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} \

View File

@ -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