跨平台异构数据的整合方法及装置制造方法及图纸

技术编号:24167767 阅读:50 留言:0更新日期:2020-05-16 01:58
本申请提供一种跨平台异构数据的整合方法及装置,该方法包括:接收Jenkins构建数据和Sonar静态代码扫描数据;根据Jenkins job类型确定Jenkins构建数据和Sonar静态代码扫描数据的关联点,并基于关联点将Jenkins构建数据和Sonar静态代码扫描数据进行数据整合;将整合后的Jenkins构建数据和Sonar静态代码扫描数据发送至目标数据库;若接收到代码质量查询指令,则输出目标数据库中的代码质量查询指令对应的目标Jenkins构建数据和目标Sonar静态代码扫描数据,能够提供统一的对外查询接口,提高代码质量数据查询的效率和安全性,进而提高代码故障预警和维护的效率。

【技术实现步骤摘要】
跨平台异构数据的整合方法及装置
本申请涉及持续集成
,尤其涉及一种跨平台异构数据的整合方法及装置。
技术介绍
持续集成(ContinuousIntegration,简称CI)是指在项目开发中持续的代码提交、整合和构建。通过持续集成,各个分散的开发机器上的代码被集中到一起,进行构建和打包等操作。在持续集成过程中,Jenkins是最受欢迎的持续集成工具,在Jenkins平台上创建job,可以拉取版本库的项目代码,并可以执行构建、测试、打包和部署等操作。SonarQube/Sonar是一个业界流行的静态代码扫描工具,可以支持多种语言代码的扫描及质量数据统计,并提供友好的展示界面和数据获取接口。目前Sonar可通过在Jenkins平台上安装SonarQubeScannerforJenkins插件,实现Jenkins和Sonar的结合。其基本运行模式如图1所示。Jenkins自身没有数据库存储,不能存储历史信息。而Sonar的信息写入自己的数据库。项目代码以Jenkinsjob的形式进行构建,Sonar静态代码扫描作为构建过程中的一个步骤执行,其中,相对于动态代码扫描,静态代码扫描是指未经编译,直接对代码其进行扫描,主要是检查代码的规范性、安全性,查找漏洞和缺陷等。Sonar扫描成功后信息被写入单独的Sonar数据库(与Jenkins无直接关联),同时也会在Sonar平台上生成信息展示页,并生成对应的url。Jenkins构建页面上提供该url,链接至Sonar页面查看。Sonar和Jenkins数据存储结构不同,用户界面也是独立的,尽管从Jenkins可以访问Sonar,但它们依然是两个独立的存储和展示体系,因此无法从一个统一的入口收集和查看数据。Jenkins仅存储最近几次构建的信息,并不存储所有的历史信息,现有技术仅仅读取Jenkins自身后获取的信息,无法获取历史数据。Sonar方面,现有方案相当于在代码中暴露了Sonar数据库,获取数据时不需要权限校验(登录验证),安全性差;自行编写的接口,容易破坏数据库结构,或者写入错误数据,其健壮性很难达到标准。Sonar和Jenkins的数据异构且分离,不能关联到一起统一查看。
技术实现思路
针对现有技术中的问题,本申请提出了一种跨平台异构数据的整合方法及装置,能够提供统一的对外查询接口,提高代码质量数据查询的效率和安全性,进而提高代码故障预警和维护的效率。为了解决上述技术问题,本申请提供以下技术方案:第一方面,本申请提供一种跨平台异构数据的整合方法,包括:接收Jenkins构建数据和Sonar静态代码扫描数据;根据Jenkinsjob类型确定所述Jenkins构建数据和Sonar静态代码扫描数据的关联点,并基于该关联点将所述Jenkins构建数据和Sonar静态代码扫描数据进行数据整合;将整合后的Jenkins构建数据和Sonar静态代码扫描数据发送至目标数据库;若接收到代码质量查询指令,则输出所述目标数据库中的该代码质量查询指令对应的目标Jenkins构建数据和目标Sonar静态代码扫描数据。进一步地,所述输出所述目标数据库中的该代码质量查询指令对应的目标Jenkins构建数据和目标Sonar静态代码扫描数据,包括:将所述目标数据库中所述代码质量查询指令对应的目标Jenkins构建数据和目标Sonar静态代码扫描数据在同一输出界面显示。进一步地,所述根据Jenkinsjob类型确定所述Jenkins构建数据和Sonar静态代码扫描数据的关联点,并基于该关联点将所述Jenkins构建数据和Sonar静态代码扫描数据进行数据整合,包括:基于所述关联点,将所述Jenkinsjob类型相同的Jenkins构建数据和Sonar静态代码扫描数据整合为同一整合数据;相对应的,所述将整合后的Jenkins构建数据和Sonar静态代码扫描数据发送至目标数据库包括:将各个所述整合数据存储至所述目标数据库中。进一步地,所述接收Jenkins构建数据和Sonar静态代码扫描数据包括:接收自定义Jenkins插件采集的Jenkins构建数据和Sonar接口采集的Sonar静态代码扫描数据。第二方面,本申请提供一种跨平台异构数据的整合装置,包括:接收模块,用于接收Jenkins构建数据和Sonar静态代码扫描数据;数据整合模块,用于根据Jenkinsjob类型确定所述Jenkins构建数据和Sonar静态代码扫描数据的关联点,并基于该关联点将所述Jenkins构建数据和Sonar静态代码扫描数据进行数据整合;发送模块,用于将整合后的Jenkins构建数据和Sonar静态代码扫描数据发送至目标数据库;输出模块,用于若接收到代码质量查询指令,则输出所述目标数据库中的该代码质量查询指令对应的目标Jenkins构建数据和目标Sonar静态代码扫描数据。进一步地,所述输出模块,包括:输出显示单元,用于将所述目标数据库中所述代码质量查询指令对应的目标Jenkins构建数据和目标Sonar静态代码扫描数据在同一输出界面显示。进一步地,所述数据整合模块,包括:整合单元,用于基于所述关联点,将所述Jenkinsjob类型相同的Jenkins构建数据和Sonar静态代码扫描数据整合为同一整合数据;相对应的,所述发送模块包括:存储单元,用于将各个所述整合数据存储至所述目标数据库中。进一步地,所述接收模块包括:接收单元,用于接收自定义Jenkins插件采集的Jenkins构建数据和Sonar接口采集的Sonar静态代码扫描数据。第三方面,本申请提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现所述的跨平台异构数据的整合方法的步骤。第四方面,本申请提供一种计算机可读存储介质,其上存储有计算机指令,所述指令被执行时实现所述的跨平台异构数据的整合方法的步骤。由上述技术方案可知,本申请提供一种跨平台异构数据的整合方法及装置。其中,该方法包括:接收Jenkins构建数据和Sonar静态代码扫描数据;根据Jenkinsjob类型确定所述Jenkins构建数据和Sonar静态代码扫描数据的关联点,并基于该关联点将所述Jenkins构建数据和Sonar静态代码扫描数据进行数据整合;将整合后的Jenkins构建数据和Sonar静态代码扫描数据发送至目标数据库;若接收到代码质量查询指令,则输出所述目标数据库中的该代码质量查询指令对应的目标Jenkins构建数据和目标Sonar静态代码扫描数据,通过将两个不同来源和不同结构的数据分别获取,然后整合在一起,实现解决跨平台异构数据整合,能够提供统一的对外查询接口,提高代码质量数据查询的效率和安全性,进而提高代码故障预警和维护的效率,具体地,Jenkins插件随着每次任务(job)构建执行,能够捕获历次构建信息,并将捕获的历次构建信息存储在第三方数据库,以弥补现有技术中Jen本文档来自技高网
...

【技术保护点】
1.一种跨平台异构数据的整合方法,其特征在于,包括:/n接收Jenkins构建数据和Sonar静态代码扫描数据;/n根据Jenkins job类型确定所述Jenkins构建数据和Sonar静态代码扫描数据的关联点,并基于该关联点将所述Jenkins构建数据和Sonar静态代码扫描数据进行数据整合;/n将整合后的Jenkins构建数据和Sonar静态代码扫描数据发送至目标数据库;/n若接收到代码质量查询指令,则输出所述目标数据库中的该代码质量查询指令对应的目标Jenkins构建数据和目标Sonar静态代码扫描数据。/n

【技术特征摘要】
1.一种跨平台异构数据的整合方法,其特征在于,包括:
接收Jenkins构建数据和Sonar静态代码扫描数据;
根据Jenkinsjob类型确定所述Jenkins构建数据和Sonar静态代码扫描数据的关联点,并基于该关联点将所述Jenkins构建数据和Sonar静态代码扫描数据进行数据整合;
将整合后的Jenkins构建数据和Sonar静态代码扫描数据发送至目标数据库;
若接收到代码质量查询指令,则输出所述目标数据库中的该代码质量查询指令对应的目标Jenkins构建数据和目标Sonar静态代码扫描数据。


2.根据权利要求1所述的跨平台异构数据的整合方法,其特征在于,所述输出所述目标数据库中的该代码质量查询指令对应的目标Jenkins构建数据和目标Sonar静态代码扫描数据,包括:
将所述目标数据库中所述代码质量查询指令对应的目标Jenkins构建数据和目标Sonar静态代码扫描数据在同一输出界面显示。


3.根据权利要求1所述的跨平台异构数据的整合方法,其特征在于,所述根据Jenkinsjob类型确定所述Jenkins构建数据和Sonar静态代码扫描数据的关联点,并基于该关联点将所述Jenkins构建数据和Sonar静态代码扫描数据进行数据整合,包括:
基于所述关联点,将所述Jenkinsjob类型相同的Jenkins构建数据和Sonar静态代码扫描数据整合为同一整合数据;
相对应的,所述将整合后的Jenkins构建数据和Sonar静态代码扫描数据发送至目标数据库包括:
将各个所述整合数据存储至所述目标数据库中。


4.根据权利要求1所述的跨平台异构数据的整合方法,其特征在于,所述接收Jenkins构建数据和Sonar静态代码扫描数据包括:接收自定义Jenkins插件采集的Jenkins构建数据和Sonar接口采集的Sonar静态代码扫描数据。


5.一种跨平台异构数据的整合装置,其特征在于,包括...

【专利技术属性】
技术研发人员:王瑶张婧
申请(专利权)人:中国银行股份有限公司
类型:发明
国别省市:北京;11

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

1