Version 6 (modified by k0s, 8 years ago) (diff)


auto upgrade a trac environment via a plugin


The AutoUpgradePlugin, when enabled, will automatically upgrade the environment when it needs an upgrade. Except for checking for the AutoUpgradePlugin being enabled, it is equivalent to a small patch to trac.env:

  • trac/

    594594            env.log.error("Exception caught while checking for upgrade: %s",
    595595                          exception_to_unicode(e, traceback=True))
    596596        if needs_upgrade:
    597             raise TracError(_('The Trac Environment needs to be upgraded.\n\n'
    598                               'Run "trac-admin %(path)s upgrade"',
    599                               path=env_path))
     597            try:
     598                env.upgrade(backup=True)
     599            except TracError, e:
     600                env.upgrade()
    601602    return env

See also: trac:#7082

This plugin is horrible and hacky. I would have done it a better way if I could.

Bugs/Feature Requests

Existing bugs and feature requests for AutoUpgradePlugin are here.

If you have any issues, create a new ticket.


Download the zipped source from [download:autoupgradeplugin here].


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


Enable the plugin. After that, upgrades will be done automatically.

Recent Changes

6714 by k0s on 2009-10-14 22:19:33
noting GPL license
6713 by k0s on 2009-10-14 22:04:16
fake exception to unicode if it doesnt exist
6712 by k0s on 2009-10-14 21:58:37
use better way of determining if the component is enabled


Originally developed at The Open Planning Project

Author: k0s

Attachments (1)

Download all attachments as: .zip