Commit Graph

44 Commits

Author SHA1 Message Date
4ed877360b hydra-queue-runner: Improved scheduling
Each jobset now has a "scheduling share" that determines how much of
the build farm's time it is entitled to.  For instance, if a jobset
has 100 shares and the total number of shares of all jobsets is 1000,
it's entitled to 10% of the build farm's time.  When there is a free
build slot for a given system type, the queue runner will select the
jobset that is furthest below its scheduling share over a certain time
window (currently, the last day).  Withing that jobset, it will pick
the build with the highest priority.

So meta.schedulingPriority now only determines the order of builds
within a jobset, not between jobsets.  This makes it much easier to
prioritise one jobset over another (e.g. nixpkgs:trunk over
nixpkgs:stdenv).
2013-09-21 14:57:01 +00:00
f7bcf9fc19 The field is actually enabled, not disabled
Signed-off-by: Shea Levy <shea@shealevy.com>
2013-07-25 17:59:13 -04:00
1404d33005 Show when a Project's jobsets are disabled
Signed-off-by: Shea Levy <shea@shealevy.com>
2013-07-25 17:48:28 -04:00
002ac9ef63 Merge in the first bits of the API work
The catalyst-action-rest branch from shlevy/hydra was an exploration of
using Catalyst::Action::REST to create a JSON API for hydra. This commit
merges in the best bits from that experiment, with the goal that further
API endpoints can be added incrementally.

In addition to migrating more endpoints, there is potential for
improvement in what's already been done:
* The web interface can be updated to use the same non-GET endpoints as
  the JSON interface (using x-tunneled-method) instead of having a
  separate endpoint
* The web rendering should use the $c->stash->{resource} data structure
  where applicable rather than putting the same data in two places in
  the stash
* Which columns to render for each endpoint is a completely debatable
  question
* Hydra::Component::ToJSON should turn has_many relations that have
  strings as their primary keys into objects instead of arrays

Fixes NixOS/hydra#98

Signed-off-by: Shea Levy <shea@shealevy.com>
2013-07-02 14:00:46 -04:00
a5436be2ce After editing a project/jobset, redirect back to the config tab 2013-06-25 01:00:59 +02:00
1c30a777ad Fix project/jobset deletion 2013-06-11 16:57:22 +02:00
56a62c3d88 Make jobset deletion consistent with project deletion 2013-02-26 17:36:49 +01:00
fec45d1f07 Remove dead code 2013-02-21 13:45:11 +01:00
547e41263d Split viewing and editing a jobset 2013-02-21 02:33:57 +01:00
9c7b416f8b Make the hide/unhide actions a checkbox in the project settings
Also use proper bootstrap layout for the project settings form.
2013-02-21 01:45:39 +01:00
cea17fd57e Show releases in a tab on the project page 2013-02-21 01:23:42 +01:00
d9f6e662d8 Split viewing and editing a project 2013-02-21 01:12:57 +01:00
67aefde62c Remove trailing whitespace 2013-01-22 14:41:02 +01:00
aa28ffe3a8 Die tabs die 2013-01-22 14:09:37 +01:00
f27ae1d566 Add support for Guile & Guix. 2012-10-17 16:23:00 +02:00
51b920c875 Bootstrapify the Hydra forms (except the project and jobset edit pages)
Plus lots of other tweaks.
2012-04-17 16:53:11 +02:00
d350b935f2 Add validation for project and jobset names 2012-04-17 08:53:00 +00:00
b13664308c Whitespace 2012-02-28 15:27:44 +01:00
107a879adc if no emailoverride specified, use empty string 2011-03-07 16:02:23 +00:00
4c63ccb6bc hydra: moves jobsetOverview sub 2010-09-03 09:17:52 +00:00
ce34776992 added some json responses 2010-09-02 12:21:56 +00:00
5f7ebaad37 added hide feature for project/jobset 2010-06-04 14:43:28 +00:00
5d0bf48aa0 add some stats to jobsets in project view 2010-03-19 08:36:31 +00:00
e2be1adc22 hydra: add status icon per jobset on project page 2010-03-18 15:59:24 +00:00
ef34de7603 order jobset in project view 2010-03-18 15:15:14 +00:00
fabc8e4774 * Disable the statistics on the project, jobset and job pages for now
because they take too much time to compute.
2010-02-09 12:35:20 +00:00
2bcedde1c8 * Sort releases. 2009-11-04 17:17:44 +00:00
851a4dff4d * Creating releases. 2009-10-23 09:58:23 +00:00
929cbe7b7c * Adding persistant releases. A release is a named set of builds. 2009-10-21 15:44:17 +00:00
321027b262 * More release -> view. 2009-10-20 12:26:39 +00:00
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
97a6011628 * Hack around those SQLite timeouts: just retry the transaction. 2009-04-22 22:43:04 +00:00
607d5641b6 * Added a page to quickly see all failed builds and failed evaluations
per project or jobset or job or globally.
2009-04-08 22:08:00 +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.
2009-04-03 15:37:21 +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.
2009-04-02 16:15:57 +00:00
8f6f6ee53e * Allow authorised users to create projects. 2009-03-24 14:22:59 +00:00
163f3de2fa * Urgh. `-' had special significance in HTML form parameters... 2009-03-19 15:41:33 +00:00
af1e60a043 * Allow `-' in project/jobset names. 2009-03-19 15:12:50 +00:00
7c7c43335d * Job status: show the active jobs. 2009-03-13 17:32:08 +00:00
3c86b3652c * Refactoring. 2009-03-13 15:41:19 +00:00
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
8725dc03ec * Use ->update({...}) properly. 2009-03-09 16:22:41 +00:00
a74bfdf533 * Inputs of type "build" must now be declared explicitly. 2009-03-09 13:58:43 +00:00
97ed2052ba * Move everything up one directory. 2009-03-05 13:41:57 +00:00