Zadig 如何与飞书项目、IM、审批协同

先进团队,全套生产力组合!Zadig 深度融合飞书项目管理、审批流、IM 通知、机器人等协作套件,提升团队效率与协作愉悦感。

在现代企业中,高效的团队协作是成功的关键。飞书作为新一代的高效办公工具,已经成为许多先进团队的首选。为了进一步提高发布的准确性和质量,Zadig 通过与飞书的项目管理、审批、即时通讯(IM)通知和机器人等协作套件,实现了从需求提出到产品发布的全流程管理,为企业提供了一站式的高效协作解决方案。

# 配置飞书套件与 Zadig

本文将通过一个 demo 项目,详细介绍如何在 Zadig 中配置飞书套件,并结合真实的产品研发场景,展示如何实现更高效的工作方式。

产品经理根据项目上线目标,制定了版本发布计划,并在飞书中建立了相应的任务和发布跟踪工作项,以便跟进项目进度。

  • 任务:用于记录需求拆解完毕后,进入到研发环节的一系列待开发、待修复事项
  • 发布跟踪:用于跟踪版本发布计划,包含版本关联的任务清单、计划发布日期等信息

任务和发布跟踪的状态流转如下:

# 管理员如何配置

管理员(比如:运维工程师)在 Zadig 中集成飞书套件,实现研发、测试、运维日常协同合作所需的工程基础配置:包括不同角色所需要的环境和工作流。

# 集成飞书套件

  1. 在 Zadig 中集成飞书项目,参考文档:飞书项目集成 (opens new window)

  1. 在 Zadig 中集成飞书审批应用,参考文档:飞书审批应用集成 (opens new window)

# 配置环境

平台(运维)工程师在 Zadig 中准备好目标协作环境,具体配置参考:

环境描述 对应代码 场景描述
dev 开发环境 develop 分支 + MR(feature 分支向 develop 分支提交) 需求实现后,在 dev 环境部署生效并自测,自测没问题后提测
sit 日常集成测试验证环境 develop 分支 + MR(feature 分支向 develop 分支提交) 需求研发完毕后,可以基于代码变更在 sit 环境中对需求进行测试验证,验证通过后合并 MR
uat 预发布、用户验收环境 main 分支 + MR(develop 分支向 main 分支提交) 当版本中规划任务实现完毕且验收通过后,基于主干分支 + MR 发布 uat 环境进行集成验证,验收通过后及时合并代码。 用于生产环境发布前验收测试。
prod 生产环境 main 分支 生产环境管理,prod 环境的变更需要经过严格的审批

# 配置工作流

平台(运维)工程师在 Zadig 中准备好目标协作工作流,具体配置参考:

面向角色 功能描述 工作流名称样例 包含步骤
研发工程师 日常更新开发环境 workflow-dev 变更飞书任务工作项状态(未开始 -> 进行中) -> 构建 -> 部署 -> 自动化测试 -> 飞书 IM 通知
测试工程师 日常更新测试环境 workflow-sit 构建 -> 部署 sit 环境 -> 自动化测试 -> 变更飞书任务工作项状态(待测试 -> 待发布)
更新集成测试环境 workflow-uat 构建 -> 部署 uat 环境 -> 自动化测试 -> 变更飞书发布工作项状态(未开始 -> 待发布)-> 飞书 IM 通知
发布工程师 更新生产环境 workflow-prod 飞书审批 -> 分批次灰度部署 prod 环境 -> 自动化测试 -> 变更飞书发布工作项状态(待发布 -> 关闭)-> 飞书 IM 通知

飞书项目状态变更、飞书审批及飞书 IM 通知的配置步骤如下。

# 配置飞书项目状态变更

将飞书项目飞书工作项状态变更 编排到工作流中,即可完成项目状态自动变更与工作流的关联配置。以 dev 工作流为例,其他工作流的配置类似,这里不再赘述。

操作步骤:编辑 dev 工作流 -> 增加提测阶段 -> 添加飞书工作项状态变更任务 -> 填写任务配置后保存。

具体配置信息可参考:

  • 任务名称:根据实际语义配置,比如:request-for-test
  • 空间:即飞书项目中的空间
  • 工作项类型:即飞书项目中具体的工作项

飞书项目空间和工作项概念的更多介绍可参考文档:飞书项目介绍 (opens new window)

# 配置飞书审批

以 prod 工作流示例,编辑工作流, 在灰度发布阶段中开启人工审批并配置审批流,参考文档:飞书审批 (opens new window)

# 配置飞书 IM 通知

编辑工作流,添加飞书通知,实现将执行状态通知到飞书中,参考文档:飞书 IM 通知 (opens new window)

# 团队敏捷协同场景

以下场景涵盖研发过程中涉及到的独立开发、多方联调、开发和测试协同、回归测试验证、正式发布上线等主要协作过程,通过 Zadig 工作流自动化触发飞书工作项的状态流转,IM 自动通知,飞书审批流,实现高效的自动化协作。

# 开发独立自测场景

自动触发飞书任务状态变更:未开始 -> 进行中

执行 dev 工作流,选择对应的工作项、目标状态、服务、代码变更 PR,在工作流执行过程中工程师可异步处理其他工作任务,执行完毕后会及时通知环境部署情况。

# 多个开发联调协作场景

自动触发飞书任务状态变更:未开始 -> 进行中

对于多人协同合作的任务,比如涉及到前后端或者多个服务同时变更时,在代码变更提交后执行 dev 工作流,选择飞书工作项以及对应的多个服务和 PR 即可。

# 功能测试验证场景

自动触发飞书任务状态变更:待测试 -> 待发布

研发提测后,基于代码变更运行 sit 工作流更新 sit 环境,执行步骤包括:构建 -> 部署 -> 自动化测试 ->飞书工作项变更,在 sit 环境中开展日常测试验收工作:

  • 在验证通过后,对应的飞书任务状态自动调整为待发布
  • 当验收不通过时,将飞书任务状态调整为进行中,并与对应的人充分沟通,同步失败原因。
  • 在对新功能进行手动验证后,分析测试报告,并根据覆盖情况持续补充自动化用例集,以确保自动化测试套件与业务功能一同迭代,持续为团队提供价值。

# 预发布验收场景

自动触发飞书发布任务状态变更:未开始 -> 待发布

在版本正式发布前基于 main 分支 + PR 执行 uat 工作流部署 uat 环境进行预发布验收,执行步骤包括:构建 -> 部署 -> 系统集成测试 ->飞书工作项状态变更。若集成测试通过,则一键变更飞书发布任务的状态为待发布并同步通知到飞书中,便于发布委员会尽早感知验收状态,及时跟进发布。

提示:集成验证通过后,版本发布负责人及时合并代码变更至 main 分支。

# 正式发布上线场景

自动触发飞书发布任务状态变更: 待发布 -> 发布完成

当整个版本验收通过后,执行 prod 工作流执行生产发布,审批通过后方可发布,发布完成后一键变更工作项状态为发布完成。建议几种配置策略:

  1. 测试验收通过的版本才允许发布,从流程上建设发布门禁。
  2. 灵活编排蓝绿、金丝雀、分批次灰度、Istio 等发布策略,以确保发布的可靠性,可参考:发布策略 (opens new window)
  3. 工作流适当增加人工审批,以确保业务流程上的发布合规性。

# 管理员进阶场景

除了一线工程师的协作日常场景外,团队层面也需要关注一些必要的管理操作,比如统一更新环境,收集项目整体状态等。

# 项目质效可视化

飞书项目管理数据与 Zadig 工程数据打通,实现统一的指标管理可视化。

基于 Zadig 和飞书项目双向互联协作产生了全生命周期的效能数据,可以通过 Zadig 自定义效能指标,添加进度项:平均需求交付周期、需求研发交付周期。该例中数据来源于飞书项目,需少量的指标项开发。企业可定制 XOps 敏捷效能看板,通过项目评分比对快速识别短板,制定适合企业现状的效能目标,用数据驱动持续改进。

# 自动更新所有开发测试环境

发布成功后触发 Zadig 工作流一键更新环境

当一个生产版本发布完成后,可以基于主干 main 分支一键更新所有开发、测试环境到最新稳定版本,让研发和测试专注在需求实现和需求质量保证上,降低日常对于环境管理的心智负担。

工作流包含构建 -> 部署开发环境 -> 部署测试环境,配置飞书项目触发器可参考文档:飞书项目触发器 (opens new window)

Zadig 与飞书的深度融合,为团队提供了从开发到发布的全流程协作支持。通过平台工程解决了流程挑战,实现了数据的全流程沉淀,为项目管理人员提供了极大的便利。这样的协同工作模式,不仅提升了团队的工作效率,也为企业的可持续发展和成功打下了坚实的基础。

谁在用

Background Image

作为一名软件工程师,我们一直给各行各业写软件提升效率,但是软件工程本身却是非常低效,为什么市面上没有一个工具可以让研发团队不这么累,还能更好、更快地满足大客户的交付需求?我们是否能够打造一个面向开发者的交付平台呢?我们开源打造 Zadig 正是去满足这个愿望。

—— Zadig 创始人 Landy