diff options
Diffstat (limited to 'contrib/inventory/openshift.py')
-rwxr-xr-x | contrib/inventory/openshift.py | 26 |
1 files changed, 7 insertions, 19 deletions
diff --git a/contrib/inventory/openshift.py b/contrib/inventory/openshift.py index 6e49ffb1c4..67d37a7330 100755 --- a/contrib/inventory/openshift.py +++ b/contrib/inventory/openshift.py @@ -28,7 +28,6 @@ version_added: None author: Michael Scherer ''' -import urllib2 try: import json except ImportError: @@ -39,6 +38,8 @@ import sys import ConfigParser import StringIO +from ansible.module_utils.urls import open_url + configparser = None @@ -66,34 +67,21 @@ def get_config(env_var, config_var): return result -def get_json_from_api(url): - req = urllib2.Request(url, None, {'Accept': 'application/json; version=1.5'}) - response = urllib2.urlopen(req) +def get_json_from_api(url, username, password): + headers = {'Accept': 'application/json; version=1.5'} + response = open_url(url, headers=headers, url_username=username, url_password=password) return json.loads(response.read())['data'] -def passwd_setup(top_level_url, username, password): - # create a password manager - password_mgr = urllib2.HTTPPasswordMgrWithDefaultRealm() - password_mgr.add_password(None, top_level_url, username, password) - - handler = urllib2.HTTPBasicAuthHandler(password_mgr) - opener = urllib2.build_opener(handler) - - urllib2.install_opener(opener) - - username = get_config('ANSIBLE_OPENSHIFT_USERNAME', 'default_rhlogin') password = get_config('ANSIBLE_OPENSHIFT_PASSWORD', 'password') broker_url = 'https://%s/broker/rest/' % get_config('ANSIBLE_OPENSHIFT_BROKER', 'libra_server') -passwd_setup(broker_url, username, password) - -response = get_json_from_api(broker_url + '/domains') +response = get_json_from_api(broker_url + '/domains', username, password) response = get_json_from_api("%s/domains/%s/applications" % - (broker_url, response[0]['id'])) + (broker_url, response[0]['id']), username, password) result = {} for app in response: |