fjddlZddlZddlZddlmZddlmZddlmZddl m Z ddl m Z m Z dZdZd Zejd Zd efd Zdd ZddZdS)N) get_client) XRayError) read_sys_id)initialize_manager)remove_xray_inisclear_dbm_filez*/usr/share/alt-php-xray/running_tasks_listz /usr/share/alt-php-xray/migratedz#/var/log/alt-php-xray/migration.logmigratereturnctdt} |}td|n#t $rt cYSwxYwd|dD}td|ttd5}| d |d d d n #1swxYwY|S) z9 Get list of running tasks and save it into file lists) system_idzLoaded tasks: %sc6g|]}|ddk|dS)statusrunningtracing_task_id).0ts S/opt/cloudlinux/venv/lib64/python3.11/site-packages/xray/reconfiguration/migrate.py z!running_tasks..&s6))){i''"#'''resultzRunning tasks: %sw N) rr get_task_listloggerinforlistopenstoragewritejoin)clienttasksrfs r running_tasksr&s3!Z ;== 9 9 9F$$&& &.... vv ))U8_)))G KK#W--- gs  $q  '""###$$$$$$$$$$$$$$$ Ns#/AA21A27)C,,C03C0cBtt}tD]X}td| ||n#t $rYnwxYwtjdYttdS)zO Stop running tasks. Try to remove ini and clear dbm storage after zStopping task %sN) rrr&rrstoprtimesleeprr)managertasks r stop_tasksr..s !//G &---  LL        D  1 sA A+*A+ctt} tt5}d|dD}dddn #1swxYwYn#t $rYdSwxYwtd|tj t|D]X}td| | |n#t$rYnwxYwtjdYtjttjtjztjztjzd}tj|dS)cg|]}||Srr)rls rrz"continue_tasks..Es:::1:Q:::rrNzSaved task list loaded: %szContinue task %sr(i)rrrr readsplitOSErrorrrosunlink continue_rr*r+markerO_CREATO_WRONLYO_TRUNC O_NOFOLLOWclose)r,r%r$r-fds rcontinue_tasksr@@s //G ']] ;a::t 4 4:::E ; ; ; ; ; ; ; ; ; ; ; ; ; ; ;  KK,e444Ig &---    d # # # #    D  1 bk1BJ>NPU V VBHRLLLLLsFA;2A/# A;/A33A;6A37A;; B B  C66 DD)r N)loggingr6r*xray.apiclientrxray.internal.exceptionsrxray.internal.utilsr xray.managerr$xray.reconfiguration.system_id_shiftrrr r9 migration_log getLoggerrrr&r.r@rrrrIs %%%%%%......++++++++++++ 7 +5  9 % %t$$r