功能请求:支持通过 tccli 提交和查询 DMC SQL 变更工单

Aperta
#142 0 commenti 1 reazione 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
5/5
Tempo stimato
Più di una settimana
Idoneità per principianti
25/100
Tipo di issue
Funzionalità
Chiarezza
Abbastanza chiara
Stato di attività
Attiva
Stack tecnologico
mysql, python, sql
Ambito
cli, cloud, databases

Direzione di ricerca

Start by checking products.md and the generated tccli service list to confirm whether any dmc service already exists. Then verify from Tencent Cloud documentation whether CreateSQLModifyOrder, CreateOnlineDDLOrder, and DescribeSQLWorkOrder are public APIs with an endpoint, version, request schema, and CAM permissions. If they are public, the work is to add the service and command definitions plus a query path; if not, record that official support is unavailable. Done means the API surface is confirmed and the next implementation step is unambiguous.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

需求场景

希望在开发工具或 CI/CD 流程中,通过命令行向腾讯云数据库管理 DMC 提交数据库表结构和数据变更工单,沿用 DMC 现有的 SQL 检查、审批及执行流程。

目标数据库包括 TDSQL-C MySQL。典型操作包括:

  • DDL:新增或修改表字段、创建索引等。
  • DML:提交 INSERT、UPDATE、DELETE 等数据变更。
  • 提交后获取工单 ID,查询 SQL 检查结果、审批状态和执行结果。

这里指的是腾讯云 DMC(控制台域名为 dms.cloud.tencent.com),不是阿里云 DMS。核心诉求是提交变更工单,而不是通过 CLI 直接执行 SQL,也不要求绕过或自动批准既有审批流程。

当前发现

本机 tccli 3.1.172.1 的服务列表中没有 dmc;检索当前仓库的 products.md 也未发现该服务。

但腾讯云官方文档已经列出了相关操作:

操作 名称
创建 SQL 变更工单 CreateSQLModifyOrder
创建无锁 DDL 变更工单 CreateOnlineDDLOrder
查询 SQL 变更工单详情 DescribeSQLWorkOrder
查询我的申请工单 DescribeApplyWorkOrderList

参考:

这些文档能确认操作名称及权限信息,但我们尚未找到完整的公开调用参数、API 版本和鉴权说明,因此还无法判断它们是否已向外部调用方开放。

期望支持

  1. 通过 tccli 创建 SQL 变更工单,支持从本地 SQL 文件或 JSON 文件提供内容,以及指定目标实例/数据库、变更说明、执行方式等工单参数。
  2. 返回便于脚本处理的工单 ID,并支持查询工单状态和检查/执行结果。
  3. 提交与审批、执行保持明确区分;提交者可以选择审批后手动执行,并继续遵守 DMC 的权限和规则模板。
  4. 优先复用 tccli 已有的 profile、SecretId/SecretKey 或临时凭证,不依赖复制浏览器 Cookie。

希望维护者确认

  • 上述 DMC 工单操作目前是否支持通过公开云 API 调用?是否需要申请白名单或开通特定能力?
  • 如果支持,能否提供 endpoint、API version、请求/响应 schema、最小 CAM 权限及调用示例?
  • 是否计划将 DMC 纳入 tccli / SDK?如果暂不支持,是否有官方推荐的自动化提交工单方式?
Lingua principale
Python
Stelle
136
Fork
33
Merge medio
8g 1h
PR unite (30g)
1

Preparare l'ambiente

  • Include un Dockerfile o un file Docker Compose
  • Nessun modello di pull request
  • Nessuna guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di TencentCloud/tencentcloud-cli

Tutte le issue di TencentCloud/tencentcloud-cli

Issue simili

Altre issue su Python

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.