一种软件自动化部署方法、装置及终端转让专利

申请号 : CN201010528357.9

文献号 : CN102455925B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 厉超

申请人 : 金蝶软件(中国)有限公司

摘要 :

本发明适用于计算机软件领域,提供了一种软件自动化部署方法、装置及终端,所述方法包括下述步骤:启动监听线程和轮寻线程;监听线程接收客户端发送的软件部署请求;轮寻线程获取所述客户端信息及对应的配置文件信息,并接收所述客户端返回的状态信息;根据所述信息,检测所述客户端是否满足软件部署条件;修改满足软件部署条件且当前状态正常的客户端的配置文件信息;将所述客户端软件部署的过程以日志文件的形式记录并存储。本发明实施例通过服务端修改客户端的配置文件信息,使的客户端在启动时能够自动运行服务端的软件自动化部署工具来完成软件部署,并将软件部署的过程通过日志文件进行记录,提高了软件安装部署的效率和可靠性。

权利要求 :

1.一种软件自动化部署方法,其特征在于,所述方法包括下述步骤:接收软件自动化部署工具安装操作指令;

接收软件部署方案操作指令;

判断所述软件部署方案是否已存在,是则结束所述软件部署方案的部署,否则新建所述软件部署方案;启动监听线程和轮寻线程;

监听线程接收客户端发送的软件部署请求;

轮寻线程获取所述客户端信息及对应的配置文件信息,并接收所述客户端返回的状态信息;

根据所述客户端信息及对应的配置文件信息、以及所述客户端返回的状态信息,检测所述客户端是否满足软件部署条件;

修改满足软件部署条件且当前状态正常的客户端的配置文件信息;

将所述客户端软件部署的过程以日志文件的形式记录并存储。

2.如权利要求1所述的方法,其特征在于,所述方法进一步包括下述步骤:删除不满足软件部署条件的客户端请求;

向满足软件部署条件但当前状态异常的客户端发送重启请求,并删除所述客户端相关信息;

3.如权利要求2所述的方法,其特征在于,所述状态异常指所述客户端无法连接或者不能进行软件部署。

4.如权利要求1所述的方法,其特征在于,在所述修改满足软件部署条件且当前状态正常的客户端的配置文件信息后,将所述客户端软件部署的过程以日志文件的形式记录并存储前,所述方法还包括下述步骤:向所述客户端发送重启客户端的指令;

接收客户端在重启时运行软件自动化部署工具的指令。

5.一种软件自动化部署装置,其特征在于,所述装置包括:安装操作指令接收模块,用于接收软件自动化部署工具安装操作指令;

部署方案指令接收模块,用于接收软件部署方案操作指令;

部署方案判断模块,用于判断所述软件部署方案是否已存在,是则结束所述方案的部署,否则新建所述软件部署方案;启动单元,用于启动监听线程和轮寻线程;

监听线程单元,用于监听线程接收客户端发送的软件部署请求;

轮寻线程单元,用于轮寻线程获取所述客户端信息及对应的配置文件信息,并接收所述客户端返回的状态信息;

检测单元,用于根据所述客户端信息及对应的配置文件信息、以及所述客户端返回的状态信息,检测所述客户端是否满足软件部署条件;

修改配置文件信息单元,用于修改满足软件部署条件且当前状态正常的客户端的配置文件信息;

存储单元,用于将所述客户端软件部署的过程以日志文件的形式记录并存储。

6.如权利要求5所述的装置,其特征在于,所述修改配置文件信息单元还包括:修改配置文件信息模块,用于删除不满足软件部署条件的客户端请求,向满足软件部署条件但当前状态异常的客户端发送重启请求,并删除所述客户端相关信息,修改满足软件部署条件且当前状态正常的客户端配置文件信息。

7.如权利要求5所述的装置,其特征在于,所述装置还包括:重启指令发送单元,用于向所述客户端发送重启客户端的指令;

运行指令接收单元,用于接收客户端在重启时运行软件自动化部署工具的指令。

8.一种包含权利要求5所述的软件自动化部署装置的终端。

说明书 :

一种软件自动化部署方法、装置及终端

技术领域

[0001] 本发明属于计算机软件领域,尤其涉及一种软件自动化部署方法、装置及终端。

背景技术

[0002] 软件部署一般包括软件卸载和软件安装。随着信息网络的发展,用户对软件的应用越来越广泛,对软件部署的要求也越来越高。现有技术在进行软件部署时,大多还是采用手工的方式进行软件卸载和安装,当大规模的终端需要安装部署某些应用软件时,现有技术采用手工逐个安装部署终端上的应用软件,效率较低,而且在软件安装部署后不能进行结果反馈,容易出现安装遗漏或者重复安装等操作,无法满足用户需求。

发明内容

[0003] 本发明实施例的目的在于提供一种软件自动化部署方法,旨在解决现有技术中用户采用手工进行软件部署效率较低、可靠性较差的问题。
[0004] 本发明实施例是这样实现的,一种软件自动化部署方法,所述方法包括下述步骤:
[0005] 接收软件自动化部署工具安装操作指令;
[0006] 接收软件部署方案操作指令;
[0007] 判断所述软件部署方案是否已存在,是则结束所述软件部署方案的部署,否则新建所述软件部署方案;
[0008] 启动监听线程和轮寻线程;
[0009] 监听线程接收客户端发送的软件部署请求;
[0010] 轮寻线程获取所述客户端信息及对应的配置文件信息,并接收所述客户端返回的状态信息;
[0011] 根据所述客户端信息及对应的配置文件信息、以及所述客户端返回的状态信息,检测所述客户端是否满足软件部署条件;
[0012] 修改满足软件部署条件且当前状态正常的客户端的配置文件信息;
[0013] 将所述客户端软件部署的过程以日志文件的形式记录并存储。
[0014] 本发明实施例的另一目的在于提供一种软件自动化部署装置,所述装置包括:
[0015] 安装操作指令接收模块,用于接收软件自动化部署工具安装操作指令;
[0016] 部署方案指令接收模块,用于接收软件部署方案操作指令;
[0017] 部署方案判断模块,用于判断所述软件部署方案是否已存在,是则结束所述方案的部署,否则新建所述软件部署方案;
[0018] 启动单元,用于启动监听线程和轮寻线程;
[0019] 监听线程单元,用于监听线程接收客户端发送的软件部署请求;
[0020] 轮寻线程单元,用于轮寻线程获取所述客户端信息及对应的配置文件信息,并接收所述客户端返回的状态信息;
[0021] 检测单元,用于根据所述客户端信息及对应的配置文件信息、以及所述客户端返回的状态信息,检测所述客户端是否满足软件部署条件;
[0022] 修改配置文件信息单元,用于修改满足软件部署条件且当前状态正常的客户端的配置文件信息;
[0023] 存储单元,用于将所述客户端软件部署的过程以日志文件的形式记录并存储。
[0024] 本发明实施例的另一目的在于提供一种包含上述软件自动化部署装置的终端。
[0025] 本发明实施例通过服务端修改客户端的配置文件信息,使的客户端在启动时能够自动运行服务端的软件自动化部署工具来完成软件部署,提高了软件安装部署的效率和可靠性,将客户端软件部署的过程通过日志文件进行记录,避免了软件部署遗漏或者重复部署的可能。

附图说明

[0026] 图1是本发明第一实施例提供的软件自动化部署方法的实现流程图;
[0027] 图2是本发明第二实施例提供的软件自动化部署方法的实现流程图;
[0028] 图3是本发明第三实施例提供的软件自动化部署方法的实现流程图;
[0029] 图4是本发明第四实施例提供的软件自动化部署装置的结构框图。

具体实施方式

[0030] 为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行做进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0031] 本发明实施例通过服务端修改客户端的配置文件信息,使的客户端在启动时能够自动运行服务端的软件自动化部署工具来完成软件部署,提高了软件安装部署的效率和可靠性,将客户端软件部署的过程通过日志文件进行记录,避免了软件部署遗漏或者重复部署的可能。
[0032] 为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。
[0033] 实施例一:
[0034] 图1示出了本发明第一实施例提供的软件自动化部署方法的实现流程图,本发明实施例通过启动服务端监听线程和轮寻线程,修改满足软件部署条件且当前状态正常的客户端的配置文件信息,使的客户端在启动时能够自动运行服务端的软件自动化部署工具来完成软件部署,提高了软件安装部署的效率和可靠性,将客户端软件部署的过程通过日志文件进行记录,避免了软件部署遗漏或者重复部署的可能。详述如下:
[0035] 在步骤S101中,启动监听线程和轮寻线程。
[0036] 在本发明实施例中,通过服务端来启动监听线程和轮寻线程,其中,监听线程用于监听和接收客户端发送的软件部署请求。轮寻线程用于获取客户端信息及对应的配置文件信息,并接收所述客户端返回的状态信息。
[0037] 在步骤S102中,监听线程接收客户端发送的软件部署请求。
[0038] 在本发明实施例中,当监听线程监听到客户端发送软件部署请求时,监听线程接收客户端发送的软件部署请求,所述软件部署请求包括但不局限于软件卸载和软件安装请求。
[0039] 在步骤S103中,轮寻线程获取所述客户端信息及对应的配置文件信息,并接收所述客户端返回的状态信息。
[0040] 在本发明实施例中,监听线程在接受客户端发送的软件部署请求后,轮寻线程获取所述客户端信息及对应的配置文件信息,并接收所述客户端返回的状态信息。其中,所述客户端信息包括客户端的IP、运行时间段等信息,所述配置文件信息是指用来描述客户端配置项的文件信息,所述配置项文件信息包括客户端的注册表信息及启动项信息。所述客户端的返回状态信息是指客户端的当前状态信息,如:网络是否连接正常、客户端是否可进行软件部署等。当客户端在设定时间内没有返回状态信息时,则服务端会再次向客户端发送请求,希望客户端能够返回其当前状态。当客户端返回的状态正常,修改所述客户端配置文件信息,当客户端无法连接或状态返回异常,则向所述客户端发送重启请求,并删除所述客户端相关信息。
[0041] 在步骤S104中,判断所述客户端是否满足软件部署条件。是则执行步骤S105,否则执行步骤S106。
[0042] 在本发明实施例中,根据轮寻线程获取的客户端信息及对应的配置文件信息,判断所述客户端是否满足软件部署条件。软件部署条件是指确认所述客户端是否有软件部署的权利,所述客户端是否为该软件开发商的合法用户。如果是,则继续判断所述客户端的当前状态是否正常,如果否,则删除所述客户端请求。
[0043] 在步骤S105中,判断所述客户端当前状态是否正常。
[0044] 在本发明实施例中,根据轮寻线程获取的客户端返回的状态信息,判断满足软件部署条件的客户端当前状态是否正常。所述客户端当前状态是指所述客户端网络是否连接正常、是否已做好软件部署准备等。如果所述客户端当前状态正常,则修改所述客户端的配置文件。如果所述客户端当前状态不正常,则向所述客户端发送重启请求,并删除所述客户端相关信息。
[0045] 在步骤S106中,删除所述客户端请求。
[0046] 在步骤S107中,向所述客户端发送重启请求,并删除所述客户端相关信息。
[0047] 在步骤S108中,根据所述客户端信息及对应的配置文件信息、以及所述客户端返回的状态信息,修改满足软件部署条件且当前状态正常的客户端的配置文件信息。
[0048] 在本发明实施例中,修改的配置文件信息包括增加客户端的启动项信息,所述增加的启动项是一个DOS下的批处理指令,用于启动服务端的软件自动化部署工具。
[0049] 在步骤S109中,将所述客户端软件部署的过程以日志文件的形式记录并存储。
[0050] 在本发明实施例中,服务端会自动将客户端软件部署的整个过程以日志文件的形式进行记录并存储,所述过程包括客户端发送的请求信息及客户端软件部署的状态信息等。
[0051] 实施例二:
[0052] 图2示出了本发明第二实施例提供的软件自动化部署方法的实现流程图,本实施例在第一实施例的基础上增加服务端软件自动化部署工具的配置,客户端通过启动所述软件自动化部署工具,达到自动化软件部署的目的。软件自动化部署工具的部署过程详细过程如下:
[0053] 在步骤S301中,接收软件自动化部署工具安装操作指令。
[0054] 在步骤S302中,接收软件部署方案操作指令。
[0055] 在本发明实施例中,软件部署方案由管理员部署,包括软件卸载、软件安装等方案,软件部署过程还包括部署好软件卸载、软件安装的相关程序和对应的参数,所述参数用于获取需要进行软件部署的客户端的IP地址、运行时段、卸载和安装路径等信息。
[0056] 在步骤S303中,判断所述部署方案是否已存在。如果是,则执行步骤S304,如果否,则执行步骤S305。
[0057] 在本发明实施例中,软件部署方案可根据用户要求由管理员进行相应部署,管理员在部署前,软件自动化部署工具会对所述部署方案进行判断,如果所述部署方案已经存在,则结束部署。
[0058] 在步骤S304中,结束所述方案的部署。
[0059] 在步骤S305中,新建所述软件部署方案。
[0060] 在本发明实施例中,新建软件部署方案应当满足系统要求,所述新建软件部署方案应当包括部署好新建方案的相关程序和对应的参数,所述参数用于获取需要进行软件部署的客户端的IP地址、运行时段、运行路径等信息。
[0061] 作为本发明的一个优选实施例,本实施例可根据用户的软件部署请求由管理员增加相应的部署方案,增加软件自动化部署系统功能,提高用户的满意度。
[0062] 实施例三:
[0063] 图3是本发明第三实施例提供的软件自动化部署方法的实现流程图,本实施例在第一实施例的步骤S108修改满足软件部署条件且当前状态正常的客户端的配置文件信息后增加了步骤S302和步骤S303,用于进一步说明客户端自动进行软件部署的过程。其具体如下:
[0064] 在步骤S302中,向所述客户端发送重启客户端的指令。
[0065] 在本发明实施例中,服务端在修改满足软件部署条件且当前状态正常的客户端的配置文件信息后,向所述客户端发送重启客户端的指令,客户端接收所述重启指令后,根据修改后配置文件的启动项,向服务端发送启动软件自动化部署工具的指令。
[0066] 在步骤S303中,接收客户端在重启时运行软件自动化部署工具的指令。
[0067] 在本发明实施例中,服务端接收客户端启动软件自动化部署工具的指令,启动软件自动化部署工具,根据所述客户端的软件部署请求,发送相应的软件部署程序,客户端接收软件部署程序,完成软件部署。
[0068] 实施例四:
[0069] 图4示出了本发明第四实施例提供的软件自动化部署装置的结构框图,为了便于说明,仅示出了与本发明实施例相关的部分。
[0070] 该软件自动化部署装置可以用于通过有线或者无线网络访问服务器的各种终端,例如口袋计算机(Pocket Personal Computer,PPC)、掌上电脑、计算机、笔记本电脑、个人数字助理(Personal Digital Assistant,PDA)等,可以是运行于这些终端内的软件单元、硬件单元或者软硬件相结合的单元,也可以作为独立的挂件集成到这些终端中或者运行于这些终端的应用系统中,其中:
[0071] 部署单元41,用于服务端软件自动化部署工具的安装部署。其中部署单元41还包括安装操作指令接收模块411、部署方案指令接收模块412以及部署方案判断模块413。
[0072] 安装操作指令接收模块411,用于接收软件自动化部署工具安装操作指令。
[0073] 部署方案指令接收模块412,用于接收软件部署方案操作指令。
[0074] 在本发明实施例中,软件部署方案由管理员部署,包括软件卸载、软件安装等方案,软件部署过程还包括部署好软件卸载、软件安装的相关程序和对应的参数,所述参数用于获取需要进行软件部署的客户端的IP地址、运行时段、卸载和安装路径等信息。
[0075] 部署方案判断模块413,用于判断所述软件部署方案是否已存在,是则结束所述方案的部署,否则新建所述软件部署方案。
[0076] 在本发明实施例中,服务端接收客户端启动软件自动化部署工具的指令,启动软件自动化部署工具,根据所述客户端的软件部署请求,发送相应的软件部署程序,客户端接收软件部署程序,完成软件部署。
[0077] 启动单元42,用于启动监听线程和轮寻线程。
[0078] 在本发明实施例中,监听线程用于监听和接收客户端发送的软件部署请求。轮寻线程用于获取客户端信息及对应的配置文件信息,并接收所述客户端返回的状态信息。
[0079] 监听线程单元43,用于监听线程接收客户端发送的软件部署请求。
[0080] 轮寻线程单元44,用于轮寻线程获取所述客户端信息及对应的配置文件信息,并接收所述客户端返回的状态信息。
[0081] 检测单元45,用于根据所述客户端信息及对应的配置文件信息、以及所述客户端返回的状态信息,检测所述客户端是否满足软件部署条件。
[0082] 修改配置文件信息单元46,用于修改满足软件部署条件且当前状态正常的客户端的配置文件信息。其中,修改配置文件信息单元46还包括修改配置文件信息模块461,用于删除不满足软件部署条件的客户端请求,向满足软件部署条件但当前状态异常的客户端发送重启请求,并删除所述客户端相关信息,修改满足软件部署条件且当前状态正常的客户端配置文件信息。
[0083] 在修改配置文件信息单元46后,还包括重启指令发送单元48,用于向所述客户端发送重启客户端的指令。运行指令接收单元49,用于接收客户端在重启时运行软件自动化部署工具的指令。
[0084] 在本发明实施例中,服务端接收客户端启动软件自动化部署工具的指令,启动软件自动化部署工具,根据所述客户端的软件部署请求,发送相应的软件部署程序,客户端接收软件部署程序,完成软件部署。
[0085] 存储单元47,用于将所述客户端软件部署的过程以日志文件的形式记录并存储。
[0086] 在本发明实施例中,服务端会自动将客户端软件部署的整个过程以日志文件的形式进行记录并存储,所述过程包括客户端发送的请求信息及客户端软件部署的状态信息等。
[0087] 在本发明实施例中,服务端在修改满足软件部署条件且当前状态正常的客户端的配置文件信息后,向所述客户端发送重启客户端的指令,客户端接收所述重启指令后,根据修改后配置文件的启动项,向服务端发送启动软件自动化部署工具的指令,服务端接收客户端启动软件自动化部署工具的指令,启动软件自动化部署工具,根据所述客户端的软件部署请求,发送相应的软件部署程序,客户端接收软件部署程序,完成软件部署,并通过存储单元46,将所述客户端软件部署的整个过程以日志文件的形式记录并存储。
[0088] 本领域普通技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以在存储于一计算机可读取存储介质中,所述的存储介质,如ROM/RAM、磁盘、光盘等。
[0089] 本发明实施例通过服务端修改客户端的配置文件信息,使的客户端在启动时能够自动运行服务端的软件自动化部署工具来完成软件部署,提高了软件安装部署的效率和可靠性,将客户端软件部署的过程通过日志文件进行记录,避免了软件部署遗漏或者重复部署的可能。
[0090] 以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。