diff options
author | Toshio Kuratomi <toshio@fedoraproject.org> | 2015-07-20 13:38:37 -0700 |
---|---|---|
committer | Toshio Kuratomi <toshio@fedoraproject.org> | 2015-07-21 13:47:00 -0700 |
commit | 108c6dc86d617d5d7e192984a3ab72df34152229 (patch) | |
tree | e569d2838e1b5a7f91a7a69e7ccd13ef4396294b | |
parent | 7a727a7a43fd0bdb7069deba379aa9b4677378ef (diff) | |
download | ansible-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.py | 25 |
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() |