一种安装脚本部署的方法和设备技术

技术编号:25801951 阅读:24 留言:0更新日期:2020-09-29 18:35
本发明专利技术提供了一种安装脚本部署的方法和设备,该方法包括以下步骤:将不同执行环境的多种部署包和多种部署包对应的安装脚本存储到服务器中;响应于接收到在执行机上部署安装脚本的命令,在执行机上进行执行环境的检测并基于与检测到的执行环境对应的部署包和安装脚本进行部署准备;为每个执行机创建线程并执行部署准备中接收到的安装脚本;响应于安装完成,检测每个安装脚本的退出状态码并解析,将解析后的信息发送到显示装置。通过使用本发明专利技术的方案,能够使整个部署功能具备灵活扩展性,方便对出现的问题快速定位,节省了人力成本,大大提升了测试脚本的执行效率,进而提升自动化测试的效率。

【技术实现步骤摘要】
一种安装脚本部署的方法和设备
本领域涉及计算机领域,并且更具体地涉及一种安装脚本部署的方法和设备。
技术介绍
随着服务器自动化测试应用越来越广泛,测试场景越来越复杂,各种不同语言的自动化测试脚本被引入测试,例如:python、java、shell。各类语言的执行环境往往各不相同,面临如此种类丰富的脚本,如何搭建一个好的测试环境是十分关键的,下面将以java、python脚本为例,讲述如何自动化部署脚本执行环境。目前部署的执行环境比如jdk或python,一般使用同一种语言来开发脚本,只需要部署一种执行环境。但是部署执行环境也需要测试人员拷贝工具包到执行机器,手工进行部署安装。在执行机器数量很多的时候,重复性工作会消耗大量的人力成本,也会很大程度上影响到自动化测试的效率。因此,减少重复性的手工部署工作,适应批量执行机器同时部署的场景对提升测试效率是十分必要的。
技术实现思路
有鉴于此,本专利技术实施例的目的在于提出一种安装脚本部署的方法和设备,通过使用本专利技术的方法,能够使整个部署功能具备灵活扩展性,方便对出现的问题快速定位,节省了人力成本,大大提升了测试脚本的执行效率,进而提升自动化测试的效率。基于上述目的,本专利技术的实施例的一个方面提供了一种安装脚本部署的方法,包括以下步骤:将不同执行环境的多种部署包和多种部署包对应的安装脚本存储到服务器中;响应于接收到在执行机上部署安装脚本的命令,在执行机上进行执行环境的检测并基于与检测到的执行环境对应的部署包和安装脚本进行部署准备;为每个执行机创建线程并执行部署准备中接收到的安装脚本;响应于安装完成,检测每个安装脚本的退出状态码并解析,将解析后的信息发送到显示装置。根据本专利技术的一个实施例,将不同执行环境的多种部署包和多种部署包对应的安装脚本存储到服务器中包括:在服务器中创建数据库存储空间;将执行环境、执行环境对应的部署包以及部署包对应的安装脚本的对应关系保存到存储空间中。根据本专利技术的一个实施例,响应于接收到在执行机上部署安装脚本的命令,在执行机上进行执行环境的检测并基于与检测到的执行环境对应的部署包和安装脚本进行部署准备包括:检测执行机上安装脚本的执行环境并检测执行机上是否已经安装过安装脚本;响应于执行机上未安装过安装脚本,将服务器中存储的执行环境对应的部署包和安装脚本发送到执行机。根据本专利技术的一个实施例,为每个执行机创建线程并执行部署准备中接收到的安装脚本包括:判断执行机上是否已经安装过安装脚本;响应于执行机上未安装过安装脚本,为每个执行机创建单独的线程;每个执行机在对应的线程中运行安装脚本。根据本专利技术的一个实施例,通过Executors.newCacheThreadPool()函数创建线程。本专利技术的实施例的另一个方面,还提供了一种安装脚本部署的设备,设备包括:存储模块,存储模块配置为将不同执行环境的多种部署包和多种部署包对应的安装脚本存储到服务器中;检测模块,检测模块配置为响应于接收到在执行机上部署安装脚本的命令,在执行机上进行执行环境的检测并基于与检测到的执行环境对应的部署包和安装脚本进行部署准备;创建模块,创建模块配置为为每个执行机创建线程并执行部署准备中接收到的安装脚本;解析模块,解析模块配置为响应于安装完成,检测每个安装脚本的退出状态码并解析,将解析后的信息发送到显示装置。根据本专利技术的一个实施例,存储模块还配置为:在服务器中创建数据库存储空间;将执行环境、执行环境对应的部署包以及部署包对应的安装脚本的对应关系保存到存储空间中。根据本专利技术的一个实施例,检测模块还配置为:检测执行机上安装脚本的执行环境并检测执行机上是否已经安装过安装脚本;响应于执行机上未安装过安装脚本,将服务器中存储的执行环境对应的部署包和安装脚本发送到执行机。根据本专利技术的一个实施例,创建模块还配置为:判断执行机上是否已经安装过安装脚本;响应于执行机上未安装过安装脚本,为每个执行机创建单独的线程;每个执行机在对应的线程中运行安装脚本。根据本专利技术的一个实施例,通过Executors.newCacheThreadPool()函数创建线程。本专利技术具有以下有益技术效果:本专利技术实施例提供的安装脚本部署的方法,通过将不同执行环境的多种部署包和多种部署包对应的安装脚本存储到服务器中;响应于接收到在执行机上部署安装脚本的命令,在执行机上进行执行环境的检测并基于与检测到的执行环境对应的部署包和安装脚本进行部署准备;为每个执行机创建线程并执行部署准备中接收到的安装脚本;响应于安装完成,检测每个安装脚本的退出状态码并解析,将解析后的信息发送到显示装置的技术方案,能够使整个部署功能具备灵活扩展性,方便对出现的问题快速定位,节省了人力成本,大大提升了测试脚本的执行效率,进而提升自动化测试的效率。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。图1为根据本专利技术一个实施例的安装脚本部署的方法的示意性流程图;图2为根据本专利技术一个实施例的安装脚本部署的设备的示意图;图3为根据本专利技术一个实施例的安装脚本部署的方法的示意性流程图。具体实施方式为使本专利技术的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本专利技术实施例进一步详细说明。基于上述目的,本专利技术的实施例的第一个方面,提出了一种安装脚本部署的方法的一个实施例。图1示出的是该方法的示意性流程图。如图1中所示,该方法可以包括以下步骤:S1将不同执行环境的多种部署包和多种部署包对应的安装脚本存储到服务器中,目标执行机上运行脚本需要的环境不同,部署包和安装脚本也会有区别,因此同一种功能的运行脚本需要根据执行环境的不同开发出多种版本,将各种执行机中的环境以及该环境对应的部署包和安装脚本整理成数据库存储到服务器中,可以在执行机上快匹配出该执行机需要的部署包和安装脚本;S2响应于接收到在执行机上部署安装脚本的命令,在执行机上进行执行环境的检测并基于与检测到的执行环境对应的部署包和安装脚本进行部署准备,环境检测主要检测该执行机是否已经执行过安装脚本,并检测安装脚本运行的环境,例如是java或python,部署准备主要是根据检测到的运行环境向服务器请求该运行环形所需要的部署包和安装脚本;S3为每个执行机创建线程并执行部署准备中接收到的安装脚本,由于部署过程节点很多,部署时间较长,若多台执行机器顺序部署,不仅效率低,而且一台机器部署异常之后容易发生阻塞,影响后面其他机器的部署,多线程响应可以提升部署效率,且各机器之间的本文档来自技高网...

【技术保护点】
1.一种安装脚本部署的方法,其特征在于,包括以下步骤:/n将不同执行环境的多种部署包和多种所述部署包对应的安装脚本存储到服务器中;/n响应于接收到在执行机上部署安装脚本的命令,在所述执行机上进行执行环境的检测并基于与检测到的执行环境对应的部署包和安装脚本进行部署准备;/n为每个所述执行机创建线程并执行所述部署准备中接收到的安装脚本;/n响应于安装完成,检测每个所述安装脚本的退出状态码并解析,将解析后的信息发送到显示装置。/n

【技术特征摘要】
1.一种安装脚本部署的方法,其特征在于,包括以下步骤:
将不同执行环境的多种部署包和多种所述部署包对应的安装脚本存储到服务器中;
响应于接收到在执行机上部署安装脚本的命令,在所述执行机上进行执行环境的检测并基于与检测到的执行环境对应的部署包和安装脚本进行部署准备;
为每个所述执行机创建线程并执行所述部署准备中接收到的安装脚本;
响应于安装完成,检测每个所述安装脚本的退出状态码并解析,将解析后的信息发送到显示装置。


2.根据权利要求1所述的方法,其特征在于,将不同执行环境的多种部署包和多种所述部署包对应的安装脚本存储到服务器中包括:
在所述服务器中创建数据库存储空间;
将执行环境、所述执行环境对应的部署包以及所述部署包对应的安装脚本的对应关系保存到所述存储空间中。


3.根据权利要求1所述的方法,其特征在于,响应于接收到在执行机上部署安装脚本的命令,在所述执行机上进行执行环境的检测并基于与检测到的执行环境对应的部署包和安装脚本进行部署准备包括:
检测所述执行机上所述安装脚本的执行环境并检测所述执行机上是否已经安装过所述安装脚本;
响应于所述执行机上未安装过所述安装脚本,将所述服务器中存储的所述执行环境对应的部署包和所述安装脚本发送到所述执行机。


4.根据权利要求1所述的方法,其特征在于,为每个所述执行机创建线程并执行所述部署准备中接收到的安装脚本包括:
判断所述执行机上是否已经安装过所述安装脚本;
响应于所述执行机上未安装过所述安装脚本,为每个所述执行机创建单独的线程;
每个所述执行机在对应的所述线程中运行所述安装脚本。


5.根据权利要求4所述的方法,其特征在于,通过Executors.newCacheTh...

【专利技术属性】
技术研发人员:赵铭
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:江苏;32

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

1