本发明涉及计算机领域,特别涉及一种自动化打包部署的方法。
背景技术:
企业应用(enterpriseapplication)是指运行在操作系统和中间件之上,实现特定业务逻辑的软件发布包和业务数据。企业应用部署(enterpriseapplicationdeployment)是把企业应用部署在一台或多台计算机的操作系统或中间件之上,从而提供一个可供测试、培训和生产的运行环境。
企业应用部署是软件持续交付(continuousdelivery)的重要环节,特别是所交付的企业应用部署架构复杂(比如多机)、部署环境多(比如开发、测试、生产环境)和部署频率高(比如每周一次)时,如何提高企业应用部署的效率和质量,对企业信息化是否能快速满足业务需求的快速变化至关重要。
然而,当前的企业应用部署在方法体系上缺乏完善的管理信息模型,在工具上采用手工编写和执行部署脚本。这种传统的应用部署方式会导致部署效率不高,对部署过程缺乏管控,对部署结果缺乏审计。
技术实现要素:
本发明是通过如下技术方案实现的,本发明提供一种自动化打包部署的方法,包括以下步骤,s1自定义上传部署文件;s2配置源码git相关配置;s3选择源码分支及构建工具进行部署操作,该方法能够提供web界面可以操作和查阅。
步骤s1中,具体的,将描述有环境信息和部署脚本信息的文件上传到应用中。
步骤s2中,具体的,将源码的git地址以及用户名、密码录入数据库中。
步骤s3中,具体的,选择git库中的源码分支及构建命令进行代码的打包操作,并将打包好的文件发布到环境中。
本发明还提供一种计算机可读介质,其上存储有计算机程序,该程序被处理器执行以实现所述的方法。
本发明还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序以实现所述的方法。
本发明相对于现有技术的有益效果是,使用spring-boot,实现了一种自动化打包部署的web工具,将应用的打包部署的方式自动化,并提供web界面可以操作和查阅,提高部署效率,并加强对部署过程的管控,对部署结果进行审计。
附图说明
图1本发明一实施例提供的自动化打包部署流程图
图2本发明一实施例提供的计算机示意图
具体实施方式
下面结合附图对本发明的较佳实施例进行详细阐述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。
自动化打包部署包括两个部分:一个是打包,通过git工具去拉取代码到本地,然后通过maven或者gradle等构建工具将代码打包成安装文件;一个是部署,通过自定义脚本命令将安装文件传输到目标机器中进行部署操作。
本实施例中根据需求建立相应的数据模型,包括package,package_config,topology,topology_archive等。其中package是安装包的元信息,包括名称、版本、文件路径、源码分支、构建命令、描述等;package_config是源码的git相关配置信息,包括git地址、用户名、密码等;topology是用来描述部署环境的基本信息,指明topology文件位置,topology文件描述主机信息、部署步骤等。
如下表1所示为package表:部署文件的元信息。
表1
如下表2所示为package_config表:部署文件的配置信息。
表2
如下表3所示为topology表:部署环境信息。
本实施例中流程如图1所示,包括如下内容:
a.自定义上传部署文件(topology文件);具体的,将描述有环境信息和部署脚本信息的文件上传到应用中。
b.配置源码git相关配置;具体的,将源码的git地址以及用户名、密码录入数据库中
c.选择源码分支及构建工具进行部署操作;具体的,选择git库中的源码分支及构建命令进行代码的打包操作,并将打包好的文件发布到环境中。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序或者程序指令相关的硬件来完成,前述的程序可以存储在计算机可读取的存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质中。
本发明还提供一种计算机设备,如图2所示,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序以实现所述的步骤。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。