diff --git a/lib/ansible/plugins/action/synchronize.py b/lib/ansible/plugins/action/synchronize.py index 1870f2b2153..e840e412c5d 100644 --- a/lib/ansible/plugins/action/synchronize.py +++ b/lib/ansible/plugins/action/synchronize.py @@ -217,4 +217,9 @@ class ActionModule(ActionBase): # run the module and store the result result = self._execute_module('synchronize', task_vars=task_vars) + if 'SyntaxError' in result['msg']: + # Emit a warning about using python3 because synchronize is + # somewhat unique in running on localhost + result['traceback'] = result['msg'] + result['msg'] = 'SyntaxError parsing module. Perhaps invoking "python" on your local (or delegate_to) machine invokes python3. You can set ansible_python_interpreter for localhost (or the delegate_to machine) to the location of python2 to fix this' return result