feat(adapters): 接入 CloudCone/Zeabur/Dynadot/新网/Agnes 五个平台
线上平台列表里 cloudcone、zeabur、xinwang、dynadot、agnes 的 sdk_type 仍为空, 平台卡片只能显示「未对接」,用户无法同步。按各自真实 API 能力补齐: - CloudCone:实例清单 + 开机/关机/重启;无公开账单接口,不声明余额与续费 - Zeabur:服务器清单 + 重启;毫核/MB 归一化为核/GB,未采集时不伪造规格 - Dynadot:域名清单(含到期日)+ 账户余额;set_dns2 位置参数无法安全 CRUD - 新网:代理 API 按域名逐个查到期日;无列表接口,需在账号里填 domains 清单 - Agnes:/models 校验 Key;无余额接口,如实标记不支持 配套改动: - _align_preset_providers 为库中为空的 sdk_type 回填种子值(启动即生效), 避免新适配器上线后线上仍停留在「未对接」 - 适配器可声明 plain_config,代理号/域名等非密钥字段前端按明文输入 - PRESET_PROVIDERS 五条记录填上对应 sdk_type 测试:445 passed(新增 tests/test_platform_adapters.py),vitest 62 passed。
This commit is contained in:
@@ -29,13 +29,17 @@ def load_all() -> None:
|
||||
ai,
|
||||
aliyun,
|
||||
aws,
|
||||
cloudcone,
|
||||
cloudflare,
|
||||
digitalocean,
|
||||
dynadot,
|
||||
linode,
|
||||
namesilo,
|
||||
tencent,
|
||||
vultr,
|
||||
whmcs,
|
||||
xinnet,
|
||||
zeabur,
|
||||
)
|
||||
|
||||
|
||||
@@ -84,6 +88,7 @@ def adapter_meta() -> list:
|
||||
"class": cls.__name__,
|
||||
"sdk_types": getattr(cls, "sdk_types", [sdk_type]),
|
||||
"required_config": getattr(cls, "required_config", []),
|
||||
"plain_config": getattr(cls, "plain_config", []),
|
||||
}
|
||||
)
|
||||
return result
|
||||
|
||||
Reference in New Issue
Block a user