

from sqlalchemy import Column
from sqlalchemy import MetaData, String, Table


def upgrade(migrate_engine):
    meta = MetaData()
    meta.bind = migrate_engine

    snapshots = Table('snapshots', meta, autoload=True)
    provider_location = Column('provider_location', String(255))
    snapshots.create_column(provider_location)


def downgrade(migrate_engine):
    meta = MetaData()
    meta.bind = migrate_engine

    snapshots = Table('snapshots', meta, autoload=True)
    provider_location = snapshots.columns.provider_location
    provider_location.drop()



from sqlalchemy import Column
from sqlalchemy import MetaData, String, Table


def upgrade(migrate_engine):
    meta = MetaData()
    meta.bind = migrate_engine

    snapshots = Table('snapshots', meta, autoload=True)
    provider_location = Column('provider_location', String(255))
    snapshots.create_column(provider_location)
    snapshots.update().values(provider_location=None).execute()


def downgrade(migrate_engine):
    meta = MetaData()
    meta.bind = migrate_engine

    snapshots = Table('snapshots', meta, autoload=True)
    provider_location = snapshots.columns.provider_location
    snapshots.drop_column(provider_location)

Fix provider_location column add for PSQL
Fix provider_location column add for PSQL

Migration 006 (commit 690cae58e6bbac5758ea2f7b60774c797d28fba5)
didn't work properly for postgres,
this patch corrects the upgrade by ensuring the execute
is performed and the value is initialized to None.

Since we haven't released a milestone etc with this migration in the
code it should be safe to just fix it here and submit.

Change-Id: I10a09aed3470c35c8ebbe22f29aa511592167c35

  
  
  from sqlalchemy import Column
  from sqlalchemy import MetaData, String, Table
  
  
  def upgrade(migrate_engine):
      meta = MetaData()
      meta.bind = migrate_engine
  
      snapshots = Table('snapshots', meta, autoload=True)
      provider_location = Column('provider_location', String(255))
      snapshots.create_column(provider_location)
+     snapshots.update().values(provider_location=None).execute()
  
  
  def downgrade(migrate_engine):
      meta = MetaData()
      meta.bind = migrate_engine
  
      snapshots = Table('snapshots', meta, autoload=True)
      provider_location = snapshots.columns.provider_location
-     provider_location.drop()
+     snapshots.drop_column(provider_location)
  
Fix provider_location column add for PSQL
## Code Before:


from sqlalchemy import Column
from sqlalchemy import MetaData, String, Table


def upgrade(migrate_engine):
    meta = MetaData()
    meta.bind = migrate_engine

    snapshots = Table('snapshots', meta, autoload=True)
    provider_location = Column('provider_location', String(255))
    snapshots.create_column(provider_location)


def downgrade(migrate_engine):
    meta = MetaData()
    meta.bind = migrate_engine

    snapshots = Table('snapshots', meta, autoload=True)
    provider_location = snapshots.columns.provider_location
    provider_location.drop()

## Instruction:
Fix provider_location column add for PSQL
## Code After:


from sqlalchemy import Column
from sqlalchemy import MetaData, String, Table


def upgrade(migrate_engine):
    meta = MetaData()
    meta.bind = migrate_engine

    snapshots = Table('snapshots', meta, autoload=True)
    provider_location = Column('provider_location', String(255))
    snapshots.create_column(provider_location)
    snapshots.update().values(provider_location=None).execute()


def downgrade(migrate_engine):
    meta = MetaData()
    meta.bind = migrate_engine

    snapshots = Table('snapshots', meta, autoload=True)
    provider_location = snapshots.columns.provider_location
    snapshots.drop_column(provider_location)
