CN112988571B - 一种用于优化cc代码的自动化编译部署方法及系统 - Google Patents
一种用于优化cc代码的自动化编译部署方法及系统 Download PDFInfo
- Publication number
- CN112988571B CN112988571B CN202110174201.3A CN202110174201A CN112988571B CN 112988571 B CN112988571 B CN 112988571B CN 202110174201 A CN202110174201 A CN 202110174201A CN 112988571 B CN112988571 B CN 112988571B
- Authority
- CN
- China
- Prior art keywords
- server
- information
- code file
- deployment
- file information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3664—Environments for testing or debugging software
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
- G06F11/3628—Software debugging of optimised code
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Software Systems (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种用于优化CC代码的自动化编译部署方法及系统,所述方法应用于一集成部署系统,所述系统包括一Clearcase胖客户端、镜像视图服务器、版本编译服务器,其中,所述方法包括:linux环境通过Clearcase胖客户端获得工单信息,其中,工单信息中包括代码文件信息;将工单信息存储于Clearcase胖客户端的服务器,再通过建立视图将代码文件信息储存于镜像视图服务器,然后同步至版本编译服务器;对同步至版本编译服务器中的代码文件信息进行编译打包处理后,获得目标代码文件信息,最后将其上传至目标部署服务器中进行部署。解决了现有技术中的银行测试环境存在更新代码及编译部署耗时较长,无法同时部署多套环境,部署效率低下,错误率较高的技术问题。
Description
技术领域
本发明涉及银行测试环境部署技术领域,尤其涉及一种用于优化CC代码的自动化编译部署方法及系统。
背景技术
银行测试环境及其代码服务器管控较为严格,应用服务器根据系统与上线时间点的不同分为多个测试环境,每个测试环境都有自己独立的一整套服务器集群,机器数量繁多,版本更新速度快,编译部署较慢等问题,导致测试环境每次在更新代码以及编译部署的时间上耗费较多,通过人工也无法同时操作部署多套环境,部署效率低下,错误率较高,一旦报错重新提交代码并更新编译耗时更长。对测试效率的提升造成很大影响。
但本申请发明人在实现本申请实施例中发明技术方案的过程中,发现上述技术至少存在如下技术问题:
现有技术中的银行测试环境存在更新代码及编译部署耗时较长,无法同时部署多套环境,部署效率低下,错误率较高的技术问题。
发明内容
本申请实施例通过提供一种用于优化CC代码的自动化编译部署方法及系统,解决了现有技术中的银行测试环境存在更新代码及编译部署耗时较长,无法同时部署多套环境,部署效率低下,错误率较高的技术问题,达到ClearCase工具代码的同步更新及自动编译,通过识别测试环境版本,实现多个测试环境的自动化定时部署,提高部署效率的技术效果。
鉴于上述问题,提出了本申请实施例提供一种用于优化CC代码的自动化编译部署方法及系统。
第一方面,本申请实施例提供了一种用于优化CC代码的自动化编译部署方法,所述方法应用于一集成部署系统,所述系统包括一Clearcase胖客户端、镜像视图服务器、版本编译服务器,其中,所述方法包括:获得第一收集指令;根据所述第一收集指令,linux环境通过所述Clearcase胖客户端,获得第一工单信息,其中,所述第一工单信息中包括第一代码文件信息;获得所述Clearcase胖客户端的第一服务器信息;将所述第一工单信息存储于所述第一服务器之后,获得第一操作指令;根据所述第一操作指令,建立所述镜像视图服务器;通过所述镜像视图服务器,建立视图之后,获得所述第一服务器中的所述第一代码文件信息并储存于所述镜像视图服务器中;获得第二操作指令;根据所述第二操作指令,采用第一同步技术,将所述储存于所述镜像视图服务器中的所述第一代码文件信息同步至所述版本编译服务器中;获得第三操作指令;根据所述第三操作指令,对同步至所述版本编译服务器中的所述第一代码文件信息进行编译打包处理之后,获得目标代码文件信息;将所述目标代码文件信息上传至目标部署服务器中进行部署,其中,所述目标部署服务器中包括多个部署服务器。
另一方面,本申请还提供了一种用于优化CC代码的自动化编译部署系统,所述系统包括:第一获得单元,所述第一获得单元用于获得第一收集指令;第二获得单元,所述第二获得单元用于根据所述第一收集指令,linux环境通过所述Clearcase胖客户端,获得第一工单信息,其中,所述第一工单信息中包括第一代码文件信息;第三获得单元,所述第三获得单元用于获得所述Clearcase胖客户端的第一服务器信息;第四获得单元,所述第四获得单元用于将所述第一工单信息存储于所述第一服务器之后,获得第一操作指令;第一建立单元,所述第一建立单元用于根据所述第一操作指令,建立所述镜像视图服务器;第五获得单元,所述第五获得单元用于通过所述镜像视图服务器,建立视图之后,获得所述第一服务器中的所述第一代码文件信息并储存于所述镜像视图服务器中;第六获得单元,所述第六获得单元用于获得第二操作指令;第一同步单元,所述第一同步单元用于根据所述第二操作指令,采用第一同步技术,将所述储存于所述镜像视图服务器中的所述第一代码文件信息同步至所述版本编译服务器中;第七获得单元,所述第七获得单元用于获得第三操作指令;第八获得单元,所述第八获得单元用于根据所述第三操作指令,对同步至所述版本编译服务器中的所述第一代码文件信息进行编译打包处理之后,获得目标代码文件信息;第一部署单元,所述第一部署单元用于将所述目标代码文件信息上传至目标部署服务器中进行部署,其中,所述目标部署服务器中包括多个部署服务器。
第三方面,本发明提供了一种用于优化CC代码的自动化编译部署系统,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,所述处理器执行所述程序时实现第一方面所述方法的步骤。
本申请实施例中提供的一个或多个技术方案,至少具有如下技术效果或优点:
本申请实施例提供了一种用于优化CC代码的自动化编译部署方法及系统,所述方法应用于一集成部署系统,所述系统包括一Clearcase胖客户端、镜像视图服务器、版本编译服务器,其中,所述方法包括:获得第一收集指令;根据所述第一收集指令,linux环境通过所述Clearcase胖客户端,获得第一工单信息,其中,所述第一工单信息中包括第一代码文件信息;获得所述Clearcase胖客户端的第一服务器信息;将所述第一工单信息存储于所述第一服务器之后,获得第一操作指令;根据所述第一操作指令,建立所述镜像视图服务器;通过所述镜像视图服务器,建立视图之后,获得所述第一服务器中的所述第一代码文件信息并储存于所述镜像视图服务器中;获得第二操作指令;根据所述第二操作指令,采用第一同步技术,将所述储存于所述镜像视图服务器中的所述第一代码文件信息同步至所述版本编译服务器中;获得第三操作指令;根据所述第三操作指令,对同步至所述版本编译服务器中的所述第一代码文件信息进行编译打包处理之后,获得目标代码文件信息;将所述目标代码文件信息上传至目标部署服务器中进行部署,其中,所述目标部署服务器中包括多个部署服务器。解决了现有技术中的银行测试环境存在更新代码及编译部署耗时较长,无法同时部署多套环境,部署效率低下,错误率较高的技术问题,达到ClearCase工具代码的同步更新及自动编译,通过识别测试环境版本,实现多个测试环境的自动化定时部署,提高部署效率的技术效果。
上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,而可依照说明书的内容予以实施,并且为了让本申请的上述和其它目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。
附图说明
图1为本申请实施例一种用于优化CC代码的自动化编译部署方法的流程示意图;
图2为本申请实施例一种用于优化CC代码的自动化编译部署系统的结构示意图;
图3为本申请实施例示例性电子设备的结构示意图。
附图标记说明:第一获得单元11,第二获得单元12,第三获得单元13,第四获得单元14,第一建立单元15,第五获得单元16,第六获得单元17,第一同步单元18,第七获得单元19,第八获得单元20,第一部署单元21,总线300,接收器301,处理器302,发送器303,存储器304,总线接口306。
具体实施方式
本申请实施例通过提供一种用于优化CC代码的自动化编译部署方法及系统,解决了现有技术中的银行测试环境存在更新代码及编译部署耗时较长,无法同时部署多套环境,部署效率低下,错误率较高的技术问题,达到ClearCase工具代码的同步更新及自动编译,通过识别测试环境版本,实现多个测试环境的自动化定时部署,提高部署效率的技术效果。下面,将参考附图详细的描述根据本申请的示例实施例。显然,所描述的实施例仅是本申请的一部分实施例,而不是本申请的全部实施例,应理解,本申请不受这里描述的示例实施例的限制。
申请概述
银行测试环境及其代码服务器管控较为严格,应用服务器根据系统与上线时间点的不同分为多个测试环境,每个测试环境都有自己独立的一整套服务器集群,机器数量繁多,版本更新速度快,但现有技术中存在更新代码及编译部署耗时较长,无法同时部署多套环境,部署效率低下,错误率较高的技术问题。
针对上述技术问题,本申请提供的技术方案总体思路如下:
本申请实施例提供了一种用于优化CC代码的自动化编译部署方法及系统,所述方法应用于一集成部署系统,所述系统包括一Clearcase胖客户端、镜像视图服务器、版本编译服务器,其中,所述方法包括:获得第一收集指令;根据所述第一收集指令,linux环境通过所述Clearcase胖客户端,获得第一工单信息,其中,所述第一工单信息中包括第一代码文件信息;获得所述Clearcase胖客户端的第一服务器信息;将所述第一工单信息存储于所述第一服务器之后,获得第一操作指令;根据所述第一操作指令,建立所述镜像视图服务器;通过所述镜像视图服务器,建立视图之后,获得所述第一服务器中的所述第一代码文件信息并储存于所述镜像视图服务器中;获得第二操作指令;根据所述第二操作指令,采用第一同步技术,将所述储存于所述镜像视图服务器中的所述第一代码文件信息同步至所述版本编译服务器中;获得第三操作指令;根据所述第三操作指令,对同步至所述版本编译服务器中的所述第一代码文件信息进行编译打包处理之后,获得目标代码文件信息;将所述目标代码文件信息上传至目标部署服务器中进行部署,其中,所述目标部署服务器中包括多个部署服务器。
在介绍了本申请基本原理后,下面将结合说明书附图来具体介绍本申请的各种非限制性的实施方式。
实施例一
如图1所示,本申请实施例提供了一种用于优化CC代码的自动化编译部署方法,所述方法应用于一集成部署系统,所述系统包括一Clearcase胖客户端、镜像视图服务器、版本编译服务器,其中,所述方法包括:
步骤S100:获得第一收集指令;
步骤S200:根据所述第一收集指令,linux环境通过所述Clearcase胖客户端,获得第一工单信息,其中,所述第一工单信息中包括第一代码文件信息;
具体而言,本申请实施例涉及的″CC″即为ClearCase,其中,ClearCase具体的说是做配置管理的工具,只是SCM管理工具其中的一种,是RATIONAL公司开发的配置管理工具,类似于VSS和CVS,但功能z作用比VSS和CVS强大的多,且可以与Windows资源管理器集成使用,还可以与很多开发工具集成在一起使用,但是对配置管理员的要求比较高。胖客户端是相对于″瘦客户端″(基于Web的应用程序)而言的,它是在客户机器上安装配置的一个功能丰富的交互式的用户界面,例如Oracle、DB2数据库的客户端管理工具。本申请实施例中的Clearcase胖客户端即为基于Clearcase开发工具的胖客户端,linux操作环境通过所述Clearcase胖客户端实现工单信息的自动集成,此处的工单信息即为Clearcase代码文件。
进一步而言,所述根据所述第一收集指令,linux环境通过所述Clearcase胖客户端,获得第一工单信息,本申请实施例步骤S200包括:
步骤S210:获得所述Clearcase胖客户端的第一组件信息;
步骤S220:获得第一脚本信息;
步骤S230:所述linux环境通过所述第一组件信息、所述第一脚本信息,收集所述第一工单信息。
进一步的,所述第一工单信息具有第一属性状态信息,且所述第一属性状态信息为Close状态;所述第一脚本为shell脚本;所述第一组件为cleartool API。
具体而言,所述linux环境通过ClearCase工具的组件cleartool API和shell脚本收集到已经处于Close状态的工单信息,并实现Close状态工单信息的自动集成,从而实现ClearCase工具的linux后台自动集成。
步骤S300:获得所述Clearcase胖客户端的第一服务器信息;
步骤S400:将所述第一工单信息存储于所述第一服务器之后,获得第一操作指令;
步骤S500:根据所述第一操作指令,建立所述镜像视图服务器;
步骤S600:通过所述镜像视图服务器,建立视图之后,获得所述第一服务器中的所述第一代码文件信息并储存于所述镜像视图服务器中;
具体而言,所述linux环境通过所述Clearcase胖客户端实现工单信息的自动集成之后,并将工单信息存储至所述Clearcase胖客户端的服务器上,然后通过在所述ClearCase胖客户端建立镜像视图服务器,建立视图后基于所述linux环境底层的文件同步技术,将代码文件信息同步更新至所述镜像视图服务器中,进而达到实时获取CC版本服务器上代码的目的。
步骤S700:获得第二操作指令;
步骤S800:根据所述第二操作指令,采用第一同步技术,将所述储存于所述镜像视图服务器中的所述第一代码文件信息同步至所述版本编译服务器中;
进一步而言,所述根据所述第二操作指令,采用第一同步技术,将所述储存于所述镜像视图服务器中的所述第一代码文件信息同步至所述版本编译服务器中,本申请实施例步骤S800还包括:
步骤S810:获得第一应答模式;
步骤S820:获得第一预设时间间隔;
步骤S830:根据所述第一应答模式、采用第一同步技术,按照所述第一预设时间间隔,对所述镜像视图服务器进行底层文件同步操作,以使储存于。
进一步的,所述第一应答模式为expect应答模式。
进一步的,所述第一同步技术为用于所述linux环境的rsync底层文件同步技术。
具体而言,expect是一个用来实现自动交互功能的软件套件,rsync是一款开源的、快速的、多功能的、可实现全量及增量的本地或远程数据同步备份的优秀工具,并且可以不进行改变原有数据的属性信息,实现数据的备份迁移特性,适用于unix、linux、windows等多种操作系统平台。本申请实施例基于所述linux环境的rsync底层文件同步技术,通过使用expect应答模式,定时将存储在所述镜像视图服务器中的代码文件信息同步至所述版本编译服务器中,解决了商业银行环境代码服务器与版本服务器网络互不连通的问题,从而实现linux服务器后台与ClearCase胖客户端服务器间的文件增量同步更新,满足代码更新的实时同步需求,同步操作效率高,能够达到实时更新的速度。
步骤S900:获得第三操作指令;
步骤S1000:根据所述第三操作指令,对同步至所述版本编译服务器中的所述第一代码文件信息进行编译打包处理之后,获得目标代码文件信息;
进一步而言,所述根据所述第三操作指令,对同步至所述版本编译服务器中的所述第一代码文件信息进行编译打包处理,本申请实施例步骤S1000具体包括:
步骤S1010:根据所述第三操作指令,读取所述版本编译服务器的第一配置信息;
步骤S1020:根据所述第一配置信息,对同步至所述版本编译服务器中的所述第一代码文件信息进行代码编译;
步骤S1030:对所述代码编译之后的所述第一代码文件信息进行打包处理之后,获得所述目标代码文件信息及第四操作指令;
步骤S1040:根据所述第四操作指令、所述第一配置信息,将所述目标代码文件信息上传至所述目标部署服务器中进行部署。
具体而言,针对商业银行的业务场景较为复杂的特点,通过服务器信息配置化,实现了各个环境服务器的自动更新部署,具体地,在所述第一代码文件信息同步更新至所述版本编译服务器中之后,首先要读取所述版本编译服务器的配置信息,根据配置信息对代码文件信息进行自动编译、打包处理后,即可得到目标代码文件信息,最后将其上传至相应的目标部署服务器中进行部署。
进一步而言,所述对所述代码编译之后的所述第一代码文件信息进行打包处理,本申请实施例步骤S1030还包括:
步骤S1031:获得第二脚本信息,其中,所述第二脚本信息为版本打包脚本;
步骤S1032:获得第一代码更新目录;
步骤S1033:获得第一调用指令;
步骤S1034:根据所述第一调用指令,调用所述第二脚本信息并根据所述第一代码更新目录进行版本打包。
具体而言,在对同步至所述版本编译服务器中的代码文件信息进行编译之后,自动调用版本打包脚本,选择相应的代码更新目录对编译后的代码文件信息进行版本打包处理。
步骤S1100:将所述目标代码文件信息上传至目标部署服务器中进行部署,其中,所述目标部署服务器中包括多个部署服务器。
进一步的,所述多个部署服务器的数量至少为两个。
进一步而言,将所述目标代码文件信息上传至目标部署服务器中进行部署,本申请实施例步骤S1100还包括:
步骤S1110:获得第三脚本信息,其中,所述第三脚本信息为部署脚本;
步骤S1120:根据所述第三脚本信息,基于SSH远程调用命令对所述目标代码文件信息进行版本部署。
具体而言,在将目标代码文件信息上传至相应的目标部署服务器之后,其中,所述目标部署服务器为两个或两个以上的部署服务器,基于SSH远程调用命令对所述目标代码文件信息进行版本部署。其中,SSH为英文Secure Shell的缩写,是由ETF的网络小组所制定,SSH为建立在应用层基础上的安全协议。SSH是一种较可靠,专为远程登录会话和其他网络服务提供安全性的协议,利用SSH协议可以有效防止远程管理过程中的信息泄露问题,进而实现多个测试环境的自动化定时部署。
进一步而言,将所述目标代码文件信息上传至目标部署服务器中进行部署,本申请实施例步骤S1100还包括:
步骤S1130:获得免密码登录信任信息;
步骤S1140:根据所述免密码登录信任信息,远程免密登录所述多个部署服务器,以通过所述多个部署服务器实现所述目标代码文件信息的上传。
具体而言,通过远程免密的方式登录所述多个部署服务器,上传版本执行部署脚本,基于SSH远程调用命令对所述目标代码文件信息进行版本部署。
综上所述,本申请实施例所提供的一种用于优化CC代码的自动化编译部署方法及系统具有如下技术效果:
1、由于通过在ClearCase胖客户端建立镜像视图服务器,达到实时获取CC版本服务器上代码的目的,并通过所述linux环境的rsync底层文件同步技术在服务器间实现增量同步更新,最后再通过识别所述版本编译服务器的配置信息,进而实现多个测试环境的自动更新部署,提高部署效率的技术效果。
实施例二
基于与前述实施例中一种用于优化CC代码的自动化编译部署方法同样发明构思,本发明还提供了一种用于优化CC代码的自动化编译部署系统,如图2所示,所述系统包括:
第一获得单元11,所述第一获得单元11用于获得第一收集指令;
第二获得单元12,所述第二获得单元12用于根据所述第一收集指令,linux环境通过所述Clearcase胖客户端,获得第一工单信息,其中,所述第一工单信息中包括第一代码文件信息;
第三获得单元13,所述第三获得单元13用于获得所述Clearcase胖客户端的第一服务器信息;
第四获得单元14,所述第四获得单元14用于将所述第一工单信息存储于所述第一服务器之后,获得第一操作指令;
第一建立单元15,所述第一建立单元15用于根据所述第一操作指令,建立所述镜像视图服务器;
第五获得单元16,所述第五获得单元16用于通过所述镜像视图服务器,建立视图之后,获得所述第一服务器中的所述第一代码文件信息并储存于所述镜像视图服务器中;
第六获得单元17,所述第六获得单元17用于获得第二操作指令;
第一同步单元18,所述第一同步单元18用于根据所述第二操作指令,采用第一同步技术,将所述储存于所述镜像视图服务器中的所述第一代码文件信息同步至所述版本编译服务器中;
第七获得单元19,所述第七获得单元19用于获得第三操作指令;
第八获得单元20,所述第八获得单元20用于根据所述第三操作指令,对同步至所述版本编译服务器中的所述第一代码文件信息进行编译打包处理之后,获得目标代码文件信息;
第一部署单元21,所述第一部署单元21用于将所述目标代码文件信息上传至目标部署服务器中进行部署,其中,所述目标部署服务器中包括多个部署服务器。
进一步的,所述第二获得单元12包括:
第九获得单元,所述第九获得单元用于获得所述clearcase胖客户端的第一组件信息;
第十获得单元,所述第十获得单元用于获得第一脚本信息;
第一收集单元,所述第一收集单元用于所述linux环境通过所述第一组件信息、所述第一脚本信息,收集所述第一工单信息。
进一步的,所述第一工单信息具有第一属性状态信息,且所述第一属性状态信息为Close状态。
进一步的,所述第一脚本为shell脚本。
进一步的,所述第一组件为cleartool API。
进一步的,所述第一同步单元18包括:
第十一获得单元,所述第十一获得单元用于获得第一应答模式;
第十二获得单元,所述第十二获得单元用于获得第一预设时间间隔;
第二同步单元,所述第二同步单元用于根据所述第一应答模式、采用第一同步技术,按照所述第一预设时间间隔,对所述镜像视图服务器进行底层文件同步操作,以使储存于所述镜像视图服务器中的所述第一代码文件信息同步至所述版本编译服务器中。
进一步的,所述第一应答模式为expect应答模式。
进一步的,所述第一同步技术为用于所述linux环境的rsync底层文件同步技术。
进一步的,所述系统包括:
第一读取单元,所述第一读取单元用于根据所述第三操作指令,读取所述版本编译服务器的第一配置信息;
第一编译单元,所述第一编译单元用于根据所述第一配置信息,对同步至所述版本编译服务器中的所述第一代码文件信息进行代码编译;
第十三获得单元,所述第十三获得单元用于对所述代码编译之后的所述第一代码文件信息进行打包处理之后,获得所述目标代码文件信息及第四操作指令;
第二部署单元,所述第二部署单元用于根据所述第四操作指令、所述第一配置信息,将所述目标代码文件信息上传至所述目标部署服务器中进行部署。
进一步的,所述多个部署服务器的数量至少为两个。
进一步的,所述系统还包括:
第十四获得单元,所述第十四获得单元用于获得第二脚本信息,其中,所述第二脚本信息为版本打包脚本;
第十五获得单元,所述第十五获得单元用于获得第一代码更新目录;
第十六获得单元,所述第十六获得单元用于获得第一调用指令;
第一打包单元,所述第一打包单元用于根据所述第一调用指令,调用所述第二脚本信息并根据所述第一代码更新目录进行版本打包。
进一步的,所述系统还包括:
第十七获得单元,所述第十七获得单元用于获得第三脚本信息,其中,所述第三脚本信息为部署脚本;
第三部署单元,所述第三部署单元用于根据所述第三脚本信息,基于SSH远程调用命令对所述目标代码文件信息进行版本部署。
进一步的,所述系统还包括:
第十八获得单元,所述第十八获得单元用于获得免密码登录信任信息;
第一上传单元,所述第一上传单元用于根据所述免密码登录信任信息,远程免密登录所述多个部署服务器,以通过所述多个部署服务器实现所述目标代码文件信息的上传。
前述图1实施例一中的一种用于优化CC代码的自动化编译部署方法的各种变化方式和具体实例同样适用于本实施例的一种用于优化CC代码的自动化编译部署系统,通过前述对一种用于优化CC代码的自动化编译部署方法的详细描述,本领域技术人员可以清楚的知道本实施例中一种用于优化CC代码的自动化编译部署系统的实施方法,所以为了说明书的简洁,在此不再详述。
示例性电子设备
下面参考图3来描述本申请实施例的电子设备。
图3图示了根据本申请实施例的电子设备的结构示意图。
基于与前述实施例中一种用于优化CC代码的自动化编译部署方法的发明构思,本发明还提供一种用于优化CC代码的自动化编译部署系统,其上存储有计算机程序,该程序被处理器执行时实现前文所述一种用于优化CC代码的自动化编译部署方法的任一方法的步骤。
其中,在图3中,总线架构(用总线300来代表),总线300可以包括任意数量的互联的总线和桥,总线300将包括由处理器302代表的一个或多个处理器和存储器304代表的存储器的各种电路链接在一起。总线300还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口306在总线300和接收器301和发送器303之间提供接口。接收器301和发送器303可以是同一个元件,即收发机,提供用于在传输介质上与各种其他系统通信的单元。
处理器302负责管理总线300和通常的处理,而存储器304可以被用于存储处理器302在执行操作时所使用的数据。
本申请实施例提供了一种用于优化CC代码的自动化编译部署方法及系统,所述方法应用于一集成部署系统,所述系统包括一Clearcase胖客户端、镜像视图服务器、版本编译服务器,其中,所述方法包括:获得第一收集指令;根据所述第一收集指令,linux环境通过所述Clearcase胖客户端,获得第一工单信息,其中,所述第一工单信息中包括第一代码文件信息;获得所述Clearcase胖客户端的第一服务器信息;将所述第一工单信息存储于所述第一服务器之后,获得第一操作指令;根据所述第一操作指令,建立所述镜像视图服务器;通过所述镜像视图服务器,建立视图之后,获得所述第一服务器中的所述第一代码文件信息并储存于所述镜像视图服务器中;获得第二操作指令;根据所述第二操作指令,采用第一同步技术,将所述储存于所述镜像视图服务器中的所述第一代码文件信息同步至所述版本编译服务器中;获得第三操作指令;根据所述第三操作指令,对同步至所述版本编译服务器中的所述第一代码文件信息进行编译打包处理之后,获得目标代码文件信息;将所述目标代码文件信息上传至目标部署服务器中进行部署,其中,所述目标部署服务器中包括多个部署服务器。解决了现有技术中的银行测试环境存在更新代码及编译部署耗时较长,无法同时部署多套环境,部署效率低下,错误率较高的技术问题,达到ClearCase工具代码的同步更新及自动编译,通过识别测试环境版本,实现多个测试环境的自动化定时部署,提高部署效率的技术效果。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的系统。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令系统的制造品,该指令系统实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (15)
1.一种用于优化CC代码的自动化编译部署方法,所述方法应用于一集成部署系统,所述系统包括一Clearcase胖客户端、镜像视图服务器、版本编译服务器,其中,所述方法包括:
获得第一收集指令;
根据所述第一收集指令,linux环境通过所述Clearcase胖客户端,获得第一工单信息,其中,所述第一工单信息中包括第一代码文件信息;
获得所述Clearcase胖客户端的第一服务器信息;
将所述第一工单信息存储于所述第一服务器之后,获得第一操作指令;
根据所述第一操作指令,建立所述镜像视图服务器;
通过所述镜像视图服务器,建立视图之后,获得所述第一服务器中的所述第一代码文件信息并储存于所述镜像视图服务器中;
获得第二操作指令;
根据所述第二操作指令,采用第一同步技术,将所述储存于所述镜像视图服务器中的所述第一代码文件信息同步至所述版本编译服务器中;
获得第三操作指令;
根据所述第三操作指令,对同步至所述版本编译服务器中的所述第一代码文件信息进行编译打包处理之后,获得目标代码文件信息;
将所述目标代码文件信息上传至目标部署服务器中进行部署,其中,所述目标部署服务器中包括多个部署服务器。
2.如权利要求1所述的方法,其中,所述根据所述第一收集指令,linux环境通过所述Clearcase胖客户端,获得第一工单信息,包括:
获得所述Clearcase胖客户端的第一组件信息;
获得第一脚本信息;
所述linux环境通过所述第一组件信息、所述第一脚本信息,收集所述第一工单信息。
3.如权利要求1所述的方法,其中,所述第一工单信息具有第一属性状态信息,且所述第一属性状态信息为Close状态。
4.如权利要求2所述的方法,其中,所述第一脚本为shell脚本。
5.如权利要求2所述的方法,其中,所述第一组件为cleartoolAPI。
6.如权利要求1所述的方法,其中,所述根据所述第二操作指令,采用第一同步技术,将所述储存于所述镜像视图服务器中的所述第一代码文件信息同步至所述版本编译服务器中,所述方法还包括:
获得第一应答模式;
获得第一预设时间间隔;
根据所述第一应答模式、采用第一同步技术,按照所述第一预设时间间隔,对所述镜像视图服务器进行底层文件同步操作,以使储存于所述镜像视图服务器中的所述第一代码文件信息同步至所述版本编译服务器中。
7.如权利要求6所述的方法,其中,所述第一应答模式为expect应答模式。
8.如权利要求1所述的方法,其中,所述第一同步技术为用于所述linux环境的rsync底层文件同步技术。
9.如权利要求1所述的方法,其中,所述根据所述第三操作指令,对同步至所述版本编译服务器中的所述第一代码文件信息进行编译打包处理,具体包括:
根据所述第三操作指令,读取所述版本编译服务器的第一配置信息;
根据所述第一配置信息,对同步至所述版本编译服务器中的所述第一代码文件信息进行代码编译;
对所述代码编译之后的所述第一代码文件信息进行打包处理之后,获得所述目标代码文件信息及第四操作指令;
根据所述第四操作指令、所述第一配置信息,将所述目标代码文件信息上传至所述目标部署服务器中进行部署。
10.如权利要求1所述的方法,其中,所述多个部署服务器的数量至少为两个。
11.如权利要求9所述的方法,其中,所述对所述代码编译之后的所述第一代码文件信息进行打包处理,所述方法还包括:
获得第二脚本信息,其中,所述第二脚本信息为版本打包脚本;
获得第一代码更新目录;
获得第一调用指令;
根据所述第一调用指令,调用所述第二脚本信息并根据所述第一代码更新目录进行版本打包。
12.如权利要求1所述的方法,其中,所述方法还包括:
获得第三脚本信息,其中,所述第三脚本信息为部署脚本;
根据所述第三脚本信息,基于SSH远程调用命令对所述目标代码文件信息进行版本部署。
13.如权利要求1所述的方法,其中,所述方法还包括:
获得免密码登录信任信息;
根据所述免密码登录信任信息,远程免密登录所述多个部署服务器,以通过所述多个部署服务器实现所述目标代码文件信息的上传。
14.一种用于优化CC代码的自动化编译部署系统,其中,所述系统包括:
第一获得单元,所述第一获得单元用于获得第一收集指令;
第二获得单元,所述第二获得单元用于根据所述第一收集指令,linux环境通过Clearcase胖客户端,获得第一工单信息,其中,所述第一工单信息中包括第一代码文件信息;
第三获得单元,所述第三获得单元用于获得所述Clearcase胖客户端的第一服务器信息;
第四获得单元,所述第四获得单元用于将所述第一工单信息存储于第一服务器之后,获得第一操作指令;
第一建立单元,所述第一建立单元用于根据所述第一操作指令,建立镜像视图服务器;
第五获得单元,所述第五获得单元用于通过所述镜像视图服务器,建立视图之后,获得所述第一服务器中的所述第一代码文件信息并储存于所述镜像视图服务器中;
第六获得单元,所述第六获得单元用于获得第二操作指令;
第一同步单元,所述第一同步单元用于根据所述第二操作指令,采用第一同步技术,将所述储存于所述镜像视图服务器中的所述第一代码文件信息同步至版本编译服务器中;
第七获得单元,所述第七获得单元用于获得第三操作指令;
第八获得单元,所述第八获得单元用于根据所述第三操作指令,对同步至所述版本编译服务器中的所述第一代码文件信息进行编译打包处理之后,获得目标代码文件信息;
第一部署单元,所述第一部署单元用于将所述目标代码文件信息上传至目标部署服务器中进行部署,其中,所述目标部署服务器中包括多个部署服务器。
15.一种用于优化CC代码的自动化编译部署系统,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,所述处理器执行所述程序时实现权利要求1-13任一项所述系统的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110174201.3A CN112988571B (zh) | 2021-02-09 | 2021-02-09 | 一种用于优化cc代码的自动化编译部署方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110174201.3A CN112988571B (zh) | 2021-02-09 | 2021-02-09 | 一种用于优化cc代码的自动化编译部署方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112988571A CN112988571A (zh) | 2021-06-18 |
CN112988571B true CN112988571B (zh) | 2022-11-29 |
Family
ID=76349265
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110174201.3A Active CN112988571B (zh) | 2021-02-09 | 2021-02-09 | 一种用于优化cc代码的自动化编译部署方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112988571B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115904952A (zh) * | 2022-11-07 | 2023-04-04 | 卫宁健康科技集团股份有限公司 | 测试环境自动配置方法、装置、设备及存储介质 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016000126A1 (zh) * | 2014-06-30 | 2016-01-07 | 北京新媒传信科技有限公司 | 一种自动化部署方法和终端 |
CN110532189B (zh) * | 2019-07-18 | 2022-11-01 | 中国人民财产保险股份有限公司 | 一种持续集成系统、方法及装置 |
CN110572436B (zh) * | 2019-08-12 | 2020-09-22 | 浙江讯盟科技有限公司 | 多地跨集群的服务器部署方法及系统 |
CN110865840B (zh) * | 2019-11-18 | 2023-11-03 | 义乌中国小商品城大数据有限公司 | 一种应用管理方法、装置、服务器及存储介质 |
-
2021
- 2021-02-09 CN CN202110174201.3A patent/CN112988571B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN112988571A (zh) | 2021-06-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109120678B (zh) | 用于分布式存储系统的服务托管的方法和装置 | |
US7143112B2 (en) | Method and apparatus for data integration | |
CN107291750B (zh) | 一种数据迁移方法和装置 | |
CN112585919A (zh) | 利用基于云的应用管理技术来管理应用配置状态的方法 | |
CN109298868B (zh) | 测绘影像数据处理软件智能动态部署及卸载方法 | |
CN107688611B (zh) | 一种基于saltstack的Redis键值管理系统及方法 | |
CN107992537B (zh) | 业务属性传递方法、装置、计算机设备及存储介质 | |
CN107302476B (zh) | 一种测试异步交互系统的自动化测试方法与系统 | |
CN111538590A (zh) | 一种基于cs架构的分布式数据采集方法及系统 | |
CN106657167B (zh) | 管理服务器、服务器集群、以及管理方法 | |
CN111309734B (zh) | 自动生成表数据的方法及系统 | |
CN109814877A (zh) | 基于环境管理的项目部署方法及其装置 | |
CN113918637A (zh) | 一种基于bpmn2.0规范的流程引擎平台创建方法及系统 | |
CN112988571B (zh) | 一种用于优化cc代码的自动化编译部署方法及系统 | |
US11184251B2 (en) | Data center cartography bootstrapping from process table data | |
CN115344273B (zh) | 一种基于货架系统来运行应用软件的方法及系统 | |
CN111431951B (zh) | 一种数据处理方法、节点设备、系统及存储介质 | |
AU2021268828B2 (en) | Secure data replication in distributed data storage environments | |
CN112286538B (zh) | 一种Greenplum数据库自动化安装方法及装置 | |
CN114510529A (zh) | 数据同步方法、装置、计算机设备和存储介质 | |
CN111371606A (zh) | 一种使用rook部署ceph集群时指定monitor ip的方法 | |
CN118092982B (zh) | 一种云原生应用的多集群运维方法、设备及介质 | |
CN116366467B (zh) | 服务器无感知的分布式训练软件定义聚合通信框架和方法 | |
CN116909584B (zh) | 时空大数据引擎的部署方法、装置、设备以及存储介质 | |
CN117389713B (zh) | 存储系统应用业务数据迁移方法、装置、设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |