{"action":"created","issue":{"url":"https://api.github.com/repos/ansible/ansible/issues/13199","labels_url":"https://api.github.com/repos/ansible/ansible/issues/13199/labels{/name}","comments_url":"https://api.github.com/repos/ansible/ansible/issues/13199/comments","events_url":"https://api.github.com/repos/ansible/ansible/issues/13199/events","html_url":"https://github.com/ansible/ansible/issues/13199","id":117491237,"number":13199,"title":"ERROR! failed to transfer file to       ^/setup:","user":{"login":"bonds","id":53434,"avatar_url":"https://avatars.githubusercontent.com/u/53434?v=3","gravatar_id":"","url":"https://api.github.com/users/bonds","html_url":"https://github.com/bonds","followers_url":"https://api.github.com/users/bonds/followers","following_url":"https://api.github.com/users/bonds/following{/other_user}","gists_url":"https://api.github.com/users/bonds/gists{/gist_id}","starred_url":"https://api.github.com/users/bonds/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bonds/subscriptions","organizations_url":"https://api.github.com/users/bonds/orgs","repos_url":"https://api.github.com/users/bonds/repos","events_url":"https://api.github.com/users/bonds/events{/privacy}","received_events_url":"https://api.github.com/users/bonds/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/ansible/ansible/labels/bug_report","name":"bug_report","color":"fbca04"},{"url":"https://api.github.com/repos/ansible/ansible/labels/P3","name":"P3","color":"fef2c0"}],"state":"open","locked":false,"assignee":null,"milestone":{"url":"https://api.github.com/repos/ansible/ansible/milestones/5","html_url":"https://github.com/ansible/ansible/milestones/v2","labels_url":"https://api.github.com/repos/ansible/ansible/milestones/5/labels","id":975800,"number":5,"title":"v2","description":null,"creator":{"login":"bcoca","id":836171,"avatar_url":"https://avatars.githubusercontent.com/u/836171?v=3","gravatar_id":"","url":"https://api.github.com/users/bcoca","html_url":"https://github.com/bcoca","followers_url":"https://api.github.com/users/bcoca/followers","following_url":"https://api.github.com/users/bcoca/following{/other_user}","gists_url":"https://api.github.com/users/bcoca/gists{/gist_id}","starred_url":"https://api.github.com/users/bcoca/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bcoca/subscriptions","organizations_url":"https://api.github.com/users/bcoca/orgs","repos_url":"https://api.github.com/users/bcoca/repos","events_url":"https://api.github.com/users/bcoca/events{/privacy}","received_events_url":"https://api.github.com/users/bcoca/received_events","type":"User","site_admin":false},"open_issues":28,"closed_issues":533,"state":"open","created_at":"2015-02-11T19:43:06Z","updated_at":"2015-11-28T18:44:18Z","due_on":null,"closed_at":null},"comments":10,"created_at":"2015-11-18T01:33:44Z","updated_at":"2015-11-29T04:24:23Z","closed_at":null,"body":"I just installed Ansible devel branch like so:  ````pip2 install git+https://github.com/ansible/ansible.git@devel --upgrade````. When I use any module besides ````raw````, I get an error when it tries to PUT the file to the host. It seems the file name is messed up.\r\n\r\nAnsible 1.9 works fine. I'm running OpenBSD 5.8-current with Python 2.7.10 and Fish Shell.\r\n\r\n````\r\n~ (master|✚29…) ❯❯❯ ansible -i ~/src/config/hosts -m setup pi.ggr.com -vvvv\r\nNo config file found; using defaults\r\nLoaded callback minimal of type stdout, v2.0\r\n<pi.ggr.com> ESTABLISH SSH CONNECTION FOR USER: None\r\n<pi.ggr.com> SSH: EXEC ssh -C -vvv -o ControlMaster=auto -o ControlPersist=60s -o KbdInteractiveAuthentication=no -o PreferredAuthentications=gssapi-with-mic,gssapi-keyex,hostbased,publickey -o PasswordAuthentication=no -o ConnectTimeout=10 -o ControlPath=/home/scott/.ansible/cp/ansible-ssh-%h-%p-%r -tt pi.ggr.com (umask 22 && mkdir -p \"`echo $HOME/.ansible/tmp/ansible-tmp-1447809899.71-249179464121878`\" && echo \"`echo $HOME/.ansible/tmp/ansible-tmp-1447809899.71-249179464121878`\")\r\n<pi.ggr.com> PUT /tmp/tmp1IkHgE TO       ^/setup\r\n<pi.ggr.com> SSH: EXEC sftp -b - -C -vvv -o ControlMaster=auto -o ControlPersist=60s -o KbdInteractiveAuthentication=no -o PreferredAuthentications=gssapi-with-mic,gssapi-keyex,hostbased,publickey -o PasswordAuthentication=no -o ConnectTimeout=10 -o ControlPath=/home/scott/.ansible/cp/ansible-ssh-%h-%p-%r [pi.ggr.com]\r\npi.ggr.com | FAILED! => {\r\n    \"failed\": true, \r\n    \"msg\": \"ERROR! failed to transfer file to       ^/setup:\\nsftp> put /tmp/tmp1IkHgE '      ^/setup'\\n\\nOpenSSH_7.1, LibreSSL 2.3.2\\r\\ndebug1: Reading configuration data /home/scott/.ssh/config\\r\\ndebug1: /home/scott/.ssh/config line 3: Skipping Host block because of negated match for pi.ggr.com\\r\\ndebug1: Reading configuration data /etc/ssh/ssh_config\\r\\ndebug1: auto-mux: Trying existing master\\r\\ndebug2: fd 3 setting O_NONBLOCK\\r\\ndebug2: mux_client_hello_exchange: master version 4\\r\\ndebug3: mux_client_forwards: request forwardings: 0 local, 0 remote\\r\\ndebug3: mux_client_request_session: entering\\r\\ndebug3: mux_client_request_alive: entering\\r\\ndebug3: mux_client_request_alive: done pid = 1967\\r\\ndebug3: mux_client_request_session: session request sent\\r\\ndebug1: mux_client_request_session: master session id: 2\\r\\ndebug2: Remote version: 3\\r\\ndebug2: Server supports extension \\\"posix-rename@openssh.com\\\" revision 1\\r\\ndebug2: Server supports extension \\\"statvfs@openssh.com\\\" revision 2\\r\\ndebug2: Server supports extension \\\"fstatvfs@openssh.com\\\" revision 2\\r\\ndebug2: Server supports extension \\\"hardlink@openssh.com\\\" revision 1\\r\\ndebug2: Server supports extension \\\"fsync@openssh.com\\\" revision 1\\r\\ndebug3: Sent message fd 5 T:16 I:1\\r\\ndebug3: SSH_FXP_REALPATH . -> /home/scott size 0\\r\\ndebug3: Looking up /tmp/tmp1IkHgE\\r\\ndebug3: Sent message fd 5 T:17 I:2\\r\\ndebug3: Received stat reply T:101 I:2\\r\\ndebug1: Couldn't stat remote file: No such file or directory\\r\\ndebug3: Sent message SSH2_FXP_OPEN I:3 P:/home/scott/      ^/setup\\r\\nremote open(\\\"/home/scott/      ^/setup\\\"): No such file or directory\\r\\ndebug3: mux_client_read_packet: read header failed: Broken pipe\\r\\ndebug2: Received exit status from master 0\\r\\n\"\r\n}\r\n````"},"comment":{"url":"https://api.github.com/repos/ansible/ansible/issues/comments/160369587","html_url":"https://github.com/ansible/ansible/issues/13199#issuecomment-160369587","issue_url":"https://api.github.com/repos/ansible/ansible/issues/13199","id":160369587,"user":{"login":"bcoca","id":836171,"avatar_url":"https://avatars.githubusercontent.com/u/836171?v=3","gravatar_id":"","url":"https://api.github.com/users/bcoca","html_url":"https://github.com/bcoca","followers_url":"https://api.github.com/users/bcoca/followers","following_url":"https://api.github.com/users/bcoca/following{/other_user}","gists_url":"https://api.github.com/users/bcoca/gists{/gist_id}","starred_url":"https://api.github.com/users/bcoca/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bcoca/subscriptions","organizations_url":"https://api.github.com/users/bcoca/orgs","repos_url":"https://api.github.com/users/bcoca/repos","events_url":"https://api.github.com/users/bcoca/events{/privacy}","received_events_url":"https://api.github.com/users/bcoca/received_events","type":"User","site_admin":false},"created_at":"2015-11-29T04:24:23Z","updated_at":"2015-11-29T04:24:23Z","body":"so setup is a file, which should be transferred to `$HOME/.ansible/tmp/ansible-tmp-1448742456.96-92512334359907`, but the command seems to 'not fail' but does not execute the \r\n`echo`, which gives back the actual directory to use. Since the return is 'empty' you get `/setup` instead of `$HOME/.ansible/tmp/ansible-tmp-1448742456.96-92512334359907/setup`.\r\n\r\nThis used to work for fish users in 1.x, I'm not sure what we changed to break it, but I'll look into it on Monday."}}