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.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
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'
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)
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__':