diff --git a/roles/ipareplica/library/ipareplica_test.py b/roles/ipareplica/library/ipareplica_test.py index c7601816e15e0b0d05f1bf21f8b1a0e1d57528b8..8ff391f2ebe543cb5a3375cd40d0b935e65fd3e1 100644 --- a/roles/ipareplica/library/ipareplica_test.py +++ b/roles/ipareplica/library/ipareplica_test.py @@ -297,7 +297,12 @@ def main(): with redirect_stdout(ansible_log): common_check(options.no_ntp) except Exception as msg: #ScriptError as msg: - ansible_module.fail_json(msg=str(msg)) + _msg = str(msg) + if "server is already configured" in _msg: + ansible_module.exit_json(changed=False, + server_already_configured=True) + else: + ansible_module.fail_json(msg=_msg) # TODO: Check ntp_servers and ntp_pool @@ -321,7 +326,7 @@ def main(): # done # - ansible_module.exit_json(changed=True, + ansible_module.exit_json(changed=False, ipa_python_version=IPA_PYTHON_VERSION, ### basic ### domain=options.domain_name, diff --git a/roles/ipareplica/tasks/install.yml b/roles/ipareplica/tasks/install.yml index e8e8056a83150cdf2d9640febbf6e6acd0bf4874..a6309561e88b71ee420221202be0d618c85bf534 100644 --- a/roles/ipareplica/tasks/install.yml +++ b/roles/ipareplica/tasks/install.yml @@ -68,6 +68,9 @@ no_dnssec_validation: "{{ ipareplica_no_dnssec_validation }}" register: result_ipareplica_test +- meta: end_play + when: result_ipareplica_test.client_already_configured is defined or result_ipareplica_test.server_already_configured is defined + - block: - name: Install - Setup client