平台概述
平台定位
软件产品交付过程中IT工具链的打通,开发运维一体化,使得各个团队减少时间损耗,更加高效地协同工作。
客户价值
- 代码快速提交和反馈
- 开发可控生产环境
- 全自动高效自动化
系统配置
角色管理
- 菜单层次:全局层。
- 菜单路径:管理 > 角色。
当API发送请求时,通过授予用户角色来授予适当的权限来使用资源,该篇介绍如何进行角色的创建与权限配置。
新建角色
-
点击
创建
。 -
输入 “角色名” , “角色编码” ,设置是否可编辑以及是否启用,点击
添加权限
。注:API权限列表
-
选择所需相应权限,点击
确定
,进行创建。
编辑角色权限配置
-
针对已存在的角色,点击
编辑
,或者从详情界面点击编辑
。 -
对角色相关信息进行修改,以及权限进行修改,点击
添加权限
。 -
添加或删除一个或多个权限,点击
确定
。
停用角色
-
点击
停用
,该角色将不可分配给用户。
启用角色
点击
启用
,该角色正常使用,可以分配给相应用户。
注:现有角色需手动配置权限列表
角色权限说明
角色名称 | 权限名称 | 权限描述 | 权限层级 |
---|---|---|---|
项目创建者 | hap-user-service.password-policy.queryOrganization | 查询目标组织密码策略 | organization |
项目创建者 | hap-devops-service.environment.listEnvironment | 查询全部环境信息 | organization |
项目创建者 | hap-devops-service.environment.createEnvironment | 创建环境 | organization |
项目创建者 | hap-devops-service.environment.checkEnvironmentByName | 检查环境名是否可用 | organization |
项目创建者 | hap-devops-service.environment.listEnvironmentByPageSize | 分页查询环境信息 | organization |
项目创建者 | hap-devops-service.environment.getEnvironmentByEnvironmentId | 环境管理详情 | organization |
项目创建者 | hap-devops-service.environment.updateEnvironment | 更新环境 | organization |
项目创建者 | hap-devops-service.environment.deleteEnvironmentByEnvironmentId | 删除环境 | organization |
项目创建者 | hap-devops-service.project.checkProject | 校验项目code,name是否重复 | organization |
项目创建者 | hap-user-service.project.select | 分页查询项目 | organization |
项目创建者 | hap-user-service.project.create | 添加项目,organization id不需要,强制当前用户所属organization | organization |
项目创建者 | hap-user-service.project.checkProjectCode | checkProjectCode | organization |
项目创建者 | hap-user-service.project.queryOrganizationProject | 根据组织id查询项目 | organization |
项目创建者 | hap-user-service.user.select | 分页查询 | organization |
项目创建者 | hap-user-service.user.create | 新增用户 | organization |
项目创建者 | hap-user-service.user.query | 根据删除组织下所有用户 | organization |
项目创建者 | hap-user-service.user.updateUser | 通过用户id查询用户 | organization |
项目创建者 | hap-user-service.organization.query | 根据组织id查询组织 | organization |
项目创建者 | hap-user-service.role.selectOrganizationRole | 查询可分配组织角色列表 | organization |
项目创建者 | hap-user-service.project.update | 根据id修改项目信息,只能修改自己组织项目 | organization |
项目所有者 | hap-user-service.project.query | 按照Id查询项目,只能查询自己组织项目 | project |
项目所有者 | hap-user-service.member-role-project.select | 查询项目成员角色 | project |
项目所有者 | hap-user-service.member-role-project.create | 项目层新增成员角色 | project |
项目所有者 | hap-user-service.member-role-project.update | 更新项目层成员角色 | project |
项目所有者 | hap-user-service.member-role-project.createSingle | 项目层新增成员角色 | project |
项目所有者 | hap-user-service.member-role-project.delete | 删除项目层成员角色 | project |
项目所有者 | hap-user-service.role.selectProjectRole | 查询可分配项目角色列表 | project |
项目所有者 | hap-user-service.role.selectProjectRoleGroupByService | 查询可分配项目角色列表(查询结果以服务分组) | project |
源代码管理员 | hap-user-service.project.query | 按照Id查询项目,只能查询自己组织项目 | project |
项目成员 | hap-user-service.project.query | 按照Id查询项目,只能查询自己组织项目 | project |
看板所有者 | hap-user-service.project.query | 按照Id查询项目,只能查询自己组织项目 | project |
看板成员 | hap-user-service.project.query | 按照Id查询项目,只能查询自己组织项目 | project |
开发监控 | hap-user-service.project.query | 按照Id查询项目,只能查询自己组织项目 | project |
部署管理员 | hap-user-service.groups.select | 查询Group | organization |
部署管理员 | hap-user-service.groups.create | 创建Group | organization |
部署管理员 | hap-user-service.groups.query | 查询Group | organization |
部署管理员 | hap-user-service.groups.update | 更新Group | organization |
部署管理员 | hap-user-service.groups.delete | 删除Group | organization |
部署管理员 | hap-user-service.user-groups.insertUserGroups | 创建userGroups | organization |
部署管理员 | hap-user-service.user-groups.delete | 删除userGroups | organization |
用户管理
- 菜单层次:组织层。
- 菜单路径:IAM > 用户管理。
面向平台管理员提供用户管理功能,可以新建用户,进行用户信息维护等。
注:用户可由其他系统批量导入。
新建用户
-
点击
创建
按钮。 -
输入用户相关信息,点击
创建
按钮,完成创建。 -
新建的用户“张三”已在用户列表中,gitlab自动生成用户“张三”。。
查看用户详情
-
点击
详情
,进入用户详情界面。 -
查看所需信息。
编辑用户信息
-
点击
编辑
,进入用户编辑界面。或从用户详情界面点击
编辑
按钮,进入用户编辑界面。 -
对用户信息进行修改,点击
保存
按钮,用户信息修改完成。
删除用户
-
点击
删除
。 -
再次点击
删除
按钮,用户删除成功。
角色分配
- 菜单层次:组织层/项目层
- 菜单路径:IAM > 角色分配。
面向平台管理员、项目所有者提供的权限管理,可以在组织或项目内添加成员,为其分配适当的角色,也可以调整现有成员的角色,可以有适当的权限使用资源。
添加角色
-
若需要分配的用户不在该组织/项目中,点击
添加
按钮进行角色添加。例如:当用户“25777”不属于“演示项目0131”项目时,点击
添加
,输入用户名,为该用户分配角色权限。 -
若用户存在于成员角色管理列表中,无需点击
添加
,点击▼
,选择一个或多个角色进行分配。例如,创建用户完成后,平台会自动分配 “组织查看者” 的角色,该用户存在于成员角色管理列表中,直接进行角色分配,点击
保存
按钮,完成角色修改。
小tips:找不到用户怎么办?
直接在搜索框内输入用户名或昵称,回车一下就搞定啦~
注:角色权限列表
角色 | 权限 | 层级 |
---|---|---|
平台管理员 | 菜单管理、角色管理、用户管理(初始化导入)、角色分配(组织层)及除服务发布之外所有功能 | 系统层 |
项目创建者 | 用户管理、项目管理、环境管理、用户组管理 | 组织层 |
部署管理员 | 资源管理、网关管理、域名管理、服务管理、服务部署、部署详情(阶段及日志)、设置自动部署 | 组织层 |
项目所有者 | 角色分配(所在项目下)服务创建、服务详情查看、分支管理、服务版本、代码质量查看、服务发布、设置自动发布 | 项目层 |
源代码管理员 | 服务创建、服务详情查看、分支管理、服务版本、代码质量查看、服务发布 | 项目层 |
项目成员 | 服务详情查看、分支管理、服务版本、代码质量查看、服务发布 | 项目层 |
看板项目所有者 | 故事管理、冲刺管理、任务和缺陷 | 项目层 |
看板成员 | 故事管理、冲刺管理、任务和缺陷 | 项目层 |
开发监控查看者 | 全流程信息监控查看 | 项目层 |
删除角色
-
点击
删除
。 -
点击
删除
,用户从该组织/项目移除成功。
项目管理
- 菜单层次:组织层
- 菜单路径:IAM > 项目。
根据企业产品研发情况拆分团队,建议采用敏捷项目管理团队为一个项目单位,项目管理可以提供项目创建、项目查询、项目编辑等功能。
新建项目
-
点击
创建
按钮。 -
输入 “项目编码” 和 “项目名称” ,点击
创建
按钮。 -
新建项目
“演示0131”
已在项目管理列表中, gitlab自动对应生成group“演示0131”
。
编辑项目信息
-
点击
编辑
,进入项目编辑界面。 -
对
“项目名称”
进行修改,点击保存
按钮。
禁用/启用项目
点击 禁用
,项目禁用后,该项目下的其他操作将无法进行。。
启用项目
点击启用
,启用后,该项目恢复正常使用。
环境管理
- 菜单层次:组织层/项目层
- 菜单路径:开发管理 > 环境。
面向平台管理员和项目创建者,根据用途的不同配置相对应的环境信息。可以创建环境,删除环境,及对环境详情信息进行编辑修改。
常见环境包含:测试环境,UAT环境及正式环境等。
创建环境
-
点击
创建
按钮。 -
输入 “环境名称” 、 “环境地址” 以及 “环境密钥” ,点击
测试连接
,若环境地址、秘钥配置正确,会提示“连接成功”;若看到提示信息为“连接失败”,请修改为正确的环境地址或秘钥,点击创建
按钮。
编辑环境信息
-
点击
编辑
,进入环境编辑界面。 -
对环境信息进行修改,如环境名称,点击
保存
按钮,修改完成。 -
“环境名称” 修改完成。
停用环境
-
点击
停用
。 -
环境 “Charlietest” 已停用,停用后,该环境将不可使用。
环境启用
-
点击
启用
。 -
环境 “Charlietest” 已启用,启用后,该环境可正常使用。
环境删除
-
点击
删除
。 -
再次确认,点击
删除
。
用户组管理
- 菜单层次:组织层
- 菜单路径:用户管理 > 用户组。
创建用户组
点击 创建
,输入 “用户组编码” , “用户组名” ,“用户组描述” ,点击 创建
,用户组创建完成。
编辑用户组
-
点击
编辑
。 -
修改用户组信息,点击
编辑
。
添加用户组用户
-
点击
添加用户
。 -
点击
添加
,勾选需要添加到该用户组的用户。
删除用户组
点击 删除
,删除当前用户组。
1. 敏捷管理
1.1. 故事地图
- 菜单层次:组织层。
- 菜单路径:项目>敏捷管理>用户故事>故事地图。
在开规划会议之前,用户可以按照角色,活动,任务分类来规划roadmap,整理用户故事,记录的用户故事将会被同步到gitlab的issue上,项目干系人可以在issue下放进行评论,对用户故事展开讨论。
1.1.1. 使用故事地图
-
添加角色
角色:提出用户需求的人或者用户需求是基于哪类用户考虑的。例如敏捷开发有三种角色,po,master和项目开发人员。
点击<创建角色>鼠标光标会变为"加号",当出现"加号"图标时,用户在角色这一行任意位置单击,即可添加角色。
添加角色 -
添加活动
活动:基于某一个角色下,具体的用户场景。
点击<创建活动>鼠标光标会变为"加号",当出现"加号"图标时,用户在活动这一行任意位置单击,即可添加活动。 -
添加任务
任务:用户场景的细化。
点击<创建任务>鼠标光标会变为"加号",当出现"加号"图标时,用户在任务这一行任意位置单击,即可添加任务。
-
创建发布计划
点击<创建发布计划>,即可在用户故事地图上面生成对应的发布计划,依次默认命名为发布计划1,发布计划2.....,如果想修改发布计划名称或者删除发布计划,点击发布计划名称旁边的三点符号,可进行修改或者删除。处于安全考虑,已经有用户故事的发布计划,需要先删除里面的用户故事,才能删除整个发布计划
![修改或删除发布计划](https://img.haomeiwen.com/i10538228/61c32369ecdc68d9.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
-
创建卡片
在故事地图界面移动鼠标,见到卡片创建的提示时,点击提示卡中间的文字部分,也可以创建相应的卡片,比如角色,活动,任务,用户故事。
用户故事:具体的需求。
1.1.2. 故事地图工具栏介绍
-
未规划区的使用
点击<未规划区>,会出现一个侧边栏,如下图所示,在侧边栏中会放入您在其他界面创建的未选择发布计划的故事,比如您在用户故事界面创建了一个未选择发布计划的用户故事,就会以一张故事卡的形式出现在此处,顶部的搜索和过滤可以进行高级搜索,找到您想要的卡片,您考虑好此故事放在哪个发布计划下比较合适时,也可以拖动到具体的发布计划下。
未规划区入口 未规划区展开界面
-
数据统计
此项目下的数据进度的分析,可一键从此入口进入,也可去数据洞察界面选择具体项目查看。
数据统计 数据分析结果展示
-
导出为图片
点击<导出为图片>,即可把当前的地图以图片形式保存下来,导出格式为png。
导出为图片
-
放大缩小
点击放大搜索标志,或者拖动放大缩小的滚动条,都可完成整个地图的放大缩小。
![放大缩小](https://img.haomeiwen.com/i10538228/91d4a5b333033006.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
1.2. 用户故事
- 菜单层次:组织层。
- 菜单路径:项目>敏捷管理>用户故事>用户故事。
用户故事界面是用户故事界面的列表展现形式,在这里可以集中查看您创建的所有的用户故事,以及其下的任务缺陷等,方便快捷。
1.2.1. 用户故事界面功能详解
-
创建故事
点击<创建故事>,出现详情信息编辑的窗口,在窗口中进行编辑,编辑完成之后点击保存。
创建故事
-
高级搜索
点击<过滤>可以进行高级搜索
过滤
- 操作
-
删除
未进入冲刺的用户故事可以删除。
-
快捷创建任务
可以快捷创建用户故事下面的任务。
-
快捷创建缺陷
可以快捷创建用户故事下面的缺陷。
操作
1.3. 冲刺
- 菜单层次:组织层。
- 菜单路径:项目>敏捷管理>冲刺和看板>冲刺。
在冲刺中,可方便为您管理一个迭代周期内要完成的故事,并为您进行后台数据监测,可视化故事完成的情况,冲刺作为用户故事地图和看板的衔接环节,开启冲刺之后才能使用看板的全部功能。
1.3.1. 冲刺界面功能详解
-
创建冲刺
点击<创建冲刺>,选择发布计划和预计的冲刺起止时间,即可创建一个新的冲刺。
image.png
-
搜索
可以在工具栏进行搜索。
搜索 -
操作
-
删除
可以删除这个冲刺。
-
状态切换
可以快捷开启或者关闭冲刺,完成状态切换。
-
编辑
可以修改冲刺的具体信息。
-
-
进入冲刺详情
点击冲刺的名称,即可进入冲刺详情。
-
开启/关闭冲刺
点击<开启冲刺>可开启当前冲刺,开启之后,数据洞察就开始记录当前冲刺的数据。冲刺内添加的故事也会自动导入看板中,并放在第一列。
点击<关闭冲刺>可关闭当前冲刺,关闭之后不能再开启。 -
添加故事
选择故事来源,从故事地图,或者未规划的故事中,勾选需要导入的故事,点击确定,添加到冲刺中,添加进冲刺的故事,在故事地图界面的颜色会与没有导入冲刺的颜色有一个变化。
-
创建任务
可以创建进入到冲刺中的用户故事下的具体任务。
-
创建缺陷
可以创建用户故事下或者任务下测试出现的bug。
-
筛选
可以对故事,任务和缺陷进行分类筛选。
筛选 -
操作
可以把导入冲刺的故事移除,移除后不会在故事地图里面删除,只是故事地图中的卡片颜色会变为未导入状态。也可以导入到其他冲刺中。
-
1.4. 看板
- 菜单层次:组织层。
- 菜单路径:项目>敏捷管理>冲刺和看板>看板。
开启冲刺之后才能使用看板的全部功能。看板可以取代物理看板,也可以可视化您的工作流,同时后台会记录所以操作的时间数据,帮您完成数据分析和记录工作。
1.4.1. 看板管理界面功能详解
-
选择模板
进入看板之后,先根据您的需要,选择一个看板模板,单击某个模板,可查看详情,双击就会为您选择当前模板并打开,看板界面没有卡片时,您也可以更换模板。
看板模板 模板详情 -
使用看板
进入看板之后,您在当前开启的冲刺中添加的故事,会自动为您导入到当前看板,并放在SprintBacklog里面(第一列)
- 创建卡片
点击<创建卡片>,出现卡片详情编辑的窗口,选择卡片类型,故事,任务,缺陷,可创建对应类型的卡片,创建的卡片会同步到故事地图界面,放在当前发布计划的第一个角色的第一个任务列里。
创建卡片 卡片详情编辑界面- 看板绘制
点击<看板绘制>进入看板编辑界面
1)增加列
2)绘制泳道
3)增加/减少列高
4)撤销/恢复
5)保存
6)在制品和起始列设置
![看板绘制 ](https://img.haomeiwen.com/i10538228/65b8ce2c5b32e016.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
- 拖动故事卡
- 故事卡的子卡(任务卡/bug卡)的操作
1.5. 任务
- 菜单层次:组织层。
- 菜单路径:项目>敏捷管理>任务和漏洞>任务。
可以查看您创建的所有任务,可视化您的任务流,同时后台会记录所以操作的时间数据,帮您完成数据分析和记录工作。
1.5.1. 任务管理界面功能详解
-
查看任务
在任务界面,您可以查看您所有创建的任务,并且可以高级搜索您要找的任务。
-
操作
可以在<操作>中完成删除,快捷创建缺陷的快捷操作
任务
1.6. 漏洞
- 菜单层次:组织层。
- 菜单路径:项目>敏捷管理>任务和漏洞>漏洞。
可以查看您创建的所有漏洞。
1.6.1. 漏洞管理界面功能详解
-
查看缺陷
在任务界面,您可以查看您所有创建的缺陷,并且可以高级搜索您要找的缺陷。
-
操作
可以在<操作>中完成删除缺陷。
持续集成
3.1服务创建
- 菜单层次:项目层
- 菜单路径:开发管理 > 服务
每一个微服务都可以独立部署,每一个微服务仅关注于完成一件任务,每个任务代表一个小的业务模块,各微服务之间关系是松耦合的。
(备注:每创建一个服务,会自动在gitlab创建好对应服务类型的代码库。)
服务类型
微服务:微服务后端,可以定义依赖的资源和服务,部署时需配置网关。
Web前端:微服务前端,部署时需配置域名。
移动:移动端应用开发使用,部署流程与其他类型不同。
普通应用:非微服务架构的服务类型,如HAP、HBI等,一个系统一个服务。
Java库:管理Java工具包。
服务组
区分服务的开发来源,创建服务时需做标识。
暂按如下设置。
项目名称 | 项目编码 | 服务组 |
---|---|---|
HAPCloud | hapcloud | com.hand.hapcloud |
DevOps | devops | com.hand.devops |
智能洞察 | insight | com.hand.insight |
敏捷看板 | kanban | com.hand.kanban |
移动应用 | mobile | com.hand.mobile |
应用框架 | hap | com.hand.hap |
云维开发 | cloopm | com.hand.cloopm |
新建服务
-
点击
创建
按钮。 -
输入 “服务编码” 、 “服务名称” 、以及 “服务组” ,并选择相应服务类型,点击
创建
按钮。 -
新建服务 “微服务0201” 已在服务管理列表中。
-
gitlab已自动创建好对应服务类型的代码库 “webservice” 。点击
仓库地址
,可以查看该服务在gitlab的代码仓库。
服务停用
点击 停用
,如: “微服务0201” 已停用,服务详情不可查看。
服务启用
点击 启用
,如: “微服务0201” 已启用,可对该服务进行相关操作。
分支管理
- 菜单层次: 项目层
- 菜单路径: 开发管理 > 服务详情
git flow
工作流模式,自动创建Git Flow
模式所特有的流水线分支。
在持续交付过程中对feature
、release
、hotfix
等分支进行管理。
分支类型
-
Feature:
适用于日常开发、bug 修复,基于开发分支生成,完成时合并至开发分支。 -
Release:
适用于产品发布、产品迭代,基于开发分支生成,完成时合并至主分支和开发分支,并打上标签。 -
Hotfix:
适用于产品发布后修复bug,基于主分支生成,完成时先合并至主分支和开发分支,并打上标签。
默认分支
Develop: 日常开发分支。
Master: 版本发布分支。
使用流程
GitFlow 使用流程新建分支
新建 Feature 分支
-
点击
创建 Feature 示意创建Feature
按钮。 -
输入
输入 issue 编码示意图Issue
编码。 -
点击
点击保存示意保存
按钮。
新建 Release/Hotfix 分支
-
点击
创建 Release/Hotfix 分支按钮示意创建Release
按钮(或创建Hotfix
按钮)创建对应分支。 -
输入分支名称。
Release
分支创建时会自动生成下一个版本号,也可以手动输入需要的版本号。(版本号由三个数字组成,中间以小数点间隔。如:1.1.0
。
Release
版本号默认为末位清零,中间一位进一)。
Release 分支版本号示意Hotfix
分支建议填写Issue
编号作为分支名,也可以手动输入需要的版本号。填写Issue
编号在结束分支时会提示以最新release
小版本加一作为版本号。 -
点击
创建 Release/Hotfix 分支确定示意确定
按钮。注: 无提交时点击结束分支,将不创建合并请求,直接删除。新建分支及结束分支只能在平台界面进行操作,请勿随意在gitlab界面创建合并请求和删除分支。
分支管理步骤
-
克隆代码到本地
# 在存放代码的文件夹下执行以下命令 git clone http://git.saas.hand-china.com/devops/hap-devops-service.git # 拉取远程仓库成功后进入仓库 cd hap-devops-service
-
拉取最新代码和新建的分支
git pull
-
切换到分支
# 切换到新建分支,以 feature-2 为例 git checkout feature-2
-
开发
根据分支对应的
Issue
需求修改代码。
完成后详细检查本地代码改动。 -
提交代码
# 将本地代码变动提交到暂存区 git add . # 提交代码并且为本次提交添加 commit 信息 # 注:[FIX]修改bug [ADD]新增 [IMP]完善 [DEL]删除 $ git commit –m “[ADD]readme: 新增代码示例” # 将本地提交推送至远程仓库对应分支 $ git push origin feature-2:feature-2
-
界面操作结束分支
3.2.6 解决分支冲突
3.2.6.1 Feature 分支冲突
常见两种解决冲突的方式如下
-
本地修改代码解决:
# 确保当前正在 Feature 分支上,以 feature-2 为例 git checkout feature-2 # 拉取最新远程仓库 develop 分支代码 git fetch origin develop:develop # 将 Feature 分支重新设立起点于最新的 develop 代码 git rebase develop
执行完
rebase
操作后,会产生对应的冲突,解决冲突后执行如下代码。git add . git rebase --continue
根据本次
Feature
分支上提交次数的不同,解决冲突可能会重复多次,只需要重复执行上述解决冲突操作。
完成后强制提交至远程仓库。git push -f origin feature-2:feature-2
-
界面解决冲突(不建议):
在
GitLab
对应的合并请求界面点击Solve conficts
按钮。
Release&Hotfix 分支冲突
当分支对于 develop
和 master
分支中任意一个或以上存在冲突时,会提示当前存在冲突,以及建议做法。
若此时继续点击确定
按钮,并且没有解决冲突,那么会提示分支冲突,无法继续操作。解决冲突具体步骤可查看界面提示,说明如下:
-
只有对应
develop
的合并请求存在冲突,按界面提示解决冲突会导致分支对应develop
分支的合并请求被合并。此时再进行结束分支操作,会处理分支对master
的合并请求,然后生成对应版本号的Tag
并删除分支。 -
只有对应
master
的合并请求存在冲突,按界面提示解决冲突会导致分支对应master
分支的合并请求被合并。此时再进行结束分支操作,会处理分支对develop
的合并请求,然后生成对应版本号的Tag
并删除分支。 -
若分支对应
develop
和master
分支的合并请求都存在冲突,按界面提示解决冲突会导致分支对应develop
和master
分支的合并请求依次都被合并。此时再进行结束分支操作,会生成对应版本号的Tag
并删除分支。
服务版本
- 菜单层次:项目层
- 菜单路径:开发管理 > 服务详情
代码提交的历史记录,每提交一次修改后的代码,对应生成一个新的版本。
查看服务版本信息
-
进入服务详情后,点击
服务版本
页签。 -
查看服务版本信息。
查看流水线信息
-
进入服务详情后,点击
流水线
页签。 -
查看服务CI pipeline的完成情况。
注:版本命名方式:合并至develop:develop. + 年月日时分秒。
Tag生成:版本号(三位号码,如:1.1.0。release修改前两位,hotfix修改第三位)。
提交:每次提交代码的操作,自动生成Commit ID,由于字数多,平时多取前八位。
查看代码质量情况
可在服务详情-代码质量查看。面向团队成员,反馈代码质量信息,按照相应的代码规范及标准在线进行代码静态检查、代码安全检查、质量评分、代码缺陷改进趋势分析,辅助管控代码质量。
服务详情-代码质量:只看该服务下经单元测试后的代码质量情况。
注:可从开发监控了解项目整体及DevOps全链路各个环节进展情况。
服务发布
服务发布
- 菜单层次:项目层
- 菜单路径:开发管理 > 发布
面向发布管理员,提供服务发布至不同环境的功能,向目标环境传输部署文件,同时附带服务版本信息以便追踪。
-
点击
发布
。 -
关键字搜索或直接从从下拉列表中选择部署文件发布的环境。
-
点击
保存
。 -
该服务部署文件已成功发布在开发或正式环境。
自动发布
- 菜单层次:项目层
- 菜单路径:开发管理 > 服务
-
项目所有者可以设置服务 “自动发布” 。
-
可以选择一个或多个环境。
-
点击
保存
,版本生成会自动发布部署文件至所选环境。注:自动发布仅针对于开发环境,正式环境需手动发布。
持续部署
资源管理
- 菜单层次:组织层
- 菜单路径:部署服务 > 资源管理
定义部署时需要使用的资源。
目前支持五种:mysql、redis、rebbitmq、kafka、url。
新建资源
-
点击
创建
,输入 “名称” 、 “描述” 以及选择资源类型,例如mysql。 -
输入资源相关信息,点击
创建
。 -
新建资源 “hap-devops-test” 已在资源管理列表中。
资源编辑
-
点击
编辑
,修改资源信息,点击保存
。 -
点击 “资源名称” ,查看资源详情。
资源删除
-
点击
删除
。 -
再次确认,点击
删除
。
网关管理
- 菜单层次:组织层
- 菜单路径:部署服务 > 资源管理
为所选的微服务将网关信息注册至微服务管理服务,支持删除其对应网关。
注:服务可以访问的两个必要条件:网关注册、服务部署。
新建网关
-
点击
创建
,选择需要配置网关的服务,如 “webservice0131” ,点击创建
。 -
服务 “webservice0131” 的网关已在网关管理列表中。
网关删除
-
点击
删除
。 -
再次确认,点击
删除
。
域名管理
- 菜单层次:组织层
- 菜单路径:部署服务 > 资源管理
为相应的服务创建可访问域名并可对其进行修改,域名后缀为运行区域名后缀,如运行区域名
注:目前Web前端及普通应用需配置域名,若不配置域名,不能进行外网访问该前端,只能查看系统提供的pod ip。
新建域名
-
点击
创建
,选择需要配置域名的服务,并输入 “域名” ,点击创建
。 -
服务 “webfront0131” 的域名已在域名管理列表中。
编辑域名信息
-
点击
编辑
。 -
修改域名信息,点击
保存
,域名修改完成。。
删除域名
-
点击
删除
。 -
再次确认,点击
删除
。
服务部署
- 菜单层次:组织层
- 菜单路径:部署管理 > 服务
提供可视化、一键式部署服务,支持并行部署和流水线无缝集成,实现部署环境标准化和部署过程自动化。
查看服务列表
点击 部署管理
,点击 服务
,查看服务列表。
查看服务版本列表
-
点击
详情
。 -
查看该服务历史版本信息。
查看部署文件
点击查看部署文件
,查看部署文件信息。
服务部署
-
在服务列表中找到要部署的服务,点击
详情
,例如webservice0131。 -
选择要发布的版本,点击
部署服务
。 -
进行资源选择和变量填写,点击
部署
。
查看运行中的服务
-
点击
详情
。 -
可在运行中查看正在部署/运行的版本,以及对容器数量进行调整。
-
点击
详情
,查看服务部署阶段和详情信息。注:不同服务类型,部署阶段不同。
查看容器组列表
点击容器组
页签,查看容器组列表。
查看容器组日志
点击容器组日志
进行相关日志查看。
灰度部署
用于保障系统稳定,验证某服务版本是否正常使用,验证正常后再转为正式部署。
支持Web前端、普通应用类型的服务使用自动生成域名的方式进行灰度部署;支持微服务类型的服务使用选择不同用户组的方式进行灰度部署。
-
在服务列表中找到要部署的服务,点击
详情
,例如webservice0131。 -
选择要灰度部署的版本,点击
部署服务
。 -
进行资源选择和变量填写,勾选灰度发布,选择用户组,如devops,点击
部署
。 -
可在运行中查看该版本正在进行灰度部署。
自动部署
-
部署管理员可以设置“自动部署”。
-
版本发布到运行区将会自动部署。
注:自动部署仅针对于正式部署。
查看服务运行历史
点击 运行历史
,查看部署失败或部署停止的服务版本。
洞察监控
开发监控
综述
-
计划完成率:已完成状态的用户故事除以总的用户故事。
-
变更时长:类型为变更的用户故事完成的平均时长。
-
变更为完成率:类型为变更的用户故事的完成率。
-
问题平均处理时长:类型为BUG的用户故事平均处理时长。
概况
-
DevOps流程状态:显示项目从计划、编程、构建、质量、发布整个流程的状态。
-
服务列表:项目下所有服务列表包含名字和git地址。
-
项目成员列表:项目下所有成员列表包含提交频率、构建频率、角色等。
-
最新动态:项目下最新的成员的操作动态。
计划
-
发布信息:用户故事、已经计划用户故事、正在进行用户故事、已经完成用户故事、总发布数。
-
冲刺信息:已开启冲刺进度、已开启冲刺下的任务完成进度、用户故事:已开启冲刺的用户故事总数、任务总数缺陷总数。
-
平均用户故事点:冲刺的平均用户故事点。
-
平均工时:冲刺的平均工时。
-
用户故事来源分布图:用户故事来源分布饼图。
-
用户故事状态分布图:用户故事完成和未完成状态的分布图。
-
缺陷堆叠图:缺陷按照冲刺分类型的堆叠图。
-
缺陷累计分布图:缺陷类型分布饼图。
-
燃尽图:冲刺的工时燃尽图。
-
累计流图:冲刺的用户故事的累计流图。
编程
-
合并总数:统计merge request的请求总数。
-
提交总数:push的总数。
-
提交总频率:push的总数除以天数不含周末。
-
提交频率:最近14天的提交数除以天数不含周末。
-
活跃开发人员:每周提交三次以上。
-
本周提交数
-
提交次数图
-
人员提交次数图
-
提交历史
构建
-
构建总数:pipeline的总数。
-
总构建频率:构建总数除以天数不包含周末。
-
构建频率:最近14天的构建数除以天数不包含周末。
-
构建平均时长: pipeline的平均时长。
-
构建成功率: pipeline的成功率。
-
本周构建成功率(近7天构建成功率。
-
构建次数图
-
人员构建次数图
-
构建历史
质量
Sonar的数据
发布
-
发布计划名
-
发布计划完成进度条
-
本发布计划已完成故事数
-
本发布计划故事总数
-
用户故事列表:编号、标题、状态、创建时间等
网友评论