add: new build stage "upload" in BUILD_STAGES instead of two
"upload_logs" and "upload_pkgs".
Two new variables are introduced: CSS_FILE and ICON_FILE.
Now user can override the default distbb.css and distbb.ico.
.pkg-total style is not used for "Inspected packages" line.
Major changes:
fix: workaround for buggy FreeBSD (at least 6.2-7.2) shell that
doesn't handle correctly 'if eval false;' statement if 'set -e'
mode is activated.
fix: PSS_SLAVES is unset before building src_summary in !MASTER mode.
New variable RSYNC_CMD is introduced. It sets the command used for
uploading logs and packages. [rsync]
New variable REPORT_FILE is introduced. It defaults to
"report_mini.txt" for shortened report. Set it to "report.txt" for
full report. REPORT_CMD variable doesn't contain `<' redirection
anymore.
New option "distbb -K" for skipping a pkg_summary updating step.
New option "distbb -l" for labeling a bulk build. Unless -B option
was applied, BUILD_ID and logging directory will look like
YYYYMMDD-<label>.
New option "distbb -x" for excluding specified stages from bulk build.
For example, "distbb -xupload_pkgs -xupload_logs -p wip/distbb".
NOTES section in META/report.html is not surrounded by <p></p> pair.
Do it manually if you need.
"distbb -B" can get a full path to the logging directory, not just
subdirectory of $REPORTS_DIR. Such a directory may be everywhere,
not necessarily under $REPORTS_DIR.
By default net/tnftp is also a part of EXTRA_DEPS.
Better handling of REPORT_MINI_SIZE_LIMIT.
Warning messages about packages versions going backward are
collected in $build_src_summary_log_fn
FIXED: {alter,native}:../depend/encies were handled incorrectly.
As a result distbb wrongly detected cyclic dependencies, e.g.
devel/p5-Module-Build -> devel/p5-version
devel/p5-version -> devel/p5-Module-Build
To fix this problem an external utility pkg_summary2build_graph is
used for creating a dependency graph for building packages.
Improvements for bulk building multivariant packages.
PSS_PAEXEC_EXTRA_OPTS is by default set to $PAEXEC_EXTRA_OPTS.
See pkg_src_summary(1) and paexec(1).
xxx.done files have been renamed to xxx_done.tmp and therefore are
not uploaded anymore.
Minor fixes in Makefile.
DEPENDS on latest pkg_summary-utils and latest paexec
DISTBB now depends on latest paexec-0.13.0.
New configuration variable PAEXEC_EXTRA_OPTS for passing extra
options to paexec(1). It defaults to -Z300.
As of this version if one or more (but not all simultaneously!) of
your build hosts hanged up, or other type of bad things happened,
distbb will try to restore connection to them automatically every 5
minutes (by default, see PAEXEC_EXTRA_OPTS). That is, now you can
run pkgsrc bulk builds even on not very stable hardware, software
and even over unreliable network, e.g. internet, without warrying
about manual restarting a bulk build. Now you can reboot your build
hosts freely. If you prefer old distbb behaviour, set
PAEXEC_EXTRA_OPTS to -z. See paexec(1).
all .html pages of the report have favicon taken from here
http://www.netbsd.org/~dillo/ made by Dieter Baron.
Later I'll try to create my own...
added: option -s. If applied, an exit status is 0 if building *ALL*
packages succeeded, otherwise exit status is 5.
Now bulk builds don't stop in case of connection failure to the
build host (power down, segfault, hang up for any reason etc.). Such
a host is marked as unavailable and distbb continuous to work
reassigning a failed package (if any) to another build host.
EXTRA_DEPS_CMD variable has been removed from configuration.
Packages listed in EXTRA_DEPS are built one-by-one in order they are
listed in.
stage_gen_report: new link in "Jumps" section
distbb.conf is splitted into two parts: global defaults
(distbb.default.conf) and user's settings (distbb.conf). This is
major change in distbb! Instead of upgrading your existing
distbb.conf it is *strongly* recommended to recreate it from
examples/ template. Sorry for inconvenience.
added: 'distbb -r|--retry' option. if your bulk build failed for
some reason, you may continue it from that point it stopped at by
running 'distbb -r -B YYYYMM.HHMM'
stage_upload_pkgs now supports NO_BIN_ON_CDROM and NO_BIN_ON_FTP.
By default all packages are uploaded. If you want to change this,
set UPLOAD_PKGS_FILES variable in your distbb.conf
(See distbb.default.conf for a list of available variants).
stage_xxxx.html improvements. Packages failed due to their
dependencies now have their own info.html. So, you can see its
summary and decide whether to fix this package or not.
DEPENDS_TARGET configuration variable is removed, now it should be
a part of EXTRA_OPTS. See distbb.default.conf
mini report is introduced (META/report_mini.txt) which is sent by
stage_report (by default). In this mini report "Failures per
maintainer" and "Failed due to dependencies" sections are removed.
A purpose of this is to reduce a size of the report sent by email
(pkgsrc-bulk mailing list has limitations).
New config variable REPORT_MINI_SIZE_LIMIT. report_mini.txt sent by
email is limited to approximately REPORT_MINI_SIZE_LIMIT bytes.
PKGNAMEs are removed from report{,_mini}.txt. This also reduces
report's size.
New configuration variable BUILD_STAGES which stores a list of
building stages. If you want to, for example, send report before
uploading binaries, change this variable in your distbb.conf.
But be careful, list of available stages may change in the future.
dbb_init target does not output useless noise to stdout anymore. As
a result it is usually not listed in failed package's stage_*.html.
Usage of REPORT_CMD changed. Now redirection from stdin (report.txt)
should be inside it. Update your distbb.conf and set I_AM_READY to 4
ADDED: new config variables USER_MAIL and MAIL_PROG. They are for
stage_report.
ADDED: PKG_CMP_SUMMARY_CMD configuration variable, for setting
a program for comparing pkg_summary(5) for available binaries and
pkg_src_summary collected from pkgsrc source tree.
distbb.default.conf SPECIAL_PACKAGES:
'dbb_canbebuild' and 'replace' targets removed, 'dbb_vars' added
dbb_vars target fix: POSIX sed does not except \n
While running bulk builds for PKGSRC+WIP packages, I've found that
PKGNAME is not unique for ALL packages. So, neither PKGPATH nor
PKGNAME is unique. This leads to distbb failure happened because
different packages have the same directory for logging. To avoid
this I've changed per-package logging directory from PKGNAME to
category_package_PKGNAME, e.g. pkgtools_pkg_chk_pkg_chk-1.2.3.
The same may happen if you build, for example, (for testing
purposes) both
textproc/dictem:EMACS_TYPE=xemacs215 and
textproc/dictem:EMACS_TYPE=xemacs214.
In both cases PKGNAME remain the same. This case is not fixed yet.
FIXED typo in stage_gen_report:
packages_failed_prev_cnt(bug) -> packages_failed_deps_cnt(ok)
Workaround for the following bug in Korn shell.
Seen on Interix's /bin/sh, FreeBSD's /bin/sh (and NetBSD's /bin/ksh)
0 ~>cat /home/cheusov/tmp/1.sh
#!/bin/sh
set -e
if eval false; then
echo 'Really?'
fi
echo "Ok"
0 ~>/bin/sh /home/cheusov/tmp/1.sh # good
Ok
0 ~>/bin/ksh /home/cheusov/tmp/1.sh # bad
1 ~>
DISTBB feature list in README
New stage_post_build containing user's actions is added.
Actions are defined in 'post_build' shell function in distbb.conf.
Update your existing distbb.conf! I_AM_READY=3 is required.
distbb.mk: new 'dbb_vars' target that outputs formatted variables
values. They may be useful for debugging.
I put dbb_vars to the default TARGETS.
Code updating "virtual best" bulk build directory
is now separated to an individual stage - stage_update_best.
It is run after 'stage_gen_report'.
distbb.conf: logging directory default changed from xxx/log to xxx/logs.
stage_gen_report: progress messages become more verbose
DISTBB_CONF environment variable points to the distbb configuration file,
it is overriden by -C option (distbb -C). -C option is new option.
By default @@sysconfdir@@/distbb.conf is used.
distbb.conf:
New mandatory conf variable DISTBB_LOCAL_MK, that should
point to distbb.local.mk
distbb_diff:
+d means that given package is now built correctly but
previously was failed DUE TO ITS DEPENDENCIES
-c means "pkg_src_summary" failed for given package
n[-+] changed to N[-+]
REPORT
META/packages_total.txt renamed to META/packages_built_total.txt,
new "Packages built (total)" line added to META/report.html
META/packages_built_total.txt = META/packages_built_{*}.txt
New report file META/packages_failed_total.txt,
new "Packages failed (total)" line added to META/report.html
META/packages_failed_total.txt = META/packages_failed_{*}.txt
New report file META/packages_failed_notavail.txt that lists
packages marked as "not available",
new "packages marked as not available" line added to report.{txt,html}
New entry to the report: "Inspected packages"
PKGNAME/stage_xxx.html: links to other stages appear both at the
top and bottom of the html page
If building stage succeeded without any output
(e.g. dbb_canbebuilt or dbb_excluded) it is not listed in other
PKGNAME/stage_xxx.html files, i.e. no links to such files
Link to package's summary (PKGNAME/summary.txt) is added to
PKGNAME/stage_xxx.html
Major changes:
FIX: serious bug in "stage_build is rerunable" feature.
Generating a queue of tasks was not fully correct.
FIX: stage_gen_report may fail because of spaces inside MAINTAINER
field in package's summary (lang/gauche/Makefile revision 1.50).
Now everything after comma is removed, that is only first maintainer
in the list is printed.
fix: META/packages_{built,failed}.txt may have duplicates when
PREFIX/libexec/distbb/stage_build is run more than once
(rerun manually after unexpected failure)
New section in report.{html,txt} - "old bulk build vs. new bulk build".
It contains a list of packages that was built previosuly but failed
and more. See information about distbb_diff executable below.
To activate it, run 'distbb -B'. By default this feature is disabled.
New section in report.{html,txt} - "BEST bulk build vs. new bulk
build". The same as "old bulk build vs. new bulk build" but instead
of "old bulk build", "virtual best" bulk build is used. It is not a
real bulk build but a collection of packages that where built
sucessfully in the past. In this section you'll see ALL regressions,
not only regressions in comparison with ONE PREVIOUS bulk build.
report.txt is reorganized. Now it is aligned to 75-columns.
No "Failed Stage" column, ---- separator between sections,
"responsible person" is not included anymore
and other minor changes.
"failed due to deps" section is reorganized in both report.html and
report.txt. Both maintainers are output, i.e. maintainer of the
indirectly failed package and maintainer of failed dependancies.
New executable - 'distbb_diff' intended for comparing two
bulk builds.
usage: distbb_diff [OPTIONS] bbdir1 bbdir2
OPTIONS:
-h|--help display this help message
-V|--version distbb version
bbdir1 - path to bulk build directory, e.g. ~/bulk-logs/20080915.1010
bbdir2 - path to bulk build directory
Output format:
<CMP> <PKGPATH> <PKGBASE> <Version(s)>
where CMP is a combination of the following characters
+ - package failed in bbdir1 but succeeded in bbdir2
- - package was built sucessfully in bbdir1 but failed in bbdir2
R - package was removed or pkg_src_summary failed for it
d - package failed due to broken dependency
fix in stage_gen_report: detecting a "failed stage" is more correct
now (it takes into acount SPECIAL_PACKAGES field) and becomes clearer.
Log files PKGNAME/failed_packages.txt have been renamed
to PKGNAME/failed_deps.txt
META/*.raw files are not uploaded
report_html is run once, a whole stage_gen_report is now much faster
example distbb.conf:
CREATE_WRKDIR_SYMLINK=no added to EXTRA_OPTS,
obsolete PAEXEC_BUFSIZE removed,
-m option added to pkg_src_summary (PKG_UPDATE_SRC_SUMMARY)
Version 0.19.1, by Aleksey Cheusov, Sun, 14 Sep 2008 11:11:33 +0300
minor addition in stage_gen_report: failed package in "Failed due to
dependencies" section are now printed in their "short" form.
Version 0.19.0, by Aleksey Cheusov, Sat, 13 Sep 2008 12:00:06 +0300
Multivariant packages, that is packages/modules for different
versions of Apache, Python and PHP can be built by "distbb". To
enable this set PKG_UPDATE_SRC_SUMMARY variable to
'pkg_src_summary -m ...'
in your distbb.conf. Because of this new feature per-package
logging directories are changed from PKGPATH to PKGNAME. I don't
like this (sometimes this makes untrivial the searching for logs of
a particular packages) but I don't see any reasonable
alternatives. AFAIK Joerg's pbulk does the same.
"support for multivariant packages" feature has one interesting
side-effect. PKGPATHs passed to distbb (by -f, -p options or
LIST_ALL_PKGS_CMD variable in config file) can now be "enriched"
with building options.
Format for this "enriched" PKGPATH:
category/package[:var1=value1[,var2=value2[,...]]]
For example:
textproc/dictem:EMACS_TYPE=xemacs214
www/ap2-wsgi:PKG_APACHE=apache22,PYTHON_VERSION_REQD=25
Spaces are also allowed inside "valueN", they should be encoded as
symbol ~ (tilde).
As a result you can build several variants of a given package
with different options (see OPTIONS framework) by passing to distbb
"enriched" PKGPATHs like the following
sysutils/mc:PKG_OPTIONS.mc=-subshell~-slang~-charset,PKGNAME=mc-light-4.6.1nb4
sysutils/mc:PKG_OPTIONS.mc=samba,PKGNAME=mc-full-4.6.1nb4
sysutils/mc:PKG_OPTIONS.mc=-x11,PKGNAME=mc-nox11-4.6.1nb4
Local copy of pkg_src_summary (i.e. META/pkg_src_summary.txt) is
used for building packages and generating report. This means that
after stage_init finished, you may change PKG_SRC_SUMMARY file (by
another distbb bulk build, pkg_update_src_summary or whatever).
distbb.conf.in: no need for DISTBB_LOCK variable
stage_init.in: minor fixes (awk getline vs. end of file)
stage_init.in: if PKG_UPDATE_SRC_SUMMARY_CMD fails, its stderr is
output to stderr too, not only to META/build_src_summary_log.txt
(normally PKG_UPDATE_SRC_SUMMARY_CMD should always exit with exit
status 0, failure means fatal error).
Directories for logging (REPORT1_DIR/PKGNAME) are created as soon as
they become necessary, not all at once at the beginning...
Code for removing the empty logging directories is moved from
stage_gen_report to stage_build
stage_build becomes rerunable. If, for example, your SLAVE hosts
hanged up, turned off due to power lost or something similar
happened while BUILDING stage, you can continue running bulk build
by running PREFIX/libexec/distbb/stage_build <BUILD_ID>.
NOTE: In case MASTER host hanged up or turned off, rerunning
stage_build may be not fully correct because of possible data loss.
stage_build script is fully reworked. As it was planned, tricky and
dirty shlock/sh/awk code that processes packages graph is now
removed from distbb. All necessary functionality is generalized and
becomes a part of external utility "paexec" (see paexec -s option).
As a result pkgtools/shlock is not used anymore.
wip/netbsd-uuencode is not used anymore. PAEXEC sends unencoded data
to distbb.
ADDED: -p option. If you want to build a few packages, you
can specify them in command line:
distbb -p 'wip/dict-server wip/pkg_online wip/distbb'
Actually this option was added in version 0.16.0.
I just forgot to mention it in appropriate NEWS section.
FIXED: packages for which pkg_src_summary (pkgsrc tree scanning) failed
(bad PKGPATH, errors in Makefile etc.)
appear in META/packages_built_prev.txt.
Now such packages are collected in META/package_failed_scan.txt
If such failures happen, report.html includes an additional line
Packages failed (pkg_src_summary/scanning) <COUNT> <LOGS>
Slave hosts/chroots save building logs locally and send them to the
master host only after building is completed. This can speed-up
building.
"Top offenders" -> "Failures per maintainer"
Some developers treat the word "offender" offensive.
Packages failed at dbb_canbebuilt (that is packages failed because
of ONLY_FOR_PLATFORM, ONLY_FOR_PLATFORM etc.) and dbb_excluded
(packages are excluded from bulk build by person who runs a bulk
build) stages do not increase "failures per maintainer" counter.
It is recommended to always include dbb_canbebuilt to TARGETS,
otherwise counters in "Failures per maintainer" will be not fully
correct.
Speeds-ups for stage_gen_report
Version 0.16.0, by Aleksey Cheusov, Sat, 19 Jul 2008 14:13:26 +0300
fixed: after bulk build finished, not all empty CATEGORY/PACKAGE
directories were removed.
packages_built_prev.txt, packages_built.txt, packages_failed.txt,
packages_failed_deps.txt and packages_total.txt files now contain
both PKGPATH and PKGNAME
META/summary_cmp.txt is generated (pkg_summary vs. pkg_src_summary
comparison) and is included to report.html
META/pkg_src_summary.txt is generated and is included to report.html
Progress messages are generated in META/progress.txt.
This file is included to report.html
Cleaning the working directories is now optional.
distbb.conf:
CLEAN_TARGET=clean # clean them! (default in example distbb.conf)
CLEAN_TARGET=dbb_none # keep them!
Update your distbb.conf!
html link to itself is removed from report.html
CATEGORY/PKG/stage_*.html log files also conform to "HTML 4.01 Strict".
Tested via http://validator.w3.org
An internal "init" target and initial (before building start)
"clean" targets are not hardcoded in libexec/distbb/slave script
anymore. The special target "dbb_init" is implemented in
share/distbb/distbb.mk for initialization (removing PREFIX/PKGDBDIR
and unpacking bootstrap). Both "dbb_init" and "clean"
targets should be a part of TARGETS variables. Update your local
distbb.conf and set I_AM_READY to 2
META/packages_built.txt is sorted alphabetically and is included to
report.html as "list", That is, no "sorted" and unsorted" lists
anymore.
Minor fixes and additions in example distbb.conf
============================================================
Example of bulk build result:
http://www.mova.org/~cheusov/pub/pkgsrc-distbb/Linux/current-unprivileged/log/20080719.1147/META/report.html
META/packages_total.txt file is build that contains a list built
packages plus those that are not rebuilt (no need for this). This
file is uploaded by stage_upload_logs.
report.html now includes links to META/packages_total.txt,
META/packages_built_prev.txt, META/packages_built.txt,
META/packages_failed.txt and META/packages_failed_deps.txt.
added: option -B to 'distbb' executable. This is usefuil for
debugging. It sets an unchangable BUILD_ID.
LIST_ALL_PKGS_CMD command is run on the first slave host from
$SLAVES list in case both SLAVES and TRANSPORT are set. The problem
with master host is that master's and slave's /usr/pkgsrc may be not
the same.
FIXED: sometimes packages are built in a wrong order.
FIXED: there were two examples for PKG_UPDATE_SRC_SUMMARY_CMD
in the sample distbb.conf:
'pkg_update_src_summary' and 'pkg_src_summary'. But the latter
just didn't work because these two commands have imcomppatible usage.
Now this is fixed but changes are incompatible with old distbb.conf.
Update it according to the new sample for distbb.conf.
Also set I_AM_READY variable to 1.
Side effect: 'pkg_src_summary -A' can now be used for generating summary.
This will build pkg_src_summary only for requested packages (distbb -f)
and their dependancies, not for entire pkgsrc
tree (pkg_update_src_summary).
Both Hubert's bulk build and pbulk work this way. Now distbb too.
FIX: EXTRA_DEPS now can contain more than one package and is handled
correctly. Copy EXTRA_DEPS_CMD from the sample to your distbb.conf
The following files are sorted alphabetically:
CATEGORY/PACKAGE/failed_packages.txt
CATEGORY/PACKAGE/failed_because.txt
META/packages_built_prev.txt
META/packages_failed_deps.txt
In case of LOTS of failures this make searching in these files much easier.
Latest paexec, runawk and pkg_summary-utils are needed.
report.html conforms to HTML 4.01 Strict specification.
Thanks to validator.w3.org.
UTF-8 charset is also used (See NOTES and RESPONSIBLE variables)
"build_end" date/time are moved from stage_gen_report to stage_build.
Lots of comments and suggestions in the sample for distbb.conf
Other minor fixes, improvements and code clean-ups.
ADDED: mega-feature/new variable SPECIAL_PACKAGES
Example and notes from distbb.conf:
...
# some packages fail to build because they are a part of pkgsrc
# bootstrap. if you want to build them try to uncomment lines in
# SPECIAL_PACKAGES variables
#
# you may also want to use different building options
# to build some packages, e.g. to use gcc-3.4 for building
# audio/festival,
# under Linux Debian/etch or DragonFlyBSD where it is a part
# of "base" system, see lines in SPECIAL_PACKAGES.
# NOTE: There are no quotes around string containing spaces
# (this is not shell ;-) )
# NOTE: An empty string after EACH package section is mandatory
# NOTE: Do not forget that you can define your own Makefile targets
# in distbb.local.mk. this new target can run, for example,
# pkg_add -u
SPECIAL_PACKAGES="\
#PKGPATH=pkgtools/digest
#TARGETS=depends fetch checksum configure build package
#EXTRA_OPTS=BATCH=yes PKG_VERBOSE=1 USE_DESTDIR=full CHECK_SHLIBS=no
#
#PKGPATH=pkgtools/bootstrap-mk-files
#TARGETS=depends fetch checksum configure build package
#EXTRA_OPTS=BATCH=yes PKG_VERBOSE=1 USE_DESTDIR=full CHECK_SHLIBS=no
#
#PKGPATH=net/tnftp
#TARGETS=depends fetch checksum configure build package
#EXTRA_OPTS=BATCH=yes PKG_VERBOSE=1 USE_DESTDIR=full CHECK_SHLIBS=no
#
#PKGPATH=sysutils/checkperms
#TARGETS=depends fetch checksum configure build package
#EXTRA_OPTS=BATCH=yes PKG_VERBOSE=1 USE_DESTDIR=full CHECK_SHLIBS=no
#
#PKGPATH=devel/bmake
#TARGETS=depends fetch checksum configure build package
#EXTRA_OPTS=BATCH=yes PKG_VERBOSE=1 USE_DESTDIR=full CHECK_SHLIBS=no
#
#PKGPATH=pkgtools/pkg_install
#TARGETS=depends fetch checksum configure build package
#EXTRA_OPTS=BATCH=yes PKG_VERBOSE=1 USE_DESTDIR=full CHECK_SHLIBS=no
#
#PKGPATH=audio/festival # TARGETS is not changed!
#EXTRA_OPTS=CC=/usr/bin/gcc-3.4 CXX=/usr/bin/g++-3.4
#
"
distbb.conf: 'extract' and 'patch' targets are in TARGETS now.
distbb.conf: fix in comment: package-deinstall -> deinstall
Two new variables (for distbb.conf) are introduced:
- STDIN_FROM_DEV_NULL:
Some broken packages need an interaction with user even if BATCH
variable is set to YES. This may "hang" a bulk build. If you
don't want this, set the following variable to "1", otherwise
leave it unset.
- LOG_SIZE_LIMIT:
If STDIN_FROM_DEV_NULL=1, some packages may produce infinite
garbage to stdout and in turn may waste ALL your free disk
space. To prevent this, set the following limit. Leave it unset
for no limit.
fix:
If there is nothing to be built stage_build may fail under Linux,
Solaris, HP-UX, Interix and probably many others. This is because
Free/NetBSD xargs works differently - in case of no input it just
do NOT call program (xargs's argument) at all. Others do.
stage_*.txt files are not uploaded anymore.
Only html versions are uploaded.
README: distbb is NOT fork of pbulk in any way! ;-)
It was written from scratch.
Upgrade to version 0.11.0
Major changes:
Both .html and .txt report include a number failed dependancies for
each indirectly failed package. This number was limited by hardcoded
constant, now it is regulated by variable MAX_FAILED_DEPS_CNT Add it
to your distbb.conf.
stage_gen_report: fix for Debian dash - its ` and $( work
differently :-(
distbb uses TARGETS variables that contains a list of targets to run
in order to build, install and create a binary package. TARGETS
variable can easily be changed by user and this makes distbb very
flexible - user may change build order or even define his own
build/packaging procedure. As of this version user can define
his/her own make rules without changing mk.conf and without
recreating bootstrap tarball - by changing
/usr/pkg_distbb/etc/distbb.local.mk file, second configuration file
of distbb. distbb also defines two its own special targets which you
can use: dbb_canbebuilt and dbb_excluded. Read comments in
/usr/pkg_distbb/share/distbb/distbb.mk about them. Note that
etc/distbb/local.mk MUST exist, copy it from
share/examples/distbb/distbb.local.mk to etc/distbb.local.mk
and edit for preferences.
Major changes:
At startup, PREFIX and PKGDBDIR directories are deleted and
bootstrap is unpacked (on all $SLAVES when MASTER_MODE=yes).
NOTE: if you are upgrading from previous versions of distbb,
recheck your EXTRACT_BOOTSTRAP_CMD (tar -C / is needed).
distbb.conf: more examples for alternative/distributed
PKG_UPDATE_SRC_SUMMARY_CMD. If you'll use distributed one,
make sure PATH variable contains /usr/pkg_distbb/bin directory.
Major changes:
Instead of red counts the "Breaks" column now contains the link to
the actual list of indirectly failed packages.
stage_gen_report: hardcoded string "Responsible person" is not printed
distbb.conf: another example for PKG_UPDATE_SUMMARY_CMD
Additions and more details in README
BUILD_START renamed to BUILD_ID
Sometimes building packages stops because some of them require an
interaction with user. BATCH=yes doesn't help. In order to prevent
this, bmake is run with < /dev/null. As a result, such a bad
packages can not break/stop bulk builds anymore.
distbb version is included to the report.
An information about the person that runs a bulk build, is
optionally included to the report.
LIST_ALL_PKGS_CMD variable is introduced. It defaults to
'pkg_list_all_pkgs'. If set, the specified command is run to get
list of packages to be built.
You need to upgrade your distbb.conf
Examples:
LIST_ALL_PKGS_CMD='@@bindir@@/pkg_list_all_pkgs'
#LIST_ALL_PKGS_CMD='( @@bindir@@/pkg_list_all_pkgs
cat my_extra_wip_packages.txt )'
added: distbb --version|-V
"on <SLAVEHOST>" is appended to 'succeeded' and 'FAILED' log
messages. That is now it is seen on which host a particular package
succeeded or failed.
distbb.conf.in:
# The following is for pkg_summary-tools > 0.5.0
#PKG_UPDATE_SRC_SUMMARY_CMD='@@bindir@@/pkg_update_src_summary -f \
# "PKGNAME PKGPATH DEPENDS BUILD_DEPENDS"'
NEWS:
stage_init.in: completely reimplemented. An algorithm become easier
and cleaner. FIXED: incorrect calculating "build_previously" count,
and therefore "total_packages" too. The code also become cleaner.
FIX: build_init.in now doesn't depend on fields order in
pkg_src_summary (doesn't reply on that PKGPATH is before
[BUILD_]DEPENDS). This may cause an inifinite loop because of
oncorrect (cyclic) dependancies in META/tmp/trans_closure.tmp
distbb.conf.in:
minor fix: pkg_src_update_summary -> pkg_update_src_summary
Exporting LC_ALL=C and other important initializations have been
moved from distbb.in to common.in. Now every significant
initialization is made in PREFIX/libexec/distbb/stage_*, i.e. these
scripts become more all-sufficient.
Minor changes and fixes in README