]> review.fuel-infra Code Review - openstack-build/heat-build.git/commitdiff
Make resource ids UUIDs in the database
authorZane Bitter <zbitter@redhat.com>
Thu, 13 Jun 2013 18:03:26 +0000 (20:03 +0200)
committerZane Bitter <zbitter@redhat.com>
Thu, 13 Jun 2013 18:03:26 +0000 (20:03 +0200)
Change-Id: I3068e9e818f19994cc3aaecc34845d0d6aac0dfb

heat/db/sqlalchemy/migrate_repo/versions/018_resource_id_uuid.py [new file with mode: 0644]
heat/db/sqlalchemy/models.py

diff --git a/heat/db/sqlalchemy/migrate_repo/versions/018_resource_id_uuid.py b/heat/db/sqlalchemy/migrate_repo/versions/018_resource_id_uuid.py
new file mode 100644 (file)
index 0000000..dcf1cf5
--- /dev/null
@@ -0,0 +1,19 @@
+import sqlalchemy
+from heat.openstack.common import uuidutils
+
+
+def upgrade(migrate_engine):
+    meta = sqlalchemy.MetaData(bind=migrate_engine)
+
+    resource = sqlalchemy.Table('resource', meta, autoload=True)
+
+    resource.c.id.alter(sqlalchemy.String(36), primary_key=True,
+                        default=uuidutils.generate_uuid)
+
+
+def downgrade(migrate_engine):
+    meta = sqlalchemy.MetaData(bind=migrate_engine)
+
+    resource = sqlalchemy.Table('resource', meta, autoload=True)
+
+    resource.c.id.alter(sqlalchemy.Integer, primary_key=True)
index 0812ca1c8a83fcea3a175950882b05acc4fd76c5..cda85c36693a77b32f95f62a4fbb85371a21818d 100644 (file)
@@ -211,7 +211,7 @@ class Resource(BASE, HeatBase):
 
     __tablename__ = 'resource'
 
-    id = Column(Integer, primary_key=True)
+    id = Column(String, primary_key=True, default=uuidutils.generate_uuid)
     state = Column('state', String)
     name = Column('name', String, nullable=False)
     nova_instance = Column('nova_instance', String)