You can now list and cancel jobs:
$ whenjobs --jobs 61 job$1 running in: /tmp/whenjobs20d88a48f2c4eb0062e1b44ded6d0ae7 started at: 2012-02-23 22:43:20 62 job$2 running in: /tmp/whenjobse9e6b93c3ced1967cbf8c5865d6a1ccb started at: 2012-02-23 22:43:20 $ whenjobs --cancel 62
You can manually start jobs. Gerd’s ocamlnet makes it almost trivial to add new RPCs between the tool and the daemon, so adding functions like this is simple.
You can put arbitrary OCaml actions into the job script too, so you can run code when a job is cleaned up, and you will (soon) be able to create jobs algorithmically. For example, the standard mailto
cleanup lets you send mail containing the output of the job when it finishes.
let from = "me@example.com" let to_addr = "you@example.com" let prefix = "hostname " let script = << # shell script here >> job (prefix ^ "poll") cleanup (Whentools.mailto ~from to_addr) every minute : script