/lib/galaxy/model/migrate/versions/0034_page_user_share_association.py

https://bitbucket.org/cistrome/cistrome-harvard/ · Python · 42 lines · 29 code · 8 blank · 5 comment · 4 complexity · 665d37058221700e475bb7f4871d5823 MD5 · raw file

  1. """
  2. Migration script to create a table for page-user share association.
  3. """
  4. from sqlalchemy import *
  5. from sqlalchemy.orm import *
  6. from migrate import *
  7. from migrate.changeset import *
  8. import logging
  9. log = logging.getLogger( __name__ )
  10. metadata = MetaData()
  11. PageUserShareAssociation_table = Table( "page_user_share_association", metadata,
  12. Column( "id", Integer, primary_key=True ),
  13. Column( "page_id", Integer, ForeignKey( "page.id" ), index=True ),
  14. Column( "user_id", Integer, ForeignKey( "galaxy_user.id" ), index=True )
  15. )
  16. def upgrade(migrate_engine):
  17. metadata.bind = migrate_engine
  18. print __doc__
  19. metadata.reflect()
  20. # Create stored_workflow_tag_association table.
  21. try:
  22. PageUserShareAssociation_table.create()
  23. except Exception, e:
  24. print str(e)
  25. log.debug( "Creating page_user_share_association table failed: %s" % str( e ) )
  26. def downgrade(migrate_engine):
  27. metadata.bind = migrate_engine
  28. metadata.reflect()
  29. # Drop workflow_tag_association table.
  30. try:
  31. PageUserShareAssociation_table.drop()
  32. except Exception, e:
  33. print str(e)
  34. log.debug( "Dropping page_user_share_association table failed: %s" % str( e ) )