Commit graph

  • f2a42c0d81 Eelco Dolstra 2009-04-03 17:51:57 +0000
  • 61b6fed15d Eelco Dolstra 2009-04-03 16:25:07 +0000
  • 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. Eelco Dolstra 2009-04-03 15:37:21 +0000
  • ca11aba074 * Fix an infinite recursion. Eelco Dolstra 2009-04-03 09:13:34 +0000
  • 0ae979f652 Eelco Dolstra 2009-04-03 09:12:36 +0000
  • 550488e010 * Add openssh to $PATH to support svn+ssh checkouts. Eelco Dolstra 2009-04-03 08:39:10 +0000
  • 09944ed3a2 * Forgot to commit. Eelco Dolstra 2009-04-03 08:38:13 +0000
  • 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. Eelco Dolstra 2009-04-02 16:15:57 +0000
  • db4ce0df06 Eelco Dolstra 2009-03-31 16:09:04 +0000
  • c970fc8335 * Urgh. Eelco Dolstra 2009-03-31 15:59:47 +0000
  • 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. Eelco Dolstra 2009-03-31 15:59:31 +0000
  • a6c32b33db Eelco Dolstra 2009-03-31 14:55:47 +0000
  • 156f40130e * Generate robots.txt in a more Catalystic way. Eelco Dolstra 2009-03-31 14:14:45 +0000
  • d6e996d01c * Generate a robots.txt. Eelco Dolstra 2009-03-31 13:48:03 +0000
  • 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. Eelco Dolstra 2009-03-26 15:32:19 +0000
  • f0f9f12e42 * Use Nix's negative caching. Eelco Dolstra 2009-03-26 12:53:39 +0000
  • 8f6f6ee53e * Allow authorised users to create projects. Eelco Dolstra 2009-03-24 14:22:59 +0000
  • c75977ce5a * Record the input containing the Nix expression (release.nix) in the build inputs. Otherwise we can't (for example) reproduce a build later. Eelco Dolstra 2009-03-23 21:42:59 +0000
  • dab25b30f0 * Fix the queue page. Eelco Dolstra 2009-03-23 15:19:34 +0000
  • 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. Eelco Dolstra 2009-03-23 13:52:24 +0000
  • 0da0384753 * Top-level: don't exit on errors. Eelco Dolstra 2009-03-23 01:13:37 +0000
  • d9424b6364 * Show the input bindings in evaluation error messages. Eelco Dolstra 2009-03-20 17:06:50 +0000
  • 3d26bb7fd1 * Allow `-' in release set names. Eelco Dolstra 2009-03-20 15:19:17 +0000
  • 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"'. Eelco Dolstra 2009-03-20 14:50:09 +0000
  • d1affbfe1a * Oops. Eelco Dolstra 2009-03-20 10:26:50 +0000
  • e076c0cff4 * Catalyst::View::Download::Plain doesn't like empty files. Eelco Dolstra 2009-03-20 10:26:26 +0000
  • d13af4f392 * Doh. Eelco Dolstra 2009-03-20 10:19:46 +0000
  • 163f3de2fa * Urgh. `-' had special significance in HTML form parameters... Eelco Dolstra 2009-03-19 15:41:33 +0000
  • af1e60a043 * Allow `-' in project/jobset names. Eelco Dolstra 2009-03-19 15:12:50 +0000
  • ba7b94a852 Eelco Dolstra 2009-03-18 18:50:42 +0000
  • 9e4b029285 * A quick hack to list the contents of various types of files (RPM, Debs, tars, ...). Eelco Dolstra 2009-03-18 17:40:12 +0000
  • b39e2c5e32 * Doh. Eelco Dolstra 2009-03-18 17:13:13 +0000
  • 702da969a6 * Ordering by timestamp isn't a good idea here since a newer revision might finish building before an older revision, and therefore have a lower timestamp. Eelco Dolstra 2009-03-18 16:46:01 +0000
  • a1848b08f2 Eelco Dolstra 2009-03-16 17:51:42 +0000
  • bf1480cc25 * Doh. Eelco Dolstra 2009-03-16 17:46:46 +0000
  • 8c91e69779 Eelco Dolstra 2009-03-16 17:20:45 +0000
  • 5853a26b13 * Don't discard old build steps when restarting a build. Eelco Dolstra 2009-03-16 16:56:47 +0000
  • a6e84d8431 * Option to show the tail of a log. Eelco Dolstra 2009-03-16 12:16:33 +0000
  • 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. Eelco Dolstra 2009-03-16 10:57:44 +0000
  • d2fc382498 * Register GC roots properly. Eelco Dolstra 2009-03-15 11:56:11 +0000
  • 32f0665d2c * Allow users to change the value of a build's "keep" flag, which prevents the build output from being garbage collected. Eelco Dolstra 2009-03-14 23:56:57 +0000
  • eeddf5752d * Provide access to the raw, non-pretty-printed logfiles. Unfortunately necessary for large logs. Eelco Dolstra 2009-03-14 23:27:08 +0000
  • 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). Eelco Dolstra 2009-03-14 22:34:22 +0000
  • 7c7c43335d * Job status: show the active jobs. Eelco Dolstra 2009-03-13 17:32:08 +0000
  • 2ece4d9f15 * Render durations nicely. Eelco Dolstra 2009-03-13 16:04:49 +0000
  • 107a0faa51 * PROCESS -> INCLUDE in most cases. INCLUDE does proper scoping of variables. Eelco Dolstra 2009-03-13 15:57:43 +0000
  • 3c86b3652c * Refactoring. Eelco Dolstra 2009-03-13 15:41:19 +0000
  • 3af294f848 * Make jobsets viewable under http://server/jobset/<project>/<jobset>. Eelco Dolstra 2009-03-13 15:23:08 +0000
  • ae364b9e5f * Represent jobs explicitly in the DB. Eelco Dolstra 2009-03-13 14:49:25 +0000
  • a39a28dffb Eelco Dolstra 2009-03-13 12:45:45 +0000
  • 81bdc4cfa2 Eelco Dolstra 2009-03-13 12:29:47 +0000
  • f2f586d842 * Disambiguate jobs by jobset name. I.e. jobs with the same name in different jobsets are not considered the same job. Eelco Dolstra 2009-03-12 23:46:17 +0000
  • 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". Eelco Dolstra 2009-03-12 14:18:30 +0000
  • 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. Eelco Dolstra 2009-03-12 13:42:44 +0000
  • 70276f59ea * Remove redundant -fork. Eelco Dolstra 2009-03-11 15:52:39 +0000
  • f945fbb5bd * Use Catalyst's HTTP::Prefork engine by default, with some limits to prevent the server from being overloaded. Eelco Dolstra 2009-03-11 15:48:06 +0000
  • 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. Eelco Dolstra 2009-03-11 14:44:34 +0000
  • 7ea69e7a9d * Disregard failing substituters. Eelco Dolstra 2009-03-10 11:49:18 +0000
  • 18f25a1226 * Doh. Eelco Dolstra 2009-03-10 08:52:42 +0000
  • 54a122b49c * DB integrity: when deleting a build, get rid of its build steps. Eelco Dolstra 2009-03-10 08:35:39 +0000
  • 6dc9e45fc8 * Doh. Eelco Dolstra 2009-03-09 17:37:57 +0000
  • 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. Eelco Dolstra 2009-03-09 17:21:10 +0000
  • 8725dc03ec * Use ->update({...}) properly. Eelco Dolstra 2009-03-09 16:22:41 +0000
  • 717625a5b9 Eelco Dolstra 2009-03-09 15:53:03 +0000
  • e87896e4b4 * eval-jobs -> hydra_eval_jobs. Eelco Dolstra 2009-03-09 15:16:11 +0000
  • a74bfdf533 * Inputs of type "build" must now be declared explicitly. Eelco Dolstra 2009-03-09 13:58:43 +0000
  • 8c58448afc * hydra_scheduler: use eval-jobs. Eelco Dolstra 2009-03-09 13:04:46 +0000
  • 875f57857e * Require every argument to be specified. Eelco Dolstra 2009-03-09 10:13:45 +0000
  • 322d907629 Eelco Dolstra 2009-03-09 10:01:04 +0000
  • 5c45661141 * Report evaluation errors per job, and don't bail out if a job fails to evaluate. Eelco Dolstra 2009-03-07 14:06:10 +0000
  • ba002c6ac5 * eval-jobs now efficiently evaluates all Hydra jobs from a release.nix expression, accepting multiple values for function arguments. This is much faster than calling nix-instantiate / nix-env a zillion times (which is particularly important for Nixpkgs). Eelco Dolstra 2009-03-06 16:55:19 +0000
  • 0788ec24e6 * Export all relevant info about the derivation. Eelco Dolstra 2009-03-06 15:18:59 +0000
  • f9d4957f2f * Export all relevant info about the derivation. Eelco Dolstra 2009-03-06 15:16:29 +0000
  • 55b8190fde Eelco Dolstra 2009-03-06 14:16:42 +0000
  • 6cef161793 Eelco Dolstra 2009-03-06 14:03:09 +0000
  • 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 Eelco Dolstra 2009-03-06 13:34:53 +0000
  • 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. Eelco Dolstra 2009-03-06 12:49:01 +0000
  • 11360c7aa8 Eelco Dolstra 2009-03-06 10:35:27 +0000
  • fa9df4e2d4 Eelco Dolstra 2009-03-06 10:23:41 +0000
  • c724439b20 Eelco Dolstra 2009-03-05 15:41:43 +0000
  • c3cc2262b7 * Start of a helper tool to evaluate job expressions efficiently. Eelco Dolstra 2009-03-05 14:59:43 +0000
  • 8da2a47568 Eelco Dolstra 2009-03-05 13:42:13 +0000
  • 97ed2052ba * Move everything up one directory. Eelco Dolstra 2009-03-05 13:41:57 +0000
  • 6de278754a Eelco Dolstra 2009-03-05 13:35:46 +0000
  • f6fd756134 Eelco Dolstra 2009-03-05 12:32:14 +0000
  • 7f4762db82 Eelco Dolstra 2009-03-04 17:25:52 +0000
  • 0bd7abf10b * Controller for jobs which inherits all actions in ListBuilds. So for instance we get channels specific for each job. Eelco Dolstra 2009-03-04 17:24:08 +0000
  • 5162f05e2c * At top-level and for each project, provide two channels: "latest" (containing the latest successful build of each job) and "all" (containing all successful builds ever). Eelco Dolstra 2009-03-04 16:36:23 +0000
  • 4089859d33 Eelco Dolstra 2009-03-04 15:47:42 +0000
  • 07e1d73602 Eelco Dolstra 2009-03-04 15:41:37 +0000
  • b7892f598d Eelco Dolstra 2009-03-04 15:26:32 +0000
  • 7a8903ea54 * XHTML validity. Eelco Dolstra 2009-03-04 15:25:35 +0000
  • 56beebc9c6 * Channels: provide an index page that lists all the packages in the channel. * Store the meta.homepage attribute in the Builds table. Eelco Dolstra 2009-03-04 14:49:21 +0000
  • dad2f31099 * Provide a channel for each project containing all the latest succesful builds for each job in the project (under http://server/project/<name>/channel/latest). Eelco Dolstra 2009-03-04 13:08:09 +0000
  • af936d7c91 Eelco Dolstra 2009-03-04 12:23:54 +0000
  • 462a929ea1 Eelco Dolstra 2009-03-04 11:03:43 +0000
  • 0a40286202 * Put the project-related actions in a separate controller. Put the actions for viewing the job status and all builds in a separate base class that's inherited both by Root.pm and Project.pm so that we get URIs like /jobstatus and /project/<name>/jobstatus for free. Eelco Dolstra 2009-03-04 10:59:14 +0000
  • 2f1bcbb1e5 * Urgh. Need some regression tests... Eelco Dolstra 2009-03-03 23:04:11 +0000
  • 5c5cf00610 Eelco Dolstra 2009-03-03 22:35:11 +0000
  • ac8af00e84 Eelco Dolstra 2009-03-03 22:20:24 +0000