97a6011628* Hack around those SQLite timeouts: just retry the transaction.
Eelco Dolstra
2009-04-22 22:43:04 +00:00
80691a39f5* Don't log redundant build steps in case of cached failures.
Eelco Dolstra
2009-04-22 14:41:12 +00:00
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.
Eelco Dolstra
2009-04-22 13:55:20 +00:00
10ae24fd3c* Fixed a broken redirect when deleting a release set.
Eelco Dolstra
2009-04-09 11:43:49 +00:00
607d5641b6* Added a page to quickly see all failed builds and failed evaluations per project or jobset or job or globally.
Eelco Dolstra
2009-04-08 22:08:00 +00:00
bf2a5a2629* Allow omitting the product number if there is only one product in a build. This allows URLs like
Eelco Dolstra
2009-04-08 09:37:05 +00:00
11d8421def* Support redirecting to some job of a release. For instance, this redirects to the "tarball" build of the latest release of patchelf/unstable:
Eelco Dolstra
2009-04-08 09:03:45 +00:00
26ff5f1ff0* Provide some redirects to build products by type so that we can for example link to the latest tarball through a URI like:
Eelco Dolstra
2009-04-08 08:09:39 +00:00
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.
Eelco Dolstra
2009-04-07 15:49:02 +00:00
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.
Eelco Dolstra
2009-04-03 15:37:21 +00:00
ca11aba074* Fix an infinite recursion.
Eelco Dolstra
2009-04-03 09:13:34 +00:00
550488e010* Add openssh to $PATH to support svn+ssh checkouts.
Eelco Dolstra
2009-04-03 08:39:10 +00:00
09944ed3a2* Forgot to commit.
Eelco Dolstra
2009-04-03 08:38:13 +00:00
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.
Eelco Dolstra
2009-04-02 16:15:57 +00:00
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.
Eelco Dolstra
2009-03-31 15:59:31 +00:00
156f40130e* Generate robots.txt in a more Catalystic way.
Eelco Dolstra
2009-03-31 14:14:45 +00:00
d6e996d01c* Generate a robots.txt.
Eelco Dolstra
2009-03-31 13:48:03 +00:00
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.
Eelco Dolstra
2009-03-26 15:32:19 +00:00
f0f9f12e42* Use Nix's negative caching.
Eelco Dolstra
2009-03-26 12:53:39 +00:00
c75977ce5a* Record the input containing the Nix expression (release.nix) in the build inputs. Otherwise we can't (for example) reproduce a build later.
Eelco Dolstra
2009-03-23 21:42:59 +00:00
dab25b30f0* Fix the queue page.
Eelco Dolstra
2009-03-23 15:19:34 +00:00
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.
Eelco Dolstra
2009-03-23 13:52:24 +00:00
d9424b6364* Show the input bindings in evaluation error messages.
Eelco Dolstra
2009-03-20 17:06:50 +00:00
3d26bb7fd1* Allow `-' in release set names.
Eelco Dolstra
2009-03-20 15:19:17 +00:00
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"'.
Eelco Dolstra
2009-03-20 14:50:09 +00:00
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.
Eelco Dolstra
2009-03-18 16:46:01 +00:00
5853a26b13* Don't discard old build steps when restarting a build.
Eelco Dolstra
2009-03-16 16:56:47 +00:00
a6e84d8431* Option to show the tail of a log.
Eelco Dolstra
2009-03-16 12:16:33 +00:00
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.
Eelco Dolstra
2009-03-16 10:57:44 +00:00
32f0665d2c* Allow users to change the value of a build's "keep" flag, which prevents the build output from being garbage collected.
Eelco Dolstra
2009-03-14 23:56:57 +00:00
eeddf5752d* Provide access to the raw, non-pretty-printed logfiles. Unfortunately necessary for large logs.
Eelco Dolstra
2009-03-14 23:27:08 +00:00
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).
Eelco Dolstra
2009-03-14 22:34:22 +00:00
7c7c43335d* Job status: show the active jobs.
Eelco Dolstra
2009-03-13 17:32:08 +00:00
f2f586d842* Disambiguate jobs by jobset name. I.e. jobs with the same name in different jobsets are not considered the same job.
Eelco Dolstra
2009-03-12 23:46:17 +00:00
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".
Eelco Dolstra
2009-03-12 14:18:30 +00:00
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.
Eelco Dolstra
2009-03-12 13:42:44 +00:00
f945fbb5bd* Use Catalyst's HTTP::Prefork engine by default, with some limits to prevent the server from being overloaded.
Eelco Dolstra
2009-03-11 15:48:06 +00:00
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.
Eelco Dolstra
2009-03-11 14:44:34 +00:00
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.
Eelco Dolstra
2009-03-09 17:21:10 +00:00
8725dc03ec* Use ->update({...}) properly.
Eelco Dolstra
2009-03-09 16:22:41 +00:00
5c45661141* Report evaluation errors per job, and don't bail out if a job fails to evaluate.
Eelco Dolstra
2009-03-07 14:06:10 +00:00
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).
Eelco Dolstra
2009-03-06 16:55:19 +00:00
0788ec24e6* Export all relevant info about the derivation.
Eelco Dolstra
2009-03-06 15:18:59 +00:00
f9d4957f2f* Export all relevant info about the derivation.
Eelco Dolstra
2009-03-06 15:16:29 +00:00
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
Eelco Dolstra
2009-03-06 13:34:53 +00:00
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.
Eelco Dolstra
2009-03-06 12:49:01 +00:00