Files @ 0ed42ca7ff9e
Branch filter:

Location: kallithea/rhodecode/lib/dbmigrate/migrate/versioning/templates/manage/pylons.py_tmpl

Marcin Kuzminski
Fixed issue with inproper handling of diff parsing that could lead to infinit loops.
This was an edge case when diff contained diff data inside. Regresion test was
added
#!/usr/bin/python
# -*- coding: utf-8 -*-
import sys

from sqlalchemy import engine_from_config
from paste.deploy.loadwsgi import ConfigLoader

from migrate.versioning.shell import main
from {{ locals().pop('repository_name') }}.model import migrations


if '-c' in sys.argv:
    pos = sys.argv.index('-c')
    conf_path = sys.argv[pos + 1]
    del sys.argv[pos:pos + 2]
else:
    conf_path = 'development.ini'

{{py:
_vars = locals().copy()
del _vars['__template_name__']
defaults = ", ".join(["%s='%s'" % var for var in _vars.iteritems()])
}}

conf_dict = ConfigLoader(conf_path).parser._sections['app:main']

# migrate supports passing url as an existing Engine instance (since 0.6.0)
# usage: migrate -c path/to/config.ini COMMANDS
if __name__ == '__main__':
    main(url=engine_from_config(conf_dict), repository=migrations.__path__[0],{{ defaults }})