From 48f4e6dd238e4a14e978318bcab2b7ebf84ea6ba Mon Sep 17 00:00:00 2001 From: Ryan Petrello Date: Wed, 24 Mar 2021 10:18:25 -0400 Subject: [PATCH] fix a bug that improperly formats OpenSSH keys in custom credential types --- awx/main/models/credential/__init__.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/awx/main/models/credential/__init__.py b/awx/main/models/credential/__init__.py index 1d29fbb5e7..f37bfee884 100644 --- a/awx/main/models/credential/__init__.py +++ b/awx/main/models/credential/__init__.py @@ -466,10 +466,14 @@ class CredentialType(CommonModelNameNotUnique): if len(value): namespace[field_name] = value - # default missing boolean fields to False for field in self.inputs.get('fields', []): + # default missing boolean fields to False if field['type'] == 'boolean' and field['id'] not in credential.inputs.keys(): namespace[field['id']] = safe_namespace[field['id']] = False + # make sure private keys end with a \n + if field.get('format') == 'ssh_private_key': + if field['id'] in namespace and not namespace[field['id']].endswith('\n'): + namespace[field['id']] += '\n' file_tmpls = self.injectors.get('file', {}) # If any file templates are provided, render the files and update the