summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorToshio Kuratomi <toshio@fedoraproject.org>2015-07-20 13:38:37 -0700
committerToshio Kuratomi <toshio@fedoraproject.org>2015-07-21 13:47:00 -0700
commit108c6dc86d617d5d7e192984a3ab72df34152229 (patch)
treee569d2838e1b5a7f91a7a69e7ccd13ef4396294b
parent7a727a7a43fd0bdb7069deba379aa9b4677378ef (diff)
downloadansible-modules-core-108c6dc86d617d5d7e192984a3ab72df34152229.tar.gz
Deprecated _ec2_ami_search now verifies SSL certificates
Conflicts: cloud/amazon/ec2_ami_search.py
-rw-r--r--cloud/amazon/ec2_ami_search.py25
1 files changed, 19 insertions, 6 deletions
diff --git a/cloud/amazon/ec2_ami_search.py b/cloud/amazon/ec2_ami_search.py
index 1dd5f056..c9580995 100644
--- a/cloud/amazon/ec2_ami_search.py
+++ b/cloud/amazon/ec2_ami_search.py
@@ -64,6 +64,15 @@ options:
required: false
default: paravirtual
choices: ["paravirtual", "hvm"]
+ validate_certs:
+ description:
+ - If C(no), SSL certificates will not be validated. This should only
+ be set to C(no) used on personally controlled sites using self-signed
+ certificates. Prior to 1.9.3 the code defaulted to C(no).
+ required: false
+ default: 'yes'
+ choices: ['yes', 'no']
+ version_added: '1.9.3'
author: Lorin Hochstein
'''
@@ -101,11 +110,12 @@ AWS_REGIONS = ['ap-northeast-1',
def get_url(module, url):
""" Get url and return response """
- try:
- r = urllib2.urlopen(url)
- except (urllib2.HTTPError, urllib2.URLError), e:
- code = getattr(e, 'code', -1)
- module.fail_json(msg="Request failed: %s" % str(e), status_code=code)
+
+ r, info = fetch_url(module, url)
+ if info['status'] != 200:
+ # Backwards compat
+ info['status_code'] = info['status']
+ module.fail_json(**info)
return r
@@ -181,7 +191,8 @@ def main():
choices=['i386', 'amd64']),
region=dict(required=False, default='us-east-1', choices=AWS_REGIONS),
virt=dict(required=False, default='paravirtual',
- choices=['paravirtual', 'hvm'])
+ choices=['paravirtual', 'hvm']),
+ validate_certs = dict(required=False, default=True, type='bool'),
)
module = AnsibleModule(argument_spec=arg_spec)
distro = module.params['distro']
@@ -195,6 +206,8 @@ def main():
# this is magic, see lib/ansible/module_common.py
#<<INCLUDE_ANSIBLE_MODULE_COMMON>>
+from ansible.module_utils.basic import *
+from ansible.module_utils.urls import *
if __name__ == '__main__':
main()