3 апр. 2011 г.

Ревизия SVN проекта в django

Несколько месяцев назад по блогам джангистов прокатилась волна статей про автоматическое развертывание дев и продакшн версий проектов. Один из вариантов, на изучение которого я тратил свое время - subversion hooks - всем хорош, но иногда вытягивание зависимостей и обновление модулей занимает столько времени, что становится не понятно на какую версию страницы дев-сервера ты собственно сейчас смотришь.
Как вариант можно использовать встроенную в Django "утилитку" для получения svn ревизии в качестве context processor'а. Код будет выглядеть так:

from django.utils.version import get_svn_revision
from django.conf import settings


def revision(request):
    path = getattr(settings, 'PROJECT_ROOT', '.')
    return {'svn_revision': get_svn_revision(path)}

Комментариев нет: