summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJames Cammarata <jimi@sngx.net>2016-04-18 13:02:57 -0400
committerJames Cammarata <jimi@sngx.net>2016-04-18 13:04:16 -0400
commit0df4bfe0639e059db3da8bfdb956934582698fe1 (patch)
tree98da0517b8811e5fb8b75e1e08798fde1e742cf7
parent9fe10860a69c0775f52119486223668bd240d804 (diff)
downloadansible-0df4bfe0639e059db3da8bfdb956934582698fe1.tar.gz
Don't override the http status code when successful in urls.py
-rw-r--r--lib/ansible/module_utils/urls.py3
-rw-r--r--test/integration/roles/test_uri/tasks/main.yml7
2 files changed, 8 insertions, 2 deletions
diff --git a/lib/ansible/module_utils/urls.py b/lib/ansible/module_utils/urls.py
index cacb7bbcd2..5cf9deaf09 100644
--- a/lib/ansible/module_utils/urls.py
+++ b/lib/ansible/module_utils/urls.py
@@ -838,8 +838,7 @@ def fetch_url(module, url, data=None, headers=None, method=None,
url_password=password, http_agent=http_agent, force_basic_auth=force_basic_auth,
follow_redirects=follow_redirects)
info.update(r.info())
- info['url'] = r.geturl() # The URL goes in too, because of redirects.
- info.update(dict(msg="OK (%s bytes)" % r.headers.get('Content-Length', 'unknown'), status=200))
+ info.update(dict(msg="OK (%s bytes)" % r.headers.get('Content-Length', 'unknown'), url=r.geturl(), status=r.getcode()))
except NoSSLError, e:
distribution = get_distribution()
if distribution is not None and distribution.lower() == 'redhat':
diff --git a/test/integration/roles/test_uri/tasks/main.yml b/test/integration/roles/test_uri/tasks/main.yml
index ae47aa759a..a4df843f22 100644
--- a/test/integration/roles/test_uri/tasks/main.yml
+++ b/test/integration/roles/test_uri/tasks/main.yml
@@ -204,3 +204,10 @@
assert:
that:
- 'result.allow|default("") == "HEAD, OPTIONS, GET"'
+
+- name: validate the status_codes are correct
+ uri:
+ url: https://httpbin.org/status/202
+ status_code: 202
+ method: POST
+ body: foo