mirror of
https://github.com/ansible/awx.git
synced 2026-01-23 23:41:23 -03:30
Added Team.migrate_to_rbac and tests
This commit is contained in:
parent
7b3f3675f8
commit
5ed766ed35
@ -129,6 +129,8 @@ class Team(CommonModelNameNotUnique, ResourceMixin):
|
||||
member_role = ImplicitRoleField(
|
||||
role_name='Team Member',
|
||||
parent_role='admin_role',
|
||||
resource_field='resource',
|
||||
permissions = {'read':True},
|
||||
)
|
||||
|
||||
def get_absolute_url(self):
|
||||
@ -142,6 +144,13 @@ class Team(CommonModelNameNotUnique, ResourceMixin):
|
||||
cred.mark_inactive()
|
||||
super(Team, self).mark_inactive(save=save)
|
||||
|
||||
def migrate_to_rbac(self):
|
||||
migrated = []
|
||||
for user in self.users.all():
|
||||
self.member_role.members.add(user)
|
||||
migrated.append(user)
|
||||
return migrated
|
||||
|
||||
class Permission(CommonModelNameNotUnique):
|
||||
'''
|
||||
A permission allows a user, project, or team to be able to use an inventory source.
|
||||
|
||||
13
awx/main/tests/functional/test_rbac_team.py
Normal file
13
awx/main/tests/functional/test_rbac_team.py
Normal file
@ -0,0 +1,13 @@
|
||||
import pytest
|
||||
|
||||
@pytest.mark.django_db
|
||||
def test_team_migration_user(team, user, permissions):
|
||||
u = user('user', False)
|
||||
team.users.add(u)
|
||||
|
||||
assert not team.accessible_by(u, permissions['auditor'])
|
||||
|
||||
migrated = team.migrate_to_rbac()
|
||||
assert len(migrated) == 1
|
||||
assert team.accessible_by(u, permissions['auditor'])
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user