- Update web documentation for using custom ports tree
Changes:
- Add missing validations to check that the specified
ports tree exists
- SIGINFO/status fixes
- SIGINT/SIGTERM no longer marks a build as 'crashed'
- Fix pkgng being required on the host to build pkgng packages [1]
- Fix CCACHE support by always mounting to /root/.ccache
- jail: Fix USE_TMPFS=all cleanup/deleting
- ports -c: Fix svn+file
- Allow DISTFILES_CACHE=PORTSDIR/distfiles again
- Jail tar(1) and pkg(8) invokations
- testport: Make failed builds more clear [2]
Reported by: tj [1]
Submitted by: antoine [2]
- Update WWW to be a tagged link so that the documentation
matches the version installed
Changes:
- Add workaround for ZFS zteardown deadlock on 9.0/9.1-RELEASE
- jail -c: Fix NO_ZFS support
- options: Fix *make.conf not being respected
- status: Fix when running multiple builds at once
- Various fixes and documentation fixes
Changes:
- ZFS support is now optional:
* NO_ZFS can be set to disable ZFS usage
* TMPFS_ALL can be used to the build 100% in memory via tmpfs
- Jail/Port properties are no longer stored in ZFS. They will
be automatically converted on the first execution. This means
that downgrading to 2.x is not easily possible.
- Removed cron command
- queue/daemon added
* These will be expanded more in 3.1 and the usage may change.
- New HTML/AJAX interface using jQuery
- Build times are now tracked
- Runaway builds are now automatically killed after 7200/84600
seconds of no output / max build time
- Build logs are now saved forever and not removed on every build.
testport will store its logs into "bulk" dir for now as well.
- Ability to resume a previous bulk -a build by using -B (this
is mostly for exp-runs as it allows grouping incremental logs
in with the previous logs). By default the buildname defaults
to YYYY-MM-DD_HH:MM:SS for every build.
- Install depends just-in-time in the proper sequence ordering,
instead of all upfront. This also fixes differences between
testport and bulk with regards to run-depends.
- Give a port all the special depends distfiles it needs during
build as well. This fixes issues with fetching and distfiles.
- Add basic hook support in /usr/local/etc/poudriere.d/hooks
- CHECK_CHANGED_OPTIONS now defaults to verbose
- Add CHECK_CHANGED_DEPS (default yes) to automatically detect
direct dependency changes and rebuild packages if needed. This
allow automatically detecting default postgresql/mysql/perl
changes requiring rebuild of ports. Note this has a bug with
ports that depend on libraries that are in base, but have a
port fallback. This will be addressed in 3.1.
- The reason for packages being deleted during the startup is
now more verbose
- Speedup packaging by reducing I/O
- Port testing: Add "preinst_fs_violation" which will detect
ports that touch the filesystem during fetch/build before
calling install.
- Lots of performance improvements. Poudriere is now lock-free
and has very little overhead.
- Various documentation/typo fixes
- Support value of 'no' for NO_RESTRICTED and SAVE_WRKDIR
- Add new latest-per-pkg symlinks into the root bulk/ dir and
bulk/jail/ dirs to link back to the most recent builds for
each package
- Add new subcommand 'status' which lists running builds. Specify
-j[pz] to view the current status of a specific build and all of
its jobs
- Fix support for jails with ':' in them
- Buildtimes are now tracked
- ports:
* Support checking out a different branch with -B
- testport:
* -d option has been removed
* testport -i improvements:
- Network enabled
- Works even when build fails
- RUN_DEPENDS now installed
- Add hostname into /etc/hosts
- tty usage is fixed
* Add .keep support for wrkdir saving
- bulk:
* New C index builder for pkg_* builds
* Add -N: skip generating package repository or INDEX
* Add -T: Use TRY_BROKEN
* Add -F: Try to download from the original mirror and
ignore all FreeBSD mirrors
* Allow specifying -f multiple times
- jail:
* -c: Add -P ./path.to.patch to patch the src tree with
the given patch before building it
* -c: Fix on recent CURRENT by using DB_FROM_SRC
Thank you to all contributors and testers
Please report and discuss defects in #poudriere on freenode
or report to https://fossil.etoilebsd.net/poudriere/reportlist
Changes:
- Remove distfile sandboxing for now, which fixes several ports
trying to fetch files in the wrong phase and then failing.
This has been reworked in 3.0/poudriere-devel.
- Fix VERSION leaking into some builds
- Hide some harmless warnings
Feature safe: yes
This will be the last 2.x release. The 3.0 release will have
optional support for NO ZFS and is currently in testing.
- Convert tab to space in WWW
Changes:
- cron: This is now deprecated and will be replaced in 3.0 with a daemon
- testport: -d support has been deprecated and will be removed in 3.0. Use
-p instead.
- testport: Add interactive test mode with -i
- bulk: Add -vv to display which dependencies are required and causing
rebuilds
- jail: Validate that jails do not contain a '.' per jail(8) restrictions
- options: Fix options not properly recursing based on changed options
- bulk: The queue is now processed through a priority based on how many
other ports depend on the port that is ready-to-build [1]
- bulk: Add -R option to remove RESTRICTED packages after building
- bulk: Fix INDEX building
- Builds now mount packages, ports, distfiles and options as read-only
They are allowed to have changes made only in specific phases. Note that
'testport -c' is currently broken due to this.
- Fix IPv6-only hosts
- Build logs now include make.conf
- Improved leftover detection using mtree
- Ports now only have distfiles available to them that are registered in
their distinfo.
- Leftovers now use the entire PLIST_SUB list
- Fix WRKDIR being saved on extract failures
- More build performance improvements
- Improved stuck queue error displaying and handling
- TMPFS_LOCALBASE support added
- More sanity checks added for broken ports
- ports: csup support removed as CVS is EoL
- testport: Fix port's PREFIX not being respected
- ports: Fix svn+https support [2]
- Ability to always save WRKDIR if a .keep file is present
Submitted by: Matthew Dillon <dillon@apollo.backplane.com> [1] (based on)
Submitted by: antoine [2]
Changes:
- Documentation/usage cleanups
- Misc bug fixes
- jail: Add 'gjb' method support for stable/8
- testport: Show leftovers in plist format, with
support for DATADIR, ETCDIR, WWWDIR, DOCSDIRS,
EXAMPLESDIR, SITE_PERL
- testport: Fix -c showing a blank screen with some TERMs
- bulk: Fix skipped/total count being wrong
- ports: Fix -c/-d errors when no portstrees file exists
- ports: Fix -m not working
- jail: Add support for official ftp snapshots
- ports/jail: Add support for svn+file and svn+https
- bulk: Show jailname in summary output
- Sort PLIST_FILES and remove trailing slash
Changes:
* Heavy parallelization improvements
* Performance improvements
* Non-ZFS ports trees are now supported. See the site
for details on how to use a local tree.
* distclean: New script to cleanup old distfiles
* bulk: New NO_RESTRICTED flag to clean restricted distfiles and packages
* jail: Add 'gjb' method to use Glen Barber's snapshots
* jail -cu: Support PARALLEL_JOBS/-J for buildworld
* jail -cu: Enable ccache support, requires host have devel/ccache
* New TMPFS_DATA to allow having the pool,cache and other poudriere temporary
files be stored in memory (important if using bulk -a)
* Fix needing pkg_install on host for pkg_install target builds
* bulk/testport: Automatically detect dependency loops and
deadlocked queue, which fixes "infinite loop" or "hang"
when building
* options: Add -c/-C to select config/config-conditional
* testport: Fail the test if dependencies fail
* HTML Stats page now auto refreshes every 10 seconds
* Fix HTML Stats not being written atomically
* bulk/testport: Add -v flag to be more verbose
* bulk/testport: -D is now -vv
* jail -c: Install games dist as some ports require it to build
* Html status: Link port origins to portsmon
* testport: SAVE_WRKDIR is now supported
* Better FreeBSD 8.3 support
* Many bugfixes
Feature safe: yes
Changes:
* Lots of bug fixes
* Support JAILNAME-make.conf and PTNAME-make.conf
* Updated ZSH completions
* The 'pbi' subcommand has been removed
* New "SET" feature. bulk, options, testport now all support
a '-z SET' option that allows for extra customization of
make.conf and options. See CUSTOMISATION section in
poudriere(8) for more information.
* Improved compatibility with older FreeBSD versions
* Poudriere itself can be jailed, see website for more details.
* Any ZFS dataset can now be used as a ports tree. Just set
poudriere:type=ports and define poudriere:name to use as a ports tree.
* ports:
- No longer create port tress in ports/ subdirectory when using SVN or git
* options:
- Fix improperly using options-JAILNAME instead of JAILNAME-options
directory, resulting in options not being used.
- Fix the specified ports tree not being used
* bulk:
- Support for building the entire ports tree with the -a option
- Support for overriding WRKDIR_ARCHIVE_FORMAT, see new
poudriere.conf.sample
- Summary output updates
- SIGINFO improvements
- Improved output during startup, explaining which files/directories
are being used for the build.
- Fix skipped ports causing incorrect counts
- Logs are now only cleared on -c again
- New '-C' option that deletes any existing packages, but only for
the ones listed. This works well with '-t' for bulk testing.
* jail:
- Better version detection on new jails via newvers.sh
* testport:
- Lots of leftovers improvements
- When using pkgng, DEVELOPER_MODE is now enabled by default, which
will run extra plist checks.
Feature safe: yes
- changes:
* new poudriere options command to be able to configure options interractively
* bulk can now take list of ports to build via command line
* html build stats
* ability to disable linux support
* ability to disable PACKAGE_BUILDING
* native support for ccache
* deprecated csup for ports
* Set HOME to fix some port builds (erlang for example)
* Fix pool being deleted during builds
* Detect improper dependency on different ports for the same package
* Cleanup build stats sooner when starting bulk
* lots of performance improvements
* lots of fixes and refactoring in error handling
* allow to choose custom path on the pool for the zfs filesystems
* now skip (and track as skipped ports dependening on a failing dependency)
* siginfo support
* new -d options for bulk and testport, to enable debugging mode
- changes since 1.5.x:
* parallel build, can build multiple packages at the same time
* options discovering rebuilding
* huge performance improvements in sanity check
* better output (close to tinderbox)
* better log separation
* better leftover discovery
* many bug fixes
- register conflicts between poudriere and poudriere-devel
- poudriere devel brings:
* support for ports using svn, svn+http, svn+ssh
* improve jail building from sources (still experimental)
* POUDRIERE_DATA is no more needed, if it doesn't exists it now looks for a
data zfs FS which by default will be in ${BASEFS}/data
* bulks now keep packages by default (incremental) (-k is gone replace by a -c
to clean everything before starting)
* bulks are now built in parallel (number of parallel built being hw.ncpu by
default
* cron directory is now autocreated and default location is the data dir
* jails are now created and mounted by default in a sub FS (${BASEFS}/jails/<jailname>
* ports tree are now created and mounted by default in a sub FS (${BASEFS}/ports/<portstreename>
* tinderbox-style output for logs
* logs are now created in data/logs/<buildtype>/<jailname>/<portstreename>/pkgname.log
* lots of performance improvements
- changes:
* improve modification detection with zfs diff (pgj@)
* replace ftp by fetch(1) all over the place (this allow installing from http
mirrors)
* make fetch(1) using passive ftp when fetching from ftp
* new option -t <version> to jail subcommand, to binary upgrade to a newer
version (still some interactive parts :()
* always destroy the jail before zfs rollback to make sure no process are
still running (fix poudriere hanging after packaging totem for example)
(reported by des@ and gnn@)
* fix ipv6/ipv4 support determination (tested by gnn@)
- changes:
* always remove previous pkgng repository before rebuilding the new one
* make ftp passive by default
* experimental support for ccache (needs a bsd.local.mk)
* add -s to testport and bulk, to skip sanity checking
* creating jails from csup/svn still experimental, but now it can works for
real :)
- changes:
* Now ipv4 or ipv6 information are automatically gathered out of sysctl
* CHECK_CHANGED_OPTIONS to detect changed options with bulk -k and pkgng (this
force rebuild of package if options has changed
* Fix signal handler not actually exitting
* Track IGNORED stats
* Support for signing pkgng repo
* give to the jail network access during make checksum to allow refetching
distfiles
- changes:
* poudriere ports -u using portsnap can safely be run from cron now
* Remove stale repo.sqlite as well to prevent deps constraint error with pkgng
* add allow.chflags to jails
* Add support for upgrading a jail using freebsd-update (only security
upgrades for now) if the jail was created from ftp.
* experimental support for creating/upgrading a jail from svn/csup beware that
the -v when creating should be adapted to svn branches (stable/8, head) or
csup (RELENG_8, .)
* do not run make deinstall in case of normal bulk (speeds up a bit the bulk)
* Add NOIPV4 and NOIPV6 support
* Speed up a bit sanity checking by caching the dep list for each packages
* Add some caching to avoid running make -V again and again when possible
- changes:
* Sanity check, clean all the old package not only the one that are concern by the run
* No more recursive cleanup in case of failure
* Code cleanup and consistency improved
- changes:
* jails are now real jail(8)
* only have network access during make fetch
* poudriere jail -i -j <yourjail> now shows the activity of the jail
* csup support for poudriere ports
* new poudriere cron and poudriere queue command
Changes:
- add ARCH=i386 in make.conf on i386 jail for amd64 host [1]
- testport and bulk now uses the same package dir: ${POUDRIERE_DATA}/packages/<jailname>-<portstreename> [2]
- fix testport with pkgng
- remove an extras .txz when creating a jail > 9.0
Submitted by: martymac[1]
Suggested by: avilla[2]
FreeBSD. However, most people will find it useful to bulk build ports
for FreeBSD.
WWW: http://git.etoilebsd.net/poudriere/
Of course this is pkgng aware and it support incremental upgrade of binary bulks :)