Deployment method, device, equipment, and program product of continuous delivery pipeline

By implementing real-time monitoring and response strategies, the problem of low management flexibility during the deployment of continuous delivery pipelines has been solved, improving deployment efficiency and flexibility while reducing manual intervention and wasted time.

CN115981668BActive Publication Date: 2026-07-21CHINA MOBILE GROUP JIANGSU +1
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
CHINA MOBILE GROUP JIANGSU
Filing Date
2021-10-15
Publication Date
2026-07-21

AI Technical Summary

Technical Problem

In existing technologies, the deployment of continuous delivery pipelines lacks management flexibility, resulting in low deployment efficiency, requiring manual intervention and rollback, which increases time waste.

Method used

By monitoring the deployment process of the continuous delivery pipeline, providing real-time monitoring information and response strategies, and allowing users to choose response strategies to continue deployment, continuous integration and delivery are connected, and unnecessary time waste is reduced.

Benefits of technology

It improves the management flexibility and deployment efficiency of the continuous delivery pipeline, reduces manual intervention and wasted time, and enables visibility of the deployment process and rapid problem resolution.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115981668B_ABST
    Figure CN115981668B_ABST
Patent Text Reader

Abstract

The application provides a deployment method, device and program product of a continuous delivery pipeline, and relates to the technical field of DevOps. The deployment method of the continuous delivery pipeline comprises the following steps: obtaining a delivery object according to a trigger parameter, and deploying a continuous delivery pipeline according to the delivery object; monitoring a deployment process of the continuous delivery pipeline, and providing a user with a coping strategy and continuing to deploy the continuous delivery pipeline according to a coping strategy selected by the user when a deployment error occurs. The deployment method of the continuous delivery pipeline provided by the application embodiment realizes the connection of continuous integration and continuous delivery, guarantees the visibility of the deployment process by monitoring the deployment process of the continuous delivery pipeline, the user can quickly infer the error cause according to the information of the monitoring process when a deployment error occurs, and timely selects a coping strategy, thereby reducing unnecessary time waste for the deployment of the continuous delivery pipeline and improving the flexibility of managing the continuous delivery pipeline.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of DevOps technology, specifically to methods, apparatus, electronic devices, and computer program products for deploying continuous delivery pipelines. Background Technology

[0002] In existing technologies, users often need to use complex configuration or orchestration files to achieve the connection between continuous integration and continuous delivery. If a deployment failure occurs during the deployment of a continuous delivery pipeline, it is necessary to wait for manual investigation and resolution of the cause of the failure before performing a reverse rollback on the continuous delivery pipeline or recreating a new continuous delivery pipeline for secondary deployment.

[0003] This results in more time being spent rolling back the deployment in the event of a deployment error, followed by manual intervention to reconfirm the deployment environment, and then re-executing the continuous delivery pipeline after confirmation. Because there is no single point of failure to address deployment errors, the flexibility of managing the continuous delivery pipeline is low, and the time spent on reverse rollback and reconfirmation of the deployment environment is increased, leading to low deployment efficiency of the continuous delivery pipeline. Summary of the Invention

[0004] This application provides a method for deploying a continuous delivery pipeline to address the technical problem that the lack of flexibility in managing a continuous delivery pipeline increases the time required for reverse rollback and secondary confirmation of the deployment environment, resulting in low deployment efficiency of the continuous delivery pipeline.

[0005] In a first aspect, embodiments of this application provide a method for deploying a continuous delivery pipeline, including:

[0006] Obtain deliverables based on trigger parameters, and deploy a continuous delivery pipeline based on the deliverables;

[0007] Monitor the deployment process of the continuous delivery pipeline, and when a deployment error occurs, provide the user with a response strategy and continue deploying the continuous delivery pipeline according to the response strategy selected by the user.

[0008] In one embodiment, monitoring the deployment process of the continuous delivery pipeline includes:

[0009] Based on the deployment process of the continuous delivery pipeline, real-time monitoring information of the continuous delivery pipeline is obtained;

[0010] The system periodically displays real-time monitoring information of the continuous delivery pipeline to users.

[0011] In one embodiment, obtaining the real-time monitoring information of the continuous delivery pipeline based on the deployment process of the continuous delivery pipeline includes:

[0012] Create a pipeline execution instance and associate the pipeline execution instance with the pipeline details generated by the continuous delivery pipeline during the deployment process;

[0013] Based on the pipeline execution instance and the pipeline details, real-time monitoring information of the continuous delivery pipeline is obtained.

[0014] In one embodiment, when a deployment error occurs, the real-time monitoring information includes deployment result information and deployment error information.

[0015] In one embodiment, the response strategy includes at least one of the following:

[0016] Rollback strategy, error ignore strategy, rollback retry strategy, and no rollback retry strategy.

[0017] In one embodiment, obtaining the deliverable based on the triggering parameter is achieved through one of the following methods:

[0018] The deliverable is downloaded via a secure file transfer protocol based on the trigger parameters.

[0019] The deliverable is downloaded via Hypertext Transfer Protocol based on the triggering parameters.

[0020] In one embodiment, the triggering parameter includes at least one of the following:

[0021] Delivery pipeline identification information, deliverable storage address information, callback notification interface address information, callback type information, file server username information, file server password information, log line count information, specified task activation information, and task type information.

[0022] Secondly, embodiments of this application provide a deployment apparatus for a continuous delivery pipeline, comprising:

[0023] The continuous delivery pipeline deployment module is used to obtain deliverables based on trigger parameters and deploy the continuous delivery pipeline based on the deliverables.

[0024] The continuous delivery pipeline monitoring module is used to monitor the deployment process of the continuous delivery pipeline. When a deployment error occurs, it provides the user with a response strategy and continues to deploy the continuous delivery pipeline according to the response strategy selected by the user.

[0025] Thirdly, embodiments of this application provide an electronic device, including a processor and a memory storing a computer program, wherein the processor executes the program to implement the steps of the continuous delivery pipeline deployment method described in the first aspect.

[0026] Fourthly, embodiments of this application provide a computer program product, including a computer program that, when executed by a processor, implements the steps of the continuous delivery pipeline deployment method described in the first aspect.

[0027] The continuous delivery pipeline deployment method, apparatus, electronic device, and computer program product provided in this application embodiment achieve the connection between continuous integration and continuous delivery by downloading deliverables according to trigger parameters and then deploying the continuous delivery pipeline based on the deliverables. Furthermore, real-time monitoring of the continuous delivery pipeline deployment process ensures the visibility of each step during deployment. When deployment errors occur, users can quickly deduce the cause of the error based on the information from the real-time monitoring process and promptly select a response strategy, reducing unnecessary time waste in the deployment of the continuous delivery pipeline. The continuous delivery pipeline deployment method, apparatus, electronic device, and computer program product provided in this application embodiment embodiment improves the monitoring function of deployment personnel on the continuous delivery pipeline deployment status, while maximizing the opening of user management permissions and improving the flexibility of managing the continuous delivery pipeline. Attached Figure Description

[0028] To more clearly illustrate the technical solutions in this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0029] Figure 1 This is a flowchart illustrating the deployment method of the continuous delivery pipeline provided in the embodiments of this application;

[0030] Figure 2 This illustrates the triggering parameters in the deployment method of the continuous delivery pipeline provided in the embodiments of this application;

[0031] Figure 3 The table structure of the timed reporting task table in the continuous delivery pipeline deployment method provided in this application embodiment is shown.

[0032] Figure 4 This illustrates the content parameters included in the reporting message in the continuous delivery pipeline deployment method provided in this application embodiment;

[0033] Figure 5 This document illustrates the request parameters of the continuous delivery pipeline task control interface in the continuous delivery pipeline deployment method provided in this application embodiment.

[0034] Figure 6This document illustrates the status of the continuous delivery pipeline and the corresponding control operations in the deployment method of the continuous delivery pipeline provided in the embodiments of this application.

[0035] Figure 7 This is a schematic diagram of the module of the deployment device for the continuous delivery pipeline provided in the embodiments of this application;

[0036] Figure 8 This is a schematic diagram of the structure of the electronic device provided in the embodiments of this application. Detailed Implementation

[0037] To make the objectives, technical solutions, and advantages of this application clearer, the technical solutions of this application will be clearly and completely described below with reference to the accompanying drawings of the embodiments. Obviously, the described embodiments are only some embodiments of this application, not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0038] Figure 1 A flowchart illustrating the deployment method of a continuous delivery pipeline provided in this application embodiment.

[0039] Reference Figure 1 This application provides a method for deploying a continuous delivery pipeline, which may include:

[0040] S110: Obtain deliverables based on trigger parameters, and deploy a continuous delivery pipeline based on the deliverables;

[0041] S120: Monitor the deployment process of the continuous delivery pipeline, and when a deployment error occurs, provide the user with a response strategy and continue to deploy the continuous delivery pipeline according to the response strategy selected by the user.

[0042] It should be noted that the execution entity of the continuous delivery pipeline deployment method provided in this application embodiment can be a network-side device, such as a server used to implement continuous integration and continuous delivery.

[0043] Before the network-side device executes S110-S120, the network-side device will execute S100:

[0044] Deliverables are generated through a continuous integration pipeline and stored in a repository.

[0045] Specifically, users can issue generation commands on a terminal (operating terminal or mobile terminal), causing the continuous integration pipeline to generate deliverables according to the generation commands. The repository for storing deliverables can be a file storage server, wherein the terminal and network-side devices, as well as the network-side devices and the file storage server, are interconnected via the network.

[0046] Furthermore, after confirming that the continuous integration pipeline has completed the generation of deliverables, users can proactively issue a trigger command to the network-side device and send trigger parameters to the network-side device by calling the "Continuous Delivery Pipeline Execution Interface". The trigger parameters can be understood as the parameters that the network-side device needs to execute.

[0047] In S110, the network-side device retrieves deliverables from a private repository based on trigger parameters and continuously delivers them according to the information contained in the deliverables.

[0048] In S120, network-side devices monitor the deployment process of the continuous delivery pipeline in real time. When deployment errors occur, they provide users with coping strategies and continue to deploy the continuous delivery pipeline according to the coping strategies selected by the users.

[0049] Both users and pipeline deployment personnel have the right to view the monitoring process of the continuous delivery pipeline, which is conducive to collaborative deployment of the continuous delivery pipeline.

[0050] The continuous delivery pipeline deployment method provided in this application embodiment downloads deliverables based on trigger parameters and then deploys the continuous delivery pipeline based on the deliverables, thus achieving connectivity between continuous integration and continuous delivery. Furthermore, real-time monitoring of the continuous delivery pipeline deployment process ensures the visibility of each step during deployment. When deployment errors occur, users can quickly deduce the cause of the error based on the information from the real-time monitoring process and promptly select a response strategy, reducing unnecessary time waste in the continuous delivery pipeline deployment. The continuous delivery pipeline deployment method provided in this application embodiment improves the monitoring function of deployment personnel on the continuous delivery pipeline deployment status, while maximizing the opening of user management permissions and improving the flexibility of managing the continuous delivery pipeline.

[0051] In one embodiment, such as Figure 2 As shown, the triggering parameters include at least one of the following:

[0052] Delivery pipeline identification information, deliverable storage address information, callback notification interface address information, callback type information, file server username information, file server password information, log line count information, specified task activation information, and task type information.

[0053] It's important to note that incorrect pipeline identification information will prevent network-side devices from finding the corresponding continuous delivery pipeline and thus hinder deployment. Similarly, incorrect deliverable storage address information will prevent network-side devices from obtaining the correct deliverables, leading to deployment errors. Furthermore, incorrect callback notification interface address information will prevent terminals from receiving real-time monitoring information. Network-side devices must use the correct trigger parameters to quickly and directly obtain the correct deliverables, thereby ensuring the correct deployment of the continuous delivery pipeline.

[0054] In one embodiment, the method for deploying a continuous delivery pipeline provided by this application further includes:

[0055] Verify the validity of the trigger parameters.

[0056] Specifically, when the network-side device receives the trigger parameters, it first checks whether the pipeline identifier information in the trigger parameters exists. Then, it logs into the file server to download the specified deliverable based on the deliverable storage address information, file server username information, and file server password information. If situations such as the pipeline identifier not existing, failure to log into the file server, or failure to retrieve the deliverable occur, the network-side device will send the reason for the failure to the terminal in real time for the user to view.

[0057] In one embodiment, S110 is implemented in one of the following ways:

[0058] Method 1: Download the deliverable via Secure File Transfer Protocol (SFTP) according to the trigger parameters;

[0059] Method 2: Download the deliverable via Hypertext Transfer Protocol (HTTP) according to the trigger parameters.

[0060] It should be noted that if S110 is implemented using method one, the delivery storage address information (releasePackage) in the trigger parameters should start with sftp: / / . If S110 is implemented using method two, the delivery storage address information (releasePackage) in the trigger parameters should start with http: / / . This is to distinguish the type of transport protocol.

[0061] In this embodiment, the network-side device can be selected to obtain deliverables using either Secure File Transfer Protocol or Hypertext Transfer Protocol, depending on the device conditions of the system to which the user terminal belongs.

[0062] In one embodiment, S120 includes:

[0063] Based on the deployment process of the continuous delivery pipeline, real-time monitoring information of the continuous delivery pipeline is obtained;

[0064] The system periodically displays real-time monitoring information of the continuous delivery pipeline to users.

[0065] During the normal deployment process of the continuous delivery pipeline, the network-side devices will periodically send real-time monitoring information of the continuous delivery pipeline to the terminal for users to view at any time. When a deployment error occurs, the network-side devices will send the current real-time monitoring information of the continuous delivery pipeline and the available coping strategies to the terminal again, so that users can know the deployment status of the continuous delivery pipeline as soon as possible, correctly infer the cause of the error, and select the corresponding coping strategy.

[0066] In one embodiment, obtaining the real-time monitoring information of the continuous delivery pipeline based on the deployment process of the continuous delivery pipeline includes:

[0067] Create a pipeline execution instance and associate the pipeline execution instance with the pipeline details generated by the continuous delivery pipeline during the deployment process;

[0068] Based on the pipeline execution instance and the pipeline details, real-time monitoring information of the continuous delivery pipeline is obtained.

[0069] Specifically, when a deployment error occurs, the real-time monitoring information includes deployment result information and deployment error information, which helps users or deployment personnel to infer the cause of the deployment error.

[0070] It should be noted that when the network-side device receives the trigger parameters, it asynchronously triggers the execution of the continuous delivery pipeline by calling an interface. The continuous delivery pipeline is essentially a collection of tasks linked together by a directed acyclic graph (DAG). The network-side device creates a pipeline execution instance for the continuous delivery pipeline to be executed, facilitating the recording of historical execution records. Simultaneously, the identifier of the pipeline execution instance serves as the monitoring identifier for the currently executing task, allowing the network-side device to periodically send real-time monitoring information (such as deployment progress, deployment status, and deployment results) to the terminal (user). Specific details of this process include:

[0071] Regarding the creation of a pipeline execution example:

[0072] Network-side devices asynchronously trigger the deployment of continuous delivery pipelines by calling interfaces. Before execution, a deployment plan is created based on the current pipeline identifier, which is a set of deployment operations. A deployment plan contains deployment operations for one or more continuous delivery pipelines.

[0073] After creating a deployment plan, the deployment of the continuous delivery pipelines in the plan is executed sequentially according to their order. Before deployment, the network-side devices allocate a pipeline execution instance to each continuous delivery pipeline. If a continuous delivery pipeline has undergone multiple execution and rollback operations, it will have multiple pipeline execution instances, each corresponding to one execution or rollback. The identifiers of these pipeline execution instances can be used as the primary key for queries, linking the pipeline details generated by that execution. Specifically, the pipeline details include at least one of the following: pipeline identifier information, pipeline status information, task execution instance information, task status information, task log information, and task failure reason information. Subsequently, the network-side devices obtain real-time monitoring information of the continuous delivery pipeline based on the pipeline execution instances and pipeline details information.

[0074] To facilitate real-time monitoring of the deployment status of the continuous delivery pipeline, this embodiment reuses the pipeline execution instance of the continuous delivery pipeline and applies it throughout the entire lifecycle of pipeline monitoring.

[0075] Regarding the scheduled reporting mechanism:

[0076] Since network-side devices may need to support the deployment of dozens or even hundreds of continuous delivery pipelines simultaneously within the same time period, it is necessary to monitor these continuous delivery pipelines in real time.

[0077] In one embodiment, the present invention employs a real-time monitoring and periodic reporting task processing mechanism. Without affecting the deployment of the continuous delivery pipeline, the network-side device enables a periodic reporting task to monitor the deployment status of the continuous delivery pipeline and periodically report real-time monitoring information of the continuous delivery pipeline to the user (terminal).

[0078] On the one hand, the execution steps for deploying a continuous delivery pipeline include:

[0079] The deployment of the continuous delivery pipeline is triggered asynchronously by calling an API. Before the deployment, a pipeline execution instance is created, and this instance is associated with pipeline details (such as execution logs, execution data, and execution results) generated during the deployment process. The pipeline execution instance is then recorded as a monitoring identifier in the "Scheduled Reporting Task Table," whose structure is as follows: Figure 3 As shown.

[0080] Execute the deployment of the continuous delivery pipeline in sequence according to the order of the continuous delivery pipeline in the go-live plan;

[0081] The system records the execution results of each task in the continuous delivery pipeline deployment process in real time. If the execution result is successful, the continuous delivery pipeline will initiate the execution of the next task until all tasks have been completed. If the execution result is unsuccessful, the continuous delivery pipeline will be notified that the current task has failed, and the execution of subsequent tasks in the continuous delivery pipeline will be suspended.

[0082] The deployment results of the continuous delivery pipeline are recorded in real time. If every task in the deployment process succeeds, the deployment result is also considered successful. However, if any task fails, the deployment result is considered a failure. When the deployment result is a failure, the continuous delivery pipeline proactively reports the task identifier and pipeline identifier of the failed task to the network-side device and records the error information in the associated database table.

[0083] On the other hand, the execution process for scheduled reporting tasks includes:

[0084] A: The scheduled reporting task scans the "Scheduled Reporting Task List" every 5 seconds, seizes a batch of tasks, and reports them in batches.

[0085] In one embodiment, the present invention employs a multi-host, multi-module task-preemption mechanism to manage the deployment of a continuous delivery pipeline.

[0086] Specifically, network-side devices use virtualized containers to manage several continuous delivery modules in the continuous delivery pipeline. This results in each continuous delivery module having a scheduled reporting task, necessitating consideration of preventing the same monitoring task from being consumed by multiple continuous delivery modules. This embodiment of the invention employs a task-preemption consumption mechanism to address this issue. When multiple continuous delivery modules simultaneously scan the "scheduled reporting task table," and find tasks requiring processing, they intercept these tasks and preempt them one by one by modifying the task's takeover host identifier (NODE_ID). The specific process is as follows:

[0087] If the NODE_ID field of a task is empty, it means that the task has not yet been taken, and the current host can directly take over the task.

[0088] If the NODE_ID field of a task is not empty, it means that the task has been preempted by another host. In this case, the record modification time (CHANGE_DATE) should be considered. If CHANGE_DATE exceeds 5 minutes, it means that the previous host has given up the task, and the current host can preempt the task again.

[0089] Because the SQL script explicitly defines the condition that NODE_ID is empty or a fixed value, if NODE_ID is preempted within this time period, the update script will fail to execute and the task needs to be discarded.

[0090] B: Based on the monitoring identifier of each task (i.e., the pipeline execution instance identifier), find the pipeline progress information of this continuous delivery pipeline. The pipeline progress information includes: pipeline identifier information, pipeline status information (success, failure, in progress), pipeline task information, task execution order information, task identifier information, and task status information (success, failure, in progress, waiting, ignored).

[0091] C: Determine the pipeline execution progress based on the pipeline progress information. There are three types of pipeline execution progress, which are described below along with their related explanations:

[0092] (1) The continuous delivery pipeline is in progress: Set the LAST_TASK_ID (pipeline execution progress) field to the identifier of the currently executing task in the pipeline, and call the reporting interface;

[0093] (2) Continuous delivery pipeline execution successful: Set the IS_FINISH flag (reporting task completion flag) to 1 and call the reporting interface;

[0094] (3) Continuous delivery pipeline execution failure: Set the IS_FINISH flag to 1 and call the reporting interface.

[0095] D: Call the reporting interface, assemble the reporting message (real-time monitoring information), and send the reporting message to the terminal (user). The reporting message includes the following parameters: Figure 4 As shown.

[0096] It should be noted that when a user calls the continuous delivery pipeline execution interface through the terminal for the first time, the network-side device will generate a pipeline execution instance identifier and return the pipeline execution instance identifier as the interface response to the terminal (user). When the user receives a jobid that is not empty, it means that the continuous delivery pipeline has been successfully triggered. The user only needs to wait for the network-side device to send a reporting message to the terminal at regular intervals.

[0097] By using scheduled tasks, the execution instances of the continuous delivery pipeline are used as monitoring identifiers. The execution progress and results of the continuous delivery pipeline and each task are collected in real time. The data is then assembled in sequence according to the order of the directed acyclic graph to form a concise report message to be presented to the user. This increases the user's understanding of the deployment process of the continuous delivery pipeline and helps to deduce the cause and select the most suitable response strategy when deployment errors occur in the continuous delivery pipeline.

[0098] It is worth noting that the scheduled reporting task and the continuous delivery pipeline deployment task are decoupled from each other. Even if the scheduled reporting task fails, it will not affect the normal execution of the continuous delivery pipeline.

[0099] When a user receives a reporting message from the network-side device on their terminal, the terminal can parse the message content according to a preset scheme. If a continuous delivery pipeline failure is detected, the user can immediately determine the cause of the error based on the reporting message and perform repairs. Then, by calling the "Continuous Delivery Pipeline Task Control Interface," the user can select a response strategy to continue the continuous delivery pipeline deployment. The request parameters for the Continuous Delivery Pipeline Task Control Interface are as follows: Figure 5 As shown, the status of the continuous delivery pipeline and the corresponding control operations are described below. Figure 6 As shown.

[0100] On the other hand, when deployment errors occur during the continuous delivery pipeline deployment process, developers can write targeted exception handling strategies to automatically fix common problems. After the exception is fixed, the strategy script automatically calls the "Continuous Delivery Pipeline Task Control Interface" to retry the failed task, thus achieving fully automated deployment of the continuous delivery pipeline.

[0101] The following describes the deployment apparatus for a continuous delivery pipeline provided in the embodiments of this application. The deployment apparatus for the continuous delivery pipeline described below and the deployment method for the continuous delivery pipeline described above can be referred to in correspondence with each other.

[0102] like Figure 7 As shown in the figure, an embodiment of this application provides a deployment apparatus for a continuous delivery pipeline, comprising:

[0103] The continuous delivery pipeline deployment module 710 is used to obtain deliverables based on trigger parameters and deploy the continuous delivery pipeline based on the deliverables.

[0104] The continuous delivery pipeline monitoring module 720 is used to monitor the deployment process of the continuous delivery pipeline. When a deployment error occurs, it provides the user with a response strategy and continues to deploy the continuous delivery pipeline according to the response strategy selected by the user.

[0105] In one embodiment, the continuous delivery pipeline monitoring module 720 includes:

[0106] The monitoring information acquisition submodule is used to obtain real-time monitoring information of the continuous delivery pipeline based on the deployment process of the continuous delivery pipeline.

[0107] The real-time monitoring information display submodule is used to periodically display the real-time monitoring information of the continuous delivery pipeline to the user;

[0108] The real-time monitoring information and response strategy display submodule is used to display the current real-time monitoring information of the continuous delivery pipeline to the user when a deployment error occurs, provide the user with response strategies, and continue to deploy the continuous delivery pipeline according to the response strategy selected by the user.

[0109] In one embodiment, the monitoring information acquisition submodule includes:

[0110] The pipeline execution instance association submodule is used to create pipeline execution instances and associate the pipeline execution instances with the pipeline details information generated by the continuous delivery pipeline during the deployment process;

[0111] The real-time monitoring information acquisition submodule is used to obtain the real-time monitoring information of the continuous delivery pipeline based on the pipeline execution instance and the pipeline details information.

[0112] In one embodiment, when a deployment error occurs, the real-time monitoring information in the monitoring information acquisition submodule includes deployment result information and deployment error information.

[0113] In one embodiment, the response strategy of the continuous delivery pipeline monitoring module 720 includes at least one of the following:

[0114] Rollback strategy, error ignore strategy, rollback retry strategy, and no rollback retry strategy.

[0115] In one embodiment, the continuous delivery pipeline deployment module 710 acquires deliverables through one of the following methods:

[0116] The deliverable is downloaded via a secure file transfer protocol based on the trigger parameters.

[0117] The deliverable is downloaded via Hypertext Transfer Protocol based on the triggering parameters.

[0118] In one embodiment, the triggering parameters of the continuous delivery pipeline deployment module 910 include at least one of the following:

[0119] Delivery pipeline identification information, deliverable storage address information, callback notification interface address information, callback type information, file server username information, file server password information, log line count information, specified task activation information, and task type information.

[0120] Figure 8 An example is a schematic diagram of the physical structure of an electronic device, such as... Figure 8As shown, the electronic device may include a processor 810, a communication interface 820, a memory 830, and a communication bus 840, wherein the processor 810, the communication interface 820, and the memory 830 communicate with each other via the communication bus 840. The processor 810 can call a computer program in the memory 830 to execute the steps of a continuous delivery pipeline deployment method, such as including:

[0121] Obtain deliverables based on trigger parameters, and deploy a continuous delivery pipeline based on the deliverables;

[0122] Monitor the deployment process of the continuous delivery pipeline, and when a deployment error occurs, provide the user with a response strategy and continue deploying the continuous delivery pipeline according to the response strategy selected by the user.

[0123] Furthermore, the logical instructions in the aforementioned memory 830 can be implemented as software functional units and, when sold or used as independent products, can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or a part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0124] On the other hand, embodiments of this application also provide a computer program product, which includes a computer program that can be stored on a non-transitory computer-readable storage medium. When the computer program is executed by a processor, the computer can perform the steps of the continuous delivery pipeline deployment method provided in the above embodiments, such as including:

[0125] Obtain deliverables based on trigger parameters, and deploy a continuous delivery pipeline based on the deliverables;

[0126] Monitor the deployment process of the continuous delivery pipeline, and when a deployment error occurs, provide the user with a response strategy and continue deploying the continuous delivery pipeline according to the response strategy selected by the user.

[0127] On the other hand, embodiments of this application also provide a processor-readable storage medium storing a computer program for causing a processor to perform the steps of the methods provided in the above embodiments, such as including:

[0128] Obtain deliverables based on trigger parameters, and deploy a continuous delivery pipeline based on the deliverables;

[0129] Monitor the deployment process of the continuous delivery pipeline, and when a deployment error occurs, provide the user with a response strategy and continue deploying the continuous delivery pipeline according to the response strategy selected by the user.

[0130] The processor-readable storage medium can be any available medium or data storage device that the processor can access, including but not limited to magnetic memory (e.g., floppy disk, hard disk, magnetic tape, magneto-optical disk (MO)), optical memory (e.g., CD, DVD, BD, HVD), and semiconductor memory (e.g., ROM, EPROM, EEPROM, non-volatile memory (NAND FLASH), solid-state drive (SSD)).

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

[0132] Through the above description of the embodiments, those skilled in the art can clearly understand that each embodiment can be implemented by means of software plus necessary general-purpose hardware platforms, and of course, it can also be implemented by hardware. Based on this understanding, the above technical solutions, in essence or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, magnetic disk, optical disk, etc., and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute the methods described in the various embodiments or some parts of the embodiments.

[0133] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit them. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of this application.

Claims

1. A method for deploying a continuous delivery pipeline, characterized in that, include: Obtain deliverables based on trigger parameters, and deploy a continuous delivery pipeline based on the deliverables; Enable scheduled reporting tasks to monitor the deployment process of the continuous delivery pipeline and record the execution results of each task in the deployment process of the continuous delivery pipeline in real time. When a deployment error is determined based on the execution result, the execution of subsequent tasks in the continuous delivery pipeline is paused, a coping strategy is provided to the user, and the continuous delivery pipeline is deployed again according to the coping strategy selected by the user. The step of enabling scheduled reporting tasks to monitor the deployment process of the continuous delivery pipeline includes: Create a pipeline execution instance and associate the pipeline execution instance with the pipeline details generated by the continuous delivery pipeline during the deployment process; The pipeline execution instance is recorded as a monitoring identifier in the scheduled reporting task table; The scheduled reporting task table is scanned periodically, and tasks awaiting processing in the table are preempted by modifying the takeover host identifier (NODE_ID). Specifically, when preempting a task, if the NODE_ID field of the task awaiting processing is empty, the task is preempted directly; if the NODE_ID field of the task awaiting processing is not empty, the modification time of the task awaiting processing is used to determine whether the previous host has abandoned the task, and if so, the task is preempted. Based on the monitoring markers in the preempted tasks, find the corresponding pipeline progress information of the continuous delivery pipeline; The pipeline execution progress is determined based on the pipeline progress information, and the real-time monitoring information of the continuous delivery pipeline is displayed to the user at regular intervals. The response strategy includes at least one of the following: Rollback strategy, error ignore strategy, rollback retry strategy, and no rollback retry strategy.

2. The deployment method of the continuous delivery pipeline according to claim 1, characterized in that, When a deployment error occurs, the real-time monitoring information includes deployment result information and deployment error information.

3. The method for deploying a continuous delivery pipeline according to any one of claims 1-2, characterized in that, The process of obtaining the deliverable based on the triggering parameters is achieved through one of the following methods: The deliverable is downloaded via a secure file transfer protocol based on the trigger parameters. The deliverable is downloaded via Hypertext Transfer Protocol based on the triggering parameters.

4. The method for deploying a continuous delivery pipeline according to any one of claims 1-2, characterized in that, The triggering parameters include at least one of the following: Delivery pipeline identification information, deliverable storage address information, callback notification interface address information, callback type information, file server username information, file server password information, log line count information, specified task activation information, and task type information.

5. A deployment apparatus for a continuous delivery pipeline, characterized in that, include: The continuous delivery pipeline deployment module is used to obtain deliverables based on trigger parameters and deploy the continuous delivery pipeline based on the deliverables. The continuous delivery pipeline monitoring module is used to enable timed reporting tasks to monitor the deployment process of the continuous delivery pipeline and record the execution results of each task in the deployment process of the continuous delivery pipeline in real time. When a deployment error is determined based on the execution result, the execution of subsequent tasks in the continuous delivery pipeline is paused, a coping strategy is provided to the user, and the continuous delivery pipeline is deployed again according to the coping strategy selected by the user. Specifically, the continuous delivery pipeline monitoring module is used for: Create a pipeline execution instance and associate the pipeline execution instance with the pipeline details generated by the continuous delivery pipeline during the deployment process; The pipeline execution instance is recorded as a monitoring identifier in the scheduled reporting task table; The scheduled reporting task table is scanned periodically, and tasks awaiting processing in the table are preempted by modifying the takeover host identifier (NODE_ID). Specifically, when preempting a task, if the NODE_ID field of the task awaiting processing is empty, the task is preempted directly; if the NODE_ID field of the task awaiting processing is not empty, the modification time of the task awaiting processing is used to determine whether the previous host has abandoned the task, and if so, the task is preempted. Based on the monitoring markers in the preempted tasks, find the corresponding pipeline progress information of the continuous delivery pipeline; The pipeline execution progress is determined based on the pipeline progress information, and the real-time monitoring information of the continuous delivery pipeline is displayed to the user at regular intervals. The response strategy includes at least one of the following: Rollback strategy, error ignore strategy, rollback retry strategy, and no rollback retry strategy.

6. An electronic device comprising a processor and a memory storing a computer program, characterized in that, When the processor executes the computer program, it implements the steps of the deployment method for the continuous delivery pipeline according to any one of claims 1 to 4.

7. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the steps of the deployment method for the continuous delivery pipeline according to any one of claims 1 to 4.