--- /dev/null
+from sqlalchemy import *
+from migrate import *
+
+
+def upgrade(migrate_engine):
+ meta = MetaData(bind=migrate_engine)
+ event = Table('event', meta, autoload=True)
+
+ Column('logical_resource_id', String(255)).create(event)
+ Column('physical_resource_id', String(255)).create(event)
+ Column('resource_status_reason', String(255)).create(event)
+ Column('resource_type', String(255)).create(event)
+ Column('resource_properties', PickleType).create(event)
+
+
+def downgrade(migrate_engine):
+ meta = MetaData(bind=migrate_engine)
+ event = Table('event', meta, autoload=True)
+
+ event.c.logical_resource_id.drop()
+ event.c.physical_resource_id.drop()
+ event.c.resource_status_reason.drop()
+ event.c.resource_type.drop()
+ event.c.resource_properties.drop()
backref=backref('events'), cascade="all, delete", passive_deletes=True)
name = Column(String)
+ logical_resource_id = Column(String)
+ physical_resource_id = Column(String)
+ resource_status_reason = Column(String)
+ resource_type = Column(String)
+ resource_properties = Column(PickleType)
+
class Resource(BASE, HeatBase):
def parse_event(e):
s = e.stack
- # TODO Missing LogicalResourceId, PhysicalResourceId, ResourceType,
- # ResourceStatusReason
return {'EventId': e.id,
- 'StackId': e.stack_id,
- 'StackName': s.name,
- 'Timestamp': str(e.created_at),
- 'ResourceStatus': str(e.name)}
+ 'StackId': e.stack_id,
+ 'StackName': s.name,
+ 'Timestamp': str(e.created_at),
+ 'LogicalResourceId': e.logical_resource_id,
+ 'PhysicalResourceId': e.physical_resource_id,
+ 'ResourceType': e.resource_type,
+ 'ResourceStatusReason': e.resource_status_reason,
+ 'ResourceProperties': e.resource_properties,
+ 'ResourceStatus': e.name}
return {'events': [parse_event(e) for e in events]}
'revision_id': 'LOCALREVISION',
'revno': 0}
-GLANCE_VERSION = ['0.0', '1']
-COUNT, REVSISION = GLANCE_VERSION
+GLANCE_VERSION = ['0.0', '2']
+COUNT, REVISION = GLANCE_VERSION
FINAL = False # This becomes true at Release Candidate time