moved libraries to roles where they are used.
diff --git a/library/bootstrap.py b/library/bootstrap.py new file mode 100644 index 0000000..976206c --- /dev/null +++ b/library/bootstrap.py
@@ -0,0 +1,81 @@ +import requests +from requests.auth import HTTPBasicAuth +from ansible.module_utils.basic import * + +bootstrap_filename = None +url = None + +def store_bootstrap_script(filename, dest_directory, text): + global file_path + + try: + os.mkdir(dest_directory) + except OSError: + pass + + file_path = dest_directory + '/' + filename + script_file = open(file_path, 'w') + script_file.write(text) + script_file.close() + + +def set_bootstrap_filename(version=None): + global bootstrap_filename + if version == '4.16.01' or version is None: + bootstrap_filename = 'bootstrap.sh' + else: + bootstrap_filename = 'bootstrap_' + version + '.sh' + + +def download_bootstrap(uri, dest_directory, user_name=None, password=None): + auth = None + if user_name is not None and password is not None: + auth = HTTPBasicAuth(user_name, password) + url = uri + '/' + bootstrap_filename + resp = requests.get(url, auth=auth) + store_bootstrap_script(bootstrap_filename, dest_directory, resp.text) + return resp.status_code + + +def main(): + module = AnsibleModule( + argument_spec=dict( + url=dict(required=False, type='str', default='http://software.apigee.com'), + version=dict(required=False, type='str', choices=['4.16.01', '4.16.05', '4.16.09'], default='4.16.01'), + dest_dir=dict(required=False, type='str', default='/tmp'), + user_name = dict(required=False, type='str'), + password = dict(required=False, type='str') + ) + ) + + bootstrap_uri = module.params['url'] + version = module.params['version'] + dest = module.params['dest_dir'] + user_name = module.params['user_name'] + password = module.params['password'] + + set_bootstrap_filename(version) + + status_code = download_bootstrap(bootstrap_uri, dest, user_name, password) + + if status_code >= 200 and status_code < 300: + module.exit_json(changed=True, + ansible_facts=dict( + rc=0, + bootstrap_request_status_code=status_code, + bootstrap_script=file_path, + bootstrap_filename=bootstrap_filename, + bootstrap_version=version + ) + ) + elif status_code >= 400: + module.fail_json(changed=False, + msg="Failed to retrieve bootstrap script", + rc=1, + bootstrap_request_status_code=status_code, + bootstrap_version=version + ) + + +if __name__ == '__main__': + main()