Application deployment method and device, storage medium and electronic equipment

By generating a target release form and automatically deploying applications in accordance with the approval process, the problems of low efficiency and poor consistency in the existing technology are solved, and the application deployment is efficient, accurate and consistent, and applicable to application deployment in the field of computer technology.

CN120335827AInactive Publication Date: 2025-07-18CHINA BOND DIGITAL FINANCE TECH CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202510824796.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-06-19
Publication Date
2025-07-18
Estimated Expiration
Not applicable · inactive patent

AI Technical Summary

Technical Problem

In the prior art, application deployment methods are inefficient and poorly consistent, making it difficult to meet the needs of modern software development and operation and maintenance, especially in agile development and DevOps modes, it is difficult to ensure the deployment consistency of different environments.

Method used

By generating a target release form, it indicates the designated business system, equipment and deployment process based on the deployment configuration information of the application to be deployed, and automatically deploys the application according to the approval process. It uses automation technology and standardized process management to ensure the rapid, accurate and consistent deployment of application software and its dependencies in the target environment.

Benefits of technology

It improves the efficiency and consistency of application deployment, realizes unattended automated deployment, reduces human errors, and improves operation and maintenance efficiency and system reliability.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120335827A_ABST
    Figure CN120335827A_ABST
Patent Text Reader

Abstract

The embodiment of the invention provides an application deployment method and device, a storage medium and electronic equipment, and the method comprises the steps: generating a target release list based on the deployment configuration information of a to-be-deployed application, the deployment configuration information of the to-be-deployed application is used for indicating a specified service system corresponding to the to-be-deployed application, a group of specified equipment to which the to-be-deployed application is to be deployed and a specified deployment process of the to-be-deployed application; according to the approval process corresponding to the target publication list, transmitting the target publication list to a specified approval object for publication list approval; and under the condition that the approval of the target release list is passed, automatically deploying the to-be-deployed application in a specified service system of a group of specified equipment according to a specified deployment process. Through the application, the problems of low efficiency and poor consistency existing in an application deployment mode in related technologies are solved, and the effects of improving the efficiency of application deployment and improving the consistency of application deployment are further achieved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] Embodiments of the present application relate to the field of computer technology, and more specifically, to an application deployment method, an apparatus, a storage medium, and an electronic device. Background Art

[0002] In the digital age, application software, as the core driving force for promoting business innovation and enhancing user experience, the efficiency and stability of its development, testing, deployment, and operation and maintenance have become key factors in the competitiveness of enterprises. In related technologies, the application is usually deployed manually. However, the manual deployment method has low automation, low efficiency, and it is difficult to ensure the consistency of the deployment results in different environments.

[0003] It can be seen that the application deployment method in related technologies has problems of low efficiency and poor consistency. Summary of the Invention

[0004] Embodiments of the present application provide an application deployment method, an apparatus, a storage medium, and an electronic device to at least solve the technical problems of low efficiency and poor consistency existing in the application deployment method in related technologies.

[0005] According to one aspect of the embodiments of the present application, an application deployment method is provided, including: generating a target release order based on the deployment configuration information of the application to be deployed, where the deployment configuration information of the application to be deployed is used to indicate the specified business system corresponding to the application to be deployed, a group of specified devices to which the application to be deployed is to be deployed, and the specified deployment process of the application to be deployed; transmitting the target release order to a specified approval object for release order approval according to the approval process corresponding to the target release order; and automatically deploying the application to be deployed in the specified business system of the group of specified devices according to the specified deployment process when the target release order is approved.

[0006] According to another aspect of the embodiments of the present application, an application deployment apparatus is further provided, including: a first generation unit for generating a target release order based on the deployment configuration information of the application to be deployed, where the deployment configuration information of the application to be deployed is used to indicate the specified business system corresponding to the application to be deployed, a group of specified devices to which the application to be deployed is to be deployed, and the specified deployment process of the application to be deployed; a first transmission unit for transmitting the target release order to a specified approval object for release order approval according to the approval process corresponding to the target release order; and a deployment unit for automatically deploying the application to be deployed in the specified business system of the group of specified devices according to the specified deployment process when the target release order is approved.

[0007] In an exemplary embodiment, the deployment configuration information of the to-be-deployed application is further used to indicate a specified time window for deploying the to-be-deployed application; the deployment unit includes: a first execution module, configured to, when the target release order is approved, create a target orchestration based on the deployment configuration information of the to-be-deployed application, and generate an execution plan corresponding to the target orchestration, where the target orchestration is used to indicate a set of operations required to deploy the to-be-deployed application in the specified business system of the set of specified devices according to the specified deployment process; a generation module, configured to schedule the execution plan corresponding to the target orchestration within the specified time window, and generate an execution job corresponding to each operation in the set of operations; a second execution module, configured to sequentially execute the execution jobs corresponding to each operation to execute the target orchestration.

[0008] In an exemplary embodiment, the to-be-deployed application has at least two application instances, different application instances correspond to different deployment parameters, each of the at least two application instances corresponds to a part of the specified devices in the set of specified devices, and the to-be-deployed application is associated with a specified automation script; the second execution module includes: an execution sub-module, configured to perform the following processing operations by using each application instance as the current application instance: transmit the deployment parameters corresponding to the current application instance to the specified automation script, and sequentially execute the execution jobs corresponding to each operation through the specified automation script, so as to execute the target orchestration on the specified devices corresponding to the current application instance.

[0009] In an exemplary embodiment, the device further includes: a display unit, configured to display an application deployment configuration page on the screen of the terminal device before generating the target release order based on the deployment configuration information of the to-be-deployed application, where the application deployment configuration page displays a set of application configuration items, and the set of application configuration items includes a business system configuration item and a release step configuration item, the business system configuration item is associated with options of a set of business systems, and the release step configuration item is associated with options of a set of release steps; a first determination unit, configured to determine business system configuration information in response to a selection operation performed on the option of the specified business system in the set of business systems, where the business system configuration information is used to indicate the specified business system; a second determination unit, configured to determine release step configuration information in response to sequential selection operations performed on options of at least two release steps in the set of release steps, where the release step configuration information is used to indicate a specified deployment process, and the specified deployment process is a deployment process determined by the at least two release steps in the selected order; where the deployment configuration information of the to-be-deployed application includes the business system configuration information and the release step configuration information.

[0010] In an exemplary embodiment, the deployment configuration information of the application to be deployed is further used to indicate a specified time window for deploying the application to be deployed; the apparatus further includes: a first execution unit, configured to, after generating a target release order based on the deployment configuration information of the application to be deployed, perform at least one of the following verification operations on the target release order to obtain a verification result of the target release order: compliance verification of the group of specified devices, compliance verification of the specified deployment process, compliance verification of the specified time window, and compliance verification of the release order format of the target release order.

[0011] In an exemplary embodiment, the first transmission unit includes: a creation module, configured to create an approval work order for the target release order according to a specified approval process, where the specified approval process is an approval process selected for the target release order from multiple approval processes, the specified approval object corresponds to an approval node of the specified approval process, and the approval work order includes information of the target release order and is a work order approved by the specified approval object; a push module, configured to push the approval work order to the specified approval object to complete the approval of the target release order by approving the approval work order.

[0012] In an exemplary embodiment, the apparatus further includes: a second transmission unit, configured to, after pushing the approval work order to the specified approval object, in the case where the approval work order is rolled back, transmit a configuration modification request to an operation and maintenance object of the target release order to request the operation and maintenance object of the target release order to modify the deployment configuration information of the application to be deployed; a second generation unit, configured to, in the case of obtaining the modified deployment configuration information of the application to be deployed, regenerate the target release order based on the modified deployment configuration information of the application to be deployed; a second execution unit, configured to recreate the approval work order for the regenerated target release order according to the specified approval process, and push the recreated approval work order to the specified approval object to complete the approval of the regenerated target release order by approving the recreated approval work order.

[0013] According to another aspect of the embodiments of the present application, there is also provided a computer-readable storage medium, in which a computer program is stored, where the computer program is configured to execute the steps in any one of the above method embodiments when running.

[0014] According to another aspect of the embodiments of the present application, there is also provided a computer program product or computer program, which includes computer instructions stored in a computer-readable storage medium. The processor of the computer device reads the computer instructions from the computer-readable storage medium, and the processor executes the computer instructions, so that the computer device executes the steps in any one of the above method embodiments.

[0015] According to yet another aspect of the embodiments of the present application, there is also provided an electronic device, including a memory and a processor. A computer program is stored in the memory, and the processor is configured to execute the steps in any one of the above method embodiments through the computer program.

[0016] Through the present application, based on the deployment configuration information of the application to be deployed, a target release order is generated, where the deployment configuration information of the application to be deployed is used to indicate the specified business system corresponding to the application to be deployed, a group of specified devices to which the application to be deployed is to be deployed, and the specified deployment process of the application to be deployed; according to the approval process corresponding to the target release order, the target release order is transmitted to the specified approval object for release order approval; in the case where the target release order is approved, according to the specified deployment process, the application to be deployed is automatically deployed in the specified business system of a group of specified devices. Since the deployment process, the business system to be deployed to, and the devices to be used for deployment can be preset in advance, and after approval, the application software and its dependencies can be quickly, accurately, and consistently deployed to the target environment (business system) through automated tools and technologies, it is possible to solve the technical problems of low efficiency and poor consistency existing in the application deployment methods in the related art, and achieve the technical effects of improving the efficiency of application deployment and improving the consistency of application deployment. BRIEF DESCRIPTION OF THE DRAWINGS

[0017] Figure 1 is a schematic diagram of an application scenario of an application deployment method according to an embodiment of the present application.

[0018] Figure 2 is a schematic flowchart of an optional application deployment method according to an embodiment of the present application.

[0019] Figure 3 is a service architecture diagram of an optional release management module according to an embodiment of the present application.

[0020] Figure 4 is a schematic flowchart of another optional application deployment method according to an embodiment of the present application.

[0021] Figure 5 is a structural block diagram of an optional application deployment device according to an embodiment of the present application.

[0022] Figure 6 It is a block diagram of the computer system structure of an optional electronic device according to an embodiment of the present application. Detailed implementation manners

[0023] In order to enable those skilled in the art to better understand the solution of the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below in conjunction with the accompanying drawings in the embodiments of the present application. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative efforts shall fall within the protection scope of the present application.

[0024] It should be noted that the terms "first", "second", etc. in the specification and claims of the present application and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged under appropriate circumstances so that the embodiments of the present application described here can be implemented in an order other than those illustrated or described here. In addition, the terms "comprising" and "having" and any variations thereof are intended to cover non-exclusive inclusion. For example, a process, method, system, product or device comprising a series of steps or units is not necessarily limited to those steps or units clearly listed, but may include other steps or units not clearly listed or inherent to these processes, methods, products or devices.

[0025] According to one aspect of the embodiments of the present application, an application deployment method is provided. Optionally, in this embodiment, the above application deployment method can be but is not limited to being applied to a hardware environment such as Figure 1 shown in the figure, including a terminal device 102 and a server 104. The server 104 can be connected to the terminal device 102 through a network, and can be used to provide services (such as application services, etc.) for the terminal device 102 or the client installed on the terminal device 102. A database can be set on the server 104 or independently of the server 104 to provide data storage services for the server 104.

[0026] The above network can include but is not limited to at least one of the following: a wired network, a wireless network. The above wired network can include but is not limited to at least one of the following: a wide area network, a metropolitan area network, a local area network. The above wireless network can include but is not limited to at least one of the following: WIFI (Wireless Fidelity), Bluetooth. The terminal device 102 can be but is not limited to a PC (Personal Computer), a mobile phone, a tablet computer, etc. The server 104 can be but is not limited to a cloud server, a server cluster or other server types.

[0027] The application deployment method of the embodiments of the present application can be executed by the server 104, or can be executed by the terminal device 102, or can also be jointly executed by the server 104 and the terminal device 102. Among them, the execution of the application deployment method of the embodiments of the present application by the terminal device 102 can also be executed by the client installed thereon.

[0028] Taking the execution of the application deployment method in this embodiment by the server 104 as an example, Figure 2 It is a schematic flowchart of an optional application deployment method according to the embodiments of the present application, as Figure 2 shown. The process of this method can include the following steps:

[0029] Step S202: Generate a target release order based on the deployment configuration information of the application to be deployed. The deployment configuration information of the application to be deployed is used to indicate the specified business system corresponding to the application to be deployed, a group of specified devices to which the application to be deployed is to be deployed, and the specified deployment process of the application to be deployed;

[0030] Step S204: Transmit the target release order to the specified approval object for release order approval according to the approval process corresponding to the target release order;

[0031] Step S206: In the case where the target release order is approved, automatically deploy the application to be deployed in the specified business system of a group of specified devices according to the specified deployment process.

[0032] The application deployment method in this embodiment can be applied to the field of computer technology and applied to the scenario of deploying applications. Here, the application refers to application software, including but not limited to operating systems, database management software, middleware, and business application software, etc. The deployment of these applications refers to installing, configuring, and running the application in one or more specific computer or network environments so that it can improve the expected functions and services.

[0033] In the digital age, application software, as the core driving force for promoting business innovation and enhancing user experience, the efficiency and stability of its development, testing, deployment, and operation and maintenance have become key factors in an enterprise's competitiveness. With the rapid development of technologies such as cloud computing, containerization, and microservices architecture, the manual deployment methods commonly used in related technologies have become difficult to meet the needs of modern software development and operation and maintenance. The limitations of manual deployment methods include: low efficiency, the manual deployment process is cumbersome, requiring a large amount of time and effort from operation and maintenance personnel and being prone to errors; difficult to cope with rapid iteration, in the agile development and DevOps (Development and Operations) model, software version updates are frequent, and manual deployment is difficult to keep up with the pace; difficult to ensure consistency, configuration differences between different environments (such as development, testing, and production, etc.) may lead to inconsistent deployment results; lack of flexibility, in the face of emergencies or urgent requirements, manual deployment is difficult to respond quickly.

[0034] To at least partially solve the above technical problems, in this embodiment, an intelligent and automated application deployment method is provided. Through automated technologies and standardized process management, application software and its dependencies can be quickly, accurately, and consistently deployed to the target environment, thereby significantly improving the efficiency and reliability of software deployment.

[0035] In this embodiment, based on the deployment configuration information of the application to be deployed, a target release order is generated. Here, the deployment configuration information of the application to be deployed is used to indicate the specified business system corresponding to the application to be deployed, a group of specified devices to which the application to be deployed is to be deployed, and the specified deployment process of the application to be deployed. Here, the deployment configuration information of the application to be deployed is provided by the corresponding operation and maintenance personnel, and the target release order is a release order that records the deployment configuration information of the application to be deployed in a specified format.

[0036] The specified business system corresponding to the application to be deployed refers to the business area or functional module served by the application program, which is the context and purpose of the operation of the application software. For example, based on the deployment configuration information of the application to be deployed, a configuration management library can be configured. After determining the relationship data such as business systems, deployment units, and hosts, the application to be deployed can select the business system to be deployed in this time and associate the deployment units under the business system to determine the specific business scope of this deployment.

[0037] A set of specified devices to which the application to be deployed is to be deployed refers to a collection of physical or virtual computing resources on which the application software is planned to run. For example, in a data center and cloud computing environment, a set of specified devices may include servers, storage devices, network components, or cloud service resources, etc. Taking a set of specified devices as the host as an example, the ability to perform gray release of the host can be achieved by setting the hosts to be deployed in batches or in series-parallel. The execution waiting time can be set before each batch execution to facilitate quick verification of the functions that have been deployed. The settings for the hosts to be deployed here can be manually set by the operation and maintenance personnel according to the requirements, or can be set by the computer system according to the preset program.

[0038] The specified deployment process of the application to be deployed is a series of ordered operation steps used to guide the application software to change from the source code or build package state to the state of running fully on the specified devices. For example, the deployment process may include preparing the environment, downloading or building the software, configuring parameters, installing dependencies, starting the service, running tests, and monitoring the health status, etc. Optionally, there can be a set of standard deployment process steps, including version package acquisition, application start and stop, custom backup, version release, executable operations before and after version release, green light test, health check, etc. The specified deployment process can be a set of specified deployment steps obtained by combining from the above set of standard deployment process steps according to business requirements. Subsequently, the above set of specified deployment steps obtained by combination can be automatically executed to complete automatic deployment.

[0039] Optionally, the deployment configuration information of the application to be deployed can also indicate the deployment window and notification policy corresponding to the application to be deployed. Among them, the deployment window refers to the pre-configured deployment cycle of the application. The application can be deployed within the deployment window. Pre-configuring the deployment window can help formulate the deployment plan, avoid performing application deployment during peak periods, which may affect the deployment, and thus improve the deployment efficiency; the notification policy is an important link in the application deployment process, referring to the policy of sending notifications to relevant personnel. Notifications can be sent to the specified relevant personnel by including but not limited to text messages, emails, etc., enabling relevant personnel to quickly understand the deployment situation of the application. For example, a successful execution notification can be configured, or a failure execution (including various exceptions such as execution exceptions, pending processing, execution termination, etc.) notification can be configured. Specific notifiers can be selected, or a specific user group can be notified.

[0040] After generating the target release order, it is necessary to approve the target release order to ensure that the deployment process is qualified and reasonable. In this embodiment, according to the approval process corresponding to the target release order, the target release order is transmitted to the specified approval object for release order approval. Here, the approval process corresponding to the target release order can be manually or automatically selected from multiple preset approval processes. The approval process can indicate the specific object of the specified approval object. Optionally, the specified approval object can be one or more approval personnel, or one or more approval personnel and a computer system for automatic approval.

[0041] In the case where the target release order is approved, according to the specified deployment process, the application to be deployed is automatically deployed in the specified business system of a group of specified devices. Here, automatic deployment means that the computer system automatically executes the deployment steps indicated by the specified deployment process in the specified business system of a group of specified devices. Optionally, automatic deployment can be manually instructed by the operation and maintenance personnel within the deployment window corresponding to the application to be deployed, or can be automatically triggered by the computer system within the deployment window corresponding to the application to be deployed. When the automatic deployment is completed or a problem occurs during the automatic deployment process, relevant personnel can be notified according to the notification policy corresponding to the application to be deployed.

[0042] Through the embodiment provided by this application, based on the deployment configuration information of the application to be deployed, a target release order is generated, where the deployment configuration information of the application to be deployed is used to indicate the specified business system corresponding to the application to be deployed, a group of specified devices to which the application to be deployed is to be deployed, and the specified deployment process of the application to be deployed; according to the approval process corresponding to the target release order, the target release order is transmitted to the specified approval object for release order approval; in the case where the target release order is approved, according to the specified deployment process, the application to be deployed is automatically deployed in the specified business system of a group of specified devices. This solves the problems of low efficiency and poor consistency existing in the application deployment method in the related art, improves the efficiency of application deployment, and improves the consistency of application deployment.

[0043] In an exemplary embodiment, in order to achieve off-peak deployment and improve deployment efficiency, the deployment configuration information of the application to be deployed is further used to indicate the specified time window for deploying the application to be deployed.

[0044] Here, the specified time window is the preset deployment time of the application to be deployed, and the application to be deployed needs to be deployed within the specified time window. Setting a time window for each application to be deployed can better plan the deployment order of the applications, avoid resource conflicts caused by multiple applications needing to use the same device, and ensure the smooth progress of the deployment process.

[0045] Correspondingly, when the target release order is approved, the application to be deployed is automatically deployed in the specified business systems of a group of specified devices according to the specified deployment process, including: when the target release order is approved, based on the deployment configuration information of the application to be deployed, a target orchestration is created, and an execution plan corresponding to the target orchestration is generated, where the target orchestration is used to indicate a set of operations required to deploy the application to be deployed in the specified business systems of a group of specified devices according to the specified deployment process; within a specified time window, the execution plan corresponding to the target orchestration is scheduled to generate an execution job corresponding to each operation in the set of operations; and the execution jobs corresponding to each operation are sequentially executed to execute the target orchestration.

[0046] Here, the orchestration is a set of operations, that is, a set of operations to achieve a fixed task (deployment task). An operation is the smallest unit that can be executed on the server. The target orchestration is used to indicate a set of operations required to deploy the application to be deployed in the specified business systems of a group of specified devices according to the specified deployment process.

[0047] In this embodiment, after the target release order is approved, the system can automatically generate the target orchestration to be executed this time according to the deployment configuration information of the application to be deployed recorded in the release order, and create the corresponding execution plan at the same time. Here, the execution plan can indicate the specific time for deploying the application to be deployed, and the specific execution method of each operation in the orchestration (for example, serial or parallel, etc.). Optionally, the system can also generate a graphical orchestration according to the submitted data to intuitively display the specific execution parameters and process of this deployment job.

[0048] Within the specified time window, the system can start deploying the application to be deployed. At this time, the system can start the execution plan, schedule the execution plan corresponding to the target orchestration, and generate an execution job corresponding to each operation in the set of operations. Here, the execution job is the instruction related to each operation. When deploying the application to be deployed, the system can automatically sequentially execute the execution jobs corresponding to each operation to execute the target orchestration and complete the automatic deployment of the application to be deployed.

[0049] Through this embodiment, by creating and executing the target orchestration, the automatic deployment of the application can be realized without human intervention, improving the release efficiency.

[0050] In an exemplary embodiment, before generating a target release order based on the deployment configuration information of the application to be deployed, the above method further includes: displaying an application deployment configuration page on the screen of the terminal device, where the application deployment configuration page displays a set of application configuration items, and the set of application configuration items includes a business system configuration item and a release step configuration item. The business system configuration item is associated with a set of options of business systems, and the release step configuration item is associated with a set of options of release steps; in response to a selection operation performed on an option of a specified business system in the set of business systems, determining business system configuration information, where the business system configuration information is used to indicate the specified business system; in response to a sequential selection operation performed on options of at least two release steps in the set of release steps, determining release step configuration information, where the release step configuration information is used to indicate a specified deployment process, and the specified deployment process is a deployment process determined by at least two release steps in the selected order; where the deployment configuration information of the application to be deployed includes the business system configuration information and the release step configuration information.

[0051] To solve the complexity of pre-deployment configuration, in this embodiment, a visual application deployment configuration page is provided and displayed on the screen of the terminal device. Users can quickly and intuitively complete the deployment configuration of the application to be deployed by operating on the application deployment configuration page. Among them, the application deployment configuration page displays a set of application configuration items, and the set of application configuration items includes a business system configuration item and a release step configuration item. The business system configuration item is associated with a set of options of business systems, and the release step configuration item is associated with a set of options of release steps. Here, both the set of options of business systems and the set of options of release steps are pre-entered in the configuration management library.

[0052] When the user configures the business system in the business system configuration item, that is, selects the business system to which the application to be deployed needs to be deployed, the system can determine the business system configuration information in response to a selection operation performed on an option of a specified business system in the set of business systems, so as to determine the specified business system corresponding to the application to be deployed, where the business system configuration information is used to indicate the specified business system.

[0053] When the user configures the release steps in the release step configuration item, that is, selects the release steps to be executed during the deployment of the application to be deployed, the system can determine the release step configuration information in response to a sequential selection operation performed on options of at least two release steps in the set of release steps and determine the specified deployment process of the application to be deployed in order, where the release step configuration information is used to indicate the specified deployment process. Here, the set of release steps can be a set of standard release process steps sorted out through practice, and users can select each step according to actual business needs for combination to complete the initialization of the automated release execution steps.

[0054] Optionally, a set of application configuration items on the application deployment configuration page may also include a time window configuration item, a deployment resource configuration item, and a notification policy configuration item. Among them, the deployment resource configuration item may be associated with options of a set of deployment resources, and the notification policy configuration item may be associated with options of a set of notification policies. At the time window configuration item, a specified time window can be filled in manually. Here, the deployment resources are the devices used when the application to be deployed is deployed, corresponding to a set of specified devices to which the application to be deployed is to be deployed.

[0055] Through this embodiment, the user can configure the deployment configuration information of the application to be deployed by displaying the application deployment configuration page on the screen, and can complete the configuration simply and intuitively, enhancing the intuitiveness and usability of the configuration.

[0056] In an exemplary embodiment, in order to improve the availability and scalability of the application, the application to be deployed has at least two application instances. Different application instances correspond to different deployment parameters. Each application instance in the at least two application instances corresponds to a part of the specified devices in a set of specified devices. The application to be deployed is associated with a specified automation script.

[0057] Here, an application instance refers to a running copy or version of a specific application running in a specific running environment or on a device, which is the software entity actually running in the target system after software deployment. It should be noted that different application instances can run on the same device or be distributed on multiple different devices and have different deployment parameters. An automation script is a series of pre-written instructions that can be used to automate the execution of specific tasks or processes. In this embodiment, the automation script is used to automatically execute the operations in the automatic deployment to achieve the effect of automatic deployment.

[0058] Correspondingly, execute the execution jobs corresponding to each operation in sequence to perform the target orchestration, including: taking each application instance as the current application instance respectively and performing the following processing operations: passing the deployment parameters corresponding to the current application instance to the specified automation script, and sequentially executing the execution jobs corresponding to each operation through the specified automation script to perform the target orchestration on the specified devices corresponding to the current application instance.

[0059] Here, the deployment parameters corresponding to the current application instance may include but are not limited to configuration information of the running environment, service ports, network settings, resource limitations, etc. Passing the deployment parameters to the specified automation script can ensure that the running environment of each application instance can be correctly configured during deployment. In particular, the deployment parameters can be filled in by the user after selecting the options of the release steps in the release step configuration item for each selected release step.

[0060] In addition, executing the execution jobs corresponding to each operation by an automated script can ensure that the execution operations are accurately executed, avoid mistakes that may occur in manual operations, and in addition, the automated script can support serial or parallel execution strategies, which can improve the deployment efficiency.

[0061] Through this embodiment, the application to be deployed has at least two application instances, which can improve the availability and scalability of the application; by executing the target orchestration through an automated script to complete the automatic deployment, the accuracy and consistency of the application deployment can be improved, and the deployment efficiency can be improved.

[0062] In an exemplary embodiment, the deployment configuration information of the application to be deployed is further used to indicate a specified time window for deploying the application to be deployed; after generating the target release order based on the deployment configuration information of the application to be deployed, the above method further includes: performing at least one of the following verification operations on the target release order to obtain the verification result of the target release order: compliance verification of a group of specified devices, compliance verification of a specified deployment process, compliance verification of a specified time window, and compliance verification of the release order format of the target release order.

[0063] The release order verification can uniformly verify the content of the release order, expose and correct in advance the problems that may occur during the deployment process by shifting the problems to the left, so as to ensure the smooth progress of the deployment process. In this embodiment, the process of the release order verification includes at least one of the compliance verification of a group of specified devices, the compliance verification of a specified deployment process, the compliance verification of a specified time window, and the compliance verification of the release order format of the target release order. The specific verification operations included in the release order verification can be selected and confirmed by the user himself, or automatically confirmed by the system according to the content included in the release order, and this is not limited in this embodiment.

[0064] Here, the compliance verification of a group of specified devices can include checking whether the above group of specified devices can run normally, whether a group of specified devices meet the deployment environment requirements of the application to be deployed, etc.; the compliance verification of a specified deployment process can include checking whether the specified deployment process includes the necessary processes for deployment, and whether the deployment process is reasonable and compliant, etc.; the compliance verification of a specified time window can include whether a group of specified devices are idle within the time indicated by the specified time window, and whether the time indicated by the specified time window leaves enough time for various preparatory work before deployment from the current time, etc.; the compliance verification of the release order format of the target release order can include checking the format of each piece of information in the release order to ensure that the system can correctly obtain the deployment configuration information of the application to be deployed from the target release order.

[0065] Optionally, in addition to the compliance checks for the specified deployment process, the compliance checks for the specified time window, and the compliance checks for the release order format of the target release order described above, the release order check can also include compliance checks for deployment parameters, process compliance checks, historical exception statistics, etc.

[0066] Optionally, when the verification result of the target release order indicates non-compliance, the target release order can be returned to the operation and maintenance personnel, and they can be notified to modify the problems existing in the release order, and then receive and verify the modified target release order.

[0067] Through this embodiment, by verifying the target release order, problems existing in the target release order can be discovered in advance, ensuring the accuracy of the deployment configuration information, and thus improving the success rate of the automatic deployment of the application to be deployed.

[0068] In an exemplary embodiment, according to the approval process corresponding to the target release order, the target release order is transmitted to the specified approval object for release order approval, including: creating an approval work order for the target release order according to the specified approval process, where the specified approval process is the approval process selected for the target release order from multiple approval processes, the specified approval object corresponds to the approval node of the specified approval process, and the approval work order contains the information of the target release order and is a work order approved by the specified approval object; pushing the approval work order to the specified approval object to complete the approval of the target release order by approving the approval work order.

[0069] After the verification result of the target release order in the foregoing embodiment indicates that the target release order passes the verification, optionally, the operation and maintenance personnel can click the submission button on the corresponding page and select the specified approval process to start creating the approval work order; or the system can automatically select the specified approval process and start creating the approval work order.

[0070] When creating the approval work order, the information carried by the target release order (deployment configuration information of the application to be deployed) can be synchronously written into the approval work order to facilitate the specified approval object to approve the approval work order. It should be noted that the specified approval object is determined according to the specified approval process and corresponds to the approval node of the specified approval process. There can be one or more approval nodes, and multiple approval nodes can correspond to multiple different approval objects. During the execution of the approval process, the approval work order can be pushed to the specified approval object for approval in sequence according to the order of the approval nodes indicated in the specified approval process.

[0071] Optionally, in the case where there are multiple approval nodes in the specified approval process, the multiple approval nodes can have different approval results (passed or not passed), and the method for determining the approval result of the final target release order can be set according to experience. For example, the approval result of the majority (half or more) of the multiple approval nodes determines the final approval result, or, in the case where the approval result of any one approval node is not passed, the final approval result is determined to be not passed. This is not limited in this embodiment.

[0072] Through this embodiment, by selecting the specified approval process, creating and pushing a work order to approve the target release order, the flexibility and pertinence of the approval can be enhanced, and the approval efficiency can be improved.

[0073] In an exemplary embodiment, after pushing the approval work order to the specified approval object, the above method further includes: in the case where the approval work order is rolled back, transmitting a configuration modification request to the operation and maintenance object of the target release order to request the operation and maintenance object of the target release order to modify the deployment configuration information of the application to be deployed; in the case of obtaining the modified deployment configuration information of the application to be deployed, regenerating the target release order based on the modified deployment configuration information of the application to be deployed; according to the specified approval process, re-creating an approval work order for the regenerated target release order, and pushing the re-created approval work order to the specified approval object, so as to complete the approval of the regenerated target release order by approving the re-created approval work order.

[0074] In the approval process, the approval work order may be rolled back due to reasons such as configuration errors, process non-compliance, resource conflicts, etc. In the case where the approval work order is rolled back, a configuration modification request can be transmitted to the operation and maintenance object of the target release order to request the operation and maintenance object of the target release order to modify the deployment configuration information of the application to be deployed. Here, the operation and maintenance object of the target release order can be the operation and maintenance personnel who configured the deployment configuration information of the application to be deployed using the deployment configuration page in the foregoing embodiment. Optionally, the information of the operation and maintenance object of the target release order can be recorded in the approval work order when creating the approval work order, and the configuration modification request can record the specific reason for the rollback of the approval work order, so that the above operation and maintenance object can quickly modify the problem.

[0075] When the operation and maintenance object of the target release order receives a configuration modification request, it can modify the deployment configuration information of the application to be deployed accordingly and provide the deployment configuration information to the system again. The system can regenerate a new target release order based on the modified deployment configuration information and re-perform the processes of target release order verification, creation of approval work orders, and pushing of approval work orders that are the same as those in the foregoing embodiments. After that, if the new approval work order is still rejected, the operations such as transmitting the configuration modification request to the operation and maintenance object of the target release order are performed again until the target release order is approved; if the new approval work order indicates that the target release order is approved, the subsequent automatic deployment process is normally executed.

[0076] Through this embodiment, the mechanism of automatic rollback processing and regeneration of release orders is introduced, significantly optimizing the flexibility and efficiency of the approval process and ensuring the compliance and accuracy of application deployment.

[0077] The application deployment method in the embodiments of the present application will be explained below in conjunction with optional examples. As an optional implementation manner, in this optional example, the application deployment method is implemented by the following three functional modules: a release management module, a release approval module, and an automation module, where:

[0078] The first functional module is the release management module. The release management module can be used to implement the release management function. Release management is the core function of application automatic deployment. Through release management, unified release control is achieved, integrating resources, processes, automation, etc., to achieve data visualization and process traceability. The service architecture diagram of the release management module is as Figure 3 shown. This release management module can be divided into the following four functional sub-areas: release order maintenance, release order verification, deployment template management, and release change analysis report. Among them, release order maintenance includes business system configuration, deployment step configuration, deployment window configuration, deployment resource configuration, and notification policy configuration. The release management module is supported by a process engine, an automation engine, configuration management, and unified notification, and can transmit data outward through OpenApi (Open Application Programming Interface).

[0079] Release order maintenance: Release order maintenance is the main entry for releases. Operation and maintenance personnel can perform release data maintenance on the business systems to be released this time and generate release orders. Its functions mainly include business system configuration, deployment step configuration, deployment window configuration, deployment resource configuration, and notification policy configuration. The above functions are the same as or similar to those described in the foregoing embodiments and will not be elaborated here.

[0080] Release order verification: Release order verification mainly conducts unified verification on the content created in the release order. By shifting problems to the left, problems that may occur during the release process can be exposed in advance, including parameter compliance checks, step compliance checks, deployment resource compliance checks, release window compliance checks, historical exception statistics, process compliance checks, and so on.

[0081] Release module management: Release module management can formulate and save different deployment processes for operation and maintenance personnel. The deployment process can be visually combined through deployment templates, and the deployment capabilities are extensible. When configuring deployment configuration information, combined releases can be quickly performed according to the actual deployment process, thus achieving the ability of quick release.

[0082] Release order change analysis report: The release order change analysis report can verify and summarize the results of each deployment, form an analysis report form, and can be exported to facilitate the analysis of problems in the subsequent release process. It should be noted that the release order change analysis report supports exporting the change analysis report for the released release order, and supports displaying change content through tools such as Excel, including basic change information, change verification information, change resource statistics, change execution results, etc.

[0083] The second functional module is the release approval module. The release approval module is an internal dependent module for the automatic deployment of applications, aiming to achieve compliance and rationality in the release process. Through API interface calls and linkages between functional modules, the docking of platform functions and processes, information display synchronization, automatic work order creation, etc. can be realized, improving the processing efficiency of the release process. At the same time, the online connection between the release process and automatic implementation is realized, strengthening the control of change risks. The core functions of the release approval module mainly include work order creation, work order approval, and work order rollback.

[0084] Work order creation: Operation and maintenance personnel can click the submission button on the release order management page and select the approval process model to automatically create a work order. At this time, the release order information will be simultaneously synchronized and written into the work order information for the approval personnel to approve.

[0085] Work order approval: The approval personnel approve the pending work order, and the process status diagram can be viewed in real time during the approval process. The process status diagram describes the entire process and the current status of the work order processing in graphical information. After the work order approval is completed and passed, the system can notify the application automatic deployment to modify the release order status. At this time, the release order enters the release implementation stage.

[0086] Work order rollback: During the approval process, the approval personnel can roll back the work order that does not meet the release requirements. After the rollback, the operation and maintenance personnel can modify the release order information again and submit it for approval again.

[0087] The third functional module is the automation module, which is the core dependent module for automatic application deployment. Its purpose is to complete one-click application deployment through automated orchestration. By transmitting information such as the operations, parameters, and deployment hosts selected by the operation and maintenance personnel to the automation platform, corresponding orchestrations are created and execution plans are generated simultaneously. The core functions of the automation module mainly include orchestration creation, execution plan, and historical jobs.

[0088] Orchestration creation: After the release order is approved, the system can automatically generate grouped orchestrations according to the configuration information of the release order. The automation platform generates graphical orchestrations based on the submitted data, intuitively displaying the execution parameters and processes of this release job.

[0089] Execution plan: It can be linked with the release approval module to generate job execution plans according to the deployment window and generate relevant instructions according to the approval status of the release order. Within the release window, the system will automatically execute the approved orchestrations, achieving unattended automatic deployment and improving deployment efficiency.

[0090] Historical jobs: By recording the orchestration job process in detail and providing a visual tracking and control interface, it intuitively displays the processes and results of various operations. It also supports manual intervention to correct job execution, allowing manual processing, interruption, redoing, skipping tasks, or terminating jobs, and supports exporting execution logs for easy problem troubleshooting.

[0091] Through this optional implementation method, the combination of the above three functional modules can integrate each subsystem, data information, and service resources to build a unified release system. Through various release strategies and process controls, unattended automatic deployment is achieved, thus effectively saving labor costs.

[0092] As another optional implementation method, operation and maintenance personnel and approval personnel can interact with the above release management module, release approval module, and automation module to complete the automatic deployment of the application to be deployed, where:

[0093] In the release management module, during the release order maintenance phase, the operation and maintenance personnel can pre-enter data such as business systems, deployment units, and hosts in the configuration management library and maintain the relevant relationships. Create a release order request through the page and select different templates for creation. Among them, the release order maintenance function supports selecting business systems from the configuration management library, and supports configuring release instances for different deployment units of the business system. For each release instance, different release steps can be configured; support for deployment window configuration, setting the start and end times of deployment, etc. Among them, for release instances, support for version acquisition, general backup, and selection of media packages; support for filling in release parameters for each step and transmitting the parameters to the automation script; support for grouping the deployment hosts under different release instances, support for setting serial and parallel operations for different host groups, and support for setting the waiting time for group execution for different groups, which is convenient for function verification. In addition, for creating by selecting different templates, it also supports configuring notification policies, including: sending execution success notifications and execution failure notifications, selecting different notification methods, such as text messages, emails, etc., and batch selecting notification recipients or user groups. After completing the data entry, the operation and maintenance personnel can click Submit to enter the release order verification phase.

[0094] In the release order verification phase, the operation and maintenance personnel can click the Submit button, and the system will perform content verification. During the verification process, the page can display verification-related information, including parameter compliance, step compliance, deployment resource compliance, deployment window compliance, etc. The operation and maintenance personnel can check the verification content. If there are problems, they can cancel the submission, modify the release order again, and submit it for verification again.

[0095] In the deployment template management phase, the operation and maintenance personnel can initiate a request to create or import a release template on the page and enter the template configuration page. Then, they can add deployment steps, write step names, and complete the parameters. Among the above operations for creating deployment template data, it includes: selecting whether the step is executed by default, where yes means automatic execution and no means manual execution; setting the step execution timeout time and the waiting time before execution; associating with an automation operation script to execute the job through the script, and the input and output parameters of the script can be set; adjusting the order of deployment steps by dragging. After completing the creation of the above deployment template data, they can choose to submit to generate the deployment template data. After that, when creating a release order, they can select the new deployment template data.

[0096] In the release approval module, the operation and maintenance personnel can batch select the release orders corresponding to the applications to be deployed and then submit them for approval, and support the operation and maintenance personnel to select a process approval model and enter the work order filling page. On the work order filling page, the operation and maintenance personnel can complete the work order information and submit the approval process. During the approval process, a flow chart can be provided for the operation and maintenance personnel to view the work order processing process and the current status.

[0097] In addition, in the release approval module, the approver can view the process to be approved in the to-do work order, and enter the work order approval page to conduct work order approval. Among them, the work order approval page can display the release order information. During the approval process, the approver can click the "Pass" button to let the work order continue to flow to the next approver; or click the "Rollback" button to let the work order return to the previous approver. If the current approver is at the start link, it will roll back to the operation and maintenance personnel who can modify the release order information again and submit the approval again. After the approver completes the approval of all process links, the system can notify the application to automatically deploy and modify the status of the release order. At this time, the release order enters the release implementation stage.

[0098] In the automation module, after the user creates a release order, the system can synchronously create the automated orchestration jobs to be executed this time and create an execution plan at the same time. After the approver approves the release order, the system can automatically start the execution plan and wait for the execution window to execute.

[0099] In addition, in the automation module, the operation and maintenance personnel can click to process the release order on the to-do page and enter the release execution page. If it is a manual execution, within the execution window period, the user can click the "Execute" button to schedule the execution plan and generate an execution job; if it is an automatic execution, within the execution window period, the system can automatically schedule the execution plan and generate an execution job. After the job starts to execute, the job execution status can be viewed through the job details. The job details display the specific execution process and log status graphically. And during the job execution, manual intervention is supported to correct the job execution. The tasks can be manually processed, interrupted, redone, skipped or the job can be terminated. After the job execution is completed, the system can update the status of the release order to "Implementation Completed"; in addition, after the job execution is completed, rollback can be performed. The rollback can be performed for a certain group (partial deployment steps) or in full volume (all deployment steps).

[0100] Through this optional implementation, a method for automatic application deployment is provided. By integrating automated orchestration and service process engine services, and through continuous integration and build in R & D, the extraction, review, backup, start / stop, deployment, verification, and rollback of application versions can be achieved, enabling full life-cycle change control and an automatic release pipeline. While improving application deployment efficiency, it reduces the operational risks brought by manual application deployment, eliminates communication costs online, removes ambiguity in the release steps, reduces production operation problems caused by application deployment operations, and effectively supports the safe and stable operation of the application deployment system. Compared with the manual application deployment mode in related technologies, the application automatic deployment proposed in this optional implementation has the following four advantages: 1. Multiple release strategies and process control: Supports different applications to adopt rolling release or gray release; Through process control, the release process is optimized and standardized, improving operation and maintenance efficiency while ensuring the safety and compliance of the release link; 2. Unattended automatic application release and deployment: Through automated tools and processes, the application can be automatically changed, released, and deployed without human intervention, which can significantly improve operation and maintenance efficiency, reduce the risk of human errors, and accelerate the iteration speed of the application; 3. Standardization and consistency: Automatic deployment follows preset processes and standards to ensure the consistency and repeatability of each deployment, helping to eliminate problems caused by environmental differences and improving the maintainability and scalability of the system; 4. Rapid iteration: The entire process from application deployment requirements to deployment implementation is automatically completed online, meeting the actual needs of rapid iteration and rapid response. The application automatic deployment method proposed in this optional implementation focuses on the deep integration of user experience and business processes, and can achieve more efficient, reliable, and secure application deployment.

[0101] As another optional implementation, Figure 4 is a schematic flowchart of the application deployment method in this optional example. In this optional example, there are operation and maintenance personnel and approval personnel cooperating to execute the application deployment method. As Figure 4 shown, the process of this application deployment method can include the following steps:

[0102] Step S401, the operation and maintenance personnel enter the release order management module through the business entrance.

[0103] Step S402, provide the deployment configuration information of the application to be deployed in the release order management module and create a release order.

[0104] Step S403, enter the release order information in the release order, including: select the release template, select the business system, configure the deployment steps, configure the deployment window, configure the deployment resources, and configure the notification policy.

[0105] Step S404, perform release order verification on the release order. If the verification passes, go to step S405; if the verification fails, return to execute step S402.

[0106] Step S405: Submit the approved release order for approval and enter the approval process, where the approval process relies on the process engine for technical support.

[0107] Step S406: The approver views the to-do work order through the approval entry.

[0108] Step S407: The approver approves the to-do work order.

[0109] Step S408: After the work order approval is completed, feedback the approval result. If the approval result is approval passed, execute Step S410; if the approval result is approval not passed, execute Step S409.

[0110] Step S409: If the approval is not passed, the operation and maintenance personnel modify the release order and return to execute Step S402.

[0111] Step S410: If the approval is passed, enter the implementation and deployment process.

[0112] Step S411: Check whether the current time is within the deployment window. If not, wait until the time reaches the deployment window; if so, proceed to Step S412.

[0113] Step S412: Start executing the automated job to automatically deploy the application to be deployed and real-time feedback the execution result to the release order management module, where the automated job relies on the automation engine for technical support.

[0114] Step S413: After the deployment is completed, uniformly notify relevant personnel according to the configured notification policy.

[0115] Through this optional implementation method, by linking multiple links such as application deployment requirements, processes, monitoring, resources, implementation, and verification, and incorporating them into the scope of automation, functions such as automatic resource acquisition, automatic generation of orchestration, automatic transfer of deployment release orders, and automatic execution of operation tasks are realized. A unified and standardized application deployment standard and process system is constructed to achieve full-process automation from application version release requirements to application deployment completion, improve application deployment efficiency, reduce operation risks brought by manual application deployment, and all processes are fully executed online without communication costs, which can eliminate ambiguity in the release steps and reduce production operation problems caused by application deployment operations, effectively supporting the safe and stable operation of the production system in the data center.

[0116] It should be noted that, for the foregoing method embodiments, for the sake of simple description, they are all expressed as a series of action combinations. However, those skilled in the art should know that this application is not limited by the described action sequence, because according to this application, certain steps can be performed in other sequences or simultaneously. Secondly, those skilled in the art should also know that the embodiments described in the specification are all preferred embodiments, and the actions and modules involved are not necessarily essential to this application.

[0117] Through the description of the above embodiments, those skilled in the art can clearly understand that the method according to the above embodiments can be implemented by means of software plus a necessary general hardware platform. Of course, it can also be implemented by hardware, but in many cases the former is a better implementation method. Based on such an understanding, the technical solution of this application, in essence, or the part that makes a contribution to the prior art, can be embodied in the form of a software product. The computer software product is stored in a storage medium (such as ROM (Read-Only Memory), RAM (Random Access Memory), magnetic disk, optical disk), and includes several instructions for causing a terminal device (which can be a mobile phone, computer, server, or network device, etc.) to execute the methods described in various embodiments of this application.

[0118] According to another aspect of the embodiments of this application, an application deployment device is also provided. The application deployment device can be used to implement the application deployment method provided in the above embodiments, and those that have been described will not be repeated. As used hereinafter, the term "module" can be a combination of software and / or hardware that can implement a predetermined function. Although the devices described in the following embodiments are preferably implemented in software, implementation in hardware, or a combination of software and hardware is also possible and contemplated.

[0119] Figure 5 is a structural block diagram of an optional application deployment device according to the embodiments of this application. As Figure 5 shown in, the application deployment device includes:

[0120] A first generation unit 502, configured to generate a target release order based on the deployment configuration information of the application to be deployed, where the deployment configuration information of the application to be deployed is used to indicate a specified business system corresponding to the application to be deployed, a group of specified devices to which the application to be deployed is to be deployed, and a specified deployment process of the application to be deployed;

[0121] A first transmission unit 504, configured to transmit the target release order to a specified approval object for release order approval according to the approval process corresponding to the target release order;

[0122] A deployment unit 506, which is used to automatically deploy the application to be deployed in the specified business system of a group of specified devices according to the specified deployment process when the target release order is approved.

[0123] It should be noted that the first generation unit 502 in this embodiment can be used to execute the above step S202, the first transmission unit 504 in this embodiment can be used to execute the above step S204, and the deployment unit 506 in this embodiment can be used to execute the above step S206.

[0124] Through the embodiments provided in this application, a target release order is generated based on the deployment configuration information of the application to be deployed, where the deployment configuration information of the application to be deployed is used to indicate the specified business system corresponding to the application to be deployed, a group of specified devices to which the application to be deployed is to be deployed, and the specified deployment process of the application to be deployed; the target release order is transmitted to the specified approval object for release order approval according to the approval process corresponding to the target release order; when the target release order is approved, the application to be deployed is automatically deployed in the specified business system of a group of specified devices according to the specified deployment process. This solves the problems of low efficiency and poor consistency existing in the application deployment method in the related art, improves the efficiency of application deployment, and improves the consistency of application deployment.

[0125] In an exemplary embodiment, the deployment configuration information of the application to be deployed is further used to indicate the specified time window for deploying the application to be deployed; the deployment unit includes: a first execution module, which is used to create a target orchestration and generate an execution plan corresponding to the target orchestration based on the deployment configuration information of the application to be deployed when the target release order is approved, where the target orchestration is used to indicate a set of operations required to deploy the application to be deployed in the specified business system of a group of specified devices according to the specified deployment process; a generation module, which is used to schedule the execution plan corresponding to the target orchestration within the specified time window to generate an execution job corresponding to each operation in the set of operations; a second execution module, which is used to sequentially execute the execution jobs corresponding to each operation to execute the target orchestration.

[0126] In an exemplary embodiment, the application to be deployed has at least two application instances, different application instances correspond to different deployment parameters, each application instance in the at least two application instances corresponds to a part of the specified devices in the group of specified devices, and the application to be deployed is associated with a specified automation script; the second execution module includes: an execution sub-module, which is used to take each application instance as the current application instance and perform the following processing operations: transmit the deployment parameters corresponding to the current application instance to the specified automation script, and sequentially execute the execution jobs corresponding to each operation through the specified automation script to execute the target orchestration on the specified devices corresponding to the current application instance.

[0127] In an exemplary embodiment, the above-mentioned device further includes: a display unit, configured to display an application deployment configuration page on the screen of the terminal device before generating a target release order based on the deployment configuration information of the application to be deployed, where the application deployment configuration page displays a set of application configuration items, and the set of application configuration items includes business system configuration items and release step configuration items. The business system configuration items are associated with a set of options of business systems, and the release step configuration items are associated with a set of options of release steps; a first determination unit, configured to determine business system configuration information in response to a selection operation performed on an option of a specified business system in the set of business systems, where the business system configuration information is used to indicate the specified business system; a second determination unit, configured to determine release step configuration information in response to a selection operation sequentially performed on options of at least two release steps in the set of release steps, where the release step configuration information is used to indicate a specified deployment process, and the specified deployment process is a deployment process determined by at least two release steps in the selected order; where the deployment configuration information of the application to be deployed includes business system configuration information and release step configuration information.

[0128] In an exemplary embodiment, the deployment configuration information of the application to be deployed is further used to indicate a specified time window for deploying the application to be deployed; the above-mentioned device further includes: a first execution unit, configured to perform at least one of the following verification operations on the target release order after generating the target release order based on the deployment configuration information of the application to be deployed, to obtain a verification result of the target release order: compliance verification of a set of specified devices, compliance verification of the specified deployment process, compliance verification of the specified time window, and compliance verification of the release order format of the target release order.

[0129] In an exemplary embodiment, the first transmission unit includes: a creation module, configured to create an approval work order for the target release order according to a specified approval process, where the specified approval process is an approval process selected for the target release order from multiple approval processes, the specified approval object corresponds to an approval node of the specified approval process, and the approval work order contains information of the target release order and is a work order approved by the specified approval object; a push module, configured to push the approval work order to the specified approval object to complete the approval of the target release order by approving the approval work order.

[0130] In an exemplary embodiment, the above-mentioned device further includes: a second transmission unit, configured to, after pushing an approval work order to a designated approval object, in the case where the approval work order is rolled back, transmit a configuration modification request to the operation and maintenance object of the target release order, so as to request the operation and maintenance object of the target release order to modify the deployment configuration information of the application to be deployed; a second generation unit, configured to, in the case of obtaining the modified deployment configuration information of the application to be deployed, regenerate the target release order based on the modified deployment configuration information of the application to be deployed; a second execution unit, configured to, according to a designated approval process, recreate an approval work order for the regenerated target release order, and push the recreated approval work order to the designated approval object, so as to complete the approval of the regenerated target release order through the approval of the recreated approval work order.

[0131] It should be noted that the above-mentioned various modules can be implemented by software or hardware. For the latter, it can be implemented in the following ways, but not limited to this: all the above-mentioned modules are located in the same processor; or, the above-mentioned various modules are respectively located in different processors in any combination form.

[0132] According to another aspect of the embodiments of the present application, there is provided a computer-readable storage medium, where the computer-readable storage medium includes a stored program, and when the program runs, it executes the steps in any one of the above method embodiments.

[0133] In an exemplary embodiment, the above-mentioned computer-readable storage medium may include, but is not limited to: various media such as USB flash drives, ROMs, RAMs, mobile hard disks, magnetic disks, or optical discs that can store computer programs.

[0134] According to another aspect of the embodiments of the present application, there is provided an electronic device, including a memory, a processor, and a computer program stored on the memory and executable on the processor, where the processor is configured to execute the steps in any one of the above method embodiments through the computer program. In an exemplary embodiment, the above-mentioned electronic device may further include a transmission device and an input / output device, where the transmission device is connected to the above-mentioned processor, and the input / output device is connected to the above-mentioned processor.

[0135] The specific examples in this embodiment may refer to the examples described in the above embodiments and exemplary embodiments, and will not be repeated here.

[0136] According to another aspect of the embodiments of the present application, a computer program product is further provided. The computer program product includes computer programs / instructions, and the computer programs / instructions contain program codes for executing the methods shown in the flowcharts. In such an embodiment, the computer program can be downloaded and installed from a network through the communication part 609 and / or installed from the removable medium 611. When the computer program is executed by the central processing unit 601, various functions provided by the embodiments of the present application are executed. The serial numbers of the embodiments of the present application above are only for description and do not represent the advantages and disadvantages of the embodiments.

[0137] Figure 6 Schematically shows a block diagram of a computer system of an electronic device for implementing the embodiments of the present application. As Figure 6 shown, the computer system 600 includes a CPU (Central Processing Unit), a central processing unit 601, which can execute various appropriate actions and processes according to the programs stored in the ROM 602 or the programs loaded from the storage part 608 into the RAM 603. In the random access memory 603, various programs and data required for system operations are also stored. The central processing unit 601, the read-only memory 602, and the random access memory 603 are connected to each other through the bus 604. The I / O (Input / Output) interface 605 is also connected to the bus 604.

[0138] The following components are connected to the I / O interface 605: an input part 606 including a keyboard, a mouse, etc.; an output part 607 including, for example, a CRT (Cathode Ray Tube), an LCD (Liquid Crystal Display), etc. and a speaker, etc.; a storage part 608 including a hard disk, etc.; and a communication part 609 including a network interface card such as a local area network card, a modem, etc. The communication part 609 performs communication processing via a network such as the Internet. The drive 610 is also connected to the input / output interface 605 as needed. A removable medium 611, such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, etc., is installed on the drive 610 as needed so that the computer program read from it can be installed into the storage part 608 as needed.

[0139] In particular, according to the embodiments of the present application, the processes described in each method flowchart can be implemented as computer software programs. For example, an embodiment of the present application includes a computer program product, which includes a computer program carried on a computer-readable medium, and the computer program contains program codes for executing the methods shown in the flowcharts. In such an embodiment, the computer program can be downloaded and installed from the network through the communication part 609, and / or installed from the removable medium 611. When the computer program is executed by the central processing unit 601, various functions defined in the system of the present application are executed.

[0140] It should be noted that Figure 6 The computer system 600 of the electronic device shown is only an example and should not impose any limitation on the functions and scope of use of the embodiments of the present application.

[0141] Obviously, those skilled in the art should understand that the above-mentioned modules or steps of the present application can be implemented by a general-purpose computing device. They can be concentrated on a single computing device or distributed on a network composed of multiple computing devices. They can be implemented by program codes executable by the computing device. Thus, they can be stored in a storage device and executed by the computing device. And in some cases, the steps shown or described can be executed in a different order than here, or they can be separately made into individual integrated circuit modules, or multiple modules or steps among them can be made into a single integrated circuit module to implement. In this way, the present application is not limited to any specific combination of hardware and software.

[0142] The above are only the preferred embodiments of the present application and are not used to limit the present application. For those skilled in the art, the present application can have various changes and modifications. Any modification, equivalent replacement, improvement, etc. made within the principle of the present application shall be included in the protection scope of the present application.

Claims

1. An application deployment method, characterized in that, Including: Generating a target release order based on the deployment configuration information of the application to be deployed, where the deployment configuration information of the application to be deployed is used to indicate the specified business system corresponding to the application to be deployed, a group of specified devices to which the application to be deployed is to be deployed, the specified deployment process of the application to be deployed, and the specified time window of the application to be deployed; Transmitting the target release order to a specified approval object for release order approval according to the approval process corresponding to the target release order; In the case where the target release order is approved, automatically deploying the application to be deployed in the specified business system of the group of specified devices according to the specified deployment process; Wherein, in the case where the target release order is approved, automatically deploying the application to be deployed in the specified business system of the group of specified devices according to the specified deployment process includes: in the case where the target release order is approved, creating a target orchestration based on the deployment configuration information of the application to be deployed, and generating an execution plan corresponding to the target orchestration, where the target orchestration is used to indicate a group of operations required to deploy the application to be deployed in the specified business system of the group of specified devices according to the specified deployment process; within the specified time window, scheduling the execution plan corresponding to the target orchestration to generate an execution job corresponding to each operation in the group of operations; and sequentially executing the execution jobs corresponding to each operation to execute the target orchestration.

2. The method according to claim 1, wherein The application to be deployed has at least two application instances, different application instances correspond to different deployment parameters, each application instance in the at least two application instances corresponds to a part of the specified devices in the group of specified devices, and the application to be deployed is associated with a specified automation script; The sequentially executing the execution jobs corresponding to each operation to execute the target orchestration includes: Taking each application instance as the current application instance to perform the following processing operations: transmitting the deployment parameters corresponding to the current application instance to the specified automation script, and sequentially executing the execution jobs corresponding to each operation through the specified automation script to execute the target orchestration on the specified devices corresponding to the current application instance.

3. The method according to claim 1, wherein Before generating the target release order based on the deployment configuration information of the application to be deployed, the method further includes: Displaying an application deployment configuration page on the screen of the terminal device, where the application deployment configuration page displays a group of application configuration items, the group of application configuration items includes a business system configuration item and a release step configuration item, the business system configuration item is associated with options of a group of business systems, and the release step configuration item is associated with options of a group of release steps; Responding to a selection operation performed on the option of the specified business system in the group of business systems to determine business system configuration information, where the business system configuration information is used to indicate the specified business system; Determine release step configuration information in response to a selection operation sequentially performed on options of at least two release steps in the set of release steps, where the release step configuration information is used to indicate a specified deployment process, and the specified deployment process is a deployment process determined by the at least two release steps in the selected order; Wherein, the deployment configuration information of the application to be deployed includes the business system configuration information and the release step configuration information.

4. The method according to claim 1, wherein The deployment configuration information of the application to be deployed is further used to indicate a specified time window for deploying the application to be deployed; After generating the target release order based on the deployment configuration information of the application to be deployed, the method further includes: Performing at least one of the following verification operations on the target release order to obtain a verification result of the target release order: compliance verification of the set of specified devices, compliance verification of the specified deployment process, compliance verification of the specified time window, compliance verification of the release order format of the target release order.

5. The method according to any one of claims 1 to 4, characterized in that Transmitting the target release order to a specified approval object for release order approval according to the approval process corresponding to the target release order includes: Creating an approval work order for the target release order according to a specified approval process, where the specified approval process is an approval process selected for the target release order from multiple approval processes, the specified approval object corresponds to an approval node of the specified approval process, and the approval work order includes information of the target release order and is a work order approved by the specified approval object; Pushing the approval work order to the specified approval object to complete the approval of the target release order by approving the approval work order.

6. The method according to claim 5, characterized in that, After pushing the approval work order to the specified approval object, the method further includes: In the case where the approval work order is rejected, transmitting a configuration modification request to the operation and maintenance object of the target release order to request the operation and maintenance object of the target release order to modify the deployment configuration information of the application to be deployed; In the case of obtaining the modified deployment configuration information of the application to be deployed, regenerating the target release order based on the modified deployment configuration information of the application to be deployed; Creating a new approval work order for the regenerated target release order according to the specified approval process, and pushing the newly created approval work order to the specified approval object to complete the approval of the regenerated target release order by approving the newly created approval work order.

7. An application deployment device, characterized in that, Including: A first generation unit for generating a target release order based on the deployment configuration information of the application to be deployed, where the deployment configuration information of the application to be deployed is used to indicate a specified business system corresponding to the application to be deployed, a set of specified devices to which the application to be deployed is to be deployed, a specified deployment process of the application to be deployed, and a specified time window of the application to be deployed; A first transmission unit for transmitting the target release order to a specified approval object for release order approval according to the approval process corresponding to the target release order; A deployment unit, configured to automatically deploy the application to be deployed in the specified business system of the group of specified devices according to the specified deployment process when the target release order is approved. Wherein, the deployment unit includes: a first execution module, configured to create a target orchestration and generate an execution plan corresponding to the target orchestration based on the deployment configuration information of the application to be deployed when the target release order is approved, wherein the target orchestration is used to indicate a set of operations required to deploy the application to be deployed in the specified business system of the group of specified devices according to the specified deployment process; a generation module, configured to schedule the execution plan corresponding to the target orchestration within the specified time window and generate an execution job corresponding to each operation in the set of operations; a second execution module, configured to sequentially execute the execution jobs corresponding to each operation to execute the target orchestration.

8. A computer-readable storage medium, characterized in that, A computer program is stored in the computer-readable storage medium, wherein when the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 6 are implemented.

9. An electronic device, comprising a memory, a processor, and a computer program stored on the memory and executable on the processor, characterized in that, When the processor executes the computer program, the steps of the method according to any one of claims 1 to 6 are implemented.

Citation Information

Patent Citations

  • Application deployment method and device, computer equipment and storage medium

    CN109901842A

  • Application software automatic deployment and release system and method

    CN111414172A

  • Multi-platform project unified deployment method and device

    CN115857961A

  • Application deployment method and device, computer equipment, readable storage medium and program product

    CN119759370A