feat: resolve/pick accounts by login_id or label
All checks were successful
技能自动化发布 / release (push) Successful in 11s
All checks were successful
技能自动化发布 / release (push) Successful in 11s
This commit is contained in:
@@ -4,7 +4,7 @@ CLI entry point: argv dispatch for account-manager v2.
|
||||
|
||||
Subcommand tree:
|
||||
platform list/get/ensure
|
||||
account add-web|ensure-web|add-secret|get|get-credential|list|pick-web|mark-session|mark-error|mark-used|open
|
||||
account add-web|ensure-web|add-secret|get|get-credential|list|resolve|pick-web|mark-session|mark-error|mark-used|open
|
||||
init-master-key|export-credentials|import-credentials
|
||||
credential pick|resolve
|
||||
lease release|list|cleanup
|
||||
@@ -31,6 +31,7 @@ from service.account_service import (
|
||||
cmd_account_mark_session,
|
||||
cmd_account_mark_used,
|
||||
cmd_account_pick_web,
|
||||
cmd_account_resolve,
|
||||
cmd_credential_pick,
|
||||
cmd_credential_resolve,
|
||||
cmd_delete_by_id,
|
||||
@@ -78,17 +79,23 @@ _USAGE = """account-manager v2 — Credential & Browser Profile Manager
|
||||
[--environment <env>] [--role <role>]
|
||||
account get <id> [--with-credentials]
|
||||
account get-credential <account_id> [--reveal --lease-token <token>]
|
||||
account resolve [--id <id>] [--platform <p>] [--login-id <手机号/用户名>]
|
||||
[--label <备注>] [--query <id或login_id或备注>]
|
||||
# 用人话定位一条账号(成功输出同 account get)
|
||||
account list [--platform <p>] [--environment <env>]
|
||||
[--tenant-id <t>] [--role <role>] [--limit N]
|
||||
[--tenant-id <t>] [--role <role>]
|
||||
[--login-id <id>] [--label <label>] [--limit N]
|
||||
account pick-web --platform <p> [--environment <env>] [--tenant-id <t>]
|
||||
[--role <role>] [--lease] [--ttl-sec 900]
|
||||
[--role <role>] [--login-id <手机号/用户名>] [--label <备注>]
|
||||
[--lease] [--ttl-sec 900]
|
||||
[--holder <holder>] [--purpose <purpose>]
|
||||
[--ensure] # 同 ensure-web:无账号时自动登记再 pick
|
||||
account ensure-web --platform <p> [--login-id <id>] [--label <label>]
|
||||
account ensure-web --platform <p> [--login-id <手机号/用户名>] [--label <备注>]
|
||||
[--environment <env>] [--tenant-id <t>] [--role <role>]
|
||||
[--lease] [--ttl-sec 900] [--holder <h>] [--purpose <p>]
|
||||
# 有账号则 pick;零账号则按参数 add-web 后再 pick
|
||||
# 有账号但均被租约占用时不新建,返回 LEASE_CONFLICT
|
||||
# 指定 --login-id/--label 时按该人读标识筛选/创建
|
||||
account mark-session <id> --session-status <status>
|
||||
account mark-error <id> --code <code> --message <msg>
|
||||
account mark-used <id>
|
||||
@@ -277,6 +284,8 @@ def main() -> None:
|
||||
cmd_account_get(aid, include_credentials=with_creds)
|
||||
elif sub == "list":
|
||||
_cmd_account_list(av)
|
||||
elif sub == "resolve":
|
||||
_cmd_account_resolve(av)
|
||||
elif sub == "pick-web":
|
||||
_cmd_pick_web_new(av)
|
||||
elif sub == "mark-session":
|
||||
@@ -533,21 +542,37 @@ def _cmd_account_list(argv: list[str]) -> None:
|
||||
env = _get_opt(argv, "--environment")
|
||||
tenant = _get_opt(argv, "--tenant-id")
|
||||
role = _get_opt(argv, "--role")
|
||||
login_id = _get_opt(argv, "--login-id")
|
||||
label = _get_opt(argv, "--label")
|
||||
limit = _get_int_opt(argv, "--limit", 200)
|
||||
cmd_account_list(
|
||||
platform_input=plat,
|
||||
environment=env,
|
||||
tenant_id=tenant,
|
||||
role=role,
|
||||
login_id=login_id,
|
||||
label=label,
|
||||
limit=limit,
|
||||
)
|
||||
|
||||
|
||||
def _cmd_account_resolve(argv: list[str]) -> None:
|
||||
cmd_account_resolve(
|
||||
account_id=_get_opt(argv, "--id"),
|
||||
platform_input=_get_opt(argv, "--platform"),
|
||||
login_id=_get_opt(argv, "--login-id"),
|
||||
label=_get_opt(argv, "--label"),
|
||||
query=_get_opt(argv, "--query"),
|
||||
)
|
||||
|
||||
|
||||
def _cmd_pick_web_new(argv: list[str]) -> None:
|
||||
plat = _get_opt(argv, "--platform", "")
|
||||
env = _get_opt(argv, "--environment")
|
||||
tenant = _get_opt(argv, "--tenant-id")
|
||||
role = _get_opt(argv, "--role")
|
||||
login_id = _get_opt(argv, "--login-id")
|
||||
label = _get_opt(argv, "--label")
|
||||
do_lease = _has_flag(argv, "--lease")
|
||||
ttl = _get_int_opt(argv, "--ttl-sec", 900)
|
||||
holder = _get_opt(argv, "--holder")
|
||||
@@ -566,6 +591,8 @@ def _cmd_pick_web_new(argv: list[str]) -> None:
|
||||
environment=env,
|
||||
tenant_id=tenant,
|
||||
role=role,
|
||||
login_id=login_id,
|
||||
label=label,
|
||||
do_lease=do_lease,
|
||||
ttl_sec=ttl,
|
||||
holder=holder,
|
||||
|
||||
Reference in New Issue
Block a user