变更
在 CloudDM Team 中变更是一次 SQL 发布的最小组成单位,本文档主要介绍变更的相关操作。
变更列表
- 登录 CloudDM Team 控制台。
- 点击顶部 项目 进入,然后在具体的项目上点击 进入 打开项目详情页。
- 在项目详情页发布流卡片下方展示的列表为变更列表。
变更详情
在 CloudDM Team 中变更是数据库 CI/CD 的最小单位,一个变更的完整生命周期包括:
初始化 >
SQL 检查 >
审批 >
执行
初始化:从源端源码仓库中获取 SQL 变更内容并与已有快照做对比,确定需要发布的 SQL 内容。
在变更详情页面的 SQL变更内容 下面展示本次变更的具体内容,可以使用 结果、Diff 两种方式展示。- 结果模式:将可能存在的多个增量变更 SQL 文件进行汇总展示,并且标记出具体来源文件。
- Diff 模式:展示每一个 SQL 文件的变更前后的状态,以 Diff 的形式展示出来。
SQL 检查:在该阶段会使用目标端数据源环境上指定的安全规范(查询设置 > 安全规范 > 启用规范)来检查发布的 SQL 是否符合规范。
- 如果检查出 SQL 不满足规范要求,会在 SQL 审核 标签下展示具体的 SQL 和不满足的具体规范项。
- 根据项目的 发布流程配置,如果需要人工确认,则需要在变更详情页的右上角进行确认操作,确认后会进入下一个阶段。
审批:该阶段变更会使用目标端数据源环境上指定的
变更流程发起工单审批。
- 工单审批的流程和审批结果可以在 审批流程 看到。
- 审批流程标签下可以通过关联链接快速跳转到对应的工单中,查看工单详细流程。
- CloudDM Team 变更审批支持多种审批流程引擎详细,详情请参考 工单设置。
执行:根据项目的 发布流程配置:
- 如果项目配置了 自动 发布,则当审批通过后,CloudDM Team 会在执行阶段自动按照预先设置执行变更中的 SQL。
- 如果项目配置了 手动 发布,则需要人工确认如何执行 SQL。可选的执行方式有:
- 手动:系统不会执行这些 SQL,需要人工方式在数据库中手动处理。当点击 确认并关闭 后,系统默认这些 SQL 已经被执行。
- 立即:系统会立即开始执行变更 SQL。
- 定时:系统会在指定的时间执行变更 SQL。
信息
图标颜色变化含义:
- 图标为 黑色 表示该阶段尚未开始。
- 图标为 绿色 表示已完成该阶段。
- 图标为 蓝色 表示变更正在对应的阶段进行处理中。
- 图标为 红色 表示变更在该阶段发生了错误或者异常需要进行处理。
SQL 审核确认
触发该操作的条件:请参考 发布流程配置 中 SQL 检查阶段配置。
如果需要确认操作,则按照下列步骤操作。
- 在变更详情页中点击 SQL 审核 选项卡。
- 点击顶部 确认 按钮确认 SQL 的审核结果。如果您对 SQL 审核结果不满意则无需做任何操作。
信息
修改问题 SQL 并递交到仓库后,
- 在配置了 WebHook 的情况下 ClouDM Team 会自动感知仓库变化并重新获取源码进行 SQL 检查。
- 或者通过其他方式 触发变更。
重试变更
当变更出现错误时,可以在变更详情页的右上角通过 重试 按钮来尝试恢复。
除了遇到异常情况可以重试外,在审批阶段,可以通过 重试 操作重新发起已经被拒绝的审批流程。
变更执行
如果项目的 发布流程配置 中执行阶段配置了 手动,则在该阶段会暂停变更,等待用户确认执行方式。在用户确认执行方式后才正式进入执行阶段。
- 执行过程中用户可以查看每一条待执行的 SQL 语句及执行结果和执行日志信息。
- 若存在某些 SQL 语句需要人工干预,可以在人为处理后通过 跳过 功能来继续后续 SQL 的执行。
信息
- 在变更开始执行之前(例:执行方式为手动,尚未确定执行方式),如果仓库发生了新的变更,则会将变更的执行阶段回退到最开始。
- 若变更已经进入 SQL 执行,如果仓库发生了新的变更,新触发的变更将会以一个错误的形式被记录到变更列表中。后续通过手动触发变更来重新发起变更。