From 6d328caa5987ee9d6613db8e4a7f3a343ecf5678 Mon Sep 17 00:00:00 2001 From: Thomas Woerner <twoerner@redhat.com> Date: Fri, 7 Jun 2019 17:59:12 +0200 Subject: [PATCH] ipaserver_test: Treat host, domain and realm settings in the same was as the cli The code for host_name, the domain_name and also the realm_name has been adapted to the code in the command line installer. The _hostname_overridden setting is now only true if the hostname has been changed. --- roles/ipaserver/library/ipaserver_test.py | 45 ++++++++++++----------- 1 file changed, 24 insertions(+), 21 deletions(-) diff --git a/roles/ipaserver/library/ipaserver_test.py b/roles/ipaserver/library/ipaserver_test.py index aee919d0..25fc3d7a 100644 --- a/roles/ipaserver/library/ipaserver_test.py +++ b/roles/ipaserver/library/ipaserver_test.py @@ -557,33 +557,39 @@ def main(): # host name if options.host_name: - options.host_default = options.host_name + host_default = options.host_name else: - options.host_default = get_fqdn() + host_default = get_fqdn() try: - verify_fqdn(options.host_default, options.no_host_dns) - options.host_name = options.host_default + verify_fqdn(host_default, options.no_host_dns) + host_name = host_default except BadHostError as e: ansible_module.fail_json(msg=e) - options.host_name = options.host_name.lower() + + host_name = host_name.lower() if not options.domain_name: - options.domain_name = options.host_name[options.host_name.find(".")+1:] + domain_name = host_name[host_name.find(".")+1:] try: - validate_domain_name(options.domain_name) + validate_domain_name(domain_name) except ValueError as e: ansible_module.fail_json(msg="Invalid domain name: %s" % unicode(e)) - options.domain_name = options.domain_name.lower() + else: + domain_name = options.domain_name + + domain_name = domain_name.lower() if not options.realm_name: - options.realm_name = options.domain_name - options.realm_name = options.realm_name.upper() + realm_name = domain_name.upper() + else: + realm_name = options.realm_name.upper() + argspec = inspect.getargspec(validate_domain_name) if "entity" in argspec.args: # NUM_VERSION >= 40690: try: - validate_domain_name(options.realm_name, entity="realm") + validate_domain_name(realm_name, entity="realm") except ValueError as e: raise ScriptError("Invalid realm name: {}".format(unicode(e))) @@ -591,7 +597,7 @@ def main(): # If domain name and realm does not match, IPA server will not be able # to establish trust with Active Directory. Fail. - if options.domain_name.upper() != options.realm_name: + if domain_name.upper() != realm_name: ansible_module.warn( "Realm name does not match the domain name: " "You will not be able to establish trusts with Active " @@ -618,7 +624,7 @@ def main(): key_password=options.http_pin, key_nickname=options.http_cert_name, ca_cert_files=options.ca_cert_files, - host_name=options.host_name) + host_name=host_name) http_pkcs12_info = (http_pkcs12_file.name, options.http_pin) if options.dirsrv_cert_files: @@ -630,7 +636,7 @@ def main(): key_password=options.dirsrv_pin, key_nickname=options.dirsrv_cert_name, ca_cert_files=options.ca_cert_files, - host_name=options.host_name) + host_name=host_name) dirsrv_pkcs12_info = (dirsrv_pkcs12_file.name, options.dirsrv_pin) if options.pkinit_cert_files: @@ -642,7 +648,7 @@ def main(): key_password=options.pkinit_pin, key_nickname=options.pkinit_cert_name, ca_cert_files=options.ca_cert_files, - realm_name=options.realm_name) + realm_name=realm_name) pkinit_pkcs12_info = (pkinit_pkcs12_file.name, options.pkinit_pin) if (options.http_cert_files and options.dirsrv_cert_files and @@ -657,18 +663,15 @@ def main(): "Apache Server SSL certificate and PKINIT KDC " "certificate are not signed by the same CA certificate") - # Always set _host_name_overridden - options._host_name_overridden = bool(options.host_name) - # done ################################################################## ansible_module.exit_json(changed=False, ipa_python_version=IPA_PYTHON_VERSION, ### basic ### domain=options.domain_name, - realm=options.realm_name, - hostname=options.host_name, - _hostname_overridden=options._host_name_overridden, + realm=realm_name, + hostname=host_name, + _hostname_overridden=bool(options.host_name), no_host_dns=options.no_host_dns, ### server ### setup_adtrust=options.setup_adtrust, -- GitLab