Next batch of backend permissions for orgs.

This commit is contained in:
yackob03 2013-11-04 15:42:08 -05:00
parent 100ec563fa
commit dd77ebd64f
11 changed files with 13596 additions and 62 deletions

View file

@ -37,9 +37,14 @@ class User(BaseModel):
organization = BooleanField(default=False, index=True)
class TeamRole(BaseModel):
name = CharField(index=True)
class Team(BaseModel):
name = CharField(index=True)
organization = ForeignKeyField(User, index=True)
role = ForeignKeyField(TeamRole)
class Meta:
database = db
@ -117,18 +122,6 @@ class RepositoryPermission(BaseModel):
)
class TeamPermission(BaseModel):
team = ForeignKeyField(Team, index=True)
organization = ForeignKeyField(User, index=True)
role = ForeignKeyField(Role)
class Meta:
database = db
indexes = (
(('team', 'organization'), True),
)
def random_string_generator(length=16):
def random_string():
random = SystemRandom()
@ -212,10 +205,13 @@ def initialize_db():
RepositoryPermission, Visibility, RepositoryTag,
EmailConfirmation, FederatedLogin, LoginService,
QueueItem, RepositoryBuild, Team, TeamMember,
TeamPermission])
TeamRole])
Role.create(name='admin')
Role.create(name='write')
Role.create(name='read')
TeamRole.create(name='admin')
TeamRole.create(name='creator')
TeamRole.create(name='member')
Visibility.create(name='public')
Visibility.create(name='private')
LoginService.create(name='github')