测试和验证环境作为工程师的协同平面,承担着至关重要的作用。对于多人协同的团队来说,对环境的使用和权限控制是日常工作中一个避免不了的槽点:着急发布新功能做测试验证但是只有管理员才有权限操作;一个不合时宜的发布甚至会带来生产事故让企业遭受巨大损失。不同开发者对环境和业务的熟悉程度不一样,让正确的人做正确的事;设计一个适合自己团队、基于环境权限分配的自动化协作流程,就变成一件迫在眉睫的事情。
Zadig 协作模式可以很好的解决上述痛点:支持对不同的工作流和环境配置不同的使用权限,批量按需赋予给团队中不同的角色成员。
下面我们以一个场景设定,来帮助大家了解 Zadig 协作模式,如何帮助团队实现权限管理、高效自动化协作的全流程。
该案例场景实战讲解 Demo 项目的搭建、管理员如何配置、以及不同工程师视角的使用过程。
microservice-demo
项目为例,参考教程:如何使用 GitLab + Zadig 实现产品级持续交付pre-release
microservice-demo-workflow-pre-release
以上基础资源将满足从研发到交付上线的整个生命周期,以及在不同的环节团队成员的合作诉求。 一个典型的研发过程:
dev
环境进行功能开发、自测 debug、bugfix 等。日常对 dev
环境有极其频繁的变更诉求。自测完毕后,提交测试验收。qa
环境中进行集成测试。日常对 qa
环境的鲁棒性和正确性有一定的要求。pre-release
环境(预发布环境),灰度验证无误后再全量部署到生产,对 pre-release
环境有极高的权限限制。不同角色的工程师对于环境分别有不同的使用诉求和时机,而 dev
/ qa
/ pre-release
环境也分别有不同的使用目标。以下是不同角色、工作流、环境需求对照表:
针对以上场景,描述管理员如何一步步配置协作模式
配置权限前置操作
配置协作模式前需要先把项目成员添加到项目中。
进入权限
->添加成员
,并赋予 project-read-only
角色。
点击项目配置中的协作模式
,进入协作模式配置界面。
为不同角色配置协作模式
分别为各个角色配置不同的协作模式,根据实际需要分配工作流资源和环境资源
开发工程师对环境和工作流的使用诉求见下表:
为开发工程师配置协作模式的具体过程:
dev
,选择开发组成员microservice-demo-workflow-dev
工作流资源的使用权限 dev
共享资源,可以查看、配置、管理服务实例、服务调试qa
共享资源,可以查看环境、管理服务实例,用于和测试(开发)工程师协同诊断问题 dev-independent
,选择开发组成员,配置独享工作流和独享环境,配置资源回收策略:30 天 根据项目需要为测试(开发)工程师、运维工程师配置相应的协作模式 qa
、sre
,此处不赘述。
当项目成员登录 Zadig 系统访问相应项目时,系统会为开发者分配项目资源。
microservice-demo
项目,自动进入资源分配页面,点击确认 microservice-demo-workflow-dev
更新共享环境 dev
dev
环境,可执行独享工作流更新独享环境进行自测 debug microservice-demo-workflow-pre-release
更新环境 pre-release
dev
环境有故障时,可对其进行诊断,协同排查;对 qa
环境的故障诊断操作也同理 至此基于环境权限分配的自动化协作流程介绍完毕,每个团队需要根据自身现状设置合理的权限和资源分配策略,实现基于环境平面的高效协作。Zadig,让工程师更专注创造。欢迎加入 开源吐槽群🔥
|