diff options
-rw-r--r-- | lib/action_plugins/fetch_cmd.py | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/action_plugins/fetch_cmd.py b/lib/action_plugins/fetch_cmd.py index 57d7220..93960eb 100644 --- a/lib/action_plugins/fetch_cmd.py +++ b/lib/action_plugins/fetch_cmd.py @@ -33,30 +33,30 @@ class ActionModule(ActionBase): cmd = self._task.args.get('cmd', None) stdin = self._task.args.get('stdin', None) dest = self._task.args.get('dest', None) if cmd is None or dest is None: return dict(failed=True, msg="cmd and dest are required") if stdin is not None: stdin = self._connection._shell.join_path(stdin) stdin = self._remote_expand_user(stdin) remote_user = task_vars.get('ansible_ssh_user') or self._play_context.remote_user stdout = self._connection._shell.join_path(self._make_tmp_path(remote_user), 'stdout') result.update(self._execute_module(module_args=dict(cmd=cmd, stdin=stdin, dest=stdout), task_vars=task_vars)) # calculate checksum for the local file local_checksum = checksum(dest) # calculate checksum for the remote file, don't bother if using become as slurp will be used - remote_checksum = self._remote_checksum(stdout, all_vars=task_vars) + remote_checksum = self._execute_remote_stat(stdout, all_vars=task_vars, follow=True).get('checksum') if remote_checksum != local_checksum: makedirs_safe(os.path.dirname(dest)) self._connection.fetch_file(stdout, dest) if checksum(dest) == remote_checksum: result.update(dict(changed=True)) else: result.update(dict(failed=True)) return result |