async def transfer_remote_file_monitor(cfg, ssh, ftp): cmd = 'mkdir -p {0}'.format(cfg['msg']['script_path']) res = ssh.exec(cmd) if not res['status']: return {'code': -1, 'msg': 'failure!'} f_local, f_remote = gen_transfer_file(cfg, 'gather', cfg['msg']['script_file']) if not ftp.transfer(f_local, f_remote): return {'code': -1, 'msg': 'failure!'} f_local, f_remote = gen_transfer_file(cfg, 'monitor', 'db_monitor.sh') if not ftp.transfer(f_local, f_remote): return {'code': -1, 'msg': 'failure!'} return {'code': 200, 'msg': 'success!'}
async def transfer_remote_file_minio(v_tag): cfg = await get_minio_config(v_tag) if cfg['code']!=200: return cfg cmd = 'mkdir -p {0}'.format(cfg['msg']['script_path']) if not exec_ssh_cmd(cfg, cmd)['status']: return {'code': -1, 'msg': 'failure!'} f_local, f_remote = gen_transfer_file(cfg, 'minio', cfg['msg']['script_file']) if not ftp_transfer_file(cfg, f_local, f_remote): return {'code': -1, 'msg': 'failure!'} f_local, f_remote = gen_transfer_file(cfg, 'minio', 'minio_sync.sh') if not ftp_transfer_file(cfg, f_local, f_remote): return {'code': -1, 'msg': 'failure!'} return {'code': 200, 'msg': 'success!'}
async def transfer_datax_remote_file_sync(cfg, ssh, ftp): cmd = 'mkdir -p {0}'.format(cfg['msg']['script_path']) res = ssh.exec(cmd) if not res['status']: return {'code': -1, 'msg': 'failure!'} # write json file f_datax_full, f_datax_incr = await write_datax_sync_TempleteFile( cfg['msg']['id']) # send full json file f_local, f_remote = gen_datax_transfer_file(cfg, f_datax_full) if not ftp.transfer(f_local, f_remote): return {'code': -1, 'msg': 'failure!'} # send incr json file f_local, f_remote = gen_datax_transfer_file(cfg, f_datax_incr) if not ftp.transfer(f_local, f_remote): return {'code': -1, 'msg': 'failure!'} # replace and send datax_sync.sh file f_local, f_remote = gen_transfer_file(cfg, 'datax', 'datax_sync.sh') if not ftp.transfer(f_local, f_remote): return {'code': -1, 'msg': 'failure!'} # replace and send datax_sync.py file f_local, f_remote = gen_transfer_file(cfg, 'datax', 'datax_sync.py') if not ftp.transfer(f_local, f_remote): return {'code': -1, 'msg': 'failure!'} # replace and send datax_sync_es.py file f_local, f_remote = gen_transfer_file(cfg, 'datax', 'datax_sync_es.py') if not ftp.transfer(f_local, f_remote): return {'code': -1, 'msg': 'failure!'} # replace and send datax_sync_doris.py file f_local, f_remote = gen_transfer_file(cfg, 'datax', 'datax_sync_doris.py') if not ftp.transfer(f_local, f_remote): return {'code': -1, 'msg': 'failure!'} # replace repstr.sh file f_local, f_remote = gen_transfer_file(cfg, 'datax', 'repstr.sh') if not ftp.transfer(f_local, f_remote): return {'code': -1, 'msg': 'failure!'} return {'code': 200, 'msg': 'success!'}
async def transfer_remote_file_slow(cfg,ssh,ftp): if cfg['msg']['server_os'] != 'Windows': res = ssh.exec('mkdir -p {0}'.format(cfg['msg']['script_path'])) if not res['status']: return {'code': -1, 'msg': 'failure!'} else: ssh.exec_win('mkdir {0}'.format(cfg['msg']['script_path'])) ssh.exec_win('del {}'.format(cfg['msg']['script_file'])) ssh.exec_win('del {}'.format('gather_slow.bat')) f_local, f_remote = gen_transfer_file(cfg, 'gather', cfg['msg']['script_file']) if not ftp.transfer(f_local, f_remote): return {'code': -1, 'msg': 'failure!'} if cfg['msg']['server_os'] != 'Windows': f_local, f_remote = gen_transfer_file(cfg, 'gather', 'gather_slow.sh') if not ftp.transfer(f_local, f_remote): return {'code': -1, 'msg': 'failure!'} else: f_local, f_remote = gen_transfer_file(cfg, 'gather', 'gather_slow.bat') if not ftp.transfer(f_local, f_remote): return {'code': -1, 'msg': 'failure!'} return {'code': 200, 'msg': 'success!'}
async def transfer_remote_file_inst(v_inst_id): cfg = await get_db_inst_config(v_inst_id) if cfg['code'] != 200: return cfg ssh = ssh_helper(cfg) ftp = ftp_helper(cfg) cmd = 'mkdir -p {0}'.format(cfg['msg']['script_path']) res = ssh.exec(cmd) if not res['status']: return {'code': -1, 'msg': 'failure!'} f_local, f_remote = gen_transfer_file(cfg, 'instance', cfg['msg']['script_file']) if not ftp.transfer(f_local, f_remote): return {'code': -1, 'msg': 'failure!'} f_local, f_remote = gen_transfer_file(cfg, 'instance', 'db_creator.sh') if not ftp.transfer(f_local, f_remote): return {'code': -1, 'msg': 'failure!'} ssh.close() ftp.close() return {'code': 200, 'msg': 'success!'}
def transfer_remote_file_sync(cfg, ssh, ftp): res = ssh.exec('mkdir -p {0}'.format(cfg['msg']['script_path'])) if not res['status']: return {'code': -1, 'msg': 'failure!'} f_local, f_remote = gen_transfer_file(cfg, 'syncer', cfg['msg']['script_file']) if not ftp.transfer(f_local, f_remote): return {'code': -1, 'msg': 'failure!'} f_local, f_remote = gen_transfer_file(cfg, 'syncer', 'db_sync.sh') if not ftp.transfer(f_local, f_remote): return {'code': -1, 'msg': 'failure!'} f_local, f_remote = gen_transfer_file(cfg, 'syncer', 'db_agent.sh') if not ftp.transfer(f_local, f_remote): return {'code': -1, 'msg': 'failure!'} f_local, f_remote = gen_transfer_file(cfg, 'syncer', 'db_agent.py') if not ftp.transfer(f_local, f_remote): return {'code': -1, 'msg': 'failure!'} # f_local, f_remote = gen_transfer_file(cfg, 'syncer', 'mysql2clickhouse_executer.py') # if not ftp.transfer(f_local, f_remote): # return {'code': -1, 'msg': 'failure!'} f_local, f_remote = gen_transfer_file(cfg, 'syncer', 'mysql2clickhouse_clear.py') if not ftp.transfer(f_local, f_remote): return {'code': -1, 'msg': 'failure!'} f_local, f_remote = gen_transfer_file(cfg, 'syncer', 'mysql2mysql_real_clear.py') if not ftp.transfer(f_local, f_remote): return {'code': -1, 'msg': 'failure!'} return {'code': 200, 'msg': 'success!'}