Commit Graph
77 Commits
Author SHA1 Message Date
Rob Vermaas 334135448e Remove buildtime and runtime dependency graph. It is useless on normal derivations. 2012-04-16 15:23:07 +02:00
Eelco Dolstra 2f9153c640 Prevent multiple builds with the same (job, outPath) tuple from being added
This happened in a pathological case in Nixpkgs: the "grub" job is
evaluated for i686-linux and x86_64-linux, but in the latter case it
returns the same derivation as in the former case.  So only one build
should be added.
2012-04-02 15:56:29 +00:00
Eelco Dolstra 27619f18e2 Re-enable the "Related Builds" tab
However, there is a "limit 1" on the JobsetEval search to prevent a
sequential scan of the Builds table.
2012-03-12 20:47:30 +01:00
Eelco Dolstra 2d1cf73974 Speed up channel processing
In particular the /pkg action is now O(lg n) instead of O(n) in the
number of packages in the channel, and listing the channel contents
no longer requires calling isValidPath() on all packages.

Derivations (and thus build time dependencies) are no longer included
in the channel, because they're not GC roots.  Thus they could
disappear unexpectedly.
2012-03-12 20:47:30 +01:00
Eelco Dolstra 9f10c0f9c0 Fix a reference to BuildResultInfo 2012-03-12 20:47:30 +01:00
Eelco Dolstra 47f877c5bb Evaluator cleanups
* Don't use isCurrent anymore; instead look up builds in the previous
  jobset evaluation.  (The isCurrent field is still maintained because
  it's still used in some other places.)

* To determine whether to perform an evaluation, compare the hash of
  the current inputs with the inputs of the previous jobset
  evaluation, rather than checking if there was ever an evaluation
  with those inputs.  This way, if the inputs of an evaluation change
  back to a previous state, we get a new jobset evaluation in the
  database (and thus the latest jobset evaluation correctly represents
  the latest state of the jobset).

* Improve performance by removing some unnecessary operations and
  adding an index.
2012-03-12 20:47:29 +01:00
Eelco Dolstra 68a867da67 Merge the BuildResultInfo table into the Builds table 2012-03-12 20:47:29 +01:00
Eelco Dolstra 25334715f8 Merge the BuildSchedulingInfo table into the Builds table
This simplifies the code and improves performance since it reduces
the number of joins.
2012-03-12 20:47:29 +01:00
Eelco Dolstra 578530dac2 Don't show duplicate builds in "Related builds"
Since a build may be a member of multiple jobset evaluations, we need
to do a "select distinct" here.  But maybe we should only show builds
from a single evaluation (e.g. the most recent), since showing builds
from several may be confusing.
2012-02-21 17:16:32 +01:00
Rob Vermaas 2cf9b148eb 50 for related builds might be a kind of low, will start with 100 2012-02-16 17:00:59 +01:00
Rob Vermaas 924d94cafd * minor performance tweaks
* added related builds tab which show related builds (builds that are in same evaluations), shows max 50
2012-02-16 16:56:01 +01:00
Eelco Dolstra c613b885f2 Use the new Nix Perl bindings 2011-11-30 15:25:28 +01:00
Rob Vermaas 1395717245 recognize tgz in build products contents page 2011-11-16 10:32:32 -05:00
Ludovic Courtès c329bece61 Handle xz-compressed files. 2011-10-10 21:00:54 +00:00
Rob Vermaas ef802279ed use build timestamp as last-modified header on download 2011-09-15 15:22:00 +00:00
Eelco Dolstra d8a7ca67f4 * Start of a JSON API to get information about a specific build.
E.g. http://server/build/1341335/api/get-info returns a JSON 
  record containing information about the build.
2011-09-15 08:27:17 +00:00
Eelco Dolstra c51af99ecf * Catalyst now escapes slashes to %2f, which broke defaultUriForProduct. 2011-08-19 16:23:01 +00:00
Rob Vermaas 5d166150f9 using backquote as argument resulted in only first line as first argument to removeAsciiEscapes 2011-06-10 10:48:51 +00:00
Rob Vermaas 48b435c2de remove ascii escapes from log in tail page and emails 2011-06-10 09:53:15 +00:00
Rob Vermaas 259d163ec9 clean up build page for build that failed with result 2011-06-10 07:36:30 +00:00
Rob Vermaas edbfc781d0 qualify id column 2011-03-15 13:54:43 +00:00
Rob Vermaas 559ab9c97a automatic reload of tail log when build is running 2011-02-02 09:00:52 +00:00
Rob Vermaas f35c9a4574 hydra: put contents links into html, add links to files from contents page 2011-01-04 12:50:59 +00:00
Rob Vermaas 4fdd011b2d hydra: fixed missing argument to restartbuild function 2010-12-07 13:25:29 +00:00
Rob Vermaas 6d6f43fa0c hydra: factored out build restart and 2010-12-03 08:40:34 +00:00
Eelco Dolstra 0caf68c638 * Disambiguate. 2010-08-31 15:30:20 +00:00
Eelco Dolstra f6715fa0ef * Added a status page that shows all the currently executing build steps.
* Store the system type in the BuildSteps table.
* Don't query the queue size when serving static pages.  This prevents
  two unnecessary database queries per request.
2010-08-31 15:27:46 +00:00
Eelco Dolstra 2a69745a88 * Store the name of the machine that performed a build step in the
BuildSteps table.
2010-08-31 14:08:59 +00:00
Rob Vermaas c174998a0c hydra: when restarting a build, remove possible failed dependencies from the failed-cache. 2010-08-11 06:43:59 +00:00
Rob Vermaas f7ce960b96 hydra: make sure viewing logs works when logs are bz2'd 2010-08-10 13:11:41 +00:00
Rob Vermaas caa0f1a255 Hydra: In case of failure, also show changes between last succesful build and the first failed build after this 2010-07-14 07:31:14 +00:00
Eelco Dolstra e35f0005e6 * Move NARs from the NixChannel controller to the Root controller and
drop the "/nix/store".  I.e. instead of

    http://hydra.nixos.org/jobset/nixpkgs/trunk/channel/latest/nar/nix/store/99djmii6l4yw9gn07zxqabh8z58pp84c-libmspack-0.0.20040308alpha.drv 

  we now have

    http://hydra.nixos.org/nar/99djmii6l4yw9gn07zxqabh8z58pp84c-libmspack-0.0.20040308alpha.drv 

  The main reason is that this is much faster, since we don't need to
  get all the channel data (which isn't used anyway for NAR
  generation).  This speeds up downloading a NAR from the Nixpkgs
  channel by > 2 seconds.

* Drop "Hydra::View::" from view names to get rid of an ugly warning.
2010-06-22 12:00:19 +00:00
Rob Vermaas 9c42f60f08 Hydra: Allow all builds to be restarted. 2010-05-26 08:03:44 +00:00
Rob Vermaas a9c2880cf6 Hydra/25: At job pages, show the hash of the output
* added hash of output path to the information tab on build page in stead
2010-04-27 07:55:19 +00:00
Rob Vermaas b75de713e5 * hydra: reinstate proper error for non existing build, Hydra/9 2010-03-05 13:03:41 +00:00
Eelco Dolstra 6fe9e1b03b * Cannot call isValidPath on a logfile. This happened to work because
isValidPath bypassed the Nix store API.
2010-03-05 10:53:49 +00:00
Rob Vermaas 7208f79828 inital version of links to diff in scm 2010-02-25 15:32:56 +00:00
Rob Vermaas 529a6cf6eb * hydra: buildpage, show changes since last build/successful build 2010-02-22 13:21:34 +00:00
Rob Vermaas fb8ab7a574 * hydra: download closure now makes closure of outpath in stead of useless drvpath 2010-02-18 15:09:13 +00:00
Rob Vermaas 68c60b4c66 * hydra: added index, actual build time (buildstep with same outpath, so without deps) of the build 2010-02-11 12:23:46 +00:00
Rob Vermaas 3753ccb1ce * hydra: make chart zoomable and clickable 2010-02-11 09:18:30 +00:00
Rob Vermaas f44128275c * hydra: added initial version of build graph 2010-02-10 10:15:09 +00:00
Rob Vermaas 88ffadb70e * hydra: handle case where logfile is empty 2010-02-08 11:46:39 +00:00
Rob Vermaas f57b40101a hydra: error on buildpage for queued build 2010-02-06 07:15:31 +00:00
Rob Vermaas 348db7600c * hydra: on build page, show tail of log on first tab when buildstatus == 1 (this specific build failed) 2010-02-05 20:32:07 +00:00
Eelco Dolstra 9b25d7b299 * A `nix-build' Hydra product must be a directory. 2010-02-05 20:07:49 +00:00
Rob Vermaas b615135825 * hydra: add dependency list with links to logfiles 2010-01-22 13:31:59 +00:00
Eelco Dolstra 4b0bc65cbb * Add derivations and all build-time dependencies of a build to the
Hydra channels.  This includes sources.
2010-01-19 16:47:32 +00:00
Eelco Dolstra a2a041303f * Handle the case where there is no cached build step that produced
outpath.  This can happen if the build was performed outside of
  Hydra.
2010-01-19 16:35:16 +00:00
Rob Vermaas 63db13be3f hydra: in case of cached build, add link to build that built the storepath 2010-01-15 14:18:12 +00:00