online bottlenecks soak throughtputs
[releng.git] / utils / create_pod_file.py
index 22943fc..a60ece4 100644 (file)
@@ -12,6 +12,8 @@ parser.add_argument("-u", "--user", help="Give username of this pod")
 parser.add_argument("-k", "--key", help="Give key file of the user")
 parser.add_argument("-p", "--password", help="Give password of the user")
 parser.add_argument("-f", "--filepath", help="Give dest path of output file")
 parser.add_argument("-k", "--key", help="Give key file of the user")
 parser.add_argument("-p", "--password", help="Give password of the user")
 parser.add_argument("-f", "--filepath", help="Give dest path of output file")
+parser.add_argument("-s", "--sshkey", default="/root/.ssh/id_rsa",
+                    help="Give the path for ssh key")
 args = parser.parse_args()
 
 
 args = parser.parse_args()
 
 
@@ -49,7 +51,7 @@ def get_with_passwd():
                                        args.user, installer_pwd=args.password)
 
 
                                        args.user, installer_pwd=args.password)
 
 
-def create_file(handler):
+def create_file(handler, INSTALLER_TYPE):
     """
     Create the yaml file of nodes info.
     As Yardstick required, node name must be node1, node2, ... and node1 must
     """
     Create the yaml file of nodes info.
     As Yardstick required, node name must be node1, node2, ... and node1 must
@@ -58,28 +60,44 @@ def create_file(handler):
     Other installers use key file of each node.
     """
     if not os.path.exists(os.path.dirname(args.filepath)):
     Other installers use key file of each node.
     """
     if not os.path.exists(os.path.dirname(args.filepath)):
-        os.path.makedirs(os.path.dirname(args.filepath))
+        os.makedirs(os.path.dirname(args.filepath))
     nodes = handler.nodes
     node_list = []
     index = 1
     nodes = handler.nodes
     node_list = []
     index = 1
+    user = 'root'
+    if INSTALLER_TYPE == 'apex':
+        user = 'heat-admin'
     for node in nodes:
     for node in nodes:
-        if node.roles[0].lower() == "controller":
-            node_info = {'name': "node%s" % index, 'role': node.roles[0],
-                         'ip': node.ip, 'user': 'root'}
+        try:
+            if node.roles[0].lower() == "controller":
+                node_info = {'name': "node%s" % index, 'role': node.roles[0],
+                             'ip': node.ip, 'user': user}
+                node_list.append(node_info)
+                index += 1
+        except Exception:
+            node_info = {'name': node.name, 'role': 'unknown', 'ip': node.ip,
+                         'user': user}
             node_list.append(node_info)
             node_list.append(node_info)
-            index += 1
     for node in nodes:
     for node in nodes:
-        if node.roles[0].lower() == "compute":
-            node_info = {'name': "node%s" % index, 'role': node.roles[0],
-                         'ip': node.ip, 'user': 'root'}
+        try:
+            if node.roles[0].lower() == "compute":
+                node_info = {'name': "node%s" % index, 'role': node.roles[0],
+                             'ip': node.ip, 'user': user}
+                node_list.append(node_info)
+                index += 1
+        except Exception:
+            node_info = {'name': node.name, 'role': 'unknown', 'ip': node.ip,
+                         'user': user}
             node_list.append(node_info)
             node_list.append(node_info)
-            index += 1
     if args.INSTALLER_TYPE == 'compass':
         for item in node_list:
             item['password'] = 'root'
     if args.INSTALLER_TYPE == 'compass':
         for item in node_list:
             item['password'] = 'root'
+    elif args.INSTALLER_TYPE == 'daisy':
+        for item in node_list:
+            item['key_filename'] = '/root/.ssh/id_dsa'
     else:
         for item in node_list:
     else:
         for item in node_list:
-            item['key_filename'] = '/root/.ssh/id_rsa'
+            item['key_filename'] = args.sshkey
     data = {'nodes': node_list}
     with open(args.filepath, "w") as fw:
         yaml.dump(data, fw)
     data = {'nodes': node_list}
     with open(args.filepath, "w") as fw:
         yaml.dump(data, fw)
@@ -95,7 +113,7 @@ def main():
     if not handler:
         print("Error: failed to get the node's handler.")
         return 1
     if not handler:
         print("Error: failed to get the node's handler.")
         return 1
-    create_file(handler)
+    create_file(handler, args.INSTALLER_TYPE)
 
 
 if __name__ == '__main__':
 
 
 if __name__ == '__main__':