一种代码审查结果关键数据展示的方法及系统技术方案

技术编号:42491385 阅读:23 留言:0更新日期:2024-08-21 13:08
本发明专利技术公开了一种代码审查结果关键数据展示的方法及系统,包括:gitlab服务器将sonarQube系统中的参数传入运行流水线,触发gitlab的CI/CD配置文件中的执行审查命令,开始审查代码;sonarQube系统的Webhook在审查结束后发送包含JSON负载的HTTP POST请求到回调接口的URL地址,从所述JSON中获取project.key数据并存储到审查结果关键信息存储表中;根据所述project.key数据,通过sonarQube系统提供的web接口编写获取并解析审查结果数据的算法,将解析出的关键信息保存到所述审查结果关键信息存储表中;编写展示项目列表信息接口,调用展示代码审查结果历史记录列表接口,从所述审查结果关键信息存储表中查询与所述查询关键字相关的所有记录。

【技术实现步骤摘要】

本申请涉及医疗服务,主要涉及一种代码审查结果关键数据展示的方法及系统


技术介绍

1、医院信息系统软件开发商,通常使用gitlab来管理不同项目的业务模块代码,同时为了提高软件代码质量,通常会使用像sonarqube这种专业代码审查系统来审查代码中潜在问题。现在方法审查结果需要登录到sonarqube平台上才能查看,如果项目多,业务模块多时,开发人员或管理人员在sonarqube平台上查看相关项项目的业务代码审查结果很不方便,影响工作效率,且sonarqube上无法查看到同个业务模块代码审查结果的历史记录,从而使研发管理人员不方便根据审查结果的历史记录判断业务模块的代码质量变化趋势以及相关开发人员的编码水平,以便做出相关优化代码质量的决策。

2、在ci/cd(持续集成/持续交付)功能的配置上,现有技术都采用jenkins进行功能配置,但是都是在有gitlab或gitlab仓库的情况下,还要额外部署安装jenkins才能完成ci/cd功能,引入jenkins就又增加系统复杂度,以及企业相关人员学习成本,间接增加企业的成本投入。


技术实现思路

1、针对上述讲述的现有技术中的技术问题,本申请提出了一种代码审查结果关键数据展示的方法及系统。

2、根据本专利技术的一方面,提出了一种代码审查结果关键数据展示的方法,包括以下步骤:

3、s1、gitlab服务器将sonarqube系统中的参数传入运行流水线,触发所述gitlab服务器的ci/cd配置文件中的执行审查命令,开始审查代码;

4、s2、所述sonarqube系统的webhook在审查结束后发送包含json负载的http post请求到回调接口的url地址,从所述json中获取project.key数据作为审查结果数据并存储到审查结果关键信息存储表中;

5、s3、根据所述project.key数据,通过sonarqube系统提供的web接口编写获取并解析所述审查结果数据的算法,运行所述算法并将解析出的关键信息保存到所述审查结果关键信息存储表中;

6、s4、编写展示项目列表信息接口,所述展示项目列表信息接口中的返回信息包括保存业务模块代码的仓库地址,所述仓库地址作为所述审查结果关键信息存储表中的查询关键字;

7、s5、调用展示代码审查结果历史记录列表接口,从所述审查结果关键信息存储表中查询与所述查询关键字相关的所有记录。

8、进一步的,所述gitlab服务器将sonarqube系统中的参数传入运行流水线还包括:需要在gitlab服务器上配置sonarqube系统的地址$sonar_host_url和访问token$sonar_login_token参数。

9、在gitlab服务器上完成对sonarqube系统的地址和访问参数的配置才能进一步使得gitlab服务器访问sonarqube系统并将其中的参数传入运行流水线。

10、进一步的,所述ci/cd配置文件为gitlab-ci.yml,其中增加code analysis脚本。

11、所述code analysis脚本是为了将代码分析集成到ci/cd流程中,可以实现自动化检查代码质量,保证审查质量。

12、进一步的,所述触发gitlab的ci/cd配置文件中的执行审查命令具体包括:触发gitlab的ci/cd的配置文件gitlab-ci.yml中执行代码审查的接口。

13、根据gitlab-ci.yml脚本中配置执行代码审查的触发条件,需编写执行代码审查的接口,通过调用gitlab提供的restful api构建接口,将参数传入运行流水线。

14、根据本专利技术的第二方面,提出了一种计算机可读存储介质,其上存储有一或多个计算机程序,该一或多个计算机程序被计算机处理器执行时实施上述任一项的方法。

15、本申请实施例中的上述一个或多个技术方案,至少具有如下技术效果之一:

16、本专利技术实现了通过gitlab的代码管理功能以及提供的ci/cd(持续集成/持续交付)功能,在gitlab的ci/cd的配置文件中,增加sonarqube相关代码审查脚本,并从每次审查结果中提取出主要关键字并保存到数据库中,同时使这些审查结果能跟各项目的业务模块代码关联上,以实现可以快速方便查看各项目的相关业务模块的代码审查结果的关键信息历史记录,从而使研发管理人员以及相关开发人员非常方便的查看各项目的相关业务模块代码的审查结果的关键信息历史记录。不但大大方便相关开发人员根据审查结果的关键信息历史记表来优化代码,也方便管理人员根据审查结果的关键信息历史记表快速做出相关优化代码质量的决策,不但提高了研发管理效率,同时也提高软件产品质量。

本文档来自技高网...

【技术保护点】

1.一种代码审查结果关键数据展示的方法,其特征在于,包括以下步骤:

2.根据权利要求1所述的方法,其特征在于:所述gitlab服务器将sonarQube系统中的参数传入运行流水线还包括:需要在gitlab服务器上配置sonarQube系统的地址$SONAR_HOST_URL和访问token$SONAR_LOGIN_TOKEN参数。

3.根据权利要求1所述的方法,其特征在于:所述触发所述gitlab服务器的CI/CD配置文件中的执行审查命令中所述CI/CD配置文件为gitlab-ci.yml,其中增加Code Analysis脚本。

4.根据权利要求1或3所述的方法,其特征在于:所述触发所述gitlab服务器的CI/CD配置文件中的执行审查命令具体包括:触发gitlab的CI/CD的配置文件gitlab-ci.yml中执行代码审查的接口。

5.一种计算机可读存储介质,其特征在于:其上存储有计算机程序,所述计算机程序在被处理器执行时实施如权利要求1-4中任一项所述的方法。

6.一种计算系统,其特征在于:包括处理器和存储器,所述处理器被配置为执行如权利要求1-4中任一项所述的方法。

...

【技术特征摘要】

1.一种代码审查结果关键数据展示的方法,其特征在于,包括以下步骤:

2.根据权利要求1所述的方法,其特征在于:所述gitlab服务器将sonarqube系统中的参数传入运行流水线还包括:需要在gitlab服务器上配置sonarqube系统的地址$sonar_host_url和访问token$sonar_login_token参数。

3.根据权利要求1所述的方法,其特征在于:所述触发所述gitlab服务器的ci/cd配置文件中的执行审查命令中所述ci/cd配置文件为gitlab-ci.yml,其中增...

【专利技术属性】
技术研发人员:林子超林旺蓝龙海牛力超江振华王远春江智明李程扬
申请(专利权)人:智业软件股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1