summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2013-08-02 07:15:06 +0000
committerGerrit Code Review <review@openstack.org>2013-08-02 07:15:06 +0000
commitaf1d47412ea86a4c93d0d9253e71d725d202f43d (patch)
treef3ecbf44a66bd068cb95b745c61b44fd8d79506e
parent7cc361371ee06d592b1094038287fab6d02db19d (diff)
parentf49a37a88c026689d26d71d68e2677ca179f1138 (diff)
downloadkeystone-af1d47412ea86a4c93d0d9253e71d725d202f43d.tar.gz
keystone-af1d47412ea86a4c93d0d9253e71d725d202f43d.tar.xz
keystone-af1d47412ea86a4c93d0d9253e71d725d202f43d.zip
Merge "Sync DB models and migrations in keystone.assignment.backends.sql"
-rw-r--r--keystone/assignment/backends/sql.py22
-rw-r--r--tests/test_backend_sql.py2
2 files changed, 14 insertions, 10 deletions
diff --git a/keystone/assignment/backends/sql.py b/keystone/assignment/backends/sql.py
index 024a291a..cd2a0a5c 100644
--- a/keystone/assignment/backends/sql.py
+++ b/keystone/assignment/backends/sql.py
@@ -656,9 +656,10 @@ class Domain(sql.ModelBase, sql.DictBase):
__tablename__ = 'domain'
attributes = ['id', 'name', 'enabled']
id = sql.Column(sql.String(64), primary_key=True)
- name = sql.Column(sql.String(64), unique=True, nullable=False)
- enabled = sql.Column(sql.Boolean, default=True)
+ name = sql.Column(sql.String(64), nullable=False)
+ enabled = sql.Column(sql.Boolean, default=True, nullable=False)
extra = sql.Column(sql.JsonBlob())
+ __table_args__ = (sql.UniqueConstraint('name'), {})
class Project(sql.ModelBase, sql.DictBase):
@@ -680,8 +681,9 @@ class Role(sql.ModelBase, sql.DictBase):
__tablename__ = 'role'
attributes = ['id', 'name']
id = sql.Column(sql.String(64), primary_key=True)
- name = sql.Column(sql.String(64), unique=True, nullable=False)
+ name = sql.Column(sql.String(255), nullable=False)
extra = sql.Column(sql.JsonBlob())
+ __table_args__ = (sql.UniqueConstraint('name'), {})
class BaseGrant(sql.DictBase):
@@ -719,9 +721,8 @@ class BaseGrant(sql.DictBase):
class UserProjectGrant(sql.ModelBase, BaseGrant):
__tablename__ = 'user_project_metadata'
- user_id = sql.Column(sql.String(64),
- primary_key=True)
- project_id = sql.Column(sql.String(64),
+ user_id = sql.Column(sql.String(64), primary_key=True)
+ project_id = sql.Column(sql.String(64), sql.ForeignKey('project.id'),
primary_key=True)
data = sql.Column(sql.JsonBlob())
@@ -729,19 +730,22 @@ class UserProjectGrant(sql.ModelBase, BaseGrant):
class UserDomainGrant(sql.ModelBase, BaseGrant):
__tablename__ = 'user_domain_metadata'
user_id = sql.Column(sql.String(64), primary_key=True)
- domain_id = sql.Column(sql.String(64), primary_key=True)
+ domain_id = sql.Column(sql.String(64), sql.ForeignKey('domain.id'),
+ primary_key=True)
data = sql.Column(sql.JsonBlob())
class GroupProjectGrant(sql.ModelBase, BaseGrant):
__tablename__ = 'group_project_metadata'
group_id = sql.Column(sql.String(64), primary_key=True)
- project_id = sql.Column(sql.String(64), primary_key=True)
+ project_id = sql.Column(sql.String(64), sql.ForeignKey('project.id'),
+ primary_key=True)
data = sql.Column(sql.JsonBlob())
class GroupDomainGrant(sql.ModelBase, BaseGrant):
__tablename__ = 'group_domain_metadata'
group_id = sql.Column(sql.String(64), primary_key=True)
- domain_id = sql.Column(sql.String(64), primary_key=True)
+ domain_id = sql.Column(sql.String(64), sql.ForeignKey('domain.id'),
+ primary_key=True)
data = sql.Column(sql.JsonBlob())
diff --git a/tests/test_backend_sql.py b/tests/test_backend_sql.py
index 38eddaa4..89276e86 100644
--- a/tests/test_backend_sql.py
+++ b/tests/test_backend_sql.py
@@ -114,7 +114,7 @@ class SqlModels(SqlTests):
def test_role_model(self):
cols = (('id', sql.String, 64),
- ('name', sql.String, 64))
+ ('name', sql.String, 255))
self.assertExpectedSchema('role', cols)
def test_user_project_metadata_model(self):