A job scheduler and monitoring plugin for Trac

Notice: This plugin is in alpha stage: this module is under development and suggestions are welcome. Please add your feature requests tickets against the JobControlPlugin component.


The plugin lets you set up and manage and monitor scheduled jobs. It adds the following new Admin screens to Trac:

  • Job Admin - List and lets you add, edit and delete jobs.
  • Job Status Map - Where you can see the status of the last run of all the jobs. From here you can drill down to the run view of a particular job.
  • Run View - Lists all job runs, showing you the runs status form where you can drill down to the runs log.
  • Log Admin - Clean-up logs and other tasks.

Each job run environment and schedule is specified by the version of a single configuration file - a Python script - in the SCM. Therefore any changes are tracked across versions. This script is used to create the sandbox and invoke the job.

The Job Admin Screen:

Jobcontrol's job Admin screen

The Job Edit Screen:

Bugs/Feature Requests

Existing bugs and feature requests for JobControlPlugin are here.

If you have any issues, create a new ticket.


Not yet available.


You will be able to check out alpha versions of this JobControlPlugin for Trac 0.10 from here using Subversion, or browse the source with Trac.

This plugin is not yet available for Trac version 0.12 and above.


Here is an example of a job configuration:

from jobcontrolplugin import JobSpec, today

from logging import DEBUG

class MyJob(JobSpec):
    Run this script with logging in debug mode.
    Run every 45 minutes.
    Run /usr/local/etc/myscript at yesterday's date as a command argument.
    grouping="/All Jobs/Tests"
    cron="* * * 45";
    cmd ="/usr/local/etc/myscript --date=%s"; % today(-1)
    run= "runA, runB";

    def setUp(self):
    def tearDown(self):
    def runA(self): pass

    def runB(self): pass

You would check it in and make the Job record point to it:

Job IdLast RunStatusNext RunConfiguration
My Job 12:45 Today 13:00 Today OK

Recent Changes

15873 by rjollos on 2016-09-07 23:52:33
Remove empty directory
7879 by thanos on 2010-04-22 17:00:51
tried to add a data table
7870 by thanos on 2010-04-19 18:32:50


Author: Thanos Vassilakis
Maintainer: thanos vassilakis

Last modified 7 weeks ago Last modified on Sep 7, 2016, 10:38:09 PM

Attachments (2)

Download all attachments as: .zip