From 104a2934a54d7113cf4c3eb76b29377c4b3a8425 Mon Sep 17 00:00:00 2001 From: "carey.xu" Date: Sat, 30 Jan 2016 18:43:30 +0800 Subject: bugfix: rename nic based on mac Change-Id: I2771a87a41ab884dbda1fcffa8ab0833489fb5ef Signed-off-by: carey.xu --- deploy/rename_nics.py | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 deploy/rename_nics.py (limited to 'deploy/rename_nics.py') diff --git a/deploy/rename_nics.py b/deploy/rename_nics.py new file mode 100644 index 00000000..ef52d63a --- /dev/null +++ b/deploy/rename_nics.py @@ -0,0 +1,29 @@ +import os +import sys +import yaml + +def exec_cmd(cmd): + print cmd + os.system(cmd) + +def rename_nics(dha_info, rsa_file, compass_ip): + for host in dha_info['hosts']: + host_name = host['name'] + interfaces = host.get('interfaces') + if interfaces: + for interface in interfaces: + nic_name = interfaces.keys()[0] + mac = interfaces.values()[0] + + exec_cmd("ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null \ + -i %s root@%s \ + 'cobbler system edit --name=%s --interface=%s --mac=%s'" \ + % (rsa_file, compass_ip, host_name, nic_name, mac)) + + exec_cmd("ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null \ + -i %s root@%s \ + 'cobbler sync'" % (rsa_file, compass_ip)) + +if __name__ == "__main__": + assert(len(sys.argv) == 4) + rename_nics(yaml.load(open(sys.argv[1])), sys.argv[2], sys.argv[3]) -- cgit 1.2.3-korg