ipaservice: Use new convert_input_certificates

Certificates given by ansible could have leading and trailing white
space, but also multi line input is possible that also could have
leading and training white space and newlines.
This commit is contained in:
Thomas Woerner
2024-06-21 19:24:03 +02:00
parent 84b5d33c62
commit b64da1dbb7

View File

@@ -378,7 +378,7 @@ RETURN = """
from ansible.module_utils.ansible_freeipa_module import \ from ansible.module_utils.ansible_freeipa_module import \
IPAAnsibleModule, compare_args_ipa, encode_certificate, \ IPAAnsibleModule, compare_args_ipa, encode_certificate, \
gen_add_del_lists, gen_add_list, gen_intersection_list, ipalib_errors, \ gen_add_del_lists, gen_add_list, gen_intersection_list, ipalib_errors, \
api_get_realm, to_text api_get_realm, to_text, convert_input_certificates
from ansible.module_utils import six from ansible.module_utils import six
if six.PY3: if six.PY3:
unicode = str unicode = str
@@ -601,12 +601,6 @@ def main():
# service attributes # service attributes
principal = ansible_module.params_get("principal") principal = ansible_module.params_get("principal")
certificate = ansible_module.params_get("certificate") certificate = ansible_module.params_get("certificate")
# Any leading or trailing whitespace is removed while adding the
# certificate with serive_add_cert. To be able to compare the results
# from service_show with the given certificates we have to remove the
# white space also.
if certificate is not None:
certificate = [cert.strip() for cert in certificate]
pac_type = ansible_module.params_get( pac_type = ansible_module.params_get(
"pac_type", allow_empty_list_item=True) "pac_type", allow_empty_list_item=True)
auth_ind = ansible_module.params_get( auth_ind = ansible_module.params_get(
@@ -636,6 +630,8 @@ def main():
ansible_module.fail_json(msg="At least one name or services is " ansible_module.fail_json(msg="At least one name or services is "
"required") "required")
check_parameters(ansible_module, state, action, names) check_parameters(ansible_module, state, action, names)
certificate = convert_input_certificates(ansible_module, certificate,
state)
# Use services if names is None # Use services if names is None
if services is not None: if services is not None:
@@ -669,12 +665,8 @@ def main():
service_set.add(name) service_set.add(name)
principal = service.get("principal") principal = service.get("principal")
certificate = service.get("certificate") certificate = service.get("certificate")
# Any leading or trailing whitespace is removed while adding certificate = convert_input_certificates(ansible_module,
# the certificate with serive_add_cert. To be able to compare certificate, state)
# the results from service_show with the given certificates
# we have to remove the white space also.
if certificate is not None:
certificate = [cert.strip() for cert in certificate]
pac_type = service.get("pac_type") pac_type = service.get("pac_type")
auth_ind = service.get("auth_ind") auth_ind = service.get("auth_ind")
check_authind(ansible_module, auth_ind) check_authind(ansible_module, auth_ind)