Rob Vermaas
06dc6d8f86
* for git inputs, check latest revision of branch (defaults to master for now), if there is change, only use input if last checkout was > hour ago.
2009-11-19 08:15:49 +00:00
Ludovic Courtès
2b5ef66111
Ask nix-prefetch-git' to leave
.git' in the output.
2009-11-18 16:42:35 +00:00
Ludovic Courtès
cdfc96194c
Use $NIX_PREFETCH_GIT_CHECKOUT_HOOK to produce a `.git-version' file.
2009-11-18 16:25:47 +00:00
Rob Vermaas
f55e0444c9
project with 0 build resulted in error
2009-11-18 12:59:58 +00:00
Rob Vermaas
40920935fc
remove revision from cached cvs inputs, and added missing files
2009-11-17 15:24:51 +00:00
Rob Vermaas
2fb05b34bf
add support for git as jobinput
2009-11-17 15:16:41 +00:00
Eelco Dolstra
7eda090e74
* Prevent repeated evaluation of a jobset with the same inputs. This
...
should make the Hydra scheduler a lot less CPU-intensive, since it
won't run hydra_eval_jobs all the time.
2009-11-17 13:55:22 +00:00
Eelco Dolstra
2bcedde1c8
* Sort releases.
2009-11-04 17:17:44 +00:00
Eelco Dolstra
56754b1817
2009-11-04 17:16:14 +00:00
Eelco Dolstra
6869591f63
* Use a table.
2009-11-04 14:41:19 +00:00
Eelco Dolstra
3e5e49debd
* Allow a view result to be saved as a release.
2009-10-27 15:31:26 +00:00
Eelco Dolstra
9aa70716ad
2009-10-26 17:03:48 +00:00
Eelco Dolstra
e25f112b82
* Implemented the clone feature.
2009-10-26 17:01:23 +00:00
Eelco Dolstra
f72367407a
* Some renaming.
2009-10-26 15:55:19 +00:00
Eelco Dolstra
e1373fa1c3
* Refactoring: move fetchInput out of hydra_scheduler into a separate
...
module, since Controller/Build.pm needs it to create a new build.
2009-10-26 15:39:14 +00:00
Eelco Dolstra
57cc6ceca6
* UI for cloning builds (not functional yet).
2009-10-26 14:30:42 +00:00
Eelco Dolstra
cd27c046b0
* Fix an apparent incompatibility with recent DBIx::Class.
2009-10-26 13:55:54 +00:00
Eelco Dolstra
3e8d85ecb0
2009-10-26 13:39:03 +00:00
Eelco Dolstra
cb2493eca9
* Store the jobset's nixExprPath and nixExprInput fields in a build to
...
allow it to be cloned (re-executed with modified inputs) later and
to provide some traceability.
2009-10-26 13:33:48 +00:00
Eelco Dolstra
69f290413c
* Do not garbage collect releases.
2009-10-26 12:47:29 +00:00
Eelco Dolstra
1038e2ebee
* Allow the description of a release member to be edited, and to
...
delete a release member.
2009-10-26 12:04:12 +00:00
Eelco Dolstra
578e37d55c
* Only non-garbage collected builds can be added to a release.
2009-10-26 10:46:57 +00:00
Eelco Dolstra
f984eed77b
* Align the apply/delete buttons.
2009-10-26 10:35:59 +00:00
Eelco Dolstra
7e81fbd56a
* A quick (non-Web 2.0) interface to manually add builds to a release.
2009-10-23 15:57:18 +00:00
Eelco Dolstra
a515c5fef2
2009-10-23 15:05:16 +00:00
Eelco Dolstra
d1bea30cfc
* Editing releases.
2009-10-23 12:42:50 +00:00
Eelco Dolstra
851a4dff4d
* Creating releases.
2009-10-23 09:58:23 +00:00
Eelco Dolstra
929cbe7b7c
* Adding persistant releases. A release is a named set of builds.
2009-10-21 15:44:17 +00:00
Eelco Dolstra
a835bb532f
2009-10-21 13:48:47 +00:00
Eelco Dolstra
686b6271d2
* Cleaned up the foreign key constraints.
...
* Generate SQLite and PostgreSQL schemas from hydra.sql.
2009-10-21 12:25:43 +00:00
Eelco Dolstra
2cf42489e2
* More renaming.
2009-10-20 12:35:01 +00:00
Eelco Dolstra
321027b262
* More release -> view.
2009-10-20 12:26:39 +00:00
Eelco Dolstra
8f9417f822
* Be a bit less aggressive in rescheduling builds that have already
...
been done.
2009-10-19 12:36:15 +00:00
Eelco Dolstra
cec3201720
* Renaming "release sets" to "views" (not finished yet). Having
...
releases as a dynamic view on the database was misguided, since
doing thing like adding a new job to a release set will invalidate
all old releases. So we rename release sets to views, and we'll
reintroduce releases as separate, static entities in the database.
2009-10-15 21:35:19 +00:00
Rob Vermaas
3ebe5e1069
2009-10-15 13:35:52 +00:00
Rob Vermaas
1c5ab05521
* added support for twitter notification
...
3 environment variables are important:
TWITTER_USER
TWITTER_PASS
HYDRA_BUILD_BASEURL
- twitter notification is off when TWITTER_USER and TWITTER_PASS are not defined
- if HYDRA_BUILD_BASEURL is not defined, no URL is put in the twitter messages
2009-10-15 13:23:15 +00:00
Eelco Dolstra
3e03ac9a7c
* Move the links to the channels up in the page.
2009-10-15 13:02:04 +00:00
Eelco Dolstra
dd12113eb2
* Pass the page number in the URI query string.
2009-10-15 12:59:55 +00:00
Rob Vermaas
d109910453
* paging for releases page
2009-10-15 11:13:36 +00:00
Eelco Dolstra
903ca3b246
* Make download-by-type more deterministic when there are multiple
...
files of the same type.
2009-10-12 17:07:36 +00:00
Eelco Dolstra
ee31b6e3df
* Don't catch all errors. Some errors mess up the connection with the
...
Nix daemon:
at `debootstrap' [system = "i686-linux"]:
getting attributes of path `/nix/store/dmhydkv6y1l4wpz4wq8qkf0fnlrhjr3l-svn-export/pkgs/tools/misc/debootstrap/subst.patch': No such file or directory
at `debootstrap' [system = "x86_64-linux"]:
writing to file: Broken pipe
etc.
2009-10-08 12:29:20 +00:00
Eelco Dolstra
71bc5b14a0
* Add --fallback to prevent problems with obsolete substitutes.
2009-10-08 11:51:49 +00:00
Eelco Dolstra
6cedee5476
* Allow jobsets to be disabled.
2009-10-08 11:39:16 +00:00
Eelco Dolstra
158a746e94
* Don't bother with the Jobs.active column anymore.
2009-10-08 11:19:39 +00:00
Eelco Dolstra
f158697796
* Shut up DBIx::Class.
2009-10-08 11:19:17 +00:00
Eelco Dolstra
08f3b7bf2a
* Use isCurrent to determine the inactive jobs.
2009-10-08 08:54:42 +00:00
Eelco Dolstra
16f2d003b2
* In the last succeeded / job status queries, use the Builds.isCurrent
...
column instead of Jobs.active.
2009-10-07 15:45:17 +00:00
Eelco Dolstra
48d8871dbc
* Only show status changes from successful to failed and failed to
...
successful (not between different kinds of failure).
2009-10-07 13:59:12 +00:00
Eelco Dolstra
7ae263a23a
* Make the queries more readable.
2009-10-07 13:40:58 +00:00
Eelco Dolstra
076ef05578
* In the scheduler, don't check if we've already done a build (except
...
against the set of current builds for the job). This ensures that
the builds with the highest ID are what we want in the channel, even
in case of reverts.
2009-10-07 13:18:12 +00:00
Eelco Dolstra
05c7989c3e
* Don't show platforms that are not included in the current jobset.
2009-10-02 17:11:28 +00:00
Eelco Dolstra
e9cf409d80
* Mark the "current" builds in a jobset, i.e. those corresponding to
...
the derivations that the jobset currently contains. This is
necessary to allow the "latest" channel to contain the correct
builds when the sources of a jobset are reverted.
2009-10-02 16:06:28 +00:00
Eelco Dolstra
9d99bb3342
* Split the CSS.
2009-10-02 14:00:37 +00:00
Eelco Dolstra
117be5182c
* Don't show the job menu.
2009-09-30 13:13:43 +00:00
Eelco Dolstra
2613d8721a
* Don't crawl the channel pages, particularly because the "all"
...
channel can be very large.
2009-09-30 12:26:51 +00:00
Rob Vermaas
87f3fbaab1
extra indexes
2009-09-30 12:17:55 +00:00
Rob Vermaas
d7713b4dba
* Add nix version to footer of hydra pages
2009-09-01 08:50:51 +00:00
Eelco Dolstra
cbeccda5eb
* Typo.
2009-08-12 13:50:59 +00:00
Eelco Dolstra
5e72c17540
* Include more info in notification emails.
2009-08-12 13:31:27 +00:00
Eelco Dolstra
c1e6797d39
* Allow overriding the sender email address.
2009-07-24 18:06:34 +00:00
Rob Vermaas
f89644ddb7
time out to 3600 for now
2009-07-13 11:42:56 +00:00
Eelco Dolstra
1cc99505b7
2009-07-10 14:43:21 +00:00
Eelco Dolstra
abe0a8eb9d
* Get the URI for use in notification mails from the Hydra config
...
file.
2009-07-10 09:47:42 +00:00
Eelco Dolstra
b1289533e6
* More database hackery.
2009-07-09 15:26:55 +00:00
Eelco Dolstra
fa364fa333
* PostgreSQL compatibility.
2009-07-09 15:08:39 +00:00
Eelco Dolstra
1aec78014d
* In the job status and error pages, show when the status of a job
...
last changed.
2009-07-09 14:48:15 +00:00
Eelco Dolstra
bbf718e64d
* Revert for now due to Postgres breakage.
2009-07-09 10:53:31 +00:00
Eelco Dolstra
44454ebeac
* Send email if a build fails.
2009-07-08 15:52:55 +00:00
Eelco Dolstra
3119cc7edc
2009-07-07 16:15:38 +00:00
Eelco Dolstra
24a3b39463
* Store meta.maintainers.
2009-07-07 14:33:51 +00:00
Eelco Dolstra
5bdd5e7152
* Added a maintainers field to the Builds table.
...
* Regenerated the schema bindings with the latest DBIx::Class.
2009-07-07 13:59:59 +00:00
Eelco Dolstra
6bcdfc8a1f
2009-07-07 13:20:00 +00:00
Eelco Dolstra
3e192cbb90
* Support showing the contents of ISO images (using isoinfo in
...
cdrkit).
2009-07-07 11:37:47 +00:00
Rob Vermaas
1da4f89eae
* added jar to 'contents' list
2009-06-18 13:23:04 +00:00
Rob Vermaas
e457be469c
sequence fix for postgresql
2009-05-11 13:56:52 +00:00
Rob Vermaas
b52796feac
check getHydraPath in stead of Envvar HYDRA_DBI directly
2009-05-09 16:10:50 +00:00
Rob Vermaas
f1611a7edd
check if HYDRA_DBI is defined in stead of empty string comparison
2009-05-09 16:00:08 +00:00
Rob Vermaas
f2a1fb3937
Added sequences for auto increment primary key columns (for PostgreSQL)
2009-05-07 13:30:55 +00:00
Eelco Dolstra
cd80952a45
* Move up the build products in the builds page, since they're more
...
likely to be of interest than the build inputs and build steps.
2009-05-07 13:19:46 +00:00
Eelco Dolstra
dda984cf16
* Add an icon for PDFs.
2009-05-07 13:15:10 +00:00
Rob Vermaas
a509694220
Hydra now uses an optional HYDRA_DBI environment variable which holds the DBI url. If this variable is not set, sqlite is used like before.
2009-04-29 11:07:46 +00:00
Rob Vermaas
d774cd6f18
changed queries for compatibility with postgresql
2009-04-28 14:21:33 +00:00
Eelco Dolstra
469893cd4a
* The "latest" channel shouldn't contain inactive jobs.
2009-04-25 11:41:46 +00:00
Eelco Dolstra
000fffeb11
2009-04-25 11:27:46 +00:00
Eelco Dolstra
3c47a11bd9
* Don't disable fsync in production.
2009-04-25 07:48:30 +00:00
Eelco Dolstra
109cc35edf
* Randomly permute the order in which builds are added. This is
...
mainly to prevent all those Nixpkgs builds named "kde*" from
building at the same time. Since they all have the same slow
dependencies (qt, kdelibs) this tends to block the buildfarm.
2009-04-23 15:40:36 +00:00
Eelco Dolstra
c48ec3d340
* Autoflush stdout.
2009-04-22 22:59:54 +00:00
Eelco Dolstra
97a6011628
* Hack around those SQLite timeouts: just retry the transaction.
2009-04-22 22:43:04 +00:00
Eelco Dolstra
80691a39f5
* Don't log redundant build steps in case of cached failures.
2009-04-22 14:41:12 +00:00
Eelco Dolstra
018585dba8
* In the job status page and the channels, pick the build with the
...
highest ID rather than the highest timestamp. Otherwise, if a build
from revision N finishes after a build from revision N + 1, then
the build from revision N will end up in the channel. Thus, the
channel contents will be out of sync.
This is still not quite correct: if a revision *reverts* to an older
build, the channel will still end up out of sync, because Hydra
won't schedule the build again (after all, it has already done it).
A better fix would be to add a separate timestamp denoting when the
build was last "current" (i.e. corresponding to the "head revision"
of its job).
2009-04-22 13:55:20 +00:00
Eelco Dolstra
4d699c97fd
* Don't do pretty printing for large logs, because the XSLT processing
...
is rather slow.
2009-04-16 15:22:14 +00:00
Eelco Dolstra
d6bd9bab5f
* Job status / error pages: show only active jobs.
2009-04-15 14:50:15 +00:00
Eelco Dolstra
2a05522189
* Don't index any of the logs (mostly because xsltproc can be a huge
...
resource hog).
2009-04-14 12:40:00 +00:00
Eelco Dolstra
28fde34b9c
2009-04-09 15:09:00 +00:00
Eelco Dolstra
10ae24fd3c
* Fixed a broken redirect when deleting a release set.
2009-04-09 11:43:49 +00:00
Eelco Dolstra
607d5641b6
* Added a page to quickly see all failed builds and failed evaluations
...
per project or jobset or job or globally.
2009-04-08 22:08:00 +00:00
Eelco Dolstra
bf2a5a2629
* Allow omitting the product number if there is only one product in a
...
build. This allows URLs like
http://server/job/patchelf/trunk/deb_debian40i386/latest/download
or
http://server/release/patchelf/unstable/latest/deb_debian40i386/download
2009-04-08 09:37:05 +00:00
Eelco Dolstra
11d8421def
* Support redirecting to some job of a release. For instance, this
...
redirects to the "tarball" build of the latest release of
patchelf/unstable:
http://server/release/patchelf/unstable/latest/tarball
In conjunction with the other redirects this allows linking to the
actual download of the build:
http://server/release/patchelf/unstable/latest/tarball/download-by-type/file/source-dist
2009-04-08 09:03:45 +00:00
Eelco Dolstra
26ff5f1ff0
* Provide some redirects to build products by type so that we can for
...
example link to the latest tarball through a URI like:
http://server/job/patchelf/trunk/tarball/latest/download-by-type/file/source-dist
2009-04-08 08:09:39 +00:00
Eelco Dolstra
f9572e4d1e
* Provide some redirects to the latest successful build for a job (or
...
project, or jobset, or globally, but that's not all that useful).
This is useful if you want to link to the latest build.
2009-04-07 15:49:02 +00:00
Eelco Dolstra
16a84f4bf5
* Big speed-up of the job status page and the channel generation (such
...
as the manifest). The builds are now determined in one SQL query
rather than a zillion ones.
2009-04-03 15:37:21 +00:00
Eelco Dolstra
ca11aba074
* Fix an infinite recursion.
2009-04-03 09:13:34 +00:00
Eelco Dolstra
0ae979f652
2009-04-03 09:12:36 +00:00
Eelco Dolstra
09944ed3a2
* Forgot to commit.
2009-04-03 08:38:13 +00:00
Eelco Dolstra
753e56b6eb
* Improved the navigation bar: don't include all projects (since that
...
doesn't scale), and include links for jobset/job specific pages.
The main page now lists the projects.
* Overview pages for jobsets and jobs.
* Links to the channels.
* Jobsets are now defined and edited in a separate action.
2009-04-02 16:15:57 +00:00
Eelco Dolstra
db4ce0df06
2009-03-31 16:09:04 +00:00
Eelco Dolstra
c970fc8335
* Urgh.
2009-03-31 15:59:47 +00:00
Eelco Dolstra
c39a693afd
* Generate SVG instead of PNG, which is much faster and smaller. I
...
tried this before but the text didn't fit in the boxes in Firefox.
The solution is to use Graphviz' svg:cairo backend instead of svg.
svg:cairo doesn't depend on client-side fonts.
2009-03-31 15:59:31 +00:00
Eelco Dolstra
a6c32b33db
2009-03-31 14:55:47 +00:00
Eelco Dolstra
156f40130e
* Generate robots.txt in a more Catalystic way.
2009-03-31 14:14:45 +00:00
Eelco Dolstra
d6e996d01c
* Generate a robots.txt.
2009-03-31 13:48:03 +00:00
Eelco Dolstra
7b7c3f2265
* Perl sucks. "getBuildLog $drvPath" doesn't mean the same as
...
"getBuildLog($drvPath)" if you call it in a hash, and quietly screws
up the rest of the hash.
2009-03-26 15:32:19 +00:00
Eelco Dolstra
f0f9f12e42
* Use Nix's negative caching.
2009-03-26 12:53:39 +00:00
Eelco Dolstra
8f6f6ee53e
* Allow authorised users to create projects.
2009-03-24 14:22:59 +00:00
Eelco Dolstra
c75977ce5a
* Record the input containing the Nix expression (release.nix) in the
...
build inputs. Otherwise we can't (for example) reproduce a build
later.
2009-03-23 21:42:59 +00:00
Eelco Dolstra
dab25b30f0
* Fix the queue page.
2009-03-23 15:19:34 +00:00
Eelco Dolstra
12c1d90135
* Add some DB indices to make the /releases page much faster.
...
* Reduce the number of DB queries for the /all and /jobstatus pages.
* Show the Hydra version number.
2009-03-23 13:52:24 +00:00
Eelco Dolstra
0da0384753
* Top-level: don't exit on errors.
2009-03-23 01:13:37 +00:00
Eelco Dolstra
d9424b6364
* Show the input bindings in evaluation error messages.
2009-03-20 17:06:50 +00:00
Eelco Dolstra
3d26bb7fd1
* Allow `-' in release set names.
2009-03-20 15:19:17 +00:00
Eelco Dolstra
2755c895ff
* In job inputs of type "build", allow the project and jobset names of
...
the input build to be specified, as well as constraints on the
inputs of the inputs build. For instance, you can require that a
build has input `system = "i686-linux"'.
This is important when one binary build serves as an input to
another binary build. Obviously, we shouldn't pass a build on
i686-linux as an input to another on i686-darwin. Hence the
necessity for constraint.
The constraint are currently quite limited. What you really want to
say is that the "system" input of the other build has to match the
"system" input of this build. But those require a bit more work
since they introduce dependencies between inputs.
2009-03-20 14:50:09 +00:00
Eelco Dolstra
d1affbfe1a
* Oops.
2009-03-20 10:26:50 +00:00
Eelco Dolstra
e076c0cff4
* Catalyst::View::Download::Plain doesn't like empty files.
2009-03-20 10:26:26 +00:00
Eelco Dolstra
d13af4f392
* Doh.
2009-03-20 10:19:46 +00:00
Eelco Dolstra
163f3de2fa
* Urgh. `-' had special significance in HTML form parameters...
2009-03-19 15:41:33 +00:00
Eelco Dolstra
af1e60a043
* Allow `-' in project/jobset names.
2009-03-19 15:12:50 +00:00
Eelco Dolstra
ba7b94a852
2009-03-18 18:50:42 +00:00
Eelco Dolstra
9e4b029285
* A quick hack to list the contents of various types of files (RPM,
...
Debs, tars, ...).
2009-03-18 17:40:12 +00:00
Eelco Dolstra
b39e2c5e32
* Doh.
2009-03-18 17:13:13 +00:00
Eelco Dolstra
702da969a6
* Ordering by timestamp isn't a good idea here since a newer revision
...
might finish building before an older revision, and therefore have a
lower timestamp.
2009-03-18 16:46:01 +00:00
Eelco Dolstra
a1848b08f2
2009-03-16 17:51:42 +00:00
Eelco Dolstra
bf1480cc25
* Doh.
2009-03-16 17:46:46 +00:00
Eelco Dolstra
5853a26b13
* Don't discard old build steps when restarting a build.
2009-03-16 16:56:47 +00:00
Eelco Dolstra
a6e84d8431
* Option to show the tail of a log.
2009-03-16 12:16:33 +00:00
Eelco Dolstra
54475b9266
* When marking a build as "keep", register it as a root right away
...
(don't wait for someone to run hydra_update_gcroots), otherwise it
may still be GC'ed.
2009-03-16 10:57:44 +00:00
Eelco Dolstra
d2fc382498
* Register GC roots properly.
2009-03-15 11:56:11 +00:00
Eelco Dolstra
32f0665d2c
* Allow users to change the value of a build's "keep" flag, which
...
prevents the build output from being garbage collected.
2009-03-14 23:56:57 +00:00
Eelco Dolstra
eeddf5752d
* Provide access to the raw, non-pretty-printed logfiles.
...
Unfortunately necessary for large logs.
2009-03-14 23:27:08 +00:00
Eelco Dolstra
4404800ad8
* Release sets: need to include the jobset name to disambiguate
...
between jobs with the same name from different jobsets (e.g. trunk
vs. branch).
2009-03-14 22:34:22 +00:00
Eelco Dolstra
7c7c43335d
* Job status: show the active jobs.
2009-03-13 17:32:08 +00:00
Eelco Dolstra
2ece4d9f15
* Render durations nicely.
2009-03-13 16:04:49 +00:00
Eelco Dolstra
107a0faa51
* PROCESS -> INCLUDE in most cases. INCLUDE does proper scoping of
...
variables.
2009-03-13 15:57:43 +00:00
Eelco Dolstra
3c86b3652c
* Refactoring.
2009-03-13 15:41:19 +00:00
Eelco Dolstra
3af294f848
* Make jobsets viewable under
...
http://server/jobset/ <project>/<jobset>.
2009-03-13 15:23:08 +00:00
Eelco Dolstra
ae364b9e5f
* Represent jobs explicitly in the DB.
2009-03-13 14:49:25 +00:00
Eelco Dolstra
a39a28dffb
2009-03-13 12:45:45 +00:00
Eelco Dolstra
81bdc4cfa2
2009-03-13 12:29:47 +00:00
Eelco Dolstra
f2f586d842
* Disambiguate jobs by jobset name. I.e. jobs with the same name in
...
different jobsets are not considered the same job.
2009-03-12 23:46:17 +00:00
Eelco Dolstra
a623ad157e
* Add the name of the jobset to ReleaseSetJobs, otherwise we can't
...
distinguish between jobs with the same name in different jobsets
(e.g. "trunk" vs "stdenv-branch" for Nixpkgs).
* Renamed the "attrName" field of Builds to "job".
* Renamed the "id" field of BuildSteps to "build".
2009-03-12 14:18:30 +00:00
Eelco Dolstra
fec08462ee
* In Sqlite "release" is now a keyword, so use "release_" instead.
...
Note: to upgrade old databases, do a dump with an old Sqlite first;
dumping with a new Sqlite will silently discard (!) the contents of
the ReleaseSetJobs table.
2009-03-12 13:42:44 +00:00
Eelco Dolstra
70276f59ea
* Remove redundant -fork.
2009-03-11 15:52:39 +00:00
Eelco Dolstra
f945fbb5bd
* Use Catalyst's HTTP::Prefork engine by default, with some limits to
...
prevent the server from being overloaded.
2009-03-11 15:48:06 +00:00
Eelco Dolstra
8b752627a2
* Use IO::Handles instead of old school filehandles. This ensures
...
that the pipe gets closed, and the child process dies, if the HTTP
connection is prematurely interrupted.
2009-03-11 14:44:34 +00:00
Eelco Dolstra
7ea69e7a9d
* Disregard failing substituters.
2009-03-10 11:49:18 +00:00
Eelco Dolstra
18f25a1226
* Doh.
2009-03-10 08:52:42 +00:00
Eelco Dolstra
54a122b49c
* DB integrity: when deleting a build, get rid of its build steps.
2009-03-10 08:35:39 +00:00
Eelco Dolstra
6dc9e45fc8
* Doh.
2009-03-09 17:37:57 +00:00
Eelco Dolstra
fca7fb20c4
* Negative caching: don't perform a build if a dependency already
...
failed in a previous build. This is essential for Nixpkgs: we don't
want to keep doing the same failed dependency (say, Glibc) over and
over again for a few hundred jobs.
2009-03-09 17:21:10 +00:00
Eelco Dolstra
8725dc03ec
* Use ->update({...}) properly.
2009-03-09 16:22:41 +00:00
Eelco Dolstra
e87896e4b4
* eval-jobs -> hydra_eval_jobs.
2009-03-09 15:16:11 +00:00
Eelco Dolstra
a74bfdf533
* Inputs of type "build" must now be declared explicitly.
2009-03-09 13:58:43 +00:00
Eelco Dolstra
8c58448afc
* hydra_scheduler: use eval-jobs.
2009-03-09 13:04:46 +00:00
Eelco Dolstra
875f57857e
* Require every argument to be specified.
2009-03-09 10:13:45 +00:00
Eelco Dolstra
322d907629
2009-03-09 10:01:04 +00:00
Eelco Dolstra
5c45661141
* Report evaluation errors per job, and don't bail out if a job fails
...
to evaluate.
2009-03-07 14:06:10 +00:00
Eelco Dolstra
ba002c6ac5
* eval-jobs now efficiently evaluates all Hydra jobs from a
...
release.nix expression, accepting multiple values for function
arguments. This is much faster than calling nix-instantiate /
nix-env a zillion times (which is particularly important for
Nixpkgs).
2009-03-06 16:55:19 +00:00
Eelco Dolstra
0788ec24e6
* Export all relevant info about the derivation.
2009-03-06 15:18:59 +00:00
Eelco Dolstra
f9d4957f2f
* Export all relevant info about the derivation.
2009-03-06 15:16:29 +00:00
Eelco Dolstra
55b8190fde
2009-03-06 14:16:42 +00:00
Eelco Dolstra
6cef161793
2009-03-06 14:03:09 +00:00
Eelco Dolstra
36fdd7f37f
* For products that are directories (like manuals), allow a default
...
suffix other than index.html to be declared. E.g. if a build does
echo "doc manual $out manual.html" >> $out/nix-support/hydra-build-products
the default link for the product is
http://localhost:3000/build/417/download/1/manual.html
but other files are also accessible, e.g.
http://localhost:3000/build/417/download/1/style.css
2009-03-06 13:34:53 +00:00
Eelco Dolstra
dca6b943d0
* Allow scheduled builds to be cancelled. They're not removed from
...
the database, just marked as cancelled, because otherwise the
scheduler would just add them again.
2009-03-06 12:49:01 +00:00
Eelco Dolstra
c724439b20
2009-03-05 15:41:43 +00:00
Eelco Dolstra
c3cc2262b7
* Start of a helper tool to evaluate job expressions efficiently.
2009-03-05 14:59:43 +00:00
Eelco Dolstra
97ed2052ba
* Move everything up one directory.
2009-03-05 13:41:57 +00:00
Eelco Dolstra
6de278754a
2009-03-05 13:35:46 +00:00
Eelco Dolstra
f6fd756134
2009-03-05 12:32:14 +00:00
Eelco Dolstra
7f4762db82
2009-03-04 17:25:52 +00:00
Eelco Dolstra
0bd7abf10b
* Controller for jobs which inherits all actions in ListBuilds. So
...
for instance we get channels specific for each job.
2009-03-04 17:24:08 +00:00
Eelco Dolstra
5162f05e2c
* At top-level and for each project, provide two channels: "latest"
...
(containing the latest successful build of each job) and "all"
(containing all successful builds ever).
2009-03-04 16:36:23 +00:00
Eelco Dolstra
4089859d33
2009-03-04 15:47:42 +00:00
Eelco Dolstra
07e1d73602
2009-03-04 15:41:37 +00:00
Eelco Dolstra
b7892f598d
2009-03-04 15:26:32 +00:00
Eelco Dolstra
7a8903ea54
* XHTML validity.
2009-03-04 15:25:35 +00:00
Eelco Dolstra
56beebc9c6
* Channels: provide an index page that lists all the packages in the
...
channel.
* Store the meta.homepage attribute in the Builds table.
2009-03-04 14:49:21 +00:00
Eelco Dolstra
dad2f31099
* Provide a channel for each project containing all the latest
...
succesful builds for each job in the project (under
http://server/project/ <name>/channel/latest).
2009-03-04 13:08:09 +00:00
Eelco Dolstra
af936d7c91
2009-03-04 12:23:54 +00:00
Eelco Dolstra
462a929ea1
2009-03-04 11:03:43 +00:00
Eelco Dolstra
0a40286202
* Put the project-related actions in a separate controller. Put the
...
actions for viewing the job status and all builds in a separate base
class that's inherited both by Root.pm and Project.pm so that we get
URIs like /jobstatus and /project/<name>/jobstatus for free.
2009-03-04 10:59:14 +00:00
Eelco Dolstra
ac8af00e84
2009-03-03 22:20:24 +00:00
Eelco Dolstra
7c616aaf1a
2009-03-03 18:07:31 +00:00
Eelco Dolstra
4044e857b6
2009-03-03 16:44:41 +00:00
Eelco Dolstra
e9b3c89c68
2009-03-03 14:21:27 +00:00
Eelco Dolstra
187da72ecd
* Set mtime to 0 to ensure that the generate tar file doesn't change
...
between invocations.
2009-03-03 14:06:05 +00:00
Eelco Dolstra
8c7eb165c9
* Generate a .tar.bz2 file for the channel Nix expression, since
...
that's what nix-channel expects.
2009-03-03 10:44:54 +00:00
Eelco Dolstra
4d2cb75104
* Escape string literals.[
2009-03-03 09:37:16 +00:00
Eelco Dolstra
7ffb32e048
* Generate a Nix expression for the channel.
2009-03-02 17:17:36 +00:00
Eelco Dolstra
f75924db95
* Allow builds to be restarted (if they failed with a transient error,
...
e.g. interrupted or network problems).
2009-03-02 16:03:41 +00:00
Eelco Dolstra
c7736f0643
2009-03-02 15:21:35 +00:00
Eelco Dolstra
f63f2f1a79
* Pass the version of dependencies to the Nix expression.
2009-03-02 15:21:05 +00:00
Eelco Dolstra
f1fbcd04a8
2009-03-02 10:23:40 +00:00
Eelco Dolstra
d1e0e2f2c6
2009-02-27 15:49:35 +00:00
Eelco Dolstra
f0f5b095cc
* Quick hack to allow viewing of dependency graphs (via nix-store -q
...
--graph). Maybe I should use SVG, since the generated PNGs tend to
be huge.
2009-02-27 15:31:49 +00:00
Eelco Dolstra
c8ad58a774
* Only put Nix builds in the global channel.
2009-02-27 14:57:06 +00:00
Eelco Dolstra
abba2e62b4
2009-02-26 21:33:29 +00:00
Eelco Dolstra
b1501bc1cd
* Speed up manifest generation.
2009-02-26 16:57:05 +00:00
Eelco Dolstra
cf37152849
2009-02-25 16:29:54 +00:00
Eelco Dolstra
f89757fbd4
2009-02-25 15:39:51 +00:00
Eelco Dolstra
ed1668704e
2009-02-25 14:50:17 +00:00
Eelco Dolstra
76c3ae1cef
* Refactoring.
2009-02-25 14:34:29 +00:00
Eelco Dolstra
537f7c8c88
* Forgot to commit.
2009-02-25 14:33:33 +00:00
Eelco Dolstra
cb342ed0dd
* Build the /build stuff in a separate controller.
2009-02-25 12:03:13 +00:00
Eelco Dolstra
16acb2754c
* Put actions related to builds under /build (e.g. /log/<buildid>
...
becomes /build/<buildid>/log).
2009-02-25 10:52:41 +00:00
Eelco Dolstra
f8e162cb18
2009-02-23 13:24:23 +00:00
Eelco Dolstra
5fcd2e26c9
* One-click installs.
2009-02-23 13:23:55 +00:00
Eelco Dolstra
5f8dcab854
* Closure downloads: don't include the product number; it's not needed.
2009-02-23 09:34:29 +00:00
Eelco Dolstra
9013e97534
* Generate NAR archives on the fly. Necessary for producing channels
...
/ one-click installs on demand.
2009-02-19 23:43:08 +00:00
Eelco Dolstra
5a49cc5916
* Generate manifests on demand. Next step: generate NAR archives on
...
demand, then we can have channel support and one-click installs in
Hydra.
2009-02-13 17:35:54 +00:00
Eelco Dolstra
95f2362c11
2009-02-12 16:38:08 +00:00
Eelco Dolstra
0be4bad006
* Add a link to each project's homepage. Suggested by karltk.
2009-02-11 23:14:28 +00:00
Eelco Dolstra
66602def16
* Register builds as GC roots so they don't get deleted.
2009-02-06 21:01:20 +00:00
Eelco Dolstra
dcacf2c790
* Get rid of a warning.
2009-02-06 21:00:58 +00:00
Eelco Dolstra
64fd90f225
* Automatically keep all builds in the latest successful release in
...
each release set.
2009-02-06 15:02:49 +00:00
Eelco Dolstra
7c1465944f
* Keep the most recent builds for each job.
2009-02-06 14:17:25 +00:00
Eelco Dolstra
14960d6c53
* hydra_update_gc_roots.pl registers build outputs that should be kept
...
as GC roots and removes GC roots to build outputs that should no
longer be kept.
2009-01-13 14:02:07 +00:00
Eelco Dolstra
7d2e5c8206
* Icon for ISOs.
2008-12-17 15:59:28 +00:00
Eelco Dolstra
6cb58ef581
* Make the schema class names match the case of the SQL table names.
2008-12-16 16:26:33 +00:00
Eelco Dolstra
dfcaa51d7b
* Store the meta.longDescription and meta.license attributes in the
...
database.
2008-12-16 15:09:39 +00:00
Eelco Dolstra
7231556f47
* Cut off builds after half an hour of apparent inactivity. This
...
should really be configurable.
2008-12-16 10:42:37 +00:00
Eelco Dolstra
5e207cdbb2
* Provide a redirect to the latest successful release in a release set
...
(e.g. http://localhost:3000/release/patchelf/unstable/latest ).
2008-12-15 13:12:51 +00:00
Eelco Dolstra
3a26ab4b21
* Scripts for starting / stopping Hydra.
2008-12-15 11:40:12 +00:00
Eelco Dolstra
a4e3e48767
* I love untyped databases...
2008-12-01 11:15:03 +00:00
Eelco Dolstra
61e3eb587a
2008-11-30 18:55:03 +00:00
Eelco Dolstra
e686979e55
* Queue runner: don't start scheduled builds builds if they belong to
...
a disabled project. Idem for the queue page.
2008-11-30 18:53:58 +00:00
Eelco Dolstra
4f2b47bb0e
* Give releases a timestamp.
2008-11-30 00:23:33 +00:00
Eelco Dolstra
5105d15636
* Put the release sets in the navbar.
2008-11-29 13:40:15 +00:00
Eelco Dolstra
0d84d6c166
* Dying considered harmful.
2008-11-29 01:27:17 +00:00
Eelco Dolstra
30e8b14b12
* Better timeout.
2008-11-29 01:26:51 +00:00
Eelco Dolstra
ca73ec5763
* Don't ignore SIGCHLD after all, Perl doesn't like it. Just do
...
a few waitpids periodically.
* Better cleanup of builds that die because of a sqlite locking
problem.
2008-11-29 01:20:13 +00:00
Eelco Dolstra
22532079ec
* Get rid of zombies.
2008-11-29 01:01:22 +00:00
Eelco Dolstra
19c3c83794
2008-11-29 00:56:40 +00:00
Eelco Dolstra
33f3bee810
* Don't use a config file by default. This frees up $HYDRA_CONFIG so
...
that the user can specify one.
2008-11-29 00:04:45 +00:00
Eelco Dolstra
acc2c30eb8
2008-11-28 18:54:09 +00:00
Eelco Dolstra
5613448a81
* Regenerate the bindings from a clean sqlite database.
2008-11-28 18:02:08 +00:00
Eelco Dolstra
ff9987c904
* Script for initialising the database.
2008-11-28 17:25:30 +00:00
Eelco Dolstra
cbc046edc5
2008-11-28 16:53:53 +00:00
Eelco Dolstra
95381d7d2c
* Make HEAD requests work when doing Nix closure downloads.
2008-11-28 16:46:08 +00:00
Eelco Dolstra
3ec88541b2
* Nix expression for building Hydra.
2008-11-28 16:13:06 +00:00
Eelco Dolstra
28526dfaf8
* Reorganising.
2008-11-28 15:14:49 +00:00
Eelco Dolstra
cbcfdf9c54
* $HYDRA_DATA environment variable.
2008-11-28 14:36:04 +00:00
Eelco Dolstra
b97c946f8e
* Fix the terminology.
2008-11-28 11:16:53 +00:00
Eelco Dolstra
88c34fb6c7
2008-11-28 11:01:35 +00:00
Eelco Dolstra
5ca4003b1d
* The owner parameter is only set for admin roles.
2008-11-28 11:01:20 +00:00
Eelco Dolstra
2156e406b4
* Monitor for dead builds all the time.
2008-11-28 11:00:55 +00:00
Eelco Dolstra
ba5e4be15e
2008-11-28 10:23:00 +00:00
Eelco Dolstra
a7d2f5382c
2008-11-28 00:16:01 +00:00
Eelco Dolstra
ca1a6d1bdf
2008-11-27 22:29:38 +00:00
Eelco Dolstra
f742871910
2008-11-27 22:26:53 +00:00
Eelco Dolstra
58cb6fbea5
2008-11-27 21:40:23 +00:00
Eelco Dolstra
06b49e0df7
2008-11-27 21:08:17 +00:00
Eelco Dolstra
e4e7fac958
2008-11-27 20:33:17 +00:00
Eelco Dolstra
1810a13546
2008-11-27 19:06:11 +00:00
Eelco Dolstra
ac89e7d4ed
2008-11-27 18:54:25 +00:00
Eelco Dolstra
d6f71f2248
* Showing releases.
2008-11-27 18:27:19 +00:00
Eelco Dolstra
7b19257830
2008-11-27 17:01:41 +00:00
Eelco Dolstra
98c53156e6
* Basic release management: releases are now dynamically computed as
...
database queries from a set of jobs that have to be in a release.
E.g. a patchelf release might consist of the jobs "tarball", "build",
and "rpm_fedora10i386". Here the first job ("tarball") is the
primary job: all the others have it as an input. The primary job
supplies the identity of the release.
2008-11-27 15:16:06 +00:00
Eelco Dolstra
24923ed09a
* Make build steps clickable as well.
2008-11-27 10:04:54 +00:00
Eelco Dolstra
d9507c304a
* Links on trs.
2008-11-27 09:59:29 +00:00
Eelco Dolstra
12dcf2d464
2008-11-27 02:38:03 +00:00
Eelco Dolstra
6f5b98d7ca
2008-11-27 02:29:46 +00:00
Eelco Dolstra
ab16bfaf95
* Show job status and all builds for a project.
2008-11-27 02:23:44 +00:00
Eelco Dolstra
bebd4a8b89
2008-11-27 01:27:08 +00:00
Eelco Dolstra
eb05998749
* Grabbed a logo. TODO: check copyright status.
2008-11-27 01:05:31 +00:00
Eelco Dolstra
266aa141bd
* Separate job status and all builds pages.
2008-11-27 00:38:09 +00:00
Eelco Dolstra
38a1b0d7ef
* Show global and per-project statistics.
2008-11-26 23:49:51 +00:00
Eelco Dolstra
043127c3d4
* Check the owner.
2008-11-26 23:31:07 +00:00
Eelco Dolstra
2748cfac07
* Role-based access control. Only admins can create projects. Only
...
admins or project owners can edit or delete a project.
2008-11-26 23:25:24 +00:00
Eelco Dolstra
161e836d0c
2008-11-26 22:42:07 +00:00
Eelco Dolstra
50ae3ca9e9
* Added authentication.
2008-11-26 19:48:04 +00:00
Eelco Dolstra
632d56e665
2008-11-26 18:45:52 +00:00
Eelco Dolstra
41055aabc7
2008-11-26 17:43:53 +00:00
Eelco Dolstra
fa042e04ae
* Unify rendering of finished and scheduled builds.
2008-11-26 17:43:45 +00:00
Eelco Dolstra
b7e03351cb
* Allow the maximum number of concurrent builds per platform to be
...
configured.
2008-11-26 17:14:27 +00:00
Eelco Dolstra
5f7142eb82
* Get the job priority from the meta.schedulingPriority attribute.
...
Can't use meta.priority because nix-env already uses that one for
resolving filename clashes.
2008-11-26 14:43:16 +00:00
Eelco Dolstra
21497f9a47
* Don't start more builds concurrently than allowed for each system
...
type (currently hard-coded at 2).
2008-11-26 14:20:50 +00:00
Eelco Dolstra
39f8b6110f
2008-11-26 13:39:15 +00:00
Eelco Dolstra
a36fab9293
2008-11-26 01:11:36 +00:00
Eelco Dolstra
c72f4dd67a
* Boolean inputs.
2008-11-25 18:34:24 +00:00
Eelco Dolstra
1698e490d0
* Support Subversion checkouts.
2008-11-25 18:13:55 +00:00
Eelco Dolstra
b4cfd58944
* Trim some significant whitespace.
2008-11-25 16:35:44 +00:00
Eelco Dolstra
465612fc73
* Fix a weird bug.
2008-11-25 16:35:33 +00:00
Eelco Dolstra
cb8e3acb2a
* Store the release name.
2008-11-25 16:13:22 +00:00
Eelco Dolstra
8fbb79efe6
* Caching of "path" inputs, and fake a revision number for those.
2008-11-25 14:59:08 +00:00
Eelco Dolstra
a8f748e547
* Log evaluation errors etc. in the DB.
2008-11-25 13:27:57 +00:00
Eelco Dolstra
6efe0c37f3
2008-11-25 11:09:15 +00:00
Eelco Dolstra
410b80063c
* More global substitution.
2008-11-25 11:01:42 +00:00
Eelco Dolstra
22feae550e
* Idem.
2008-11-25 10:55:07 +00:00
Eelco Dolstra
fadd7a0448
* HydraFrontend -> Hydra.
2008-11-25 10:53:42 +00:00
Eelco Dolstra
4b478eb8df
2008-11-25 02:34:48 +00:00
Eelco Dolstra
78a694420e
2008-11-25 02:27:03 +00:00
Eelco Dolstra
147b980028
2008-11-25 01:22:47 +00:00
Eelco Dolstra
e742833da3
* Get rid of "positive failures" and separate log phases.
...
* Specifically log, for a build, whether the top-level derivation
failed, or some dependency failed, or Nix itself barfed. In the
latter case log the error output from Nix.
2008-11-25 00:38:16 +00:00
Eelco Dolstra
125d7a985e
* Use jquery for the logfile manipulation.
2008-11-18 17:51:40 +00:00
Eelco Dolstra
1f90d94331
* Pretty-print the logs.
2008-11-18 16:45:23 +00:00
Eelco Dolstra
f6462ff5bb
* Downloading closures.
2008-11-18 14:48:40 +00:00
Eelco Dolstra
9f1f939226
2008-11-18 12:48:58 +00:00
Eelco Dolstra
6aa0ddda51
2008-11-18 12:13:34 +00:00
Eelco Dolstra
f0eb8cf08c
2008-11-17 23:59:20 +00:00
Eelco Dolstra
51e617e9e8
2008-11-17 15:31:30 +00:00
Eelco Dolstra
ab2b40239f
2008-11-17 15:31:19 +00:00
Eelco Dolstra
9933dd2f27
2008-11-17 13:39:01 +00:00
Eelco Dolstra
0c0175d88e
* Adding input value alternatives.
2008-11-17 13:36:58 +00:00
Eelco Dolstra
2650094643
* Editing of jobset inputs.
2008-11-17 11:44:51 +00:00
Eelco Dolstra
66f752beaf
2008-11-14 13:57:17 +00:00
Eelco Dolstra
83d6ad7aa2
2008-11-13 18:16:57 +00:00
Eelco Dolstra
77e1bb7527
* Happy Javascript hacking.
2008-11-13 17:55:40 +00:00
Eelco Dolstra
f6f5309a02
2008-11-13 14:54:50 +00:00
Eelco Dolstra
46dc10847a
2008-11-13 12:11:18 +00:00
Eelco Dolstra
db68e005a6
2008-11-13 09:48:10 +00:00
Eelco Dolstra
8c6760cecc
2008-11-13 09:25:38 +00:00
Eelco Dolstra
0f03c796e7
2008-11-13 00:01:19 +00:00
Eelco Dolstra
cd06b6c97d
2008-11-12 23:45:11 +00:00
Eelco Dolstra
6591118a2b
2008-11-12 23:14:57 +00:00
Eelco Dolstra
08f171d9e8
2008-11-12 16:42:07 +00:00
Eelco Dolstra
b96d304c85
* Support serving products that are directories (such as manuals or
...
coverage analysis reports).
2008-11-12 15:36:50 +00:00
Eelco Dolstra
f9c0996003
* Allow downloading of build products.
2008-11-12 14:41:51 +00:00
Eelco Dolstra
25f227f678
2008-11-12 14:29:32 +00:00
Eelco Dolstra
356b77bb95
2008-11-12 13:00:56 +00:00
Eelco Dolstra
80a2350a0a
2008-11-12 11:09:21 +00:00
Eelco Dolstra
ee13f3cc0d
* Store info about all the build actions and allow them to be
...
monitored while the build is in progress.
2008-11-11 17:49:50 +00:00
Eelco Dolstra
632bb24687
2008-11-11 14:45:33 +00:00
Eelco Dolstra
ecd0ba74e9
* Merged the Build and Job tables.
2008-11-11 12:54:37 +00:00
Eelco Dolstra
0f24c11292
* Perform builds in parallel.
...
* Turn off sqlite's synchronous mode because fsync() performance
*really* sucks on ext3 (it syncs the entire filesystem). See
https://bugzilla.mozilla.org/show_bug.cgi?id=421482
2008-11-11 10:27:36 +00:00
Eelco Dolstra
8f5e7c319c
2008-11-10 13:33:12 +00:00
Eelco Dolstra
15edf10986
2008-11-10 10:27:52 +00:00
Eelco Dolstra
8f42bf303f
2008-11-10 10:18:50 +00:00
Eelco Dolstra
f4a44db664
2008-11-09 00:48:36 +00:00
Eelco Dolstra
74c952d073
2008-11-08 22:40:12 +00:00
Eelco Dolstra
ffd0f75692
* Generic declaration of build products.
2008-11-07 17:10:34 +00:00
Eelco Dolstra
2d52634b1e
2008-11-07 15:29:52 +00:00
Eelco Dolstra
fe1582a00d
* Refactoring.
2008-11-07 14:51:44 +00:00
Eelco Dolstra
d5a0f6e145
2008-11-06 23:17:46 +00:00
Eelco Dolstra
2324218ecd
2008-11-06 18:28:34 +00:00
Eelco Dolstra
279de1a9c2
* Support variant builds.
2008-11-06 18:26:29 +00:00
Eelco Dolstra
7bbd736d96
2008-11-06 14:32:30 +00:00
Eelco Dolstra
b0bbb1a011
2008-11-06 13:40:31 +00:00
Eelco Dolstra
9894b10131
2008-11-05 23:37:23 +00:00
Eelco Dolstra
a77acc2a4f
* BuildInputs table: link to dependencies, include store paths.
2008-11-05 23:08:16 +00:00
Eelco Dolstra
0ea294e77e
* Store info about the build inputs in the build record.
2008-11-05 06:23:41 +00:00
Eelco Dolstra
a970603ad1
* Get dependencies from the database.
2008-11-05 04:52:52 +00:00
Eelco Dolstra
621ce1ee64
2008-11-05 03:25:48 +00:00
Eelco Dolstra
8378d57ba2
2008-11-05 01:58:29 +00:00
Eelco Dolstra
6e73c85c3b
* Basic job info in the database.
2008-11-04 18:23:28 +00:00
Eelco Dolstra
5915bcaba3
* Store build duration, handle cached builds.
2008-10-28 17:08:29 +00:00
Eelco Dolstra
08798f3c07
* Some jQuery / CSS hackery.
2008-10-28 15:34:29 +00:00
Eelco Dolstra
9f7403765c
* Show the latest build for each job.
2008-10-28 12:44:36 +00:00
Eelco Dolstra
7ded8bbd15
2008-10-28 10:32:31 +00:00
Eelco Dolstra
b250fa6094
* Start of a basic Catalyst web interface.
2008-10-28 10:19:31 +00:00
Eelco Dolstra
c181fc8703
* Put info about logs / build products in the DB.
2008-10-28 10:18:03 +00:00
Eelco Dolstra
ff6021450a
* Start putting build results in a database.
2008-10-10 16:05:05 +00:00