Scheduled tasks manager


This plugin provides an extension point for Trac plugin developers to manage their scheduled tasks. It polls register plugins, and run matched tasks like crontab in Linux/Unix.

Features will be added to this plugin in the next version:

  • support crontab format

See: ZoomQuiet ~ Collection KSPEG Trac hacking

Bugs/Feature Requests

Existing bugs and feature requests for TracSchedulerPlugin are here.

If you have any issues, create a new ticket.


1 / 2


Download the zipped source from here.


You can check out TracSchedulerPlugin from here using Subversion, or browse the source with Trac.


You can install this software as normal Trac plugin:

  1. Uninstall Trac Scheduler if you have installed it before.
  2. Change to the directory containing
  3. If you want to install this plugin globally, install this plugin to the Python path: python install
  4. If you want to install this plugin to one Trac instance only: python bdist_egg and copy the generated egg file to the Trac instance's plugins directory:
    cp dist/*.egg /srv/trac/env/plugins
  5. Configure your trac.ini file:
    tracscheduler.* = enabled
    ; tasks poll interval is 60 sec
    poll_interval = 60
    ; task invoke interval is 1 sec
    worker_interval = 1


This set up will log the latest 2 ticket ids every minute:

from tracscheduler.web_ui import IScheduledTask

class TracSchedulerTest(Component):
    def process_scheduled_task(self, parent):
        sqlString = "SELECT id FROM ticket ORDER BY id DESC LIMIT 2;"
        rows = parent.queryDb(sqlString)

Recent Changes

6398 by richard on 2009-08-20 02:52:39
#5685 remove admin panel
6334 by richard on 2009-08-07 05:08:42
remove license.txt
4607 by richard on 2008-10-28 07:59:08
remove hardcoded poll_interval value


Author: richard
Maintainer: Richard Liao

Last modified 11 months ago Last modified on Nov 18, 2015, 9:55:18 AM