Commit Graph

443 Commits

Author SHA1 Message Date
Dirk Meyer
3ac2f4749e - add check sysvipc
happens when security.jail.sysvipc_allowed=0
2006-12-03 17:59:09 +00:00
Mark Linimon
2830a3d3df Work around the fact that 5-exp, these days, is really another 6-exp,
except in disguise.
2006-11-25 15:51:02 +00:00
Mark Linimon
3c741dc25b Since we already have the data from the grep, go ahead and make the 'latest
log' cell a link to it.  My weak awk/sh skills are evident here, but it
does the job.
2006-09-23 07:44:34 +00:00
Mark Linimon
c5e446540c Add links to cvsdone and INDEX files. Add some whitespace. 2006-09-23 05:39:53 +00:00
Kris Kennaway
81aca5b157 * Back up duds to duds.old before, not after we create the new one
* Add more XXX comments for future work

* Only record a cvsdone timestamp if we updated cvs

* When building with -trybroken, it's safe (and desirable) to run the
  prunefailure script

* Reorganise a few things for better parallelism

* Instead of keeping a duplicate copy of the previous logs and errors
  under bak/, just store a symlink to the archival location

* When doing an incremental build, also cycle out the old logs to avoid
  broken links on the website (the logs from the previous build are
  removed until the packages are rebuilt).  Use cpio to create
  hardlinked copies of the previous logs.  XXX when these are bzipped
  by cron to save space the links will be broken and it might actually
  take more space.

* Don't bother bunzipping old logs, now that the processlogs scripts
  can handle it.  This was a waste of time anyway since they'd all be
  rebzipped by the next nightly cron job.

* When the build is complete, stash a copy of the restricted ports in
  bak/restricted/ before deleting them from packages/, and restore from
  here when doing an incremental build to avoid needlessly rebuilding
  them each time.
2006-09-14 05:43:23 +00:00
Kris Kennaway
b7cf9de7e5 * When calculating the IP address to use for the jail, don't use
127.0.0.0 or 127.0.0.1

* Don't use chroot to mount the linprocfs, or it won't be visible
  within the jail.
2006-09-14 05:33:12 +00:00
Kris Kennaway
8dcaefb8ab * Support bzipped logfiles
* More robust extraction of the header values (copes with the addition of
  the build uname to the header)
2006-09-14 05:30:04 +00:00
Kris Kennaway
db6e3408a5 * If .force exists, rebuild index unconditionally
* Support .log.bz2 files

* Clarify that BROKEN ports are not frequently rebuilt so probably
  won't appear
2006-09-14 05:26:08 +00:00
Kris Kennaway
d35698c80e Correct typo in previous commit 2006-09-14 05:24:31 +00:00
Kris Kennaway
57407fb769 * Drop alpha support
* Increase sparc64 build timeout to 24 hours (we have so few build
  machines that we cannot afford to tie them up for longer)

* Increase other arch build timeout to 100 hours (hello openoffice!)

* If we successfully build a formerly broken package, touch errors/.force
  which will kick off a rebuild of the html files
2006-09-14 05:24:09 +00:00
Kris Kennaway
2df0e38d60 * Retire 4-exp builds and add support for 6-exp.
* Use a generation number for the bindist tarballs, with compatibility
  symlink.  Eventually we'll use this to avoid building in a "stale"
  chroot (i.e. populated by old world).

* Don't bother running ldconfig on i386, it is evidently not needed since
  the other arches work fine without it
2006-09-14 05:21:49 +00:00
Kris Kennaway
3c9d082dd2 * Silence gconf spam from the mtree checks (for now)
* Don't try and mount/umount procfs, it won't work when we build inside a
  jail.

* Report the uname -mr of the build environment, to ease confusion of
  people reading the error logs by mail.
2006-09-14 05:19:09 +00:00
Kris Kennaway
cef3a38ffb * Use SRCBASE for source location
* The 5.x variant for populating /etc does not work on 6.x and above, and
  vice versa.  Conditionalize old and new methods.
2006-09-14 05:17:12 +00:00
Kris Kennaway
72ac1bdadb Go back to force unmounting because not doing so was too unreliable. 2006-09-14 05:14:19 +00:00
Kris Kennaway
69e1fc873f Silence the clean-chroot invocation 2006-09-14 05:13:50 +00:00
Mark Linimon
cb217a1914 Get rid of multiple false positives for "arch" due to compiler warning;
fix true positive for "runaway_process".
2006-08-20 18:38:08 +00:00
Mark Linimon
8765aa08c8 Catch a few more new cases of linker error; reclassify most of the linker
errors seen on -CURRENT as "compat6x" e.g. "someone needs to create a
compat6x port and then make it a dependency here."
2006-08-18 19:23:19 +00:00
Mark Linimon
4ab6687b05 Catch another case of 'disk full'. 2006-07-31 20:05:12 +00:00
Erwin Lansing
4f52cd8ba6 Change locking from per architecture to per architecture and branch.
Especialy i386 has enough horsepower to run two branches simultaniously.
This change has been on pointyhat for some time.
2006-07-30 14:40:43 +00:00
Mark Linimon
8465bb92e6 Add the cvs checkout date so people can see how long the runs take; add
a comment about openoffice.org*; generalize a bit.
2006-07-13 03:52:28 +00:00
Mark Linimon
48eea8eed4 Make it a little more robust. 2006-07-09 19:02:14 +00:00
Mark Linimon
8ccf5fa29d Convenience script to tersely display all currently running package builds. 2006-07-09 18:16:32 +00:00
Mark Linimon
8ae57c1526 'portcomment' appears to be obsolete. 2006-07-08 21:38:55 +00:00
Mark Linimon
ed5aedd9d3 Fix the disk_full rule. 2006-07-08 20:29:41 +00:00
Mark Linimon
7d3e7fee38 Add the -exp builds down at the end. Probably only of interest to portmgr,
so do them separately in order not to break up the ease of browsing the
most important stats, above.
2006-07-08 04:09:42 +00:00
Mark Linimon
8b9d5c5231 White space adjustment after refactoring. 2006-07-08 03:33:51 +00:00
Mark Linimon
655da76c6d Refactor. No code change (yet). 2006-07-08 03:33:06 +00:00
Mark Linimon
349e8952a4 Add some color to the display. 2006-07-06 04:54:53 +00:00
Mark Linimon
7de73dca03 Fix CVS tag. 2006-07-05 23:30:42 +00:00
Mark Linimon
c2c0a5bbad Refactor. No code changes yet. 2006-07-05 23:29:45 +00:00
Mark Linimon
34d3330d94 Add a column for last-date stamp and clean up the formatting a bit. 2006-07-05 23:17:53 +00:00
Mark Linimon
c693c172bc Handle the case where the size of INDEX is zero (e.g. during new builds). 2006-06-28 22:46:18 +00:00
Mark Linimon
e4e1eb4a82 Fix edit-o. 2006-06-28 04:27:43 +00:00
Mark Linimon
a2947a3c30 Creates an HTML file with tables for each architecture which summarize the
number of packages built vs. packages that failed, along with some other
related information.
2006-06-27 05:31:32 +00:00
Mark Linimon
ef2b06d533 - Remove false positives for 'makefile' (and possibly a few others).
- Remove obsolete explanations which are no longer seen, for speed:
   ELF, MOTIF, MOTIFLIB, X_manpage, awk, bison, ffs_conflict, forbidden,
   getopt, getopt.h, imake, lc_r, malloc.h, pod2man, sed, stl, soundcard.h,
   texinfo, union_wait, values.h

 - Add more cases to: arch, bad_c++, compiler_error, depend_object,
   install_error, linker_error, mtree, perl5

These changes reduce many dozens of false positives; add a few dozen
true positives; and for certain directories, improve the speed about 10%
(a few drop by 15%).

It turns out that the performance issues are mainly due to the multiple
greps.  If performance is an issue we need to go back to the moderately-
unreadable, everything-on-one-line paradigm.  Before that happens, I would
like to experiment with some refactoring, so that the patterns are built up
in the shell line-by-line, so you could still be able to read it.

Tested on:	pointyhat
Hat:		portmgr
2006-06-24 19:51:53 +00:00
Kris Kennaway
38bfaf4774 Explicitly mount the NFS images ro, instead of relying on the server to
export it ro.  This saves thrashing the server if we accidentally try to
rm -rf a NFS mount (e.g. because a chroot cleanup failed).
2006-04-16 02:29:36 +00:00
Kris Kennaway
30e2a90b43 Don't bother archiving the ports tree, we don't use it for anything so it
just takes up time.
2006-04-16 02:27:27 +00:00
Kris Kennaway
6da61e3ed2 Mount linprocfs on amd64 for the convenience of jdk builds. 2006-04-03 04:43:56 +00:00
Kris Kennaway
072a81b38f The squid rc.d script no longer has the .sh suffix 2006-04-03 04:42:42 +00:00
Kris Kennaway
36780b5bd1 Do not preserve the previous package sets in bak/. This is taking up
too much space on pointyhat, and it's also very slow.
2006-04-03 04:41:59 +00:00
Kris Kennaway
7d1ca938be Clean up linprocfs on amd64 as well. 2006-04-03 04:41:14 +00:00
Kris Kennaway
721c2900a5 jdk is buildable on amd64, so we need to also mount linprocfs there. 2006-04-03 04:40:39 +00:00
Kris Kennaway
6b9fc3cfd1 This script preserves packages that will be removed by the restricted.sh
script, i.e. so they can be moved back into place before start the next
incremental build so they won't be needlessly rebuilt every time (jdk, I'm
looking at you).  It is a bit of a hack since it relies on assumptions
about the structure of that shell script, but for now it's the best we
can do.
2006-04-03 04:40:10 +00:00
Kris Kennaway
fc0b01f665 Temporarily back out the pre.log change, it doesn't work properly.
Approved by:    portmgr (implicit)
2006-03-13 03:05:51 +00:00
Kris Kennaway
0a3523a185 Mount the md image async here too
Approved by:    portmgr (implicit)
2006-03-13 03:04:37 +00:00
Kris Kennaway
7a39c45c24 Add some more directories temporarily until these ports can be made to
clean themselves up properly.

Approved by:	portmgr (implicit)
2006-03-13 03:04:07 +00:00
Kris Kennaway
6d04ba603f Add a mechanism for reporting client machine error conditions back to the
server.  Error conditions are flagged by other processes by creating
a named dotfile in ${scratchdir}.  If these files are found, report the
error status instead of the number of running jobs.  Currently report "ERR"
for all error conditions; I will probably change this to a per-condition
message.

Currently only "squid not running" and "disk space low" conditions are
reported.
2006-02-15 07:48:53 +00:00
Kris Kennaway
744179e319 Trim some unused cruft
If the package copy fails, bail out immediately instead of later on when
we try to pkg_add it.  Also trap signals and bail out.

Both conditions will cause a retry of the package build.
2006-02-15 07:45:53 +00:00
Kris Kennaway
56aabd9e31 Save the output of portbuild run on the client to a temporary log file.
If portbuild bailed out unexpectedly, mail the log to ${mailto}.

Add some XXX comments about improving robustness of this script.

Sleep for 2 minutes before retrying builds, to avoid spamming ${mailto}
with a high rate of failure logs.  In future we might be smarter about
attempting to automatically correct common failure modes.
2006-02-15 07:44:47 +00:00
Kris Kennaway
d270e5ec99 Add some sanity checking of the build environment:
* Test whether squid is running.  If not, try to kick off
  the rc script in the background in case it can be restarted
  cleanly.

* Test for at least 100MB of free space on the scratch partition.

If either condition fails, set an exception flag and bail out.  This
will be reported back to the server via reportload.
2006-02-15 07:42:30 +00:00