lot of fixes
diff --git a/scripts/connector.py b/scripts/connector.py
index 3cf40cc..6f0f744 100644
--- a/scripts/connector.py
+++ b/scripts/connector.py
@@ -1,71 +1,33 @@
-import argparse
-import logging
-import sys
-import tempfile
 import os
+import sys
+import logging
+import argparse
+import tempfile
 import paramiko
 
-from urlparse import urlparse
+import fuel_rest_api
 from nodes.node import Node
-from ssh_utils import ssh_connect, ssh_copy_file, connect
 from utils import parse_creds
-from fuel_rest_api import KeystoneAuth
+from urlparse import urlparse
+
 
 tmp_file = tempfile.NamedTemporaryFile().name
 openrc_path = tempfile.NamedTemporaryFile().name
 logger = logging.getLogger("io-perf-tool")
 
 
-def get_cluster_id(cluster_name, conn):
-    clusters = conn.do("get", path="/api/clusters")
-    for cluster in clusters:
-        if cluster['name'] == cluster_name:
-            return cluster['id']
-
-
-def get_openrc_data(file_name):
-    openrc_dict = {}
-
-    with open(file_name) as f:
-        for line in f.readlines():
-            if len(line.split(" ")) > 1:
-                line = line.split(' ')[1]
-                key, value = line.split('=')
-
-                if key in ['OS_AUTH_URL', 'OS_PASSWORD',
-                              'OS_TENANT_NAME', 'OS_USERNAME']:
-                    openrc_dict[key] = value[1: len(value) - 2]
-
-    return openrc_dict
-
-
-def get_openrc(nodes):
-    controller = None
-
-    for node in nodes:
-        if 'controller' in node.roles:
-            controller = node
-            break
-
-    url = controller.conn_url[6:]
-    ssh = connect(url)
-    sftp = ssh.open_sftp()
-    sftp.get('/root/openrc', openrc_path)
-    sftp.close()
-
-    return get_openrc_data(openrc_path)
-
-
 def discover_fuel_nodes(fuel_url, creds, cluster_name):
     username, tenant_name, password = parse_creds(creds)
     creds = {"username": username,
              "tenant_name": tenant_name,
              "password": password}
 
-    fuel = KeystoneAuth(fuel_url, creds, headers=None, echo=None,)
-    cluster_id = get_cluster_id(cluster_name, fuel)
-    nodes = fuel.do("get", path="/api/nodes?cluster_id=" + str(cluster_id))
-    ips = [node["ip"] for node in nodes]
+    conn = fuel_rest_api.KeystoneAuth(fuel_url, creds, headers=None)
+    cluster_id = fuel_rest_api.get_cluster_id(conn, cluster_name)
+    cluster = fuel_rest_api.reflect_cluster(conn, cluster_id)
+
+    nodes = list(cluster.get_nodes())
+    ips = [node.get_ip('admin') for node in nodes]
     roles = [node["roles"] for node in nodes]
 
     host = urlparse(fuel_url).hostname
@@ -73,8 +35,9 @@
     nodes, to_clean = run_agent(ips, roles, host, tmp_file)
     nodes = [Node(node[0], node[1]) for node in nodes]
 
-    openrc_dict = get_openrc(nodes)
+    openrc_dict = cluster.get_openrc()
 
+    logger.debug("Found %s fuel nodes for env %r" % (len(nodes), cluster_name))
     return nodes, to_clean, openrc_dict
 
 
@@ -144,9 +107,8 @@
                       + ":" + fuel_id_rsa_path, role))
 
     ssh.close()
-    logger.info('Files has been transferred successfully to Fuel node, ' \
+    logger.info('Files has been transferred successfully to Fuel node, ' +
                 'agent has been launched')
-    logger.info("Nodes : " + str(nodes))
 
     return nodes, nodes_to_clean
 
@@ -170,7 +132,8 @@
     args = parse_command_line(argv)
 
     nodes, to_clean, _ = discover_fuel_nodes(args.fuel_url,
-                                          args.creds, args.cluster_name)
+                                             args.creds,
+                                             args.cluster_name)
     discover_fuel_nodes_clean(args.fuel_url, {"username": "root",
                                               "password": "test37",
                                               "port": 22}, to_clean)