Commit Graph

496 Commits

Author SHA1 Message Date
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
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
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
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
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
c9a0e12804 Hide project/jobset in constituent list 2013-08-15 03:35:18 +02:00
72a0fa6ec5 Sort constituents by job name 2013-08-15 03:28:21 +02:00
06c74085b5 Make "Add to release" a modal dialog 2013-08-15 03:07:20 +02:00
1776d9118f Rename aggregate members to constituents 2013-08-15 02:33:10 +02:00
e4141afcc9 On the build page, show how many aggregate constituents failed
(Also, renamed aggregate "member" to "constituent", since "member" is
rather vague.)
2013-08-15 02:17:06 +02:00
81322de94e Show aggregate members 2013-08-15 00:30:19 +02:00
fcdca0d4de Fix some XML wellformedness issues 2013-08-13 00:41:37 +02:00
bef263c930 Add a ‘latest-finished’ action
It redirects to the latest successful build from a finished
evaluation.  This is mostly useful for the Nixpkgs/NixOS mirroring
script, which need the latest finished evaluation in which some
aggregate job (such as ‘tested’ in NixOS) succeeded.
2013-08-12 22:17:04 +02:00
db3647aa15 Set the character set
Cherry-picked from the persona branch.
2013-07-12 15:04:13 +02:00
ccd2292458 Link to both the Persona and legacy sign in 2013-07-09 14:39:28 +02:00
1db9381473 Fix legacy login 2013-07-09 13:55:44 +02:00
9aa44fa944 Some escaping 2013-07-09 13:55:29 +02:00
895f21cfad Show a user's roles in the preferences page 2013-07-09 13:07:04 +02:00
476203d0bb Prevent Persona users from setting a password 2013-07-09 13:01:56 +02:00
5fecf8e385 Show sign in as success 2013-07-09 12:07:18 +02:00
08f3bb78c4 Use the alert class for flash messages 2013-07-09 12:05:25 +02:00
12ca755bea Don't redirect to /login if authentication is required
We can just serve the login page in place.
2013-07-09 12:02:15 +02:00
13f0b54c49 Set the character set 2013-07-09 00:23:48 +02:00
c08fc6ce1e Add basic Persona support
This allows users to sign in to Hydra using Mozilla Persona accounts.
When a user first sign in, a row in the Users table for the given
Persona identity (an email address) is created automatically.

To do: figure out how to deal with legacy accounts.
2013-07-08 23:54:40 +02: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
c65f40e146 Add common.js to the tarball 2013-06-25 12:48:25 +02:00
611f402a70 Move common Javascript code into a separate file 2013-06-25 01:16:28 +02:00
a5436be2ce After editing a project/jobset, redirect back to the config tab 2013-06-25 01:00:59 +02:00
68a03bc674 When a tab is selected, change the fragment id
And when a page is visited, active the tab identified by the fragment
id.  This allows linking to a specific tab.

Fixes #93.
2013-06-25 00:55:14 +02:00
2974fea1a7 Use https://ajax.googleapis.com if we're on https 2013-06-07 15:45:37 +02:00
8e246a835a Don't do camel case in filenames 2013-06-02 23:30:46 +02:00
591acda6f9 reproduce.tt: Save the revCount when reproducing more than once
Signed-off-by: Shea Levy <shea@shealevy.com>
2013-05-30 14:06:32 -04:00
8e716ff062 reproduce.tt: Create the checkout dir before an hg clone
For some reason, hg clone from a local (path-based) repo will fail if
the parent directory of the destination directory doesn't exist (though
it succeeds when cloning from an http repo).

Signed-off-by: Shea Levy <shea@shealevy.com>
2013-05-30 13:31:53 -04:00
1277a8fc1c Don't break certain table columns
For instance, if the "timestamp" column becomes too small, then every
timestamp is spread out across two lines, doubling the size of the
table.
2013-05-29 14:58:44 +02:00
47c49cf3d4 Show links on products of type "doc" 2013-05-29 11:39:23 +02:00
1f1615e80b Support revision control systems via plugins 2013-05-25 15:36:58 -04:00