poudriere is a tool primarily designed to test package production on
FreeBSD. However, most people will find it useful to bulk build ports
for FreeBSD.
===> The following configuration options are available for poudriere-3.4.8:
BASH=on: Install programmable completions for Bash
EXAMPLES=on: Build and/or install examples
MANIFESTS=on: Install manifests for jail creation
PORTCONFIG=on: Install portconfig for options command
QEMU=off: Add qemu-user-static for non-x86 architectures
ZSH=on: Install programmable completions for zsh
===> Use 'make config' to modify these settings
ports-mgmt/poudriere: Update to 3.4.8
Changes:
- options: Improve performance by loading ports_env.
- bulk: Revert not refetching on checksum failure (for distinfo-expected
rerolled distfile cases).
- testport: do not check the parent directory of a port does not have Mk.
- Fix documented default for `CHECK_CHANGED_OPTIONS`.
ports-mgmt/poudriere: Update to 3.4.5
Changes:
- jail -c -m pkgbase: Default URL has changed to pkg.freebsd.org
- jail -d: Don't try destroyfs if JAILMNT is not set
- jail -bB UX updates and fixes
- jail: Support pkg+https for pkgbase jail creation
- jail: Add pkgbase shortcut for jail creation
- jail: Fix pkgbase using incorrect repositories
- jail: Use the right arch for a pkgbase jail
- jail: Exit with an error if pkg-update(8) fails
- Fix fetching packages on FreeBSD 15.0
- Fetch packages: Detect errors fetching repository/packages
- Fix parallel builds stomping on shared TMPFS_BLACKLIST_TMPDIR
- rollbackfs/do_clone_del: Don't force rewrite every file.
- pkg in jail: Always set a higher priority for repo overrides
ports-mgmt/poudriere: Update to 3.4.4
Discussion: https://github.com/freebsd/poudriere/discussions/1275
Changes:
- bulk: Add support for hashed pkg repo mode
- bulk: Fix failure to unmount wrkdir for TMPFS_BLACKLIST.
- poudriere: Include both etc/poudriere.conf and poudriere.d/poudriere.conf
bulk fetching is not yet fixed but being worked on for 3.4.5
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.
(Only the first 15 lines of the commit message are shown above )
ports-mgmt/poudriere{,-devel}: Drop ca_root_nss dependency.
Since the CERTS option no longer installs certificates, we rename it
to MANIFESTS.
MFH: 2023Q4
Reviewed by: bdrewery
Differential Revision: https://reviews.freebsd.org/D42070
Remove WWW entries moved into port Makefiles
Commit b7f05445c00f has added WWW entries to port Makefiles based on
WWW: lines in pkg-descr files.
This commit removes the WWW: lines of moved-over URLs from these
pkg-descr files.
Approved by: portmgr (tcberner)
Add WWW entries to port Makefiles
It has been common practice to have one or more URLs at the end of the
ports' pkg-descr files, one per line and prefixed with "WWW:". These
URLs should point at a project website or other relevant resources.
Access to these URLs required processing of the pkg-descr files, and
they have often become stale over time. If more than one such URL was
present in a pkg-descr file, only the first one was tarnsfered into
the port INDEX, but for many ports only the last line did contain the
port specific URL to further information.
There have been several proposals to make a project URL available as
a macro in the ports' Makefiles, over time.
(Only the first 15 lines of the commit message are shown above )
*/*: Remove redundant '-[0-9]*' from CONFLICTS_INSTALL
The conflict checks compare the patterns first against the package
names without version (as reported by "pkg query "%n"), then - if
there was no match - agsinst the full package names including the
version (as reported by "pkg query "%n-%v").
Approved by: portmgr (blanket)
- Update to 3.3.4
Changes: https://github.com/freebsd/poudriere/wiki/release_notes_334
* Fix pkg 1.11 issue with devfs mount.
* testport / bulk -t: Set DEVELOPER in patch phase.
* Fix html with port named "latest".
* bulk: Fixed non-existent dependencies claiming to be MOVED
* Fix first-time setup issues with BASEFS.
- Update to 3.3.3
Changes: https://github.com/freebsd/poudriere/wiki/release_notes_333
- qemu: Add /usr/bin/wc and /usr/bin/head to HLINK_FILES.
- Show flavor in more messages.
- ports -l: Fix error when no ports trees exist yet.
- distclean: Remove empty directories when done.
- Allow overriding default nullfs paths with NULLFS_PATHS.
- Fix WRKDIR saving with FLAVOR'd origins
- Expand securelevel check to handle MUTABLE_BASE=schg and
TMPFS_WRKDIR/TMPFS_LOCALBASE.
- testport -c: Fix make.conf not being respected for `make config`.
- image: warn if MFSROOT may be too large
- jail: Pass MAKEWORLDARGS during installworld too
- jail -c: Fix NO_LIB32 support
- jail -d: Don't confirm if the jail doesn't exist
- jail -i: Don't show ports tree info if not requested
- Update to 3.2.3
Changes: https://github.com/freebsd/poudriere/wiki/release_notes_323
- bulk: Fix MOVED origin not causing a package rebuild. This
could result in a reverse dependency continuing to rebuild
due to a "new dependency" now with FLAVORS support.
- jail -c -m null: Fix this to work rather than error about
having an existing directory already.
- jail -c -m src: Respect existing _/usr/src/.cpignore_
- jail -c -m null -S: Respect the `-S path` rather than assume the jail has
a _/usr/src_.
- jail -c -m null: Assert that the jail is populated already.
- HTML: Throw explicit error if unknown ports type is encountered. [1]
PR: 224065 [1]
Add MANIFEST files from 10.3-RELEASE.
The MANIFEST files were obtained by
(a) verifying the signature on the 10.3-RELEASE announcement against
the GPG key in the FreeBSD documentation repository;
(b) downloading all of the bootonly.iso.xz ISOs;
(c) verifying those files against the hashes listed in the signed release
announcement; and
(d) extracting the MANIFEST files.
Add MANIFEST files from (9|10).*-RELEASE. These files are installed in
/usr/local/share/poudriere/MANIFESTS, where poudriere (as of version
3.1.11) checks for pre-distributed MANIFEST files before fetching them
from the ftp/http/https server.
This allows poudriere to ensure that the bits it is downloading and
installing really match the bits provided by the release engineering
team, and have not been subtly trojanned in transit. (Note that this
does not apply if poudriere is creating a jail from -STABLE or -CURRENT
since we cannot pre-distribute those MANIFESTs.)
The MANIFEST files were obtained by
(a) finding the GPG-signed announcements for 9.0 and later releases;
(b) verifying those signatures against the GPG keys in the FreeBSD
documentation repository;
(c) downloading all of the relevant bootonly ISOs;
(d) verifying the ISOs against the hashes listed in the signed release
announcements; and
(e) extracting the MANIFEST files from those ISOs.
Reviewed by: bdrewery
Security: If someone could trick you into building packages in a
world which they tampered with, they could do all sorts
of nasty things to those packages...
Update to 3.1.7
Changes: https://github.com/freebsd/poudriere/wiki/release_notes_317
- Restore /usr/sbin and /sbin to PATH lost in 3.1.5
- HTML: Fix broken log link from 3.1.5
- Avoid copying /var/db/freebsd-update into build jails
- QEMU: Fix handling of elftoolchain install for older src checkouts.
USE_GITHUB: For the new support, fix DISTNAME to be more consistent.
When using GH_TAGNAME the DISTNAME would have GH_PROJECT and GH_ACCOUNT in
it. When not using GH_TAGNAME it would not have this. Now both cases
will add in the GH_PROJECT and GH_ACCOUNT.
Add special care to ensure that the DISTVERSION is not added in twice. If
a port does GH_TAGNAME=v${PORTVERSION} it will be added in twice though. For
that case DISTVERSIONPREFIX=v should be set and no GH_TAGNAME should be used.
empty() is used rather than (!defined || !${}) to support fmake.
The purpose of setting DISTNAME at all in these cases is to make it more clear
that the distfile is from *GITHUB* and to avoid collisions if a project were
to be renamed or moved. Without adding in GH_PROJECT and GH_ACCOUNT then there
are real risks that collisions on filenames would happen on renamed or moved
projects, which is fairly common. A GITHUB-generated file may not match
a custom-rolled or git-archive-rolled distfile.
PR: 199069
With hat: portmgr
Testing done: All USE_GITHUB ports without GH_COMMIT were
checksum/fetch/extract/WRKSRC tested.
Fix the new USE_GITHUB to rename the distfile such that it does not
conflict with the old scheme and cause a "reroll" or "invalid checksums". This
also avoids clobbering the FreeBSD distcache.
Use a revision in the DISTNAME for USE_GITHUB in case we need to bump this
again for anything. It's more a hint of how to handle it in the future.
Reported by: mat
Discused with: mat, antoine, swills
With hat: portmgr
Update USE_GITHUB so it does not require GH_COMMIT.
Using this new scheme allows only setting the _tag_ or _commit hash_ in
GH_TAGNAME and not having to know the hash for a tag. This scheme will
download a tarball that has a different checksum than before due to a changed
directory name for extraction.
The following MASTER_SITES are provided to retain the old checksum and
directory structure (that require GH_COMMIT):
GH -> GHL
GITHUB -> GITHUB_LEGACY
Differential Revision: https://reviews.freebsd.org/D748
Submitted by: amdmi3
Reviewed by: mat, swills, antoine, bdrewery
With hat: portmgr
- Update to 3.1.1 which fixes pkg(8) crashing in 8.4 jails.
8.4 jails should be recreated if created with Poudriere 3.1 or
poudriere-devel-3.0.99.20141117.
Update to 3.1.0.
19 months have passed since the release of 3.0.0 and there have been 1259
commits from over 24 contributors. Though many of the bugfixes did make it into
the 3.0 branch, not all of them did.
3.1 brings many speedups, new features and commands, a new web interface, and
build hooks. The new web interface works at a top-level, jail-level and the
build-level still by using a static site with AJAX.
There is a queue system that is not quite ready yet but should make it into
3.2.
The release notes documenting the major changes is at
https://github.com/freebsd/poudriere/wiki/release_notes_31
Thank you to everyone involved.
Support can be found in #poudriere on Freenode.
- Update to 3.0.18
Changes:
* Add a check for 3.1 repository and reject the build. 3.0 does not know
how to handle 3.1's repository format. Downgrading is not supported
at this point.
* Allow securelevel>=1 with USE_TMPFS=all
* Add a warning that DEVELOPER=yes is ignored in lieu of bulk -t/testport
- Update to 3.0.17
Changes:
* Workaround regression with pkg-1.3 causing all packages to have new options.
* distclean: Fix some false-positives
* Fix dead link in poudriere.conf
- Update to 3.0.16
- Move to using pkg-plist
Changes:
This will likely be the last 3.0.x release. 3.1 is almost complete.
* Leftovers checking has moved to Ports Mk/Scripts/check_leftovers.sh,
which allows more consistency and easier maintenance without requiring
a Poudriere release to make changes.
* Staging Orphans has moved to Ports 'make check-plist' for the same
reasons. See r351587 for more information on the new behavior.
The new leftover/orphan code has new %%PLIST%% sub behavior and also
fixes many false-positive orphans, leftovers, and @dirrm showing.
(Only the first 15 lines of the commit message are shown above )
- Update to 3.0.15
Changes:
- Fix ipv6 only usage
- Ensure /sbin and /usr/sbin are in PATH when running
- Remove trailing slashes from listed_ports.
- Fix child process cleanup logic to only sleep if child
still running.
- Always dismount filesystems and try cleaning up when exiting and in jail -k
- For stage_orphans, ignore modified files (such as nobody vs root)
- testport -I: Mark cleanup done, not as recursively failing
- testport -i: Use a local.conf instead of PACKAGESITE
- testport -I: Suggest same login method which is more sane/clean than exec
/bin/sh
- options: Require dialog4ports as it runs from host and
jail may be for a different ARCH
- Ignore parents of home directories too during leftovers check
- Ignore /var/db/dbus/machine-id leftover
- Restrict ZFS on 9.0/9.1 due to known deadlock
- bulk: Parse MOVED for given port build list
- Add support for svnlite and overriding SVN_CMD
- Show warning when jail is newer than host
- Show host/jail OSVERSION in build logs
- Update to 3.0.14
Changes:
* Fix dependencies when existing packages have their origins moved
via MOVED by now loading and parsing MOVED for existing packages
only.
* Force umount some directories to avoid desktop utils traversing them
causing them to remain mounted.
* Fix stage orphan false-positives with KDE4_PREFIX
* Fix a race condition in bulk which could lead to 'unknown stuck queue bug'
* Fix usage of cpdup(1) -X [no functional change]
* Speedup bulk startup by not rolling back fresh builder jails
* Various parallel execution fixes
* Parallel execution errors now wait up to 30 seconds for children to
finish before ending the build.
* Ignore home directory of users created by ports during leftover check
- Update to 3.0.13
Changes:
* Fix leftover detection on HEAD due to new nmtree
* Fix jail rollback on HEAD due to new nmtree which manifested
as missing dependencies in /new_packages
* Don't exclude anything when looking for stage orphans, which
fixes finding /var/run/PORTNAME as an orphan
- Update to 3.0.11
Changes:
* poudriere.8: Document that -j is required for bulk
* bulk/testport: Delete packages that have changed PKGNAME during startup,
which will avoid pkg-repo duplicate package warnings/bugs. This will not
clean up existing duplicates, just fix new ones going forward.
- Update to 3.0.10
Changes:
* Fix random crashes with parallel process handling
* jail -cu: Disable CCACHE on 10
* testport/bulk -t: Fix staging absolute link checking with files
that have spaces
* testport: Fix so that MAKE_JOBS runs by default
* bulk -t: Fix so that MAKE_JOBS does not run by default
* testport: Fix so that the port being tested shows in the web ui.
Note that this is still in data/logs/bulk/
* jail: Make -m http work
* jail -c: Fix -m ftp-archive for 9.0
Number of commits found: 147 (showing only 100 on this page)