Fix case when the vms are deleted manually but still be attempted to be recognized by .vms info
This commit is contained in:
@@ -12,7 +12,7 @@ import psutil
|
|||||||
import requests
|
import requests
|
||||||
from tqdm import tqdm
|
from tqdm import tqdm
|
||||||
|
|
||||||
__version__ = "0.1.12"
|
__version__ = "0.1.15"
|
||||||
|
|
||||||
MAX_RETRY_TIMES = 10
|
MAX_RETRY_TIMES = 10
|
||||||
UBUNTU_ARM_URL = "https://huggingface.co/datasets/xlangai/ubuntu_arm/resolve/main/Ubuntu.zip"
|
UBUNTU_ARM_URL = "https://huggingface.co/datasets/xlangai/ubuntu_arm/resolve/main/Ubuntu.zip"
|
||||||
@@ -78,10 +78,16 @@ class VirtualMachineManager:
|
|||||||
active_pids = {p.pid for p in psutil.process_iter()}
|
active_pids = {p.pid for p in psutil.process_iter()}
|
||||||
new_lines = []
|
new_lines = []
|
||||||
vm_paths = []
|
vm_paths = []
|
||||||
|
|
||||||
with open(self.registry_path, 'r') as file:
|
with open(self.registry_path, 'r') as file:
|
||||||
lines = file.readlines()
|
lines = file.readlines()
|
||||||
for line in lines:
|
for line in lines:
|
||||||
vm_path, pid_str = line.strip().split('|')
|
vm_path, pid_str = line.strip().split('|')
|
||||||
|
if not os.path.exists(vm_path):
|
||||||
|
print(f"VM {vm_path} not found, releasing it.")
|
||||||
|
new_lines.append(f'{vm_path}|free\n')
|
||||||
|
continue
|
||||||
|
|
||||||
vm_paths.append(vm_path)
|
vm_paths.append(vm_path)
|
||||||
if pid_str == "free":
|
if pid_str == "free":
|
||||||
new_lines.append(line)
|
new_lines.append(line)
|
||||||
|
|||||||
Reference in New Issue
Block a user