diff --git a/roles/ipaclient/action_plugins/ipaclient_get_otp.py b/roles/ipaclient/action_plugins/ipaclient_get_otp.py
index dcddc0aedcd97ae19921b8cac287e33f3b6f1545..8e04ad99873e2e39d20da6caa76107552b9b6874 100644
--- a/roles/ipaclient/action_plugins/ipaclient_get_otp.py
+++ b/roles/ipaclient/action_plugins/ipaclient_get_otp.py
@@ -164,7 +164,8 @@ class ActionModule(ActionBase):
             return result
 
         data = self._execute_module(module_name='ipaclient_get_facts',
-                                    module_args=dict(), task_vars=None)
+                                    module_args=dict(), task_vars=task_vars)
+
         try:
             domain = data['ansible_facts']['ipa']['domain']
             realm = data['ansible_facts']['ipa']['realm']
@@ -245,4 +246,3 @@ class ActionModule(ActionBase):
         finally:
             # delete the local temp directory
             shutil.rmtree(local_temp_dir, ignore_errors=True)
-            run_cmd(['/usr/bin/kdestroy', '-c', tmp_ccache])
diff --git a/roles/ipaclient/tasks/install.yml b/roles/ipaclient/tasks/install.yml
index 0de3dea8abecac400cd9c0f03b5850c77fc1c801..4421f0c46b57a6819b738fe0c0346f66e87c2376 100644
--- a/roles/ipaclient/tasks/install.yml
+++ b/roles/ipaclient/tasks/install.yml
@@ -134,7 +134,6 @@
                    "Password cannot be set on enrolled host" not
                        in result_ipaclient_get_otp.msg
       delegate_to: "{{ result_ipaclient_test.servers[0] }}"
-      delegate_facts: yes
       ignore_errors: yes
 
     - name: Install - Report error for OTP generation