一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种代码仓库自动同步下载的管理系统与方法与流程

2022-07-02 12:25:44 来源:中国专利 TAG:

1.本技术属于软件研发技术领域,尤其涉及一种代码仓库自动同步下载的管理系统与方法。


背景技术:

2.artifactory是一款maven仓库服务端软件,可以用来在内网搭建maven仓库,供公司内部公共库的上传和发布,以提高公共代码使用的便利性。artifactory支持所有开发语言,任意维度的元数据检索、跨语言正反向依赖分析,并同时拥有深度递归、支持多活异地灾备的企业级、高可用二进制制品管理仓库。世界五百强中93%的企业已经将artifactory作为自己devops的核心系统。
3.如图1,artifactory管理一个项目,或者多个项目的代码,各个开发者,在不同的应用计算机上开发软件项目,将开发好的代码上传到artifactory服务器中,同时下载项目组其他成员开发的代码,在本地组合成完整的研发软件项目。
4.jenkins是一个开源的、提供友好操作界面的持续集成(ci)工具,主要用于持续、自动的构建/测试软件项目、监控外部任务的运行。jenkins用java语言编写,可在tomcat等流行的servlet容器中运行,也可独立运行。通常与版本管理工具(scm)、构建工具结合使用。常用的版本控制工具有svn、git,构建工具有maven、ant、gradle。
5.jenkins作为一款开源的持续集成工具,在日常的开发、集成、部署等环节中应用十分广泛。
6.artifactory作为制品库,存放jenkins job构建需要的文件数据。
7.jenkins的许多功能都是通过插件实现的,在常规使用过程中,一些基本的插件就可以满足要求,但是目前jenkins提供的开源插件无法满足从artifactory自动获取数据,现有都是直接编写硬编码进行维护。自己开发自动获取artifactory数据的插件,从而节省人力劳动,减少手动编写带来的出错率,实现自动化任务。
8.artifactory作为仓库服务端软件,在软件开发过程中,作为项目组保存与交换代码的数据库,在软件开发过程中,有重要的地位,软件开发人员需要将自己开发的代码或可执行组件上传到artifactory服务器,还需要下载项目组其他成员开发的代码,但是上传与下载过程,需要手动操作,当项目的规模庞大的时候,上传与下载的工作量巨大,还容易发生错误。


技术实现要素:

9.本发明利用jenkins制作插件的方便性,实现自动上传或下载artifactory仓库中代码的功能,主动找出不同的代码文件,自动实现代码文件的上传与下载,消除人工操作的失误,减小人为操作的工作量。
10.一种代码仓库自动同步下载的管理系统,包括artifactory服务器、应用计算机,应用计算机包括浏览器工具组件、jenkins组件、自动同步模块、本地代码文件库;自动同步
模块包括文件清单爬虫模块、文件爬虫模块、控制模块、代码更新检查模块;控制模块驱动文件清单爬虫模块通过调动jenkins组件驱动浏览器工具组件获得artifactory服务器的代码仓库中的仓库代码文件清单;控制模块驱动代码更新检查模块检查本地代码文件库,获得本地代码文件清单,代码更新检查模块对比本地代码文件清单与仓库代码文件清单的差别,得到不同代码文件清单;控制模块根据不同代码文件清单驱动文件爬虫模块通过调动jenkins组件驱动浏览器工具组件获得artifactory服务器的代码仓库中的代码文件;控制模块将所述代码文件保存在本地代码文件库中。
11.可以是,所述仓库代码文件清单包括文件名称、文件创建日期、文件大小、文件的md5校验值;代码更新检查模块检查本地代码文件库,本地代码文件清单包括文件名称、文件创建日期、文件大小、文件的md5校验值;代码更新检查模块对比仓库代码文件清单与本地代码文件清单,将本地代码文件清单没有仓库代码文件清单的文件名称的文件,加入不同代码文件清单;代码更新检查模块对比仓库代码文件清单与本地代码文件清单,将相同文件名,不同md5校验值或不同文件大小的文件加入不同代码文件清单;控制模块根据不同代码文件清单爬取有相同文件名,不同md5校验值的文件时,需要获得操作者的授权。
12.可以是,还包括软件开发工程,软件开发工程包括本地代码文件库的代码,软件开发工程可以对本地代码文件库的代码进行编译与运行调试。
13.可以是,还包括文件上传模块;控制模块驱动代码更新检查模块检查本地代码文件库,获得本地代码文件清单,代码更新检查模块对比本地代码文件清单与仓库代码文件清单的差别,得到本地新文件清单;控制模块根据本地新文件清单驱动文件上传模块通过调动jenkins组件驱动浏览器工具将本地新文件清单的文件上传到artifactory服务器的代码仓库中。
14.可以是,代码更新检查模块对比仓库代码文件清单与本地代码文件清单,将仓库代码文件清单没有的本地代码文件清单的文件,加入本地新文件清单;代码更新检查模块对比仓库代码文件清单与本地代码文件清单,将相同文件名,不同md5校验值,本地文件创建日期晚于仓库文件创建日期的文件,加入本地新文件清单。
15.可以是,将本地新文件清单的文件上传到artifactory服务器的代码仓库中时,需要获得操作者的授权,授权包括不限于特定密码鉴定、短信验证码验证操作者身份。
16.一种代码仓库自动同步下载的管理方法,步骤10:应用计算机获取artifactory服务器url地址;步骤20:jenkins插件中调动jenkins组件驱动浏览器工具组件获得artifactory服务器的代码仓库中的仓库代码文件清单;步骤30:jenkins插件获得本地代码文件清单,对比本地代码文件清单与仓库代码文件清单的差别,得到不同代码文件清单和本地新文件清单;步骤40:jenkins插件根据不同代码文件清单将artifactory服务器中的代码文件下载到本地文件库中;步骤50:jenkins插件根据本地新文件清单将本地文件库的代码文件,上传到artifactory服务器中。
17.可以是,所述仓库代码文件清单包括文件名称、文件创建日期、文件大小、文件的md5校验值;本地代码文件清单包括文件名称、文件创建日期、文件大小、文件的md5校验值。
18.可以是,步骤30中,对比仓库代码文件清单与本地代码文件清单,将本地代码文件清单没有仓库代码文件清单的文件名称的文件,加入不同代码文件清单;对比仓库代码文件清单与本地代码文件清单,将相同文件名,不同md5校验值或不同文件大小的文件加入不同代码文件清单;步骤40中,根据不同代码文件清单将artifactory服务器中的代码文件下载到本地文件库中是,需要获得操作者的授权。
19.可以是,步骤30中,对比仓库代码文件清单与本地代码文件清单,将仓库代码文件清单没有的本地代码文件清单的文件,加入本地新文件清单;对比仓库代码文件清单与本地代码文件清单,将相同文件名,不同md5校验值,本地文件创建日期晚于仓库文件创建日期的文件,加入本地新文件清单;步骤50中,本地新文件清单的文件上传到artifactory服务器的代码仓库中时,需要获得操作者的授权,授权包括不限于特定密码鉴定、短信验证码验证操作者身份。
20.本技术中技术方案的有益效果是:采用自动同步模块中的文件清单爬虫模块,可以自动获得文件清单,自动根据清单进行下载。大幅度提高工作效率;不同的文件,其md5校验值是不同的,自动同步模块发现这种文件的时候 ,下载之前,需要得到操作者的授权,才能覆盖本地文件;本地文件创建时间晚的,可以加入本地新文件清单;上传代码到artifactory服务器,操作设计到其他开发人员,需要慎重,需要验证操作者的权限,artifactory服务器还可以记录操作人员操作过程的日志,便于回溯;下载服务器文件到本地,一般受影响的就是本地操作者,验证的时候,可以做操作者简单的密码认证授权即可;上传代码或文件到artifactory服务器,受影响的成员众多,需要严格认证操作者的权限,同时需要反复让操作者确认操作,防止误操作。
附图说明
21.图1是artifactory服务器与应用计算机的关系示意框图;图2是一种代码仓库自动同步下载的管理系统的示意框图;图3是一种包含文件上传模块的代码仓库自动同步下载的管理系统的示意框图;图4是一种代码仓库自动同步下载的管理方法的示意框图。
具体实施方式
22.以下结合各附图对本技术内容做进一步详述。需要说明的是,以下是本发明较佳实施例的说明,并不对本发明构成任何限制。本发明较佳实施例的说明只是作为本发明一般原理的说明。
23.如图2,一种代码仓库自动同步下载的管理系统,包括artifactory服务器、应用计算机,应用计算机包括浏览器工具组件、jenkins组件、自动同步模块、本地代码文件库;自动同步模块包括文件清单爬虫模块、文件爬虫模块、控制模块、代码更新检查模块;控制模块驱动文件清单爬虫模块通过调动jenkins组件驱动浏览器工具组件获得artifactory服务器的代码仓库中的仓库代码文件清单;控制模块驱动代码更新检查模块检查本地代码文件库,获得本地代码文件清单,代码更新检查模块对比本地代码文件清单与仓库代码文件清单的差别,得到不同代码文件清单;控制模块根据不同代码文件清单驱动文件爬虫模块通过调动jenkins组件驱动浏览器工具组件获得artifactory服务器的代码仓库中的代码
文件;控制模块将所述代码文件保存在本地代码文件库中。
24.研发人员,在开发代码之前可以启动管理系统,获取artifactory服务器中的更新内容。特别是搭建研发项目环境的时候,需要下载软件开发项目的初始环境,需要下载非常多的软件代码或依赖性文件,如果都通过人工进行网页筛选,需要耗费大量的人力,采用自动同步模块中的文件清单爬虫模块,可以自动获得文件清单,自动根据清单进行下载。大幅度提高工作效率。
25.上述仓库代码文件清单包括文件名称、文件创建日期、文件大小、文件的md5校验值;代码更新检查模块检查本地代码文件库,本地代码文件清单包括文件名称、文件创建日期、文件大小、文件的md5校验值;代码更新检查模块对比仓库代码文件清单与本地代码文件清单,将本地代码文件清单没有仓库代码文件清单的文件名称的文件,加入不同代码文件清单;代码更新检查模块对比仓库代码文件清单与本地代码文件清单,将相同文件名,不同md5校验值或不同文件大小的文件加入不同代码文件清单;控制模块根据不同代码文件清单爬取有相同文件名,不同md5校验值的文件时,需要获得操作者的授权。
26.对于一个项目,经常出现不同的研发人员,更新同一个文件,这个时候,就会出现不同的版本,不同的版本之间有不同的配套关系,不同的文件,其md5校验值是不同的,自动同步模块发现这种文件的时候 ,下载之前,需要得到操作者的授权,才能覆盖本地文件。
27.上述还可以包括软件开发工程,软件开发工程包括本地代码文件库的代码,软件开发工程可以对本地代码文件库的代码进行编译与运行调试。
28.在应用计算机上,包括本地的软件开发工程环境,可以生成新的代码。
29.如图3,上述还包括文件上传模块;控制模块驱动代码更新检查模块检查本地代码文件库,获得本地代码文件清单,代码更新检查模块对比本地代码文件清单与仓库代码文件清单的差别,得到本地新文件清单;控制模块根据本地新文件清单驱动文件上传模块通过调动jenkins组件驱动浏览器工具将本地新文件清单的文件上传到artifactory服务器的代码仓库中。
30.本地开发的软件文件,无论是源代码还是目标可执行模块,都可以自动上传到artifactory服务器。
31.根据权利要求4所述的代码仓库自动同步下载的管理系统,其特征在于,代码更新检查模块对比仓库代码文件清单与本地代码文件清单,将仓库代码文件清单没有的本地代码文件清单的文件,加入本地新文件清单;代码更新检查模块对比仓库代码文件清单与本地代码文件清单,将相同文件名,不同md5校验值,本地文件创建日期晚于仓库文件创建日期的文件,加入本地新文件清单。
32.上传代码的时候,artifactory服务器没有的代码,可以自动上传,对于服务器与本地同时出现相同文件名称的代码或者可执行文件,需要检查哪个文件的版本高,本地文件创建时间晚的,可以加入本地新文件清单。
33.上述,将本地新文件清单的文件上传到artifactory服务器的代码仓库中时,需要获得操作者的授权,授权包括不限于特定密码鉴定、短信验证码验证操作者身份。
34.上传代码到artifactory服务器,操作设计到其他开发人员,需要慎重,需要验证操作者的权限,artifactory服务器还可以记录操作人员操作过程的日志,便于回溯。
35.如图4,一种代码仓库自动同步下载的管理方法,包括,
步骤10:应用计算机获取artifactory服务器url地址;步骤20:jenkins插件中调动jenkins组件驱动浏览器工具组件获得artifactory服务器的代码仓库中的仓库代码文件清单;步骤30:jenkins插件获得本地代码文件清单,对比本地代码文件清单与仓库代码文件清单的差别,得到不同代码文件清单和本地新文件清单;步骤40:jenkins插件根据不同代码文件清单将artifactory服务器中的代码文件下载到本地文件库中;步骤50:jenkins插件根据本地新文件清单将本地文件库的代码文件,上传到artifactory服务器中。
36.采用jenkins插件,可以快速地在jenkins组件环境中,开发出软件来,快速实现管理方法,通过jenkins插件,自动到artifactory服务器url地址获得网页文件,插件调用jar包程序,输入爬取数据的网址,jar包程序爬取artifactory html网页数据,jsoup解析html网页数据,jar包返回爬取到的文件名数据到jenkins插件,jenkins插件展示文件名列表。
37.上述仓库代码文件清单包括文件名称、文件创建日期、文件大小、文件的md5校验值;本地代码文件清单包括文件名称、文件创建日期、文件大小、文件的md5校验值。
38.上述步骤30中,对比仓库代码文件清单与本地代码文件清单,将本地代码文件清单没有仓库代码文件清单的文件名称的文件,加入不同代码文件清单;对比仓库代码文件清单与本地代码文件清单,将相同文件名,不同md5校验值或不同文件大小的文件加入不同代码文件清单;步骤40中,根据不同代码文件清单将artifactory服务器中的代码文件下载到本地文件库中是,需要获得操作者的授权。
39.下载服务器文件到本地,一般受影响的就是本地操作者,验证的时候,可以做操作者简单的密码认证授权即可。
40.上述步骤30中,对比仓库代码文件清单与本地代码文件清单,将仓库代码文件清单没有的本地代码文件清单的文件,加入本地新文件清单;对比仓库代码文件清单与本地代码文件清单,将相同文件名,不同md5校验值,本地文件创建日期晚于仓库文件创建日期的文件,加入本地新文件清单。
41.上述步骤50中,本地新文件清单的文件上传到artifactory服务器的代码仓库中时,需要获得操作者的授权,授权包括不限于特定密码鉴定、短信验证码验证操作者身份。
42.上传代码或文件到artifactory服务器,受影响的成员众多,需要严格认证操作者的权限,同时需要反复让操作者确认操作,防止误操作。
43.本发明虽然根据优选实施例和若干备选方案进行说明和描述,但发明不会被在本说明书中的特定描述所限制。其他另外的替代或等同组件也可以用于实践本发明。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献