misc/migration/3.14.4_Any.py
author Julien Cristau <julien.cristau@logilab.fr>
Wed, 09 Apr 2014 16:58:58 +0200
changeset 10015 57a16bef82c0
parent 9463 d62e13eba033
child 10200 cceb2c7c02f4
permissions -rw-r--r--
[migration] make sure the repo knows about all constraint types Adding new constraint types is cumbersome. It's easy to forget to do it in a migration script. So sync the constraint types at the beginning of each migration. Closes #3724892

from yams import schema2sql as y2sql

dbhelper = repo.system_source.dbhelper
rdefdef = schema['CWSource'].rdef('name')
attrtype = y2sql.type_from_constraints(dbhelper, rdefdef.object, rdefdef.constraints).split()[0]

cursor = session.cnxset.cu
sql('UPDATE entities SET asource = source WHERE asource is NULL')
dbhelper.change_col_type(cursor, 'entities', 'asource', attrtype, False)
dbhelper.change_col_type(cursor, 'entities', 'source', attrtype, False)