/lib/galaxy/model/migrate/versions/0058_history_import_export.py

https://bitbucket.org/cistrome/cistrome-harvard/ · Python · 49 lines · 34 code · 9 blank · 6 comment · 4 complexity · fa374d052a79f2b61e748959e3db39b7 MD5 · raw file

  1. """
  2. Migration script to create table for exporting histories to archives.
  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. # Table to add.
  12. JobExportHistoryArchive_table = Table( "job_export_history_archive", metadata,
  13. Column( "id", Integer, primary_key=True ),
  14. Column( "job_id", Integer, ForeignKey( "job.id" ), index=True ),
  15. Column( "history_id", Integer, ForeignKey( "history.id" ), index=True ),
  16. Column( "dataset_id", Integer, ForeignKey( "dataset.id" ), index=True ),
  17. Column( "compressed", Boolean, index=True, default=False ),
  18. Column( "history_attrs_filename", TEXT ),
  19. Column( "datasets_attrs_filename", TEXT ),
  20. Column( "jobs_attrs_filename", TEXT )
  21. )
  22. def upgrade(migrate_engine):
  23. print __doc__
  24. metadata.bind = migrate_engine
  25. metadata.reflect()
  26. # Create job_export_history_archive table.
  27. try:
  28. JobExportHistoryArchive_table.create()
  29. except Exception, e:
  30. print str(e)
  31. log.debug( "Creating job_export_history_archive table failed: %s" % str( e ) )
  32. def downgrade(migrate_engine):
  33. metadata.bind = migrate_engine
  34. metadata.reflect()
  35. # Drop job_export_history_archive table.
  36. try:
  37. JobExportHistoryArchive_table.drop()
  38. except Exception, e:
  39. print str(e)
  40. log.debug( "Dropping job_export_history_archive table failed: %s" % str( e ) )