1 | """ |
---|
2 | Migration script to create table for exporting histories to archives. |
---|
3 | """ |
---|
4 | |
---|
5 | from sqlalchemy import * |
---|
6 | from sqlalchemy.orm import * |
---|
7 | from migrate import * |
---|
8 | from migrate.changeset import * |
---|
9 | |
---|
10 | import logging |
---|
11 | log = logging.getLogger( __name__ ) |
---|
12 | |
---|
13 | metadata = MetaData( migrate_engine ) |
---|
14 | db_session = scoped_session( sessionmaker( bind=migrate_engine, autoflush=False, autocommit=True ) ) |
---|
15 | |
---|
16 | # Table to add. |
---|
17 | |
---|
18 | JobExportHistoryArchive_table = Table( "job_export_history_archive", metadata, |
---|
19 | Column( "id", Integer, primary_key=True ), |
---|
20 | Column( "job_id", Integer, ForeignKey( "job.id" ), index=True ), |
---|
21 | Column( "history_id", Integer, ForeignKey( "history.id" ), index=True ), |
---|
22 | Column( "dataset_id", Integer, ForeignKey( "dataset.id" ), index=True ), |
---|
23 | Column( "compressed", Boolean, index=True, default=False ), |
---|
24 | Column( "history_attrs_filename", TEXT ), |
---|
25 | Column( "datasets_attrs_filename", TEXT ), |
---|
26 | Column( "jobs_attrs_filename", TEXT ) |
---|
27 | ) |
---|
28 | |
---|
29 | def upgrade(): |
---|
30 | print __doc__ |
---|
31 | metadata.reflect() |
---|
32 | |
---|
33 | # Create job_export_history_archive table. |
---|
34 | try: |
---|
35 | JobExportHistoryArchive_table.create() |
---|
36 | except Exception, e: |
---|
37 | print str(e) |
---|
38 | log.debug( "Creating job_export_history_archive table failed: %s" % str( e ) ) |
---|
39 | |
---|
40 | def downgrade(): |
---|
41 | metadata.reflect() |
---|
42 | |
---|
43 | # Drop job_export_history_archive table. |
---|
44 | try: |
---|
45 | JobExportHistoryArchive_table.drop() |
---|
46 | except Exception, e: |
---|
47 | print str(e) |
---|
48 | log.debug( "Dropping job_export_history_archive table failed: %s" % str( e ) ) |
---|