mirror of
https://github.com/ansible/awx.git
synced 2026-01-17 04:31:21 -03:30
Merge pull request #920 from ryanpetrello/fix-914
add vault_id to launch endpoints default vault credentials
This commit is contained in:
commit
818c95501a
@ -3646,15 +3646,16 @@ class JobLaunchSerializer(BaseSerializer):
|
||||
id=getattrd(obj, '%s.pk' % field_name, None))
|
||||
elif field_name == 'credentials':
|
||||
if self.version > 1:
|
||||
defaults_dict[field_name] = [
|
||||
dict(
|
||||
for cred in obj.credentials.all():
|
||||
cred_dict = dict(
|
||||
id=cred.id,
|
||||
name=cred.name,
|
||||
credential_type=cred.credential_type.pk,
|
||||
passwords_needed=cred.passwords_needed
|
||||
)
|
||||
for cred in obj.credentials.all()
|
||||
]
|
||||
if cred.credential_type.managed_by_tower and 'vault_id' in cred.credential_type.defined_fields:
|
||||
cred_dict['vault_id'] = cred.inputs.get('vault_id') or None
|
||||
defaults_dict.setdefault(field_name, []).append(cred_dict)
|
||||
else:
|
||||
defaults_dict[field_name] = getattr(obj, field_name)
|
||||
return defaults_dict
|
||||
|
||||
@ -403,6 +403,22 @@ def test_job_launch_fails_with_missing_multivault_password(machine_credential, v
|
||||
|
||||
url = reverse('api:job_template_launch', kwargs={'pk': deploy_jobtemplate.pk})
|
||||
resp = get(url, rando, expect=200)
|
||||
|
||||
assert {
|
||||
'credential_type': vault_cred_first.credential_type_id,
|
||||
'passwords_needed': ['vault_password.abc'],
|
||||
'vault_id': u'abc',
|
||||
'name': u'Vault #1',
|
||||
'id': vault_cred_first.id
|
||||
} in resp.data['defaults']['credentials']
|
||||
assert {
|
||||
'credential_type': vault_cred_second.credential_type_id,
|
||||
'passwords_needed': ['vault_password.xyz'],
|
||||
'vault_id': u'xyz',
|
||||
'name': u'Vault #2',
|
||||
'id': vault_cred_second.id
|
||||
} in resp.data['defaults']['credentials']
|
||||
|
||||
assert resp.data['passwords_needed_to_start'] == ['vault_password.abc', 'vault_password.xyz']
|
||||
assert sum([
|
||||
cred['passwords_needed'] for cred in resp.data['defaults']['credentials']
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user