Fix for incorrect error messages on incomplete credentials.

This commit is contained in:
Lila 2022-11-07 14:44:42 -05:00
parent 6e25a552d3
commit 7590301ae7

View File

@ -1345,15 +1345,17 @@ class UnifiedJob(
# verify that any associated credentials aren't missing required field data
missing_credential_inputs = []
credential_name = ""
for credential in self.credentials.all():
defined_fields = credential.credential_type.defined_fields
for required in credential.credential_type.inputs.get('required', []):
if required in defined_fields and not credential.has_input(required):
missing_credential_inputs.append(required)
credential_name = credential.name
if missing_credential_inputs:
self.job_explanation = '{} cannot start because Credential {} does not provide one or more required fields ({}).'.format(
self._meta.verbose_name.title(), credential.name, ', '.join(sorted(missing_credential_inputs))
self._meta.verbose_name.title(), credential_name, ', '.join(sorted(missing_credential_inputs))
)
self.save(update_fields=['job_explanation'])
return (False, None)