Commit graph

62 commits

Author SHA1 Message Date
Eelco Dolstra 6c4ad48be7 Gratuitous whitespace. 2011-11-18 20:35:27 +01:00
Rob Vermaas 2bbbfd7a61 remove fk constraint jobsets.nixExprInput -> JobsetInputs.name, would only work on postgresql in postpone-fk-checking mode (at end of transaction in stead of through the transaction) which is not the default 2011-03-07 16:07:16 +00:00
Rob Vermaas c645fa55ff initial bzr support 2011-02-08 13:11:08 +00:00
Rob Vermaas 11ad35443b hydra: make size columns bigger (integer -> bigint) 2010-12-08 10:14:57 +00:00
Eelco Dolstra b4ce69ed8d * Index the Builds table on drvPath to prevent a full table scan
in findBuildDependencyInQueue in hydra_queue_runner.
2010-11-19 15:49:55 +00:00
Rob Vermaas dcdbb1d814 hydra: store logfile/output path/closure size 2010-11-11 11:03:50 +00:00
Rob Vermaas a391c78aaf hydra: buildmachine disabled by default, add some default constraints 2010-10-13 12:51:29 +00:00
Rob Vermaas 398993f688 hydra: add some admin for adding/enabling/etc build machines 2010-10-13 12:32:57 +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 9d9bf8b264 hydra: make nr of build to keep configurable per jobset 2010-08-10 06:48:45 +00:00
Eelco Dolstra 489e4f7697 * Create some more indices on tables that have a foreign key reference
to the Builds table.  Otherwise deleting builds (e.g. when flushing
  the queue) is very slow.
2010-08-05 14:06:02 +00:00
Rob Vermaas 0802559b03 hydra: do not perform git clone every time. in stead work on local clone and pull 2010-07-28 12:48:29 +00:00
Rob Vermaas d6131fba50 initial support for mercurial 2010-07-27 11:14:24 +00:00
Rob Vermaas 5f7ebaad37 added hide feature for project/jobset 2010-06-04 14:43:28 +00:00
Rob Vermaas bb7f82840b Hydra: Add support for maxSilent meta attribute (also already added timeout, but not implemented the actual timeout for the build yet) 2010-05-26 08:03:59 +00:00
Rob Vermaas 001113f7f9 Hydra/28: Rename "scheduler" to "evaluator" 2010-05-11 11:10:03 +00:00
Rob Vermaas 7a79d17a36 added newsitems, added some admin options to clear various caches. 2010-04-27 13:29:08 +00:00
Rob Vermaas 2c132a2748 * hydra: project members can do stuff that the owner can do 2010-03-10 10:02:25 +00:00
Eelco Dolstra 7daca03e78 * Store jobset evaluations in the database explicitly. This includes
recording the builds that are part of a jobset evaluation.  We need
  this to be able to answer queries such as "return the latest NixOS
  ISO for which the installation test succeeded".  This wasn't previously
  possible because the database didn't record which builds of (say)
  the `isoMinimal' job and the `tests.installer.simple' job came from
  the same evaluation of the nixos:trunk jobset.

  Keeping a record of evaluations is also useful for logging purposes.
2010-03-05 15:41:10 +00:00
Eelco Dolstra 79a1489c95 * Remove the triggers to simulate foreign key constraints on SQLite,
as SQLite now supports them natively (though we still need to turn
  them on in Hydra).
2010-03-05 10:33:36 +00:00
Rob Vermaas 7208f79828 inital version of links to diff in scm 2010-02-25 15:32:56 +00:00
Rob Vermaas 87ea0cb2b9 fix wrong comment 2010-02-25 09:22:00 +00:00
Eelco Dolstra d8cc0bbb5d * Make the "latest succeeded" query (used by the "latest" channel)
faster, from about 4.5s to 1.0s for the global "latest" channel.
  Note that the query is only fast if the "IndexBuildsOnJob" and
  "IndexBuildsOnJobAndIsCurrent" indices are dropped - if they exist,
  PostgreSQL will use those instead of the more efficient
  "IndexBuildsOnJobFinishedId" index.  Looks like a bug in the planner
  to me...
2010-02-12 14:49:32 +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
Eelco Dolstra 14a1e6db61 * More indices. 2010-02-11 10:42:37 +00:00
Eelco Dolstra 59e4f65298 * Speed up the jobset index page. Especially the query to get the
inactive jobs was quite slow.
* "IndexBy" -> "IndexOn".
2010-02-09 13:47:20 +00:00
Eelco Dolstra 9f9e18e3a6 2010-01-26 20:27:33 +00:00
Eelco Dolstra 268364bfd8 2010-01-26 20:19:25 +00:00
Eelco Dolstra 0c5f8dfb47 * Another essential index. 2010-01-26 20:03:20 +00:00
Eelco Dolstra f468caf192 2010-01-19 17:59:13 +00:00
Rob Vermaas 8a01999220 hydra
* remove trailing spaces from email notification
 * option to disable email notification for jobset
2010-01-06 13:07:59 +00:00
Rob Vermaas 044edfb764 * email notification of evaluation errors to project owner (if desired) 2009-12-18 12:07:45 +00:00
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
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 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 929cbe7b7c * Adding persistant releases. A release is a named set of builds. 2009-10-21 15:44:17 +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 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
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 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 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
Rob Vermaas 87f3fbaab1 extra indexes 2009-09-30 12:17:55 +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 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 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 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