CN106293775A - 一种脚本的自动生成方法及装置 - Google Patents
一种脚本的自动生成方法及装置 Download PDFInfo
- Publication number
- CN106293775A CN106293775A CN201610890903.0A CN201610890903A CN106293775A CN 106293775 A CN106293775 A CN 106293775A CN 201610890903 A CN201610890903 A CN 201610890903A CN 106293775 A CN106293775 A CN 106293775A
- Authority
- CN
- China
- Prior art keywords
- installation
- file
- service software
- alternate
- software
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明实施例公开了一种脚本的自动生成方法及装置,该方法包括:获取用户编辑的安装服务软件时依赖的参数信息;确定所述服务软件待安装的操作系统环境,并确定所述操作系统环境对应的脚本编辑格式;根据所述脚本编辑格式,以设定编辑语言将所述参数信息组装成所述操作系统环境下可执行的脚本文件。利用该方法,能够简单快速的基于用户提供的信息自动生成部署服务软件配置信息时所需的脚本文件,从而降低了脚本生成的复杂性以及服务软件的安装门槛,同时节省了服务软件的安装部署时间。
Description
技术领域
本发明实施例涉及计算机应用技术领域,尤其涉及一种脚本的自动生成方法及装置。
背景技术
在进行服务软件安装,尤其是分布式大数据平台搭建过程中的服务软件安装时,通常需要手动部署服务软件的配置信息以实现服务软件的安装,但是手动部署服务软件安装所需的配置信息时很容易出现错误,由此出现了用于安装服务软件的自动部署工具。
对于自动部署工具而言,主要通过技术人员编写的可运行脚本实现配置信息的自动部署。但是现有的自动部署工具也存在以下不足:在对不同的服务软件进行自动部署时,需要分别编写不同的脚本,然后基于各自的脚本实现配置信息的部署,由此需要技术然员熟练掌握各种服务软件的脚本编写,从而增加了脚本生成的复杂性,进而增大服务软件的安装门槛;此外,编写后的脚本需要花费一定的时间进行脚本测试,测试成功后才能用于服务软件配置信息的部署,由此延长了服务软件的安装部署时间。
发明内容
本发明实施例提供了一种脚本的自动生成方法及装置,能够简单快速的自动生成部署服务软件配置信息时所需的脚本。
一方面,本发明实施例提供了一种脚本的自动生成方法,包括:
获取用户编辑的安装服务软件时依赖的参数信息;
确定所述服务软件待安装的操作系统环境,并确定所述操作系统环境对应的脚本编辑格式;
根据所述脚本编辑格式,以设定编辑语言将所述参数信息组装成所述操作系统环境下可执行的脚本文件。
另一方面,本发明实施例提供了一种,包括:
信息获取模块,用于获取用户编辑的安装服务软件时依赖的参数信息;
格式确定模块,用于确定所述服务软件待安装的操作系统环境,并确定所述操作系统环境对应的脚本编辑格式;
文件生成模块,用于根据所述脚本编辑格式,以设定编辑语言将所述参数信息组装成所述操作系统环境下可执行的脚本文件。
本发明实施例中提供了一种脚本的自动生成方法及装置,该方法首先获取用户编辑的安装服务软件时依赖的参数信息;然后确定服务软件的依赖的操作系统环境,由此确定该操作系统环境对应的脚本编辑格式;最终能够根据确定的脚本编辑格式通过设定编辑语言将获取的参数信息组装成可执行的脚本文件。利用该方法,能够简单快速的基于用户提供的信息自动生成部署服务软件配置信息时所需的脚本文件,从而降低了脚本生成的复杂性以及服务软件的安装门槛,同时节省了服务软件的安装部署时间。
附图说明
图1为本发明实施例一提供的一种脚本的自动生成方法的流程示意图;
图2为本发明实施例二提供的一种脚本的自动生成方法的流程示意图;
图3为本发明实施例三提供的一种脚本的自动生成方法的优选实施例的流程示意图;
图4为本发明实施例四提供的一种脚本的自动生成装置的结构框图。
具体实施方式
下面结合附图和实施例对本发明作进一步地详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
图1为本发明实施例一提供的一种脚本的自动生成方法的流程示意图,适用于对安装服务软件时的配置信息进行自动部署的情况,该方法可以由脚本的自动生成装置执行,其中该装置可由软件和/或硬件实现,集成在用于部署待安装服务软件配置信息的部署工具中。
如图1所示,本发明实施例一提供的一种脚本的自动生成方法,包括如下操作:
S101、获取用户编辑的安装服务软件时依赖的参数信息。
在本实施例中,服务软件具体可理解为在电子设备中实现某种功能应用时所安装的软件,在进行安装时一般依赖于电子设备上的操作系统环境;参数信息具体可理解为安装服务软件时所需部署的配置信息,其中,该参数信息可以由用户编辑为设定格式的文件存放至设定的安装依赖配置目录中。基于本实施的方法进行脚本生成时,首先可以从安装依赖配置目录中获取用户编辑的参数信息,一般地,参数信息以一定的格式进行编辑,最终形成设定文件格式的参数文件存放在安装依赖配置目录中。
进一步地,所述参数信息包括:服务软件安装依赖的用户信息、关联软件信息、安全协议密钥信息、安装目录信息、文件夹创建信息和/或文件夹权限设定信息。
在本实施例中,用户编辑的参数信息可以是服务软件安装所依赖的用户信息,如,当电子设备上安装了操作系统,且该操作系统中具有多个用户时,可以通过用户编辑的用户信息来确定服务软件应该安装于哪个用户对应的操作系统环境下;参数信息还可以是关联软件信息,当一个服务软件面向分布式平台时,服务软件需要与其他关联软件相互协作才能正常工作,因此需要在安装时就确定服务软件的关联软件。
此外,参数信息还可以包括安全协议密钥信息、安装目录信息、文件夹创建信息以及文件夹权限设定信息,安全协议密钥信息具体可理解为用户创建服务软件远程管理时所需安全协议对应的密码信息;安装目录信息具体可理解为服务软件安装过程中所需的安装路径信息;文件夹创建信息具体可理解为服务软件工作时所需文件夹的创建路径信息;文件夹权限设定信息具体可理解为有权访问服务软件相关文件夹的权限信息。
在本实施例中,需要说明的是,上述参数信息存放于设定的安装依赖配置目录中,且参数信息可以采用xml、json以及ini等格式进行Key-Value形式的编辑,并形成相应格式的参数文件,其中,Key中的内容具体用于表示与待获取信息对应的信息标签,Value中的内容可用于表示与信息标签相对的由用户编辑的具体参数信息。
示例性地,假设待获取的参数信息为用户信息,则Key中对应的用户信息标签可以表示为“用户名”,Value中为用户编辑的具体的用户信息,如用户名为shiyi,上述参数信息基于xml格式编辑时,可表示为:<name>用户名</name><value>shiyi</value>;或者基于ini格式编辑时,可表示为:[用户名]用户名=shiyi。
S102、确定所述服务软件待安装的操作系统环境,并确定所述操作系统环境对应的脚本编辑格式。
在本实施例中,上述参数信息均可作为服务软件安装的配置信息,需要在安装服务软件的同时对上述参数信息进行部署,但所获取的参数信息无法直接运行,需要将所获取的参数信息转化为操作系统环境下可运行的脚本文件。由此需要先基于步骤S102确定服务软件待安装的操作系统环境。在本实施例中,可通过获取的参数信息确定服务软件需要安装在哪个操作系统环境下,在确定待安装的操作系统环境后,可以确定于操作系统环境相对应的脚本编辑格式。
一般地,常见的操作系统环境有Windows操作系统、Linux操作系统、Unix操作系统以及Ubuntu操作系统等,不同的操作系统环境其具有的脚本编辑格式存在不同,示例性地,在Linux操作系统的环境下,常见的脚本编辑格式有Shell脚本,其Shell脚本的编辑格式可以是#!/bin/bash或#!/bin/sh作为开头,之后再以设定的编辑语言进行具体脚本内容的填充。
S103、根据所述脚本编辑格式,以设定编辑语言将所述参数信息组装成所述操作系统环境下可执行的脚本文件。
在本实施例中,在确定脚本编辑格式之后,可以以设定的编辑语言将所获得参数信息组装成操作系统环境下可执行的脚本文件,其生成的脚本文件可以是可运行的.sh的文件格式。
示例性地,以Shell脚本的格式为例,假设所获得参数信息中包括了用户信息shiyi,则所生成的脚本文件可表示为:
#!/bin/bash useradd shiyi passwd shiyi
在安装部署过程中执行上述脚本文件时,可以将服务软件部署到用户名shiyi所对应的操作系统环境下,同时还设置相应的访问密码。此外,假设所获取的参数信息中也包括了安全协议密钥信息、安装目录信息以及文件夹权限设定信息,基于上述脚本编辑格式同样可以生成与上述信息对应的脚本文件,需要说明的是,上述生成的脚本文件可以作为安装部署服务软件时所需安装脚本。
本发明实施例一提供的一种脚本的自动生成方法,首先获取用户编辑的安装服务软件时依赖的参数信息;然后确定服务软件的依赖的操作系统环境,由此确定该操作系统环境对应的脚本编辑格式;最终能够根据确定的脚本编辑格式通过设定编辑语言将获取的参数信息组装成可执行的脚本文件。利用该方法,能够简单快速的基于用户提供的信息自动生成部署服务软件配置信息时所需的脚本文件,从而降低了脚本生成的复杂性以及服务软件的安装门槛,同时节省了服务软件的安装部署时间。
实施例二
图2为本发明实施例二提供的一种脚本的自动生成方法的流程示意图,本发明实施例以上述实施例为基础进行优化,在本实施例中,该脚本的自动生成方法,还包括:如果设定的服务软件目录中存在至少一个待安装的服务软件,则获取所述服务软件的安装包;如果设定的配置安装目录中存在与所述服务软件对应的安装替换文件,则在所述服务软件的安装包中查找与所述安装替换文件对应的子安装文件,并将所述子安装文件替换为所述安装替换文件,构成新的安装包;根据所述服务组件的脚本文件和安装包,在所述操作系统环境下安装部署所述服务软件。
需要说明的是,上述实施例一给出了自动生成脚本文件的实现步骤,且生成的脚本文件具体用于服务软件的安装部署,但是仅基于生成的脚本文件仍不能实现服务软件的安装部署,还需要确定是否存在用于安装的服务软件的安装包,本发明实施例二增加了确定服务软件安装包的操作步骤。
如图2所示,本发明实施例二提供的一种脚本的自动生成方法,具体包括如下操作:
S201、如果设定的服务软件目录中存在至少一个待安装的服务软件,则获取该服务软件的安装包。
在本实施例中,可以将待安装的服务软件的安装包存放于设定的服务软件目录中,当服务软件目录中至少存在一个待安装的服务软件时,就可获取所存在的服务软件的安装包,以便于后续基于安装包进行安装操作,其中,服务软件的安装包可以直接通过联网的方式由对应服务器端下载获得。可以理解的是,只有在确定存在待安装的服务软件时,对服务软件进行脚本文件的自动生成才有实际意义。
S202、如果设定的配置安装目录中存在与该服务软件对应的安装替换文件,则在服务软件的安装包中查找与安装替换文件对应的子安装文件,并将所述子安装文件替换为所述安装替换文件,构成新的安装包。
在本实施例中,基于步骤S201获取的服务软件的安装包并不一定是可以直接安装的安装文件,安装包中有可能存在一些需要人为修改的子安装文件,可以对这些子安装文件进行修改替换,以达到用户期望的安装效果。由此,可通过步骤S202来判断设定的配置安装目录中是否存在待安装的服务软件的安装替换文件,如果存在相应的安装替换文件,则需要确定该安装替换文件具体替换了相应安装包中的哪一个子安装文件,并需要用安装替换文件对所确定的子安装文件进行确定,以形成服务软件的新的安装包,且后续需要基于更新后的安装包进行安装操作。
进一步地,所述配置安装目录中包括至少一个基于服务软件名命名的替换文件夹;所述替换文件夹用于存放与所述服务软件对应的安装替换文件;所述安装替换文件的文件名与对应服务软件的安装包中待替换的子安装文件的文件名相同;相应的,如果设定的配置安装目录中存在与所述服务软件对应的安装替换文件,则在所述服务软件中的安装包查找与所述安装替换文件对应的子安装文件,包括:在设定的配置安装目录中查找命名与所述服务软件的服务软件名相同的替换文件夹;如果所述替换文件夹中存在安装替换文件,则在所述服务组件的安装包中查找与所述安装替换文件的文件名相同的子安装文件。
一般地,在对服务软件的安装包中的子安装文件进行人为修改时,如果用户直接在服务软件的安装包中查找待修改的子安装文件,然后直接对该子安装文件进行修改,则可能会浪费较多的安装时间,且有可能破坏安装包的完整性。
在本实施例中,可以简单快速的实现服务软件的安装包中子安装文件的自动替换。本实施例设置了用于存放安装替换文件的配置安装目录,由于配置安装目录中可以存放多个服务软件的安装替换文件,为了便于区分安装替换文件所属的服务软件,可以在配置安装目录中设置至少一个替换文件夹,并将该替换文件夹基于服务软件的服务软件名命名;此外,为了在安装包中更快的定位出待替换的子安装文件,可以将替换文件夹中的安装替换文件命名为与待替换的子安装文件相同的文件名。
具体地,当基于步骤S201确定出待安装的服务软件后,可以在配置安装目录中确定是否存在与该服务软件的名称相同的替换文件夹,如果不存在,则表明该服务软件的安装包中不存在待替换的子安装文件;如果存在,则可进一步确定替换文件夹中存放的安装替换文件的文件名,并可在所获取的安装包中查找文件名相同的子安装文件,在查找出该子安装文件后,可以用该安装替换文件替换该子安装文件,并在确定安装包中没有其他待替换的子安装文件后,将替换后的安装包作为服务软件的新的安装包。
S203、获取用户编辑的安装该服务软件时依赖的参数信息。
示例性地,所获得的参数信息可以有用户信息、关联软件信息、安全协议密钥信息、安装目录信息、文件夹创建信息和/或文件夹权限设定信息。示例性地,可以采用xml、json以及ini等格式将参数信息以Key-Value的形式进行编辑。
S204、确定该服务软件待安装的操作系统环境,并确定操作系统环境对应的脚本编辑格式。
示例性地,对于分布式的大数据平台的构建而言,其服务软件所依赖的操作系统环境一般为Linux或Unix,在该操作系统环境下,一般采用的脚本编辑格式通常为Shell脚本的编辑格式。
S205、根据该脚本编辑格式,以设定编辑语言将所述参数信息组装成操作系统环境下可执行的脚本文件。
示例性地,可以根据所确定的脚本编辑格式,通过C shell或Python等脚本编辑语言对获取的用户信息、关联软件信息等进行组装,形成相应的可执行的脚本语言,以基于生成的脚本文件提供服务软件安装部署时依赖的配置信息。
S206、根据该服务组件的脚本文件和安装包,在操作系统环境下安装部署该服务软件。
在本实施例中,脚本文件提供了服务软件安装部署时的配置信息,安装包(可以是直接获取的原始安装包或者经过替换的安装包)提供了服务软件的安装文件,基于上述两个文件就可以实现服务软件的安装部署。需要说明的是,本实施例提供的脚本的自动生成方法,无论是集中式环境还是分布式环境,主要实现的是对每台电子设备上的服务软件的安装部署,对于分布式环境而言,可以将脚本的自动生成方法移植到作为集群点的每台电子设备上,由此实现对分布式环境下每个集群点的服务软件的安装部署。
本发明实施例二提供的一种脚本的自动生成方法,优化增加了服务软件安装包的替换操作,能够自动替换服务软件安装包中待替换文件。利用该方法,不仅简单快速的基于用户提供的信息自动生成部署服务软件配置信息时所需的脚本文件,还实现了服务软件安装包中待替换文件的自动替换,从而降低了脚本生成的复杂性以及服务软件的安装门槛,同时节省了服务软件的安装部署时间。
在上述实施例的基础上,本发明实施例还提供了安装替换文件在配置文件目录中的另外一种表述形式。具体地,所述配置安装目录中用于存储用户编辑的安装替换文件;所述安装替换文件的文件名基于待替换服务软件的服务软件名和所述服务软件的安装包中待替换子安装文件的文件名设定;相应的,如果设定的配置安装目录中存在与所述服务软件对应的安装替换文件,则在所述服务软件中的安装包查找与所述安装替换文件对应的子安装文件,包括:如果设定的配置安装目录中存在安装替换文件且所述安装替换文件的文件名中包含所述服务软件的服务软件名,则在所述服务软件的安装包中查找与所述安装替换文件对应的子安装文件,其中,所述子安装文件的文件名包含在所述安装替换文件的文件名中。
在本实施例中,还可以基于上述方式实现配置安装目录中安装替换文件的设定。具体地,无需在配置安装目录中创建替换文件夹,可以将安装替换文件直接存放在配置安装目录下,当基于该种方式存放安装替换文件时,需要修改所存放安装替换文件的命名方式,即可基于待替换服务软件的服务软件名和改服务软件的安装包中待替换子安装文件的文件名来设定。示例性地,假设用户所编辑的安装替换文件是对应于Hadoop服务软件的安装包中名为configuration的子安装文件的替换文件,则该替换文件的命名为:Hadoop_configuration。
实施例三
图3为本发明实施例三提供的一种脚本的自动生成方法的优选实施例的流程示意图,在上述实施例的基础上,本实施例三提供了一个优选实施例,其应用场景为分布式环境下大数据平台搭建过程中对Hadoop服务软件以及Spark服务软件的安装部署。
如图3所示,该优选实施例的实现过程具体包括如下操作:
S301、获取服务软件目录中的Hadoop安装包以及Spark安装包。
示例性地,首先确定设定的服务软件目录中存在Hadoop和Spark这两个服务软件的安装包,并获取这两个安装包。
S302、判定配置安装目录中是否存在与Hadoop的第一安装替换文件或与Spark对应的第二安装替换文件,若是,则执行步骤S303;若否,则执行步骤S304。
示例性地,可以判定配置安装目录中是否存在命名为Hadoop的替换文件夹以及Spark的文件夹,如果存在,则可判定Hadoop替换文件夹中是否存在用户编辑的第一安装替换文件,或者,还可判定Spark替换文件夹中是否存在用户编辑的第二安装替换文件,当满足上述判定条件时,可执行步骤S303;否则可直接执行步骤S304。
S303、在Hadoop的安装包中查找与第一安装替换文件对应的子安装文件并替换,形成新的Hadoop安装包;或者在Spark安装包中查找与第二安装替换文件对应的子安装文件并替换,形成新的Spark安装包,之后执行步骤S304。
示例性地,可以在所获取的Hadoop的安装包中查找与第一安装文件对应的子安装文件,并将子安装文件替换为第一安装文件,形成了新的Hadoop安装包,此时,第一安装文件的文件名与该子安装文件的文件名相同,同理,也可在所获取的Spark的安装包中查找与第二安装文件对应的子安装文件并替换,形成了新的Spark安装包,且第二安装文件的文件名与该子安装文件的文件名相同。在形成新的Hadoop安装包或Spark安装包之后,还需要执行步骤S304的操作。
S304、获取用户编辑的安装Hadoop和Spark时依赖的参数信息。
示例性地,在设定的安装依赖配置目录中,获取到名为reference.xml的包含参数信息的文件。该文件中可能涉及到用户信息、依赖软件信息、ssh-key信息、需要创建文件夹信息、文件夹权限设定信息以及安装目录信息等。
S305、确定Hadoop和Spark待安装的操作系统环境,并确定操作系统环境对应的脚本编辑格式。
示例性地,确定所依赖的操作系统环境为Linux,确定所对应的脚本编辑格式为Shell脚本。
S306、根据确定的脚本编辑格式,将Hadoop以及Spark的参数信息分别组装成操作系统环境下可执行的脚本文件。
示例性地,假设reference.xml的文件中包括了用户编辑的安装协议密钥信息,则对该安装协议密钥信息进行组装后生成的脚本文件表示如下:
#!/bin/bash
echo“读取到秘钥信息”>>/home/shiyi/.ssh/authorized
在安装部署过程中,可以通过执行该脚本文件来获得服务软件的安全协议密钥信息。
假设reference.xml的文件中包括了用户编辑的安装目录信息,则安装目录信息对应生成如下脚本:
#!/bin/bash
mkdir-p安装目录 #用于创建安装目录
cp服务软件 安装目录 #用于复制服务软件到安装目录
tar xvf服务软件 #用于解压服务软件到安装目录
假设reference.xml的文件中包括了用户编辑的文件夹权限设定信息,则文件夹权限设定信息对应生成如下脚本文件:
chmod-权限-文件夹 #用于为文件夹设置权限
S307、根据Hadoop的脚本文件和安装包以及Spark的脚本文件和安装包,在操作系统环境下安装部署Hadoop服务软件以及Spark服务软件。
本发明实施例三提供的一种脚本的自动生成方法的优选实施例,具体描述了大数据平台搭建过程中对Hadoop服务软件以及Spark服务软件安装部署时所需配置信息的确定过程。利用该方法,不仅简单快速的基于用户提供的信息自动生成部署服务软件配置信息时所需的脚本文件,还实现了服务软件安装包中待替换文件的自动替换,从而降低了脚本生成的复杂性以及服务软件的安装门槛,同时节省了服务软件的安装部署时间。
实施例四
图4为本发明实施例四提供的一种脚本的自动生成装置的结构框图。适用于对安装服务软件时的配置信息进行自动部署的情况,其中该装置可由软件和/或硬件实现,集成在用于部署待安装服务软件配置信息的部署工具中。如图4所示,该装置包括:信息获取模块41、格式确定模块42以及文本生成模块43。
其中,信息获取模块41,用于获取用户编辑的安装服务软件时依赖的参数信息;
格式确定模块42,用于确定所述服务软件待安装的操作系统环境,并确定所述操作系统环境对应的脚本编辑格式;
文件生成模块43,用于根据所述脚本编辑格式,以设定编辑语言将所述参数信息组装成所述操作系统环境下可执行的脚本文件。
在本实施例中,该装置首先通过信息获取模块41获取用户编辑的安装服务软件时依赖的参数信息;然后通过格式确定模块42确定所述服务软件待安装的操作系统环境,并确定所述操作系统环境对应的脚本编辑格式;最后通过文件生成模块43根据所述脚本编辑格式,以设定编辑语言将所述参数信息组装成所述操作系统环境下可执行的脚本文件。
本发明实施例四提供的一种脚本的自动生成装置,能够简单快速的基于用户提供的信息自动生成部署服务软件配置信息时所需的脚本文件,从而降低了脚本生成的复杂性以及服务软件的安装门槛,同时节省了服务软件的安装部署时间。
进一步地,该装置还包括:
安装包获取模块,用于当设定的服务软件目录中存在至少一个待安装的服务软件时,获取所述服务软件的安装包;
文件替换模块,用于当设定的配置安装目录中存在与所述服务软件对应的安装替换文件时,在所述服务软件的安装包中查找与所述安装替换文件对应的子安装文件,并将所述子安装文件替换为所述安装替换文件,构成新的安装包;
服务部署模块,用于根据所述服务组件的脚本文件和安装包,在所述操作系统环境下安装部署所述服务软件。
进一步地,所述配置安装目录中包括至少一个基于服务软件名命名的替换文件夹;所述替换文件夹用于存放与所述服务软件对应的安装替换文件;所述安装替换文件的文件名与对应服务软件的安装包中待替换的子安装文件的文件名相同;
相应的,文件替换模块,具体用于:
在设定的配置安装目录中查找命名与所述服务软件的服务软件名相同的替换文件夹;如果所述替换文件夹中存在安装替换文件,则在所述服务组件的安装包中查找与所述安装替换文件的文件名相同的子安装文件,并将所述子安装文件替换为所述安装替换文件,构成新的安装包。
进一步地,所述配置安装目录中用于存储用户编辑的安装替换文件;所述安装替换文件的文件名基于待替换服务软件的服务软件名和所述服务软件的安装包中待替换子安装文件的文件名设定;
相应的,文件替换模块,具体用于:
如果设定的配置安装目录中存在安装替换文件且所述安装替换文件的文件名中包含所述服务软件的服务软件名,则在所述服务软件的安装包中查找与所述安装替换文件对应的子安装文件,其中,所述子安装文件的文件名包含在所述安装替换文件的文件名中。
进一步地,所述参数信息包括:服务软件安装依赖的用户信息、关联软件信息、安全协议密钥信息、安装目录信息、文件夹创建信息和/或文件夹权限设定信息。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (10)
1.一种脚本的自动生成方法,其特征在于,包括:
获取用户编辑的安装服务软件时依赖的参数信息;
确定所述服务软件待安装的操作系统环境,并确定所述操作系统环境对应的脚本编辑格式;
根据所述脚本编辑格式,以设定编辑语言将所述参数信息组装成所述操作系统环境下可执行的脚本文件。
2.根据权利要求1所述的方法,其特征在于,还包括:
如果设定的服务软件目录中存在至少一个待安装的服务软件,则获取所述服务软件的安装包;
如果设定的配置安装目录中存在与所述服务软件对应的安装替换文件,则在所述服务软件的安装包中查找与所述安装替换文件对应的子安装文件,并将所述子安装文件替换为所述安装替换文件,构成新的安装包;
根据所述服务组件的脚本文件和安装包,在所述操作系统环境下安装部署所述服务软件。
3.根据权利要求2所述的方法,其特征在于,所述配置安装目录中包括至少一个基于服务软件名命名的替换文件夹;
所述替换文件夹用于存放与所述服务软件对应的安装替换文件;
所述安装替换文件的文件名与对应服务软件的安装包中待替换的子安装文件的文件名相同;
相应的,如果设定的配置安装目录中存在与所述服务软件对应的安装替换文件,则在所述服务软件中的安装包查找与所述安装替换文件对应的子安装文件,包括:
在设定的配置安装目录中查找命名与所述服务软件的服务软件名相同的替换文件夹;
如果所述替换文件夹中存在安装替换文件,则在所述服务组件的安装包中查找与所述安装替换文件的文件名相同的子安装文件。
4.根据权利要求2所述的方法,其特征在于,所述配置安装目录中用于存储用户编辑的安装替换文件;
所述安装替换文件的文件名基于待替换服务软件的服务软件名和所述服务软件的安装包中待替换子安装文件的文件名设定;
相应的,如果设定的配置安装目录中存在与所述服务软件对应的安装替换文件,则在所述服务软件中的安装包查找与所述安装替换文件对应的子安装文件,包括:
如果设定的配置安装目录中存在安装替换文件且所述安装替换文件的文件名中包含所述服务软件的服务软件名,则在所述服务软件的安装包中查找与所述安装替换文件对应的子安装文件,其中,所述子安装文件的文件名包含在所述安装替换文件的文件名中。
5.根据权利要求1-4任一所述的方法,其特征在于,所述参数信息包括:服务软件安装依赖的用户信息、关联软件信息、安全协议密钥信息、安装目录信息、文件夹创建信息和/或文件夹权限设定信息。
6.一种脚本的自动生成装置,其特征在于,包括:
信息获取模块,用于获取用户编辑的安装服务软件时依赖的参数信息;
格式确定模块,用于确定所述服务软件待安装的操作系统环境,并确定所述操作系统环境对应的脚本编辑格式;
文件生成模块,用于根据所述脚本编辑格式,以设定编辑语言将所述参数信息组装成所述操作系统环境下可执行的脚本文件。
7.根据权利要求6所述的装置,其特征在于,还包括:
安装包获取模块,用于当设定的服务软件目录中存在至少一个待安装的服务软件时,获取所述服务软件的安装包;
文件替换模块,用于当设定的配置安装目录中存在与所述服务软件对应的安装替换文件时,在所述服务软件的安装包中查找与所述安装替换文件对应的子安装文件,并将所述子安装文件替换为所述安装替换文件,构成新的安装包;
服务部署模块,用于根据所述服务组件的脚本文件和安装包,在所述操作系统环境下安装部署所述服务软件。
8.根据权利要求7所述的装置,其特征在于,所述配置安装目录中包括至少一个基于服务软件名命名的替换文件夹;
所述替换文件夹用于存放与所述服务软件对应的安装替换文件;
所述安装替换文件的文件名与对应服务软件的安装包中待替换的子安装文件的文件名相同;
相应的,文件替换模块,具体用于:
在设定的配置安装目录中查找命名与所述服务软件的服务软件名相同的替换文件夹;
如果所述替换文件夹中存在安装替换文件,则在所述服务组件的安装包中查找与所述安装替换文件的文件名相同的子安装文件,并将所述子安装文件替换为所述安装替换文件,构成新的安装包。
9.根据权利要求7所述的装置,其特征在于,所述配置安装目录中用于存储用户编辑的安装替换文件;
所述安装替换文件的文件名基于待替换服务软件的服务软件名和所述服务软件的安装包中待替换子安装文件的文件名设定;
相应的,文件替换模块,具体用于:
如果设定的配置安装目录中存在安装替换文件且所述安装替换文件的文件名中包含所述服务软件的服务软件名,则在所述服务软件的安装包中查找与所述安装替换文件对应的子安装文件,其中,所述子安装文件的文件名包含在所述安装替换文件的文件名中。
10.根据权利要求6-9任一所述的装置,其特征在于,所述参数信息包括:服务软件安装依赖的用户信息、关联软件信息、安全协议密钥信息、安装目录信息、文件夹创建信息和/或文件夹权限设定信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610890903.0A CN106293775A (zh) | 2016-10-12 | 2016-10-12 | 一种脚本的自动生成方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610890903.0A CN106293775A (zh) | 2016-10-12 | 2016-10-12 | 一种脚本的自动生成方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106293775A true CN106293775A (zh) | 2017-01-04 |
Family
ID=57718710
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610890903.0A Pending CN106293775A (zh) | 2016-10-12 | 2016-10-12 | 一种脚本的自动生成方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106293775A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107491390A (zh) * | 2017-08-15 | 2017-12-19 | 深圳市慧择时代科技有限公司 | 替换测试环境配置信息的方法及装置 |
CN109525569A (zh) * | 2018-11-06 | 2019-03-26 | 北京北信源信息安全技术有限公司 | 一种用户终端和服务器的通信配置方法及设备 |
CN111949310A (zh) * | 2020-08-07 | 2020-11-17 | 苏州浪潮智能科技有限公司 | 一种基于异构云平台的内置服务外接方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1916846A (zh) * | 2005-08-17 | 2007-02-21 | 联想(北京)有限公司 | 操作系统的自动部署方法 |
CN101334729A (zh) * | 2008-08-07 | 2008-12-31 | 金蝶软件(中国)有限公司 | 软件包的处理方法及装置 |
CN102932408A (zh) * | 2012-09-21 | 2013-02-13 | 中国电信股份有限公司云计算分公司 | 一种服务器集群的管理方法和平台 |
CN103677858A (zh) * | 2012-08-30 | 2014-03-26 | 中兴通讯股份有限公司 | 一种云环境中虚拟机软件管理的方法、系统及设备 |
CN105099739A (zh) * | 2014-05-15 | 2015-11-25 | 中国移动通信集团公司 | 一种基于插件式软件部署方法、装置及应用服务器 |
-
2016
- 2016-10-12 CN CN201610890903.0A patent/CN106293775A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1916846A (zh) * | 2005-08-17 | 2007-02-21 | 联想(北京)有限公司 | 操作系统的自动部署方法 |
CN101334729A (zh) * | 2008-08-07 | 2008-12-31 | 金蝶软件(中国)有限公司 | 软件包的处理方法及装置 |
CN103677858A (zh) * | 2012-08-30 | 2014-03-26 | 中兴通讯股份有限公司 | 一种云环境中虚拟机软件管理的方法、系统及设备 |
CN102932408A (zh) * | 2012-09-21 | 2013-02-13 | 中国电信股份有限公司云计算分公司 | 一种服务器集群的管理方法和平台 |
CN105099739A (zh) * | 2014-05-15 | 2015-11-25 | 中国移动通信集团公司 | 一种基于插件式软件部署方法、装置及应用服务器 |
Non-Patent Citations (1)
Title |
---|
王宏勇: "《Ubuntu Linux基础教程》", 30 November 2015 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107491390A (zh) * | 2017-08-15 | 2017-12-19 | 深圳市慧择时代科技有限公司 | 替换测试环境配置信息的方法及装置 |
CN109525569A (zh) * | 2018-11-06 | 2019-03-26 | 北京北信源信息安全技术有限公司 | 一种用户终端和服务器的通信配置方法及设备 |
CN111949310A (zh) * | 2020-08-07 | 2020-11-17 | 苏州浪潮智能科技有限公司 | 一种基于异构云平台的内置服务外接方法及装置 |
CN111949310B (zh) * | 2020-08-07 | 2022-07-19 | 苏州浪潮智能科技有限公司 | 一种基于异构云平台的内置服务外接方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104317610B (zh) | 一种hadoop平台自动安装部署的方法及装置 | |
CN110752947B (zh) | 一种k8s集群部署方法及装置,一种部署平台 | |
US11561784B2 (en) | Versioning of pipeline templates for continuous delivery of services on datacenters configured in cloud platforms | |
CN105224466A (zh) | 一种基于Docker的集成测试方法及系统 | |
CN105959390A (zh) | 微服务的统一管理系统及方法 | |
US20220222079A1 (en) | Change management of services deployed on datacenters configured in cloud platforms | |
Mogul et al. | Experiences with modeling network topologies at multiple levels of abstraction | |
US20230054760A1 (en) | Deployment strategies for continuous delivery of software rtifacts in cloud platforms | |
CN111507056B (zh) | 一种实现元器件管理及共享的pcb设计方法和系统 | |
CN113434158B (zh) | 一种大数据组件的自定义管理方法、装置、设备及介质 | |
US11392366B1 (en) | Optimized compilation of pipelines for continuous delivery of services on datacenters configured in cloud platforms | |
CN106293775A (zh) | 一种脚本的自动生成方法及装置 | |
CN107294771A (zh) | 一种适用于大数据集群的高效部署系统以及使用方法 | |
CN110764918A (zh) | 一种容器集群中主节点管理方法 | |
CN116783581A (zh) | 在云平台中配置的数据中心上部署软件发布 | |
CN112711397A (zh) | 一种基于微服务和顶层设计的建立系统的方法及系统 | |
CN104360839A (zh) | 自动从linux系统迁移到windows系统的方法 | |
US11848829B2 (en) | Modifying a data center based on cloud computing platform using declarative language and compiler | |
CN106569881A (zh) | 一种基于kvm的数据迁移方法及系统 | |
CN109298869A (zh) | 一种目标渠道包的生成方法及相关装置 | |
CN107818122A (zh) | 一种代理组件、搜索管理方法及搜索管理系统 | |
CN113535221A (zh) | 应用版本管理的方法和装置 | |
CN111130851A (zh) | 一种可视化部署并管理kafka集群的方法 | |
CN106686158A (zh) | 一种实现服务期间互信通信的方法及其装置 | |
CN109525649A (zh) | 一种zookeeper客户端的数据处理方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20170104 |