diff --git a/lib/ansible/runner/__init__.py b/lib/ansible/runner/__init__.py index 2dc83c3c89..39a6593495 100644 --- a/lib/ansible/runner/__init__.py +++ b/lib/ansible/runner/__init__.py @@ -718,6 +718,7 @@ class Runner(object): actual_pass = inject.get('ansible_ssh_pass', self.remote_pass) actual_transport = inject.get('ansible_connection', self.transport) actual_private_key_file = inject.get('ansible_ssh_private_key_file', self.private_key_file) + actual_private_key_file = template.template(self.basedir, actual_private_key_file, inject, fail_on_undefined=True) self.sudo_pass = inject.get('ansible_sudo_pass', self.sudo_pass) self.su = inject.get('ansible_su', self.su) self.su_pass = inject.get('ansible_su_pass', self.su_pass) diff --git a/lib/ansible/runner/action_plugins/synchronize.py b/lib/ansible/runner/action_plugins/synchronize.py index 2af14206b8..e7dd54127b 100644 --- a/lib/ansible/runner/action_plugins/synchronize.py +++ b/lib/ansible/runner/action_plugins/synchronize.py @@ -135,6 +135,8 @@ class ActionModule(object): else: private_key = inject.get('ansible_ssh_private_key_file', self.runner.private_key_file) + private_key = template.template(self.runner.basedir, private_key, inject, fail_on_undefined=True) + if not private_key is None: private_key = os.path.expanduser(private_key) options['private_key'] = private_key