跳到主要内容

变更

在 CloudDM Team 中变更是一次 SQL 发布的最小组成单位,本文档主要介绍变更的相关操作。

变更列表

  1. 登录 CloudDM Team 控制台。
  2. 点击顶部 项目 进入,然后在具体的项目上点击 进入 打开项目详情页。
  3. 在项目详情页发布流卡片下方展示的列表为变更列表

变更详情

在 CloudDM Team 中变更是数据库 CI/CD 的最小单位,一个变更的完整生命周期包括:

w20_h20 初始化 > w20_h20 SQL 检查 > w20_h20 审批 > w20_h20 执行

  • w20_h20 初始化:从源端源码仓库中获取 SQL 变更内容并与已有快照做对比,确定需要发布的 SQL 内容。
    在变更详情页面的 SQL变更内容 下面展示本次变更的具体内容,可以使用 结果Diff 两种方式展示。
    • 结果模式:将可能存在的多个增量变更 SQL 文件进行汇总展示,并且标记出具体来源文件。
    • Diff 模式:展示每一个 SQL 文件的变更前后的状态,以 Diff 的形式展示出来。
  • w20_h20 SQL 检查:在该阶段会使用目标端数据源环境上指定的安全规范(查询设置 > 安全规范 > 启用规范)来检查发布的 SQL 是否符合规范。
    • 如果检查出 SQL 不满足规范要求,会在 SQL 审核 标签下展示具体的 SQL 和不满足的具体规范项。
    • 根据项目的 发布流程配置,如果需要人工确认,则需要在变更详情页的右上角进行确认操作,确认后会进入下一个阶段。
  • w20_h20 审批:该阶段变更会使用目标端数据源环境上指定的 w20_h20 变更流程发起工单审批。
    • 工单审批的流程和审批结果可以在 审批流程 看到。
    • 审批流程标签下可以通过关联链接快速跳转到对应的工单中,查看工单详细流程。
    • CloudDM Team 变更审批支持多种审批流程引擎详细,详情请参考 工单设置
  • w20_h20 执行:根据项目的 发布流程配置
    • 如果项目配置了 自动 发布,则当审批通过后,CloudDM Team 会在执行阶段自动按照预先设置执行变更中的 SQL。
    • 如果项目配置了 手动 发布,则需要人工确认如何执行 SQL。可选的执行方式有:
      • 手动:系统不会执行这些 SQL,需要人工方式在数据库中手动处理。当点击 确认并关闭 后,系统默认这些 SQL 已经被执行。
      • 立即:系统会立即开始执行变更 SQL。
      • 定时:系统会在指定的时间执行变更 SQL。
信息

图标颜色变化含义:

  • 图标为 黑色 表示该阶段尚未开始。
  • 图标为 绿色 表示已完成该阶段。
  • 图标为 蓝色 表示变更正在对应的阶段进行处理中。
  • 图标为 红色 表示变更在该阶段发生了错误或者异常需要进行处理。

SQL 审核确认

触发该操作的条件:请参考 发布流程配置 中 SQL 检查阶段配置。

如果需要确认操作,则按照下列步骤操作。

  1. 在变更详情页中点击 SQL 审核 选项卡。
  2. 点击顶部 确认 按钮确认 SQL 的审核结果。如果您对 SQL 审核结果不满意则无需做任何操作。
信息

修改问题 SQL 并递交到仓库后,

  • 在配置了 WebHook 的情况下 ClouDM Team 会自动感知仓库变化并重新获取源码进行 SQL 检查。
  • 或者通过其他方式 触发变更

重试变更

当变更出现错误时,可以在变更详情页的右上角通过 重试 按钮来尝试恢复。
除了遇到异常情况可以重试外,在审批阶段,可以通过 重试 操作重新发起已经被拒绝的审批流程。

变更执行

如果项目的 发布流程配置 中执行阶段配置了 手动,则在该阶段会暂停变更,等待用户确认执行方式。在用户确认执行方式后才正式进入执行阶段。

  • 执行过程中用户可以查看每一条待执行的 SQL 语句及执行结果和执行日志信息。
  • 若存在某些 SQL 语句需要人工干预,可以在人为处理后通过 跳过 功能来继续后续 SQL 的执行。
信息
  • 在变更开始执行之前(例:执行方式为手动,尚未确定执行方式),如果仓库发生了新的变更,则会将变更的执行阶段回退到最开始。
  • 若变更已经进入 SQL 执行,如果仓库发生了新的变更,新触发的变更将会以一个错误的形式被记录到变更列表中。后续通过手动触发变更来重新发起变更。