mirror of
https://github.com/ansible/awx.git
synced 2026-02-26 15:36:04 -03:30
cleanup make methods and update asserts
This commit is contained in:
@@ -14,9 +14,11 @@ from awx.main.models import (
|
|||||||
Label,
|
Label,
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
||||||
def instance():
|
def instance():
|
||||||
return Instance.objects.get_or_create(uuid=settings.SYSTEM_UUID, primary=True, hostname="instance.example.org")
|
return Instance.objects.get_or_create(uuid=settings.SYSTEM_UUID, primary=True, hostname="instance.example.org")
|
||||||
|
|
||||||
|
|
||||||
def mk_organization(name, desc, persisted=True):
|
def mk_organization(name, desc, persisted=True):
|
||||||
org = Organization(name=name, description=desc)
|
org = Organization(name=name, description=desc)
|
||||||
if persisted:
|
if persisted:
|
||||||
@@ -24,62 +26,84 @@ def mk_organization(name, desc, persisted=True):
|
|||||||
org.save()
|
org.save()
|
||||||
return org
|
return org
|
||||||
|
|
||||||
def mk_label(name, organization=None, persisted=True):
|
|
||||||
|
def mk_label(name, **kwargs):
|
||||||
label = Label(name=name, description="%s-desc".format(name))
|
label = Label(name=name, description="%s-desc".format(name))
|
||||||
|
organization = kwargs.get('organization')
|
||||||
if organization is not None:
|
if organization is not None:
|
||||||
label.organization = organization
|
label.organization = organization
|
||||||
if persisted:
|
if kwargs.get('persisted', True):
|
||||||
label.save()
|
label.save()
|
||||||
return label
|
return label
|
||||||
|
|
||||||
def mk_team(name, organization=None, persisted=True):
|
|
||||||
|
def mk_team(name, **kwargs):
|
||||||
team = Team(name=name)
|
team = Team(name=name)
|
||||||
|
organization = kwargs.get('organization')
|
||||||
if organization is not None:
|
if organization is not None:
|
||||||
team.organization = organization
|
team.organization = organization
|
||||||
if persisted:
|
if kwargs.get('persisted', True):
|
||||||
instance()
|
instance()
|
||||||
team.save()
|
team.save()
|
||||||
return team
|
return team
|
||||||
|
|
||||||
|
|
||||||
def mk_user(name, organization=None, team=None, is_superuser=False, persisted=True):
|
def mk_user(name, **kwargs):
|
||||||
user = User(username=name)
|
user = User(username=name, is_superuser=kwargs.get('is_superuser', False))
|
||||||
|
|
||||||
if persisted:
|
if kwargs.get('persisted', True):
|
||||||
user.save()
|
user.save()
|
||||||
|
organization = kwargs.get('organization')
|
||||||
if organization is not None:
|
if organization is not None:
|
||||||
organization.member_role.members.add(user)
|
organization.member_role.members.add(user)
|
||||||
|
team = kwargs.get('team')
|
||||||
if team is not None:
|
if team is not None:
|
||||||
team.member_role.members.add(user)
|
team.member_role.members.add(user)
|
||||||
return user
|
return user
|
||||||
|
|
||||||
|
|
||||||
def mk_project(name, organization=None, persisted=True):
|
def mk_project(name, **kwargs):
|
||||||
project = Project(name=name)
|
project = Project(name=name)
|
||||||
|
organization = kwargs.get('organization')
|
||||||
if organization is not None:
|
if organization is not None:
|
||||||
project.organization = organization
|
project.organization = organization
|
||||||
if persisted:
|
if kwargs.get('persisted', True):
|
||||||
project.save()
|
project.save()
|
||||||
return project
|
return project
|
||||||
|
|
||||||
|
|
||||||
def mk_credential(name, *args, **kwargs):
|
def mk_credential(name, **kwargs):
|
||||||
return None
|
cred = Credential(name=name)
|
||||||
|
cred.cloud = kwargs.get('cloud', False)
|
||||||
|
cred.kind = kwargs.get('kind', 'ssh')
|
||||||
|
if kwargs.get('persisted', True):
|
||||||
|
cred.save()
|
||||||
|
return cred
|
||||||
|
|
||||||
def mk_inventory(name, organization=None, persisted=True):
|
|
||||||
|
def mk_inventory(name, **kwargs):
|
||||||
inv = Inventory(name=name)
|
inv = Inventory(name=name)
|
||||||
inv.organization = organization
|
organization = kwargs.get('organization', None)
|
||||||
if persisted:
|
if organization is not None:
|
||||||
|
inv.organization = organization
|
||||||
|
if kwargs.get('persisted', True):
|
||||||
inv.save()
|
inv.save()
|
||||||
return inv
|
return inv
|
||||||
|
|
||||||
def mk_job_template(name, project=None, inventory=None, credential=None, job_type='run', persisted=True):
|
def mk_job_template(name, **kwargs):
|
||||||
jt = JobTemplate(name=name, job_type=job_type)
|
jt = JobTemplate(name=name, job_type=kwargs.get('job_type', 'run'))
|
||||||
jt.project = project
|
|
||||||
jt.inventory = inventory
|
jt.inventory = kwargs.get('inventory', None)
|
||||||
jt.credential = credential
|
if jt.inventory is None:
|
||||||
if persisted:
|
jt.ask_inventory_on_launch = True
|
||||||
|
|
||||||
|
jt.credential = kwargs.get('credential', None)
|
||||||
|
if jt.credential is None:
|
||||||
|
jt.ask_credential_on_launch = True
|
||||||
|
|
||||||
|
jt.project = kwargs.get('project', None)
|
||||||
|
|
||||||
|
if kwargs.get('persisted', True):
|
||||||
jt.save()
|
jt.save()
|
||||||
return jt
|
return jt
|
||||||
|
|
||||||
@@ -93,42 +117,47 @@ class _Mapped(object):
|
|||||||
def all(self):
|
def all(self):
|
||||||
return self.d.values()
|
return self.d.values()
|
||||||
|
|
||||||
def create_job_template(name, *args, **kwargs):
|
def create_job_template(name, **kwargs):
|
||||||
Objects = namedtuple("Objects", "organization, job_template, inventory, project, credential")
|
Objects = namedtuple("Objects", "job_template, inventory, project, credential, job_type")
|
||||||
|
|
||||||
org = None
|
org = None
|
||||||
proj = None
|
proj = None
|
||||||
inv = None
|
inv = None
|
||||||
cred = None
|
cred = None
|
||||||
|
job_type = kwargs.get('job_type', 'run')
|
||||||
|
persisted = kwargs.get('persisted', True)
|
||||||
|
|
||||||
if 'organization' in kwargs:
|
if 'organization' in kwargs:
|
||||||
org = kwargs['organization']
|
org = kwargs['organization']
|
||||||
if type(org) is not Organization:
|
if type(org) is not Organization:
|
||||||
org = mk_organization(org, '%s-desc'.format(org))
|
org = mk_organization(org, '%s-desc'.format(org), persisted=persisted)
|
||||||
|
|
||||||
if 'credential' in kwargs:
|
if 'credential' in kwargs:
|
||||||
cred = kwargs['credential']
|
cred = kwargs['credential']
|
||||||
if type(cred) is not Credential:
|
if type(cred) is not Credential:
|
||||||
cred = mk_credential(cred)
|
cred = mk_credential(cred, persisted=persisted)
|
||||||
|
|
||||||
if 'project' in kwargs:
|
if 'project' in kwargs:
|
||||||
proj = kwargs['project']
|
proj = kwargs['project']
|
||||||
if type(proj) is not Project:
|
if type(proj) is not Project:
|
||||||
proj = mk_project(proj, org)
|
proj = mk_project(proj, organization=org, persisted=persisted)
|
||||||
|
|
||||||
if 'inventory' in kwargs:
|
if 'inventory' in kwargs:
|
||||||
inv = kwargs['inventory']
|
inv = kwargs['inventory']
|
||||||
if type(inv) is not Inventory:
|
if type(inv) is not Inventory:
|
||||||
inv = mk_inventory(inv, org)
|
inv = mk_inventory(inv, organization=org, persisted=persisted)
|
||||||
|
|
||||||
jt = mk_job_template(name, proj, inv, cred)
|
jt = mk_job_template(name, project=proj,
|
||||||
|
inventory=inv, credential=cred,
|
||||||
|
job_type=job_type, persisted=persisted)
|
||||||
|
|
||||||
return Objects(job_template=jt,
|
return Objects(job_template=jt,
|
||||||
project=proj,
|
project=proj,
|
||||||
inventory=inv,
|
inventory=inv,
|
||||||
credential=cred)
|
credential=cred,
|
||||||
|
job_type=job_type)
|
||||||
|
|
||||||
def create_organization(name, *args, **kwargs):
|
def create_organization(name, **kwargs):
|
||||||
Objects = namedtuple("Objects", "organization,teams,users,superusers,projects,labels")
|
Objects = namedtuple("Objects", "organization,teams,users,superusers,projects,labels")
|
||||||
|
|
||||||
org = mk_organization(name, '%s-desc'.format(name))
|
org = mk_organization(name, '%s-desc'.format(name))
|
||||||
@@ -138,20 +167,21 @@ def create_organization(name, *args, **kwargs):
|
|||||||
teams = {}
|
teams = {}
|
||||||
projects = {}
|
projects = {}
|
||||||
labels = {}
|
labels = {}
|
||||||
|
persisted = kwargs.get('persisted', True)
|
||||||
|
|
||||||
if 'teams' in kwargs:
|
if 'teams' in kwargs:
|
||||||
for t in kwargs['teams']:
|
for t in kwargs['teams']:
|
||||||
if type(t) is Team:
|
if type(t) is Team:
|
||||||
teams[t.name] = t
|
teams[t.name] = t
|
||||||
else:
|
else:
|
||||||
teams[t] = mk_team(t, org)
|
teams[t] = mk_team(t, organization=org, persisted=persisted)
|
||||||
|
|
||||||
if 'projects' in kwargs:
|
if 'projects' in kwargs:
|
||||||
for p in kwargs['projects']:
|
for p in kwargs['projects']:
|
||||||
if type(p) is Project:
|
if type(p) is Project:
|
||||||
projects[p.name] = p
|
projects[p.name] = p
|
||||||
else:
|
else:
|
||||||
projects[p] = mk_project(p, org)
|
projects[p] = mk_project(p, organization=org, persisted=persisted)
|
||||||
|
|
||||||
if 'superusers' in kwargs:
|
if 'superusers' in kwargs:
|
||||||
# remove this duplication eventually
|
# remove this duplication eventually
|
||||||
@@ -162,9 +192,9 @@ def create_organization(name, *args, **kwargs):
|
|||||||
p1, sep, p2 = u.partition(':')
|
p1, sep, p2 = u.partition(':')
|
||||||
if p2:
|
if p2:
|
||||||
t = teams[p1]
|
t = teams[p1]
|
||||||
superusers[p2] = mk_user(p2, org, t, True)
|
superusers[p2] = mk_user(p2, organization=org, team=t, is_superuser=True, persisted=persisted)
|
||||||
else:
|
else:
|
||||||
superusers[p1] = mk_user(p1, org, None, True)
|
superusers[p1] = mk_user(p1, organization=org, team=None, is_superuser=True, persisted=persisted)
|
||||||
|
|
||||||
if 'users' in kwargs:
|
if 'users' in kwargs:
|
||||||
# remove this duplication eventually
|
# remove this duplication eventually
|
||||||
@@ -175,16 +205,16 @@ def create_organization(name, *args, **kwargs):
|
|||||||
p1, sep, p2 = u.partition(':')
|
p1, sep, p2 = u.partition(':')
|
||||||
if p2:
|
if p2:
|
||||||
t = teams[p1]
|
t = teams[p1]
|
||||||
users[p2] = mk_user(p2, org, t)
|
users[p2] = mk_user(p2, organization=org, team=t, is_superuser=False, persisted=persisted)
|
||||||
else:
|
else:
|
||||||
users[p1] = mk_user(p1, org)
|
users[p1] = mk_user(p1, organization=org, is_superuser=False, persisted=persisted)
|
||||||
|
|
||||||
if 'labels' in kwargs:
|
if 'labels' in kwargs:
|
||||||
for l in kwargs['labels']:
|
for l in kwargs['labels']:
|
||||||
if type(l) is Label:
|
if type(l) is Label:
|
||||||
labels[l.name] = l
|
labels[l.name] = l
|
||||||
else:
|
else:
|
||||||
labels[l] = mk_label(l, org)
|
labels[l] = mk_label(l, org, persisted=persisted)
|
||||||
|
|
||||||
return Objects(organization=org,
|
return Objects(organization=org,
|
||||||
superusers=_Mapped(superusers),
|
superusers=_Mapped(superusers),
|
||||||
|
|||||||
@@ -22,4 +22,4 @@ def test_job_template_factory(job_template_factory):
|
|||||||
assert jt_objects.project.name == 'proj1'
|
assert jt_objects.project.name == 'proj1'
|
||||||
assert jt_objects.inventory.name == 'inventory1'
|
assert jt_objects.inventory.name == 'inventory1'
|
||||||
assert jt_objects.credential.name == 'cred1'
|
assert jt_objects.credential.name == 'cred1'
|
||||||
assert jt_objects.organization.name == 'org1'
|
assert jt_objects.inventory.organization.name == 'org1'
|
||||||
|
|||||||
Reference in New Issue
Block a user