Commit Graph

2803 Commits

Author SHA1 Message Date
3b70a807b5 Allow setting keepnr to 0 2013-09-18 11:27:37 +02:00
c667b9112d Don't trigger evaluation of disabled jobsets 2013-09-18 11:25:52 +02:00
c14a333062 Revive release button on eval page 2013-09-17 16:39:50 +02:00
597fd827b1 Merge pull request #81 from mornfall/master
DARCS support
2013-09-14 06:18:48 -07:00
3f68076577 hydra-build: Don't send a giant query to the database
We had Postgres barfing with this error:

  DBIx::Class::Storage::DBI::_dbh_execute(): DBI Exception: DBD::Pg::st execute failed: ERROR: stack depth limit exceeded

because the ‘drvpath => [ @dependentDrvs ]’ in failDependents can
cause a query of unbounded size.  (In this specific case there was a
failure of Bison, which has > 10000 dependent derivations.)  So now we
just get all scheduled builds from the DB.
2013-09-10 11:01:29 +00:00
35aad40692 Kill builds that produce more than 64 MiB of log output 2013-09-10 10:33:55 +00:00
0041c336d1 DarcsInput: Avoid a chdir. 2013-09-07 14:47:49 +02:00
d31e4469bb Put a 5-second CPU time limit on the log processing pipeline. 2013-09-07 13:28:53 +02:00
1e1a1f0838 Also allow : (colon) in pathCompRE. 2013-09-07 13:28:53 +02:00
bb38bdfe35 Allow : and + in build product filenames. 2013-09-07 13:28:53 +02:00
dcf386cfed Make getDrvLogPath work with both bucketed and non-bucketed nix logs. 2013-09-07 13:28:53 +02:00
bb8059e50c Add support for fetching URLs as inputs. 2013-09-07 13:28:53 +02:00
5a35912956 Add support for darcs repositories. 2013-09-07 13:28:51 +02:00
5078730cb5 Use evalFile() instead of parseExprFromFile() 2013-09-06 15:17:27 +00:00
788c2bebaa Not every buildstep has a defined drvpath
Signed-off-by: Shea Levy <shea@shealevy.com>
2013-09-03 14:43:08 -04:00
04e6eda4c7 Remove unused function 2013-09-03 20:29:52 +02:00
d914845ad7 Use a distinct icon for cancelled builds 2013-09-03 17:37:47 +02:00
e8fb659d63 Fix some wellformedness issues
Also fixed some duplicate IDs reported by Mats Erik Andersson.
2013-09-03 17:35:21 +02:00
614f07755a Don't show logs bigger than 64 MB 2013-08-30 20:44:04 +00:00
6655ada236 Serve raw uncompressed logs directly 2013-08-30 18:11:03 +00:00
fd7e37ef89 Try harder to find build logs
Due to the fixed-output derivation hashing scheme, there can be
multiple derivations of the same output path.  But build logs are
indexed by derivation path.  Thus, we may not be able to find the
log of a build or build step using its derivation.  So as a fallback,
Hydra now looks for other derivations with the same output paths.
2013-08-30 13:53:25 +00:00
559a98cfee Use a different icon for aborted builds 2013-08-28 17:40:51 +02:00
2f7071ee9d Tabify the eval page
The different types of types (new, removed, newly failing, and so
on) now each have their own tab.
2013-08-28 17:40:51 +02:00
07747b7e88 Allow filtering jobs in eval pages 2013-08-28 17:40:51 +02:00
d0bcaa6284 Allow comparing an eval against the jobset one day/week/month before 2013-08-28 17:40:51 +02:00
ccc09c565e Sort jobsets by name 2013-08-28 17:40:51 +02:00
58a6fdc5ed Remove the job status pages
They're mostly redundant since there is a faster "jobs" tab on
the jobset pages now.  The only thing the latter lacks is the
ability to see status change times, but those are quite expensive
to compute, and are visible on build pages if you really need them.
2013-08-28 17:40:51 +02:00
42c4ef856f Fix incorrect removed jobs in eval pages
PostgreSQL and Perl have different sort orders, in particular when
comparing job names such as "aspell.x86_64-linux" and
"aspellDicts.cs.i686-freebsd".  This confused the evaluation
comparison code, causing some jobs to appear as "removed".
So now we do all the sorting in Perl.

Fixes #105.
2013-08-28 17:40:50 +02:00
d886ff9973 Integrate the "Job status" and "All jobs" tabs
The job status tabs now has a toggle to show inactive jobs, rendering
the "All jobs" tab redundant.
2013-08-28 17:40:50 +02:00
9002b69c2d By default, show the first 250 jobs only
This is particularly useful for the Nixpkgs jobsets, which now have
~24K jobs.
2013-08-28 17:40:50 +02:00
10d959a9ff Show visual feedback that the filter is being applied 2013-08-28 17:40:50 +02:00
11acf0be28 Load a tab only once 2013-08-28 17:40:50 +02:00
410060ec8a Jobset page: Add a new tab to show job status in a matrix 2013-08-28 17:40:50 +02:00
82e073d043 Show build status 2 and 5 in the same way
(Status 5 is obsolete.)
2013-08-28 17:40:50 +02:00
e69c7ac360 "limit" -> "rows" 2013-08-28 17:40:50 +02:00
7685596aa8 Transpose the aggregate constituents table
This way, it grows vertically rather than horizontally.  Horizontal
may be more "logical", but this is more practical.
2013-08-28 17:40:50 +02:00
7725038821 On aggregate job pages, show a matrix showing all the constituent builds 2013-08-28 17:40:50 +02:00
bf42392fe4 Fix typo. 2013-08-27 15:12:41 +02:00
a57957df84 Handle job aliases in AggregateConstituents
Aggregate constituents are derivations.  However there can be multiple
builds in an evaluation that have the same derivation, i.e. they can
alias each other (e.g. "emacs", "emacs24" and "emacs24Packages.emacs"
in Nixpkgs).  Previously we picked a build arbitrarily for the
AggregateConstituents table.  Now we pick the one with the shortest
name (e.g. "emacs").
2013-08-27 11:48:02 +02:00
a98075f386 HipChat notification: do not include latest commits of all inputs in 'who-broke-the-build' list. Use only committers from inputs that have actually changed since previous build. 2013-08-26 11:06:10 +00:00
02cba75610 Add an action to download a specific output of a build as a .nar.bz2
E.g. http://hydra/build/3515983/output/out downloads the output named
"out" as a bzip2-compressed NAR.
2013-08-21 14:30:38 +02:00
edb88ef452 Remove unused ActiveJobs source 2013-08-20 15:22:46 +02:00
14e418cafa Don't show bogus last-checked times 2013-08-16 18:26:01 +02:00
6264995198 Remove the jobs status page
The per-system presentation doesn't make much sense any more given
issue #60.  It should be replaced by (say) a grid showing each job per
evaluation.
2013-08-16 17:16:15 +02:00
e54c361a95 Remove per-platform links from the job page
Having different builds within a job is obsolete (issue #60), one
should have different job per platform (e.g. build.x86_64-linux).
2013-08-16 16:39:42 +02:00
a9c6f522e6 clear_queue_non_current: Don't use isCurrent 2013-08-16 16:38:09 +02:00
46f8b25c1f Keep builds that failed with output
The user may want to look at the output, so they shouldn't be
GC'ed right away.
2013-08-16 16:36:06 +02:00
d16738e130 hydra-update-gc-roots: Keep the most recent evaluations
We now keep all builds in the N most recent evaluations of a jobset,
rather than the N most recent builds of every job.  Note that this
means that typically fewer builds will be kept (since jobs may be
unchanged across evaluations).
2013-08-16 16:21:30 +02:00
8e1ade4422 Fix display of non-aggregate builds 2013-08-15 13:57:47 +02:00
242072bbd6 Hide the views tab for project that don't have them
Views are obsolete (replaced by the declarative "aggregate" build
mechanism) so we don't want people creating new ones.
2013-08-15 13:54:23 +02:00