test/framework/scripts/compute_resource_scenario.py

43 lines
1.4 KiB
Python
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# framework/scripts/compute_resource_scenario.py
import time
from framework.config.settings import Config
from framework.core.logger import get_logger
logger = get_logger("ComputeResourceScenario")
def run_dev_machine_lifecycle(dm):
"""
业务逻辑:开发机申请与验证流程
"""
logger.info("--- 开启【开发机】业务总线巡检 ---")
dm.navigate_to()
# 1. 状态巡检
status = dm.get_first_machine_status()
if status == "Empty":
logger.info("当前列表为空,准备首次申请...")
# 2. 执行申请全过程
dm.open_apply_dialog()
dm.fill_name(Config.DEV_MACHINE_NAME)
dm.select_sku(Config.DEV_MACHINE_SKU)
dm.select_image("CUDA")
dm.fill_ssh_key(Config.SSH_PUBLIC_KEY)
dm.fill_system_disk(Config.SYSTEM_DISK)
dm.submit_application()
# 3. 深度巡检:等待部署 -> 关机 -> 删除
name = Config.DEV_MACHINE_NAME
logger.info(f"⌛ 正在等待开发机 {name} 部署就绪...")
# 注意PageObject 内部的 wait_for_status 会处理具体轮询
# 这里给一个基础 10s 避免页面刚刷新时 DOM 状态不稳定
time.sleep(10)
# 执行业务链路巡检
dm.stop_machine(name)
dm.delete_machine(name)
logger.info("✅ 开发机【全生命周期】业务巡检圆满完成,环境已清理")
return True