Ludovic Courtès
9da89dd32b
hydra-eval-guile-jobs: Adjust to <license> objects.
...
* src/script/hydra-eval-guile-jobs.in (job-evaluations->sxml): Output
the license name, not the external representation of <license>
objects.
2013-03-27 00:07:57 +01:00
Peter Simons
5ffc925ae7
hydra-queue-{runner,evaluator}: don't clutter the system log with debug messages
2013-03-26 11:03:15 +01:00
Rob en Lizi Vermaas
52a9f1a14e
Use get_column for 'as' column (max_stoptime).
2013-03-24 18:50:17 +01:00
Sander van der Burg
03189bf62b
Implemented quoted strings support in hydra-build-products to allow file names with spaces + testcase
2013-03-20 18:05:21 +01:00
Eelco Dolstra
50434d76c2
Fix rendering of jobset inputs
2013-03-19 16:14:47 +01:00
Eelco Dolstra
c1aefc4c41
Update bootstrap to 2.0.3
...
This makes the navbar collapse properly on small screens.
2013-03-19 00:15:12 +01:00
Ludovic Courtès
93f4a26058
Don't always include "Hydra" in the logo part.
...
This partially reverts 67986b03fa
.
2013-03-15 11:23:00 +01:00
Shea Levy
94382bd8f0
Admin controller: Use PathPart, not Path
...
Chaining paths only works properly when PathPart is used. Before this
fix, the affected URIs bypassed the top-level 'admin' sub.
Signed-off-by: Shea Levy <shea@shealevy.com>
2013-03-14 19:22:02 -04:00
Eelco Dolstra
c96e427ec0
Log segfaults from the evaluator
2013-03-14 17:39:24 +01:00
Shea Levy
152c392198
Whoops
2013-03-07 10:52:31 -05:00
Eelco Dolstra
6d131719be
Respect SystemTypes if defined
2013-03-05 18:01:44 +01:00
Eelco Dolstra
fcd511c4de
Revert "Remove now-unused SystemTypes table"
...
This reverts commit 71d020735b
.
Unfortunately there are still some cases where we need to set Hydra's
concurrency separately. (Ideally, Hydra would start *all* queued
builds in parallel and let Nix take care of everything...)
2013-03-05 17:42:16 +01:00
Eelco Dolstra
5b6b9d37f0
Add a button to compare a jobset eval against other jobsets
...
So now "?compare=<jobset name>" is no longer a hidden feature!
P.S. Encountered this wonderful TemplateToolkit brainfuck again: if
you want to get the number of rows in (say) project.jobsets, you can't
say "project.jobsets.size". That will *usually* give the right
result, except that if there is only one row in project.jobsets, it
will evaluate to 3. Instead you have to use "project.jobsets_rs.count".
2013-03-05 17:41:50 +01:00
Eelco Dolstra
fe7e0ff1f4
Show inputs and input changes on the jobset eval page
2013-03-05 17:41:50 +01:00
Shea Levy
71d020735b
Remove now-unused SystemTypes table
2013-03-04 17:46:37 -05:00
Shea Levy
d764c135ce
hydra-queue-runner: Use nix.machines instead of the SystemTypes table to determine how many build jobs are allowed per system type.
...
Note that on machines that support multiple system types, EACH system type gets the full number of build slots, which is almost certainly not what we want.
2013-03-04 17:44:19 -05:00
Shea Levy
233e485a55
Remove the BuildMachines and BuildMachinesSystemTypes tables
2013-03-04 16:32:16 -05:00
Shea Levy
232170e301
Remove all entry points to modify machines
2013-03-04 16:05:50 -05:00
Shea Levy
170c7c98d0
machines: Read /etc/nix.machines instead of using the BuildMachines table
2013-03-04 16:03:04 -05:00
Shea Levy
f9426f365b
machine-status: Read /etc/nix.machines instead of using the BuildMachines table
2013-03-04 15:37:20 -05:00
Eelco Dolstra
a77161e40a
Allow users to edit their own settings
...
Also, don't use the flash anymore for going back to the referer.
2013-03-04 15:25:23 +01:00
Eelco Dolstra
f831287d4b
Add font for the captcha
...
Taken from http://www.thibault.org/fonts/staypuft/ .
2013-03-04 12:16:13 +01:00
Eelco Dolstra
e8cbcb50ac
Add user registration
2013-02-27 18:33:47 +01:00
Eelco Dolstra
180068605a
Active build steps: Make the rows clickable
2013-02-26 19:12:10 +01:00
Eelco Dolstra
d1c2771ab8
Ensure that each eval is compared to the previous one from the same jobset
...
Also, reduce the number of database hits.
2013-02-26 19:08:39 +01:00
Eelco Dolstra
1007735364
Render links to changed input builds
...
Also, use get_column('dependency') instead of dependency.id to prevent
an expensive row fetch.
2013-02-26 18:55:59 +01:00
Eelco Dolstra
56a62c3d88
Make jobset deletion consistent with project deletion
2013-02-26 17:36:49 +01:00
Eelco Dolstra
d596b58991
"Evaluate" command: push the jobset to the front of the eval queue
...
Don't let hydra-server call hydra-evaluate. That will probably just
timeout, get killed, etc.
2013-02-26 16:56:19 +01:00
Eelco Dolstra
eea3846754
After editing a jobset, push it to the front of the evaluation queue
2013-02-26 16:10:36 +01:00
Eelco Dolstra
96e24fcf24
Tweaks
2013-02-26 16:04:33 +01:00
Eelco Dolstra
5462be23d5
Don't show duration of unfinished builds
2013-02-26 16:01:00 +01:00
Eelco Dolstra
2a3e832fc4
Add some margin about h3 elements
2013-02-26 16:00:46 +01:00
Eelco Dolstra
4b70be6753
Fix same system inputs
2013-02-26 15:51:56 +01:00
Eelco Dolstra
5a0054f38c
Fix adding jobset inputs
2013-02-26 15:45:34 +01:00
Eelco Dolstra
1e338e7958
api/push: Don't barf on non-existent jobsets
2013-02-26 01:46:19 +01:00
Eelco Dolstra
f501648cd2
Add simpler push support for GitHub
...
You can use the URL
http://<hydra-server>/api/push-github
as GitHub's WebHook URL. Hydra will automatically trigger an
evaluation of all affected jobsets.
2013-02-26 01:14:50 +01:00
Eelco Dolstra
11d87c6f82
Use query_params instead of params
...
Otherwise crazy things happen with POST requests from GitHub.
2013-02-26 00:38:18 +01:00
Eelco Dolstra
5e6896b2d9
Turn prepared statements back on
...
We once turned these off (in commit
abe71a767b
) because they caused the
PostgreSQL query optimizer to use very suboptimal plans. However,
PostgreSQL 9.2 has supposedly fixed this:
http://www.postgresql.org/docs/9.2/static/release-9-2.html
So let's try again.
2013-02-25 21:20:52 +01:00
Eelco Dolstra
f51b93da03
Remove debug line
2013-02-25 21:18:29 +01:00
Eelco Dolstra
42d2015357
Support push notification of repository changes
...
External machines can now notify Hydra that it should check a
repository by sending a GET or PUSH request to /api/push, providing a
list of jobsets to be checked and/or a list of repository URLs. In
the latter case, all jobsets that have any of the specified
repositories as an input will be checked.
For instance, you can configure GitHub or BitBucket to send a request
to the URL
http://hydra.example.org/api/push?repos=git://github.com/NixOS/nixpkgs.git
to trigger evaluation of all jobsets that have
git://github.com/NixOS/nixpkgs.git as an input, or to the URL
http://hydra.example.org/api/push?jobsets=patchelf:trunk,nixpkgs:trunk
to trigger evaluation of just the specified jobsets.
2013-02-25 21:10:32 +01:00
Eelco Dolstra
ddcb9f1d5d
Handle the case where a jobset has never been evaluated
2013-02-25 19:38:11 +00:00
Eelco Dolstra
65db523e46
Fix duplicate function name
2013-02-25 19:01:43 +01:00
Eelco Dolstra
24de044c55
hydra-evaluator: Always pick the jobset that hasn't been evaluated longest
2013-02-25 18:47:54 +01:00
Eelco Dolstra
c30cee55dd
Send ETag and Expires headers
2013-02-25 18:18:05 +01:00
Eelco Dolstra
fb643cd971
Install bootbox
2013-02-23 17:01:43 +01:00
Eelco Dolstra
6658419f69
Disallow build products that are symlinks
...
Otherwise you can do
ln -s /etc/passwd $out/foo
echo "file misc $out/foo" >> $out/nix-support/hydra-build-products
and get Hydra to serve its /etc/passwd file.
2013-02-23 16:28:44 +01:00
Eelco Dolstra
aa7ddeb8e9
Use hashFile instead of nix-hash
...
Calling a shell command is a security hole if $path contains special
characters (e.g. "${foo}"). Observed in
http://hydra.nixos.org/build/4041321 .
2013-02-23 16:09:34 +01:00
Eelco Dolstra
67986b03fa
Fix logo size
...
Also, always include the text "Hydra" in the navbar.
2013-02-23 14:31:30 +00:00
Eelco Dolstra
77fa6d2646
Set mouse pointer to indicate you can click on rows
2013-02-22 18:13:18 +01:00
Eelco Dolstra
c0f9c9b4aa
Make some more tables clickable
2013-02-22 18:11:29 +01:00
Eelco Dolstra
9422c9d2a7
Optimise clickable rows
...
Set a click handler on the table instead of on every row. This should
be faster on large tables. Also, it's easier to use: you just set the
clickable-rows class on the table, and the row-link class on the <a>
element that contains the "main" link of the row.
2013-02-22 18:05:04 +01:00
Eelco Dolstra
bd7be1cb84
Remove obsolete CSS classes
2013-02-22 17:11:10 +01:00
Eelco Dolstra
f5a2859ce2
Show current query in the search box
2013-02-22 16:44:39 +01:00
Eelco Dolstra
08dc6650e1
Search: Limit the number of results
2013-02-22 16:41:42 +01:00
Eelco Dolstra
4d4ea8c754
Search: Mark disabled projects/jobsets/jobs
2013-02-22 16:21:50 +01:00
Eelco Dolstra
f3f6e8a4e3
Search: Don't return hidden projects/jobsets
2013-02-22 15:56:29 +01:00
Eelco Dolstra
07daff32b8
Add a search feature
...
This allows searching for projects, jobsets or jobs by name or
description.
2013-02-22 15:45:10 +01:00
Eelco Dolstra
4343781181
Clear failed builds etc.: Redirect back to the referrer
...
Would be better to do this AJAX style though.
2013-02-22 14:31:43 +01:00
Eelco Dolstra
629fe6f998
Jobset page: Load the jobs and status tabs on demand
...
This makes the jobset page much smaller and faster. (E.g. for
nixpkgs:trunk, this page was ~2.5 MB.)
2013-02-22 14:29:12 +01:00
Eelco Dolstra
f2de374f28
Set a 500 HTTP status on errors
2013-02-22 14:27:38 +01:00
Eelco Dolstra
961feedf4e
Show an error message if tab loading fails
2013-02-22 14:17:14 +01:00
Eelco Dolstra
47d2ee0dab
Generalize lazy tabs
2013-02-22 13:36:15 +01:00
Eelco Dolstra
e2e973578f
Some unnecessary job names
2013-02-22 13:17:07 +01:00
Eelco Dolstra
5d3494011f
Job page: Put latest builds on top
...
Also, rename the "Latest builds" tabs to prevent confusion.
2013-02-22 13:00:40 +01:00
Eelco Dolstra
098368c3e3
Job page: Remove "Latest builds (latest evaluation)"
...
It was kind of confusing since there are two other "latest builds"
tabs/sections.
2013-02-22 12:53:10 +01:00
Eelco Dolstra
6dbb948f1f
Job page: show queued as well as running builds
2013-02-22 12:52:11 +01:00
Eelco Dolstra
1643d90d92
Job page: Remove channel tab
2013-02-22 12:00:32 +01:00
Eelco Dolstra
0f10a37894
Fix indentation
2013-02-22 11:55:06 +01:00
Eelco Dolstra
d08a391b43
Jobset page: Show last evaluation time
2013-02-22 11:37:35 +01:00
Eelco Dolstra
c9ac7746b2
Allow showing all evaluations that contain a given build
2013-02-21 18:49:57 +01:00
Eelco Dolstra
6afe528570
Remove the related builds tab
...
You can now just click on the evaluation link on the first tab to see
all builds in the same jobset. This also makes rendering build pages
quite a bit faster for jobsets like Nixpkgs.
2013-02-21 18:43:16 +01:00
Eelco Dolstra
c6fe9f00bf
Also show number of evaluations of which a build is a part
2013-02-21 18:42:18 +01:00
Eelco Dolstra
edbe531ccc
On build pages, provide a link to the build's first eval
2013-02-21 18:34:34 +01:00
Eelco Dolstra
d8370142c2
Remove garbage from Users.pm
2013-02-21 18:20:55 +01:00
Eelco Dolstra
c22d93438e
Fix adding jobset inputs
2013-02-21 18:10:06 +01:00
Eelco Dolstra
ba68826860
Add a page to show the latest evaluations for the entire server
2013-02-21 17:27:17 +01:00
Eelco Dolstra
767cab6cd2
Correctly redirect to the referring page when logging in
2013-02-21 14:38:18 +01:00
Eelco Dolstra
26fa9ea0ea
Add links to the project/jobset edit pages in the logical place
2013-02-21 14:19:34 +01:00
Eelco Dolstra
fec45d1f07
Remove dead code
2013-02-21 13:45:11 +01:00
Eelco Dolstra
36032e4bed
Make the info tables less compressed
2013-02-21 13:42:44 +01:00
Eelco Dolstra
dd5eb51a84
Put job status on a separate tab
...
Also, show the "last checked time" on the initial tab.
2013-02-21 13:30:14 +01:00
Eelco Dolstra
5099375549
Indicate disabled/hidden projects/jobsets in the overviews
2013-02-21 11:57:48 +01:00
Eelco Dolstra
8db83d2017
Turn hiding/unhiding a jobset into a checkbox
2013-02-21 02:36:51 +01:00
Eelco Dolstra
547e41263d
Split viewing and editing a jobset
2013-02-21 02:33:57 +01:00
Eelco Dolstra
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
Eelco Dolstra
3924780eac
Tweaks
2013-02-21 01:26:29 +01:00
Eelco Dolstra
cea17fd57e
Show releases in a tab on the project page
2013-02-21 01:23:42 +01:00
Eelco Dolstra
d9f6e662d8
Split viewing and editing a project
2013-02-21 01:12:57 +01:00
Eelco Dolstra
03aee6726f
Add a menu item for deleting jobsets
...
Also add bootbox for sexier dialog boxes.
2013-02-21 00:47:21 +01:00
Eelco Dolstra
176b8cab7e
Use a proper spinning wheel icon
2013-02-20 23:57:33 +01:00
Eelco Dolstra
b5273eed7a
Don't generate clashing IDs
2013-02-20 18:26:26 +01:00
Eelco Dolstra
d1e983dfc6
All/recent builds -> Latest builds
2013-02-20 18:23:49 +01:00
Eelco Dolstra
85e3f69cdd
Remove debug statement
2013-02-20 18:22:06 +01:00
Eelco Dolstra
78250581ed
There is only one channel, so drop the "(latest)" suffix
2013-02-20 18:20:16 +01:00
Eelco Dolstra
af18808ca7
Dependency tree: Revert to "repeated" links
2013-02-20 18:15:42 +01:00
Eelco Dolstra
4552117e51
Load the dependency tabs on demand
2013-02-20 18:13:20 +01:00
Eelco Dolstra
36a1015444
Show the runtime/build dependencies in the build page
2013-02-20 17:58:27 +01:00
Eelco Dolstra
11c09e4c5c
Always show the build duration (using the cached build if necessary)
2013-02-20 17:07:20 +01:00
Eelco Dolstra
aebefda6ab
Remove unnecessary Javascript code
...
Tabs are activated automatically.
2013-02-20 17:03:11 +01:00
Eelco Dolstra
b5d59c5c63
Fix indentation of build.tt
2013-02-20 17:02:07 +01:00