def __init__(self): self.CREDS_FILE = ''.join( [''.join([os.getcwd(), '/']), 'creds_file.csv']) self.db_user_id = config.CONF.DATABASE_CRED.db_user_id self.db_pwd = config.CONF.DATABASE_CRED.db_pwd self.db_name = config.CONF.DATABASE_CRED.db_name self.db_obj = DB_Connection() self.logfile = os.getcwd() + '/log/backup_restore_log.log' log_level = logging.INFO if config.CONF.default.debug: log_level = logging.DEBUG self.init_log(self.logfile, log_level, 'backup_restore') self.log = logging.getLogger('backup_restore') self.cer_pkey, self.cer_path, self.cer_base_path = self.fetch_cert_details( )
def __init__(self): self.db_user_id = config.CONF.DATABASE_CRED.db_user_id self.db_pwd = config.CONF.DATABASE_CRED.db_pwd self.db_name = config.CONF.DATABASE_CRED.db_name self.db_obj = DB_Connection()
def fetch_t1_timestamp_data(): db_user_id = config.CONF.DATABASE_CRED.db_user_id db_pwd = config.CONF.DATABASE_CRED.db_pwd db_name = config.CONF.DATABASE_CRED.db_name db_obj = DB_Connection() client = db_obj.connect_host() switch_query = 'sudo mysql -e "select physical_switches.uuid , physical_switches.name from physical_switches;" -u %s -p%s %s' % ( db_user_id, db_pwd, db_name) sw_port_query = 'sudo mysql -e "select physical_switches.uuid , physical_switches.name , physical_ports.uuid, physical_ports.name from physical_switches join physical_ports ON physical_switches.uuid = physical_ports.physical_switch_id;" -u %s -p%s %s' % ( db_user_id, db_pwd, db_name) sw_port_vlan_query = 'sudo mysql -e "select physical_switches.uuid , physical_switches.name , physical_ports.uuid, physical_ports.name, vlan_bindings.vlan from physical_switches join physical_ports ON physical_switches.uuid = physical_ports.physical_switch_id JOIN vlan_bindings ON physical_ports.uuid = vlan_bindings.port_uuid;" -u %s -p%s %s' % ( db_user_id, db_pwd, db_name) ucast_query = 'sudo mysql -e "select ucast_macs_remotes.uuid,ucast_macs_remotes.mac,ucast_macs_remotes.logical_switch_id, ucast_macs_remotes.ip_address from ucast_macs_remotes;" -u %s -p%s %s' % ( db_user_id, db_pwd, db_name) ls_key_name_dict = {} ls_id_dict = {} ls_data_query = 'sudo mysql -e "select logical_switches.key ,logical_switches.name, logical_switches.uuid from logical_switches;" -u %s -p%s %s' % ( db_user_id, db_pwd, db_name) try: stdin, stdout, stderr = client.exec_command(ls_data_query) for line in stdout: if 'key' in line: continue key = str(line.replace('\n', '').split('\t')[0]) ls_key_name = str(line.split('\t')[1]) ls_key_uuid = str(line.split('\t')[2]) ls_key_name_dict[key] = ls_key_name ls_id_dict[ls_key_uuid] = ls_key_name except MySQLdb.Error as ex: print ex ucast_data_dict = {} try: stdin, stdout, stderr = client.exec_command(ucast_query) for line in stdout: if 'uuid' in line: continue ucast_detail_list = [] ucast_uuid = str(line.replace('\n', '').split('\t')[0]) mac = str(line.split('\t')[1]) logical_switch_id = str(line.split('\t')[2]) ip_address = str(line.split('\t')[3]) ucast_detail_list.append(mac) ucast_detail_list.append(logical_switch_id) ucast_detail_list.append(ip_address) ucast_data_dict[ucast_uuid] = ucast_detail_list #print "ucast.....",ucast_data_dict except MySQLdb.Error as ex: print ex spv = {} prt_id_name_dict = {} #spv_vlan_list = [] try: stdin, stdout, stderr = client.exec_command(sw_port_vlan_query) for line in stdout: if 'uuid' in line: continue vlan_id = str(line.replace('\n', '').split('\t')[4]) sw_id = str(line.split('\t')[1]) port_id = str(line.split('\t')[2]) port_name = str(line.split('\t')[3]) prt_id_name_dict[port_id] = port_name # print port_name # import pdb; pdb.set_trace() if spv.setdefault(sw_id, {}).has_key(port_id): spv.setdefault(sw_id, {})[port_id].append(vlan_id) else: spv.setdefault(sw_id, {})[port_id] = [vlan_id] # print spv except MySQLdb.Error as ex: print ex port_list = [] sw_port_dict = {} try: stdin, stdout, stderr = client.exec_command(sw_port_query) for line in stdout: if 'uuid' in line: continue sw_id = str(line.split('\t')[1]) port_id = str(line.split('\t')[2]) port_name = str(line.split('\t')[3]) prt_id_name_dict[port_id] = port_name sw_port_dict.setdefault(sw_id, []).append(port_id) # print sw_port_dict except MySQLdb.Error as ex: print ex sw_list = [] try: stdin, stdout, stderr = client.exec_command(switch_query) for line in stdout: uuid = str(line.split()[1]) sw_list.append(uuid) sw_list.pop(0) # print sw_list except MySQLdb.Error as ex: print ex for sw in sw_list: if sw not in sw_port_dict.keys(): sw_port_dict.setdefault(sw, []) # print sw_port_dict for sw in sw_port_dict.keys(): if sw not in spv.keys(): temp = {} for value in sw_port_dict[sw]: temp[value] = [] spv[sw] = temp else: for value in sw_port_dict[sw]: port = spv[sw] if value not in port.keys(): port[value] = [] return spv, prt_id_name_dict, ls_key_name_dict, ucast_data_dict, ls_id_dict