X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=utils%2Fcreate_pod_file.py;h=a60ece475428fbcdee2ac41f0f082f7d188e43de;hb=ea41680215f382b1ad70e4dc564529d728665378;hp=22943fc97ead2e457bd9c838848933e70730995f;hpb=82fc0ad06c8195e1c0f8b7d6276321fe5ef2daea;p=releng.git diff --git a/utils/create_pod_file.py b/utils/create_pod_file.py index 22943fc97..a60ece475 100644 --- a/utils/create_pod_file.py +++ b/utils/create_pod_file.py @@ -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("-s", "--sshkey", default="/root/.ssh/id_rsa", + help="Give the path for ssh key") args = parser.parse_args() @@ -49,7 +51,7 @@ def get_with_passwd(): 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 @@ -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)): - os.path.makedirs(os.path.dirname(args.filepath)) + os.makedirs(os.path.dirname(args.filepath)) nodes = handler.nodes node_list = [] index = 1 + user = 'root' + if INSTALLER_TYPE == 'apex': + user = 'heat-admin' 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) - index += 1 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) - index += 1 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: - 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) @@ -95,7 +113,7 @@ def main(): 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__':