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
Eelco Dolstra
a7d132ff2a
* Escape +',
=' and `?' in NAR URIS in manifests. Otherwise you get
...
an incorrect URI that gives a 410 error.
2010-02-09 16:11:35 +00:00
Eelco Dolstra
6dd53655a5
* Omitting the template name doesn't work everywhere.
2010-02-09 15:51:33 +00:00
Eelco Dolstra
6c35801173
* Shut up a harmless warning about an uninitialised variable.
2010-02-09 14:10:16 +00:00
Eelco Dolstra
9409d20f39
* Make the "all" page faster by not doing four identical `select
...
count(*) ...' queries. The reason for this is that
my $nrBuilds = scalar($c->stash->{allBuilds}->search({finished => 1}));
doesn't return an integer, but some magical code reference that when
evaluated performs the query and returns an integer. So every use
of $nrBuilds in all.tt caused another query. OTOH using ...->count
causes only one query.
However count(*) still involves a full table scan, so it's still
suboptimal.
2010-02-09 14:08:45 +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
Rob Vermaas
4abdf86bd4
hydra: remove print stmt
2010-02-09 13:45:38 +00:00
Rob Vermaas
090a648020
hydra: minor improvements in hydra ui
2010-02-09 13:43:53 +00:00
Eelco Dolstra
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
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
045d921f7d
* Argh.
2010-02-05 20:24:20 +00:00
Eelco Dolstra
a22946abe7
* When a store path has disappeared for some reason,
...
../nix/<storepath> should return a HTTP error. Otherwise,
mirror-channel.pl will happily mirror the error page.
2010-02-05 20:08:41 +00:00
Eelco Dolstra
9b25d7b299
* A `nix-build' Hydra product must be a directory.
2010-02-05 20:07:49 +00:00
Rob Vermaas
61ad98f982
revert change to dbix::class generated code
2010-02-05 19:41:26 +00:00
Rob Vermaas
9dba2127cb
* hydra: 'new' UI for project/jobset/job/build
2010-02-05 14:48:22 +00:00
Ludovic Courtès
e1f45498c9
Set $NIX_PREFETCH_GIT_DEEP_CLONE.
2010-01-25 13:26:37 +00:00
Rob Vermaas
eec5838a7e
* hydra: add deps list to pages not to be indexed by google etc
2010-01-22 14:44:09 +00:00
Rob Vermaas
b615135825
* hydra: add dependency list with links to logfiles
2010-01-22 13:31:59 +00:00
Rob Vermaas
c791485099
* hydra: show queue optimization
2010-01-22 10:29:54 +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
3b504b2370
* hydra: added variant of build input type, 'build output (same system)' to allow better continous integration in one jobset for multiple system. it makes sure that the system of the build that is passed as input for a job has the same system as the job.
2010-01-19 14:15:31 +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
Rob Vermaas
13c8953918
* removed stats from home page. will make global stats page later on
2010-01-11 10:07:10 +00:00
Rob Vermaas
fe8a376864
show current builds on job page
2010-01-08 11:50:55 +00:00
Rob Vermaas
67f468e0a3
- adapted ui for hydra, more in line with nixos.org website
2010-01-07 14:25:12 +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
Ludovic Courtès
d6416ada4e
Set $NIX_PREFETCH_SVN_LEAVE_DOT_SVN to 1.
2009-12-03 15:03:06 +00:00
Rob Vermaas
e322cb1304
first try for timeline of last 24 hours in hydra
2009-12-01 19:17:38 +00:00
Rob Vermaas
f99b1ee9b1
first try for timeline of last 24 hours in hydra
2009-12-01 19:15:09 +00:00
Rob Vermaas
42c7bb57e8
* hydra: enable pp'ing of logs for bigger files again
2009-11-25 09:39:03 +00:00
Rob Vermaas
94634773b1
support git branches as input in stead of only master branch
2009-11-23 13:38:27 +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
Ludovic Courtès
2b5ef66111
Ask nix-prefetch-git' to leave
.git' in the output.
2009-11-18 16:42:35 +00:00
Ludovic Courtès
cdfc96194c
Use $NIX_PREFETCH_GIT_CHECKOUT_HOOK to produce a `.git-version' file.
2009-11-18 16:25:47 +00:00
Rob Vermaas
f55e0444c9
project with 0 build resulted in error
2009-11-18 12:59:58 +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
2bcedde1c8
* Sort releases.
2009-11-04 17:17:44 +00:00
Eelco Dolstra
3e5e49debd
* Allow a view result to be saved as a release.
2009-10-27 15:31:26 +00:00
Eelco Dolstra
9aa70716ad
2009-10-26 17:03:48 +00:00
Eelco Dolstra
e25f112b82
* Implemented the clone feature.
2009-10-26 17:01:23 +00:00
Eelco Dolstra
e1373fa1c3
* Refactoring: move fetchInput out of hydra_scheduler into a separate
...
module, since Controller/Build.pm needs it to create a new build.
2009-10-26 15:39:14 +00:00
Eelco Dolstra
57cc6ceca6
* UI for cloning builds (not functional yet).
2009-10-26 14:30:42 +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
1038e2ebee
* Allow the description of a release member to be edited, and to
...
delete a release member.
2009-10-26 12:04:12 +00:00
Eelco Dolstra
578e37d55c
* Only non-garbage collected builds can be added to a release.
2009-10-26 10:46:57 +00:00
Eelco Dolstra
f984eed77b
* Align the apply/delete buttons.
2009-10-26 10:35:59 +00:00
Eelco Dolstra
7e81fbd56a
* A quick (non-Web 2.0) interface to manually add builds to a release.
2009-10-23 15:57:18 +00:00
Eelco Dolstra
a515c5fef2
2009-10-23 15:05:16 +00:00
Eelco Dolstra
d1bea30cfc
* Editing releases.
2009-10-23 12:42:50 +00:00
Eelco Dolstra
851a4dff4d
* Creating releases.
2009-10-23 09:58:23 +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
2cf42489e2
* More renaming.
2009-10-20 12:35:01 +00:00
Eelco Dolstra
321027b262
* More release -> view.
2009-10-20 12:26:39 +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
dd12113eb2
* Pass the page number in the URI query string.
2009-10-15 12:59:55 +00:00
Rob Vermaas
d109910453
* paging for releases page
2009-10-15 11:13:36 +00:00
Eelco Dolstra
903ca3b246
* Make download-by-type more deterministic when there are multiple
...
files of the same type.
2009-10-12 17:07:36 +00:00
Eelco Dolstra
6cedee5476
* Allow jobsets to be disabled.
2009-10-08 11:39:16 +00:00
Eelco Dolstra
08f3b7bf2a
* Use isCurrent to determine the inactive jobs.
2009-10-08 08:54:42 +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
48d8871dbc
* Only show status changes from successful to failed and failed to
...
successful (not between different kinds of failure).
2009-10-07 13:59:12 +00:00
Eelco Dolstra
7ae263a23a
* Make the queries more readable.
2009-10-07 13:40:58 +00:00
Eelco Dolstra
05c7989c3e
* Don't show platforms that are not included in the current jobset.
2009-10-02 17:11:28 +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
Eelco Dolstra
2613d8721a
* Don't crawl the channel pages, particularly because the "all"
...
channel can be very large.
2009-09-30 12:26:51 +00:00
Rob Vermaas
d7713b4dba
* Add nix version to footer of hydra pages
2009-09-01 08:50:51 +00:00
Eelco Dolstra
b1289533e6
* More database hackery.
2009-07-09 15:26:55 +00:00
Eelco Dolstra
fa364fa333
* PostgreSQL compatibility.
2009-07-09 15:08:39 +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
3e192cbb90
* Support showing the contents of ISO images (using isoinfo in
...
cdrkit).
2009-07-07 11:37:47 +00:00
Rob Vermaas
1da4f89eae
* added jar to 'contents' list
2009-06-18 13:23:04 +00:00
Rob Vermaas
e457be469c
sequence fix for postgresql
2009-05-11 13:56:52 +00:00
Rob Vermaas
b52796feac
check getHydraPath in stead of Envvar HYDRA_DBI directly
2009-05-09 16:10:50 +00:00
Rob Vermaas
f1611a7edd
check if HYDRA_DBI is defined in stead of empty string comparison
2009-05-09 16:00:08 +00:00
Rob Vermaas
f2a1fb3937
Added sequences for auto increment primary key columns (for PostgreSQL)
2009-05-07 13:30:55 +00:00
Rob Vermaas
a509694220
Hydra now uses an optional HYDRA_DBI environment variable which holds the DBI url. If this variable is not set, sqlite is used like before.
2009-04-29 11:07:46 +00:00
Rob Vermaas
d774cd6f18
changed queries for compatibility with postgresql
2009-04-28 14:21:33 +00:00
Eelco Dolstra
469893cd4a
* The "latest" channel shouldn't contain inactive jobs.
2009-04-25 11:41:46 +00:00
Eelco Dolstra
000fffeb11
2009-04-25 11:27:46 +00:00
Eelco Dolstra
3c47a11bd9
* Don't disable fsync in production.
2009-04-25 07:48:30 +00:00
Eelco Dolstra
97a6011628
* Hack around those SQLite timeouts: just retry the transaction.
2009-04-22 22:43:04 +00:00
Eelco Dolstra
018585dba8
* In the job status page and the channels, pick the build with the
...
highest ID rather than the highest timestamp. Otherwise, if a build
from revision N finishes after a build from revision N + 1, then
the build from revision N will end up in the channel. Thus, the
channel contents will be out of sync.
This is still not quite correct: if a revision *reverts* to an older
build, the channel will still end up out of sync, because Hydra
won't schedule the build again (after all, it has already done it).
A better fix would be to add a separate timestamp denoting when the
build was last "current" (i.e. corresponding to the "head revision"
of its job).
2009-04-22 13:55:20 +00:00
Eelco Dolstra
4d699c97fd
* Don't do pretty printing for large logs, because the XSLT processing
...
is rather slow.
2009-04-16 15:22:14 +00:00
Eelco Dolstra
d6bd9bab5f
* Job status / error pages: show only active jobs.
2009-04-15 14:50:15 +00:00
Eelco Dolstra
2a05522189
* Don't index any of the logs (mostly because xsltproc can be a huge
...
resource hog).
2009-04-14 12:40:00 +00:00
Eelco Dolstra
28fde34b9c
2009-04-09 15:09:00 +00:00
Eelco Dolstra
10ae24fd3c
* Fixed a broken redirect when deleting a release set.
2009-04-09 11:43:49 +00:00
Eelco Dolstra
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
Eelco Dolstra
bf2a5a2629
* Allow omitting the product number if there is only one product in a
...
build. This allows URLs like
http://server/job/patchelf/trunk/deb_debian40i386/latest/download
or
http://server/release/patchelf/unstable/latest/deb_debian40i386/download
2009-04-08 09:37:05 +00:00
Eelco Dolstra
11d8421def
* Support redirecting to some job of a release. For instance, this
...
redirects to the "tarball" build of the latest release of
patchelf/unstable:
http://server/release/patchelf/unstable/latest/tarball
In conjunction with the other redirects this allows linking to the
actual download of the build:
http://server/release/patchelf/unstable/latest/tarball/download-by-type/file/source-dist
2009-04-08 09:03:45 +00:00
Eelco Dolstra
26ff5f1ff0
* Provide some redirects to build products by type so that we can for
...
example link to the latest tarball through a URI like:
http://server/job/patchelf/trunk/tarball/latest/download-by-type/file/source-dist
2009-04-08 08:09:39 +00:00
Eelco Dolstra
f9572e4d1e
* Provide some redirects to the latest successful build for a job (or
...
project, or jobset, or globally, but that's not all that useful).
This is useful if you want to link to the latest build.
2009-04-07 15:49:02 +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
ca11aba074
* Fix an infinite recursion.
2009-04-03 09:13:34 +00:00
Eelco Dolstra
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
Eelco Dolstra
c970fc8335
* Urgh.
2009-03-31 15:59:47 +00:00
Eelco Dolstra
c39a693afd
* Generate SVG instead of PNG, which is much faster and smaller. I
...
tried this before but the text didn't fit in the boxes in Firefox.
The solution is to use Graphviz' svg:cairo backend instead of svg.
svg:cairo doesn't depend on client-side fonts.
2009-03-31 15:59:31 +00:00
Eelco Dolstra
a6c32b33db
2009-03-31 14:55:47 +00:00
Eelco Dolstra
156f40130e
* Generate robots.txt in a more Catalystic way.
2009-03-31 14:14:45 +00:00
Eelco Dolstra
d6e996d01c
* Generate a robots.txt.
2009-03-31 13:48:03 +00:00
Eelco Dolstra
8f6f6ee53e
* Allow authorised users to create projects.
2009-03-24 14:22:59 +00:00
Eelco Dolstra
12c1d90135
* Add some DB indices to make the /releases page much faster.
...
* Reduce the number of DB queries for the /all and /jobstatus pages.
* Show the Hydra version number.
2009-03-23 13:52:24 +00:00
Eelco Dolstra
3d26bb7fd1
* Allow `-' in release set names.
2009-03-20 15:19:17 +00:00
Eelco Dolstra
2755c895ff
* In job inputs of type "build", allow the project and jobset names of
...
the input build to be specified, as well as constraints on the
inputs of the inputs build. For instance, you can require that a
build has input `system = "i686-linux"'.
This is important when one binary build serves as an input to
another binary build. Obviously, we shouldn't pass a build on
i686-linux as an input to another on i686-darwin. Hence the
necessity for constraint.
The constraint are currently quite limited. What you really want to
say is that the "system" input of the other build has to match the
"system" input of this build. But those require a bit more work
since they introduce dependencies between inputs.
2009-03-20 14:50:09 +00:00
Eelco Dolstra
d1affbfe1a
* Oops.
2009-03-20 10:26:50 +00:00
Eelco Dolstra
e076c0cff4
* Catalyst::View::Download::Plain doesn't like empty files.
2009-03-20 10:26:26 +00:00
Eelco Dolstra
163f3de2fa
* Urgh. `-' had special significance in HTML form parameters...
2009-03-19 15:41:33 +00:00
Eelco Dolstra
af1e60a043
* Allow `-' in project/jobset names.
2009-03-19 15:12:50 +00:00
Eelco Dolstra
ba7b94a852
2009-03-18 18:50:42 +00:00
Eelco Dolstra
9e4b029285
* A quick hack to list the contents of various types of files (RPM,
...
Debs, tars, ...).
2009-03-18 17:40:12 +00:00
Eelco Dolstra
a6e84d8431
* Option to show the tail of a log.
2009-03-16 12:16:33 +00:00
Eelco Dolstra
54475b9266
* When marking a build as "keep", register it as a root right away
...
(don't wait for someone to run hydra_update_gcroots), otherwise it
may still be GC'ed.
2009-03-16 10:57:44 +00:00
Eelco Dolstra
d2fc382498
* Register GC roots properly.
2009-03-15 11:56:11 +00:00
Eelco Dolstra
32f0665d2c
* Allow users to change the value of a build's "keep" flag, which
...
prevents the build output from being garbage collected.
2009-03-14 23:56:57 +00:00
Eelco Dolstra
eeddf5752d
* Provide access to the raw, non-pretty-printed logfiles.
...
Unfortunately necessary for large logs.
2009-03-14 23:27:08 +00:00
Eelco Dolstra
4404800ad8
* Release sets: need to include the jobset name to disambiguate
...
between jobs with the same name from different jobsets (e.g. trunk
vs. branch).
2009-03-14 22:34:22 +00:00
Eelco Dolstra
7c7c43335d
* Job status: show the active jobs.
2009-03-13 17:32:08 +00:00
Eelco Dolstra
3c86b3652c
* Refactoring.
2009-03-13 15:41:19 +00:00
Eelco Dolstra
3af294f848
* Make jobsets viewable under
...
http://server/jobset/ <project>/<jobset>.
2009-03-13 15:23:08 +00:00
Eelco Dolstra
ae364b9e5f
* Represent jobs explicitly in the DB.
2009-03-13 14:49:25 +00:00
Eelco Dolstra
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
Eelco Dolstra
a623ad157e
* Add the name of the jobset to ReleaseSetJobs, otherwise we can't
...
distinguish between jobs with the same name in different jobsets
(e.g. "trunk" vs "stdenv-branch" for Nixpkgs).
* Renamed the "attrName" field of Builds to "job".
* Renamed the "id" field of BuildSteps to "build".
2009-03-12 14:18:30 +00:00
Eelco Dolstra
fec08462ee
* In Sqlite "release" is now a keyword, so use "release_" instead.
...
Note: to upgrade old databases, do a dump with an old Sqlite first;
dumping with a new Sqlite will silently discard (!) the contents of
the ReleaseSetJobs table.
2009-03-12 13:42:44 +00:00
Eelco Dolstra
8b752627a2
* Use IO::Handles instead of old school filehandles. This ensures
...
that the pipe gets closed, and the child process dies, if the HTTP
connection is prematurely interrupted.
2009-03-11 14:44:34 +00:00
Eelco Dolstra
6dc9e45fc8
* Doh.
2009-03-09 17:37:57 +00:00
Eelco Dolstra
fca7fb20c4
* Negative caching: don't perform a build if a dependency already
...
failed in a previous build. This is essential for Nixpkgs: we don't
want to keep doing the same failed dependency (say, Glibc) over and
over again for a few hundred jobs.
2009-03-09 17:21:10 +00:00
Eelco Dolstra
8725dc03ec
* Use ->update({...}) properly.
2009-03-09 16:22:41 +00:00
Eelco Dolstra
a74bfdf533
* Inputs of type "build" must now be declared explicitly.
2009-03-09 13:58:43 +00:00
Eelco Dolstra
6cef161793
2009-03-06 14:03:09 +00:00
Eelco Dolstra
36fdd7f37f
* For products that are directories (like manuals), allow a default
...
suffix other than index.html to be declared. E.g. if a build does
echo "doc manual $out manual.html" >> $out/nix-support/hydra-build-products
the default link for the product is
http://localhost:3000/build/417/download/1/manual.html
but other files are also accessible, e.g.
http://localhost:3000/build/417/download/1/style.css
2009-03-06 13:34:53 +00:00
Eelco Dolstra
dca6b943d0
* Allow scheduled builds to be cancelled. They're not removed from
...
the database, just marked as cancelled, because otherwise the
scheduler would just add them again.
2009-03-06 12:49:01 +00:00
Eelco Dolstra
97ed2052ba
* Move everything up one directory.
2009-03-05 13:41:57 +00:00