<s> """<STR_LIT>""" <EOL> revision = '<STR_LIT>' <EOL> down_revision = None <EOL> import logging <EOL> from alembic import op <EOL> import sqlalchemy as sa <EOL> from taskflow . persistence . backends . sqlalchemy import tables <EOL> LOG = logging . getLogger ( __name__ ) <EOL> def _get_indexes ( ) : <EOL> indexes = [ <EOL> { <EOL> '<STR_LIT:name>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : [ '<STR_LIT>' ] , <EOL> } , <EOL> { <EOL> '<STR_LIT:name>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : [ '<STR_LIT>' ] , <EOL> } , <EOL> { <EOL> '<STR_LIT:name>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : [ '<STR_LIT>' ] , <EOL> } , <EOL> ] <EOL> return indexes <EOL> def _get_foreign_keys ( ) : <EOL> f_keys = [ <EOL> { <EOL> '<STR_LIT:name>' : '<STR_LIT>' , <EOL> '<STR_LIT:source>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : [ '<STR_LIT>' ] , <EOL> '<STR_LIT>' : [ '<STR_LIT>' ] , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> } , <EOL> { <EOL> '<STR_LIT:name>' : '<STR_LIT>' , <EOL> '<STR_LIT:source>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> '<STR_LIT>' : [ '<STR_LIT>' ] , <EOL> '<STR_LIT>' : [ '<STR_LIT>' ] , <EOL> '<STR_LIT>' : '<STR_LIT>' , <EOL> } , <EOL> ] <EOL> return f_keys <EOL> def upgrade ( ) : <EOL> op . create_table ( '<STR_LIT>' , <EOL> sa . Column ( '<STR_LIT>' , sa . DateTime ) , <EOL> sa . Column ( '<STR_LIT>' , sa . DateTime ) , <EOL> sa . Column ( '<STR_LIT>' , sa . Text ( ) , nullable = True ) , <EOL> sa . Column ( '<STR_LIT:name>' , sa . String ( length = tables . NAME_LENGTH ) , <EOL> nullable = True ) , <EOL> sa . Column ( '<STR_LIT>' , sa . String ( length = tables . UUID_LENGTH ) , <EOL> primary_key = True , nullable = False ) , <EOL> mysql_engine = '<STR_LIT>' , <EOL> mysql_charset = '<STR_LIT:utf8>' ) <EOL> op . create_table ( '<STR_LIT>' , <EOL> sa . Column ( '<STR_LIT>' , sa . DateTime ) , <EOL> sa . Column ( '<STR_LIT>' , sa . DateTime ) , <EOL> sa . Column ( '<STR_LIT>' , <EOL> sa . String ( length = tables . UUID_LENGTH ) ) , <EOL> sa . Column ( '<STR_LIT>' , sa . Text ( ) , nullable = True ) , <EOL> sa . Column ( '<STR_LIT:state>' , sa . String ( length = tables . STATE_LENGTH ) , <EOL> nullable = True ) , <EOL> sa . Column ( '<STR_LIT:name>' , sa . String ( length = tables . NAME_LENGTH ) , <EOL> nullable = True ) , <EOL> sa . Column ( '<STR_LIT>' , sa . String ( length = tables . UUID_LENGTH ) , <EOL> primary_key = True , nullable = False ) , <EOL> mysql_engine = '<STR_LIT>' , <EOL> mysql_charset = '<STR_LIT:utf8>' ) <EOL> op . create_table ( '<STR_LIT>' , <EOL> sa . Column ( '<STR_LIT>' , sa . DateTime ) , <EOL> sa . Column ( '<STR_LIT>' , sa . DateTime ) , <EOL> sa . Column ( '<STR_LIT>' , <EOL> sa . String ( length = tables . UUID_LENGTH ) ) , <EOL> sa . Column ( '<STR_LIT>' , sa . Text ( ) , nullable = True ) , <EOL> sa . Column ( '<STR_LIT:name>' , sa . String ( length = tables . NAME_LENGTH ) , <EOL> nullable = True ) , <EOL> sa . Column ( '<STR_LIT>' , sa . Text ( ) , nullable = True ) , <EOL> sa . Column ( '<STR_LIT:version>' , <EOL> sa . String ( length = tables . VERSION_LENGTH ) , <EOL> nullable = True ) , <EOL> sa . Column ( '<STR_LIT>' , sa . Text ( ) , nullable = True ) , <EOL> sa . Column ( '<STR_LIT>' , sa . Text ( ) , nullable = True ) , <EOL> sa . Column ( '<STR_LIT:state>' , sa . String ( length = tables . STATE_LENGTH ) , <EOL> nullable = True ) , <EOL> sa . Column ( '<STR_LIT>' , sa . String ( length = tables . UUID_LENGTH ) , <EOL> primary_key = True , nullable = False ) , <EOL> mysql_engine = '<STR_LIT>' , <EOL> mysql_charset = '<STR_LIT:utf8>' ) <EOL> try : <EOL> for fkey_descriptor in _get_foreign_keys ( ) : <EOL> op . create_foreign_key ( ** fkey_descriptor ) <EOL> except NotImplementedError as e : <EOL> LOG . warn ( "<STR_LIT>" , e ) <EOL> try : <EOL> for index_descriptor in _get_indexes ( ) : <EOL> op . create_index ( ** index_descriptor ) <EOL> except NotImplementedError as e : <EOL> LOG . warn ( "<STR_LIT>" , e ) <EOL> def downgrade ( ) : <EOL> for table in [ '<STR_LIT>' , '<STR_LIT>' , '<STR_LIT>' ] : <EOL> op . drop_table ( table ) </s>
