Commit graph

773 commits

Author SHA1 Message Date
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
8c91e69779 2009-03-16 17:20:45 +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