Hello,
I’m having some trouble getting proxy authentication to work in Ansible. I have a simple playbook I’m using to test with the uri
module and a remote REST API service.
- hosts: localhost
connection: localhost
vars:
proxy_env:
http_proxy: http://user:p%40ss@proxy.corporate.com
https_proxy: http://user:p%40ss@proxy.corporate.com
remote_url: https://my.remotesite.com/api/v1
api_id: 1234
api_key: 1234-5678
tasks: - debug: msg=“Testing {{ proxy_env }}”
- uri: url={{ remote_url }}
method=POST body=“api_id={{ api_id }}&api_key={{ api_key }}”
environment: proxy_env
And the result is always
failed: [localhost] => {“failed”: true, “parsed”: false}
Traceback (most recent call last):
File “/home/user/.ansible/tmp/ansible-tmp-1423071257.11-151456645393471/uri”, line 2011, in
main()
File “/home/user/.ansible/tmp/ansible-tmp-1423071257.11-151456645393471/uri”, line 403, in main
resp, content, dest = uri(module, url, dest, user, password, body, method, dict_headers, redirects, socket_timeout)
File “/home/user/.ansible/tmp/ansible-tmp-1423071257.11-151456645393471/uri”, line 302, in uri
resp, content = h.request(url, method=method, body=body, headers=headers)
File “/usr/lib/python2.6/site-packages/httplib2/init.py”, line 1605, in request
(response, content) = self._request(conn, authority, uri, request_uri, method, body, headers, redirections, cachekey)
File “/usr/lib/python2.6/site-packages/httplib2/init.py”, line 1353, in _request
(response, content) = self._conn_request(conn, request_uri, method, body, headers)
File “/usr/lib/python2.6/site-packages/httplib2/init.py”, line 1289, in _conn_request
conn.connect()
File “/usr/lib/python2.6/site-packages/httplib2/init.py”, line 1018, in connect
sock.connect((self.host, self.port))
File “/usr/lib/python2.6/site-packages/httplib2/socks.py”, line 424, in connect
self.__negotiatehttp(destpair[0], destpair[1])
File “/usr/lib/python2.6/site-packages/httplib2/socks.py”, line 390, in __negotiatehttp
raise HTTPError((statuscode, statusline[2]))
httplib2.socks.HTTPError: (407, ‘Proxy Authentication Required’)
The directions at http://docs.ansible.com/playbooks_environment.html are quite clear, so I’m not sure what is going on.
Have I defined something in my playbook incorrectly?
Does the uri
module not respect proxy environment settings?
Thanks,
Jay