检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
HE2E DevOps实践:代码检查 本文以“DevOps全流程示例项目”为例,介绍如何在项目中进完成代码检查配置。 开展实践前,需要完成创建项目和创建仓库。 预置任务简介 样例项目中预置了以下4个代码检查任务。
查询规则集列表-V3 功能介绍 根据项目ID、语言等条件查询规则集列表,与V2接口相比,限制了分页参数大小,V2接口后续将下线。 调用方法 请参见如何调用API。 URI GET /v3/{project_id}/rulesets 表1 路径参数 参数 是否必选 参数类型 描述 project_id
Cmetrics工具规格说明 工具介绍 Cmetrics是华为公司自研代码度量工具,通过扫描源码对各项指标进行度量。度量指标包括代码量、函数圈复杂度、文件代码行、函数代码行、文件重复、代码重复、危险函数、冗余代码等多项指标。当前工具版本为2.1.5。 参数说明 表1 参数说明 参数
任务管理 新建检查任务 删除检查任务 查询任务列表 执行检查任务 终止检查任务 查询任务执行状态 历史扫描结果查询 查询任务的已选规则集列表v2 查询任务的已选规则集列表v3 查询任务规则集的检查参数v2 查询任务规则集的检查参数v3 任务配置检查参数 修改任务规则集 查询任务检查失败日志
代码检查服务提供丰富的API接口、涵括任务新建、任务设置、任务扫描、任务报告解析等检查业务全流程,支持用户使用接口方式无缝集成到自建CI/CD或者CodeArts,作业数据灵活对接到客户看板,代码质量可视、可管理。
您可以购买CodeArts Check,或者开通/购买软件开发生产线服务组合套餐,体验一站式、全流程、安全可信的软件开发生产线。 若已经购买了CodeArts套餐,则不能再单独购买代码检查服务套餐。
在“MR检查模式”区域,选择“扫描变更文件”或“全量扫描”。默认选择“扫描变更文件”。 完成后,单击“保存”。 设置检查目录 支持检查代码仓指定目录。 不配置检查目录时,检查代码仓中所有目录下的代码文件。 配置检查目录时,只检查配置目录中的文件。
自动续费 自动续费可以减少手动续费的管理成本,避免因忘记手动续费而导致代码检查服务资源被自动删除。自动续费的规则如下所述: 以订单的到期日计算第一次自动续费日期和计费周期。 订单自动续费周期以您选择的续费时长为准。例如,您选择了3个月,订单即在每次到期前自动续费3个月。 在订单到期前均可开通自动续费
java,js,python,php,css,html,go,typescript,csharp rule_sets 否 Array of RuleSetV2 objects 指定规则集 task_type 否 String 检查类型,支持full/inc两种类型,full表示全量检查
查看徽标状态 执行完代码检查任务后,您可通过徽标状态查看代码健康度,并标识在代码仓库中。 代码检查服务中设置各个告警级别的影响度如下: 致命:5 严重:3 一般:1 提示:0.1 健康度=SUM ∑(告警数量*告警级别影响度)/代码量,各个健康度对应的标识如下: A:健康度<=0.001
查询任务规则集的检查参数v3 功能介绍 查询任务规则集的检查参数v3 调用方法 请参见如何调用API。 URI GET /v3/{project_id}/tasks/{task_id}/ruleset/{ruleset_id}/check-parameters 表1 路径参数 参数
单击“全量操作 > 全量修改问题状态”,可修改筛选出来的全部问题的问题状态。 如果代码问题数是0,则不显示该内容。 单击“全量操作 > 全量转移责任人”,可将筛选出来的全部问题转移给指定责任人。
查询任务执行状态 功能介绍 根据任务ID查询任务执行状态。任务状态:0表示检查中,1表示检查失败,2表示检查成功,3表示任务中止。只有正在检查中才有进度的详细信息。 调用方法 请参见如何调用API。 URI GET /v2/tasks/{task_id}/progress 表1 路径参数
图1 服务扩展点ID 创建MR检查任务并获取任务ID 以下为新建全量任务的请求示例。 增量检查任务依赖于全量任务,所以需要先创建全量任务。
HE2E DevOps实践:代码检查 本文以“DevOps全流程示例项目”为例,介绍如何在项目中进完成代码检查配置。
配置代码检查任务预置规则集 规则集则是一组用于做代码检查的规则组成的集合。一般根据不同的检查目标和需求,规则集也有相应的分类,比如对安全类、安卓应用、编程风格,使用这些类别进行检查的时候,规则集内的规则也会有所不同。 用户可根据实际需要更换代码检查任务使用的规则集,新启用的规则集将在下一次执行检查时生效
查询任务的已选规则集列表v3 功能介绍 查询任务的已选规则集列表v3。 调用方法 请参见如何调用API。 URI GET /v3/{project_id}/tasks/{task_id}/rulesets 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String
查询分支任务列表 功能介绍 查询分支任务列表 调用方法 请参见如何调用API。 URI GET /v3/{project_id}/tasks/{task_id}/branches 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID,每个
删除自定义规则集 功能介绍 删除自定义规则集,正在使用中的或默认规则集不能删除 调用方法 请参见如何调用API。 URI DELETE /v2/{project_id}/ruleset/{ruleset_id} 表1 路径参数 参数 是否必选 参数类型 描述 project_id
获取项目ID 调用API获取项目ID 项目ID还用通过调用查询指定条件下的项目信息API获取。 获取项目ID的接口为“GET https://{Endpoint}/v3/projects/”,其中“{Endpoint}”为IAM的终端节点,可以从终端节点获取。接口的认证鉴权请参见认证鉴权