Method and apparatus for automatic deployment of application based on pipeline task

CN115658095BActive Publication Date: 2026-09-08SHENZHEN COMTOP INFORMATION TECH
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202211396454.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-11-09
Publication Date
2026-09-08
Estimated Expiration
2042-11-09

AI Technical Summary

Technical Problem

然而,这种传统的人为应用程序部署方式,不仅需要花费大量的时间去构建脚本,还容易出现由于脚本语法使用出错所造成的脚本构建错误的情况发生,使得应用程序的服务启动失败,不利于为企业的业务系统提供理想的网络服务

Benefits of technology

[0079] In this embodiment of the invention, target information of the application to be deployed is obtained; configuration node information of each target task is determined based on the task information of each target task; all target tasks are concatenated based on the configuration node information of all target tasks to obtain all concatenated target tasks, which serve as the pipeline task configuration for the application; and the application is deployed based on the pipeline task configuration. It is evident that implementing this invention enables intelligent deployment of the application based on the determined task information of the target tasks, eliminating the need for manual construction of scripts for each task and manual deployment of the application. This reduces script construction errors caused by human error in script syntax, thereby improving the reliability and accuracy of task construction and ultimately enhancing the deployment reliability and accuracy of the application, enabling it to start smoothly and provide services.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115658095B_ABST
    Figure CN115658095B_ABST
Patent Text Reader

Abstract

The application discloses a kind of application program automatic deployment method and device based on pipeline task, which comprises: according to the task information of multiple target tasks of the application program to be deployed, the configuration node information of each target task is determined;According to the configuration node information of all target tasks, the task splicing is carried out to all target tasks, and the pipeline task configuration of application program is obtained;According to the pipeline task configuration, the application program is deployed.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of application deployment technology, and in particular to an automatic application deployment method and apparatus based on pipeline tasks. Background Technology

[0002] With the rapid development of internet technology, people have increasingly higher requirements for the deployment of business applications. In a period of rapid business iteration for large enterprises, the ability to quickly deploy applications that meet their business needs is crucial to providing ideal network services for the large-scale development of their business systems.

[0003] Currently, application deployment typically involves manually entering the build scripts for each subtask into a deployment task box, and then manually deploying the application using the generated scripts. However, this traditional manual deployment method not only consumes a significant amount of time to build the scripts but is also prone to errors due to incorrect script syntax, leading to application service startup failures and hindering the provision of ideal network services to enterprise business systems. Therefore, providing a method for accurately deploying applications is crucial. Summary of the Invention

[0004] The technical problem to be solved by the present invention is to provide a method and apparatus for automatic deployment of applications based on pipeline tasks, which reduces the occurrence of script building errors caused by human error in script syntax, thereby improving the reliability and accuracy of each task building, thus improving the deployment reliability and accuracy of the application, enabling the application to start up smoothly and provide services.

[0005] To address the aforementioned technical problems, the first aspect of this invention discloses an automatic deployment method for applications based on pipelined tasks, the method comprising:

[0006] Obtain the target information of the application to be deployed; the target information of the application includes the task information of multiple target tasks, and the task information of each target task includes the task content and / or runtime environment information of the target task.

[0007] Based on the task information of each target task, the configuration node information of each target task is determined; the configuration node information of each target task includes the location of the configuration node and / or the execution order of the configuration node.

[0008] Based on the configuration node information of all the target tasks, all the target tasks are concatenated to obtain all the concatenated target tasks, which are used as the pipeline task configuration of the application.

[0009] The application is deployed according to its pipeline task configuration.

[0010] As an optional implementation, in the first aspect of the invention, before obtaining the target information of the application to be deployed, the method further includes:

[0011] Determine the deployment requirements of the application to be deployed; the deployment requirements of the application include the target task type and cloud environment type required to deploy the application, and the target task type includes at least one of code inspection type, compilation and build type, application deployment type and automated test type;

[0012] Based on the deployment requirements of the application and the template information of multiple preset pipeline configuration templates, a target configuration template matching the application is determined from all the pipeline configuration templates; the template information of each pipeline configuration template includes the task information of multiple initial configuration tasks contained in the pipeline configuration template.

[0013] The step of obtaining the target information of the application to be deployed includes:

[0014] Based on the target configuration template, obtain task information for multiple target tasks corresponding to the application.

[0015] As an optional implementation, in the first aspect of the present invention, before the step of concatenating all the target tasks according to the configuration node information of all the target tasks to obtain all the concatenated target tasks as the pipeline task configuration of the application, the method further includes:

[0016] Determine the script entry configuration information that matches all the target tasks;

[0017] The step of concatenating all the target tasks based on the configuration node information of all the target tasks to obtain a concatenated set of target tasks, which serves as the pipeline task configuration for the application, includes:

[0018] Based on the script entry configuration information, the configuration node information of all the target tasks, and the preset script syntax information, generate script information for each target task;

[0019] Based on the script information of all the target tasks, the target tasks are concatenated to obtain the concatenated target tasks, which are used as the pipeline task configuration of the application.

[0020] As an optional implementation, in the first aspect of the invention, deploying the application according to the application's pipeline task configuration includes:

[0021] Based on the pipeline task configuration of the application, determine the pipeline task interface of the application that needs to be called;

[0022] The pipeline task interface is invoked to create pipeline tasks for the application and generate pipeline projects for the application.

[0023] The application is deployed according to its pipeline project.

[0024] As an optional implementation, in a first aspect of the invention, before deploying the application according to the application's pipeline task configuration, the method further includes:

[0025] Based on the pipeline task configuration of the application, response tests are performed on the pipeline tasks of the application to obtain the response test parameters corresponding to the pipeline tasks of the application.

[0026] Determine whether the response test parameters meet the preset response conditions;

[0027] When it is determined that the response test parameters meet the preset response conditions, the operation of deploying the application according to the pipeline task configuration of the application is triggered.

[0028] When it is determined that the response test parameters do not meet the preset response conditions, the response failure type corresponding to the pipeline task of the application is determined.

[0029] Based on the response failure type, the pipeline task configuration of the application is modified to obtain the modified pipeline task configuration of the application. This triggers the execution of the following steps: performing response tests on the application's pipeline tasks according to the modified pipeline task configuration to obtain the response test parameters corresponding to the application's pipeline tasks; and determining whether the response test parameters meet preset response conditions. The pipeline task configuration of the application is the modified pipeline task configuration.

[0030] As an optional implementation, in the first aspect of the present invention, the response test parameters include response duration parameters and / or request frequency parameters;

[0031] The step of determining whether the response test parameters meet the preset response conditions includes:

[0032] Based on the response test parameters, determine the target response test sub-parameters that are within the preset parameter threshold range from the response test sub-parameters included in the response test parameters;

[0033] Determine the number of target response test sub-parameters that are within the preset parameter threshold range;

[0034] Determine whether the number of parameters is greater than or equal to a preset parameter number threshold;

[0035] When it is determined that the number of parameters is greater than or equal to the preset parameter number threshold, it is determined that the response test parameters meet the preset response conditions;

[0036] When it is determined that the number of parameters is less than the preset parameter number threshold, it is determined that the response test parameters do not meet the preset response conditions.

[0037] As an optional implementation, in the first aspect of the present invention, determining the pipeline task interface of the application to be invoked based on the pipeline task configuration of the application includes:

[0038] Based on the pipeline task configuration of the application, the deployment cloud environment type of the application, and the interface types of multiple preset interfaces, calculate the call matching degree between each interface and the pipeline task of the application.

[0039] Based on the call matching degree between each interface and the pipeline task of the application, target interfaces with a call matching degree greater than or equal to a preset matching degree threshold are determined from all the interfaces and used as the pipeline task interfaces of the application to be called.

[0040] A second aspect of the present invention discloses an automatic application deployment apparatus based on pipelined tasks, the apparatus comprising:

[0041] The acquisition module is used to acquire the target information of the application to be deployed; the target information of the application includes the task information of multiple target tasks, and the task information of each target task includes the task content and / or runtime environment information of the target task.

[0042] The determining module is used to determine the configuration node information of each target task based on the task information of each target task; the configuration node information of each target task includes the configuration node position and / or the configuration node execution order of the target task;

[0043] The splicing module is used to splice all the target tasks according to the configuration node information of all the target tasks, and obtain all the spliced ​​target tasks as the pipeline task configuration of the application.

[0044] The deployment module is used to deploy the application according to the application's pipeline task configuration.

[0045] As an optional implementation, in a second aspect of the invention, the determining module is further configured to:

[0046] Before the acquisition module obtains the target information of the application to be deployed, the deployment requirements information of the application to be deployed is determined. The deployment requirements information of the application includes the target task type and cloud environment type required to deploy the application. The target task type includes at least one of code inspection type, compilation and build type, application deployment type, and automated testing type. Based on the deployment requirements information of the application and the template information of multiple preset pipeline configuration templates, a target configuration template matching the application is determined from all the pipeline configuration templates. The template information of each pipeline configuration template includes the task information of multiple initial configuration tasks contained in the pipeline configuration template.

[0047] Specifically, the acquisition module obtains the target information of the application to be deployed in the following way:

[0048] Based on the target configuration template, obtain task information for multiple target tasks corresponding to the application.

[0049] As an optional implementation, in a second aspect of the invention, the determining module is further configured to:

[0050] Before the splicing module splices all the target tasks according to the configuration node information of all the target tasks to obtain all the spliced ​​target tasks, and uses them as the pipeline task configuration of the application, it determines the script entry configuration information that matches all the target tasks.

[0051] Specifically, the splicing module splices all the target tasks according to the configuration node information of all the target tasks to obtain all the spliced ​​target tasks, which are then used as pipeline task configurations for the application.

[0052] Based on the script entry configuration information, the configuration node information of all the target tasks, and the preset script syntax information, generate script information for each target task;

[0053] Based on the script information of all the target tasks, the target tasks are concatenated to obtain the concatenated target tasks, which are used as the pipeline task configuration of the application.

[0054] As an optional implementation, in the second aspect of the present invention, the deployment module deploys the application according to the application's pipeline task configuration in the following specific manner:

[0055] Based on the pipeline task configuration of the application, determine the pipeline task interface of the application that needs to be called;

[0056] The pipeline task interface is invoked to create pipeline tasks for the application and generate pipeline projects for the application.

[0057] The application is deployed according to its pipeline project.

[0058] As an optional implementation, in a second aspect of the invention, the apparatus further includes:

[0059] The response testing module is used to perform response tests on the pipeline tasks of the application according to the pipeline task configuration of the application before the deployment module deploys the application according to the pipeline task configuration of the application, and obtain the response test parameters corresponding to the pipeline tasks of the application.

[0060] The judgment module is used to determine whether the response test parameters meet the preset response conditions; when it is determined that the response test parameters meet the preset response conditions, the deployment module is triggered to perform the operation of deploying the application according to the pipeline task configuration of the application.

[0061] The determining module is further configured to determine the response failure type corresponding to the pipeline task of the application when the judging module determines that the response test parameters do not meet the preset response conditions;

[0062] The modification module is used to modify the pipeline task configuration of the application according to the response failure type, to obtain the modified pipeline task configuration of the application, and to trigger the response test module to perform the operation of performing response tests on the pipeline tasks of the application according to the pipeline task configuration of the application, to obtain the response test parameters corresponding to the pipeline tasks of the application, and to trigger the judgment module to perform the operation of judging whether the response test parameters meet the preset response conditions; the pipeline task configuration of the application is the modified pipeline task configuration of the application.

[0063] As an optional implementation, in a second aspect of the present invention, the response test parameters include response duration parameters and / or request frequency parameters;

[0064] Specifically, the method by which the judgment module determines whether the response test parameters meet the preset response conditions is as follows:

[0065] Based on the response test parameters, determine the target response test sub-parameters that are within the preset parameter threshold range from the response test sub-parameters included in the response test parameters;

[0066] Determine the number of target response test sub-parameters that are within the preset parameter threshold range;

[0067] Determine whether the number of parameters is greater than or equal to a preset parameter number threshold;

[0068] When it is determined that the number of parameters is greater than or equal to the preset parameter number threshold, it is determined that the response test parameters meet the preset response conditions;

[0069] When it is determined that the number of parameters is less than the preset parameter number threshold, it is determined that the response test parameters do not meet the preset response conditions.

[0070] As an optional implementation, in the second aspect of the present invention, the deployment module determines the pipeline task interface of the application to be called based on the pipeline task configuration of the application in the following specific manner:

[0071] Based on the pipeline task configuration of the application, the deployment cloud environment type of the application, and the interface types of multiple preset interfaces, calculate the call matching degree between each interface and the pipeline task of the application.

[0072] Based on the call matching degree between each interface and the pipeline task of the application, target interfaces with a call matching degree greater than or equal to a preset matching degree threshold are determined from all the interfaces and used as the pipeline task interfaces of the application to be called.

[0073] A third aspect of the present invention discloses another application automatic deployment apparatus based on pipelined tasks, the apparatus comprising:

[0074] Memory containing executable program code;

[0075] A processor coupled to the memory;

[0076] The processor calls the executable program code stored in the memory to execute the application automatic deployment method based on pipelined tasks disclosed in the first aspect of the present invention.

[0077] The fourth aspect of the present invention discloses a computer storage medium storing computer instructions, which, when invoked, are used to execute the application automatic deployment method based on pipeline tasks disclosed in the first aspect of the present invention.

[0078] Compared with the prior art, the embodiments of the present invention have the following beneficial effects:

[0079] In this embodiment of the invention, target information of the application to be deployed is obtained; configuration node information of each target task is determined based on the task information of each target task; all target tasks are concatenated based on the configuration node information of all target tasks to obtain all concatenated target tasks, which serve as the pipeline task configuration for the application; and the application is deployed based on the pipeline task configuration. It is evident that implementing this invention enables intelligent deployment of the application based on the determined task information of the target tasks, eliminating the need for manual construction of scripts for each task and manual deployment of the application. This reduces script construction errors caused by human error in script syntax, thereby improving the reliability and accuracy of task construction and ultimately enhancing the deployment reliability and accuracy of the application, enabling it to start smoothly and provide services. Attached Figure Description

[0080] To more clearly illustrate the technical solutions in the embodiments of the present invention, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0081] Figure 1 This is a schematic diagram of a scenario for obtaining target information in an application disclosed in an embodiment of the present invention;

[0082] Figure 2 This is a flowchart illustrating an automatic application deployment method based on pipelined tasks disclosed in an embodiment of the present invention;

[0083] Figure 3 This is a flowchart illustrating another method for automatic deployment of applications based on pipeline tasks disclosed in an embodiment of the present invention.

[0084] Figure 4 This is a schematic diagram of the structure of an application automatic deployment device based on pipeline tasks disclosed in an embodiment of the present invention;

[0085] Figure 5 This is a schematic diagram of another application automatic deployment device based on pipeline tasks disclosed in an embodiment of the present invention;

[0086] Figure 6 This is a schematic diagram of another application automatic deployment device based on pipeline tasks disclosed in an embodiment of the present invention. Detailed Implementation

[0087] To enable those skilled in the art to better understand the present invention, the technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings of the embodiments of the present invention. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.

[0088] The terms "first," "second," etc., used in the specification, claims, and accompanying drawings of this invention are used to distinguish different objects, not to describe a specific order. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion. For example, a process, method, apparatus, product, or end that includes a series of steps or units is not limited to the listed steps or units, but may optionally include steps or units not listed, or may optionally include other steps or units inherent to these processes, methods, products, or ends.

[0089] In this document, the term "embodiment" means that a particular feature, structure, or characteristic described in connection with an embodiment may be included in at least one embodiment of the invention. The appearance of this phrase in various places throughout the specification does not necessarily refer to the same embodiment, nor is it a separate or alternative embodiment mutually exclusive with other embodiments. It will be explicitly and implicitly understood by those skilled in the art that the embodiments described herein can be combined with other embodiments.

[0090] This invention discloses an automatic application deployment method and apparatus based on pipelined tasks. This method reduces script building errors caused by human error in script syntax, thereby improving the reliability and accuracy of each task's construction. Ultimately, this enhances the reliability and accuracy of application deployment, enabling the application to start smoothly and provide services. Detailed descriptions follow.

[0091] Example 1

[0092] Please see Figure 2 , Figure 2This is a flowchart illustrating an automated application deployment method based on pipelined tasks disclosed in an embodiment of the present invention. Figure 2 The described pipeline-based automated application deployment method can be applied to deploying various application types. Optionally, the application can be one of the following: artificial intelligence applications, general microservice applications, build service applications, and middleware service applications; this embodiment of the invention does not impose any limitations. Further optionally, this method can be implemented by an application deployment system, which can be integrated into an application deployment device, or it can be a local server or cloud server used to process the application deployment process, etc.; this embodiment of the invention does not impose any limitations. Figure 2 As shown, this pipeline-based application automated deployment method may include the following operations:

[0093] 101. Obtain the target information of the application to be deployed.

[0094] In this embodiment of the invention, task information of one or more target tasks of different task types required by the application is obtained. The task types can be code inspection, compilation and build, application deployment, automated testing, etc., meaning the application's target information includes task information for multiple target tasks. Optionally, the task information for each target task includes the task content and / or runtime environment information for that target task. Further optional, such as... Figure 1 As shown, Figure 1 This is a schematic diagram illustrating a scenario for obtaining target information in an application according to an embodiment of the present invention, such as... Figure 1 As shown, the task content of the target task for each task type can include one or more configured subtasks that need to be called, as well as the creation information of each subtask (such as the creator, creation time, creation location, creation name, etc.); and the runtime environment information of each target task can include the runtime environment type of the target task, such as PaaS test environment, IaaS test environment, SaaS test environment, etc.

[0095] 102. Based on the task information of each target task, determine the configuration node information of each target task.

[0096] In this embodiment of the invention, optionally, the configuration node information for each target task includes the location of the configuration node and / or the execution order of the configuration nodes. For example, such as Figure 1 As shown, the execution order of the configuration nodes for target tasks of the code inspection type is first, the execution order of the configuration nodes for target tasks of the compilation and build type is second, and the execution order of the configuration nodes for target tasks of the application deployment type is third, and so on.

[0097] 103. Based on the configuration node information of all target tasks, perform task concatenation on all target tasks to obtain all concatenated target tasks, which will serve as the pipeline task configuration for the application.

[0098] In this embodiment of the invention, the pipeline task configuration of the application has corresponding call order attribute information.

[0099] 104. Deploy the application according to its pipeline task configuration.

[0100] In this embodiment of the invention, based on the application's pipeline task configuration, the corresponding interface can be called to create the application's pipeline tasks, thereby generating the pipeline project corresponding to the application. Optionally, the corresponding interface can be the Jenkins service interface, which is a continuous integration tool developed based on a programming language.

[0101] As can be seen, implementing the embodiments of the present invention can intelligently deploy the application based on the task information of the determined target task, without the need for manual construction of scripts for each task and manual deployment of the application. This reduces the occurrence of script construction errors caused by human error in using script syntax, thereby improving the reliability and accuracy of each task construction, and thus improving the deployment reliability and accuracy of the application, enabling the application to start up smoothly and provide services.

[0102] In an optional embodiment, before step 103 above, which involves concatenating all target tasks based on their configuration node information to obtain a concatenated set of target tasks, and then using this concatenated set as the pipeline task configuration for the application, the method further includes:

[0103] Determine the script entry configuration information that matches all target tasks.

[0104] Furthermore, as an optional implementation, based on the configuration node information of all target tasks, all target tasks are concatenated to obtain a concatenated set of target tasks, which serves as the pipeline task configuration for the application, including:

[0105] Based on the script entry configuration information, the configuration node information of all target tasks, and the preset script syntax information, generate the script information for each target task.

[0106] Based on the script information of all target tasks, all target tasks are concatenated to obtain a concatenated set of target tasks, which serves as the pipeline task configuration for the application.

[0107] In this optional embodiment, the script entry configuration information is the starting point for generating script information and assembling tasks for the overall target task. Further optionally, script information for each target task is generated based on the script entry configuration information, the configuration node information of all target tasks, and preset script syntax information. Alternatively, based on the script entry configuration information and the configuration node information of all target tasks, the first target task located at the first configuration node position can be obtained from all target tasks, and starting from the first target task, script information for the first target task and other target tasks can be generated sequentially according to the preset script syntax information. Alternatively, script information for all target tasks can be generated simultaneously based on the script entry configuration information, the configuration node information of all target tasks, and the preset script syntax information.

[0108] As can be seen, this optional embodiment can selectively concatenate all target tasks based on the script entry configuration information and the configuration node information of the target tasks. This not only improves the reliability and accuracy of the concatenation operation of the target tasks, thereby improving the reliability and accuracy of the obtained application pipeline task configuration, but also improves the efficiency of constructing the script information of the target tasks, enabling the rapid acquisition of the application pipeline task configuration and thus realizing the rapid deployment process of the application.

[0109] In another optional embodiment, step 104 above, deploying the application according to the application's pipeline task configuration, includes:

[0110] Based on the application's pipeline task configuration, determine the application's pipeline task interface that needs to be called.

[0111] Call the pipeline task interface to create pipeline tasks for the application and generate pipeline projects for the application.

[0112] Deploy the application according to the application's pipeline project.

[0113] In this optional embodiment, the interface matching the specific pipeline task type is determined based on the specific pipeline task type in the application's pipeline task configuration. Optionally, the pipeline task interface of the application to be called can be the JenKins service interface. Further optionally, the pipeline task interface can be called according to a preset request interval parameter.

[0114] As can be seen, this optional embodiment can determine the pipeline task interface based on the pipeline task configuration, thereby realizing the creation of pipeline projects for the application. This can improve the reliability and accuracy of the determined pipeline task interface, and thus reliably and accurately generate pipeline projects for the application, thereby achieving precise deployment of the application.

[0115] In yet another optional embodiment, the step of determining the application's pipeline task interface to be invoked based on the application's pipeline task configuration includes:

[0116] Based on the application's pipeline task configuration, the application's corresponding cloud environment type, and the interface types of multiple preset interfaces, calculate the call matching degree between each interface and the application's pipeline task.

[0117] Based on the call matching degree between each interface and the application's pipeline task, target interfaces with a call matching degree greater than or equal to a preset matching degree threshold are determined from all interfaces and used as the pipeline task interfaces of the application to be called.

[0118] In this optional embodiment, the deployment cloud environment type corresponding to the application can be a PaaS cloud environment, a SaaS cloud environment, an IaaS cloud environment, etc. Further optionally, the calculated call matching degree can be displayed in the form of an integer or a percentage.

[0119] Furthermore, as an optional implementation, after determining the target interfaces from all interfaces whose call matching degree is greater than or equal to a preset matching degree threshold based on the call matching degree between each interface and the pipeline tasks of the application, the method may further include:

[0120] Determine the usage status of the target interface, and based on the usage status, determine whether the target interface is in a occupied state;

[0121] When it is determined that the target interface is occupied, the call urgency of the target interface is configured for the pipeline task of the application, and it is determined whether the call urgency is greater than or equal to the preset urgency threshold.

[0122] When it is determined that the urgency of the call is greater than or equal to the preset urgency threshold, the other target interface that is most similar to the target interface, excluding the target interface, is selected from all interfaces and used as the pipeline task interface of the application to be called.

[0123] Furthermore, if the target interface is not in use, or if the urgency of the call is less than the preset urgency threshold, the target interface can still be used as the pipeline task interface of the application to be called.

[0124] As can be seen, this optional embodiment can match the target interface corresponding to the pipeline task based on the calculated call matching degree between each interface and the pipeline task of the application. This helps to improve the reliability and accuracy of the determined pipeline task interface, and in turn, improves the reliability and accuracy of subsequent pipeline task interface calls, thereby achieving accurate generation of subsequent pipeline projects.

[0125] Example 2

[0126] Please see Figure 3 , Figure 3 This is a flowchart illustrating an automated application deployment method based on pipelined tasks disclosed in an embodiment of the present invention. Figure 3 The described pipeline-based automated application deployment method can be applied to deploying various application types. Optionally, the application can be one of the following: artificial intelligence applications, general microservice applications, build service applications, and middleware service applications; this embodiment of the invention does not impose any limitations. Further optionally, this method can be implemented by an application deployment system, which can be integrated into an application deployment device, or it can be a local server or cloud server used to process the application deployment process, etc.; this embodiment of the invention does not impose any limitations. Figure 3 As shown, this pipeline-based application automated deployment method may include the following operations:

[0127] 201. Determine the deployment requirements of the applications that need to be deployed.

[0128] In this embodiment of the invention, optionally, the application deployment requirement information includes the target task type and cloud environment type required to deploy the application. The target task type includes at least one of code inspection, compilation and build, application deployment, and automated testing. Further optionally, the cloud environment type can be a PaaS cloud environment, a SaaS cloud environment, an IaaS cloud environment, etc.

[0129] 202. Based on the application's deployment requirements and the template information of multiple preset pipeline configuration templates, determine the target configuration template that matches the application from all pipeline configuration templates.

[0130] In an embodiment of the present invention, a certain production line configuration template can be as follows: Figure 1 As shown, optionally, the template information of the pipeline configuration template includes the task information of multiple initial configuration tasks contained in the pipeline configuration template, such as the task type, task name, and task parameters to be called, etc.

[0131] 203. Based on the target configuration template, obtain the task information of multiple target tasks corresponding to the application.

[0132] In this embodiment of the invention, optionally, relevant deployment personnel can fill in the target configuration template according to the target configuration template to obtain task information of multiple target tasks corresponding to the application, or they can fill in the target configuration template according to the target configuration template and the pre-encapsulated template filling parameters to obtain task information of multiple target tasks corresponding to the application.

[0133] 204. Based on the task information of each target task, determine the configuration node information of each target task.

[0134] 205. Based on the configuration node information of all target tasks, perform task concatenation on all target tasks to obtain all concatenated target tasks, which will serve as the pipeline task configuration for the application.

[0135] 206. Deploy the application according to its pipeline task configuration.

[0136] In this embodiment of the invention, for other descriptions of steps 204-206, please refer to the detailed description of steps 102-104 in Embodiment 1. This embodiment of the invention will not repeat them.

[0137] As can be seen, implementing the embodiments of the present invention can obtain task information of multiple target tasks corresponding to the application based on the determined target configuration template. This is beneficial to improving the reliability and accuracy of the obtained target task information, and thus beneficial to improving the reliability and accuracy of subsequent target task splicing operations, thereby facilitating the precise deployment of the application and greatly improving the overall deployment efficiency of the application.

[0138] In an optional embodiment, prior to deploying the application according to the application's pipeline task configuration in step 206 above, the method further includes:

[0139] Based on the application's pipeline task configuration, perform response tests on the application's pipeline tasks to obtain the response test parameters corresponding to the application's pipeline tasks.

[0140] Determine whether the response test parameters meet the preset response conditions;

[0141] When it is determined that the response test parameters meet the preset response conditions, the operation of deploying the application is triggered according to the application's pipeline task configuration.

[0142] When it is determined that the response test parameters do not meet the preset response conditions, the response failure type corresponding to the pipeline task of the application is determined.

[0143] Based on the response failure type, the application's pipeline task configuration is modified to obtain the modified application's pipeline task configuration. Then, the execution of response tests on the application's pipeline tasks based on the application's pipeline task configuration is triggered to obtain the response test parameters corresponding to the application's pipeline tasks, and to determine whether the response test parameters meet the preset response conditions.

[0144] In this optional embodiment, a preliminary response test is first performed on the application deployment process to identify any potential response failures. Specifically, the application's pipeline task configuration is changed to the modified application pipeline task configuration.

[0145] As can be seen, this optional embodiment can modify the pipeline task configuration based on the response failure type determined in the response test. This not only ensures the reliability and accuracy of the pipeline task configuration when the application is deployed in the future, but also enables timely modification of the configuration of pipeline tasks that malfunction, thereby achieving efficient deployment of the application.

[0146] In another optional embodiment, the step of determining whether the response test parameters meet the preset response conditions includes:

[0147] Based on the response test parameters, the target response test sub-parameters that are within the preset parameter threshold range are determined from the response test sub-parameters included in the response test parameters;

[0148] Determine the number of target response test sub-parameters that are within the preset parameter threshold range;

[0149] Determine if the number of parameters is greater than or equal to a preset parameter number threshold;

[0150] When it is determined that the number of parameters is greater than or equal to the preset parameter number threshold, the response test parameters are determined to meet the preset response conditions.

[0151] When it is determined that the number of parameters is less than the preset parameter number threshold, it is determined that the response test parameters do not meet the preset response conditions.

[0152] In this optional embodiment, the response test parameters may include response duration parameters and / or request frequency parameters, that is, the response test parameters may include one or more response test sub-parameters.

[0153] As can be seen, this optional embodiment can determine whether the response test parameter meets the response conditions based on whether the response test parameter meets multiple preset parameter conditions. In this way, the reliability and accuracy of the response condition determination operation of the response test parameter can be improved, which in turn can improve the reliability and accuracy of the subsequent pipeline task configuration for application deployment. This allows for precise deployment of the application and provides users with accurate network services.

[0154] Example 3

[0155] Please see Figure 4 , Figure 4 This is a schematic diagram of the structure of an automatic application deployment device based on pipelined tasks disclosed in an embodiment of the present invention. Figure 4 As shown, the application automated deployment device based on pipeline tasks may include:

[0156] Module 301 is used to obtain target information of the application to be deployed.

[0157] The determination module 302 is used to determine the configuration node information of each target task based on the task information of each target task;

[0158] The splicing module 303 is used to splice all target tasks according to the configuration node information of all target tasks, and obtain all spliced ​​target tasks as pipeline task configuration of the application.

[0159] Deployment module 304 is used to deploy the application according to the application's pipeline task configuration.

[0160] In this embodiment of the invention, the target information of the application includes task information of multiple target tasks, and the task information of each target task includes the task content and / or runtime environment information of the target task; the configuration node information of each target task includes the configuration node location and / or configuration node execution order of the target task.

[0161] It is evident that implementation Figure 4 The described pipeline-based automated application deployment device can intelligently deploy applications based on the task information of the determined target tasks, eliminating the need for manual script building for each task and manual deployment of the application. This reduces script building errors caused by human error in script syntax, thereby improving the reliability and accuracy of each task's construction, and ultimately improving the reliability and accuracy of application deployment, enabling the application to start up smoothly and provide services.

[0162] In an optional embodiment, the determining module 302 is further configured to:

[0163] Before the acquisition module 301 acquires the target information of the application to be deployed, it determines the deployment requirements of the application to be deployed; based on the deployment requirements of the application and the template information of multiple preset pipeline configuration templates, it determines the target configuration template that matches the application from all pipeline configuration templates.

[0164] Specifically, the acquisition module 301 acquires the target information of the application to be deployed in the following way:

[0165] Based on the target configuration template, obtain task information for multiple target tasks corresponding to the application.

[0166] In this optional embodiment, the application deployment requirement information includes the target task type and cloud environment type required to deploy the application. The target task type includes at least one of code inspection type, compilation and build type, application deployment type and automated test type. The template information of each pipeline configuration template includes the task information of multiple initial configuration tasks contained in the pipeline configuration template.

[0167] It is evident that implementation Figure 5 The described pipeline-based application automatic deployment device can obtain task information of multiple target tasks corresponding to the application based on the determined target configuration template. This helps to improve the reliability and accuracy of the obtained target task information, and in turn, improves the reliability and accuracy of subsequent target task splicing operations, thereby facilitating the precise deployment of the application and greatly improving the overall deployment efficiency of the application.

[0168] In another alternative embodiment, the determining module 302 is further configured to:

[0169] Before the splicing module 303 splices all target tasks according to the configuration node information of all target tasks to obtain all spliced ​​target tasks, and uses them as pipeline task configuration for the application, it determines the script entry configuration information that matches all target tasks.

[0170] Specifically, the splicing module 303 splices all target tasks according to the configuration node information of all target tasks, obtaining a spliced ​​set of target tasks, which is then used as the pipeline task configuration for the application.

[0171] Based on the script entry configuration information, the configuration node information of all target tasks, and the preset script syntax information, generate the script information for each target task.

[0172] Based on the script information of all target tasks, all target tasks are concatenated to obtain a concatenated set of target tasks, which serves as the pipeline task configuration for the application.

[0173] It is evident that implementation Figure 5 The described pipelined task-based application automatic deployment device can selectively concatenate all target tasks based on script entry configuration information and target task configuration node information. This not only improves the reliability and accuracy of the target task concatenation operation, thereby improving the reliability and accuracy of the obtained application pipeline task configuration, but also improves the efficiency of constructing target task script information, enabling rapid acquisition of application pipeline task configuration and thus achieving a rapid application deployment process.

[0174] In another optional embodiment, the deployment module 304 deploys the application according to the application's pipeline task configuration in the following specific manner:

[0175] Based on the application's pipeline task configuration, determine the application's pipeline task interface that needs to be called.

[0176] Call the pipeline task interface to create pipeline tasks for the application and generate pipeline projects for the application.

[0177] Deploy the application according to the application's pipeline project.

[0178] It is evident that implementation Figure 5 The described pipelined task-based application automatic deployment device can determine the pipelined task interface according to the pipelined task configuration, thereby realizing the creation of pipelined projects for the application. This can improve the reliability and accuracy of the determined pipelined task interface, and thus reliably and accurately generate pipelined projects for the application, thereby achieving precise deployment of the application.

[0179] In yet another optional embodiment, the device further includes:

[0180] The response testing module 305 is used to perform response tests on the application's pipeline tasks according to the application's pipeline task configuration before the deployment module 304 deploys the application according to the application's pipeline task configuration, and to obtain the response test parameters corresponding to the application's pipeline tasks.

[0181] The judgment module 306 is used to determine whether the response test parameters meet the preset response conditions; when it is determined that the response test parameters meet the preset response conditions, the deployment module 304 is triggered to perform the deployment operation of the application according to the pipeline task configuration of the application.

[0182] The determination module 302 is also used to determine the response failure type corresponding to the pipeline task of the application when the judgment module 306 determines that the response test parameters do not meet the preset response conditions.

[0183] The modification module 307 is used to modify the pipeline task configuration of the application according to the response failure type, obtain the modified pipeline task configuration of the application, and trigger the response test module 305 to perform response tests on the pipeline tasks of the application according to the pipeline task configuration of the application, obtain the response test parameters corresponding to the pipeline tasks of the application, and trigger the judgment module 306 to judge whether the response test parameters meet the preset response conditions.

[0184] In this optional embodiment, the application's pipeline task configuration is the modified application's pipeline task configuration.

[0185] It is evident that implementation Figure 5 The described pipelined task-based application automatic deployment device can modify the pipelined task configuration based on the response failure type determined in the response test. This not only ensures the reliability and accuracy of the pipelined task configuration when the application is deployed in the future, but also enables timely modification of the configuration of pipelined tasks that malfunction, thereby achieving efficient deployment of the application.

[0186] In another optional embodiment, the determination module 306 determines whether the response test parameters meet the preset response conditions in the following specific way:

[0187] Based on the response test parameters, the target response test sub-parameters that are within the preset parameter threshold range are determined from the response test sub-parameters included in the response test parameters;

[0188] Determine the number of target response test sub-parameters that are within the preset parameter threshold range;

[0189] Determine if the number of parameters is greater than or equal to a preset parameter number threshold;

[0190] When it is determined that the number of parameters is greater than or equal to the preset parameter number threshold, the response test parameters are determined to meet the preset response conditions.

[0191] When it is determined that the number of parameters is less than the preset parameter number threshold, it is determined that the response test parameters do not meet the preset response conditions.

[0192] In this optional embodiment, the response test parameters include response duration parameters and / or request frequency parameters.

[0193] It is evident that implementation Figure 5 The described pipelined task-based application automatic deployment device can determine whether a response test parameter meets the response conditions based on whether the response test parameter meets multiple preset parameter conditions. This improves the reliability and accuracy of the response condition determination operation for the response test parameter, thereby improving the reliability and accuracy of subsequent pipelined task configuration for application deployment. As a result, the application can be deployed accurately, providing users with precise network services.

[0194] In yet another optional embodiment, the deployment module 304 determines the application's pipeline task interface to be invoked based on the application's pipeline task configuration in the following specific manner:

[0195] Based on the application's pipeline task configuration, the application's corresponding cloud environment type, and the interface types of multiple preset interfaces, calculate the call matching degree between each interface and the application's pipeline task.

[0196] Based on the call matching degree between each interface and the application's pipeline task, target interfaces with a call matching degree greater than or equal to a preset matching degree threshold are determined from all interfaces and used as the pipeline task interfaces of the application to be called.

[0197] It is evident that implementation Figure 5 The described pipelined task-based application automatic deployment device can match the target interface corresponding to the pipelined task based on the calculated call matching degree between each interface and the pipelined task of the application. This helps to improve the reliability and accuracy of the determined pipelined task interface, and in turn, improves the reliability and accuracy of subsequent pipelined task interface calls, thereby achieving accurate generation of subsequent pipelined projects.

[0198] Example 4

[0199] Please see Figure 6 , Figure 6 This is a schematic diagram of another application automatic deployment device based on pipeline tasks disclosed in an embodiment of the present invention. Figure 6 As shown, the application automated deployment device based on pipeline tasks may include:

[0200] Memory 401 storing executable program code;

[0201] Processor 402 coupled to memory 401;

[0202] The processor 402 calls the executable program code stored in the memory 401 to execute the steps in the application automatic deployment method based on pipeline tasks described in Embodiment 1 or Embodiment 2 of the present invention.

[0203] Example 5

[0204] This invention discloses a computer storage medium storing computer instructions. When these computer instructions are invoked, they are used to execute the steps in the pipelined task-based application automatic deployment method described in Embodiment 1 or Embodiment 2 of this invention.

[0205] Example 6

[0206] This invention discloses a computer program product, which includes a non-transitory computer-readable storage medium storing a computer program, and the computer program is operable to cause a computer to perform the steps in the pipelined task-based application automatic deployment method described in Embodiment 1 or Embodiment 2.

[0207] The device embodiments described above are merely illustrative. The modules described as separate components may or may not be physically separate. The components shown as modules may or may not be physical modules; that is, they may be located in one place or distributed across multiple network modules. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs. Those skilled in the art can understand and implement this without any creative effort.

[0208] Through the detailed description of the above embodiments, those skilled in the art can clearly understand that each implementation method can be implemented by means of software plus necessary general-purpose hardware platforms, and of course, it can also be implemented by hardware. Based on this understanding, the above technical solutions, in essence or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product can be stored in a computer-readable storage medium, including read-only memory (ROM), random access memory (RAM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), one-time programmable read-only memory (OTPROM), electrically-Erasable Programmable Read-Only Memory (EEPROM), compact disc read-only memory (CD-ROM) or other optical disc storage, disk storage, magnetic tape storage, or any other computer-readable medium that can be used to carry or store data.

[0209] Finally, it should be noted that the application automatic deployment method and apparatus based on pipeline tasks disclosed in the embodiments of the present invention are merely preferred embodiments of the present invention and are only used to illustrate the technical solutions of the present invention, not to limit it. Although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present invention.

Claims

1. A method for automatically deploying applications based on pipelined tasks, characterized in that, The method includes: Obtain the target information of the application to be deployed; the target information of the application includes the task information of multiple target tasks, and the task information of each target task includes the task content and / or runtime environment information of the target task. Based on the task information of each target task, the configuration node information of each target task is determined; the configuration node information of each target task includes the location of the configuration node and / or the execution order of the configuration node. Based on the configuration node information of all the target tasks, all the target tasks are concatenated to obtain all the concatenated target tasks, which are used as the pipeline task configuration of the application. Based on the pipeline task configuration of the application, response tests are performed on the pipeline tasks of the application to obtain the response test parameters corresponding to the pipeline tasks of the application; the response test parameters include response duration parameters and / or request frequency parameters. Based on the response test parameters, determine the target response test sub-parameters that are within the preset parameter threshold range from the response test sub-parameters included in the response test parameters; Determine the number of target response test sub-parameters that are within the preset parameter threshold range; Determine whether the number of parameters is greater than or equal to a preset parameter number threshold; When it is determined that the number of parameters is greater than or equal to the preset parameter number threshold, the application is deployed according to the application's pipeline task configuration; When it is determined that the number of parameters is less than the preset parameter number threshold, the response failure type corresponding to the pipeline task of the application is determined; Based on the response failure type, the pipeline task configuration of the application is modified to obtain the modified pipeline task configuration of the application, and the operation of performing response testing on the pipeline task of the application based on the pipeline task configuration of the application is triggered to obtain the response test parameters corresponding to the pipeline task of the application; the pipeline task configuration of the application is the modified pipeline task configuration of the application.

2. The automatic deployment method for applications based on pipelined tasks according to claim 1, characterized in that, Before obtaining the target information of the application to be deployed, the method further includes: Determine the deployment requirements of the application to be deployed; the deployment requirements of the application include the target task type and cloud environment type required to deploy the application, and the target task type includes at least one of code inspection type, compilation and build type, application deployment type and automated test type; Based on the deployment requirements of the application and the template information of multiple preset pipeline configuration templates, a target configuration template that matches the application is determined from all the pipeline configuration templates; the template information of each pipeline configuration template includes the task information of multiple initial configuration tasks contained in the pipeline configuration template; The step of obtaining the target information of the application to be deployed includes: Based on the target configuration template, obtain task information for multiple target tasks corresponding to the application.

3. The automatic deployment method for applications based on pipelined tasks according to claim 1 or 2, characterized in that, Before concatenating all the target tasks according to the configuration node information of all the target tasks to obtain the concatenated target tasks as the pipeline task configuration of the application, the method further includes: Determine the script entry configuration information that matches all the target tasks; The step of concatenating all the target tasks based on the configuration node information of all the target tasks to obtain a concatenated set of target tasks, which serves as the pipeline task configuration for the application, includes: Based on the script entry configuration information, the configuration node information of all the target tasks, and the preset script syntax information, generate script information for each target task; Based on the script information of all the target tasks, the target tasks are concatenated to obtain the concatenated target tasks, which are used as the pipeline task configuration of the application.

4. The automatic deployment method for applications based on pipelined tasks according to claim 3, characterized in that, The step of deploying the application according to the application's pipeline task configuration includes: Based on the pipeline task configuration of the application, determine the pipeline task interface of the application that needs to be called; The pipeline task interface is invoked to create pipeline tasks for the application and generate pipeline projects for the application. The application is deployed according to its pipeline project.

5. The automatic deployment method for applications based on pipelined tasks according to claim 4, characterized in that, The step of determining the required pipeline task interface of the application based on the application's pipeline task configuration includes: Based on the pipeline task configuration of the application, the deployment cloud environment type of the application, and the interface types of multiple preset interfaces, calculate the call matching degree between each interface and the pipeline task of the application. Based on the call matching degree between each interface and the pipeline task of the application, target interfaces with a call matching degree greater than or equal to a preset matching degree threshold are determined from all the interfaces and used as the pipeline task interfaces of the application to be called.

6. An automatic application deployment device based on pipelined tasks, characterized in that, The apparatus is used to perform the application automatic deployment method based on pipelined tasks as described in any one of claims 1-5, and the apparatus comprises: The acquisition module is used to acquire the target information of the application to be deployed; the target information of the application includes the task information of multiple target tasks, and the task information of each target task includes the task content and / or runtime environment information of the target task. The determining module is used to determine the configuration node information of each target task based on the task information of each target task; the configuration node information of each target task includes the configuration node position and / or the configuration node execution order of the target task; The splicing module is used to splice all the target tasks according to the configuration node information of all the target tasks, and obtain all the spliced ​​target tasks as the pipeline task configuration of the application. The deployment module is used to deploy the application according to the pipeline task configuration of the application.

7. An automatic application deployment device based on pipelined tasks, characterized in that, The device includes: Memory containing executable program code; A processor coupled to the memory; The processor calls the executable program code stored in the memory to execute the application automatic deployment method based on pipelined tasks as described in any one of claims 1-5.

8. A computer storage medium, characterized in that, The computer storage medium stores computer instructions, which, when invoked, are used to execute the application automatic deployment method based on pipeline tasks as described in any one of claims 1-5.

Citation Information

Patent Citations

  • Method, device and system for deploying application to running environment

    CN110569044A