|Version 3 (modified by richard, 6 years ago) (diff)|
Scheduled tasks manager
Table of Contents
SEE:ZoomQuiet ~ Collection KSPEG Trac hacking
This plugin provides an extension point for trac plugin developers to manager their scheduled taskes. It polls register plugins, and run matched tasks like crontab in linux/unix.
Features will be added to this plugin in next version:
- support crontab format
If you have any issues, create a new ticket.
Download the zipped source from here.
You can install this software as normal Trac plugin.
- Uninstall Trac Scheduler if you have installed before.
- Change to the directory containning setup.py.
- If you want to install this plugin globally, that will install this plugin to the python path:
- python setup.py install
- If you want to install this plugin to trac instance only:
- python setup.py bdist_egg
- copy the generated egg file to the trac instance's plugin directory
cp dist/*.egg /srv/trac/env/plugins
- Config trac.ini:
[components] tracscheduler.* = enabled [tracscheduler] ; tasks poll interval is 60 sec poll_interval = 60 ; task invoke interval is 1 sec worker_interval = 1
This following plugin will logging the latest 2 ticket ids every 1 minute.
from tracscheduler.web_ui import IScheduledTask class TracSchedulerTest(Component): implements(IScheduledTask) def process_scheduled_task(self, parent): self.log.debug("TracSchedulerTest") sqlString = "SELECT id FROM ticket ORDER BY id DESC LIMIT 2;" rows = parent.queryDb(sqlString) self.log.debug(rows)